StoneOS CLI User Guide Complete Book 5.5R10
StoneOS CLI User Guide Complete Book 5.5R10
StoneOS CLI User Guide Complete Book 5.5R10
TechDocs | docs.hillstonenet.com
Copyright 2023 Hillstone Networks. All rights reserved.
Information in this document is subject to change without notice. The software described in this doc-
ument is furnished under a license agreement or nondisclosure agreement. The software may be used or
copied only in accordance with the terms of those agreements. No part of this publication may be repro-
duced, stored in a retrieval system, or transmitted in any form or any means electronic or mechanical,
including photocopying and recording for any purpose other than the purchaser's personal use without
the written permission of Hillstone Networks.
Hillstone Networks
Contact Information:
US Headquarters:
Hillstone Networks
5201 Great America Pkwy, #420
Santa Clara, CA 95054
Phone: 1-408-508-6750
http://www.hillstonenet.com/about-us/contact/
Hillstone Networks
TWNO: TW-WUG-UNI-A-5.5R10-EN-V1.1-1/25/2023
Contents
Contents 1
Content 1
CLI 1
WebUI 2
Overview 2
Execution Mode 2
Command Input 4
Using CLI 5
Previous Commands 5
Shortcut Keys 5
TOC - 1
Filtering Output of Show Commands 6
Diagnostic Commands 10
Chapter 1 Firewall 1
Configuration Environment 3
Overview 3
Application Mode 11
Overview 11
Transparent Mode 11
Mix Mode 11
TOC - 2
Routing Mode 12
VSwitch 13
Basic Concepts 13
L2 Zones 13
L2 Interfaces 14
Configuring a VSwitch 16
Virtual Wire 17
NSH Proxy 19
Configuration Example 22
Configuration Steps 23
TOC - 3
Configuring Transparent ARP 25
Configuring a VRouter 25
Creating a VRouter 26
Deployment Mode 27
Overview 27
Inline Mode 27
Bypass Mode 27
Mix Mode 28
Topology 33
Configuration Steps 34
StoneOS Architecture 35
Overview 35
TOC - 4
Interfaces 35
Zones 35
VSwitches 36
VRouter 36
Policy 37
VPN 37
Deny Session 41
Configuring MSS 45
IP Fragment 48
TOC - 5
SYN packets dropping 49
Jumbo Frame 50
Session Information 51
Zone 58
Overview 58
Creating a Zone 59
TOC - 6
Binding a Layer 2 Zone to a VSwitch 60
Configuration Example 61
Interface 62
Overview 62
Interface Types 62
Interface Dependency 64
Configuring an Interface 67
TOC - 7
Configuring Traffic Mirroring 78
Disabling Recording Interface IP Address Conflict Log Triggered by DAD Mode ARP
Packets 86
TOC - 8
Entering the Ethernet Configuration Mode 91
TOC - 9
Binding a Tunnel 100
LACP 103
TOC - 10
Viewing External Bypassing 112
PoE 114
Address 117
Overview 117
TOC - 11
Viewing the Address Book Details 125
RSH 130
MS RPC 131
TOC - 12
Renaming a Service Group 137
TOC - 13
Dynamic Identification 150
TOC - 14
Specifying Application Technology 158
DNS 161
Overview 161
TOC - 15
Moving a DNS Proxy Rule 168
Enabling/Disabling Calculating the Checksum of UDP Packet for DNS Proxy 169
Resolution 171
Specifying the Maximum Mapping IP Addresses for a Specific Domain Name 175
TOC - 16
Specifying the TTL for DNS Snooping Mapping Cache 177
Requirement 178
DDNS 180
Requirement 184
DHCP 187
TOC - 17
DHCP on Hillstone Devices 187
Configuring the Route Priority (Administration distance) and Route Weight 189
Configuring DNS/WINS Servers and Domain Name for the DHCP Client 193
TOC - 18
Configuring the VSI Carried by Option 43 for DHCP Server 196
Enabling the Function of Replacing the Source IP of the DHCP Relay Packets 203
PPPoE 204
TOC - 19
Specifying the Route Distance/Weight 207
Requirement 212
NAT 214
Overview 214
TOC - 20
Creating an SNAT Rule 220
Viewing the SNAT Rule Port Usage Monitor Function Configuration 227
TOC - 21
Specifying the Excluding Port Number 238
NAT444 243
Requirement 251
TOC - 22
Application Layer Identification and Control 255
Overview 255
VLAN 263
Super-VLAN 266
TOC - 23
Viewing Super-VLAN Configuration 268
RSTP 269
Requirement 273
Introduction 277
WLAN 277
TOC - 24
Configuring SSID 278
Requirement 291
3G/4G 295
TOC - 25
Specifying the Connection Mode 298
Requirement 304
LLDP 306
TOC - 26
Enabling/Disabling Global LLDP 308
Overview 314
TOC - 27
Viewing ACL Profile Information 317
TOC - 28
Modifying/Deleting the Descriptions of a policy group 334
TOC - 29
Enabling/Disabling an Aggregate Policy 350
TOC - 30
VRouter 365
TOC - 31
Deleting Predefined IPv4 ISP Profiles 376
TOC - 32
Viewing Source Route Information 389
TOC - 33
Basic Options 404
TOC - 34
Configuring Route Aggregation for an Area 415
TOC - 35
Configuring the Timer for an Interface 432
TOC - 36
Configuring the Passive Interface 444
Authentication 446
TOC - 37
Configuring a BGP Peer 456
TOC - 38
ECMP 475
IGMP 479
BFD 484
TOC - 39
Configuring BFD 485
MPLS 493
TOC - 40
Configuring a Candidate RP 498
Specifying the Interval for Sending IGMP General Query Messages 502
Specifying the Maximum Response Time for IGMP General Query 503
PIM-SSM 505
TOC - 41
Configuration Steps 512
Requirement 516
Requirement 518
Requirement 521
Requirement 523
Requirement 527
TOC - 42
Requirement 530
TOC - 43
Specifying the SSO scheme as CAS_QIMING 547
Configuring Two-factor Authentication for Admin Users Logging in to the WebUI 548
TOC - 44
Configuring the Maximum Number of Admin Users 556
TOC - 45
Specifying a User Group 570
TOC - 46
Configuring Storage Management 586
TOC - 47
Switching Mode 601
Ping 609
Traceroute 610
Bootloader 616
TOC - 48
Other Upgrading Methods 619
SCM HA 625
TOC - 49
Verifying the Licenses 647
Configuring HA Backup Device to Communicate with LMS through Master Device 650
Replacing the Digital Certificate used for Connecting CloudEdge and LMS 651
TOC - 50
Configuring sysLocation 661
Requirements 663
Example 1 663
Example 2 664
TOC - 51
Configuring System Clock Manually 674
TOC - 52
Track by ARP Packets 688
TOC - 53
Joining the User Experience Improvement Program 719
Administrator 723
TOC - 54
Configuring URL Filter 734
TOC - 55
Creating a VWANIF interface 749
Example 2: L3 Traffic Transmitting among Multiple VSYSs via Shared VRouters 754
Example 3: L2 Traffic Transmitting among Multiple VSYSs via Shared VSwitch 760
Overview 770
HA Cluster 771
HA Group 771
TOC - 56
HA Node 772
HA Selection 772
HA Synchronization 772
Configuring HA 774
TOC - 57
Specifying an HA Assist Link Interface 785
TOC - 58
Verifying the Access ID and Password of the Cloud platform 799
HSVRP 806
TOC - 59
Viewing an HSVRP Group 811
Twin-mode HA 814
Introduction 814
TOC - 60
Manually Synchronizing Twin-mode HA Configuration Information 828
Examples of HA 830
Requirement 830
Requirement 834
TOC - 61
Specifying RA Parameters 845
TOC - 62
Viewing IPv6 Routing Information 862
TOC - 63
Configuring the Default Administrative Distance 875
TOC - 64
Configuring IPv6 IS-IS 890
TOC - 65
Configuring a DHCP Client 901
TOC - 66
Clearing a Dynamic IPv6 DNS Mapping Entry 911
TOC - 67
Viewing ACL Profile Information 923
TOC - 68
Creating a Tunnel 934
TOC - 69
Viewing DS-lite Tunnel Information 943
TOC - 70
Track by IPv6 TCP Packets 959
Requirement 1 976
Requirement 2 977
Overview 987
TOC - 71
Allowing Password Change by Local Users 991
Configuring the IP Address, Domain Name, or VRouter of the Primary Server 1000
Configuring the IP Address, Domain Name, or VRouter of the Backup Server 1 1000
Configuring the IP Address, Domain Name, or VRouter of the Backup Server 2 1001
TOC - 72
Configuring the Retry Times 1002
Configuring the IP Address, Domain Name, and VRouter of the Primary Server 1011
Configuring the IP Address, Domain Name, VRouter of the Backup Server 1 1012
TOC - 73
Specifying the Synchronization Base-DN 1014
TOC - 74
Configuring the User-Groups under Base-DN Synchronization 1025
Configuring the IP Address, Domain Name, or VRouter of the Primary Server 1027
Configuring the IP Address, Domain Name, or VRouter of the Backup Server 1 1027
Configuring the IP Address, Domain Name, VRouter of the Backup Server 2 1028
TOC - 75
Configuring the Brute-force Cracking Defense 1035
TOC - 76
Enabling/Disabling the Brute-force Cracking Defense 1047
TOC - 77
Viewing Radius Dynamic Authorization Server Configurations 1057
Requirement 1061
Overview 1064
TOC - 78
Specifying the WebAuth Global Default Configuration of Interface 1067
TOC - 79
SMS Authentication 1082
TOC - 80
Viewing Configuration Information 1090
Specifying the Port for StoneOS to Receive Agile Controller Packets 1096
TOC - 81
Specifying Query Address Range 1096
TOC - 82
Viewing the User Mapping Information 1104
TOC - 83
Specifying the Disconnection Timeout 1113
Overview 1139
TOC - 84
802.1X Architecture 1139
TOC - 85
Configuring Manual Kick-out Client 1148
PKI 1149
Overview 1149
TOC - 86
Obtaining a CRL 1161
TOC - 87
Example for Configuring IKE 1172
Requirement 1172
Overview 1182
Establishing a SA 1183
Phase 1 SA 1183
Phase 2 SA 1184
References 1186
Configuring the Number of CPU Cores Used By the System Data Plane 1188
TOC - 88
Viewing the Information of the Hardware Accelerator 1190
TOC - 89
Configuring an ISAKMP Gateway 1200
TOC - 90
Enabling/Disabling ISAKMP SA and IPSec SA Negotiation Separation Mode 1210
TOC - 91
Specifying the Encapsulation Mode of IPsec Protocol 1221
TOC - 92
Configuring an IKEv2 Peer 1233
TOC - 93
Specifying an IKEv2 Peer 1242
XAUTH 1243
Requirement 1252
Requirement 1257
Requirement 1264
TOC - 94
Configuration Steps 1265
Requirement 1272
Requirement 1280
Overview 1289
TOC - 95
Configuring an IPv6 Access Address Pool 1296
TOC - 96
Specifying an HTTPS Port Number 1310
Clearing Cache Data of the Host that Uses the SSL VPN Client 1316
TOC - 97
Two-Step Verification 1322
TOC - 98
Specifying the Success Code 1332
TOC - 99
Specifying the Channel 1342
TOC - 100
Configuring a Host Check Profile via WebUI 1353
1373
TOC - 101
Downloading and Installing the Client 1375
TOC - 102
Editing and Deleting Login Entry 1405
Requirement 1425
Example 1 1426
TOC - 103
Example 2 1428
Preparations 1428
Requirements 1430
Requirement 1 1438
Requirement 2 1443
Overview 1448
TOC - 104
Selecting a DH Group 1451
TOC - 105
Specifying a Lifetime/Lifesize 1460
Requirement 1468
TOC - 106
Configuring the Center Device 1468
PnPVPN 1476
Overview 1476
Requirement 1488
TOC - 107
Configuration Steps 1490
GRE 1496
Overview 1496
Requirement 1500
L2TP 1507
Overview 1507
TOC - 108
L2TP over IPSec 1508
TOC - 109
Specifying the Window Size of the Tunnel Data 1519
TOC - 110
Specifying the Retry Times of Control Packets 1528
Requirement 1531
Requirement 1540
TOC - 111
VXLAN 1546
Overview 1546
Introduction 1549
TOC - 112
Viewing Windows Endpoint Item Configuration Information 1565
TOC - 113
Android Endpoint Item Management 1578
TOC - 114
Adding Members to an Application Resource Group 1591
TOC - 115
Specifying the Default Action 1604
TOC - 116
Binding an IP to a User 1616
Configuring a ZTNA Tunnel Route to the Specified IPv4 Network Segment 1627
Configuring a ZTNA Tunnel Route to the Specified IPv6 Network Segment 1627
TOC - 117
Configuring Idle Time 1630
TOC - 118
Configuring a Maximum SMS Number 1640
TOC - 119
Specifying the AccessKeySecret 1652
TOC - 120
Configuring the Hidden IP and Port Number 1661
TOC - 121
Configuring Upgrade URL for Windows Type Client 1674
iQoS 1683
TOC - 122
Configuring the trigger threshold for the maximum floating bandwidth 1697
QoS 1707
Overview 1707
Classification 1708
Marking 1709
802.1Q/p 1709
TOC - 123
Congestion Management 1712
TOC - 124
Configuring CoS 1728
FlexQoS 1736
TOC - 125
Example 6: LLQ & Congestion Avoidance 1744
Solution 1 1747
Solution 2 1749
Requirement 1767
TOC - 126
Configuring Threshold Value 1783
Viewing the Link Detection Result for a Specified Domain Name 1793
Requirement 1796
TOC - 127
Configuring Pre-discarding Packets of Receiving Queue 1803
Specifying the User Group of User Group Traffic Quota Rule 1806
Binding a Traffic Quota Profile to a User Group Traffic Quota Rule 1807
TOC - 128
Host Blacklist 1812
Only Allowing Hosts with Static IP-MAC Binding Accessing the Internet 1818
TOC - 129
Configuring DHCP Packet Rate Limit 1822
TOC - 130
IP Fragment Attack 1830
TOC - 131
Configuring WinNuke Attack Defense 1846
Viewing the Attack Defense Configuration and Statistics of the Security Zone 1856
Requirement 1856
Requirement 1859
TOC - 132
Requirement 1860
Anti-Virus 1863
TOC - 133
Specifying an Update Schedule 1876
Sandbox 1881
TOC - 134
Viewing Sandbox Information 1891
IPS 1896
Signatures 1896
action 1904
TOC - 135
affected-software 1905
attack-type 1906
brute-force 1907
bulletin-board 1909
command-injection-check 1910
confidence 1910
cc-url 1911
cc-url-limit 1912
check-weakpassword 1913
deny-method 1916
disable 1917
domain 1919
dst-ip 1920
enable 1920
enable 1921
equal-username-check 1922
TOC - 136
exec block-ip add 1922
external-link 1926
external-link-check 1927
filter-class 1928
ftp-anonymous-login-check 1929
iframe-check 1937
TOC - 137
ips log http-proxy-ip 1941
issue-date 1947
length 1948
max-arg-length 1949
max-bind-length 1950
max-black-list 1952
max-cmd-line-length 1952
max-content-filename-length 1954
max-content-type-length 1955
max-failure 1957
max-input-length 1958
max-path-length 1960
max-reply-line-length 1961
max-request-length 1963
max-rsp-line-length 1964
TOC - 138
max-scan-bytes 1966
max-text-line-length 1966
max-uri-length 1968
max-white-list 1969
min-character-type 1970
pcap 1971
protocol-check 1971
protocol 1973
referer-white-list 1974
referer-white-list-check 1974
response-bypass 1975
reverse-shell 1976
search-class 1979
search-condition 1980
serial-character-check 1983
severity 1984
signature id 1985
TOC - 139
signature-id 1985
sigset 1986
sql-injection 1987
sql-injection-check 1987
src-ip 1989
suspicious-ua-detection 1989
system 1991
vr 1992
web-acl 1992
web-acl-check 1993
web-server 1994
xss-injection 1995
Overview 2000
TOC - 140
Updating Abnormal Behavior Model Database 2002
Overview 2005
Overview 2009
TOC - 141
Configuring Blacklist Library 2012
Mitigation 2026
TOC - 142
Overview 2026
TOC - 143
Updating Hot Threat Intelligence Manually 2034
Overview 2035
Preparing 2040
TOC - 144
Address Liberary Management 2046
Antispam 2056
Overview 2056
TOC - 145
Creating an Antispam Profile 2056
Specifying the Name of the Endpoint Security Control Center Server 2063
Specifying the Address of the Endpoint Security Control Center Server 2064
Specifying the Port of the Endpoint Security Control Center Server 2064
TOC - 146
Enabling/Disabling the Timeout Entry 2065
IoT 2070
Preparations 2070
Specifying IP 2073
TOC - 147
Importing Admittance List 2075
Overview 2084
TOC - 148
Specifying the Keyword Category and Action 2089
TOC - 149
Email Filter 2098
TOC - 150
File Filter 2108
IM Audit 2117
TOC - 151
Recording Web Surfing Log 2118
Preparations 2123
Preparations 2125
Preparations 2127
TOC - 152
Object Configuration 2133
TOC - 153
Inspecting SSL Negotiation Packets 2148
TOC - 154
Setting the URL Whitelist 2166
Checking Whether the SSL Server Verifies the Client Certificate 2171
Configuring the Update Mode of the Trusted Root Certificate Database 2173
TOC - 155
Specifying Trust Domain 2180
Monitor 2189
Overview 2189
TOC - 156
Viewing Address Book Statistical Information 2190
TOC - 157
show monitor host status 2206
TOC - 158
show pseudo-group 2217
TOC - 159
Configuring the Type of Statistical Data 2230
Alarm 2251
Overview 2251
action 2251
alarm 2252
alarm-expiration-time 2252
alarm-receiver 2253
TOC - 160
app-name 2258
disable 2258
enable 2259
level 2260
receiver 2260
schedule 2261
warning 2261
Logs 2271
Overview 2271
TOC - 161
Configuring System Logs 2274
Optimizing the Function of Exporting Session Logs and NAT Logs to the Local Disk 2289
Binding the Log Processing Process and Database Storage Process to Core MAX 2289
Configuring the Speed at Which Logs are Sent to Log Processing Process 2290
TOC - 162
Sending Logs to an Email Account 2295
Enabling/Disabling the Record User Information Function for Threat Log 2300
TOC - 163
Diagnostic Tool 2307
Introduction 2307
Commands 2308
interface 2309
direction 2309
task-info 2310
filter-rule 2311
TOC - 164
exec troubleshooting packet-trace emulation-template 2319
NetFlow 2328
Overview 2328
TOC - 165
Specifying the Source Interface 2330
TOC - 166
About This Guide
This document follows the conventions below:
Content
l Tip: provides reference.
l Note: indicates important instructions for you better understanding, or cautions for possible
system failure.
l Bold font: indicates links, tags, buttons, checkboxes, text boxes, or options. For example,
“Click Login to log into the homepage of the Hillstone device”, or “Select Objects >
Address Book from the menu bar”.
CLI
l Braces ({ }): indicate a required element.
l Bold: indicates an essential keyword in the command. You must enter this part correctly.
Overview
A command line interface (CLI) is a mechanism for you to interact with the operating system by
typing commands which instruct the device to perform specific tasks. This chapter describes how
to use StoneOS command line interface.
Notes: All command keywords are not case sensitive, but user input is case sens-
itive.
Execution Mode
When you log in StoneOS CLI, you are in the execution mode. Execution mode prompt is a
pound sign (#):
hostname#
Commands in the global configuration mode are used to change device settings. To enter the
global configuration mode, in the execution mode, use the command configuration. The global
StoneOS has various functional modules. Some CLI commands only work in their corresponding
sub-module configuration modes. To enter a sub-module configuration mode, in the global con-
figuration mode, type a certain command. For example, to enter interface ethernet0/0 con-
figuration mode, type interface ethernet0/0, and its command prompt is shown as follows:
hostname(config-if-eth0/0)#
When you log into StoneOS CLI, you are in the execution mode. To switch to other CLI mode,
type the commands in the table below.
Mode Command
From global configuration mode to sub- The command may vary, specifically depend-
module configuration mode ing on the sub-module configuration mode
you want to enter
Command Input
To simplify input operation, you can use the short form of CLI commands. In addition, StoneOS
CLI can automatically list available command keywords and fill incomplete commands.
You can use only some special characters in a command to shorten your typing. Most of the com-
mands have short form. For example, you can use sho int to check the interface information
instead of typing show interface, and use conf to enter the configuration mode to replace the com-
plete command configure.
When you type a question mark (?), the system completes the unfinished commands or gives a list
of available commands.
l If you type a question mark (?) behind an incomplete command, the system gives available
commands (with short description) started with the last typed letter.
l If you type a question mark (?) at any level, the system displays a list of the available com-
mands along with a short description of each command.
Command completion for command keywords is available at each level of the hierarchy. To com-
plete a command that you have partially typed, press the Tab key. If the partially typed letters
begin a string that uniquely identifies a command, pressing the Tab key completes the command;
otherwise, it gives a list of command suggestions. For example, type conf in the execution mode
and press TAB, the command configure appears.
Using CLI
This topic describes how to view previously typed commands and how to use CLI shortcut keys.
Previous Commands
StoneOS CLI can record the latest 64 commands. To scroll the list of the recently executed com-
mands, press the up arrow key or use Ctrl-P; to scroll forward the list, press the down arrow key
or use Ctrl-N. You can execute or edit the command texts displayed in the prompt.
Shortcut Keys
StoneOS CLI supports shortcut keys to save time when entering commands and statements. The
following table gives the supported shortcut keys and their functions.
Ctrl-K Deletes all characters from the cursor to the end of the com-
mand line.
Ctrl-T Switches the character at the cursor and the one before it.
Tip: For the computer without the META key, press ESC first and then press the
letter. For example, to use shortcut key META-B, press ESC and then press B.
l include {filter-condition}: Shows results that only match the filter condition. The filter con-
dition is case sensitive.
l exclude {filter-condition}: Shows results that do not match the filter condition. The filter con-
dition is case sensitive.
l To view the next page, press any key other than Enter and Q.
These settings are only available for the current connection and won’t be saved to the con-
figuration file of the device. If you close the terminal and login again, the screen width and length
are restored to their default values.
To restore to the default value, in the global configuration mode, use the command no console
timeout.
ssh timeouttimeout-value
l timeout-value - Specifies the timeout value for SSH session. The range is from 1 to 60
minutes. The default value is 10.
To restore to the default value, in the global configuration mode, use the command no ssh
timeout.
telnet timeout timeout-value
l timeout-value - Specifies the timeout value for Telnet session. The range is 1 to 60 minutes.
The default value is 10.
To restore to the default value, in the global configuration mode, use the command no telnet
timeout.
l FTP – ftp://[username:password@]x.x.x.x[:port]/filename
l TFTP – tftp://x.x.x.x/filename
hostname(config)# sh o w p ro cess
(process ID, process, status, priority, CPU usage, memory usage, running time,
number of open files, IPC queue length)
1674 chassisd R 18 0.6 0.4 0:05.95 13 0(R indicates that the process is running, the
length of the IPC queue indicates the length of messages pending for the pro-
cess, and 0 indicates that the process currently has no pending messages .)
4491 d-plane R 0 0.2 0.5 89:30.09 8 0
1639 monitord S 0 0.0 0.4 0:16.23 10 0(S indicates that the process is sleeping.)
1675 licensed S 20 0.0 0.7 0:10.05 9 0
l Configuration Environment describes how to access a device via Console port, Telnet, SSH
and WebUI.
l Application Mode describes three types of application modes: transparent mode, mix mode,
and routing mode.
l Deployment Mode describes three types of deployment modes: inline mode, bypass mode,
and mix mode.
l StoneOS Architeture describes the basic components of StoneOS: interface, zone, VSwitch,
VRouter, policy rule, and VPN.
l Zone describes the zone. Zones divide network into multiple segments, for example, trust,
untrust, and so on.You can apply proper policy rules to zones to make the devices control the
traffic transmission among zones.
l Interface describes the interface. Interfaces are used to connect devices, and transmit data.
l Address describes the address book. The address book contains address information, and can
be used by multiple modules, such as policy rules, NAT rules, QoS, session limit rules, etc.
l Service and Application describes the service book and application book. All of these applic-
ations and applications groups are stored in and managed by application book. All these ser-
vice and service groups are stored in and managed by service book.
l DNS describes the function of Domain Name System. It is designed for TCP/IP network to
look for Internet domain names (e.g., www.xxxx.com) and translate them into IP addresses
(e.g., 10.1.1.1) to locate related computers and services.
Chapter 1 Firewall 1
l DDNS describes the function of Dynamic Domain Name Server. It is designed to resolve
fixed domain names to dynamic IP addresses.
l PPPoE describes the function of Point-to-Point Protocol over Ethernet. It combines PPP pro-
tocol and Ethernet to implement access control, authentication and accounting on clients dur-
ing IP address allocation.
l NAT describes the protocol for IP address translation in an IP packet header. When the IP
packets pass through a firewall or router, the device or router will translate the source IP
address and/or the destination IP address in the IP packets.
l Application Layer Identification and Control describes the function of Application Layer
Gate. It can assure the data transmission for the applications that use multiple channels and
assure the proper operation of VoIP applications in the strictest NAT mode.
l VLAN describes the function of Virtual LAN. A physical LAN can be divided into multiple
broadcast domains.
l Super-VLAN describes the function of VLAN aggregation. It allows network devices that
belong to different VLANS in one physical switching network to be allocated to one IPv4 sub-
net, and share one default gateway, thus optimizing IP address allocation.
l RSTP describes the function of Rapid Spanning Tree Protocol. It is designed to block the
redundant links to avoid broadcast storm.
l Wireless Access Mode describes the wireless access mode: WLAN and 3G. You can use the
wireless mode to access the network.
2 Chapter 1 Firewall
Configuration Environment
Overview
When the device has been properly installed, you need to set up an initial configuration envir-
onment before enabling the device to forward traffic. Use the following methods to set up con-
figuration environment:
1. Take a standard RS-232 cable. Connect one end of the cable to a computer’s serial port,
and the other end to a device’s console port (labeled CON), as shown below:
Chapter 1 Firewall 3
2. In PC, start the terminal emulation program (HyperTerminal) and use the following para-
meters:
Parameter Value
Data 8
Parity None
Stop 1
3. Power on the device and StoneOS starts up. Type the default login name (hillstone) and
password (hillstone), and press Enter. Follow the prompts to change the default password,
and then you can log in again with the new password.
4. You can use command line to configure the device and view its status. You can also type a
question mark (?) for help.
l An IP address has been assigned to the access port with Telnet service enabled. (To enable
Telnet on an interface, in the interface configuration mode, use the command manage tel-
net.When the Telnet service is enabled, the system will prompt that the protocol is not
secure.)
4 Chapter 1 Firewall
1. Take a standard Ethernet cable. Connect one end of the cable to a PC, and put the other end
into a device’s Ethernet port (or into a hub or switch), as shown below:
2. In the StoneOS command line interface, type the manage telnet command in the interface
configuration mode to enable Telnet on that interface. (For more information about how to
configure an interface, see Configuring an Interface Protocol).
4. Type telnet and the IP address. If the connection is successfully established, the Telnet win-
dow shows “login”. Type the default login name (hillstone) and password (hillstone), and
press Enter. Follow the prompts to change the default password, and then you can log in
again with the new password.
5. You can use command line to configure the device and view its status. For help inform-
ation, type a question mark (?).
Notes: If you use Telnet to configure the device, do not change the IP address used
for Telnet connection. Otherwise, you cannot access the device over Telnet.
Chapter 1 Firewall 5
simultaneously.
To access a device over SSH, take the following steps:
1. Take a standard Ethernet cable. Connect one end of the cable to a PC, and put the other end
into a device’s Ethernet port (or into a hub or switch).
2. In the StoneOS command line interface, type the command manage ssh in the interface con-
figuration mode to enable SSH service on that interface. (For more information about how
to configure an interface, see Configuring an Interface Protocol).
3. Run a SSH client software in your computer. You need to configure some SSH parameters,
including IP address of the device, SSH version and RSA key, etc.
4. If the connection is successfully established, a login: prompt will appear. Enter the default
administrator username “hillstone” and press Enter. Behind the prompt for password,
enter the default password “hillstone” and press Enter to log in.
5. You can use command line to configure the device and view its status. For help inform-
ation, type a question mark (?).
1. Assign an IP address to your PC. The address should be of the same subnet with
192.168.1.1/24. Use an Ethernet cable to connect your PC and the ethernet0/0 port.
6 Chapter 1 Firewall
2. In the PC, launch a Web browser and visit the address https://192.168.1.1. The login page
is shown below.
3. In the login interface, type the default username and password: hillstone/hillstone.
4. At the first sign of address, the user needs to read and accept the EULA ( end-user license
agreements ), click EULA to view the details of EULA.
5. Click Login, follow the prompts to change the default password, and then log in again with
the new password.
To improve the security, you can log into the device by using the certificate authentication func-
tion of the client. The certificate includes the digital certificate of users and secondary CA cer-
tificate signed by the root CA.Certificate authentication is one of two-factor authentication. Two-
factor authentication is not only needing the user name and password authentication, but also
needing other authentication methods,such as certificate or fingerprint. After enabling this authen-
tication method and logging into the device over HTTPS, you need to first select certificate and
then enter the password.
Chapter 1 Firewall 7
Notes:
l The digital certificate of client is signed by root CA.
To enabling this authentication mehod, configure the settings in both the device side and the cli-
ent side.
To enable the certificate authentication of the client, take the following steps:
2. To configure the PKI trust domain and import the CA root certificate:
a. aIn the global configuration mode, execute the pki trust-domain trust-domain-name
command to create a new PKI trust domain.
b. In the execution mode, execute the import pki trust-domain-name cacert from {ftp
server ip-address [user user-name password password] | tftp server ip-address |
usb0 | usb1} file-name command to import the CA root certificate to PKI trust
domain from many storages including FTP,TFTP and USB.
c. In the global configuration mode, execute the https client-auth trust-domain trust-
domain-name command to specify the trust domain of certificate authentication.
The system verifies the validity of the CA signature of the certificate in the client
by using the CA root certificate stored in this PKI trust domain. The trust domain
is the one that you create in the above steps.
8 Chapter 1 Firewall
3. If needed, you can configure the CN Check function. In this case, the system checks the
CN field of the client certificate when the user logs into the device. Only when the CN
field of the client certificate matches the username can the user successfully log into the
device..
In the global configuration mode, execute the https client-auth match cncommand. This
function is enabled by default.
You may import one or two certificates into your client’s Web browser or USB Key. If you have
imported two certificates, choose one when selecting certificate.After configuring the device side,
you will need to configure the client side. The steps below use the certificates in the client Web
browser to authenticate as an example:
a. In the Web browser, for example, Internet Explorer, select Tools > Internet
options > Content > Certificate > Personal.
b. Click Import.
2. In the PC, launch a Web browser and visit the address https://IP-Address(IP-Address
refers to the IP address of manageable interface).
3. A dialog appears and asks you to select the proper certificate from the certificate list.
5. Enter the username and password and click Login. If you have configured the https client-
auth match cn command, the username you entered must be the same as the CN value of
the CA certificate.
Chapter 1 Firewall 9
Notes: To authenticate with the certificates in the client Web browser, you should
be noted that:
l Make sure the USB Key has been inserted into the USB interface of PC
before logging.
l You need to enter USB Key user password(1234 by default) when importing
digital certificates to the USB Key.
This function can be used only for CloudEdge deployed on the e Cloud. When CloudEdge is
deployed on the e Cloud, the e Cloud can manage CloudEdge via License Management System
(LMS). If the authorization of CloudEdge purchased on the e Cloud expires (that is, the available
period of CloudEdge authorized by the e Cloud expires), the e Cloud will freeze the WebUI of
CloudEdge through LMS. During the freeze period, you cannot access the WebUI of CloudEdge.
If you try to log in to the WebUI of CloudEdge with your user name and password, the login page
will prompt: "Error: WebUI is frozen, cannot use WebUI". When the user renews the author-
ization of CloudEdge on the e Cloud (that is, renews the available period of CloudEdge), the e
Cloud will unfreeze the WebUI of CloudEdge through LMS.
Usually, the freezing and unfreezing operations are automatically performed by e Cloud and LMS.
When CloudEdge loses contact with LMS, the freezing and unfreezing operations will fail. In this
case, you can unfreeze the WebUI via CLI.
To unfreeze the WebUI of CloudEdge, in any mode, use the command:
exec webui unfreeze
10 Chapter 1 Firewall
Application Mode
Overview
Hillstone devices support three types of application modes: transparent mode, mix mode, and
routing mode. The system will choose a proper mode according to the packets received. This
chapter will describe the three applications modes in details.
Transparent Mode
To build the transparent application mode, you must create some L2 zones, bind interfaces to the
L2 zones and then bind the L2 zones to the VSwitch. If necessary, you can create multiple
VSwitches. The transparent mode takes the following advantages:
As shown above, an interface the L2 Trust Zone connects to the Intranet, and an interface in the
L2 Untrust Zone connects to the Internet.
Mix Mode
To build the mix application mode, you must bind some interfaces to L2 zones and some inter-
faces to L3 zones, and configure IP addresses for VSwitchIF and L3 interfaces. Figure below
shows the topology of the mix mode.
Chapter 1 Firewall 11
Routing Mode
To build the routing mode, you must bind the interfaces to L3 zones, configure IP address to the
interfaces according to network topology and security requirements, and configure proper policy
rules. Under the routing mode, the device performs both the routing function and the security
function. And also NAT is supported under this mode. In such a case, the device is deployed
between the trust zone and the untrust zone. Figure below Fshows the topology of the routing
mode.
12 Chapter 1 Firewall
VSwitch
Hillstone devices might allow packets between some interfaces to be forwarded in Layer 2
(known as transparent mode), and packets between some interfaces to be forwarded in Layer 3
(known as routing mode), specifically depending on actual requirement. To facilitate a flexible con-
figuration of mix mode of Layer 2 and Layer3, StoneOS introduces the concept of Virtual Switch
(VSwitch). By default StoneOS ships with a VSwitch known as VSwitch1. Each time you create a
VSwitch, StoneOS will create a corresponding VSwitch interface (VSwitchIF) for the VSwitch
automatically. You can bind an interface to a VSwitch by binding that interface to a security zone,
and then binding the security zone to the VSwitch.
A VSwitch acts as a Layer 2 forwarding zone, and each VSwitch has its own independent MAC
address table, so the packets of different interfaces in one VSwitch will be forwarded according to
Layer 2 forwarding rules. You can configure policy rules conveniently in a VSwitch. A VSwitchIF
virtually acts as an upstream switch interface, allowing packets forwarding between Layer 2 and
Layer 3.
Basic Concepts
L2 Zones
To support policy rules for VSwitches, here introduces the concept of L2 zones. When creating a
zone, you have to identify whether it is a L2 zone. To bind an interface to a VSwitch, you must
bind it to a L2 zone first and then bind the L2 zone to the VSwitch. Figure below shows the rela-
tionship among VSwitch, L2 zone, and L2 interface.
Chapter 1 Firewall 13
L2 Interfaces
A physical interface and its sub-interfaces can belong to different interfaces. An interface bound
to a L2 zone is a L2 interface. But only the interface with no IP configured can be bound to a L2
zone. A VSwitchIF is a L3 interface which cannot be bound to a L2 zone.
StoneOS creates a MAC address table for a VSwitch by source address learning. Each VSwitch has
its own MAC address table. StoneOS handles with the packets according to the types of the pack-
ets, including IP packets, ARP packets, and non-IP-non-ARP packets.
The forwarding rules for IP packets are:
1. Receive a packet.
2. Learn the source address and update the MAC address table.
3. If the destination MAC address is a unicast address, the system will look up the egress inter-
face according to the destination MAC address. And in this case, two situations may occur:
l If the destination MAC address is the MAC address of the VSwitchIF with an IP con-
figured, the system will forward the packet according to the related routes; if the des-
tination MAC address is the MAC address of the VSwitchIF with no IP configured,
the system will drop the packet.
14 Chapter 1 Firewall
l Figure out the egress interface according to the destination MAC address. And if the
egress interface is the source interface of the packet, the system will drop the packet;
otherwise, forward the packet from the egress interface.
If no egress interfaces (unknown unicast) is found in the MAC address table, jump to
Step 6 directly.
4. Figure out the source zone and destination zone according to the ingress and egress inter-
faces.
5. Look up the policy rules and forward or drop the packet according to the matched policy
rules.
6. If no egress interface (unknown unicast) is found in the MAC address table, the system will
send the packet to all the other L2 interfaces. The sending procedure is: take each L2 inter-
face as the egress interface and each L2 zone as the destination zone to look up the policy
rules, and then forward or drop the packet according to the matched policy rule. In a word,
forwarding of unknown unicast is the policy-controlled broadcasting. Process of broad-
casting packets and multicasting packets is similar to the unknown unicast packets, and the
only difference is the broadcast packets and multicast packets will be copied and handled in
Layer 3 at the same time.
For the ARP packets, the broadcast packet and unknown unicast packet are forwarded to all the
other interfaces in the VSwitch, and at the same time, the system sends a copy of the broadcast
packet and unknown unicast packet to the ARP module to handle with.
For the non-IP-non-ARP packets, you can specify the action using the following command in the
global configuration mode:
l2-n o n ip -actio n {dro p | fo rward}
Chapter 1 Firewall 15
Configuring a VSwitch
There is a default VSwitch named VSwtich1 in the system. You cannot delete VSwitch1. You can
create new VSwitches according to your needs. And also you can view the VSwitch configuration
information at any time.
When you create a new VSwitch, a corresponding VSwitchIF is created automatically.
To create a VSwitch, in the global configuration mode, use the following command:
vswitch vswitch Number
l Number– Specifies the numeric identification for the VSwitch. The value range varies from
different platforms. For example, the command vswitch vswitch2 creates a VSwitch named
VSwitch2 and the corresponding VSwitchIF named VSwitchif2, and at the same time, you
enter the VSwitch2 configuration mode. If the specified VSwitch name exists, you will enter
the VSwitch configuration mode directly.
To delete the VSwitch with its VSwitchIF, in the global configuration mode, use the following
command:
n o vswitch vswitch Number
To view the configuration information of the VSwitch, in any mode, use the following command:
sh o w vswitch [ vswitch-name ]
16 Chapter 1 Firewall
l generic– Shows the statistics of the MAC table, including how many entries in the table and
how many entries are being used.
To clear the MAC entries, in the execution mode, use the following command:
clear mac [in terface interface-name ]
Virtual Wire
Hillstone devices support VSwitch-based Virtual Wire. With this function enabled and Virtual
Wire interface pair configured, two Virtual Wire interfaces form a virtual wire that connects the
two sub-networks attaching to Virtual Wire interface pair together. The two connected sub-net-
works can communicate directly on Layer 2, without other sub-network's forwarding. Fur-
thermore, controls of policy rules or other functions are still available when Virtual Wire is used.
Virtual Wire operates in two modes, which are Strict and Non-Strict mode respectively, as
detailed below:
l Strict Virtual Wire mode: In this mode, Hillstone devices does not need to perform MAC
address learning. Packets can only be transmitted between Virtual Wire interfaces, and the
VSwitch cannot operate in the mix mode. Any PC connected to the Virtual Wire interface can
neither manage the device nor access Internet over this interface.
l Non-Strict Virtual Wire mode: In this mode, Hillstone can perform MAC address learning.
Packets can be transmitted between Virtual Wire interfaces, and the VSwitch also supports
data forwarding in Mix mode. That is, this mode only restricts Layer 2 packets' transmission
between Virtual Wire interfaces, and does not affect Layer 3 packets' forwarding.
Table below lists packet transmission conditions in Strict Virtual Wire and Non-Strict Virtual
Wire mode. You can choose an appropriate Virtual Wire mode according to the actual require-
ment.
Egress and ingress are interfaces of one Virtual Wire interface Allow Allow
Chapter 1 Firewall 17
Packet Strict Non-Strict
pair
Egress and ingress are interfaces of different Virtual Wire Deny Deny
interface pairs
To configure the Virtual Wire function, you need to enable the Virtual Wire function of the
VSwitch and configure the Virtual Wire interface pair.
By default, the Virtual Wire function of VSwitch is disabled. To enable the Virtual Wire function,
in the VSwitch configuration mode, use the following command:
virtual-wire en ab le [strict | un strict]
l strict | unstrict – Specifies the Virtual Wire mode. It can be strict (strict) or non-strict
(unstrict). The strict mode will be used if you keep this parameter un-configured.
To disable the Virtual Wire function, in the VSwitch configuration mode, use the following com-
mand:
n o virtual-wire en ab le
A Virtual Wire interface pair forms a virtual wire to transmit the conformed L2 packets. The sup-
ported maximum number of Virtual Wire interface pairs varies from different platforms.
18 Chapter 1 Firewall
To configure a Virtual Wire interface pair, in the VSwitch configuration mode, use the following
command:
virtual-wire set interface-name1 interface-name2
l interface-name1 interface-name2 – Specifies the interface for the interface pair. The two
interfaces of one Virtual Wire cannot be the same, and the same one interface cannot belong
to two interface pairs.
To delete the specified interface pair, in the VSwitch configuration mode, use the following com-
mand:
n o virtual-wire set interface-name1 interface-name2
In any mode, use command show vswtich vswitch-nameto view the Virtual Wire status and
mode. To view the configuration information of Virtual Wire interface pair, in any mode, use the
following command:
sh o w virtual-wire [vswitch vswitch-name ]
l vswitch vswitch-name – Views the Virtual Wire interface pair information of specified
VSwitch. All the configured Virtual Wire interface pair information will be displayed if you
keep this parameter un-configured.
NSH Proxy
Only Hillstone CloudEdge virtual firewall supports the NSH proxy function. NSH (Network Ser-
vice Header) is a protocol used to provide Service Chain in SFC (Service Function Chain) archi-
tecture. The definition and instantiation of an ordered set of service functions and its subsequent
"forwarding" of traffic through them is called SFC. It is mainly used for end-to-end services. It
adds NSH in the original messages to make the messages pass through multiple Service devices in
sequence according to the specified path.
CloudEdge supports the layer 2 NSH proxy function , which can encapsulate and forward layer 2
NSH packets. Generally, there are two modes when you arrange services through SFC: two-armed
Chapter 1 Firewall 19
mode and one-armed mode. In the two-arm mode, packets come in and get out through different
interfaces; while in the one-arm mode, packets come in and get out though the same interface.
To enable the NSH layer 2 proxy function, in the VSwitch configuration mode, use the following
command:
virtual-wire set interface-name1 interface-name2 n sh -p ro xy
l interface-name1 interface-name2 – Specify the egress and ingress interfaces for forwarding
NSH layer 2 proxy traffic. In the two-arm mode of SFC, the egress and ingress interfaces
should be configured as two different interfaces. In the one-arm mode, the egress and ingress
interfaces need to be configured as the same interface.
To disable the NSH layer 2 proxy function, in the VSwitch configuration mode, use the following
command:
n o virtual-wire set interface-name1 interface-name2
To enable the NSH Proxy debugging , in any mode, use the following command:
deb ug dp n sh
To disable the NSH Proxy debugging , in any mode, use the following command:
un deb ug dp n sh
To view the packets on the NSH proxy interfaces, in any mode, use the following command:
sh o w n sh -p ro xy-co un ter
To view the NSH sessions, in any mode, use the following command:
20 Chapter 1 Firewall
sh o w sessio n n sh
In any mode, you can use the command show vswtichvswitch-nameto view the status and mode
of virtual wire . To view the configuration information of virtual wire interface pair and NSH
proxy , in any mode, use the following command:
sh o w virtual-wire [vswitch vswitch-name ]
l vswitchvswitch-name – Displays the virtual wire interface pair and NSH proxy information
of the specified VSwitch. If the parameter is not specified, all the configured virtual wire inter-
face pair and NSH proxy information will be displayed.
To disable VLAN transparent, in the VSwitch configuration mode, use the following command:
n o fo rward-tagged-p acket
VSwitch supports the double-tagged VLAN transparent function in the QinQ scenario. To enable
this function, in the VSwitch configuration mode, use the following command:
fo rward-do ub le-tagged-p acket
To disable the double-tagged VLAN transparent function in the QinQ scenario, in the VSwitch
configuration mode, use the following command:
Chapter 1 Firewall 21
n o fo rward-do ub le-tagged-p acket
Notes: When configuring and using the VLAN transparent function, you should
keep in mind that:
l The L2 zone in the VSwitch with VLAN transparent enabled cannot bind
sub-interfaces.
Configuration Example
The Hillstone device is applied in the transparent mode. The interface ethernet0/0 connects to
Internet, and ethernet0/1 connects the Intranet, the Intranet address is 192.168.10.1/24. Both
ethernet0/0 and etherent0/1 should carry the VLAN tagged packets from 0 (means no ID) to
4094.
The goal is to specially control the VLAN packets tagged 2 by a policy rule and control other
VLAN tagged packets with a common policy rule. Figure below shows the topology.
22 Chapter 1 Firewall
Configuration Steps
Step 1: Configure VSwitch1, and make the system forward the VLAN tagged packets (except for
the packets with ID 2) transparently through VSwitch1
hostname(config-vswitch)# exit
hostname(config-if-eth0/1)# zo n e l2-trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/0)# exit
hostname(config)#
Chapter 1 Firewall 23
hostname(config-vswitch)# exit
hostname(config)# zo n e l2-trust2 l2
hostname(config-zone-l2-tru~)# b in d vswitch 2
hostname(config-zone-l2-tru~)# exit
hostname(config-zone-l2-tru~)# b in d vswitch 2
hostname(config-zone-l2-tru~)# exit
hostname(config-if-eth0/0.2)# exit
hostname(config)#
hostname(config-addr)# ip 192.168.10.1/24
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config)# rule id 2
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
Rule id 3 is created
hostname(config-policy)# exit
24 Chapter 1 Firewall
hostname(config)#
l Enable: arp-l2mode
l Disable: no arp-l2mode
Configuring a VRouter
There is a default VRouter in the system named trust-vr. The default VRouter cannot be deleted.
After enabling the multi-VR function, you can create more VRouters according to your own
needs.
By default, the multi-VR function is disabled, and you cannot create other VRs.
To enable or disable the multi-VR function, in any mode, use the following command:
After multi-VR is enabled or disabled, the system must reboot to make it take effect. After reboot-
ing, system's max concurrent sessions might decrease if the function is enabled, or restore to nor-
mal if the function is disabled. For more information about the maximum concurrent sessions, see
"The Maximum Concurrent Sessions" on Page 698.
If multi-VR is enabled, traffic can traverse up to 3 VRs, and any traffic that has to traverse more
than 3 VRs will be dropped.
Chapter 1 Firewall 25
Creating a VRouter
After enabling the multi-VR function and rebooting the system, to create a new VRouter and
enter the VRouter configuration mode, in the global configuration mode, use the following com-
mand:
ip vro uter vrouter-name
l vrouter-name – Specifies the name of the VRouter to be created. If the specified name
exists, you will enter the VRouter configuration mode directly.
To delete the specified VRouter, in the global configuration mode, use the following command:
n o ip vro uter vr-name
To view the VRouter information, in any mode, use the following command:
sh o w ip vro uter [ vrouter-name ]
l vrouter-name – View the information of the specified VRouter. Information of all the
VRouters in the system will be displayed if you keep this parameter un-configured.
26 Chapter 1 Firewall
Deployment Mode
Overview
Hillstone device supports three types of deployment modes, which are inline mode, bypass mode,
and mix mode. This chapter introduces the three modes in brief and describes the principle and
configuration of the bypass mode in details.
Inline Mode
In most of the situations, Hillstone device will be deployed inline mode. Under this mode, the
device will analyze, control, and forward the network traffic. Figure below shows the inline mode
topology.
Bypass Mode
Some functions on the device can work in both the inline mode and the bypass mode, such as
IPS, AV, statistics, and network behavior control. When the device is working under the bypass
mode, it monitors, scans, and logs the traffic without forwarding them. In this case, the device fail-
ure will not impact the traffic transmitting in the network. The bypass mode is a better choice for
the auditing-only situations. Figure below shows the bypass mode topology.
Chapter 1 Firewall 27
Mix Mode
Hillstone device works under the inline mode naturally. After configuring the bypass mode on the
device, it works under the mix mode of inline and bypass. Figure below shows the mix mode topo-
logy.
28 Chapter 1 Firewall
Working Principle of Bypass Mode
The bypass mode of Hillstone device is realized by configuring related parameters on interfaces.
Bind a physical interface to a Tap zone (function zone for bypass mode) to make it a bypass inter-
face. And then the device will monitor, scan, or record the traffic received in the bypass interface.
Figure below shows the working principle illustration of bypass mode.
As shown in the illustration above, the Hillstone device deployed in the network under the
bypass mode. The interface e1 is the bypass interface and e2 is the bypass control interface. The
interface e0 is the mirror interface of the switch.
The switch mirrors the traffic to e1 and Hillstone device will monitor, scan, and log the traffic
received from e1.
After configuring IPS, AV, or network behavior control on the Hillstone device, if the device
detects network intrusions, virus, or illegal network behaviors, it will send TCP RST packet from
e2 to the switch to tell it to reset the connections.
Chapter 1 Firewall 29
l Specifying a Statistical Range
To deploy the device in the bypass mode, you must create a Tap zone and bind a physical inter-
face to the Tap zone.
To create a Tap zone, in the global configuration mode, use the following command:
zo n e zone-name tap
If the specified name exists, you will enter the zone configuration mode directly.
After configuring a Tap zone, the system will automatically create a policy rule whose source and
destination zones are both the created Tap zone.
To delete the specified zone, in the global configuration mode, use the command
no zone zone-name.
An interface bound to a Tap zone is a bypass interface. A physical interface, an aggregate interface,
a tunnel interface or a redundant interface can be configured as a bypass interface. A bypass inter-
face cannot have sub-interfaces.
To bind an interface to a Tap zone, in the interface configuration mode, use the following com-
mand:
zo n e zone-name
To cancel the binding, in the interface configuration mode, use the command no zone.
A bypass control interface is used to send control packets (TCP RST packet is supported in cur-
rent version). After configuring IPS, AV, or network behavior control on the Hillstone device, if
30 Chapter 1 Firewall
the device detects network intrusions, virus, or illegal network behaviors, it will send TCP RST
packet from e2 to the switch to tell it to reset the connections.
By default, the bypass control interface is the bypass interface itself. For tunnel interfaces, if the
interface itself is used as the control interface, the control message sent by the tunnel interface
may not be processed correctly. It is recommended that bypass tunnel interfaces be configured
with other interfaces as control interfaces. When configuring, ensure that the control interface can
send messages to the switch normally.
To configure a bypass control interface, in the bypass interface configuration mode, use the fol-
lowing command:
tap co n tro l-in terface interface-name
To cancel the specified bypass control interface, in the bypass interface configuration mode, use
the command no tap control-interface.
When the statistic set grouped by IP is enabled, in order to get more precise statistical data, you
can specify a LAN address, namely the statistical range. Packets whose source IP is out of the spe-
cified range will not be counted.
To specify the statistical range, in the bypass interface configuration mode, use the following com-
mand:
tap lan -address { ipv4-address-entry | ipv6-address-entry }
l ipv4-address-entry - Specifies the name of the IPv4 address entry. Generally speaking, this
address entry should contain all the IPv4 LAN addresses on the monitored device.
l ipv6-address-entry - Specifies the name of the IPv6 address entry. Generally speaking, this
address entry should contain all the IPv6 LAN addresses on the monitored device.
To cancel the specified statistical range, in the bypass interface configuration mode, use the com-
mand no tap lan-address.
Chapter 1 Firewall 31
Configuring a Linkage Firewall
Users can configure a linkage firewall, when current device is working in the TAP mode and the
bypass interface is the one that receives the mirror traffic, if one or more of the following con-
figurations are made, the device will send the matched traffic information to the linkage firewall
which will block the traffic:
l The source zone and destination zone in the security policy is the TAP zone with this inter-
face bound, and the action of the IPS rule that referenced by the security policy is Block IP or
Block service;
l The source zone of the share access rule is the TAP zone with this interface bound, and the
action of the share access rule is Block;
l The source zone and destination zone in the security policy is the TAP zone with this inter-
face bound, and the action of the end point profile that referenced by the security policy is
Block;
l The zone of the perimeter traffic filtering is the TAP zone with this interface bound, and the
action of the perimeter traffic filtering is Block IP.
To configure a linkage firewall, in the bypass interface configuration mode, use the following com-
mand:
tap firewall {ip ipv4-address | ipv6 ipv6-address} [protocol ssh [port port-number]] username
username password password [vrouter vrouter-name]
l ip ipv4-address | ipv6 ipv6-address - Specifies the IPv4 or IPv6 address of the linkage fire-
wall.
l protocol ssh [port port-number] - Specifies the port number of the SSH protocol. The range is
1 to 65535. The default value is 22.
32 Chapter 1 Firewall
l username username password password - Specifies the username (username username) and
password (password password to log in to the linkage firewall. The range of the username is 1
to 31 characters. The range of the password is 1 to 31 characters.
l vrouter vrouter-name - Specifies the VRouter of the linkage firewall. The default value is the
default VRouter in the system named trust-vr.
In the bypass interface configuration mode, use the command no tap firewall [ip | ipv6] to cancel
the specified linkage firewall.
Topology
A Hillstone device is deployed in the network under the bypass mode. The IPS function is
enabled. The interface ethernet0/0 is configured as the bypass interface which is used to receive
the mirrored traffic from the switch. Figure belowshows the topology.
Chapter 1 Firewall 33
Configuration Steps
Step 1: Create the Tap zone and bind an interface to the Tap zone
hostname(config-zone-tap1)# exit
hostname(config-if-eth0/0)# zo n e tap 1
hostname(config-if-eth0/0)# exit
hostname(config)#
Bind the configured IPS profile named ips-profile1 to the Tap zone
hostname(config)# zo n e tap 1
hostname(config-zone-tap1)# exit
hostname(config)#
34 Chapter 1 Firewall
StoneOS Architecture
Overview
StoneOS is the firmware running on the Hillstone devices. The basic components of StoneOS
include interface, zone, VSwitch, VRouter, policy rule, and VPN.
Interfaces
Interfaces allow inbound and outbound traffic to security zones. An interface must be bound to a
security zone so that traffic can flow into and from the security zone. Furthermore, for the Layer
3 security zone, an IP address should be configured for the interface and the corresponding policy
rules should also be configured to allow traffic transmission between different security zones. Mul-
tiple interfaces can be bound to one security zone, but one interface cannot be bound to multiple
security zones.
Zones
Zones divide network into multiple segments, for example, trust (usually refers to the trusted seg-
ments such as the Intranet), untrust (usually refers to the untrusted segments where security
treats exist), and so on. You can apply proper policy rules to zones to make the devices control
the traffic transmission among zones. There are eight predefined security zones in StoneOS,
which are trust, untrust, dmz, L2-trust, L2-untrust, L2-dmz, vpnhub (VPN functional zone) and
ha (HA functional zone).
Tip: For more information about zones and policy rules, see Zone and Policy.
Chapter 1 Firewall 35
VSwitches
VSwitch is short for Virtual Switch. A VSwitch functions as a switch in Layer 2. After binding a
Layer 2 zone to a VSwitch, all the interfaces in the zone are also bound to the VSwitch. There is a
default VSwitch named VSwitch1. By default, all Layer 2 zones will be bound to VSwitch1. You
can create new VSwitches and bind Layer 2 zones to VSwitches.
Each VSwitch is a Layer 2 forwarding zone with its own MAC address table which supports the
Layer 2 traffic transmission for the device. Furthermore, the VSwitchIF helps on the traffic trans-
mission between Layer 2 and Layer 3.
VRouter
VRouter is the short form for Virtual Router and also abbreviated as VR. A VRouter functions as
a router with its own routing table. There is a default VR named trust-vr. By default, all the Layer
3 zones will be bound to trust-vr automatically. The system supports the multi-VR function and
the max VR number varies from different platforms. Multiple VRs make the device work as mul-
tiple virtual routers, and each virtual router uses and maintains its own routing table. The multi-
VR function allow a device to achieve the effects of the address isolation between different route
zones and address overlapping between different VRs, as well as to avoid route leaking to some
extent, enhancing route security of network. For more information about the relationship between
interface, security zone, VSwitch and VRouter, see the following diagram:
36 Chapter 1 Firewall
As shown above, the binding relationships among them are:
l Interfaces are bound to security zones. Interfaces bound to Layer 2 security zones and Layer 3
security zones are known as Layer 2 interfaces and Layer 3 interfaces respectively. One inter-
face can be only bound to one security zone; interface and its sub interface can belong to dif-
ferent security zones.
l Security zones are bound to a VSwitch or VRouter. Layer 2 security zones are bound to a
VSwitch (by default the predefined Layer 2 security zone is bound to the default VSwitch1),
and Layer 3 security zones are bound to a VRouter (by default the predefined Layer 3 security
zone is bound to the default trust-vr), thus realizing the binding between the interfaces and
VSwitch or VR. One security zone can be only bound to one VSwtich or VR.
Policy
Policy is the basic function of Hillstone devices that is designed to control the traffic forwarding
between security zones/segments. By default Hillstone devices will deny all traffic between secur-
ity zones/segments, while the policy can identify which flow between security zones or segments
will be permitted, and which will be denied, specifically based on policy rules.
VPN
StoneOS supports IPsec VPN, SSL-based remote access solution - Secure Connect VPN
(SCVPN), dial-up VPN, PnPVPN, and L2TP VPN. You can configure VPN tunnels and choose
Chapter 1 Firewall 37
the VPN application mode:
l Policy-based VPN: Bind VPN tunnels to policy rules to transfer the specified traffic through
tunnels.
l Route-based VPN: Bind VPN tunnels to tunnel interfaces, and then make the tunnel interface
the next hop of the static routes. The specified traffic will be transmitted through VPN tun-
nels.
38 Chapter 1 Firewall
Chapter 1 Firewall 39
1. Identify the logical ingress interface of the packet to determine the source zone of the
packet. The logical ingress interface may be a common interface or a sub-interface.
2. The system performs sanity check to the packet. If the attack defense function is enabled
on the source zone, the system will perform AD check simultaneously.
3. Session lookup. If the packet belongs to an existing session, the system will perform Step
11 directly.
4. DNAT operation. If a DNAT rule is matched, the system will mark the packet. The DNAT
translated address is needed in the step of route lookup.
*If BNAT rule exists, the packet will be checked if it matches any BNAT rule. When the
packet matches a BNAT rule, it will follow BNAT configuration, and will not check for reg-
ular DNAT rules.
5. Route lookup. The route lookup order from high to low is: PBR > SIBR > SBR > DBR >
ISP route.
Till now, the system knows the logical egress and destination zone of the packet.
6. SNAT operation. If a SNAT rule is matched, the system will mark the packet.
*If BNAT rule exists, the packet will be checked if it matches any BNAT rule. When
packet matches a BNAT rule, it will follow BNAT configuration, and will not check for reg-
ular SNAT rules.
7. VR next hop check. If the next hop is a VR, the system will check whether it is beyond the
maximum VR number (current version allows the packet traverse up to three VRs). If it is
beyond the maximum number, the system will drop the packet; and if it is within the max-
imum number, return to Step 4. If the next hop is not a VR, go on with policy lookup.
8. Policy lookup. The system looks up the policy rules according to the packet’s source/des-
tination zones, source/destination IP and port, and protocol. If no policy rule is matched,
the system will drop the packet; if any policy rule is matched, the system will deal with the
40 Chapter 1 Firewall
packet as the rule specified. And the actions can be one of the followings:
l Fromtunnel: Checks whether the packet originates from the specified tunnel. The sys-
tem will forward the packet from the specified tunnel and drop other packets.
9. First time application identification. The system tries to identify the type of the application
according to the port number and service specified in the policy rule.
11. If necessary, the system will perform the second time application identification. It is a pre-
cise identification based on the packet contents and traffic action.
12. Application behavior control. After knowing the type of the application, the system will
deal with the packet according to the configured profiles and ALG.
13. Perform operations according to the records in the session, for example, the NAT mark.
Deny Session
The deny session function dramatically improves the system performance when the device suffers
attacks. Usually, before creating a new session, the system will do some related actions to the
packet, such as AD check , SNAT/DNAT mark, policy rule lookup, application identification,
and so on (refer to the packet handling process in the previous section). Doing the related actions
consumes lots of CPU resource which leads to a performance degrading and gives the attackers
chances. To address this problem, StoneOS provides the deny session function.
Chapter 1 Firewall 41
Here describes the working principle of deny session. After configuring the deny session func-
tion, the system will create deny sessions for the packets that cannot create sessions for some reas-
ons. When a packet enters the device, the system will check its 5-tuple, and if the packet matches
an existing deny session, the system will drop it. Thus the system performance is improved.
The system will create deny sessions in the following situations:
l The deny sessions age out automatically. The existing deny sessions will age out when the
time is up and the system will deleted the aged deny sessions. You can specify the age out
time.
l If the reverse traffic is allowed to create a session, the corresponding deny session will be
deleted.
Deny session configurations can be performed in the flow configuration mode. To enter the flow
configuration mode, in the global configuration mode, use the commandflow.
You can specify the situations to create deny sessions. In the flow configuration mode, use the fol-
lowing command:
den y-sessio n den y-typ e {all | ad | p o licy | ro ute | self | sessio n -limit}
42 Chapter 1 Firewall
l all – Creates deny sessions in all the 5 situations the system supports.
l ad – Creates deny sessions when the packet fails in AD check (Layer 2 and Layer 3 IP
address spoofing attack defense).
l policy – Creates deny session when the packet cannot find a matched policy rule or matched
a deny rule.
l route – Creates deny sessions when the packet cannot find a forward or reverse route.
l session-limit – Creates deny sessions when the packet is out of the configured session lim-
itation.
To remove the deny session type configuration, in the flow configuration mode, use the following
command:
n o den y-sessio n den y-typ e {all | ad | p o licy | ro ute | self | sessio n -limit}
It refers to the maximum number of deny sessions the system supports. To specify the maximum
number of deny session, in the flow configuration mode, use the following command:
den y-sessio n p ercen tage number
l number – Specifies the percentage of deny sessions in the total sessions. The value range is 0
to 10. The value of 0 means to disable the deny session function. The default value is 2,
which means up to 2% deny sessions among the total sessions can be created.
To restore the default deny session number, in the flow configuration mode, use the following
command:
n o den y-sessio n p ercen tage
Chapter 1 Firewall 43
Specifying the Timeout Value
The timeout value refers to the time duration after which the deny session will age out and be
deleted from the system. To specify the timeout value, in the flow configuration mode, use the
following command:
den y-sessio n timeo ut time
l time – Specifies the timeout value. The value range is 1 to 3 seconds. The default value is 3.
To restore to the default timeout value, in the flow configuration mode, use the following com-
mand:
n o den y-sessio n timeo ut
The deny session configuration information include type, maximum number, and timeout value.
To view the information, in any mode, use the following command:
sh o w flo w den y-sessio n
To view the existing deny session information, in any mode, use the following command:
sh o w sessio n den y
44 Chapter 1 Firewall
Global Network Parameters
To provide a better traffic transmission service, the device supports a set of global network para-
meters, including TCP MSS (Maximum Segment Size), TCP sequence number check, TCP three-
way handshaking timeout check, TCP SYN packet check, IP fragment and Jumbo Frame options.
Configuring MSS
MSS is a parameter of the TCP protocol that specifies the largest amount of data that the device
can receive in a single TCP segment. You can specify the MSS value for all the TCP SYN/ACK
packets or the IPsec VPN TCP SYN/ACK. A proper MSS value can reduce the number of IP
fragment. To specify the MSS value, in the global configuration mode, use the following com-
mand:
tcp -mss {all | tun n el} size
l all – Specifies the MSS value for all the TCP SYN packets.
l tunnel – Specifies the MSS value for TCP packets of the IPsec VPN /SSL
VPN/GRE/L2TP tunnel etc.
l size – Specifies the MSS value. The value range is 64 to 65535. The default value of TCP
SYN/ACK packets is 1448. The default value of IPsec VPN TCP SYN/ACK packets is
1380.
To restore to the default MSS value, in the global configuration mode, use the following com-
mand:
n o tcp -mss {all | tun n el}
The TCP sequence number check function checks the TCP sequence number of the packet, and
if the sequence number exceeds the TCP window, the system will drop the packet. This function
is enabled by default. To configure the TCP sequence number check function, in the global con-
figuration mode, use the following commands:
Chapter 1 Firewall 45
• Disable: tcp-seq-check-disable
• Enable: no tcp-seq-check-disable
The device can check the TCP three-way handshaking time, and if the three-way handshaking has
not been completed after timeout, the connection will be reset. To configure this function, in the
global configuration mode, use the following command:
tcp -syn -ch eck [ timeout-value ]
l timeout-value – Specifies the timeout value. The value range is 1 to 1800 seconds. The
default value is 20.
To disable the TCP three-way handshaking timeout check function, in the global configuration
mode, use the following command:
n o tcp -syn -ch eck
The system uses age-time to calculate the living time of the TCP connection. And if do not
receive any data within the age-time, system will delete the TCP connection. You can specify age-
time for each state of TCP connection. The age time you can specified for the following TCP con-
nection state:
l ESTABLISHED
l FIN-WAIT-1
l FIN-WAIT-2
l TIME-OUT
To specify age-time in ESTABLISHED state, in the global configuration mode, use the following
command:
tcp -estab lish -ch eck [ timeout-value ]
46 Chapter 1 Firewall
l timeout-value – Specifies age-time for the ESTABLISHED state. After a three-way hand-
shake, the TCP connection moves to the ESTABLISHED state without any TCP data trans-
mitting and use the defined age-time of this state. The value range is from 1 to 1800 seconds.
If this parameter is not specified, system will use the default value 300 seconds.
To specify age-time in FIN-WAIT-1 state, in the global configuration mode, use the following
command:
tcp -fin -wait-1-ch eck [ timeout-value ]
l timeout-value – Specifies age-time for the FIN-WAIT-1 state. The value range is from 1 to
1800 seconds. If this parameter is not specified, system will use the default value 120
seconds.
To specify age-time in FIN-WAIT-2 state, in the global configuration mode, use the following
command:
tcp -fin -wait-2-ch eck [ timeout-value ]
l timeout-value – Specifies age-time for the FIN-WAIT-2 state. The value range is from 1 to
1800 seconds. If this parameter is not specified, system will use the default value 120
seconds.
To specify age-time in TIME-OUT state, in the global configuration mode, use the following com-
mand:
tcp -time-wait-ch eck [ timeout-value ]
l timeout-value – Specifies age-time for the TIME-OUT state. The value is form 1 to 1800
seconds. If this parameter is not specified, system will use the default value 5 seconds.
System supports the TCP SYN packet check function, when establishing a TCP connection, the
device will check the received packets:
Chapter 1 Firewall 47
l When the received packet is a TCP SYN packet, the TCP connection will be established.
l When the received packet is a TCP non-SYN packet, the packet will be processed according
to the specified action.
This function is disabled by default. To configure this function and specify the action for TCP
non-SYN packet, in the global configuration mode, use the following commands:
tcp-syn-bit-check {drop | reset}
l drop –When the received packet is a TCP non-SYN packet, the system will drop the packet.
l reset –When the received packet is a TCP non-SYN packet, the system will drop the packet
and send RST packet to the peer device.
To disable TCP SYN check function, in the global configuration mode, use the following com-
mands:
no tcp-syn-bit-check
IP Fragment
For the fragmented packets, you can specify the maximum fragment number (any IP packet that
contains more fragments than this number will be dropped) and the fragment reassembling
timeout value (if the device has not received all the fragments after timeout, the packet will be
dropped).
To specify the maximum fragment number, in the global configuration mode, use the following
command:
fragmen t ch ain number
l number – Specifies the maximum fragment number allowed by the system. The value range
is 1 to 1024. The default value is 48.
To restore to the default maximum fragment number, in the global configuration mode, use the
command no fragment chain.
48 Chapter 1 Firewall
To specify the reassembling timeout value, in the global configuration mode, use the following
command:
fragmen t timeo ut time
l time – Specifies the timeout value. The value range is 1 to 60 seconds. The default value is
2.
To restore to the default timeout value, in the global configuration mode, use the command no
fragment timeout.
System supports to drop SYN packets of the same five-tuple array during the delay-deleting time
of TCP sessions, which means during the delay-deleting time of TCP sessions, system drops SYN
packets of the same five-tuple array. If this function is disabled, TCP sessions match and forward
SYN packets during the delay-deleting time, which can lead to the loss of new packets because
the they cannot match correct sessions which are already deleted.
This function is disabled by default.
In the Flow mode, use the following command to enable or disable SYN packets dropping:
l Enable: tcp-out-of-state-syn-drop
l Disable: no tcp-out-of-state-syn-drop
In the execution mode, use the following command to show the state of the function of SYN
packets dropping:
show flow tcp-out-of-state-syn-drop
Chapter 1 Firewall 49
Jumbo Frame
In the process of packet forwarding, if the device gets a frame that the size exceeds the MTU
value of the outbound interface, the data is either fragmented into smaller frames, or dropped.
With the function of Jumbo Frame enabled, the system can forward packets less than or equal to
9216 bytes as follows:
l For IPv4/IPv6 packets that are less than the MTU value of the outbound interface, forward
them directly.
l For IPv4 packets that are larger than the MTU value of the outbound interface, the packets
are forwarded in fragments.
l For IPv6 packets that are larger than the MTU value of the outbound interface, an "ICMPv6
Packet Too Big" error message will be sent to the source node of the packets, and the sender
is urged to shorten the length of the packets.
The Jumbo Frame function is disabled by default. To enable or disable the function, in the flow
configuration mode, use the following command:
jumbo-frame-transceiver {enable | disable}
Notes:
l When the Jumbo Frame function is enabled, the MTU configuration range of
the interface will be changed. For more information about the MTU value
configuration of the interface, see Configuring an Interface MTU Value and
Specifying an IPv6 MTU.
50 Chapter 1 Firewall
l SG-6000-K9180 and SG-6000-X8180 do not support the Jumbo Frame func-
tion.
To view the status of the Jumbo Frame function, in the interface configuration mode, use the fol-
lowing command:
show flow jumbo_frame_transceiver
Session Information
You can perform the following actions on the session information:
In any mode, use the following commands to show the session information in the system:
sh o w sessio n [gen eric | h 323]
sh o w sessio n [id number [ end-id ]] [src-ip A.B.C.D [ netmask | wildcard ]] [dst-ip A.B.C.D [ net-
mask | wildcard ]] [p ro to co l protocol-number ][src-p o rt port-number [ port-number ]] [dst-p o rt
port-number [ port-number ]] [src-mac src-mac-address ] [dst-mac dst-mac-address ] [src-zo n e
zone-name ] [dst-zo n e zone-name ] [ap p licatio n name ] [p o licy policy-id ] [vro uter vrouter-
name ] [vsys vsys-name ] [slo t slot-number ] [cp u cpu-number ] [ ipv4 ] [ ipv6 ] [sn at-rule id ]
[dn at-rule id ] [b n at-rule id ] [ detail ] [tcp -state-3h an dsh ake] [tcp -state-estab lish ed] [tcp -state-
clo sin g]
Chapter 1 Firewall 51
l id number [end-id] – Shows the session information of the specified ID. To show the ses-
sion information of a specified range of IDs, continue entering the end ID of the range.
l src-ip A.B.C.D – Shows the session information of the specified source IP address or spe-
cified range of IP addresses.
l dst-ip A.B.C.D – Shows the session information of the specified destination IP address or
specified range of IP addresses.
l src-port port-number [port-number] – Shows the session information of the specified source
port.
l dst-port port-number [port-number] – Shows the session information of the specified des-
tination port.
l src-mac src-mac-address– Shows the session information of the specified source MAC
address.
l dst-mac dst-mac-address– Shows the session information of the specified destination MAC
address.
l src-zone zone-name– Shows the session information of the specified source security zone.
l dst-zone zone-name– Shows the session information of the specified destination security
zone.
l vrouter vrouter-name – Shows the session information of the specified virtual router.
52 Chapter 1 Firewall
l vsys vsys-name – Shows the session information of the specified VSYS.
l snat-rule id– Shows the session information of the specified SNAT rule.
l dnat-rule id– Shows the session information of the specified DNAT rule.
l bnat-rule id– Shows the session information of the specified BNAT rule.
l tcp-state-closing – Shows the session information of the TCP connection in the terminated
state.
In any mode, use the following command to clear the session information in the system:
clear sessio n [h 323] [id number [ end-id ]] [src-ip A.B.C.D [ netmask | wildcard ]] [dst-ip
A.B.C.D [ netmask | wildcard ]] [p ro to co l protocol-number ][src-p o rt port-number [ port-num-
ber ]] [dst-p o rt port-number [ port-number ]] [vro uter vrouter-name ] [vsys vsys-name ] [slo t
slot-number ] [cp u cpu-number ][ ipv4 ] [ ipv6 ] [ detail ]
Chapter 1 Firewall 53
l h323 – Clears the H323 session information.
l id number [end-id] – Clears the session information of the specified ID. To show the session
information of a specified range of IDs, continue entering the end ID of the range.
l src-ip A.B.C.D – Clears the session information of the specified source IP address or spe-
cified range of IP addresses.
l dst-ip A.B.C.D – Clears the session information of the specified destination IP address or
specified range of IP addresses.
l src-port port-number [port-number] – Clears the session information of the specified source
port.
l dst-port port-number [port-number] – Clears the session information of the specified des-
tination port.
l vrouter vrouter-name – Clears the session information of the specified virtual router.
54 Chapter 1 Firewall
Delay Deleting Session
The system provides the function of delaying deleting sessions, i.e. when the device receives
FIN/RST packets, the device will delete the sessions when the specified time before sessions are
deleted is over, rather than immediately delete related sessions. If user's server ends the sessions
only after receiving the second FIN/RST packets, delaying deleting sessions can enable the
second FIN/RST packets to successfully match the sessions, and then arrive at user's server and
end the related sessions, which can help avoid abnormal increase of sessions in user's server.
By default, this function is enabled and the time before sessions are deleted is 2 seconds.
In the flow mode, use the following command to enable delaying deleting session and specify the
time before sessions are deleted:
tcp-session-close-wait [timeout-value]
l timeout-value–Specify the time before sessions are deleted. The default value is 2 seconds.
The value range is 1 to 30 seconds.
In the flow mode, use the negative form of the above command to disable delaying deleting ses-
sions as below. When this function is disabled, the device will immediately delete sessions after
receiving FIN/RST packets.
no tcp-session-close-wait
In the execution mode, use the following command to show the state of the function of delaying
deleting session (if the state is "enabled", the time before sessions are deleted will also be shown):
show flow tcp-session-close-wait
Chapter 1 Firewall 55
l Enabling/Disabling RTO query optimization
1. Based on the configuration of the session distribution mode (use the session-schedule-mode
command to configure in the flow configuration mode), the IOM modules will select an
SSM module to create new sessions;
2. During the process of creating sessions, the system will again create new sessions on the cor-
responding SSM modules according to ALG or Full-cone NAT business.
When selecting again SSM modules to create new sessions, the system will conduct query on
RTO. RTO (Real-time Object) refers to the information dynamically created by data packets in
the processing procedure, such as the Pinhole information, the Full-cone NAT table items and
the application identification cache tables.
To improve the system performance, the user can enable the RTO query optimization. When the
user disables Full-cone NAT or the Full-cone NAT business is not included in the user scenario,
the system will not conduct RTO query on the HTTP new session traffic (TCP 80/8080), and
will not select SSM modules again.
In default, RTO query optimization is disabled. To enable or disable this function, in the Flow
configuration mode, use the following command:
l Enable:rto-query-optimization enable
To display the state of RTO query optimization, in any mode, use the following command:
show flow rto-query-optimization
56 Chapter 1 Firewall
Low Latency Mode
System support to shorten the delay by adjusting the internal send and receive packet parameters.
To enable the low latency mode, in the flow configuration mode, use the following command:
low-latency-mode
To disable the low latency mode, in the flow configuration mode, use the following command:
no low-latency-mode
Notes: After enabling the low-latency mode, the throughput of device may be
reduced.
To show if the low latency mode is enabled, in any mode, use the following commands:
show flow low-latency-mode
Chapter 1 Firewall 57
Zone
Overview
In StoneOS, zone is a logical entity. One or more interfaces can be bound to one zone. A zone
with policy applied is known as a security zone, while a zone created for a specific function is
known as a functional zone. Zones have the following features:
l An interface should be bound to a zone. A Layer 2 zone is bound to a VSwitch, while a Layer
3 zone is bound to a VRouter. Therefore, the VSwitch of a Layer 2 zone is the VSwitch of the
interfaces in that zone, and the VRouter of a Layer 3 zone is the VRouter of the interfaces in
that zone.
l Layer 2 interfaces work in Layer 2 mode and Layer 3 interfaces work in Layer 3 mode.
There are 9 predefined security zones in StoneOS, which are trust, untrust, dmz, L2-trust, L2-
untrust, L2-dmz, mgt, vpnhub (VPN functional zone) and ha (HA functional zone). You can also
customize security zones. Actually predefined security zones and user-defined security zones
make no difference in functions, and you can use them as needed.
l Creating a zone
58 Chapter 1 Firewall
l Binding a Layer 2 zone to VSwitch
To view the zone information, in any mode, use the following command:
sh o w zo n e [ zone-name ]
Creating a Zone
Unless it is specified as a Layer 2 zone, a new zone will be a Layer3 zone by default. To create a
zone, in the global configuration mode, use the following command:
zo n e zone-name [l2 | tap ]
l tap -Specifies the zone as a Tap zone. A Tap zone is a functional zone in Bypass mode.
If the specified zone name exists, the system will directly enter the zone configuration mode.
To delete an existing zone, in the global configuration mode, use the command
no zone zone-name [l2].
To specify the description for a specific zone, use the following command in the zone con-
figuration mode:
descrip tio n description
Chapter 1 Firewall 59
l description – Specifies the description of the zone.
If a Layer 3 zone is bound to a VRouter, all the interfaces in that zone are bound to this VRouter.
All the Layer 3 zones are bound to trust-vr by default. To assign a different VRouter to a layer-3
zone, in the zone configuration mode, use the following command:
vro uter vrouter-name
l vrouter-name – Specifies the name of the VRouter to which the Layer 3 zone are bound.
To restore to the default zone-trust-vr binding setting, in the zone configuration mode, use com-
mand no vrouter.
Notes: Before changing the VRouter of a zone, make sure there is no binding inter-
face in that zone.
If a Layer 2 zone is bound to a VSwitch, all the interfaces in that zone are bound to this VSwitch.
All the Layer 2 zones are bound to VSwitch1 by default. To assign a different VSwitch to a Layer
2 zone, in the zone configuration mode, use the following command:
b in d vswitch-name
l vswitch-name - Specifies the name of VSwitch to which the Layer 2 zone is bound.
To restore to the default zone-VSwtich1 binding setting, in the zone configuration mode, use
command no bind.
Notes: When changing the VSwitch to which a zone belong, make sure there is no
binding interface in the zone.
60 Chapter 1 Firewall
Configuration Example
The goal is to create VSwitch2 and Layer 2 zone named zone1, then bind zone1 to VSwitch2, and
bind ethernet0/2 to zone1. Use the following commands:
hostname(config-vswitch)# exit
hostname(config)# zo n e zo n e1 l2
hostname(config-zone-zone1)# b in d vswitch 2
hostname(config-zone-zone1)# exit
hostname(config-if-eth0/2)# zo n e zo n e1
hostname(config-if-eth0/2)# exit
hostname(config)#
Chapter 1 Firewall 61
Interface
Overview
In StoneOS, interface is a point where packets enter and leave the device. To allow data traffic go
through a zone, you must bind the interface to that zone and if it is a Layer 3 zone, you should
assign an IP address to the interface. Moreover, to allow traffic forwarding among interfaces of dif-
ferent zones, a policy should be applied. A zone can be bound with more than one interface, but
an interface can only be bound to one zone.
Interface Types
Hillstone products provide a variety of interface types. According to the nature of interface, the
interfaces consist of physical interface and logical interface.
l Physical interface: Every Ethernet port on the device is a physical interface. The name of phys-
ical interface is predefined, consisting of port type, slot number and port number, e.g. eth-
ernet2/1 or ethernet0/2.
l Logical interface: Logical interface includes BGroup interface, sub-interface, VSwitch inter-
face, Vlan interface, loopback interface, tunnel interface, aggregate interface, Super-VLAN
interface and redundant interface.
According to the binding zone, the interfaces can also be categorized into Layer 2 interface and
Layer 3 interface.
l Layer 3 interface: an interface which belongs to a Layer 3 zone. Only Layer 3 interface is able
to work in NAT/Route mode.
Different interface has different functions. Table below describes all logical interfaces.
Type Description
62 Chapter 1 Firewall
Type Description
VLAN interface VLAN interface is Layer 3 interface, and it represents all Ethernet
ports in the VLAN. If one of the VLAN Ethernet ports is in the UP
status, the VLAN interface is up. The VLAN interface is the outgoing
interface of all the devices in the VLAN. Normally, the IP address of
the VLAN interface is the address of the gateway in the VLAN.
Loopback inter- Loopback interface is a logical interface. As long as the device which
face the loopback interface belongs to is in the working status, the loop-
back interface is in the working status. Therefore, loopback interface is
often stable.
Tunnel interface Tunnel interface is the ingress port of VPN tunnel. Data flow accesses
and leaves the VPN tunnel by going through the tunnel interface. Tun-
nel interface must be a Layer 3 interface.
Chapter 1 Firewall 63
Type Description
the data flow, only that the available bandwidth will become smaller.
Redundant inter- Redundant interface refers to the binding of two physical interfaces. A
face physical interface works as the master interface and processes the data
flow, and the alternative interface stands by. The alternative interface
will go on to process the data flow when the master interface fails to
function.
PPPoE interface A logical interface based on Ethernet interface that allows connection
to PPPoE servers over PPPoE protocol.
Interface Dependency
Some types of the interfaces are related to each other. The following figure illustrates the rela-
tionship of aggregate interface and its sub-interfaces and the relationship of redundant interface
and its sub-interfaces. The following figure illustrates the relationship of VSwitch interface and
other Layer 2 interfaces. The dotted line in the figures indicates that there can be more interfaces.
As shown in the above figure, a redundant interface (Red IF) is a binding interface of two physical
interfaces (PHY IF) and it allows redundant sub-interfaces (Red SubIF) to be created. An aggreg-
ate interface (Agg IF) is a binding interface of up to 16 physical interfaces and it also allows aggreg-
ate sub-interfaces (Agg SubIF).
64 Chapter 1 Firewall
As shown in the above figure, a VSwitch interface represents all physical and logical interfaces in
that VSwitch. Packets can be transferred in Layer 2 and Layer 3 by going through the VSwitch
interface (VSwitch IF).
To view all interfaces using the CLI, use the command show interface. The interface list will dis-
play the information by categories.
Item Description
H (Physical state) Shows the physical availability state of interface :U: up, D:
down, K: ha keep up, C: lacp down.
L (Link state) Shows the link availability state of the interface: U: up, D:
Chapter 1 Firewall 65
Item Description
P (Protocol state) Shows the protocol availability state of the interface: U: up,
D: down, K: ha keep up, C: lacp down.
The following description explains the meaning of H, A, L and P states, and the value of states are
U: up, D: down, K: ha keep up, C: lacp down:
l H (Physical state): the physical connectivity state of the interface. The UP state indicates that
the interface is physically connected, while the DOWN state means otherwise, in HA mode,
the ha keep up state indicates that the HA interface is keep connected.
l A (Admin state): the manageability state of the interface. To enable an interface, use the com-
mand no shutdown command; to disable an interface, use the command shutdown. If an inter-
face’s A status is UP, it a manageable interface, and DOWN state means otherwise.
l L (Link state): the linking state of the interface. The link state depends on the states of H and
A. If both H and A states are UP, the L state is UP, in HA mode, the ha keep up state indic-
ates that the HA interface is keep connected.
l P (Protocol state): the protocol state of the interface. When the L state is UP and the interface
has been allocated with an IP address, the P is UP, in HA mode, the ha keep up state indicates
that the HA interface is keep connected.
66 Chapter 1 Firewall
Viewing a Specific Interface
To view the information about a specific interface, type the interface name after the command
show interface, i.e. show interface interface-name. Figure below gives an example of the com-
mand show interface ethernet0/0.
Configuring an Interface
To configure an interface, you need to enter into one of the seven interface modes below as
needed:
Chapter 1 Firewall 67
l Route mode: Interface in router mode is a Layer 3 interface bound to a Layer 3 zone.
l VSwitch mode: Interface in VSwitch mode is a Layer 2 interface bound to a Layer 2 zone.
l VLAN mode: Interface in VLAN mode is a Layer 2 interface bound to a Layer 2 zone.
l Aggregate mode: Interface in aggregate mode belongs to an aggregate interface and cannot be
bound to any zone.
l Redundant mode: Interface in redundant mode belongs to a redundant interface and cannot be
bound to any zone.
l BGroup mode: Interface in BGroup mode belongs to a BGroup interface and cannot be
bound to any zone.
l Tunnel mode: Interface in tunnel mode is a Layer 3 interface bound to a Layer 3 zone.
This section introduces the basic interface configuration and operation, including:
68 Chapter 1 Firewall
l Configuring traffic mirroring
l Disabling Recording Interface IP Address Conflict Log Triggered by DAD Mode ARP
Packets
A physical interface can be bound to an existing Layer 2 or Layer 3 zone. To bind the interface to
a zone, in the interface configuration mode, use the following command:
zo n e zone-name
Chapter 1 Firewall 69
To unbind the interface from a zone, use the command no zone. Before unbinding a Layer 3 inter-
face, you need to clear the IP address of the interface first.
l To make the interface work in Layer 2, you need to bind the interface to a
Layer 2 zone.
To specify the description of the interface, use the following command in the interface con-
figuration mode:
descrip tio n description
To delete the description, use the command in the interface configuration mode no description.
The IP addresses of interfaces on a device must belong to different subnets. You can assign a
static IP address to the interface, or use DHCP or PPPoE for the interface to get a dynamic
address.
To configure the IP address for an interface, in the interface configuration mode, use the fol-
lowing command:
ip address { ip-address/mask | dh cp [setro ute] | p p p o e [setro ute]}
70 Chapter 1 Firewall
l dhcp [setroute] – Specifies the IP address which is allocated by DHCP. If setroute is con-
figured, the system will set the gateway address provided by DHCP server as the default gate-
way route.
l pppoe [setroute] – Specifies the IP address which is allocated by PPPoE. If setroute is con-
figured, the system will set the gateway address provided by PPPoE server as the default gate-
way route.
l StoneOS supports two styles of subnet mask, i.e. 1.1.1.1/24 can also be represented as
1.1.1.1 255.255.255.0.
To clear the IP address of an interface, use the command no ip address [ip-address/mask | dhcp |
pppoe].
Chapter 1 Firewall 71
l ip-address/mask – Specifies the secondary IP address.
To clear the secondary IP address, use the command no ip address ip-address/mask secondary. If
you want to delete the IP address of a primary interface, you need to clear its secondary IP
addresses first.
Notes: The secondary IP address of the configured interface and the current IP
address of the interface must be in different network segments.
To set the Maximum Transmission Unit (MTU) value, in the interface configuration mode, use
the following command:
ip mtu value
l value - Specifies the MTU value. The default MTU value is 1500 bytes. The range is 1280
bytes to 1800/2000 bytes (The max MTU may vary on different platforms. ). If the Jumbo
Frame function is enabled, the MTU value range is changed to 1280 bytes to 9300 bytes and
the default MTU value is 1500 bytes. For more information about the Jumbo Frame function,
see Jumbo Frame.
You can not only enforce to shut down a specific interface, but also control the time of shutdown
by schedule, or control the shutdown according to the link status of tracked objects.
To shutdown an interface via CLI, in the interface configuration mode, use the following com-
mand:
sh utdo wn [track track-object ] [sch edule schedule-name ]
72 Chapter 1 Firewall
l shutdown – Shut down the interface immediately.
l track track-object – Specifies the name of tracked object. If this parameter is specified, the
interface will shut down when the track object fails to work. For information on the tracked
object, see Configuring a Track Object of System Management.
To cancel force shut-down and clear all previous shutdown settings, use the command no shut-
down.
The track object is used to monitor the working status of the interface. When the interface cannot
work normally, the system will take the corresponding action. To specify the track object, in the
interface configuration mode, use the following command:
mo n ito r track track-object-name
l track-object-name – Specifies the name of the track object configured in the system.
To cancel the track object, in the interface configuration mode, use no monitor command.
By default, the interface ARP timeout value is 1200 seconds. This can be changed within the
range from 5 to 65535 seconds when necessary.
To change the ARP timeout value, in interface configuration mode, use the following command:
arp timeo ut value
Chapter 1 Firewall 73
Configuring an Interface Protocol
To manage and configure devices through an interface using SSH, Telnet, Ping, SNMP, HTTP,
HTTPS, FTP, Traceroute, or NETCONF, you need to enable the corresponding protocol first.
To enable a protocol above, in the interface configuration mode, use the following command:
man age {ssh | teln et | p in g | sn mp | h ttp | h ttp s | ftp | tracero ute | n etco n f}
l traceroute - Enables Traceroute service of UDP on the interface. When enabled, the device
can be tracked by other vendors' devices via the traceroute command.
To disable a protocol, use the corresponding command no manage {ssh | telnet | ping | snmp |
http | https | ftp |traceroute}.
You can obtain log and configuration information via the FTP service on the interface. If the inter-
face is enabled with FTP, you can create an FTP user and modify the FTP port number.
To create an FTP user, in the global configuration mode, use the following command:
ftp user user-name p asswo rd password
74 Chapter 1 Firewall
l user user-name – Specifies the username for FTP.
You can configure up to three FTP users. To cancel the FTP user configuration, in the global con-
figuration mode, use the command no ftp user user-name.
To modify the FTP port number, in the global configuration mode, use the following command:
ftp p o rt number
l number – Specifies the FTP port number. The value range is 1 to 65535. The default value
is 21.
To restore to the default FTP settings, in the global configuration mode, use the command no ftp
port.
After the default FTP port is modifies, if the client logs in with the passive mode, then you need
to enable application identification for the security zone the interface belongs to. In the security
zone configuration mode, use the command application-identify.
To view the FTP configuration, in any mode, use the following command:
sh o w ftp {p o rt | user}
The Ethernet interface mirroring allows users to mirror the traffic of one interface to another inter-
face (analytic interface) for analysis and monitoring.
To configure an analytic interface, in the global configuration mode, use the following command:
mirro r to interface-name
l interface-name – Specifies the name of the analytic interface. The analytic interface must
have no other configuration, such as binding to a zone.
To enable interface mirroring, in the interface configuration mode, use the following command:
Chapter 1 Firewall 75
mirro r en ab le {b o th | rx | tx}
l both | rx | tx – Specifies traffic type to be mirrored. both indicates the ingress and egress
traffic, rx indicates the ingress traffic (traffic entering the interface), and tx indicates the egress
traffic (traffic exiting the interface). The default value is both.
To cancel the interface mirroring settings, in the interface configuration mode, use the command
no mirror.
The interface with mirroring configured will mirror all the traffic to the analytic interface. Under
heavy traffic, the mirroring might fail due to high load. To address this problem, the system is
designed with mirror filter that allows user to filter the traffic to be mirrored, thus reducing the
load.
The system supports the following filtering conditions:
l Protocol type
To configure a mirror filter rule, in the global configuration mode, use the following command:
mirro r filter in terface interface-name {[src-ip address-entry ][src-p o rt port-num ][dst-ip
address-entry ][dst-p o rt port-num ][p ro to {icmp | tcp | udp | protocol-number }] [direct
{do wn | up }]}
l src-ip address-entry – Specifies the source IP of the traffic. The system only mirrors traffic
originating from the IP address to the analytic interface.
l src-port port-num – Specifies the source port of the traffic. The value range is 1 to 65535.
The system only mirrors traffic originating from the port to the analytic interface.
76 Chapter 1 Firewall
l dst-ip address-entry – Specifies the destination IP of the traffic. The system only mirrors
traffic destined to the IP address to the analytic interface.
l dst-port port-num – Specifies the destination port of the traffic. The value range is 1 to
65535. The system only mirrors traffic destined to the port to the analytic interface.
l proto {icmp | tcp | udp| protocol-number } – Specifies the protocol type. The system will
only mirror traffic over the specified protocol to the analytic interface. You can specify the
protocol type directly, namely icmp, tcp and udp, or specify the protocol number in the range
of 1 to 255.
l direct {down | up} – Specifies the traffic direction. The system only mirrors the upstream
(up) or downstream (down) traffic to the analytic interface.
After creating a mirror filter rule by the above command, the system will assign a rule ID for the
new rule. To view the rule ID and related configuration information, in any mode, use the com-
mand show mirror filter.
To delete the specified mirror filter rule, in the global configuration mode, use the following com-
mand:
n o mirro r filter id id
Notes:
l Not all platforms support mirror filter. Refer to the actual product for the
application of the function.
l The mirrored traffic should not exceed the workload of the analytic interface.
Chapter 1 Firewall 77
Configuring Traffic Mirroring
Notes: After you configure mirror Profile, the data forwarding performance of the
device will be affected. Exercise caution when you run this command. Since net-
working complexity varies with users, we recommend that you contact the technical
engineers from Hillstone before you enable the function. If you do not have require-
ments or finish location debugging, disable the function as soon as possible.
By configuring a mirror profile in the device and binding it to a policy, StoneOS can achieve the
traffic mirroring function. This function can mirror the traffic that matches the specified policy to
the particular interface or IP address. Generally, configuring policy-based traffic mirroring, take
the following two steps:
1. Configure a mirror profile. The mirror profile defines the interface/IP address that the
traffic is mirrored to.
To configure a mirror profile, in the global configuration mode, use the following command to
enter the mirror profile configuration mode first.
mirro r-p ro file mirror-profile-name
l mirror-profile-name - Enter the name of the mirror profile. After executing this command,
StoneOS will create a mirror profile and enter the mirror profile configuration mode. If the
entered name already exists, StoneOS will enter the mirror profile configuration mode. One
mirror profile can include four rules of the same type.
In the global configuration mode, use the following command to delete the specified mirror pro-
file:
n o mirro r-p ro file mirror-profile-name
In the mirror profile configuration mode, you can specify the action for the traffic that matched
the policy. If you want to mirror the traffic to the interface, you need to specify the destination
78 Chapter 1 Firewall
interface and the direction of the traffic; if you want to mirror the traffic to the IP address, you
need to specify the destination IP address, egress interface, next-hop address, and the direction of
the traffic.
StoneOS can mirror traffic that matches the policy to the specified interface (including ethernet or
tunnel interface) . By default, bidirectional traffic that matches the policy will be mirrored to the
interface. Besides, you can filter the traffic based on the direction. You can specify a direction
option, including forward, backward, or bidirectional. Then the traffic of the specified direction
will be mirrored to the interface. In the mirror profile configuration mode, use the following com-
mand to specify the interface and configure the filter settings:
destin atio n in terface { interface-name | tunnel-interface [ tunnel-gateway-ip ]} [directio n { fo r-
ward | b ackward | b idirectio n }]
l interface-name - Specify the interface name. The traffic that matches the policy will be
mirrored to this interface.
l tunnel-interface [ tunnel-gateway-ip ]- Specify the destination tunnel interface name for the
mirrored traffic.Tunnel gateway IP (tunnel-gateway-ip) can also be specified as needed to dis-
tinguish between different GRE tunnels bound to the same tunnel interface.
l direction {forward | backward | bidirection} - Use forward to only mirror the forward traffic
to the specified interface; use backward to only mirror the backward traffic to the specified
interface. Use bidirection to mirror both forward traffic and backward traffic to the specified
interface.
To delete this rule, use the following command in the mirror profile configuration mode:
n o destin atio n in terface interface-name
StoneOS can mirror traffic that matches the policy to the specified destination IP address. By
default, bidirectional traffic that matches the policy will be mirrored to the IP address. Besides,
Chapter 1 Firewall 79
you can filter the traffic based on the direction. You can specify a direction option, including for-
ward, backward, and bidirectional. Then the traffic of the specified direction will be mirrored to
the destination IP address. In the mirror profile configuration mode, use the following command
to specify the interface and configure the filter settings:
destin atio n ip ip-address-1 interface-name [ ip-address-2 ] [directio n {fo rward | b ackward}]
l ip-address-1 – Specify the destination IP address. The traffic that matches the policy will be
mirrored to this IP address.
l interface-name – Specify the egress interface of the traffic that matches the policy.
l ip-address-2 – Specify the next-hop IP address. The traffic that matches the policy will be
forwarded to this IP address via the egress interface.
l direction {forward | backward} – Use forward to only mirror the forward traffic to the spe-
cified IP address; use backward to only mirror the backward traffic to the specified IP
address. Use bidirection to mirror both forward traffic and backward traffic to the specified IP
address.
To delete this rule, use the following command in the mirror profile configuration mode:
n o destin atio n ip ip-address
After configuring a mirror policy, you need to bind it to a policy to make it take effect. To bind a
mirror profile to a policy, use the following command in the policy configuration mode:
mirro r profile-name
l profile-name - Specify the name of the mirror profile. This profile will be bound to the policy.
To cancel the binding settings, in the policy configuration mode, use the following command:
n o mirro r profile-name
To view the mirror profile information, use the following command in any mode:
80 Chapter 1 Firewall
sh o w mirro r-p ro file [ mirror-profile-name ]
l mirror-profile-name – Enter the mirror profile name. The information of this profile will be
displayed. Without name specified, information of all mirror profiles will be displayed.
Reverse route is used for forwarding the reverse path data. A reverse path is in the opposite dir-
ection in relation to the initial data flow direction. It only works on Layer 3 interfaces.
To enable reverse route on an interface, use the following command:
reverse-route {force | prefer| direct-forward [ per-packet ]}
l force – Forces to use reverse route. If the reverse path is found, forward the reverse data by
reserve route; if not, drop the packet. By default, reverse route is forced on Layer 3 interfaces.
l prefer – Uses reverse path in preference to other route. If the reverse route is found, use it
to forward data; if not, use the original return path (i.e. the current interface).
l direct-forward - Disable the reverse route. All the reverse data backtracks and no reverse
route check is carried out.
l per-packet - Enable per-packet check. When the reverse route is disabled and this parameter
is specified, the per-packet check is enabled and the system check the MAC information of
session by packet. If the MAC information of session is not consistent with the source MAC
information of the forward data, the MAC information of session will be modified according
to the source MAC information of the forward data. By default, this function is disabled.
To disable the reverse route, use the command no reverse-route. All the reverse data backtracks
and no reverse route check is carried out.
Notes: If the egress and ingress interfaces of the reverse route are not in the same
zone, packets will be discarded.
Chapter 1 Firewall 81
Configuring Interface Backup
If an interface is specified as a backup to another one, it will replace the primary interface to take
over its traffic when the schedule takes effect or track object fails, and stops working when the
configured condition expires so that the traffic are processed by the primary interface again.
To specify an interface as the backup interface, in the interface configuration mode, use the fol-
lowing command:
b ackup -in terface interface-name {sch edule schedule-name [o verlap -time time ] | track track-
object-name [sch edule schedule-name [o verlap -time time ]]}
l schedule-name – Specifies the schedule. During the specified schedule time period, data
flow is directed to the backup interface.
l time - The migrating time before data being completely switched to the backup interface. The
value range is 1 to 60 seconds. The parameter is disabled by default, i.e. all data flow is trans-
ferred to the backup interface immediately without migrating time.
l track-object-name – Specifies the track object. If the track object fails to response, data flow
will be migrated from the primary to backup interface. If the object tracking is restored to nor-
mal, data flow will be switched back to the primary interface.
A physical interface can be in two connection states: up and down. During the hold time, the
state switches of the physical layer between the two states will not be notified to the system; after
the hold time, if the state is not restored, the change will be notified to the system. This function
can avoid instable network problems caused by frequent changes of physical interface states
within a short period.
82 Chapter 1 Firewall
To configure hold time, in the interface configuration mode (only applicable to physical inter-
faces), use the following commands:
l holddown time - Specifies the holddown time. With this parameter configured, the system
will not determine the up state unless the state of an interface is switched from down to up
and keeps for X seconds (X is specified by time). The value range is 1*500 to 3600* 500 mil-
liseconds. For example, parameter holddown 10 indicates the holddown time is 5 seconds.
l holdup time - Specifies the holdup time. With this parameter configured, the system will not
determine the down state unless the state of an interface is switched from up to down and
keeps for X seconds (X is specified by time). The value range is 1*500 to 3600* 500 mil-
liseconds. For example, parameter holdup 10 indicates the holdup time is 5 seconds.
To cancel the specified hold time, in the interface configuration mode, use the command no hold-
down or no holdup.
Chapter 1 Firewall 83
Notes:
l This function only supports some devices (SG-6000-G3150, SG-6000-
G5150, SG-6000-M6560, SG-6000-M6860).
l You can only bind the ethernet0/0 interface to the mgt zone, other interfaces
invalid.
l After configure the out-of-band management interface, please do not use eth-
ernet0/0 interface to forward traffic.
After the system use PPPoE for the interface to get a dynamic address, if PPPoE function is not
used for a long time, the interface address will age out automatically and then be deleted. The
keepalive function prevent the aging out of PPPoE interface and keep the interface alive.
To configure the keepalive function, in the interface configuration mode, use the following com-
mand:
keep alive IP-address
To cancel the keepalive function, in the interface configuration mode, use the following com-
mand:
n o keep alive
The interface group function binds the status of several interfaces to form a logical group. If any
interface in the group is faulty, the status of the other interfaces will be Down. After all the inter-
faces return to normal, the status of the interface group will be Up. The interface group function
can binds the status of interfaces on different expansion modules.
84 Chapter 1 Firewall
To create an interface group and enter the interface group configuration mode, in the global con-
figuration mode, use the following command:
in terface-gro up group-name typ e lin kage
l group-name– Specifies the name of the interface group. The length is 1 to 31 characters.
To add interfaces to the interface group, in the interface group configuration mode, use the fol-
lowing command:
in terface interface-name
l interface-name – Specifies the interface name which will be added to the interface group.
The maximum number of interfaces is 8.
For example, adding ethernet0/0 and ethernet0/1 to the interface group test to achieve the inter-
face linkage, in the global configuration mode, use the following command:
In the global configuration mode, use the no form to delete the specified interface group:
n o in terface-gro up group-name
To view the status of the specified interface group, in any mode, use the following command:
sh o w in terface-gro up group-name
Sytem supports to configure an editable Local property for all interfaces (except VSwitch) to
avoid the duplicate MAC address when managing huge amount of HA devices in the same Layer 2
Network. The sub-interface and virtual forward interface don’t need to configure Local prop-
erty, which inherit the primary interface directly. If you configure Local property foran interface ,
the system will not synchronize this configuration with the backup device. In the interface con-
figuration mode, use the following command:
lo cal
Chapter 1 Firewall 85
To delete HA Local property, in interface configuration mode, use command no local.
ARP authentication client (Hillstone Secure Defender) can be installed in computers with oper-
ation systems of Windows 2000/2003/XP/Vista.
To download and install the Hillstone Secure Defender, use the following steps:
1. Use the command authenticated-arp force to enable the ARP authentication function on the
interface and force the PC to install the ARP client.
2. Use a computer to access to the Internet through the interface, and then follow the instruc-
tions on the pop-up download page to download HillstoneSecureDefender.exe.
3. When the download is finished, double click HillstoneSecureDefender.exe and install the cli-
ent by following the prompts of the install wizard.
To uninstall Hillstone Secure Defender, navigate to the Start menu and click All Programs > Hill-
stone Secure Defender > Uninstall.
DAD (Duplicate Address Detection)mode ARP packets is a special type of gratuitous ARP
packets, its source IP is 0.0.0.0, and the destination IP is the specific IP address of packets detec-
tion. It is mainly used to detect address conflict.
By default, system will determine whether the received the ARP packets is a DAD mode ARP
packet. If it is DAD mode ARP packet, and its destination IP address is in conflict with the inter-
face IP address or the address in the NAT address pool, system will record the interface IP
address conflict log. To improve device performance and reduce device memory utilization and
false positives, you can disable the function of recording interface IP address conflict logs
triggered by DAD mode ARP packets.
To disable the function of recording interface IP address conflict log, in the interface con-
figuration mode, use the following command:
no dad-alarm
86 Chapter 1 Firewall
To re-enable the function of recording interface IP address conflict log, in the interface con-
figuration mode, use the following command:
dad-alarm
When the device receives ARP request with a destination IP of a different network segment,
proxy ARP feature allows the device to reply with its own MAC address as the source address.
Proxy ARP can work only on Layer-3 interface.
To enable proxy ARP, in the interface configuration mode, use the following command:
p ro xy-arp [dn s]
If an interface has been enabled with proxy ARP (with the parameter dns configured) and DNS
proxy, it is a plug-and-play (PnP) interface, which means the internal computers with dynamic IP
and DNS are able to access to the Internet through this interface. However, you should keep in
mind that:
l If a computer and the PnP interface are in the same network segment, to allow the computer
to visit the Internet, make sure that the computer uses the interface IP address as its gateway.
For instance, an interface IP is 192.168.1.1/24 and a computer IP is 192.168.1.55/24. In
Chapter 1 Firewall 87
order to allow the computer to visit the Internet through this interface, make the computer
gateway address as 192.168.1.1.
l It is suggested to assign an unusual IP address with 32 bit mask to a PnP interface, like
10.199.199.199/32, which can ensure that there will be no identical IP address in the subnet.
Tip: For information on DNS proxy configuration, see Configuring a DNS Proxy.
The goal is to enable the PnP IP function on an interface to allow LAN users to visit the Internet.
The topology is shown in Figure below: ethernet0/0 is connected to the Internet; ethernet0/1 is
connected to the Intranet; DNS server IP is 202.106.1.1.
hostname(config-if-eth0/0)# zo n e un trust
hostname(config-if-eth0/0)# exit
88 Chapter 1 Firewall
hostname(config)# in terface eth ern et0/1
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config-dns-proxy-rule)# src-addr an y
hostname(config-dns-proxy-rule)# dst-addr an y
hostname(config-dns-proxy-rule)# do main an y
hostname(config-dns-proxy-rule)# actio n p ro xy
hostname(config-dns-proxy-rule)# exit
Step 3: Configure the PnP IP feature (i.e. DNS proxy and proxy ARP)
hostname(config-if-eth0/1)# dn s-p ro xy
hostname(config-if-eth0/1)# p ro xy-arp dn s
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# exit
Chapter 1 Firewall 89
hostname(config)#
As a logical interface, loopback interface always remains in working state until the device shuts
down. The naming rule for loopback interface is loopbackNumber (Number is an integer number
from 1 to 256). The unique identifier for a loopback interface is its name.
To create a loopback interface, in the global configuration mode, use the following command:
in terface lo o p b ack Number
hostname(config-if-loo1)#
To delete a loopback interface, in the global configuration mode, use the command no interface
loopback Number.
All the Ethernet interfaces of Hillstone devices are gigabit interfaces. Gigabit Ethernet interface
conforms to 1000Base-T physical layer specifications. They can work under the rate of 10Mbit/s,
100Mbit/s and 1000Mbit/s. Both full-duplex and half-duplex modes are supported, but Gigabit
half-duplex mode is not supported.
90 Chapter 1 Firewall
in terface eth ern etm/n .tag
l .tag – Specifies a number to mark the sub-interface. The value range is 1 to 4094. For
example, the command interface ethernet0/0.1 creates a sub-interface named ethernet0/0.1
for interface ethernet0/0.
If the sub-interface exists, this command leads you into the interface configuration mode directly.
To delete a sub-interface, use the command no interface ethernetm/n.tag.
The Ethernet sub-interface supports PPPoE. One Ethernet interface can only be bound to one
PPPoE instance.
You must the enter Ethernet configuration mode in order to configure settings like interface
speed, duplex modes and Combo type, etc.
To enter the Ethernet configuration mode, in the global configuration mode, use the following
command:
in terface ethernetm/n
Ethernet copper interface can work under full and half duplex mode, and can adapt to link speed
of 10Mbit/s, 100Mbit/s and 1000Mbit/s,while Gigabit Ethernet fiber-optic interface can work
only in full duplex mode, and it does not need speed setting.
To configure a duplex mode and speed for an interface, in interface configuration mode, use the
following command:
dup lex method [sp eed value ]
l method - This parameter can be auto, full (for full-duplex mode) or half (for half-duplex
mode). When it is specified as auto, the interface rate will will automatically be auto. You
don't need to continue to specify the rate. At this time, the system will automatically select
Chapter 1 Firewall 91
the best duplex mode and rate.The default duplex method is auto, which means the system
assigns a proper mode for the interface.
l value - This parameter can be auto, 10, 100 or 1000. auto is the default value, which means
the system automatically detects and assigns a proper link speed. The link speed specified
here must conform to the actual network link speed of this end and of the peer device.
To clone a MAC address to the Ethernet sub-interface, in the Ethernet sub-interface con-
figuration mode, use the following command:
mac-clo n e H.H.H
To delete the specified MAC address, in the Ethernet sub-interface configuration mode, use the
command no mac-clone.
If the MAC address changes after the PPPoE connection has been established, you need to re-con-
nect the PPPoE client to make the new MAC address take effect.
A Combo port is the combination of a fiber-optic port and a copper port. By default, if both of
the ports have cables connected, fiber-optic port has the priority. If the copper port was used at
92 Chapter 1 Firewall
first, after restarting the device, the fiber-optic port will be activated and used to transfer data if it
is connected with cable. You can also select one of the two ports via CLI.
To select a copper or fiber-optic port, in the interface configuration mode, use the following com-
mand:
co mb o {co p p er-fo rced | co p p er-p referred | fib er-fo rced | fib er-p referred}
l fiber-preferred – Prioritizes the fiber-optic port. When this parameter is configured, the data
flow will switch from the copper port to the fiber-optic port automatically and there is no
need to restart device.
VSwitch interface is a Layer-3 interface. It is an assembly of all interfaces in the VSwitch. When
you create a VSwitch, its corresponding VSwitch interface is automatically created.
To create a VSwitch interface, in the global configuration mode, use the following command:
vswitch vswitch Number
l Number - Specifies a number as the identifier of the VSwitch and its interface. The value
range may vary from different platform models.
To clear the VSwitch and its corresponding interface, use the command no vswitch vswitchNum-
ber.
Chapter 1 Firewall 93
Configuring a VLAN Interface
VLAN interface is a Layer 3 interface. A VLAN has one corresponding VLAN interface. VLAN
interface allows Layer 3 communication among different VLANs.
To create a VLAN interface, in the global configuration mode, use the following command:
in terface vlan id
l id – Specifies the ID of the VLAN interface. If the specified VLAN interface does not exist,
this command creates a VLAN interface and leads you to its configuration mode. If the spe-
cified VLAN interface exists, you will enter its configuration mode directly.
To clear the specified VLAN interface, use the command no interface vlanid.
To create a super-VLAN interface, in the global configuration mode, use the following command:
in terface sup ervlan X
94 Chapter 1 Firewall
Configuring an Aggregate Interface
An aggregate interface is an assembly of two or more physical interfaces. The data flow passing
through the aggregate interface is shared equally by its physical interfaces. This method can
increase the usable bandwidth. If one of the interfaces fails to work, other interface(s) can take
over its data flow and process data, but bandwidth is reduced. The following sections introduce
basic configurations of aggregate interface.
To create an aggregate interface, in the global configuration mode, use the following command:
in terface aggregate Number
l Number - Specifies the ID of the aggregate interface. For different product models, the range
of Number is different. For example, the command interface aggregate2 creates an aggregate
interface named “aggregate2”.
This command leads you into the aggregate interface configuration mode. If the specified inter-
face exists, you will enter its configuration mode directly.
To delete an aggregate interface, in the global configuration mode, use the command
no interface aggregateNumber. Before deleting it, you must clear all the settings and zone ref-
erencing of the interface.
To create a sub-interface for an aggregate interface, in the global configuration mode, use the fol-
lowing command:
in terface aggregateNumb er .tag
l .tag – Specifies the ID of the sub-interface. The parameter is an integer number from 1 to
4094. For example, the command interface aggregate2.1 creates a sub-interface named aggreg-
ate2.1 for aggregate interface named aggregate2.
To delete an aggregate sub-interface, in the global configuration mode, use the command no inter-
face aggregateNumber.tag. Before deleting an interface, you should clear all settings of it, includ-
ing the binding and referencing with other interfaces and zones, etc.
Chapter 1 Firewall 95
Adding a Physical Interface
l aggregatenumber - Specifies the name of the aggregation interface to which the physical inter-
face is added. Ensure that the physical interface does not belong to any other interface or
zone.
To remove a physical interface from the aggregation interface, in the physical interface con-
figuration mode, use the command no aggregate.
Here is a configuration example. The goal is to create aggregation interface aggregate2, and add eth-
ernet0/3 and ethernet0/4 to the aggregate2, then delete ethernet0/3 from it.
Use the following commands:
hostname(config-if-agg2)# exit
hostname(config-if-eth0/3)# exit
hostname(config-if-eth0/4)# exit
hostname(config-if-eth0/3)# n o aggregate
96 Chapter 1 Firewall
Configuring a Redundant Interface
A redundant interface consists of two physical interfaces, one of which works as the primary inter-
face processing the traffic flow through the redundant interface, the other one stands by and sub-
stitutes the primary interface to process data flow when it fails to work.
To create a redundant interface, in the global configuration mode, use the following command:
in terface redun dan t Number
l Number - Specifies the ID of the redundant interface. For example, the command interface
redundant2 creates a redundant interface named redundant2.
This command takes you into the redundant interface configuration mode. If the specified inter-
face exists, you will directly enter its configuration mode.
To delete a redundant interface, in the global configuration mode, use the command no interface
redundant Number.
Before deleting it, you should clear all settings, including the binding and referencing with other
interfaces and zones, etc.
To create a sub-interface for an existing redundant interface, in the global configuration mode, use
the following command:
in terface redun dan t Numb er .tag
l .tag – Specifies the ID of the sub-interface. This parameter should be an integer from 1 to
4094. For example, the command interface redundant2.1 creates a sub-interface called redund-
ant2.1 for the redundant interface named redundant2.
To delete a redundant sub-interface, in the global configuration mode, use the command no inter-
face redundant Number .tag.
To add a physical interface to a redundant interface, in the physical interface configuration mode,
use the following command:
Chapter 1 Firewall 97
redun dan t interface-name
l interface-name – Specifies the name of the redundant interface to which the physical inter-
face is added. Make sure that the physical interface does not belong to any other interface or
zone.
To remove a physical interface from a redundant interface, use the command no redundant. If the
deleted interface serves as the primary interface, you need to clear the master interface setting
first.
To specify a physical interface in the redundant interface as the primary interface, in the redundant
interface configuration mode, use the following command:
p rimary interface-name
To cancel the primary interface, in the redundant interface configuration mode, use the command
no primary.
After an interface receives ARP packets, system will judge whether the source MAC address of
packets is consistent with the MAC address of the interface. If it’s consistent, system will form
a loop. If the alarm logs feature of ARP loops is enabled, the alarm logs of ARP loops will be gen-
erated frequently. You can enable or disable the alarm logs by the following commands.
By default, the alarm logs feature of ARP loops in the interface is enabled. To disable the feature
for the redundant interface, in the redundant interface configuration mode, use the following com-
mand:
arp-loop-alarm-disable
To restore default values, in the interface configuration mode, using the following command:
no arp-loop-alarm-disable
98 Chapter 1 Firewall
Example of Configuring a Redundant Interface
Here is a configuration example. The goal is to create a redundant interface named redundant1,
add the interface ethernet0/4 and interface ethernet0/5 to redundant1, and to make ethernet0/4
as the primary interface, then remove ethernet0/5 from redundant1.
Use the following commands:
hostname(config-if-red1)# exit
hostname(config-if-eth0/4)# exit
hostname(config-if-eth0/5)# exit
hostname(config-if-red1)# exit
Tunnel interface serves as the entrance of VPN tunnel and the VPN traffic goes through the tun-
nel interface. Tunnel interface is a Layer-3 interface.
To create a tunnel interface, in the global configuration mode, use the following command below:
in terface tun n el Number
Chapter 1 Firewall 99
l Number - Specifies the ID of the tunnel interface. For example, the command interface tun-
nel2 creates the tunnel interface named tunnel 2.
This command leads you to the tunnel interface configuration mode. If the tunnel interface of the
specified name exists, you will directly enter the tunnel interface configuration mode.
To delete a tunnel interface, use the command no interface tunnelNumber.
Binding a Tunnel
You can bind a tunnel interface to an IPsec VPN, GRE, SCVPN or L2TP tunnel. A tunnel inter-
face can be bound to multiple IPsec VPN or GRE tunnels, but only one SCVPN (or L2TP) tun-
nel.
To bind a tunnel to the tunnel interface, in the tunnel interface configuration mode, use the fol-
lowing command:
tunnel {ipsec [gw{ipv4-address | ipv6-address}] | gre tunnel-name [gw{ipv4-address | ipv6-
address | ipv4-address ipv6-address}] | scvpn vpn-name | l2tp tunnel-name }
l gw{ipv4-address | ipv6-address}– Specifies the next hop IP address of the tunnel interface,
which can be the IP address of the peer tunnel interface or the IP address of the egress inter-
face on the other end. This parameter is only valid for an interface which binds to multiple
IPsec VPN tunnels.
l scvpn vpn-name – Specifies the name of SCVPN tunnel bound to this interface. A tunnel
interface can be bound to only one SCVPN tunnel.
Repeat this command to bind more IPsec VPN tunnels or GRE tunnels.
To cancel the binding relationship, use the command no tunnel {ipsec vpn-name | gre tunnel-
name | scvpn vpn-name | l2tp tunnel-name }.
Multi-tunnel OSPF
In some site-to-site VPN connections, a tunnel interface binds with multiple tunnels. If OSPF
dynamic routing is used to manage data exchange among different sites, you need to enable point-
to-multipoint tunnel interface (the default tunnel interface is point-to-point network type).
To configure point-to-multipoint type, in the tunnel interface configuration mode, use the fol-
lowing command:
ip o sp f n etwo rk p o in t-to -multip o in t
In some cases, like when tunnel interface is used to forward packets which go through the device,
configuring an IP address is not required for that interface. In situation like that, you can use the
IP address borrowing feature (IP unnumbered) to borrow IP addresses from other interfaces.
To enable the IP address borrowing feature, in the tunnel interface configuration mode, use the
following command:
ip address un n umb er interface-name
l interface-name – Specifies the name of the interface from which the IP address is borrowed.
One physical interface can have multiple PPPoE sub-interfaces so that multiple ISPs can be
accessed through this one interface.
To create a PPPoE sub-interface, in the global configuration mode, use the following command:
in terface eth ern et X/Y -p p p o e Z
l ethernetX/Y – Specifies the name of the Ethernet port. For instance, ethernet0/5.
l -pppoeZ – Specifies the name of PPPoE sub-interface. Z indicates the ID of the PPPoE
sub-interface. The value range varies with platforms.
To clear a PPPoE sub-interface, in the global configuration mode, use the following command:
n o in terface eth ern et X/Y -p p p o e Z
Link Aggregation
Link aggregation combines multiple network connections in parallel to increase throughput bey-
ond what a single connection could sustain, and to provide redundancy in case one of the links
fails.
The device supports forced link aggregation and LACP (Link Aggregation Control Protocol). The
forced link aggregation is implemented by the aggregate interface. For more information, see Con-
figuring an Aggregate Interface. This section mainly describes the usage of LACP.
LACP (Link Aggregation Control Protocol) is designed to control the bundling of several physical
ports together to form a single logical channel. LACP allows a network device to negotiate an auto-
matic bundling of links by sending LACP packets to the peer (directly connected device that is
also enabled with LACP).
Hillstone devices use the aggregate interface to implement the LACP function. The aggregate
interface with LACP enabled is named as aggregate group, and the physical interfaces in the aggreg-
ate group is the member of the aggregate group. After enabling LACP on an aggregate interface,
the member interface sends the LACPDU packets to the peer to notify its system priority, system
MAC address, port priority, port number, and operating key. The peer receives the LACPDU and
compare the information with the local information to select a proper member interface, thus the
both sides can decide which link will be used to transfer data.
There are four statuses for the member interfaces in an aggregate group:
l Unselected: The interface is selected by the aggregate group and cannot forward traffic. This
status is usually caused by physical reasons, e.g., the interface mode is non-duplex, rates of
both sides are inconsistent, physical connection failure, etc.
l Selected: The interface is in aggregate group, but its peer is not ready, so the interface cannot
forward traffic. When it receives LACPDU packets from the peer, and learns the status of its
peer is Selected, the status of the interface will switch to Active. The interface in Active
status can forward traffic.
l Standby: The interface is a backup interface, and cannot forward traffic. If the LACP priority
of the interface is promoted, the interface will replace the existing Selected interface and
change its own status to Selected, and the status of the replaced interface will switch to
Standby. When other interfaces become Unselected, the Standby interface will change to
Selected interface automatically.
Configuring LACP
l Enabling/Disabling LACP
Enabling/Disabling LACP
LACP can be enabled on the aggregate interfaces (aggregate sub-interface, aggregate virtual for-
ward interface do not support LACP). To enable/disable LACP, in the aggregate interface con-
figuration mode, use the following commands:
LACP system priority is used to determine the priority between devices in both sides. The inter-
face with higher LACP system priority will be defined as the standard selected interface. The smal-
ler the number is, the higher the priority will be. If both sides have the same LACP system
l value – Specifies the LACP system priority. The value range is 1 to 32768. The default value
is 32768.
To restore to the default LACP system priority, in the aggregate interface configuration mode, use
the following command:
n o lacp system-p rio rity
Interface LACP priority determines the sequence of becoming the Selected status for the mem-
bers in the aggregate group. The smaller the number is, the higher the priority will be. Link in the
aggregate group that will be aggregated is determined by the interface LACP priority and the
LACP system priority.
To configure the interface LACP priority, in the configuration mode of the interface in the aggreg-
ate group, use the following command:
lacp p o rt-p rio rity value
l value – Specifies the interface LACP priority. The value range is 1 to 32768. The default
value is 32768.
To restore to the default interface LACP priority, in the configuration mode of the interface in the
aggregate group, use the following command:
n o lacp p o rt-p rio rity
The LACP timeout refers to the time interval for the members waiting to receive the LACPDU
packets. If the local member does not receive the LACPDU packet from its peer in three timeout
values, the peer will be conclude as down, and the status of the local member will change from
To restore to long timeout, in the configuration mode of the interface in the aggregate group, use
the following command:
n o lacp p erio d-sh o rt
The number of maximum active link refers to the maximum Active interface number. When the
Active interface number reaches the maximum number, status of other legal interfaces will
become Standby. For instance, there are 4 Active interfaces in the aggregate group. If the max-
imum active links is specified to 2, system will choose two interfaces as the Active interfaces
according to the priority, and the status of the other two interfaces with lower priority will
become Standby. When the Active interface down causes the link down, system will switch the
status of the Standby interface to Active, thus the LACP works as the redundant way.
To specify the maximum active links, in the aggregate interface configuration mode, use the fol-
lowing command:
lacp max-b un dle number
l number – Specifies the number of the maximum active links. The value range is 1 to 16. The
default value is 16.
To restore to the default maximum active link number, in the aggregate interface configuration
mode, use the following command:
n o lacp max-b un dle
The number of minimum active link refers to the minimum Active interface number. When the
number of Active interface is less than the minimum active link number in the aggregate group,
l number – Specifies the number of the minimum active links. The value range is 1 to 8. The
default value is 1.
To restore to the default minimum active link number, in the aggregate interface configuration
mode, use the following command:
n o lacp min -b un dle
You can specify the load balance mode for the aggregate group. System supports flow-based load
balance and 7-tuple based load balance. When the members of the aggregate group is Layer-2 inter-
faces, the system can only support the load balance mode based on the source MAC address and
destination MAC address. For instance, if the source IP is specified to be the load balance con-
dition, all the packets with the same source IP will be forwarded by the same interface in the
aggregate group. When the physical interfaces in the aggregation interface belong to different mod-
ules, the system supports the forwarding from the interface of the module where the packet is
sent.
To specify the load balance mode, in the aggregate interface configuration mode, use the fol-
lowing command:
lo ad-b alan ce mo de {flo w | tup le {dest-ip dest-mac dest-p o rt p ro to co l src-ip src-mac src-
p o rt}| adjacency-port }
l flow – Gets the load balance mode from the traffic. It is the default mode.
l tuple [dest-ip dest-mac dest-port protocol src-ip src-mac src-port] – Uses tuples as the load
balance condition. It can be one of the 5 tuples or the combination of the tuples.
To restore to the default load balance mode, in the aggregate interface configuration mode, use
the following command:
n o lo ad-b alan ce
You can view the LACP aggregate information in any CLI mode. To view the aggregate group
information, use the following command:
sh o w lacp aggregate-name
l aggregate-name – Specifies the name of the aggregate group you want to view.
Notes:
l Not all Hillstone platforms support bypass functionality.
Based on the connection mode of the Bypass module, it can be classified into built-in Bypass mod-
ule and external Bypass module. Built-in bypass modules are bundled with Hillstone products.
The built-in Bypass is classified into two types: the device interface support the Bypass function,
and the Bypass extension module.
l If the device interface supports the Bypass function, you only need to connect two inter-
connected Lans (such as LAN1 and LAN2) to one Bypass interface pair. For example, eth0/2
and eth0/3 are Bypass interface pairs. You only need to connect eth0/2 and eth0/3 to LAN1
and LAN2 respectively.
l For the Bypass extension module, install it into the expansion slot of the device according to
the installation manual. Then connect the two ports marked with NETWORK on the panel to
different LANs (as shown in Figure LAN1 and LAN2). Connect the two ports marked with
DEVICE on the panel to other ports on the device. For details, see the following figure. Solid
black lines indicate cable connection. ((As follows, take the IOC-A-2MM-BE/2SM-BE
Bypass extension as an example)
However, in particular situations like power failure or device rebooting, the device is
For external bypass modules, connect the AUX port of the security device to Console port of
Silicom bypass module with a cable. See the figure below for cable connection (black line) and
traffic flow directions.
As shown above, connect LAN1 and LAN2 to the bypass module and connect the module Con-
sole port to the device AUX port. When the network functions well, the two LANs can gain
access to each other through the device.
However, in particular situations like power failure or device rebooting, the device is bypassed
and LAN1 and LAN2 are physically connected through the bypass module.
l The heartbeat cable, a cable with RJ-45 connector on one end and RJ-11 on the other, which
is used to connect the device AUX port and bypass module Console port, is provided by
Silicom. Connect the RJ-45 end to the AUX port of device and RJ-11 end to the Console port
of bypass module.
If you choose to use external bypass module to bypass the device, you need to enable this feature,
which is off by default, when all connections are properly established.
To enable/disable external bypassing function, in the global configuration module, use the fol-
lowing commands:
To view the external bypass module working status, type, version, etc., in any mode, use the fol-
lowing command:
sh o w extern al-b yp ass
Here is an example:
===================================================-
================
external-bypass:enable
device status:present
current mode:normal
device info:BSFT,version 28
===================================================-
===============
Only A , K series firewalls or bypass module IOM-8MM-B-260 (for X 8180) support this func-
tions. When a device fails to forward network traffic normally in a certain state (such as system
restart, abnormal operation, device power off), the system will enter the Bypass state. In the
Bypass state, the interface pairs (for example, eth0/0 and eth0/1 are Bypass interface pair 0
defaultly, which is identified in the front panel.) are physically directly connected like a cable, and
traffic flows directly through them. Bypass interface pairs do not connect when the device is in
normal operation, but forward traffic normally according to the functions configured by the inter-
face.
Example for bypass interface pairs: E0/0 and E0/1 are Bypass interface pair 0 defaultly, which is
identified in the front panel. The IOM-8MM-B-260 module has 16 optical ports which can group
four Bypass pairs, including pair0 (port 0' and port 1'), pair1 (port 2' and port 3'), pair2 (port 4' and
port 5') and pair3 (port 6' and port 7').
Notes:
l You can not enable the forced bypass function and HA function at the same
time.
l When device restart and system configuration information not be loaded com-
pletely , the device is in Bypass mode and Bypass interface pairs may still for-
ward traffic to each other like a cable .
The IOM-8MM-B-260 module has four Bypass pairs which can monitor the interfaces on other
expansion modules separately. For example, port0 is connected to "interface1" on another expan-
sion module and port1 is connected to "interface2" on the module. Port0 and port1 will be con-
nected directly when system monitors "interface1" or "interface2" cannot work normally, which
means the firewall is bypassed.
1. In the global configuration mode, use the following command to enter the Bypass interface
pair mode:
bypass slot slot-id pair pair-id
2. In the Bypass interface pair mode, use the following command to enable or disable the mon-
itor function:
PoE
PoE (Power over Ethernet) is used to provide the power supply to the PD (powered device)
through the twisted pair cable and it facilitates the deployment of the low-power devices, such as
IP telephone, wireless AP, and IP camera. Only the Ethernet copper ports in the IOC-4GE-POE
module support the PoE function and partial product models support the IOC-4GE-POE mod-
ule.
By default, the PoE function is disabled. To enable the PoE function, in the interface con-
figuration mode, use the following command:
poe enable
To disable the PoE function, in the interface configuration mode, use the following command:
no poe enable
Hillstone device determines whether a powered device is connected to a port by using detection.
Different powered devices use different detection methods. You need to configure the detection
method according to the powered devices. Note that changing the detection method might lead
to the power supply interruption.
l dc – Use the DC detection, also called IEEE standard or 802.3af standard detection.
Use the following command to restore the detection method to the default one:
n o p o e disco n n ect
For different product models, the range of maximum power is different. To specify the maximum
power of power supply, in the interface configuration mode, use the following command:
p o e max-p o wer max-power
l max-power – Specify the maximum power of power supply assigned to the PoE Ethernet.
Use the following command to restore the value to the default one:
n o p o e max-p o wer
In any mode, use the following command to view the power supply status of the specified PoE
interface:
sh o w p o e in terface [in terface interface-name ]
l interface-name – View the power supply status of the specified PoE interface.
In any mode, use the following command to view the power information of PoE interfaces and
PoE module:
sh o w p o e p o wer-usage
In any mode, use the following command to view the information of the PoE module:
sh o w p o e device
Overview
In StoneOS, IP address is an important element for the configurations of multiple modules, such
as policy rules, NAT rules and session limit rules. Therefore, StoneOS supports address book to
facilitate IP address reference and flexible configuration. You can specify a name for an IP range,
and only reference the name during configuration. Address book is the database in StoneOS that
is used to store the mappings between IP ranges and the corresponding names. The mapping entry
between an IP address and its name in the address book is known as an address entry.
Address Entry
StoneOS provides a global address book. You need to specify an address entry for the global
address book. In an address entry, you can replace the IP range with a DNS name. You can use
them for NAT conveniently. Furthermore, an address entry also has the following features:
l All address books contain a default address entry named Any. The IP address of Any is
0.0.0.0/0, i.e., any IP address. Any can neither be edited nor deleted.
l One address entry can contain another address entry in the address book.
l If the IP range of an address entry changes, StoneOS will update other modules that reference
the address entry automatically.
To add an address entry to the address book and enter the address configuration mode, in the
global configuration mode, use the following command:
address address-entry [ ip v6]
l address-entry - Specifies the name of the address entry that will be added.
l ipv6 - Specifies the address entry as the type of IPv6. If not specified ,it will be the type of
IPv4.
To delete the specified address entry from the address book, in the global configuration mode,
use the following command:
n o address address-entry
Notes: The address entry being referenced by other modules or address entries can
not be deleted.
In StoneOS, the IP range of an address entry is the collection of all the IP members within the
range. The members of the address entry consist of the following types:
l IP address: includes two types. One is IPv4 address/subnet mask or IPv6 address/subnet
mask, such as 10.100.2.0/24 or 2001::1/64; the other is IPv4 address with a wildcard mask
or IPv6 address with a wildcard mask, such as 192.168.0.1 255.255.0.255 or 2001::10
FF00::FFFF.
l Host name, such as host1.hillstonenet.com. Support the host name which contains the wild-
card, such as *.baidu.com.
To add an IP member to the specified address entry, or delete the specified member from the
address entry, in the address configuration mode, use the commands with the keywords ip or wild-
card.
To add/delete an IP address member of IPv4 address/subnet mask or IPv4 address with a wild-
card mask, use the following comands:
l netmask | wildcardmask – Specifies the subnet wildcard mask. StoneOS does not sup-
port the wildcard mask which has more than 8 zeros (consecutive or non-consecutive)
before the first 1 from the right side of its binary form. For example, 255.0.0.255 is an
invalid wildcard mask, while 255.0.255.0 and 255.32.255.0 are valid wildcard masks.
l ip-address wildcardmask – Specifies the IPv4 address (ip-address) and wildcard mask
(wildcardmask ) of the IP member. StoneOS does not support the wildcard mask which
has more than 8 zeros (consecutive or non-consecutive) before the first 1 from the
right side of its binary form. For example, 255.0.0.255 is an invalid wildcard mask,
while 255.0.255.0 and 255.32.255.0 are valid wildcard masks.
To add/delete an IP address member of IPv6 address/subnet mask or IPv6 address with a wild-
card mask, use the following commands:
l ipv6-prefix/prefix-length– Specifies the IPv6 address prefix and prefix length of the
IP member. The value range of the prefix length is 0 to 128.
l no ip ipv6-prefix/prefix-length
To add a host member to an address entry or delete the specified member, in the address con-
figuration mode, use the following commands:
l host-name – Specifies the host name. Support the host name which contains the wild-
card.You can specify up to 255 characters.
To add an IP range member to an address entry, or delete the specified member from the address
entry, in the address configuration mode, use the following commands:
l country country-name
l no country country-name
You can press the Tab key after the country keyword to see the available values of the country-
name parameter.
To add another address entry to an address entry, or delete the specified address entry from the
address entry, in the address configuration mode, use the following commands:
l member address-entry
l no member address-entry
Notes:
l The country or region member is supported in the address entry of the IPv4
type.
l Only the security policy and the policy-based route support the address entry
with the country or region member added.
l The address entry with the country or region member added does not support
the exclude range min-ip max-ip settings in Excluding Address Entries.
Both IPv4 and IPv6 address entries are supported in address books. By configuring the excluded
entries, you can rule out IPv4 or IPv6 addresses from an address book. The types of address
entries that can be excluded are the following two types:
l IP address: IPv4 type: both IP/netmask (e.g. 10.100.2.0/24) and IP/wildcard netmask
(192.168.0.1 255.255.0.255) can be excluded; IPv6 type, like 2001::1/64, is also supported.
Notes: The maximum percentage of excluded members is 10% of the total number
in this address book.
To exclude an IPv4 address entry, under address book configuration mode, use the following com-
mand:
exclude ip ip-address { netmask | wildcardmask }
To resume an IPv4 address entry, use the command no exclude ip ip-address {netmask | wild-
cardmask }.
To resume an exclude address range, use the command no exclude range min-ip max-ip.
To exclude IPv6 address entries from an address book, under this address book’s conifugraiton
mode, use the following command:
exclude ip ipv6-prefix / prefix-length
l ipv6-prefix / prefix-length – Specify the IPv6 prefix and its length. The range is 65 to 128.
To resume an excluded IPv6 address entry, use the command no exclude ip ipv6-prefix / prefix-
length.
To exclude IPv6 range address entry from an address book, under address book configuration
mode, use the following command:
exclude ran ge min-ipv6-address max-ipv6-address
To resume an excluded IP range back to address book, use the command no exclude range min-
ipv6-address max-ipv6-address.
To rename an existing address entry, in the address configuration mode, use the following com-
mand:
rename name
In StoneOS, an address entry can be referenced by other modules, such as policy rules, NAT rules
or session limit rules. To view the reference of an address entry by other modules, i.e., the ref-
erence address of the address entry, in any mode, use the following command:
sh o w referen ce address address-entry
Example:
===================================================-
==
To view the details of the global address book, including the entries of the address book, number
of the members, and detailed information of the members, and the address entries that are not ref-
erenced by other function modules, in any mode, use the following command:
sh o w address [filter-ip A.B.C.D [ filter-unreferenced ]] | [ address-entry ] | [ filter-unrefer-
enced ]
l show address - Shows the information of all the address entries in the address book.
l filter-ip A.B.C.D - Shows the information of address entries that contain the specified IP
address.
l filter-unreferenced - Shows the information of the address entries that are not referenced by
other function modules.
To check where the IP address is from, in any mode, use the following command:
sh o w co un try ip A.B.C.D
l A.B.C.D – Enter the IP address to check which country or region this IP address belongs
to.
Configuration Example 1
The goal is to create address entries named address1 and address2 for the address book; add the
following members to address1: 10.200.1.0/16, 192.168.1.0/24, 192.168.0.1/255.255.0.255 and
hillstonenet.com; add the following members to address2: 10.100.3.1 to 10.100.3.10 and
address1. Use the following commands:
hostname(config-addr)# ip 10.200.1.0/16
hostname(config-addr)# exit
hostname(config-addr)# exit
hostname(config)#
Configuration Example 2
Users can configure the host name which contains the wildcard in address book. To specify a host
name as *.baidu.com, use the following commands:
l Service
l Application
Service Overview
Service is information stream designed with protocol standards. Service has some specific fea-
tures, like corresponding protocol, port number, etc. For example, the FTP service uses TCP pro-
tocol, and its port number is 21. Service is an essential element for the configuration of multiple
StoneOS modules including policy rules, NAT rules, etc. StoneOS ships with over 100 pre-
defined services and over 10 service groups. Besides, you can also customize user-defined ser-
vices and service groups as needed. All these services and service groups are stored in and
managed by StoneOS service book. Each service in the service book contains its specific service
entry.
To view service information, in any mode, including the service type, name, protocol, destination
port, source port, and the service entries that are not referenced by other function modules, in any
mode, use the following command:
sh o w service { predefined | userdefin ed | n ame service-name } | [ unreferenced ]
l unreferenced - Shows the information of the service entries that are not referenced by other
function modules.
show service protocol {tcp | udp} [dst-port {port-number | range min-port max-port}] [src-port
{port-number | range min-port max-port}]
l dst-port {port-number | range min-port max-port}– Shows the service information of the
specified destination port. port-numberis a single destination port number. If the destination
port number is in a range, min-port is the minimum destination port number, max-port is the
maximum destination port number, and the range is 0 to 65535.
l src-port {port-number | range min-port max-port}- Shows the service information of the spe-
cified source port. port-numberis a single source port number. If the source port number is in
a range, min-port is the minimum source port number, max-port is the maximum source port
number, and the range is 0 to 65535.
show service protocol {icmp | icmpv6} [type type-number [code {code-number | range min-
code max-code}]]
l icmp | icmpv6 – Shows the service information with the protocol type of ICMP or
ICMPv6.
l type type-number – Shows the service information with the specified ICMP type or ICMPv6
type.
l [code {code-number | range min-code max-code}] - Shows the service information of the
policy rule with the specified ICMP code or ICMPv6 code. code-numberis a single code. If
the code is in a range, min-codeis the minimum code, max- codeis the maximum code. The
code value of ICMP Protocol type ranges from 0 to 15, and that of ICMPv6 protocol type
ranges from 0 to 255.
l protocol-number – Shows the service information with the specified protocol number. The
protocol number is from 1 to 255.
To view service group information, including predefined service groups, user-defined service
groups, and the service group entries that are not referenced by other function modules, in any
mode, use the following command:
l unreferenced - Shows the information of the service group entries that are not referenced by
other function modules.
In StoneOS, a service can be referenced by other modules, such as policy rules, NAT rules or ses-
sion limit rules. To view the reference of a service or service group by other modules, i.e., the ser-
vice or service group address, in any mode, use the following command:
sh o w referen ce service service-name
Example:
===================================================-
==
Predefined Services
StoneOS provides more than 100 predefined services. To view all the predefined services sup-
ported by the current version, use the above show command or WebUI.
The following section describes several common predefined services.
RSH
RSH ALG (Remote Shell) allows authenticated users to run shell command on the remote host.
Hillstone device supports RSH services of transparent mode, NAT mode and router mode.
Sun RPC
Sun RPC (Sun Remote Procedure Call) allows the program running on a host to call the programs
running on other hosts. Because of the large number of RPC services and the requirement for
broadcasting, RPC services’ transmission addresses are dynamically negotiated based on the num-
ber and version of the services. You can define some binding protocols to map the number of
RPC programs and service versions to the transmission addresses.
Hillstone devices support a predefined Sun RPC service for users to permit or deny traffic accord-
ing to policies configured. You can define a policy rule to permit or deny all the RPC requests.
For example, if you need to use the network file system (NFS), then configure a policy rule that
allows Sun RPC services.
Microsoft Remote Procedure Call (MS RPC) is the RPC implementation of the Microsoft dis-
tributed computing environment. MS RPC allows the program running on a host to call programs
running on other hosts. Because of the large number of RPC services and the requirement for
broadcasting, RPC services’ transmission addresses are dynamically negotiated based on the
UUID (Universal Unique Identifier) of the server.
Hillstone devices support a predefined MS RPC service for users to permit or deny traffic accord-
ing to policies configured. You can define a policy rule to permit or deny all the RPC requests.
For example, if you need to use the Outlook/Exchange or MSqueue service, configure a policy
rule that allows MS RPC services.
The predefined service group includes some associated predefined services to facilitate users’
configuration. StoneOS provides more than 10 predefined service groups. The service group that
contains dynamically identified predefined services is known as a dynamically identified pre-
defined service group, and such a service group needs to be configured individually. When the
dynamically identified predefined services are updated by the signature database, the cor-
responding dynamically identified predefined service group will also be updated. You can view
and use the predefined service groups, but cannot edit or delete them.
To view the predefined service group, in any mode, use the following command:
sh o w servgro up p redefin ed
User-defined Service
Besides the above predefined services, you can also create your own user-defined services. A
user-defined service can include up to eight service entries. The parameters that you can specify
for the user-defined service entries are:
l Name
l Protocol type
l Timeout
l Application type
To create a service and add it to the service book via CLI, or to delete the specified service, in
the global configuration mode, use the following commands:
service service-name
n o service service-name
l service-name – Specifies the name of the user-defined service. The length is 1 to 31 char-
acters. The name must be unique in the entire system. After executing the command, the CLI
will enter the configuration mode of created service.
If you need to enable the long connection, in the global mode, use the longlife-sess-percent com-
mand to configure the percent of long connection. The default value is 0.
Each user-defined service can contain up to 8 service entries. The command that is used to add a
service entry may vary from different protocol types of the service entries.
To add a service entry of TCP or UDP type, in the service configuration mode, use the following
command:
{tcp | udp } dst-p o rt min-port [ max-port ] [src-p o rt min-port [ max-port ]] [timeo ut time-out-
value | timeo ut-day time-out-value ]
l dst-port min-port [max-port] – Specifies the destination port number of the user-defined ser-
vice. If the destination port number is a number range, then min-port is the minimum des-
tination port number, and max-port is the maximum destination port number. The value range
l src-port min-port [max-port] – Specifies the source port number of the user-defined service.
If the source port number is a number range, then min-port is the minimum source port num-
ber, and max-port is the maximum source port number. The value range is 0 to 65535.
l timeout time-out-value – Specify the timeout value. The unit is second. The value varies
from 1 to 65525. The connection will disconnect after the timeout.
l timeout-day time-out-value – Specify the timeout value of the persistent connection. The
unit is day. The value varies from 1 to 1000. The connection will disconnect after the
timeout. You need to set the persistent connection percent before configuring the timeout
value of the persistent connection in the global mode.
To add a service entry of ICMP type, in the service configuration mode, use the following com-
mand:
icmp typ e type-value [co de min-code [ max-code ]] [timeo ut time-out-value | timeo ut-day time-
out-value ]
l type-value – Specifies the ICMP type value of the user-defined service. The value range is 3
(Destination-Unreachable), 4 (Source Quench), 5 (Redirect), 8 (Echo), 11 (Time Exceeded),
12 (Parameter Problem), 13 (Timestamp), 15 (Information) and any (all the above type val-
ues).
l code min-code [max-code] – Specifies the ICMP code value for the user-defined service.
The value range is 0 to 5.
l timeout time-out-value – Specify the timeout value. The unit is second. The value varies
from 1 to 65525. The connection will disconnect after the timeout.
l timeout-day time-out-value – Specify the timeout value of the persistent connection. The
unit is day. The value varies from 1 to 1000. The connection will disconnect after the
To add a service entry of other types, in the service configuration mode, use the following com-
mand:
p ro to co l protocol-number [timeo ut time-out-value | timeo ut-day time-out-value ]
l protocol-number – Specifies the protocol number of the user-defined service. The value
range is 1 to 255.
l timeout time-out-value – Specify the timeout value. The unit is second. The value varies
from 1 to 65525. The connection will disconnect after the timeout.
l timeout-day time-out-value – Specify the timeout value of the persistent connection. The
unit is day. The value varies from 1 to 1000. The connection will disconnect after the
timeout. You need to set the persistent connection percent before configuring the timeout
value of the persistent connection in the global mode.
To delete the specified service entry, use one of the following commands. The service entries can
only be deleted but cannot be edited.
l no protocol protocol-number
To rename an existing user-defined service entry, in the service configuration mode, use the fol-
lowing command:
rename new-name
l new-name – Specifies the new name for the user-defined service entry.
You can also rename the user-defined service entry in the global configuration mode, use the fol-
lowing command:
l old-name – Specifies the old name for the user-defined service entry.
l new-name – Specifies the new name for the user-defined service entry.
Configuration Example
The goal is to create a user-defined service named my-service, and add the following 3 service
entries to my-service:
l A service of TCP type, the destination port is 2121, and the source port is 80.
hostname(config-service)# p ro to co l 47
hostname(config-service)# exit
hostname(config)#
Service Group
You can organize some services together to form a service group, and apply the service group to
StoneOS policies directly. The service group of StoneOS has the following features:
l Each service of the service book can be used by one or more service groups.
l A service group can contain both predefined services and user-defined services.
l A service group can contain another service group. The service group of StoneOS supports up
to 8 layers of nests.
l Service and service group should not use the same name.
l The service group being used by any policy cannot be deleted. To delete such a service group,
you must first end its association with other modules.
l If a user-defined service is deleted from the service group, the service will also be deleted
from all the service groups using it.
To create a service group and add the service group to the service book via CLI, in the global con-
figuration mode, use the following command:
servgro up servicegroup-name
After executing this command, the CLI will enter the service group configuration mode.
To delete a service group, in the global configuration mode, use the following command:
n o servgro up servicegroup-name
The member of the service group can be either a service or a service group. To add a service to
the service group or delete a service from the service group, in the service group configuration
mode, use the following commands:
service { service-name | servicegroup-name }
When adding a service or service group to the service group, note that:
l Each service group can contain up to 64 services; one service group supports up to 8 layers of
nests of another service group.
To rename an existing service group, in the service group configuration mode, use the following
command:
renamenew-name
You can also rename the service group in the global configuration mode, use the following com-
mand:
rename servgroup old-name new-name
Application Overview
Application has some specific features, like corresponding protocol, port number, application
type, etc. Application is an essential element for the configuration of multiple StoneOS modules
including policy rules, NAT rules, application QoS management, etc. StoneOS ships with over
Predefined Application
StoneOS provides more than 100 predefined applications. You can view all the supported pre-
defined applications by using the show application predefined command.
The predefined application group includes some associated predefined applications to facilitate
users’ configuration. Upgrading the signature database will dynamically identify the predefined
applications. Currently, StoneOS provides more than 20 predefined application groups. You can
view and use the predefined application groups, but cannot delete or edit them.
Tip: For more information about upgrading signature database and dynamical iden-
tification, see Application Identification.
Userdefined Application
Besides the above predefined applications, you can also create your own user-defined applic-
ations. By configuring the customized application signature rules, StoneOS can identify and man-
age the traffic that crosses into the device, thus identifying the type of the traffic.
Configurations of user-defined application groups include the following items:
To create a user-defined application and add this newly-created one to the application book, use
the following command in the global configuration mode:
ap p licatio n application-name
After executing this command, the system enters the application configuration mode.
To delete the user-defined application, use the following command:
n o ap p licatio n application-name
The categories and subcategories of applications are maintained by the application signature data-
base. The category corresponds to the application group of level 1 in the signature database and
the subcategory corresponds to the application group of level 2 under level 1. When you con-
figure the category and subcategory of user-defined applications in the CLI, the system lists all
supported categories. The following table describes the supported categories and subcategories. If
any update occurs, the new table prevails. By default, user-defined applications are not configured
with a category.
Category Subcategory
APP_BUSINESS APP_BUSINESS_ERP
APP_EMAIL
APP_BUSINESS_DATABASE
APP_INDUSTRY
APP_MEDICAL
APP_IOT
APP_COMMUNICATION APP_IM
APP_MOBILE_IM
APP_VOIP
APP_GAME APP_PUZZLE_GAME
APP_MMO_GAME
APP_MOBILE_GAME
APP_INTERNET APP_SPEEDTEST
APP_REMOTE_DESKTOP
APP_GENERAL
APP_P2P
APP_INTERNET_UTILITY
APP_MOBILE_INTERNET_UTILITY
APP_FILE_SHARING
APP_SOCIAL_NETWORK
APP_MOBILE_SOCIAL_NETWORK
APP_PROXY
APP_SECURITY
APP_STOCK
APP_SHOPPING_PLATFORM
APP_MOBILE_SHOPPING_PLATFORM
APP_LIVING_SERVICE
APP_MOBILE_LIVING_SERVICE
APP_NEWS_READING
APP_MOBILE_NEWS_READING
APP_EBANK
APP_MEDIA APP_VIDEO_SURVEILLANCE
APP_MULTIMEDIA
APP_P2P_STREAM
APP_WEB_VIDEO
APP_MOBILE_WEB_VIDEO
APP_ONLINE_MUSIC
APP_MOBILE_ONLINE_MUSIC
APP_NETWORK APP_DIRECTORY_SERVICE
APP_VPN
APP_ROUTING_PROTOCOL
APP_NETWORK_MGMT
APP_COMMON_PROTOCOL
APP_OTHER_CATEGORY APP_DATA_TRANSFER
APP_ONLINE_INTERACTIVE
To configure the category and subcategory of user-defined applications, use the following com-
mand in application configuration mode:
category category-name [subcategory sub-category-name]
l category-name - Specifies the category name of applications. Valid values of the category are
the application group of level 1 in the application signature database.
l sub-category-name - Specifies the subcategory name of applications. Valid values of the sub-
category are the application group of level 2 under level 1 specifies by category-name.
To delete the category and subcategory configuration of user-defined applications, use the fol-
lowing command in global configuration mode:
no category
The technologies used by applications are maintained by the application signature database. You
can configure one of the following technologies for applications. If any update occurs, the new
technologies prevails. By default, user-defined applications are not configured with a technology.
To configure the technology used by user-defined applications, use the following command in
application configuration mode:
To delete the configuration of technology used by user-defined applications, use the following
command in application configuration mode:
no technology
The signatures of applications are maintained by the application signature database. You can con-
figure one or more of the following signatures for user-defined applications. If any update occurs,
the new signatures prevails. By default, user-defined applications are not configured with a sig-
nature.
To configure signatures for user-defined applications, use the following command in application
configuration mode:
l used-by-malware {yes | no}: Sets the signature of applications to used by malware or not
used by malware.
l prone-to-misuse {yes | no}: Sets the signature of applications to prone to misuse or not
prone to misuse.
l widely-used {yes | no}: Sets the signature of applications to widely used or not widely used.
l file-transfer {yes | no}: Sets the signature of applications to be able to transfer files or not be
able to transfer files.
l tunnels-other-apps {yes | no}: Sets the signature of applications to be used by other applic-
ations or not be used by other applications.
To view the configuration of a specified user-defined application, use the following command in
any mode:
show application userdefined [application-name]
To view the configuration of all user-defined applications, use the following command in any
mode:
show application userdefined
To enable the user-defined application signature configuration mode, use the following command
in the global configuration mode:
ap p -sign ature
System supports create an user-defined application signature rule in two configuration mode:
l dst-port min-port [max-port] – Specify the destination port number of the user-defined
application signature. If the destination port number is within a range, StoneOS will identify
the value of min-port as the minimum port number and identify the value of max-port as the
maximum port number. The range of destination port number is 0 to 66535. The port number
cannot be 0. For example, the destination port number is in the range of 0 to 20, but it cannot
be 0.
l src-port min-port [max-port] – Specify the source port number of the user-defined applic-
ation signature. If the source port number is within a range, StoneOS will identify the value of
min-port as the minimum port number and identify the value of max-portas the maximum port
number. The range of source port number is 0 to 66535.
In the user-defined application signature configuration mode, use the following command to cre-
ate a user-defined application signature rule and enter the application signature rule configuration
mode. If the specified ID already exists, the system will enter the application signature rule con-
figuration mode.
sign ature id id
To delete this user-defined application signature rule, use the following command in the user-
defined application configuration mode:
n o sign ature id id
A user-defined application signature rule can contain multiple signature rule entries. The logical
relationship between each entry is AND. AND represents that StoneOS can identify the traffic
type when the traffic satisfies all entries in this user-defined application signature rule.
Configuring the entry of the user-defined application signature rule includes the following sec-
tions:
l Source/destination IP address
l Source/destination port number of applications of TCP type or UDP type; The type value and
the code value of applications of ICMP type
l Application name
To specify the source security zone of the signature rule, use the following command in the applic-
ation signature rule configuration mode:
src-zo n e zone-name
To specify the source address of the address entry type, use the following command in the applic-
ation signature rule configuration mode:
To specify the source address of the member IP type, use the following command in the applic-
ation signature rule configuration mode:
src-ip src-ip
To specify the destination address of the address entry type, use the following command in the
application signature rule configuration mode:
dst-addr dst-addr
To specify the destination address of the member IP type, use the following command in the
application signature rule configuration mode:
dst-ip dst-ip
For the application signature of TCP type or UDP type, specify the type and corresponding para-
meters using the following command in the application signature rule configuration mode:
p ro to co l {tcp | udp } dst-p o rt min-port [ max-port ] [src-p o rt min-port [ max-port ]]
l dst-port min-port [max-port] – Specify the destination port number of the user-defined
application signature. If the destination port number is within a range, StoneOS will identify
the value of min-port as the minimum port number and identify the value of max-port as the
maximum port number. The range of destination port number is 0 to 66535. The port number
cannot be 0. For example, the destination port number is in the range of 0 to 20, but it cannot
be 0.
l src-port min-port [max-port] – Specify the source port number of the user-defined applic-
ation signature. If the source port number is within a range, StoneOS will identify the value of
For the application signature of ICMP type, specify the type and corresponding parameters using
the following command in the application signature rule configuration mode:
p ro to co l icmp typ e type-value [co de min-code [ max-code ]]
l type-value – Specifies the value of the ICMP type of the application signature. The options
are as follows: 3 (Destination-Unreachable), 4 (Source Quench), 5 (Redirect), 8 (Echo), 11
(Time Exceeded), 12 (Parameter Problem), 13 (Timestamp), 15 (Information), and any (any
represents all above values).
l code min-code [max-code] – Specifies the value of the ICMP code of the application sig-
nature. The ICMP code is in the range of 0 to 5. The default value is 0-5.
For the application signature of other types, use the following command in the application sig-
nature rule configuration mode:
protocol other-protocol protocol-number
l protocol-number – Specifies the protocol number of the application signature. The protocol
number is in the range of 1 to 255.
To specify the application name of the signature rule, use the following command in the applic-
ation signature rule configuration mode :
ap p licatio n application-name
To delete the signature rule, use the no form of the above commands. For the existing signature
rules, you cannot edit them but can delete them.
You can configure the application timeout value. If not, StoneOS will use the default value of the
protocol. To configure it, use the following command in the application configuration mode:
timeo ut {tcp | udp | icmp | o th er-p ro to co l} timeout-value
l tiemout-value – Specifies the timeout value of the application. The range is 1 to 65535.
To specify the timeout period in days, use the following command in application configuration
mode:
timeout-day {tcp | udp | icmp | other-protocol} timeout-value
l tiemout-value – Specifies the timeout value of the application. The range is 1 to 1000.
Each user-defined application signature rule has a unique ID. When traffic flows into the device,
StoneOS will search the user-defined application signature rule in the order of priority to see
which signature rule matches the traffic. Once the traffic satisfies a specific application signature
rule, StoneOS will process the traffic according to this matched rule. The order of searching sig-
nature rule is not related to the order of the signature ID but the order of priority. To view the
order of priority, use the show app-signature static command. And then StoneOS will list all
application signatures according to the priority. The signature rule with the highest priority will be
listed at the top and the signature rule with the lowest priority will be listed at the bottom. When
you create a signature rule, you can specify its priority. And you can also modify its priority in the
user-defined application signature configuration mode. You can adjust the priority of the signature
rule to be at the top or at the bottom or between two signature rules. To modify the priority, use
the following command in the user-defined application signature configuration mode:
move id {to p | b o tto m | b efo re id | after id }
An application group contains multiple applications. You can apply the application group to the
policy. An application group has the following features:
l Each application in the application book can be used in one or more application groups.
l Each application group can contain predefined applications and user-defined applications.
l The application group referenced by the policy cannot be deleted. To delete an application
group, make sure that no module references this application group.
l When you delete an application from the application book, this application will also be deleted
from the application groups that contain this application group.
To create an application group and add it to the application book, use the following command in
the global configuration mode:
ap p licatio n -gro up application-group-name
After executing this command, the system enters the application group configuration mode.
To delete an application group, use the following command in the global configuration mode:
n o ap p licatio n -gro up application-group-name
l Each application group can contain up to 64 applications and support up to 8-level nested
application groups.
To delete an application or application group from an application group, use the following com-
mand in the application group configuration mode:
n o ap p licatio n { application-name | application-group-name }
In the application configuration mode or the application group configuration mode, you can use
the following command to add the description:
descrip tio n description
l description – Specify the description for the application or application group. You can enter
up to 255 characters.
In the application configuration mode or the application group configuration mode, use the fol-
lowing command to delete the corresponding description:
n o descrip tio n
Application Identification
A number of functional modules in the system process data stream based on the type of applic-
ation (to view the mapping relationship between Application IDS and Application names, use the
command show application list), for example, stat-set and QoS. Therefore, system needs to
identify the data stream first, and then implements the statistics and management functions based
on the identification result (Application ID) and configuration.
Dynamic Identification
Dynamic identification allows the system to identify an application automatically by its signature.
The automatic identification of application is based on the security zone. By default, the auto-
matic identification function of all the security zones is disabled. To enable the dynamic
With dynamic identification enabled, the system will identify all the supported dynamically iden-
tified application. To view the identified session information, use the command show session. To
disable the dynamic identification functions of a security zone, in the security zone configuration
mode, use the following command:
n o ap p licatio n -iden tify
Even if the automatic identification function of a security zone is disabled, the system can still
identify some specific applications if being configured with appropriate policy rules. For example,
to identify QQ, configure the following two rules (take policy rules from the zone untrust to the
zone trust as the example):
hostname(config)# p o licy-glo b al
Rule id 5 is created
Rule id 6 is created
hostname(config-policy)# exit
hostname(config)#
SIP is an application layer protocol that is typically used to set up, connect and disconnect mul-
timedia sessions, such as Internet phone calls. SIP Protocol can deliver multimedia session data,
such as voice, video, or text. When the result of application identification is SIP, the system can
further identify whether the packets use GB/T 28181 or GB/T 35114.
To enable/disable SIP Deep Identification, in the global mode, use the following commands:
To view the status of SIP Deep Identification, in the global mode, use the following command:
show app deep-identify status
When a large number of newly created sessions occur in the device, it will consume a large
amount of the device CPU to perform application identification for all new sessions. After the
application identification bypass function is configured, the device, with a certain probability, only
performs service identification and cache table identification for the new sessions but not further
identification. Therefore, the CPU usage of the device is controlled, and other functional modules
are not influenced. By default, this function is disabled.
You can configure the CPU usage range according to your own needs. According to the con-
figured CPU range and the current CPU usage, the device processes newly created sessions in dif-
ferent ways. If the current CPU usage is lower than the configured minimum CPU usage, the
device performs application identification for all newly created sessions. If the current CPU usage
is higher than the minimum CPU usage but lower than the configured maximum CPU usage, the
device performs application identification for the newly created sessions in a certain probability.
The probability is approximately equal to (current CPU usage - minimum CPU usage)/(maximum
CPU usage - minimum CPU usage). If the current CPU usage is higher than the maximum CPU
usage, the device only performs service identification and cache table identification for all newly
created sessions.
To enable/disable application identification bypass, in the global configuration mode, use the fol-
lowing commands:
To configure the CPU usage range, in the global configuration mode, use the following com-
mands:
app-ident-bypass-threshold start_value end_value
l start_value–Specifies the minimum CPU usage. The value range is 0 to 100. The default
value is 60. The unit is %.
l end_value–Specifies the maximum CPU usage. The value range is 0 to 100. The default
value is 80. The unit is %.
To view the status of the application identification bypass and the configured CPU usage range, in
the global configuration mode, use the show app-ident-bypass command.
Application identification cache table can store application information to provide support for
application identification and PBR. The system supports dynamic and static application iden-
tification cache tables.
l Dynamic application identification cache table: stores application information that is dynam-
ically learned (the result of dynamic application identification).
l Static application identification cache table: stores static application information. This table is
included in the application signature database.
You can configure application cache tables as needed for different scenarios.
Both the dynamic and static application identification cache tables are enabled by default. If the
dynamic application identification cache table is disabled, the system will still write entries to the
table, but will not identify any application based on the entries in the table. The static application
identification cache table will not take effect unless the dynamic application identification cache
table is enabled, i.e., disabling the dynamic application identification cache table will also disable
the static application identification cache table.
To disable/enable the dynamic application identification cache table, in the global configuration
mode, use the following commands:
To disable/enable the static application identification cache table, in the global configuration
mode, use the following commands:
Specifying a Working Mode for the Dynamic Application Identification Cache Table
To specify a working mode for the dynamic application identification cache table, in the global
configuration mode, use the following command:
ap p cach e {cach e-strict | resp o n se-ch eck | p b r-ch eck-strict}
l cache-strict – Applicable for SNAT scenarios (Intranet users visit Internet via NAT
devices). In such a scenario, enabling this option can effectively evade false positive. This
option is disabled by default.
To cancel the above configuration, in the global configuration mode, use the following command:
n o ap p cach e {cach e-strict | resp o n se-ch eck | p b r-ch eck-strict}
To clear all the entries in the dynamic application identification cache table, in any mode, use the
following command:
clear ap p cach e tab le
To clear all the entries in the static application identification cache table, in any mode, use the fol-
lowing command:
clear ap p cach e tab le static
To view if the dynamic or static application identification cache table is enabled and related con-
figuration information, in any mode, use the command show app cache status.
Applications are updated frequently. Hillstone devices allow you to update the application sig-
nature database to assure the devices can adapt to these changes in time and identify the latest soft-
ware version. You can download the latest signature file and upload to the device. Hillstone
regularly uploads new signature files on the Hillstone website. You need to download the files,
and then upload them to the device.
To upload the signature file via CLI, in the execution mode, use the following command:
l user user-name password password – Specifies the username and password of the FTP
server.
l file-name – Specifies the name of the signature file that will be uploaded.
After uploading the signature file, restart the device if new application is added; do not restart if
there is no new application and only existing applications are updated.
The system supports to update the signature database through HTTP and HTTPS, and the default
protocol is HTTPS. To configuring the update protocol as HTTP, in the global configuration
mode, use the following command:
app update protocol HTTP
In the global configuration mode, use the command no app update protocol HTTP to restore the
default value.
When the device accesses the Internet through a HTTP proxy server, you need to specify the IP
address and the port number of the HTTP proxy server. With the HTTP proxy server specified,
various signature database can update automatically and normally.
To specify the HTTP proxy server for the application signature database updating, use the fol-
lowing command in the global configuration mode:
ap p up date p ro xy-server {main | b ackup } ip-address port-number
l main | backup – Use the main parameter to specify the main proxy server and use the
backup parameter to specify the backup proxy server.
l ip-address port-number – Specify the IP address and the port number of the proxy server.
By default, system automatically updates the application identification database every day. To
reduce the update server's workload, the time of daily update is random. To specify the schedule
and specific time for the update, in the global configuration mode, use the following command:
ap p up date sch edule {daily | weekly {mo n | tue | wed | th u | fri | sat | sun } | mo n th ly
date } [ HH:MM ]
l weekly {mon | tue | wed | thu | fri | sat | sun} – Updates the database every week. Para-
meter mon | tue | wed | thu | fri | sat | sun is used to specify the specific date in a week.
l monthly date - Updates the database every month. Parameter date is used to specify the spe-
cific date in a month., the range is 1 to 31. If a month does not contain the specified date (eg,
there is no 30th in February), the database will not be automatically updated this month.
Application Filter Group allows you to create a gourp to filter applications according to applic-
ation category, sub-category, technology, risk, and attributes.
Configure the application filter group as follows:
To create an application filter group, in the global configuration mode, use the following com-
mands:
ap p licatio n -filter filter-name
To specify application category, in the application-filter-group configuration mode, use the fol-
lowing commands:
catego ry category-type
l category-type – Specifies the category type for the application filter group.
To specify application subcategory, in the application-filter-group configuration mode, use the fol-
lowing commands:
sub catego ry subcategory-type
l subcategory-type – Specifies the subcategory type for the application filter group.
To specify application technology, in the application-filter-group configuration mode, use the fol-
lowing commands:
tech n o lo gy technology-type
To specify the risk value, in the application-filter-group configuration mode, use the following
commands:
risk risk-value
l risk-value – Specifies the application risk value. The range is from 1 to 5. 5 means the
highest risk.
In the configuration example, you create an application named my-application and configure the
following settings for this application:
l Create a user-defined application signature rule for my-application and specify the ID of the
signature as 1.
hostname(config-appsig-rule)# src-addr an y
hostname(config-appsig-rule)# dst-addr an y
hostname(config-appsig-rule)# exit
hostname(config-appsig)# exit
hostname(config)#
After completing the configurations, traffic that satisfies the signature rule 1 will be identified as
the application of my-application.
Overview
Hillstone devices’ DNS provides the following functions:
l Server: Configures DNS servers and default domain names for the Hillstone device.
l Proxy: The Hillstone device acts as a DNS proxy server and provides proxy service for the
connected PCs and other clients. Besides, the Hillstone device can also choose different DNS
servers according to domain names.
l Resolver: Sets retry times and timeout for Hillstone device's DNS service.
You can specify a domain name for the Hillstone device. The StoneOS will append the domain
name as a suffix to the incomplete name. For example, if you specify the domain name as yahoo.-
com, and ping www on the device, then the StoneOS will append the domain name to look for
www.yahoo.com. In addition, the resolution sequence is different when specifying the domain
name to yahoo.com and com: if you specify the domain name as yahoo.com and ping www, the
l domain-name – Specifies the domain name. The length is 1 to 255 characters, but the max-
imum length between the two periods (.) is only 63 characters.
To restore to the default domain name, in the global configuration mode, use the command no ip
domain name .
The following command specifies the default domain name as hillstonenet.com:
DNS domain name server is used by the Hillstone device to resolve DNS. To specify a DNS
domain name server, in the global configuration mode, use the following command:
ip n ame-server server-address1 [ server-address2 ] ... [ server-address6 ] [vro uter vrouter-name ]
l server-address1 – Specifies the IP address of the domain name server. You can configure up
to 6 domain name servers by one command or multiple commands, i.e., running command ip
name-server 1.1.1.1 2.2.2.2 and running commands ip name-server 1.1.1.1 and ip name-
server 2.2.2.2 make no difference. You can configure up to 64 domain name servers.
To cancel the specified DNS domain name server, in the global configuration mode, use the com-
mand no ip name-server server-address1 [server-address2 ] ... [server-address6 ].
You can configure a DNS proxy rule via CLI to control the DNS traffic destined to the device.
The configuration includes:
To create a DNS proxy rule or enter the DNS Proxy rule configuration mode, in the global con-
figuration mode, use the following command:
dn s-p ro xy rule [id id ]
l id id – Specifies the ID of the DNS proxy rule. If not specified, the system will auto-
matically assign an ID to the DNS proxy rule. The ID must be unique in the entire system.
To delete the DNS proxy rule, in the global configuration mode, use the command no dns-proxy
rule id id.
The filtering conditions of a DNS Proxy rule include the ingress interface, source address, des-
tination address and DNS domain name of DNS request. You should configure these four con-
ditions simultaneously, and then system will filter the DNS requests after configuration. Only if
the DNS request meets the above four conditions can it is considered a successful match.
You can specify the ingress interface of DNS request in the rule to filter the DNS request mes-
sage. It is permissible to specify numbers of interfaces. To add or delete the ingress interface of
request, in DNS proxy rule configuration mode, use the following command:
You can specify the source address of DNS request in the rule to filter the DNS request message.
It is permissible to specify multiple source address filtering conditions. To add or delete the
l Add the source address of the address entry type: src-addr { addr-name | any}
l Delete the source address of the address entry type: no src-addr { addr-name| any}
l Add the source address of the IP member type: src-ip {ip/netmask | ip-address netmask }
l Delete the source address of the IP member type: no src-ip {ip/netmask | ip-address
netmask }
l Add the source address of the IP range type: src-range min-ip max-ip
l Delete the source address of the IP range type: no src-range min-ip max-ip
You can specify the destination address of DNS request in the rule to filter the DNS request mes-
sage. It is permissible to specify multiple destination address filtering conditions.To add or delete
the destination address of request, in DNS proxy rule configuration mode, use the following com-
mand:
l Add the destination address of the address entry type: dst-addr { addr-name | any}
l Delete the destination address of the address entry type: no dst-addr { addr-name | any}
l Add the destination address of the IP member type: dst-ip {ip/netmask | ip-address
netmask }
l Delete the destinaion address of the IP member type: no dst-ip {ip/netmask | ip-address net-
mask }
l Add the destination address of the IP range type: dst-range min-ip max-ip
l Delete the destination address of the IP range type: no dst-range min-ip max-ip
You can specify the domain name of DNS request in the rule to filter the DNS request message.
It is permissible to specify multiple domain name filtering conditions.To add or delete the domain
name, in DNS proxy rule configuration mode, use the following command:
do main { an y | domain-name | h o st-b o o k host-book-entry }
l host-book host-book-entry – Specifies the name of the host entry that will be matched.
In DNS proxy rule configuration mode ,use the following command to delete the domain name
that will be matched:
no domain any | domain-name | host-book host-book-entry.
For the DNS request that meets the filtering conditions, system can proxy, bypass and block the
traffic.You can specify the action for a DNS proxy rule, in the DNS proxy rule configuration
mode, using the following command:
actio n {p ro xy [ro llb ack ]| b yp ass | b lo ck}
l proxy [rollback] – Specifies the action of a DNS proxy rule as proxy. The DNS request will
be resolved through the proxy server. You can configure the rollback property as needed.
After rollback is configured, when there is no DNS server or DNS server unable to resolve
the DNS address, system will bypass the DNS request and forward it to the DNS server ori-
ginally requested by the message.
l bypass – Specifies the action of a DNS proxy rule as bypass. That is, the DNS request will
be forwarded to the DNS server originally requested by the message.
l block – Specifies the action of a DNS proxy rule as block. That is,the DNS request will be
discarded.
When the action of the proxy rule is specified as proxy, you need to configure the DNS proxy
servers. You can specify up to six DNS server and you can configure the interface and preferred
properties for the DNS server as needed. When you configure multiple DNS servers, the DNS
server with preferred property will be selected for domain name resolution. If no preferred server
is specified, the system will query whether there are DNS servers that have specified the egress
interface; If so, select these DNS server in a round robin; Except for the two DNS servers, which
means that you only have a regular DNS server, then select this kind of DNS servers in a round
robin.To add a DNS proxy server,in the DNS proxy rule configuration mode, use the following
command:
n ame-server server-ip [vro uter vrouter-name | egress-in terface interface-name | p referred]
l interface-name – Bind the egress interface to the DNS proxy server. After binding, system
will forward the DNS request to the DNS proxy server through this interface.
l preferred – Specifies the DNS proxy 4dserver as the preferred server, and a DNS proxy rule
can only specify one server as the preferred server.
To delete the DNS proxy server, in the DNS proxy rule configuration mode , use the command
no name-server server-ip [vrouter vrouter-name].
In the DNS proxy rule configuration mode, use the following command to modify the description
of a rule.
descrip tio n description
In the DNS Proxy Rule configuration mode, use the command no description to delete the
description.
With the DNS Proxy Log function enabled, the system will generate log information when there
is DNS request traffic matching a DNS proxy rule. To enable or disable the DNS proxy log func-
tion, in the DNS proxy rule configuration mode, use the following command:
log {enable | disable}
l enable | disable - Enable (enable) or disable (disable) the DNS proxy log function.
DNS proxy rule is enabled by default. To disable or enable the function, in the DNS proxy rule
configuration mode, use the following command:
Each DNS proxy rule is labeled with a unique ID. When traffic flowing into the Hillstone device,
the device will query for DNS proxy rules by turns, and then process the DNS request according
to the first matched rule. However, the rule ID is not related to the matching sequence during the
query. The sequence displayed by the command show dns-proxy is the query sequence for the
matching. You can move a DNS proxy rule to modify the matching sequence. To move a DNS
proxy rule, in the globle configuration mode, use the following command:
dn s-p ro xy mo ve rule-id {to p | b o tto m | b efo re rule-id | after rule-id }
l move rule-id – Specifies the DNS proxy rule that will be moved.
l top – Move the DNS proxy rule to the top of all the rules.
l bottom – Moves the DNS proxy rule to the bottom of all the rules.
l before rule-id – Move the DNS proxy rule before the rule id.
l after rule-id – Move the DNS proxy rule after the rule id.
This function is to track the reachability of the DNS proxy server. System will periodically detect
the DNS proxy server at a specific time interval. When the server cannot be tracked, the IP
address of server will be removed from the DNS resolution list untill the link is restored. By
default, the tracking for DNS proxy server is enabled.To configure the time interval of tracking
for DNS proxy server,in the global configuration mode, use the following command:
dn s-p ro xy server-track [in terval interval-time ]
l interval-time – Specifies the tracking interval time. The value range is 0 to 30 seconds. The
default value is 10.
To disable tracking for DNS proxy server, in the global configuration mode, use the following
command:
no dns-proxy server-track
The system will calculate the checksum of UDP packet for DNS proxy when the DNS proxy on
interfaces is enabled. If you need to improve the performance of the device,you can disable this
function.
To enable/disable calculating the checksum of UDP packet for DNS proxy, in the globle con-
figuration mode, use the following command:
TTL refers to the survival time of the DNS records in DNS-proxy server. To specify the TTL of
DNS-proxy response packets, in the global configuration mode, use the following command:
dn s-p ro xy ttl ttl-time
To disable this function, in the global configuration mode, use the command dns-proxy ttl
disable.
DNS Proxy Hit Analysis is a process to check the DNS proxy rule hit counts, that is, when DNS
request traffic matches a certain DNS proxy rule, the hit count will increase by 1 automatically,
and the ratio of the hit number of each DNS proxy rule to all the DNS requests of the system is
counted, which directly shows the efficiency of the use of DNS proxy rules in the user network.
To view the DNS proxy statistical information, in any mode, use the following command:
show dns-proxy statistics [history {day | hour | month | week}]
l history {day | hour | month | week}– View the statistical information within the latest 1
hour (hour), the latest 1 day (day), the latest 1 week (week) or the latest 1 month (month). If
it's not specified, all DNS proxy statistics will be displayed.
To clear all the DNS proxy statistical information, in any mode, use the following command:
clear dns-proxy statistics
To view the DNS proxy rule in details, in any mode, use the following command:
sh o w dn s-p ro xy [rule id rule-id ]
Resolution
Users can specify the retry times and timeout of DNS requests for the DNS function of Hillstone
devices, TTL for the DNS-proxy response packets and DNS load balancing.
StoneOS will wait for DNS server's response after sending the DNS request, and will send the
request again if no response returns after a specified time. The period of waiting for response is
known as timeout. To specify the timeout of DNS requests, in the global configuration mode, use
the following command:
ip do main timeo ut timeout-value
l timeout-value – Specifies the timeout value. The value range is 1 to 3 seconds. The default
value is 2.
To restore to the default timeout, in the global configuration mode, use the command no ip
domain timeout.
If the DNS request is not responded after timeout, StoneOS will send the request again; if still
not responded after the specified retry times (i.e., the repetition times of the DNS request),
StoneOS will send the request to the next DNS server. To specify the retry times, in the global
configuration mode, use the following command:
ip do main retry times
l times – Specifies the retry times. The value range is 1 to 3 times. The default value is 2.
To restore to the default retry times, in the global configuration mode, use the command no ip
domain retry.
TTL refers to the survival time of the DNS domain name resolution cache (including dynamic
DNS cache and register DNS cache). To specify the TTL of DNS resolution cache, in the global
configuration mode, use the following command:
ip do main ttl ttl-time
l ttl-time – Specifies the TTL for DNS resolution cache. If the DNS resolution cache are not
responded after the TTL, the system will clear all domain name records. The value range is 60
to 600 seconds.
In the global configuration mode, use no ip domain ttl command to restore to the default value
which is a value returned by DNS server.
You can enable the DNS resolution log function to record the result of DNS resolution, and gen-
erate the log information, the log content including the domain name, IP address of the DNS and
generation time. By default, the function is closed.To enable the DNS resolution log function, in
the global configuration mode, use the following command:
ip do main resp o n se-lo g
To disable the DNS resolution log function, in the global configuration mode, use the command
no ip domain response-log.
DNS Cache
When using DNS, a system might store the DNS mappings to its cache to speed up the query.
There are 3 ways to obtain DNS mappings:
You can add static DNS mappings to cache, view DNS mappings and delete dynamic mappings.
To manually add a DNS mapping to the cache, in the global configuration mode, use the following
command:
ip h o st host-name { address1 [ address2 ] ... [ address8 ]} [vro uter vrouter-name ]
l {address1 [address2 ] ... [address8 ]} – Specifies the IP Address of the host. You can specify
up to 8 IP addresses.
To delete the specified DNS mapping, in the global configuration mode, use the command no ip
host host-name.
To manually remove a dynamic DNS mapping, in the execution mode, use the following com-
mand:
clear h o st [ host-name [vro uter vrouter-name ] ]
This command is used to delete the specified or all the dynamic DNS mappings. To delete the
static DNS mappings that are manually added, use the command no ip host.
DNS Snooping
The DNS Snooping function creates and maintains a mapping table for domain names and cor-
responding IPv4/IPv6 addresses through domain name resolution. Meanwhile the system returns
the IP address in the mapping table to the function modules that refer to the domain name (such
as the address book, PBR, policy, etc.), so as to realize the access control based on the domain
name.
DNS Snooping supports obtaining domain name and IP address mapping through the following
two methods of domain name resolution:
l Active mode: System periodically initiates DNS queries to the configured DNS domain name
server to obtain the mapping information between the domain name and the IP address.
l Passive mode: System monitors the DNS response packets which flow through the device to
obtain the mapping information between the domain name and the IP address.
To specifying the mode of the domain name resolution, in the global configuration mode, use the
following command:
dns snooping mode {active | passive | all}
l active - Specifies the domain name resolution mode as the active mode. In this mode, system
periodically initiates DNS queries to the configured DNS domain name server to obtain the
mapping information between the domain name and the IP address, meanwhile returns the IP
address to the function modules that refer to the domain name. This is the default value.
l passive - Specifies the domain name resolution mode as the passive mode. In this mode, sys-
tem monitors the DNS response packets which flow through the device to obtain the map-
ping information between the domain name and the IP address, meanwhile returns the IP
address to the function modules that refer to the domain name.
l all - Specifies the domain name resolution mode as both active mode and passive mode. The
IP address will be the union of the IP address resolved by active mode and passive mode.
In the global configuration mode, use the command no dns snooping mode to restore the default
value.
When the domain name resolution mode is passive mode, users can specify the maximum number
of mapping IP addresses for each specific domain name. To specify the maximum number of map-
ping IP addresses for each specific domain name, in the global configuration mode, use the fol-
lowing command:
dns snooping host-ip-num number
l number - Specifies the maximum number of mapping IP addresses for each specific domain
name. The range is 32 to 256. The default value is 64.
When DNS Snooping receives DNS response packets and the mapping information between the
domain name and the IP address needs to be updated, DNS Snooping supports forwarding the
DNS response packets to client in a delay time, so that client obtains IP address delay. To specify
the forward delay time, in the global configuration mode, use the following command:
dns snooping pak-delay time
l time - Specifies the forward delay time. The range is 0 to 2000 milliseconds. The default
value is 5 milliseconds.
In the global configuration mode, use the command no dns snooping pak-delay to restore the
default value..
System supports the function of wildcard domain name (e.g., *.test.com) resolution. To specify
the maximum number of wildcard domain names supported by the system, in the global con-
figuration mode, use the following command:
dns snooping wildcard-num number
l number - Specifies the maximum number of wildcard domain names supported by the system.
The range is 128 to 512. The default value is 128.
In the global configuration mode, use the command no dns snooping wildcard-num to restore the
default value.
Notes: System only supports to resolve wildcard domain names through passive
mode.
TTL (Time-to-live) refers to the storage time of the domain name and IP address mapping cache.
To specify the TTL for DNS snooping mapping cache, in the global configuration mode, use the
following command:
dns snooping ttl ttl-value
l ttl-value - Specifies the TTL for DNS snooping mapping cache. The range is 60 to 3600
seconds. The default value is 3600 seconds.
In the global configuration mode, use the command no dns snooping ttl to restore the default
value.
Notes: System will periodically clear the domain name and IP address mapping
cache that reaches the timeout value:
l In the passive mode, timeout value of the domain name and IP address map-
ping cache = TTL for the DNS response packets + TTL for DNS snooping
mapping cache.
l In the active mode, timeout value of the domain name and IP address map-
ping cache = TTL for DNS Resolution Dynamic Cache. For more inform-
ation about TTL for DNS Resolution Dynamic Cache, see Specifying the
TTL for DNS Resolution Dynamic Cache.
To view the configuration information of DNS snooping, in any mode, use the following com-
mand:
show dns snooping configuration
To view the mapping information of DNS snooping, in any mode, use the following command:
show dns snooping domain {active | passive} [domain-name]
l active | passive - View the domain name and IP address mapping information obtained by the
active mode or the passive mode.
l domain-name - View the domain name and IP address mapping information for a specified
domain name.
Enabling/Disabling DNS
By default, DNS is disabled on Hillstone devices. To enable/disable the DNS function, in the
global configuration mode, use the following commands:
Requirement
The Hillstone device allows PC1 within the trust zone to access Internet via DNS proxy. The IP
address of DNS server in the public network is 202.106.0.20; the IP address of the device's eth-
ernet0/0 interface is 192.168.10.1/24; the IP address of PC1 in the trust zone, which is con-
nected to the above interface, is 192.168.10.3/24; the IP address of ethernet0/1 interface, which
is connected to the public network in the untrust zone, is 10.160.65.31/24.
Step 1: Bind security zones and configure IP addresses for Hillstone device's interfaces
hostname# co n figure
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-dns-proxy-rule)# src-addr an y
hostname(config-dns-proxy-rule)# dst-addr an y
hostname(config-dns-proxy-rule)# do main an y
hostname(config-dns-proxy-rule)# actio n p ro xy
hostname(config-dns-proxy-rule)# exit
l 3322.org: http://www.3322.org
l Huagai.net: http://www.ddns.com.cn
l ZoneEdit.com: http://www.zoneedit.com
l dyndns.org:http://www.dyndns.org
Configuring DDNS
When the IP address of the interface connecting to the external network changes, the Hillstone
device will send an update request to the DDNS server (over HTTP) to update the IP address
and the binding domain. You can configure different DDNS names, then configure DDNS para-
meters for the DDNS names (such as the update method, DDNS server and update interval), and
finally bind the configured DDNS names to interfaces to enable the DDNS function.
This section describes the following configurations:
The DDNS service parameters need to be configured in the DDNS name configuration mode. To
create a DDNS name, specify the type of update and enter the specified DDNS service con-
figuration mode, in the global configuration mode, use the following command:
ddn s n ame ddns-name typ e h ttp
l type http – Specifies how to update the DDNS service, i.e., sending the DDNS update
requests over HTTP.
The command leads you into the configuration mode of the specified DDNS name. You can con-
figure DDNS parameters for the DDNS service, including the DDNS provider, DDNS server
name and port number, the minimum and maximum update interval, as well as the username and
password of the DDNS provider.
To delete the specified DDNS name, in the global configuration mode, use the command no ddns
name ddns-name type http.
Hillstone devices support 5 DDNS servers: 3322.org, Huagai.net, ZoneEdit.com, no-ip.com and
dyndns.org. To specify the DDNS provider, in the DDNS name configuration mode, use the fol-
lowing command:
typ e {dyn dn s | h uagai | n o -ip | qdn s | zo n eedit}
Different DDNS servers are configured with different server names and port numbers. To specify
the DDNS server name and port number, in the DDNS name configuration mode, use the fol-
lowing command:
server n ame server-name p o rt port-number
l port-number – Specifies the server port number for the configured DDNS. The value range
is 1 to 65535.
To cancel the specified DDNS server name and port number, in the DDNS name configuration
mode, use the command no server.
Notes: The DNS server name and port number must be the corresponding name
and port of the DDNS server. Do not configure these options if the exact inform-
ation is unknown. The server will return the name and port information auto-
matically after connection to the DDNS server has been established successfully.
When the IP address of the interface with DDNS enabled changes, StoneOS will send an update
request to the DDNS server. If the request is not responded, StoneOS will send the request again
according to the configured minimum update interval. For example, if the minimum update inter-
val is set to 5 minutes, then StoneOS will send the second request 5 minutes after the first
request failure; if it fails again, StoneOS will send the request again 10 (5x2) minutes later; and 20
(10x2) minutes later, so and forth. The value will not increase anymore when reaching 120, i.e.,
StoneOS will send the request at a fixed interval of 120 minutes. To configure the minimum
update interval, in DDNS name configuration mode, use the following command:
min up date in terval time-value
To restore to the default minimum update interval, in DDNS name configuration mode, use the
command no minupdate.
On the condition that IP address has not changed, StoneOS will send an update request to the
DDNS server at the maximum update interval. To configure the maximum update interval, in the
DDNS name configuration mode, use the following command:
maxup date in terval time-value
l time-value – Specifies the maximum update interval. The value range is 24 to 8760 hours.
The default value is 24.
To restore to the default maximum update interval, in DDNS name configuration mode, use the
command no maxupdate.
This command is to specify the user information registered in the DDNS provider. To configure
the user information, in the DDNS name configuration mode, use the following command:
user user-name p asswo rd user-password
To cancel the specified user information, in the DDNS name configuration mode, use the com-
mand no user.
The domain names will not be updated according to the configured DDNS parameters upon any
interface IP address changes unless the DDNS name is bound to an interface. To bind the DDNS
l host-name – Specifies the domain name obtained from the corresponding DDNS provider.
To cancel the specified binding, in the global configuration mode, use the command no ddns
enable ddns-name interface interface-name.
To view the DDNS information, in any mode, use the following command:
Requirement
The interface ethernet0/1 of the Hillstone device locates at the untrust zone, and the interface
obtains IP address by PPPoE. If the IP address changes during PPPoE connection, the interface
will send an update request to the DDNS server.
Configuration Steps
hostname(config-pppoe-group)# exit
hostname(config)#
hostname# co n figure
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# p p p o e en ab le gro up p p p o e1
hostname(config-if-eth0/1)# exit
hostname(config-ddns)# exit
Step 4: Bind ethernet0/1 to the DDNS named 3322 (the domain name obtained from 3322.org is
hillstonenet.3322.org)
Step 6: Launch a PPPoE connection to trigger DDNS when the IP address of the interface
changes
l DHCP client: A Hillstone device's interface can be configured as a DHCP client and obtain
IP addresses from the DHCP server.
l DHCP server: A Hillstone device's interface can be configured as a DHCP server and allocate
IP addresses chosen from the configured address pool for the connected hosts.
l DHCP relay proxy: A Hillstone device's interface can be configured as a DHCP relay proxy to
obtain DHCP information from the DHCP server and forward the information to connected
hosts.
Hillstone devices are designed with all the above three DHCP functions, but an individual inter-
face can be only configured with one of the above functions.
To enable the interface to obtain an IP address via DHCP, in the interface configuration mode,
use the following command:
ip address dh cp [setro ute]
l setroute – Uses the gateway specified by the DHCP server as the default route gateway.
To cancel the configuration, in the interface configuration mode, use the command no ip address
dhcp.
For example, to enable etherenet0/1 to obtain the IP address dynamically via DHCP, and set the
default gateway route, use the following commands:
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config)#
The interface that has obtained a dynamic IP address via DHCP can release and renew its IP
address. To release and renew the IP address, in the interface configuration mode, use the fol-
lowing commands:
To view the DHCP IP address information allocated to an interface, in the interface configuration
mode, use the following command:
dhcp-client ip show
After the DHCP interface is configured with the default route (ip address dhcp setroute), to con-
figure the route priority (administration distance) and route weight, in the interface configuration
mode, use the following command:
dhcp-client route {distan ce value | weigh t value }
l distance value – Specifies the route priority. The value range is 1 to 255. The default value is
1.
l weight value – Specifies the route weight. The value range is 1 to 255. The default value is
1.
To restore to the default route priory and weight, in the interface configuration mode, use the
command no dhcp-client route {distance | weight}.
After the DHCP interface is configured with the default gateway route (ip address dhcp setroute),
you can enable the classless static routing function via the DHCP options. When it is enabled, the
DHCP client will send a request message with the Option121 (i.e., classless static routing option)
to the server, and then the server will return the classless static route information. Finally, the cli-
ent will add the classless static routing information to the routing table. To enable the classless
static routing function via DHCP, in the interface configuration mode, use the following com-
mand:
dh cp -clien t classless-static-ro ute
To disable the function of obtaining classless static route via DHCP, in the interface configuration
mode, use the following command:
no dhcp-client classless-static-route
l The priority of classless static route is higher than the default gateway
route, i.e. when the device receives classless static routing options and
default gateway routing options at the same time, the device will only add
classless static routing information to the routing table.
To view the DHCP Client configuration information, in any mode, use the following command:
sh o w dh cp -clien t in terface { interface-name }
After executing the above command, the system will create a new DHCP address pool and enter
the DHCP server configuration mode of the address pool; if the specified address pool exists, the
system will directly go to the DHCP server configuration mode:
To delete the specified address pool, in the global configuration mode, use the command no
dhcp-server pool pool-name.
The DHCP server functions you can configure in the DHCP server configuration mode are:
l Configuring auto-config
l Configuring DNS/WINS servers and domain name for the DHCP client
l IP-MAC Binding
l Configuring option 49
After configuring the DHCP server address pool, you need to bind the DHCP address pool to an
interface in order to enable the DHCP server on the interface. For more specific commands, see
Binding the Address Pool to an Interface.
In addition, you can view the DHCP configuration of the system anytime by the command show.
Configuring an IP Range
You need to specify the IP range used for external allocation. To specify the IP range of the
address pool, in the DHCP server configuration mode, use the following command:
address start-ip-address [ end-ip-address ]
To cancel the specified IP range, in the DHCP server configuration mode, use the command no
address start-ip-address.
IP addresses in the reserved address, within the IP range of the address pool, are reserved for the
DHCP server and will not be allocated. To configure the reserved address, in the DHCP server
configuration mode, use the following command:
exclude address start-ip-address [ end-ip-address ]
To cancel the specified IP range, in the DHCP server configuration mode, use the command no
exclude address start-ip-address.
Configuring a Gateway
To configure the IP address of the gateway for the client, in the DHCP server configuration
mode, use the following command:
gateway ip-address
To cancel the specified IP address of the gateway, in the DHCP server configuration mode, use
the command no gateway.
Configuring a Netmask
To configure the netmask for the client, in the DHCP server configuration mode, use the fol-
lowing command:
n etmask netmask
To cancel the specified netmask, in the DHCP server configuration mode, use the command no
netmask.
Lease is the period during which a client is allowed to use an IP address, starting from the time
the IP address is allocated. After the lease expired, the client will have to request an IP address
again from the DHCP server. To configure the lease of DHCP server, in the DHCP server con-
figuration mode, use the following command:
lease lease-time
To restore to the default lease time, in the DHCP server configuration mode, use the command
no lease.
Configuring Auto-config
Auto-config is able to function when an interface in a DHCP server configured gateway has been
enabled as DHCP client. When auto-config is enabled, if the DHCP server (Hillstone) does not
have DNS, WINS or domain name configured, the DHCP client (DHCP) will distribute the
DNS, WINS and domain name information obtained from a connected DHCP server to the host
that obtains such information from the DHCP server (Hillstone). However, the DNS, WINS and
domain name that are configured manually still have the priority. To configure auto-config, in the
DHCP server configuration mode, use the following command:
auto -co n fig in terface interface-name
l interface-name – Specifies the interface with the DHCP client enabled on the same device.
To disable the function, in the DHCP server configuration mode, use the command no auto-con-
fig.
Configuring DNS/WINS Servers and Domain Name for the DHCP Client
To configure DNS, WINS servers and domain name for the DHCP client, in the DHCP server
configuration mode, use the following commands:
dn s ip-address1 [ ip-address2 ]
do main domain-name
To cancel the configured DNS, WINS server and domain name, in the DHCP server con-
figuration mode, use the following commands:
l no dns
l no wins
l no domain
To configure the SMTP, POP3 and news servers for the DHCP client, in the DHCP server con-
figuration mode, use the following commands:
l smtp ip-address
l pop3 ip-address
l news ip-address
To cancel the configured SMTP, POP3 and news servers, in the DHCP server configuration
mode, use the following commands:
l no smtp
l no pop3
l no news
When the device (Hillstone1) with DHCP server enabled is connected to another deivce(Hill-
stone2) with DHCP relay enabled, and the PC obtains Hillstone1's DHCP information from Hill-
stone2, then only when the relay agent's IP address and netmask are configured on Hillstone1 can
the DHCP information be transmitted to the PC successfully. To configure a relay agent, in the
DHCP server configuration mode, use the following command:
relay-agen t ip-address netmask
l ip-address netmask – Specifies the IP address and netmask of the relay agent, i.e., the IP
address and netmask for the interface with relay agent enabled on Hillstone2.
To cancel the specified relay agent, in the DHCP server configuration mode, use the command no
relay-agent ip-address netmask .
IP-MAC Binding
You can manually bind IP and MAC addresses to establish a corresponding relationship between
IP and MAC address on the device. In this way, the specified MAC address can only obtain the
corresponding bound IP address. To configure an IP-MAC binding, in the DHCP server con-
figuration mode, use the following command:
ip mac-b in d ip-address mac [descrip tio n description ]
l ip-address – Specifies the IP address. The IP address must be the address defined in the
address pool.
l description description – Specifies a description for this IP-MAC binding entry. You can spe-
cify up to 63 characters.
To cancel the specified IP-MAC binding, in the DHCP server configuration mode, use the com-
mand no ipmac-bind ip-address.
If the address pool is bound to an interface, the interface will run DHCP server based on the con-
figuration parameters of the address pool. To bind the address pool to an interface, in the interface
configuration mode, use the following command:
dhcp-server enable pool pool-name
To disable the DHCP server on the interface, in the interface configuration mode, use the com-
mand no dhcp-server enable.
When the interface acts as the DHCP server, the system supports the option 43, option 49,
option 60, option 66, option 67, option 138, option 150 and option 242.
Configuring Option 43
Option 43 is used to exchange specific vendor specific information (VSI) between DHCP client
and DHCP server. The DHCP server uses option 43 to assign Access Controller (AC) addresses
to wireless Access Point (AP), and the wireless AP use DHCP to discover the AC to which it is
to connect.
To configure the VSI carried by option 43 for DHCP server, use the following command in the
DHCP server configuration mode:
o p tio n 43 {ascii value | h ex value }
l ascii value – Specify the VSI in ASCII. If the string contains spaces, it must be enclosed in
quotes.
l If the VCI matching string has been configured, first of all, you need to
verify the VCI carried by the option 60 field in client’s DHCP packets.
When the VCI matches the configured one, the IP address, option 43 and
corresponding information will be offered. If not, DHCP server will drop
client’s DHCP packets and will not reply to the client.
l For verifying VCI carried by option 60, see Verifying VCI Carried by
Option 60 section.
Configuring Option 49
To make the DHCP client obtain the list of the IP addresses of systems that are running the X
window System Display Manager, configure the option 49 settings. Use the following command
to configure the option 49 settings in the DHCP server configuration mode:
o p tio n 49 ip ip-address
l ip-address – Specifies the IP address of the server that is running the X window System Dis-
play Manager.
To cancel the option 49 configurations, in the DHCP server configuration mode, use the com-
mand no option 49 ip ip-address.
Configuring Option 60
Option 60 is used by DHCP clients to optionally identify the type and configuration of a DHCP
client. The information is a string of n octets, interpreted by servers. Vendors and sites may
choose to define specific vendor class identifiers (VCI) to convey particular configuration or
other identification information about a client.
You can configure the following functions:
l Set the VCI carried by the option 60 for the DHCP server.
The DHCP server can verify the VCI carried by option 60 in the client’s DHCP packets. When
the VCI in client’s DHCP packet matches the VCI matching string you configured in the
DHCP server, DHCP server will offer the IP address and other corresponding information. If not,
DHCP server will drop client’s DHCP packets and will not reply to the client. If you do not
configure a VCI matching string for the DHCP server, it will ignore the VCI carried by option 60.
To configure the VCI matching string, use the following command in the DHCP server con-
figuration mode:
vci-match -strin g {ascii value | h ex value }
l ascii value – Specify the VCI matching string in ASCII. If the string contains spaces, it must
be enclosed in quotes.
In each specified DHCP server configuration mode, you can only set one VCI matching string.
The newly configured VCI matching string will replace the previous one.
To cancel the VCI matching string settings, use the no vci-match-string command.
After configuring the VCI carried by option 60 for DHCP server, the DHCP packets sent by the
DHCP server will carry this option and the corresponding VCI. To configure the VCI carried by
option 60 for DHCP server, use the following command in the DHCP server configuration mode:
o p tio n 60 {ascii value | h ex value }
Configuring Option 66
The option 66 is used to configure the TFTP server name option. By configuring Option 66, the
DHCP client get the domain name or the IP address of the TFTP server. You can download the
startup file specified in the Option 67 from the TFTP server.
To configure option 66, in the DHCP server configuration mode, use the following command:
option 66 { ascii string | h ex value }
l ascii string – Specify the domain name or the IP address of the TFTP server in ASCII. The
length is 1 to 255 characters, but the maximum length between the two periods (.) is only 63
characters.
l hex value – Specify the domain name or the IP address of the TFTP server in hex.
To cancel the option 66 configurations, in the DHCP server configuration mode, use the com-
mand no option 66.
Notes: The TFTP server name must start with a letter or number, and cannot end
with ”.” (dot). The "-" (hyphen) and"." (dot) cannot appeare continuously.
Configuring Option 67
The option 67 is used to configure the startup file name option for the TFTP server. By con-
figuring option 67, the DHCP client can get the name of the startup file.
To configure option 67, in the DHCP server configuration mode, use the following command:
o p tio n 67 {ascii string | h ex value }
To cancel the option 67 configurations, in the DHCP server configuration mode, use the com-
mand no option 67.
The Control And Provisioning of Wireless Access Points Protocol (CAPWAP) allows a Wireless
Termination Point (WTP) to use DHCP to discover the Access Controllers (AC) to which it is to
connect.
The DHCP server uses option 138 to carry a list of 32-bit (binary) IPv4 addresses indicating one
or more CAPWAP ACs available to the WTP. Then the WTP discovers and connects to the AC
according to the provided AC list.
If you do not set the option 138 for the DHCP server or the DHCP client does not request
option 138, DHCP server will not offer the option 138 settings.
To add an AC IP address into the list carried by option 138, use the following command in the
DHCP server configuration mode:
o p tio n 138 ip A.B.C.D
Repeat this command to add multiple ACs. Each DHCP server supports up to 4 ACs.
To cancel the specified AC, use the no optioin 138 ip A.B.C.D command.
The option 150 is used to configure the address options for the TFTP server. By configuring
option 150, the DHCP client can get the address of the TFTP server.
To configure option 150, in the DHCP server configuration mode, use the following command:
o p tio n 150 ip ip-address
To cancel the option 150 configurations, in the DHCP server configuration mode, use the com-
mand no option 150 ip ip-address.
The option 242 is a private DHCP private option for IP phones. By configuring option 242, the
specific parameters information of IP phone can be exchanged between DHCP server and DHCP
client, such as call server address (MCIPADD), call the server port (MCPORT), the address of
the TLS server (TLSSRVR), HTTP (HTTPSRVR) HTTP server address and server port
(HTTPPORT) etc.
To configure option 242, in the DHCP server configuration mode, use the following command:
o p tio n 242 {ascii string | h ex value }
l ascii string – Specify the specific parameters of the IP phone in ASCII. The length is 1 to
255 characters.
To cancel the option 242 configurations, in the DHCP server configuration mode, use the com-
mand no option 242.
To view the DHCP address pool binding information or statistics, use one of the following com-
mands:
sh o w dh cp -server {b in din g | p o o l | statistics} pool-name
l binding pool-name – Shows the binding information of the specified address pool.
Notes: To ensure that clients can successfully obtain IP addresses, the administrator
needs to configure DHCP relay permit policies in the direction from the DHCP
server to clients.
To specify the IP address of the DHCP server, in the interface configuration mode, use the fol-
lowing command:
dh cp -relay server ip-address
To cancel the specified IP address, in the interface configuration mode, use the command no
dhcp-relay server ip-address.
To enable DHCP relay proxy on an interface, in the interface configuration mode, use the fol-
lowing command:
dh cp -relay en ab le
To disable the specified DHCP relay proxy, in the interface configuration mode, use the com-
mand no dhcp-relay enable.
In the scenario where the device acts as a DHCP relay proxy, when the device forwards requests
to the DHCP server, by default, it uses the IP address of the egress interface as the source IP of
the DHCP relay packets, whose source port is 68. However, in specific configurations where
strict security policies are applied, packets returned by the DHCP server may be dropped by the
device. To avoid this type of packet loss, you can enable this function. This way, the source IP of
the DHCP relay packets is replaced with the IP address of the interface on which the DHCP relay
proxy is enabled. The source port of the packets is changed to 67.
To enable the function of replacing the source IP address of the DHCP relay packets, in the
global configuration mode, use the following command:
dhcp-relay source-ip agent-ip
To restore to the default configuration, use the following command:
no dhcp-relay source-ip agent-ip
l Discovery stage: The client discovers the access concentrator by identifying the Ethernet
MAC address of the access concentrator and establishing a PPPoE session ID.
l PPP session stage: The client and the access concentrator negotiate over PPP. The nego-
tiation procedure is the same with that of a standard PPP negotiation.
Hillstone devices' interfaces can be configured as PPPoE clients to accept PPPoE connections.
Configuring PPPoE
Hillstone devices allow you to configure multiple PPPoE instances, and then bind the configured
PPPoE instances to interfaces. If an interface is configured to obtain its IP address via PPPoE,
the interface will launch a PPPoE connection based on the parameters configured in PPPoE
instances. The PPPoE configurations include:
You can configure various PPPoE parameters in the PPPoE instance, including access con-
centrator, authentication method, PPPoE connection method, netmask, route distance and
weight, service, static IP, PPPoE user information, schedule and DNS preference. The PPPoE
instances must be configured in the PPPoE instance configuration mode. To enter the PPPoE
instance configuration mode, in the global configuration mode, use the following command:
p p p o e-clien t gro up group-name
l group-name – Specifies the name of the PPPoE instance. After executing the command, the
system will create a new PPPoE instance, and enter the instance configuration mode; if the
specified name exists, the system will enter the instance configuration mode directly.
To delete the specified PPPoE instance, in the global configuration mode, use the command no
pppoe-client group group-name.
To use PPPoE connections, you need to specify the access concentrator first. To specify the
access concentrator, in the instance configuration mode, use the following command:
ac ac-name
To cancel the specified access concentrator, in the instance configuration mode, use the com-
mand no ac.
Hillstone devices will have to pass PPPoE authentication when trying to connect to a PPPoE
server. The supported authentication methods include CHAP, PAP and any. The configured
authentication must be the same with that configured in the PPPoE server. To specify the authen-
tication method, in the instance configuration mode, use the following command:
auth en ticatio n {ch ap | p ap | an y}
l any - Specifies the authentication as either CHAP or PAP. This is the default option.
To restore to the default authentication method, in the instance configuration mode, use the com-
mand no authentication.
l Automatic connection: If the PPPoE connection has been disconnected due to any reasons
for a certain period, i.e., the specified re-connect interval, StoneOS will try to re-connect auto-
matically.
l On-demand dial-up: If the PPPoE interface has been idle (no traffic) for a certain period, i.e.,
the specified idle interval, StoneOS will disconnect the Internet connection; if the interface
requires Internet access, StoneOS will connect to Internet automatically.
The above two methods are mutually exclusive, you are not recommended to use these two meth-
ods at the same time. When the schedule is not configured, the system will select the automatic
connection by default.
To specify the re-connect interval, in the instance configuration mode, use the following com-
mand:
auto -co n n ect time-value
l time-value - Specifies the re-connect interval. The value range is 0 to 10000 seconds. The
default value is 10, which means the function is disabled.
To restore to the default re-connect interval, in the instance configuration mode, use the com-
mand no auto-connect.
To specify the idle interval, in the instance configuration mode, use the following command:
idle-interval time-value
To restore to the default idle interval, in the instance configuration mode, use the command no
idle-interval.
You can specify the netmask for the IP address obtained via PPPoE. To specify the netmask, in
the instance configuration mode, use the following command:
netmask netmask
To cancel the specified netmask, in the instance configuration mode, use the command no net-
mask. After that the system will used the default netmask 255.255.255.255.
To specify the route distance and weight, in the instance configuration mode, use the following
command:
ro ute {distan ce value | weigh t value }
l distance value – Specifies the route distance. The value range is 1 to 255. The default value
is 1.
l weight value – Specifies the route weight. The value range is 1 to 255. The default value is
1.
To restore to the default route distance and weight, in the instance configuration mode, use the
command no route {distance | weight}.
To specify the allowed service, in the instance configuration mode, use the following command:
service service-name
To cancel the specified service, in the instance configuration mode, use the command no service.
You can specify a static IP address and negotiate to use this address to avoid IP change. To spe-
cify the static IP address, in the instance configuration mode, use the following command:
static-ip ip-address
To cancel the specified static IP address, in the instance configuration mode, use the command
no static-ip.
To specify the PPPoE user information, in the instance configuration mode, use the following
command:
user user-name p asswo rd password
To cancel the specified PPPoE user information, in the instance configuration mode, use the com-
mand no user.
Hillstone devices support schedules. You can specify a schedule for the PPPoE instance to make
the PPPoE interface maintain the Internet connection or disconnect from the Internet during the
specified period. To configure the schedule, in the instance configuration mode, use the following
command:
l disconnect – If this keyword is selected, the system will disconnect PPPoE connection dur-
ing the specified period.
l sch-auto-connection time-value – If this keyword is selected, the system will connect to the
Internet during the specified period automatically. time-value is used to specify the re-con-
nect interval. The value range is 0 to 10000 seconds. The default value is 0, which means the
function is disabled.
l sch-idle-timeout time-value – If this keyword is selected, the system will dial up to the Inter-
net on demand during the specified period. time-value is used to specify the idle interval. The
value range is 0 to 10000 minutes. The default value is 30.
To cancel the specified schedule, in the instance configuration mode, use the command no sched-
ule.
Tip: For more information about how to create a schedule, see Creating a Sched-
ule of System Management.
If the MAC address of the PPPoE server is known, you can specify the MAC address of the
PPPoE server so that the Hillstone device can quickly connect to the PPPoE server. To specify
the MAC address of the PPPoE server, in the instance configuration mode, use the following com-
mand:
mac mac-address
To detect the status of the PPPoE connection, you can enable the device to send a LCP Echo
request to the PPPoE server. If the device has not yet received response to the request from the
PPPoE server after timeout, it will send the request once again; if the retry times reach the spe-
cified number, and the device still did not receive any response, then the system will determine
the PPPoE server is disconnected, and identify the status of the PPPoE interface as disconnected.
To configure the timeout, in the instance configuration mode, use the following command:
p p p lcp -ech o -timeo ut timeout-value
l timeout-value – Specifies the timeout value. The value range is 1 to 1000 seconds. The
default value is 180.
To restore to the default timeout, in the instance configuration mode, use the following com-
mand:
no ppp lcp-echo-timeout
To configure the retry times, in the instance configuration mode, use the following command:
p p p lcp -ech o -retries times
l times – Specifies the retry times. The value range is 1 to 30. The default value is 10.
To restore to the default retry times, in the instance configuration mode, use the following com-
mand:
no ppp lcp-echo-retries
To enable the interface to obtain an IP address via PPPoE, in the interface configuration mode,
use the following command:
ip address p p p o e [setro ute]
To cancel the configuration, in the interface configuration mode, use the command no ip address
pppoe.
After binding the configured PPPoE instance to an interface, the interface will adopt the para-
meters of the instance to establish PPPoE connections. To bind the PPPoE instance to an inter-
face, in the interface configuration mode, use the following command:
p p p o e en ab le gro up group-name
To cancel the specified binding, in the interface configuration mode, use the command no pppoe
enable group.
To connect to or disconnect from the PPPoE, in the global configuration mode, use the following
command:
p p p o e-clien t gro up group-name {co n n ect | disco n n ect}
To view the PPPoE instance parameter information and the connection status, in any mode, use
the following command:
sh o w p p p o e-clien t {all | gro up group-name }
Requirement
The Hillstone device acts as the PPPoE and sends requests to the PPPoE server; the PPPoE
server returns response to the client.
Configuration Steps
Step 1: Create a PPPoE instance named pppoe1 and specify the parameters
hostname(config-pppoe-group)# exit
hostname(config)#
Step 2: Enable ethernet0/3 to obtain its IP address via PPPoE, and bind the PPPoE instance to
ethernet0/3
hostname(config-if-eth0/3)# zo n e un trust
hostname(config-if-eth0/3)# p p p o e en ab le gro up p p p o e1
hostname(config)#
Step 3: Create a schedule named schedule1, and enable ethernet0/3 to launch PPPoE con-
nections via on-demand dial-up from 9:00 to 15:30 everyday. The idle time of the on-demand
dial-up is 20 minutes
hostname(config-schedule)# exit
hostname(config)#
Overview
NAT (Network Address Translation) is a protocol for IP address translation in an IP packet
header. When the IP packets pass through a firewall or router, the device or router will translate
the source IP address and/or the destination IP address in the IP packets. In practice, NAT is
mostly used to allow the private network to access the public network, or vice versa. NAT has
the following advantages:
l Helps to solve the problem of IP address resources exhaustion by using a small number of
public IP addresses to represent the majority of the private IP addresses.
l Hides the private network from external networks, for the purpose of protecting private net-
works.
Typically private networks use private IP addresses. RFC1918 defines three types of private IP
addresses as follows:
IP addresses in the above three ranges will not be allocated on the Internet. You can use those IP
addresses in an enterprise network freely without requesting them from an ISP (Internet Service
Provider) or registration center.
When a firewall is implementing the NAT function, it locates between the public network and the
private network. Figure below illustrates the basic translation process of NAT.
BNAT can be seen as a combination of DNAT and SNAT, which uses just one rule to achieve
both source and destination translation.
In the packet processing flow, BNAT has precedence over DNAT. When a packet mataches a
BNAT rule, it follows the destination translation and source transaltion defined in that BNAT
rule. It will not check for other regular NAT rules. After it finishes BNAT mapping, it will start
to match policy.
To create a BNAT rule, under VRouter configuration mode, use the command below:
b n atrule [id id ] [b efo re id | after id | to p ] [ in terface interface-name ] [zo n e zone-name ] vir-
tual {ip { A.B.C.D/M | X:X:X:X:X::X/M } | address-b o o k address-name } real {ip { A.B.C.D |
A.B.C.D/M | X:X:X:X:X::X/M } | address-b o o k address-name } [gro up group-id ] [descrip -
tio n description ][sch edule schedule-name ]
l id id – Specifies an ID for this BNAT rule. Each BNAT has its unique ID. If you skip enter-
ing ID for it, the system will assign an ID number automatically. If you specify an existing ID,
the new rule will replace the existing rule.
l zonezone-name – Specifies the security zone to which the interface provided for Internet
user access is bound. After the configuration is completed, only the traffic that flows through
the interface bound to this security zone can continue to match the BNAT rule. By default,
the parameter is set to Any.
Note:
l The security zone must belong to the specified virtual router. In NAT configuration
mode, VRouter is trust-vr.
l group group-id - Specifies the HA group the BNAT rule belongs to. If the parameter is not
specified, the BNAT rule being created will belong to HA group0.
l description description – Specifies the description for this BNAT rule. You can specify at
most 63 characters.
For example, you can use the following command to implement BNAT translation. If Internet
traffic accesses the internal network, when the traffic matches the BNAT rule based on the secur-
ity zone to which the interface provided for Internet user access is bound, the traffic will be
DNATed. If traffic over the internal network accesses the Internet, when the traffic matches the
BNAT rule based on the security zone to which the interface provided for Internet user access is
bound, the traffic will be SNATed.
You can move an BNAT rule to modify the matching sequence. To move an BNAT rule, in the
VRouter configuration mode, use the following command:
b n atrule mo ve id {b efo re id | after id | to p | b o tto m}
l top – Moves the BNAT rule to the top of the BNAT rule list.
l bottom – Moves the BNAT rule to the bottom of the BNAT rule list.
You can associate an existing BNAT rule with a schedule or modify the schedule for a BNAT
rule. To specify a schedule for a BNAT rule, use the following command in VRouter con-
figuration mode/NAT configuration mode:
bnatrule ididscheduleschedule-name
In VRouter configuration mode/NAT configuration mode, use the no bnatrule ididschedule com-
mand to delete the schedule from a specified BNAT rule.
SNAT rules are used to specify whether to implement NAT on the source IP address of the
matched traffic. If NAT is implemented, you also need to specify the translated IP address and
translation mode. To configure an SNAT rule, in the VRouter configuration mode, use the fol-
lowing command:
sn atrule [id id ] [b efo re id | after id | to p ] [in gress-in terface interface-name ] [fro m-zo n e zone-
name] [to -zo n e zone-name] fro m src-address to dst-address [service service-name ] [eif egress-
interface | evr vrouter-name ] tran s-to {addressb o o k trans-to-address | eif-ip } mo de {static |
dyn amicip | dyn amicp o rt [sticky | ro un d-ro b in ]} [lo g] [gro up group-id ] [disab le] [ track
track-name ] [descrip tio n description ][sch edule schedule-name ]
l id id – Specifies the ID of the SNAT rule. Each SNAT rule has a unique ID. If the ID is not
specified, the system will automatically assign one. If the specified SNAT ID exists, the ori-
ginal rule will be overwritten.
l before id | after id | top – Specifies the position of the rule. The position can be top, before
id or after id. If the position is not specified, the rule would be located at the end of all the
SNAT rules. By default, the newly-created SNAT rule is located at the end of all the rules.
l ingress-interface interface-name – Specifies the ingress interface of the SNAT rule. When
the interface is specified, only the traffic from this interface will continue to match this SNAT
rule, and traffic from other interfaces will not.
l from-zonezone-name –Specifies the security zone to which the ingress interface of traffic
that matches the SNAT rule is bound. After the configuration is completed, only the traffic
l The source zone must belong to the specified virtual router. In NAT configuration
mode, VRouter is trust-vr.
l to-zonezone-name – Specifies the security zone to which the egress interface of traffic that
matches the SNAT rule is bound. After the configuration is completed, only the traffic that
flows through the interface bound to this security zone can continue to match the SNAT rule.
By default, the parameter is set to Any.
Note:
l The destination zone must belong to the specified virtual router. In NAT configuration
mode, VRouter is trust-vr.
l from src-address - Specifies the source IP address of the traffic. src-address should be
an IP address (IPv4 type or IPv6 type) or an address entry in the address book(IPv4
type or IPv6 type).
l service service-name – Specifies the service type of the traffic. service-name should
be a service defined in the service book.
Mode Description
static Static mode means one-to-one translation. This mode requires the
translated address entry (trans-to-address) contains the same num-
ber of IP addresses as that of the source address entry (src-
address).
Notes: When configuring a static source NAT66 rule, the min-
imum subnet mask must be 48 bits.
l log – Enables the log function for this SNAT rule (Generating a log when the traffic is
matched to this NAT rule).
l group group-id - Specifies the HA group the SNAT rule belongs to. If the parameter is not
specified, the SNAT rule being created will belong to HA group0.
l track track-name – Specifies a track object name that is configured in the system. After con-
figuring this option, the system will track whether the translated public address is valid. The
configured track object can be a Ping track object, HTTP track object, TCP track object. For
more details, see Configuring a Track Object of System Management. This function only sup-
ports dynamicport mode, and the translated address should be an IP address or an address in
address book (i.e., trans-to address book trans-to-address). The system will prioritize the
translated address which is tracked successfully. When a translated address failed to visit a
website or a host, it will be temporarily disabled until being tracked successfully again. When
the tracking object fails, the system will disable the address and generate a log in the next
tracking cycle, and no longer translate the private address to a public address until the address
restores to reachable. If all the address in the public address book of SNAT rules are unreach-
able, the system will not disable any translated address and generate a log.
l description description – Specifies the description for this SNAT rule. You can specify at
most 63 characters.
For example, you can use the following command to implement SNAT translation. If traffic over
the internal network accesses the Internet, the traffic will be SNATed based on the security zone
(trust is the security zone to which the ingress interface of traffic that
matches the SNAT rule is bound, untrust is the security zone to which the
egress interface of traffic that matches the SNAT rule is bound, 192. 168. 2. 23
is the source IP address, 1. 1. 12. 3 is the destination IP address, and 1. 1. 10. 6
is the SNATed source IP address. )
(SNAT translation: If traffic over the internal network accesses the Internet
from 192.168.2.23 to 1.1.12.3, when the traffic matches the SNAT rule, the
source address is converted to 1.1.10.6 and the destination address remains
unchanged.)
snat service not set, set to default Any
rule ID=1
For example, the following example achieves the interface-based NAT of ethernet0/0 in the
untrust zone:
To configure an SNAT rule that disables NAT, in the NAT configuration mode, use the following
command:
sn atrule [id id ] [b efo re id | after id | to p ] fro m src-address to dst-address [eif egress-interface
| evr vrouter-name ] n o -tran s [gro up group-id ] [descrip tio n description ]
To enable or disable an SNAT rule, under NAT configuration mode, use the following command:
sn atrule id id [en ab le | disab le]
Each SNAT rule is labeled with a unique ID. When traffic flows into the Hillstone device, the
device will query for SNAT rules in the list by turns, and then implement NAT on the source IP
of the traffic according to the first matched rule. However, the rule ID is not related to the match-
ing sequence during the query. The sequence displayed by the command show snat is the query
sequence for the matching. You can move an SNAT rule to modify the matching sequence. To
move an SNAT rule, in the NAT configuration mode, use the following command:
sn atrule mo ve id {b efo re id | after id | to p | b o tto m}
l top – Moves the SNAT rule to the top of the SNAT rule list.
l bottom – Moves the SNAT rule to the bottom of the SNAT rule list.
When the translation mode of SNAT is set to dynamicport, you can enable or disable the expan-
ded PAT port pool to expand the network address port resources after NAT. This function is dis-
abled by default. To enable the function, in the global configuration mode, use the following
command:
exp an ded-p o rt-p o o l
To disable the function, in the global configuration mode, use the following command:
n o exp an ded-p o rt-p o o l
l The function is only applicable to the SNAT rules that have not been enabled
yet; if the SNAT rule is already enabled, reboot the system to make the func-
tion take effect.
The function is only applicable to the SNAT rules that have not been enabled yet; if the SNAT
rule is already enabled, reboot the system to make the function take effect.
To delete the SNAT rule with the specified ID, in the NAT configuration mode, use the fol-
lowing command:
n o sn atrule id id
In the NAT configuration mode, use the following command to modify the description of a spe-
cific SNAT rule:
sn atrule id id descrip tio n description
l id – Specifies the ID of the SNAT rule whose description you want to modify.
l description description – Specifies the new description. You can enter at most 64 characters.
In the NAT configuration mode, use the following command to delete the description of a spe-
cific SNAT rule:
n o sn atrule id id descrip tio n
You can associate an existing SNAT rule with a schedule or modify the schedule for an SNAT
rule. To specify a schedule for an SNAT rule, use the following command in VRouter
l id– Specifies the ID of the SNAT rule that needs to reference a schedule.
In VRouter configuration mode/NAT configuration mode, use the no snatrule ididschedule com-
mand to delete the schedule from a specified SNAT rule.
The system can monitor the usage of a SNAT rule IP address's port resource usage and record
logs based on the configuration. This function is disabled by default.
To enable the monitor of SNAT rules' port resource usage, in the global configuration mode, use
the following command:
monitor-snat-port-resource rising-threshold threshold-value sample-period period-value
l rising-threshold threshold-value - Specifies the rising threshold. When the current port
resource usage exceeds the percentage threshold specified by this parameter, the system will
record a warning log. The value range is 1 to 99.
l sample-period period-value - Specifies the report period. The value range is 900 to 3600
seconds.
To disable the monitor of SNAT rules' port resource usage, in the global configuration mode, use
the following command:
no monitor-snat-port-resource
To view the SNAT rule port usage monitor function configuration, in the global configuration
mode, use the following command:
show monitor-snat-port-resource
To view the SNAT configuration information, in any mode, use the following command:
sh o w sn at [id id | vro uter vrouter-name ]
show snat [vrouter vrouter-name] [src src-address] [dst dst-address] [service service-name] [trans-
to trans-to-address] [description description]
l src src-address –Shows the SNAT configuration information of the specified source address.
l dst dst-address - Shows the SNAT configuration information of the specified destination
address.
l service service-name –Shows the SNAT configuration information of the specified service.
l trans-to trans-to-address - Shows the SNAT configuration information of the specified trans-
lated IP.
l description description –Shows the SNAT configuration information of the specified descrip-
tion.
To view the source utilization information, in any mode, use the following command:
sh o w sn at id id reso urce [ ip A.B.C.D ] [detail]
l resource – When the translation mode of SNAT is set to dynamicport, this parameter is used
to show the source utilization of the source port address pool.
l detail - Shows the detail information of port resource ultilization of the translation
address pool. Such as the allocated state, translation mode and port range.
To view the tracked failed information of SNAT translated address, in any mode, use the fol-
lowing command:
sh o w sn at track-failedslo t slot-number [vro uter vrouter-name ][ ip A.B.C.D [detail] | detail ]
sh o w sn attrack-failedcp u cpu-numb
l vrouter vrouter-name – Dispalys the tracked failed SNAT translated address of the specified
VRouter. If this parameter is not specified, the system will display the information of the
default VRouter (trust-vr).
l slot slot-number – Dispalys the tracked failed SNAT translated address of the specified slot.
l cpu cpu-number – Dispalys the tracked failed SNAT translated address of the specified
CPU.
DNAT rules are used to specify whether to implement NAT on the destination IP address of the
matched traffic. To configure a DNAT rule for NAT, in the VRouter configuration mode, use the
following command:
dn atrule [id id ] [b efo re id | after id | to p ] [in gress-in terface interface ] [fro m-zo n e zone-
name] fro m src-address to dst-address [service service-name ] tran s-to trans-to-address [p o rt
port ] [ { redirect | load-balance } [track-tcp port ] [track-p in g] | source-trans-to source-
l id id – Specifies the ID of the DNAT rule. Each DNAT rule has a unique ID. If the ID is
not specified, the system will automatically assign one. If the specified DNAT ID exists, the
original rule will be overwritten.
l before id | after id | top – Specifies the position of the rule. The position can be top,
before id or after id. If the position is not specified, the rule would be located at the end of all
the DNAT rules. By default, the newly-created DNAT rule is located at the end of all the
rules.
l ingress-interface interface – Specifies the ingress interface whose traffic will match this dnat
rule. When this interface is designated, only the traffic from this interface will continue to
match this DNAT rule. Traffic from other interfaces will not.
l from-zonezone-name –Specifies the security zone to which the ingress interface of traffic
that matches the DNAT rule is bound. After the configuration is completed, only the traffic
that flows through the ingress interface bound to this security zone can continue to match the
DNAT rule. By default, the parameter is set to Any.
Note:
l The source zone must belong to the specified virtual router. In NAT configuration
mode, VRouter is trust-vr.
l from src-address to dst-address [service service-name] – Specifies conditions of the rule that
the traffic should be matched. The conditions are:
l from src-address – Specifies the source IP address /netmask of the traffic. src-address
should be an IP address /netmask or an address entry in the address book.
l service service-name – Specifies the service type of the traffic. If the port number
needs to be translated together (specified by port port), the specified service can only
be configured with one protocol and one port. For example, the TCP port number can
be 80, but cannot be 80 to 100.
l redirect - Enables redirect for this DNAT rule, allows the destination IP address of the traffic
to be any.
l load-balance – Enables load-balance for this DNAT rule. The system will adopt persistent
algorithm to distribute traffic and balance the traffic to different servers in the internal net-
work based on the hash of user IP.
l track-tcp port – If this parameter is configured and the port number of the internal network
server is specified, the system will send TCP packets to the internal network server every 3
seconds to monitor if the specified port is reachable. If no response is returned for 3 packets
in succession, the system will conclude the server fails.
l mode {dynamicport | static} - Specifies the source address translation mode. The dynam-
icport mode will translate the same source IP to the same NAT address. If translation fails,
the system will select one randomly. The static mode means one-to-one translation. This
mode requires the number of source IP addresses be the same as that of translated IP
addresses.
l log – Enables the log function for this DNAT rule (Generating a log when the traffic is
matched to this NAT rule).
l [group group-id] - Specifies the HA group that the DNAT rule belongs to. If the parameter is
not specified, the DNAT rule being created will belong to HA group0.
l description description – Specifies the description for this DNAT rule. You can specify at
most 63 characters.
For example, you can use the following command to implement DNAT translation. If Internet
traffic accesses the internal network, the traffic will be DNATed based on the security zone to
which the ingress interface of the traffic is bound.
(DNAT translation: If Internet traffic accesses the internal network from 1.1.2.2
to 2.2.2.56, when the traffic matches the DNAT rule, the destination address is
converted to 192.168.4.56 and the source address remains unchanged.)
dnat service not set, set to default Any
rule ID=2
For example, the following command will translate the IP address of the request from addr1 to
the IP address of addr2, but will not translate the port number:
rule id=1
To configure a DNAT rule that disables NAT, in the NAT configuration mode, use the following
command:
dn atrule [id id ] [b efo re id | after id | to p ] fro m src-address to dst-address [service service-
name ] n o -tran s [gro up group-id ] [descrip tio n description ]
To enable or disable a DNAT rule, under NAT configuration mode, use the following command:
dn atrule id id [en ab le | disab le]
Each DNAT rule is labeled with a unique ID. When traffic flowing into the Hillstone device, the
device will query for DNAT rules by turns, and then implement NAT on the source IP of the
traffic according to the first matched rule. However, the rule ID is not related to the matching
sequence during the query. The sequence displayed by the command show dnat is the query
l top – Moves the DNAT rule to the top of the DNAT rule list.
l bottom – Moves the DNAT rule to the bottom of the DNAT rule list.
In the NAT configuration mode, use the following command to modify the description of a spe-
cific DNAT rule:
dn atrule id id descrip tio n description
l id – Specifies the ID of the DNAT rule whose description you want to modify.
l description description – Specifies the new description. You can enter at most 64 characters.
In the NAT configuration mode, use the following command to delete the description of a spe-
cific DNAT rule:
n o dn atrule id id descrip tio n
To delete the DNAT rule with the specified ID, in the NAT configuration mode, use the fol-
lowing command:
n o dn atrule id id
You can associate an existing DNAT rule with a schedule or modify the schedule for a DNAT
rule. To specify a schedule for a DNAT rule, use the following command in VRouter
l id– Specifies the ID of the DNAT rule that needs to reference a schedule.
In VRouter configuration mode/NAT configuration mode, use the no dnatrule ididschedule com-
mand to delete the schedule from a specified DNAT rule.
To view the DNAT configuration information, in any mode, use the following command:
sh o w dn at [id id | vro uter vrouter-name ][ src src-address ] [ dst dst-address ] [ service ser-
vice-name ] [ trans-to trans-to-address ] [ source-trans-to source-trans-to-address ]
[ trans-port port-number ] [ description description ]]
l src src-address –Shows the DNAT configuration information of the specified source
address.
l dst dst-address - Shows the DNAT configuration information of the specified destination
address.
l service service-name –Shows the DNAT configuration information of the specified service.
l trans-to trans-to-address - Shows the DNAT configuration information of the specified trans-
lated IP.
To show the information of the DNAT rule with load balancing configured, in any mode, use the
following command:
show load-balance rule [ id ]
l id – Shows the DNAT rule information (with load balancing) of the specified ID.
To view the status of the load-balancing server, in any mode, use the following command:
sh o w lo ad-b alan ce server [ ip-address ] [vro uter vrouter-name ]
l vrouter vrouter-name – Shows status of the load-balancing server of the specified VRouter.
If this parameter is not specified, the system will show status of the load-balancing server of
the default VRouter (trust-vr).
To view the status of the internal network server, in any mode, use the following command:
sh o w dn at server [ ip-address ] [vro uter vrouter-name ] [tcp -p o rt port ] [p in g]
l ip-address – Shows status of the internal network server of the specified IP address.
l vrouter vrouter-name – Shows status of the internal network server of the specified
VRouter. If this parameter is not specified, the system will show status of the internal net-
work server of the default VRouter (trust-vr).
l tcp-port port – Shows status of the internal network server of the specified port number.
By configuring the excluded port rules, you can rule out port or port range. The system will not
convert the specified port when the source address is translated.
To configure the excluding port function, take the following steps:
2. Configure the SNAT port group, and specify the description excluded port number.
3. Bind the SNAT port group to the specified VRouter to make the function take effect.
To create a SNAT port group, in the global configuration mode, use the following command:
sn at-p o rt-gro up snat-port-group-name
l snat-port-group-name - Specifies the SNAT port group name and enters the SNAT port group
configuration mode. If the specified name exists, then the system will directly enter the
SNAT port group configuration mode. The name range is 1 to 95 characters.
To delete a SNAT port group, in the global configuration mode, use the following command:
n o sn at-p o rt-gro up snat-port-group-name
To specify the description of SNAT port group, in the SNAT port group configuration mode, use
the following command:
descrip tio n description
l description – Specifies the description of SNAT port group, the range is 0 to 256 characters.
To specify the port range that needs to be excluded, in the SNAT port group configuration mode,
use the following command:
p o rt {TCP | U DP} min -p o rt min-port [max-p o rt max-port ]
l min-port min-port [max-port max-port]- Specifies the excluded port number. If the port num-
ber is a number range, then min-port is the minimum port number, and max-portis the max-
imum port number.
To cancel the above configuration, in the SNAT port group configuration mode, use the fol-
lowing command:
no port {TCP | U DP} min -p o rt min-port [max-p o rt max-port ]
After binding the SNAT port group to the specified VRouter, the SNAT rule of all dynamic ports
of the VRouter excludes the port number specified in the SNAT port group, in the VRouter con-
figuration mode, use the following command:
sn at-exclude-p o rt snat-port-group-name
To cancel the binding, in the VRouter configuration mode, use the following command:
no snat-exclude-port
To view the configuration information of SNAT port group, in any mode, use the following com-
mand:
sh o w sn at-p o rt-gro up [ snat-port-group-name ]
To view the SNAT port group references, in any mode, use the following command:
sh o w referen ce sn at-p o rt-gro up [ snat-port-group-name ]
l snat-port-group-name – Display the SNAT port group references of the specified name.
Redundancy Check
If a large amount of NAT rules pile up in the device and you are not sure whether to delete them,
this makes it more difficult to maintain these rules. To ensure the validity of NAT rules, the sys-
tem performs redundancy check on the NAT rules. In other words, the system checks the cov-
erage scope of NAT rules to solve the problem that certain NAT rules are overwritten and thus
cannot be hit.
To start/stop/clear redundancy check, use the following command in any mode:
exec {snat | dnat | bnat} redundancy-checkvroutervrouter-name {start | stop | clear}
l snat | dnat | bnat– Specifies the type of rules on which you want to perform redundancy
check.
l vroutervrouter-name– Specifies the virtual router to which SNAT rules, DNAT rules, or
BNAT rules belong.
l start– Specifies to start redundancy check on SNAT rules, DNAT rules, or BNAT rules.
l stop– Specifies to stop redundancy check on SNAT rules, DNAT rules, or BNAT rules.
l clear– Specifies to clear the results of redundancy check performed on SNAT rules, DNAT
rules, or BNAT rules.
In any mode, use the show {snat | dnat | bnat} redundancy-checkvroutervrouter-name com-
mand to view the redundancy check results of SNAT rules, DNAT rules, or BNAT rules.
Example:
Total count: 1(Displays the total number of redundant SNAT rules that belong
to the virtual router trust-vr)
VR name: trust-vr
===================================================
DNS Rewrite
When the client initiates a DNS request, DNS server in Internet will return DNS response to the
client. The security device can rewrite the IP address/host name in DNS response packet to
private IP in order to protect the private network configurations.
Each DNS rewrite rule has a unique ID. By specifying or adjusting the position of a rule ID, the
administrator can adjust the rule priority. When receiving a DNS response, the device will try to
match all rules from top to bottom and rewrite the response according to the rule that is matched
firstly.
l after id | beforeid | top - Specifies the position of the rule. The rule can be placed before or
after a specific ID, or placed on the top of all rules. By default, the rule is placed at the end of
all rules.
In NAT configuration mode, use the following command to delete a DNS rewrite rule:
no dns-rewrite-rule [idid]
In NAT configuration mode, use the following command to modify the description of a DNS
rewrite rule:
dns-rewrite-rule [id id] description description
Use the following command to delete the description of a DNS rewrite rule:
no dns-rewrite-rule [id id] description
In any mode, use show dns-rewrite-rule [id id | vrouter vr-name] dynamic-mapping to view DNS
rewrite rules:
l id id | vrouter vr-name– View the DNS rewrite rules of the specified ID or VRouter.
To adjust the priority of a DNS rewrite rule, in the NAT configuration mode, use the following
command:
dns-rewrite-rule move id {after id | before id | top | bottom}
l after id - Moves the DNS rewrite rule after the specified ID.
l before id - Moves the DNS rewrite rule before the specified ID.
l top - Moves the DNS rewrite rule to the top of the DNS rewrite rule list.
l bottom - Moves the DNS rewrite rule to the bottom of the DNAT rule list.
When a DNS response hits a DNS Rewrite rule, the device will rewrite the response based on the
DNS Rewrite rule and establish an entry to record the mapping relationships between the
response IP and the rewrite IP. Subsequent service requests will be translated based on the map-
ping relationships recorded. When the user adds, modifies or deletes a DNS Rewrite rule, rule pri-
orities might change. When an entry established by a previously hit rule matches a new rule:
l If DNS Rewrite rematch is enabled, the device will directly delete the previous entry.
l If DNS Rewrite rematch is disabled, the device will not delete the previous entry and sub-
sequent service requests might still hit the entry.
The DNS Rewrite rematch function is disabled by default. To enable this function, in the global
configuration mode, use the following command:
dns-rewrite-rule rematch
Use the following command to disable this function:
no dns-rewrite-rule rematch
Configuring NAT444
NAT444 on Hillstone devices is implemented by creating and executing SNAT rules. Compared
with traditional SNAT rules, NAT444 SNAT rules are featured with some new parameters. This
section mainly describes these new parameters. To configure an SNAT rule for NAT444, in the
VRouter configuration mode, use the following command:
sn atrule [id id ] [b efo re id | after id | to p ] fro m src-address to dst-address [service service-
name ] [eif egress-interface | evr vrouter-name ] tran s-to addressb o o k trans-to-address mo de
dyn amicp o rt [fixed-b lo ck | ran do m-b lo ck] start start-port en d end-port size port-block-size
[max-b lo ck-p er-user blocks ] [lo g {[p o rt-b lo ck {allo cate | release | all}] [sessio n {allo cate |
release | all}] | sessio n {allo cate | release | all} | all]} [gro up group-id ] [descrip tio n descrip-
tion ]
l l mode dynamicport [fixed-block | random-block] start start-port end end-port size port-
block-size [max-block-per-user blocks] – All the sessions originating from one source
IP will be mapped to one specified IP address in an address entry. The source IP cor-
responds to one or more port blocks of the mapped IP. If the port resources in the
block are exhausted, the translation will fail. For detailed mapping relationship, see the
NAT444 SNAT example below.
l fixed-block – Uses the static port block mapping mode . Each source IP address
corresponds to a fixed port block of the mapped IP.
l start start-port end end-port – Specifies the start port and end port of the avail-
able port range. The value range is 1024 to 65535.
l size port-block-size – Specifies the size of the port block. The value range is 64
to 64512, and the value must be the integer multiple of 64.
l log {[port-block {allocate | release | all}] [session {allocate | release | all}] | session
{allocate | release | all} | all]} – Configures log for NAT444 (generates logs for
matched traffic):
l port-block {allocate | release | all} – Generates logs when the system is alloc-
ating (allocate) or releasing (release) port block. all indicates generating logs for
both of the above events.
l session {allocate | release | all} – Generates logs when the system is creating
(allocate) or disconnecting (release) a NAT session. all indicates generating logs
for both of the above events.
l all – Generates log when the system is either allocating/releasing a port block or
creating/disconnecting a NAT session.
groupgroup-id | both - Specifies the HA group the SNAT rule belongs to. If the para-
meter is not specified, the SNAT rule being created will belong to HA group0. In the
static port block mapping mode (fixed-block), the both parameter can be specified.
rule id=1
------------------------------------------------------------------
==================================================-
===================
---------------------------------------------------------------------
……
……
The system can monitor the port utilization and port block utilization. When the real utilization is
higher than the specified threshold, the system will send the corresponding alarms. This monitor
function is available to all NAT444 rules.
To configure the port utilization or port block utilization monitor, in the global configuration
mode, use the following command:
n at444-reso urce mo n ito r {p o rt-utilizatio n th resh o ld value | p o rt-b lo ck-utilizatio n th resh o ld
value } lo g
l port-utilization threshold value – Specifies the threshold of the port utilization. When the
actual value is higher than the threshold specified here, the system will send the cor-
responding alarm. The value range is from 1 to 99.
l port-block-utilization threshold value – Specifies the threshold of the port block utilization.
When the actual value is higher than the threshold specified here, the system will send the cor-
responding alarm. The value range is from 1 to 99.
In the global configuration mode, use the command to cancel the monitor configuration.
n o n at444-reso urce mo n ito r {p o rt-utilizatio n | p o rt-b lo ck-utilizatio n }
To view SNAT rule information of NAT444, in any mode, use the following command:
sh o w sn at [id id ] p o rts-map {src src-address [detail] | tran s-to trans-to-address | vro uter
vrouter-name {src src-address [detail] | tran s-to trans-to-address }}
l src src-address – Shows the mapping information of the specified source IP.
l detail – Shows the mapping information of the specified source IP and port block utilization.
l vrouter vrouter-name - Shows the SNAT rule mapping information of the specified VRouter.
To view the IP addresses and port resources distribution mode, use the following command in
any mode:
sh o w flo w sn at-p o rt-allo catio n mo de
Full-cone NAT
Full-cone NAT, also known as one-to-one NAT, will map all the requests from one IP/port in
the private network to one IP/port in the public network, and thereafter all the hosts in the pub-
lic network will be able to communicate with the host that initiated the request by making use of
the mapping relationship.
As shown below, suppose PC1 in the Intranet has already established a connection with PC2 in
the Internet after NAT translation, and the device translates the IP/port of PC1 (Private IP:Priv-
ate port) to a public IP/port (Public IP:Public port). Since there exists a session, PC2 can connect
to PC1 reversely by matching the session. However, due to no session matching information, by
default PC3 and PC4 cannot communicate with PC1 even if the translated public IP/port (Public
IP:Public port) is routable. With Full-cone NAT enabled, the device will create and maintain a
Full-cone NAT entry and advertise the mapping between the public and private IPs/ports (Local
IP:Local port <==> Public IP:Public port) by the entry. In such a condition, if only PC3 and
PC4 can reach the public IP/port of PC1 (Public IP:Public port), they can tranverse the NAT
device and connect to PC1 proactively by making use of the mapping information.
To disable Full-cone NAT, in the global configuration mode, use the following command:
n o n at typ e full-co n e
To specify the protocol that is enabled with Full-cone NAT, in the global configuration mode,
use the following command:
n at p ro to co l {tcp | udp }
To cancel the configuration, in the global configuration mode, use the following command:
n o n at p ro to co l {tcp | udp }
To view the configuration information of Full-cone NAT, in any mode, use the following com-
mand:
l entry [all |src-ip ip-address [src-port port-number protocol {tcp | udp} snat-id [interfaceinter-
face-name]]| vr vrouter-name]
l vr vrouter-name - Shows the detailed information of Full-cone NAT entry of the spe-
cified VRouter. If not specified, the system will show the Full-cone NAT entry inform-
ation of trust-vr by default.
l control - Shows the status of the following functions: full-cone NAT, expanded PAT
port pool, SNAT port split under HA peer mode and "Bounce NAT" on Page 249.
l vrouter vrouter-name - Shows the status of Bounce NAT of the specified VRouter. If
not specified, the system will show the status of Bounce NAT of trust-vr by default.
Bounce NAT
Suppose the HTTP server is deployed in the intranet and users from the internet try to access the
server via the configured DNAT rules as shown in the following picture. When the intranet PC1
With the Bounce NAT function, the above problem can be solved. Only the request matches the
following conditions can the function be triggered. With the function, the source IP address in
the request packet will be modified as the IP address of egress interface (such as eth0/0:
192.168.1.1 in the above picture), and then the PC in the intranet will access the intranet server
normally. The conditions are as follows:
By default, the Bounce Nat function is enabled. To disable the function, in the VRouter con-
figuration mode, use the following command:
bounce-snat-disable
Use the command no bounce-snat-disable to enable the Bounce NAT function.
The company network is divided into three zones by a Hillstone device: Trust Zone, DMZ Zone
and Untrust Zone. Employees work in the Trust zone, they are allocated with the private network
segment of 10.1.1.0/24 and get the highest security priority; WWW server and FTP server are in
the DMZ zone, they are allocated with the private network segment of 10.1.2.0/24 and can be
accessed by internal employees and external users; external networks are in the Untrust zone. The
network topology is shown in Figure below:
l Requirement 1: Employees in segment 10.1.1.0/24 in the trust zone are able to access the
Internet, while PCs in other segments of the zone cannot access the Internet. The legitimate
IP address range provided to access the external network is 202.1.1.3 to 202.1.1.5. Because
there are not enough public network addresses, NAT address multiplexing function is needed.
l Requirement 2: Two internal servers are provided for users and can be accessed from the
external networks, including an FTP server (the internal IP address is 10.1.2.2, port number is
l Requirement 3: After any PC in the Trust zone has gained access to the host in the Untrust
zone, all the hosts in the Untrust zone can connect to the PC in the Trust zone reversely by
making use of Full-cone NAT.
Configuration Steps
hostname# co n figure
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# zo n e un trust
hostname(config-if-eth0/2)# exit
hostname(config-if-eth0/3)# zo n e dmz
hostname(config-if-eth0/3)# exit
hostname(config)#
hostname(config-addr)# ip 10.1.1.1/24
hostname(config-addr)# exit
hostname(config-addr)# exit
hostname(config-addr)# ip 202.1.1.6/32
hostname(config-addr)# exit
hostname(config-addr)# ip 10.1.2.2/32
hostname(config-addr)# exit
hostname(config-addr)# ip 10.1.2.3/32
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# exit
hostname(config)#
rule id=1
rule id=2
rule id=3
hostname(config-vrouter)# exit
Overview
Hillstone devices provide a wide range of application layer monitoring, statistics and filtering func-
tions. These functions can identify applications such as FTP, HTTP, P2P, IM tools and VoIP,
and based on the security policy rules configured, ensure the proper communication of the applic-
ations or perform the specified operations on the traffic, such as monitoring, statistics, traffic con-
trol and blocking. By making use of the fragment reassembling and transport layer proxy
technique, the Hillstone devices can adapt to the complex network environment, reassemble the
packets, and identify the applications effectively even when the complete application layer data is
fragmented and disordered during the transmission, thus ensuring the effective implementation of
security policies.
Fragment Reassembly
Typically the intermediate network device such as a router or switch does not reassemble the frag-
mented packets it receives. The destination host reassembles the fragmented packets after all the
fragments have arrived. Due to the complexity of the network environment, fragmented packets
may be dropped or disordered during the transmission, while the reassembling needs to receive
and sort all the fragments, which will consume certain system resources. From the aspect of the
main function and forwarding efficiency, the network devices usually only forward the fragments
and will not reassemble them. However, for security devices, the application of security policies
requires an analysis of application layer information, in order to filter the malicious messages that
contain potential security risks, or block any attempt of intrusions and attacks. All the operation
will only be finally determined after the device receives the complete information of the applic-
ation layer. Powered by the transport layer proxy function, StoneOS can buffer, sort and reas-
semble the fragmented packets first, and then re-encapsulate and forward the normal data after a
complete analysis and identification.
Some applications use multi-channels for data transmission, such as the widely used FTP. In such
a condition the control channel and data channel are separated. Hillstone devices under strict
l Under strict security policy rules, ensures the normal communication of multi-channel applic-
ations, such as FTP, TFTP, PPTP, RTSP, RSH, MSRPC, SUNRPC and SQLNET.
l Ensures the proper operation of VoIP applications such as SIP and H.323 in NAT mode, and
performs monitoring and filtering according to the policies.
Powered by the fragment reassembly and transport layer proxy functions, StoneOS supports the
identification and control of 3 main types of applications: HTTP applications, P2P applications
and IM applications. The Hillstone devices can perform various operations like monitoring,
restricting and blocking traffic on each application by creating Profiles. For example:
l Filtering HTTP Java Applets to ensure users are protected from harmful Java Applets.
l Filtering HTTP ActiveX to prevent malicious ActiveX programs from damaging the user's sys-
tem.
l Identifying, monitoring and blocking P2P applications, like BT, eMule, Thunder, etc.
Configuring ALG
StoneOS allows you to enable or disable ALG for different applications. Hillstone devices sup-
port ALG for the following applications: FTP, HTTP, MSRPC, PPTP, Q.931, RAS, RSH, RTSP,
SIP, SQLNetV2, SUNRPC, TFTP, DNS, H323 and XDMCP. You can not only enable or disable
ALG for applications, but also specify H323's session timeout.
To enable or disable the ALG control function for applications, in the global configuration mode,
use the following command:
Enable: alg {all | auto | TFTP | FTP | RSH |…}
Disable: no alg {all | auto | TFTP | FTP | RSH | …}
l all – Enables or disables the ALG control function for all the applications.
l auto – Enables or disables the ALG control function based on the result of application iden-
tification.
l TFTP | FTP | RSH | … - Enables or disables the ALG control function for the specific
application.
Notes: If ALG for HTTP is disabled, the Web content filter function on the device
will be void.
ALG supports strict mode and non-strict mode. In the strict mode, the newly-created pinhole has
the SNAT port which is the same as the SNAT port of the control session. By default, the strict
mode is enabled. To enable the ALG strict mode, use the following command in the global con-
figuration mode:
alg strict-mo de
Use the no alg strict-mode command to enable the non-strict mode. In the scenario below, Hill-
stone recommends the users to enable the non-strict mode:
l The IP address and port number in the payload for negotiating the data session is the same as
the IP address and port number of the control session.
To specify the timeout value for the H323 protocol, in global configuration mode, use the fol-
lowing command:
alg h 323 sessio n -time time-value
l time-value - Specifies the timeout value for H323. The value range is 60 to 1800 seconds.
The default value is 60.
To cancel the specified timeout value, in global configuration mode, use the following command:
n o alg h 323 sesstio n -time
To limit the number of the SIP messages that can be processed per second, use the following com-
mand in the global configuration mode:
Enable: alg sip-message-rate number
l number - Specifies the maximum number of the SIP messages that can be processed per
second. The value is in the range of 1 to 65535.
l To view the ALG configuration and status of SIP gateway: show alg sip-capacity
The Session Initiation Protocol (SIP) is a communications protocol for signaling and controlling
multimedia communication sessions. The most common applications of SIP are in Internet tele-
phony for voice and video calls. Multimedia transitted by SIP usually are voice, video and text.
SIP proxy server acts as an intermediary entity when the SIP user agent clients are making
requests. When SIP user agent clients exchange media data packets, they can transfer data with or
without a SIP proxy server. To avoid communication error, the firewall should select a mode that
complies with the actural data transmission mode.
Under global configuration mode, use the command below to inform the firewall that SIP user
agent clients are communicating media data directly without SIP proxy server. This is the default
setting on the firwall. This command ensures normal communication among SIP user agents.
n o alg sip media-p ro xied-b y-server
Under global configuration mode, use the command below to inform the firewall that SIP user
agent clients are exchanging media data packets through SIP proxy server.
alg sip media-p ro xied-b y-server
To show ALG SIP information, including if the firewall has enabled SIP server proxy, SIP mes-
sage rate maximum, registered client number and busy client number, under any mode, use the fol-
lowing command:
l Example 1: The goal is to strictly restrict internal users’ access to TFTP, FTP and RTSP ser-
vices running on the external network only on the well-known ports, while also ensuring the
normal communication of these applications on multiple channels.
l Example 2: The goal is to block ActiveX controls and Java applets from the external network.
The address entry “internal” includes all the IPs of internal clients
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# exit
hostname(config)#
hostname(config-bhv-profile)# exit
hostname(config)#
hostname(config-policy)# rule
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
l A physical LAN can be divided into multiple VLANs, and a VLAN might include devices
from multiple physical networks.
l A VLAN is virtually a broadcast domain. Layer 2 packets between VLANs are isolated. Com-
munications between VLANs can only be implemented by Layer 3 route technique (through
routers, Layer 3 switches or other Layer 3 network devices).
VLANs are differentiated by VLAN numbers. The value range is 1 to 4094. StoneOS reserves 32
VLAN numbers (224 to 255) for BGroup, but the unused numbers within the range are also avail-
able to VLANs.
Configuring a VLAN
The configurations of VLAN include:
l Creating a VLAN
Creating a VLAN
To create one or more VLANs, in the global configuration mode, use the following command:
vlan vlan-list
l vlan-list – Specifies the VLAN ID. The value range is 1 to 4094 (the IDs being used by
BGroup is not available any more).
To delete the specified VLAN, in the global configuration mode, use the following command:
n o vlan vlan-list
l The interface in Access mode is designed for terminal users and only allows packets from one
VLAN to pass through.
l The interface in Trunk mode is typically used for inter-connections between devices, and
allows packets from multiple VLANs to pass through. When Native VLAN is configured, the
interface will delete the tag of the Native VLAN packets being transmitted, and add a Native
VLAN tag to the received packets with no tag set.
To configure the switch mode of an interface and the VLAN it belongs to, in the Ethernet inter-
face configuration mode, use the following commands:
switch mo de {access vlan vlan-id | trun k {vlan vlan-list [n ative-vlan vlan-id ] | n ative-vlan
vlan-id }}
l access vlan vlan-id – Configures the switch mode as Access and specifies the VLAN the
interface belongs to.
l trunk vlan vlan-list [native-vlan vlan-id] – Configures the switch mode as Trunk, and spe-
cifies the VLAN that is allowed to pass through (and the Native VLAN of the interface).
l trunk native-vlan vlan-id – Configures the switch mode as Trunk, and specifies the Native
VLAN of the interface.
To cancel the configuration, in the Ethernet interface or aggregation interface configuration mode,
use the following commands:
VLAN interfaces are Layer 3 interfaces. One VLAN is matched to one VLAN interface, and the
VLAN interfaces allow Layer 3 communications among VLANs. To create a VLAN interface, in
the global configuration mode, use the following command:
interface vlanid
l id – Specifies the VLAN ID for the VLAN interface. After executing the command, the sys-
tem will create the specified VLAN interface and enter VLAN interface configuration mode;
if the specified VLAN interface exists, the system will directly enter the VLAN interface con-
figuration mode.
To cancel the specified VLAN interface, in the global configuration mode, use the command no
interface vlanid.
As shown above, one super-VLAN may include multiple sub-VLANs, while one sub-VLAN can
only correspond to one super-VLAN; one sub-VLAN may include multiple interfaces, and one
interface can be bound to multiple sub-VLANs (VLANs).
Configuring a Super-VLAN
The configurations of a Super-VLAN include:
l Adding a sub-VLAN
Creating a Super-VLAN
To create a super-VLAN, in the global configuration mode, use the following command:
sup ervlan sup ervlan X
l X – Specifies the ID of the super-VLAN. The value range of X may vary from different plat-
forms.
After executing the above command, the system will enter the super-VLAN configuration mode.
To delete the specified super-VLAN, in the global configuration mode, use the following com-
mand:
n o sup ervlan sup ervlan X
The super-VLAN interface is actually a Layer 3 interface. One super-VLAN can correspond to
one super-VLAN interface. The Layer 3 communications between different sub-VLANs are imple-
mented over the corresponding super-VLAN interface. To create a super-VLAN interface, in the
global configuration mode, use the following command:
in terface sup ervlan X
To delete the specified super-VLAN interface, in the global configuration mode, use the com-
mand no interface supervlanX.
To add a sub-VLAN to the super-VLAN, in the super-VLAN configuration mode, use the fol-
lowing command:
subvlan vlan-list
l vlan-list – Specifies the ID or ID range (e.g., 2-4) of the sub-VLAN. The value range is 1 to
4094.
To delete the specified sub-VLAN from the super-VLAN, in the super-VLAN configuration
mode, use the command no subvlan vlan-list.
l show supervlan
Configuring RSTP
The configurations of RSTP include:
l Creating RSTP
l Enabling RSTP
To create RSTP and enter the RSTP configuration mode, in the global configuration mode, use
the following command:
stp
The command creates RSTP and leads you to the RSTP configuration mode; if the RSTP is exist-
ing, the system will directly enter the RSTP configuration mode.
To delete RSTP, in the global configuration mode, use the command no stp.
The RSTP function is a global switch. You need to enable both the global function switch and the
interface RSTP switch to control RSTP function jointly. By default, RSTP is disabled on the
device. To enable RSTP, in the RSTP configuration mode, use the following command:
en ab le
To disable RSTP, in the RSTP configuration mode, use the command no enable.
To configure the bridge priority, in the RSTP configuration mode, use the following command:
b ridge p rio rity value
To restore to the default bridge priority, in the RSTP configuration mode, use the following com-
mand:
n o b ridge p rio rity
Hello packets are used to confirm whether the link between devices is normal. The Hello interval
is used to specify how often the device sends a Hello packet. To configure the Hello interval, in
the RSTP configuration mode, use the following command:
h ello seconds
l seconds – Specifies the Hello interval. The value range is 1 to 10 seconds. The default value
is 2.
To restore to the default Hello interval, in the RSTP configuration mode, use the following com-
mand:
n o h ello
When any link fails, the system will re-calculate the spanning tree network. It’s impossible for
the system to spread the new BPDU (Bridge Protocol Data Unit, used for data exchanging
between bridges) configuration information throughout the network immediately, so if the data
transmission starts too early, it may cause a temporary loop. To avoid such a problem, RSTP
defines a forwarding delay timer, i.e., the forward delay time.
To configure the forward delay time, in the RSTP configuration mode, use the following com-
mand:
fo rward-delay value
To restore to the default forward delay time, in the RSTP configuration mode, use the following
command:
n o fo rward-delay
The maximum age of BPDU messages indicates the lifetime of a BPDU message on the device.
When the lifetime runs out, the BPDU message will be deleted.
To configure the maximum age of BPDU message, in the RSTP configuration mode, use the fol-
lowing command:
maximum-age value
l value – Specifies the maximum age of BPDU message. The value range is 6 to 40 seconds.
The default value is 20.
To restore to the default maximum age, in the RSTP configuration mode, use the following com-
mand:
n o maximum-age
To configure the RSTP priority on an interface, in the Ethernet interface or aggregate interface
configuration mode, use the following command:
stp p rio rity value
l value – Specifies the RSTP priority of the current interface. The value must be the integer
multiples of 16. The value range is 0 to 240. The default value is 128.
To restore to the default RSTP priority, in the Ethernet interface or aggregate interface con-
figuration mode, use the following command:
n o stp p rio rity
To configure the RSTP cost on an interface, in the Ethernet interface or aggregate interface con-
figuration mode, use the following command:
stp co st value
l value – Specifies the RSTP cost value on the interface. The value range is 1 to 200000000.
If this parameter is not specified, the system will calculate a value based on the interface type
(a single interface or aggregate interface), speed (10Mbps, 100Mbps or 1000Mbps) and duplex
status (full-duplex or half-duplex).
To restore to the default RSTP cost (calculated based on the above factors), in the Ethernet inter-
face or aggregate interface configuration mode, use the following command:
n o stp co st
Configuration Example
The section describes a RSTP example.
Requirement
As shown below, the Hillstone device acts as gateway and is connected to Internet. The require-
ment is: when the link between Switch1 (or Switch2) and the Hillstone device fails, enable STP
on the switches and device to implement the Layer 2 link redundancy, and ensure the PC in the
LAN is still able to access the Internet.
First, ensure that STP on Switch1 and Switch2 can function properly, and then take the following
steps:
Step 1: Create a VLAN named VLAN1, and add ethernet0/1 and ethernet0/3 to VLAN1
hostname(config)# vlan 1
hostname(config-vlan)# exit
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/3)# exit
hostname(config)#
Step 2: Create a VLAN interface named vlan1, bind it to the zone trust and configure the IP
address
hostname(config-if-vla1)# exit
hostname(config)#
Step 3: Ethernet0/0 belongs to the zone untrust. Configure the policy rule from trust to untrust
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
hostname(config)# stp
hostname(config-stp)# en ab le
hostname(config-stp)# exit
hostname(config)#
Introduction
SG-6000-E1100 (WLAN version), SG-6000-E1100 (3G version), SG-6000-E1100 (WLAN+3G
version) and SG-6000-A200W (WLAN version) support the wireless access mode. You can use
the wireless mode to access the network. This chapter introduces the following functions:
WLAN
WLAN (Wireless Local Area Network) represents the local area network that uses the wireless
channel as the medial. WLAN is important supplements and extensions of the wired LAN. By con-
figuring the WLAN function, you can establish the wireless local area network and allow the users
to access LAN through wireless mode.
WLAN Profile is the combination of the WLAN settings. To implement the WLAN function,
configure the WLAN Profile and then apply the configure WLAN Profile to the WLAN interface.
One WLAN Profile can only be applied to one WLAN interface. The WLAN settings contain the
following sections:
l Creating and configuring the WLAN Profile. The WLAN Profile contains the corresponding
attributes of wireless service, including SSID, enabling/disabling SSID broadcast, security
mode, authentication encryption method, user isolation, maximum user numbers, and authen-
tication server.
l Configuring the global parameters of WLAN function, such as country/region code, wireless
mode, channel, maximum transmission power, wireless multimedia.
By default, the WLAN function is enabled. Use wlan to enter the WLAN configuration mode. To
enable the WLAN function, use the following command in the WLAN configuration mode:
wlan en ab le
To create the WLAN Profile, use the following command in the global configuration mode:
wlan p ro file number
l number- Specifies the number of the WLAN Profile. After executing this command, the sys-
tem will create the WLAN Profile of the specified number and enter the WLAN Profile con-
figuration mode. If the specified number already exists, the system will enter the WLAN
Profile configuration mode directly. The value ranges from 0 to 3, thus allowing up to 4
WLAN Profiles.
To delete the specified WLAN Profile, use the following command in the global configuration
mode:
no wlan profile number
Configuring SSID
SSID (Service Set Identifier) is the name of the WLAN, which is used to distinguish among dif-
ferent networks.
To configure SSID, use the following command in the WLAN Profile configuration mode:
To delete the SSID in the WLAN Profile, use the following command in the WLAN Profile con-
figuration mode:
n o ssid
After enabling SSID broadcast, any user can search it. After disabling the SSID broadcast, users
cannot discover it. By default, the system enables the SSID broadcast.
To enable the SSID broadcast, use the following command in the WLAN configuration mode:
b ro adcast en ab le
To disable the SSID broadcast, use the following command in the WLAN Profile configuration
mode:
n o b ro adcast en ab le
To configure the security mode and authentication encryption method, use the following com-
mand:
security {n o n e | wep auth en ticatio n {o p en -system | sh ared-key} {wep 40|wep 104}{p ass-
p h rase | raw-key} key | {wp a | wp a2 |wp a-wp a2 | wp a-p sk | wp a2-p sk | wp a-wp a2-p sk |
mac-p sk} en cryp tio n {tkip | ccmp | tkip -ccmp }[ p re-sh ared-key { p ass-p h rase | raw-key}
p sk ]}
l open-system | shared-key – Specifies the authentication mode, including the open sys-
tem authentication (open-system) and shared key authentication (shared-key).
l {pass-phrase | raw-key} key – Specifies the key form and the key value. pass-
phrase represents to use character string as the key and raw-key represents to use
hexadecimal number as the key. The key length of different configuration combinations
is as follows: wep40 pass-phrase (5 characters), wep40 raw-key (10 hexa-
decimal numbers), wep104 pass-phrase (13 characters), wep104 raw-key
(26 hexadecimal numbers).
l wpa | wpa2 | wpa-wpa2 – WPA, WPA, and WPA-WPA2 are used for 802.1X authen-
tication. WPA-WPS2-PSK is compatible with WPA and WPA-2.
l tkip | ccmp | tkip-ccmp – Specifies the data encryption method. ccmp has higher
security, while tkip-ccmp has higher compatibility. Hillstone recommend you to
use the ccmp method.
l pre-shared-key { pass-phrase | raw-key} psk – Specifies the form and the value of the pre-
defined key. The pre-defined key length of different types is as follows: pass-phrase (8-
63 characters), raw-key (64 hexadecimal numbers).
After enabling the user isolation, users within one WLAN cannot access each other. User isolation
enhances the security for different users. By default, the user isolation function is disabled. To
enable the use isolation function, use the following command in the WLAN Profile Configuration
mode:
statio n -iso latio n en ab le
To disable this function, use the following command in the WLAN Profile configuration mode:
n o statio n -iso latio n en ab le
To specify the allowed maximum number of users that can access this WLAN, use the following
command in the WLAN Profile configuration mode:
statio n -max-n umb er number
l number – Specifies the allowed maximum number of users. The value ranges from 1 to 128,
and the default value is 64.
To restore the setting to the default value, use the following command:
n o statio n -max-n umb er
When specifying the security mode as WPA, WPA2, WPA-WPA2, or MAC-PSK, you must select
a configured AAA server as the authentication server for user identification. Use the following
command in the WLAN Profile mode to select the AAA server:
radius-server server-name
To delete the specified authentication server, use the following command in the WLAN Profile
configuration mode:
n o radius-server server-name
The WLAN function can take effect after you bind the WLAN Profile to a WLAN interface. To
bind the WLAN Profile to a WLAN interface, take the following steps in the interface con-
figuration mode:
wlan profile number
l number - Specifies the number of the WLAN Profile that is bound to the current WLAN inter-
face. After executing this command, the system binds the WLAN Profile of the specified num-
ber to the WLAN interface.
To cancel the binding, use the following command in the interface configuration mode:
n o wlan p ro file
Different countries or regions have different management and limitations on RF use. The coun-
try/region code determines the available frequency range, channel, and legal level of transmit
power. To configure the country/region code, use the following command in the WLAN con-
figuration mode:
co un try-zo n e-co de code
AL Albania
DZ Algeria
AR Argentina
AM Armenia
AU Aruba
AT Australian
AZ Austria
BS Azerbaijan
BH Bahrain
BD Bangladesh
BB Barbados
BY Belarus
BE Belgium
BZ Belize
BM Bermuda
BO Bolivia
BR Brazil
BN Brunei
BG Bulgaria
KH Cambodia
CA Canada
CL Chile
CN China
CO Columbia
CR Costa Rica
HR Croatia
CY Cyprus
CZ Czechoslovakia
DK Denmark
DO Dominican Republic
EC Ecuador
EG Egypt
SV Salvador
EE Estonia
FI Finland
FR France
GF French Guiana
PF French Polynesia
GE Georgia
DE Germany
GR Greece
GL Greenland
GD Grenada
GP Guadalupian
GU Guam
GT Guatemala
HT Haiti
HN Honduras
HK Hong Kong
HU Hungary
IS Iceland
IN India
ID Indonesia
IR Iran
IE Ireland
IL Israel
IT Italy
JM Jamaica
JP Japan
JO Jordan
KZ Kazakhstan
KE Kenya
KP North Korea
KR South Korea
KW Kuwait
LV Latvia
LB Lebanon
LI Liechtenstein
LT Lithuania
LU Luxembourg
MO Macao
MK Macedonia
MW Malawi
MY Malaysia
MT Malta
MQ Martinique
MU Mauritius
YT Mayotte
MX Mexico
MC Monaco
MA Morocco
NP Nepal
NL Netherlands
AN Netherlands Antilles
NZ New Zealand
NI Nicaragua
NO Norway
OM Oman
PK Pakistan
PA Panama
PY Paraguay
PE Peru
PH Philippines
PL Poland
PT Portugal
PR Puerto Rico
QA Qatar
RE Reunion
RO Rumania
RU Russia
RW Rwanda
SA Saudi Arabia
RS Serbia
ME Montenegro
SG Singapore
SK Slovakia
SI Slovenia
ZA South Africa
ES Spain
LK Sri Lanka
SE Sweden
CH Switzerland
SY Syria
TW Taiwan
TZ Tanzania
TH Thailand
TN Tunisia
TR Turkey
UG Uganda
UA Ukraine
GB United Kingdom
US United States
UY Uruguay
UZ Uzbekistan
VE Venezuela
VN Vietnam
YE Yemen
ZW Zimbabwe
To restore the setting to the default value, use the following command in the WLAN Profile con-
figuration mode:
no country-zone-code
To configure the operation mode, use the following command in the WLAN configuration mode:
radio -typ e {do t11a | do t11an | do t11b | do t11b gn | do t11g}
l dot11a – Specifies the operation mode as dot11a, which represents that the interface works
in the 802.11a mode.
l dot11an – Specifies the operation mode as dot11an, which represents that the interface
works in the 802.11n mode of 5GHz.
l dot11b – Specifies the operation mode as dot11b, which represents that the interface works
in the 802.11b mode.
l dot11bgn – Specifies the operation mode as dot11bgn, which represents that the interface
works in the 802.11n mode of 2.4GHz.
l dot11ac - Specifies the operation mode as dot11ac, which indicates that the wireless interface
works in 5GHz 802.11AC mode (Only supported by SG-6000-A200W).
The available channels you can select vary with the country/region code and RF type. When con-
figuring the channels, use the following command in the WLAN configuration mode:
ch an n el {auto | ch an n el-n umb er}
l auto – Asks the system to select the channel automatically. After the country/region code or
the operation mode is changed, the system will select the channel automatically.
Sg-6000-A200W doesn't support to configure maximum transmit power and its default value is
100% of the maximum transmit power. The maximum transmit power varies with the coun-
try/region code and RF type. By default, there are four levels: 12.5% of the maximum transmit
power, 25% of the maximum transmit power, 50% of the maximum transmit power, and 100% of
the maximum transmit power. To configure the maximum transmit power, use the following com-
mand in the WLAN configuration mode:
p o wer-man agemen t level {1 | 2 | 3 | 4}
After enabling the wireless multimedia function, the system will raise the transmission priorities
of the multimedia traffic such as audio and video. By default, the system has enabled wireless mul-
timedia function. To enable this function, use the following command in the WLAN con-
figuration mode:
wmm en ab le
To view the WLAN settings, use the show command in any mode.
l View the information of the WLAN station: show wlan-station [interface interface-name][mac
mac-address]
Requirement
Create a WLAN through the Hillstone device and ensure the users can access the LAN through
wireless mode. The Hillstone device uses the routing mode. The ethernet0/1 uses the PPPoE
mode to dial up and creates the WLAN whose SSID is test.
hostname(config-dhcp-server)# dn s 192.168.2.1
hostname(config-dhcp-server)# exit
hostname(config-pppoe-group)# exit
hostname(config-if-wla0/1)# zo n e trust
hostname(config-if-wla0/1)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# p p p o e en ab le gro up p p p o e1
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config-dns-proxy-rule)# src-addr an y
hostname(config-dns-proxy-rule)# dst-addr an y
hostname(config-dns-proxy-rule)# do main an y
hostname(config-dns-proxy-rule)# actio n p ro xy
hostname(config-dns-proxy-rule)# exit
hostname(config-if-wla0/1)# dn s-p ro xy
hostname(config-if-wla0/1)# exit
hostname(config-vrouter)# sn atrule id 1 fro m an y to an y eif eth ern et0/1 tran s-to eif-
ip mo de dyn amicp o rt sticky
rule id=1
hostname(config-vrouter)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)#
Step 6: Enable the WLAN function. By default, the WLAN function is enabled already
hostname(config)# wlan
hostname(config-wlan)# wlan en ab le
hostname(config-wlan)# exit
hostname(config)#
hostname(config-wlan)# exit
hostname(config)#
hostname(config-aaa-server)# h o st 202.10.1.2
hostname(config-aaa-server)# exit
hostname(config-wlan)# exit
hostname(config)#
hostname(config-if-wla0/1)# exit
hostname(config)#
3G/4G
The third generation of mobile telecommunications technology supports the high speed data trans-
mission. By configuring the 3G/4G function, users can access the Internet through wireless
mode.
Before the 3G/4G dial-up, you must configure the APN (access potion name). You need to
obtain the specific value of the APN from the ISP. To configure the APN, use the following com-
mand in the SIM card configuration mode:
ap n apn-name
In the SIM card configuration mode, use the following command to delete the configuration of
the APN:
n o ap n
Tip: To enter the SIM card configuration mode, use the simcommand.
By default, the 3G/4G function is enabled. After enabling the 3G/4G function, the system can
trigger the 3G/4G dial-up. To enable the 3G/4G function, use the following command in the
3G/4G (cellular) interface configuration mode:
cellular enable
To disable the 3G/4G function, use the following command in the 3G/4G (cellular) interface
configuration mode:
cellular disable
Tip: To enter the 3G/4G (cellular) interface configuration mode, use the com-
mand interface cellular0/0.
You can specify the connection mode for the 3G/4G network, including 2G (GSM), 3G
(WCDMA, CDMA2000, TD-SCDMA), 4G(FDD-LTE, TDD-LTE) and auto-adaption mode. By
default, the system uses the auto-adaption mode. To specify the 3G/4G connection mode, use
the following command in the 3G/4G (cellular) interface configuration mode:
co n n ect-mo de {2G-o n ly | 3G-o n ly | 4G-o n ly | auto }
In the 3G/4G (cellular) interface configuration mode, use the following command to restore the
connection to the default option:
n o co n n ect-mo de
Ask your ISP to provide the dial-up string. To configure the dial-up string, use the following com-
mand:
dial dial-number
l dial-number – Specifies the dial-up number. The value ranges from 1 to 31 characters.
To restore the dial-up number to the default value, use the following command in the 3G/4G (cel-
lular) mode:
n o dial
When 3G/4G dial-up establishes the connection, it needs to pass the PPP protocol verification.
The device supports the following verification method: CHAP, PAP, and Any. To specify the
l any - Uses the verification method of CHAP or PAP. any is the default option.
To restore the verification method to the default option, use the command no ppp
authentication.
To specify the route distance and weight, use the following command in the 3G/4G (cellular)
interface mode:
p p p ro ute {distan ce value | weigh t value }
l distance value – Specifies the route distance. The value ranges from 1 to 255. The default
value is 1.
l weight value – Specifies the route weight. The value ranges from 1 to 255. The default value
1.
To restore the settings to the default values, use the following command:
no ppp route {distance | weight}
You can specify a static IP address and negotiate for using this static IP address, which can avoid
the IP address changing. To specify a static IP address, use the following command in the 3G/4G
(cellular) interface mode:
p p p static-ip ip-address
l Redial automatically: when the 3G/4G connection disconnects due to certain reasons and the
disconnection time lasts the specified length of time, the system will redial automatically.
l Hang up after a specified idle time: When the idle time of the 3G/4G (cellular) interface
reaches the specified value, the system will disconnection the 3G/4G connection.
The above two modes cannot be used meanwhile. Without configuring the schedule, the system
will use the “hang up after a specified idle time” mode by default.
In the “redial automatically” mode, to specify the time between redial attempts, use the fol-
lowing command in the 3G/4G(cellular) interface configuration mode:
p p p redial-o p tio n auto -co n n ect time
l time – Specifies the time (in seconds) between redial attempts. The value ranges from 0 to
10000 seconds. The default value is 0, which represents that the system does not use the
“redial automatically” mode.
In the “hang up after a specified idle time” mode, to specify the idle time before hanging up,
use the following command in the 3G/4G (cellular) interface configuration mode:
p p p redial-o p tio n idle-in terval time
l time – Specifies the idle time (in seconds) before hanging up. The value ranges from 0 to
10000 seconds. The default value is 0, which represents that the system does not use the
“hang up after a specified idle time” mode.
Use the no ppp redial-option command to restore the setting to the default value.
You need to obtain the 3G/4G username and password from the ISP. To specify the user inform-
ation, use the following command in the 3G/4G (cellular) interface configuration mode:
p p p user user-name p asswo rd password
Use the following command to cancel the specified 3G/4G user information:
no user
The device supports the schedule. You can specify a schedule entry to make the 3G/4G (cellular)
interface keep connected and disconnected individually during the specified time period. To con-
figure the schedule, use the following command in the instance configuration mode:
p p p sch edule schedule-name [co n n ect | disco n n ect]
l connect – The system will use the “on-demand dial-up” mode to connect to the internet
during the period specified by the schedule entry.
l disconnect – The system will disconnect the connection during the period specified by the
schedule entry.
You can manually connect/disconnect the 3G/4G connection. In any mode, use the following
command to manually connect/disconnect the 3G/4G connection:
exec dial in terface cellular0/0 {co n n ect | disco n n ect}
PIN (Personal Identification Number) code is used to identify the user of the SIM card avoid the
illegal use of the SIM card.
Managing the PIN code includes the following configurations:
To enable the PIN code protection, you must first enter the correct PIN code. After the PIN
code is verified, you can use the SIM card. The PIN code consists of 4-8 decimal numbers and
you can obtain the PIN code from your ISP. To enable/disable the PIN code protection, use the
following command in any mode:
exec p in verificatio n {en ab le | disab le} pin
l pin – Specifies the PIN code. The PIN code consists of 4-8 decimal numbers.
Notes: After three consecutive failed attempts at PIN code, the SIM card will be
locked.
After enabling the PIN code protection, you can save the PIN code in the system. After the sys-
tem reboots, it can automatically verify the PIN code. To automatically verify the PIN code, use
the following command in the SIM card configuration mode:
p in -verify-cip h er pin
l pin – Specifies the PIN code. The PIN code consists of 4-8 decimal numbers.
Use no pin-verify-cipher to cancel the configurations of automatically verifying the PIN code.
To verify the PIN code manually, use the following command in any mode:
exec p in verify pin
l pin – Specifies the PIN code. The PIN code consists of 4-8 decimal numbers.
To modify the PIN code, you must first enter the correct PIN code. After three consecutive
failed attempts at PIN code, the SIM card will be locked. To modify the PIN code, use the fol-
lowing command in any mode:
exec p in mo dify current-pin new-pin
l current-pin – Specifies the current PIN code. The PIN code consists of 4-8 decimal num-
bers.
l new-pin – Specifies the new PIN code. The PIN code consists of 4-8 decimal numbers.
If the SIM card is locked, you need to obtain the PUK code from the ISP to unlock the SIM card
and set the new PIN code. To use the PUK code to unlock the SIM card, use the following com-
mand:
exec p in un lo ck puk new-pin
l new-pin – Specifies the new PIN code. The PIN code consists of 4-8 decimal numbers.
Notes: After ten consecutive failed attempts at PUK code, the SIM card will be
invalid.
To view the 3G/4G configurations, use the corresponding show commands in any mode:
l View the 3G/4G data card information and 3G/4G connection configurations: show cellular
3G Configuration Example
Requirement
Use the Hillstone device with the 3G data card inserted to access the 3G network by 3G dial-up.
The Hillstone device uses the routing mode. The ethernet0/1 belongs to the trust security zone
and user’s PC connects to this ethernet0/1.
hostname(config)# sim
hostname(config -sim)# ap n un in et
hostname(config -if-cel0/0)# en d
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)#
Step 3: Configure the IP address, gateway, and DNS of the user’s PC. The IP address must be at
the same subnet as the IP address of the ethernet0/0. The DNS address must be a public DNS
address
LLDP
Network devices are increasingly diverse, and their configurations are respectively complicate.
Therefore, mutual discovery and interactions in information of system and configuration between
devices of different manufacturers are necessary to facilitate management. LLDP (Link Layer Dis-
covery Protocol ) is a neighbor discovery protocol defined in IEEE 802.1ab, which provides a dis-
covery method in link layer network. By means of the LLDP technology, the system can quickly
master the information of typology and its changes of the layer-2 network when the scale of net-
work expands rapidly.
By means of LLDP, the LLDP information of the device, including the device information, sys-
tem name, system description, port description, network management address and so on, can be
sent in the form of standard TLV (Type Length Value) multicast message from the physical port
to the directly-connected neighbor. If the neighbor enables LLDP too, then neighbor relations
will be established between both sides. When the neighbor receives these messages, they are
stored in the form of MIB in the SNMP MIB database, in order to be utilized by the network man-
agement system to search and analyze the two-layer topology and the problems in it of the current
network.
Configuring LLDP
Configuring LLDP can enable neighbor devices' collection of network typology changes.
LLDP is enabled only when the "Global LLDP" and the "LLDP of Port" are enabled at the same
time, so the corresponding port can transmit and receive LLDP messages.
l By default, the global LLDP and the LLDP of port are both disabled.
l When the global LLDP is enabled, the LLDP of all the ports of the system will be enabled.
l When the global LLDP is disabled, the LLDP of all the ports of the system will be disabled.
l When the global LLDP is enabled, the user does not have to modify LLDP configuration, for
LLDP can be enabled by default configuration.
To enable or disable the global LLDP, in the global configuration mode, use the following com-
mand:
Before enabling LLDP of port, in the global configuration mode, use interface ethernetm/n com-
mand to enter the configuration mode of the port which needs to enable LLDP.
To enable or disable LLDP of port, in the interface configuration mode, use the following com-
mand:
Notes: Only the physical port of the device supports enabling LLDP. Logical port
does not support this function.
The user can configure the work mode of LLDP , specifying whether the port transmits or
receives the LLDP messages. By default, the LLDP work mode of port is txrx (transmits and
receives the LLDP messages).
To configure the LLDP work mode of port, in the interface configuration mode, use the fol-
lowing command:
lldp admin-status {disable | rx | tx | txtx}
Recover the default LLDP work mode, use the following command:
no lldp admin-status
When the LLDP work mode of the port changes, the system will operate initialization on the
port. Configuring the initialization delay of the port can avoid continuous initialization of the port
due to frequent changes of the LLDP work mode.
To configure the initialization delay of port, in the global configuration mode, use the following
command:
lldp reinit-delay delay-value
l delay-value - Specifies the initialization delay of port. The measurement is second-based, and
the range is from 1 to 10.
To recover the default initialization delay of port, use the following command:
no lldp reinit-delay
Transmission delay refers to the minimal delay time before the LLDP messages are sent to the
neighbor device when the state of the local device frequently changes.
To configure the transmission delay of LLDP messages, in the global configuration, use the fol-
lowing command:
lldp message-transmission delay delay-value
l delay-value - Specifies the transmission time delay of LLDP messages. The measurement is
second-based, and the range is from 1 to 900.
To recover the default transmission delay of LLDP messages, use the following command:
no lldp message-transmission delay
Transmission interval refers to the time period of transmitting the LLDP message to the neighbor
device when the state of the local device state remains stable.
To configure the transmission interval of LLDP messages, in the global configuration mode, use
the following command:
lldp message-transmission interval interval
l interval - Specifies the transmission interval of LLDP messages. The measurement is second-
based, and the range is from 1 to 3600, the default value is 30s.
To recover the default transmission interval of LLDP messages, use the following command:
no lldp message-transmission interval
TTL (Time to Live) refers to the living time of the local device information in the neighbor
device.
l hold-multiplier - Specifies the TTL multiplier value. The range is from 1 to 100, and the
default value is 4.
To recover the default TTL multiplier value, use the following command:
no lldp message-transmission hold-multiplier
To view the DDLP local information, in any mode, use the following command:
show lldp local-information [global | interface-name ]
l global - Displays the LLDP local information to be sent to the neighbor device.
l interface-name - Displays the LLDP local information to be sent from the specified port to
the neighbor device.
To view the LLDP neighbor information of port, in any mode, use the following command:
show lldp neighbor-information [ interface-name ]
l interface-name - Displays the LLDP information sent from the neighbor device to the local
device and received by the specified port. If this parameter is not specified, the LLDP neigh-
bor information of all the ports will be shown.
To view the LLDP statistical information, in any mode, use the following command:
show lldp statistics [global | interface-name ]
To view the LLDP status information, in any mode, use the following command:
show lldp status [ interface-name ]
l "Security Policy" on Page 314:This section introduces the basic concepts of security
policies, including policy rules, policy groups, web page redirection, and viewing policy rules.
l "Share Access" on Page 352:This section introduces how to configure shared access rules,
configure shared access signature database, and share access logs.
Overview
Policy is designed to control the traffic forwarding between security zones/segments. By default,
Hillstone devices will deny all traffic between security zones/segments, while the policy can
identify which flow between security zones or segments will be permitted and which will be
denied based on the policy rules.
l Action - The actions for processing traffic include Permit, Deny, Tunnel, From tunnel and
WebAuth.
Below is a CLI example which permits the ICMP traffic from any address in the trust zone to any
address in the untrust zone to pass through.
hostname(config)# p o licy-glo b al
l Source Address - Any, i.e., any address. It is the default address entry in the address book.
l Destination Address - Any, i.e., any address. It is the default address entry in the address
book.
l Service – ICMP
l Action - Permit, i.e., this kind of traffic is permitted to pass through the device.
Introduction to Profile
The combination of the profile and security policy allows the Hillstone devices to implement
fine-grained control over the application layer security policy. Profile defines different operations
for different kinds of applications, which can simplify system configurations. StoneOS support
nine types of profiles, namely URL filter profile, Web content profile, Web posting profile, email
filter profile, IM control profile, HTTP/FTP control profile, anti-virus profile, IPS profile and
GTP profile. Each profile category can be configured with an action for a specific application.
QoS Tag
StoneOS supports the QoS tag function in policy rules. You can add the QoS tag to a policy rule
that permits the traffic to pass through.
Tip: For more information about QoS, see “QoS" of “Traffic Management”.
The ACL profile needs to be configured in the ACL profile configuration mode. To enter the
ACL profile configuration mode, in the global configuration mode, use the following command:
acl-profileacl-profile-name
l acl-profile-name – Specifies the name of the ACL profile. After executing the command, the
system will create a ACL profile with the specified name, and enter the ACL profile con-
figuration mode; if the specified name exists, the system will directly enter the ACL profile
configuration mode. You can specify up to 64 ACL profiles.
To delete the specified ACL Profile, in the global configuration mode, use the command no acl-
profileacl-profile-name.
To configure an Ipv4 access control rule, in the ACL Profile configuration mode, use the fol-
lowing command:
sequence id {drop | pass} [both | forward | backward] [src-mac src-mac-address] [dst-macdst-
mac-address] [dscp dscp-value]
l drop | pass – Specifies the action for the access control rule, drop or pass.
l both | forward | backward – Specifies the traffic direction of the access control rule.
l src-macsrc-mac-address – Specifies the source MAC address of the access control rule.
l dst-macdst-mac-address – Specifies the destination MAC address of the access control rule.
To delete the specified access control rule, in the ACL Profile configuration mode, use the com-
mand no sequence id.
When no access control rule is hit, the system will take the specified default access control action.
To configure the default action, in the ACL Profile configuration mode, use the following com-
mand:
default-action {drop |pass}
l drop | pass – Specifies the default action for the access control rule, drop or pass. If default
action is not specified, the system will adopt Pass.
To restore to the default control action Pass, in the ACL Profile configuration mode, use the com-
mand no default-action.
To view the ACL profile configuration, in any mode, use the following command:
show acl-profile [acl-profile-name]
l acl-profile-name – Shows the configuration of the specified ACL profile. If this parameter is
not specifies, the command will show the configurations of all the ACL profiles.
To enter the policy configuration mode, in the global configuration mode, use the following com-
mand:
p o licy-glo b al
The system supports switches between the multi-zone mode and the single-zone mode. In the
single-zone mode, one policy supports only one source zone and one destination zone. In the
multi-zone mode, one policy supports multiple zones. In this case, users can manage policies
more easily when there are fewer policies needed configuring in the system. One policy supports
up to 16 source/destination zones. By default, the system applies the single-zone mode. To
switch to the multi-zone mode, in the policy configuration mode, use the following command:
multi-zone-enable
In the policy configuration mode, use the following command to restore to the single-zone mode:
no multi-zone-enable
Notes: You can use this command to restore to the single-zone mode only when
multi-zone policies are not configured in the system. Otherwise, the command fails.
To create a policy rule, in the global configuration mode or policy configuration mode, use the fol-
lowing command:
rule [id id ] [n ame name ] [to p | b efo re {n ame rule-name | id } | after {n ame rule-name | id } ]
[ro le {U NKNO WN | role-name } | user aaa-server-name user-name | user-gro up aaa-server-
name user-group-name ] [fro m {h o st host-name | ran ge min-ip max-ip | src-addr }] [to {h o st
l id id - Specifies the ID of the policy rule. If not specified, the system will automatically assign
an ID to the policy rule. The ID must be unique in the entire system.
l top | before {name rule-name| id} | after {name rule-name| id - Specifies the location of
the policy rule. By default, the newly-created policy rule is located at the end of all the rules.
l top Specifies the location of the policy rule to the top of all rules.
l before {name rule-name| id} –Specifies the location of the policy rule before the rule
of specified ID or name.
l after {name rule-name| id –Specifies the location of the policy rule after the rule of
specified ID or name.
l role {UNKNOWN | role-name} – Specifies the role name. UNKNOWN is the role
reserved by the system, i.e., the role that is neither authenticated nor statically bound.
l from {host host-name | range min-ip max-ip | src-addr } – Specifies the source address of
the policy rule.
l range min-ip max-ip – The source address entry for the IP addresses defined in the
address book.
l to {host host-name | range min-ip max-ip | dst-addr } – Specifies the destination address
of the policy rule.
l host host-name – The destination address entry for the host defined in the address
book.
l range min-ip max-ip – The destination entry for the IP addresses defined in the
address book.
l service service-name - Specifies the service name of the policy rule. service-name is the ser-
vice defined in the service book.
l application app-name – Specifies the application name for the policy rule. app-name is the
application name you defined in the application book.
l tunnel - For the traffic from local to a peer, this option allows the traffic to pass through
the VPN tunnel.
After switching to the multi-zone mode, repeat the above commands to add more source/des-
tination zones. Each policy supports up to 16 source/destination zones. If Any zone is con-
figured, you cannot configure other zones at the same time.
For example, to create a policy rule that permits ICMP service from any address to any address,
use the following commands:
hostname(config)# policy-global
hostname(config-policy)# rule from any to any service icmp permit
Rule id 5 is created.
To delete the policy rule, in the global configuration mode or policy configuration mode, use the
following command:
n o rule {id id | n ame name }
You can edit improper parameters for the policy rule in the policy rule configuration mode. To
enter the policy rule configuration mode, in the global configuration or policy configuration mode,
use the following command:
rule [id id ] [to p | b efo re {n ame name | id } | after {n ame name | id ]
l To delete a source zone: no src-zone [src-zone](By repeating this command, you can
delete specific zones one by one. If the zone is not selected, this command deletes all
zones. In this case, there is no source zone in the policy.)
l Add the source address of the address entry type: src-addr src-addr
l Add the source address of the host member type: src-host host-name
l Delete the source address of the host member type: no src-host host-name
l Add the source address of the IP range type: src-range min-ip [max-ip]
l Delete the source address of the IP range type: no src-range min-ip [max-ip]
l Add the destination address of the address entry type: dst-addr dst-addr
l Delete the destination address of the address entry type: no dst-addr dst-addr
l Add the destination address of the IP member type: dst-ip {ip/netmask | ip-address
netmask }
l Delete the destination address of the IP member type: no dst-ip {ip/netmask | ip-address net-
mask }
l Add the destination address of the host member type: dst-host host-name
l Delete the destination address of the host member type: no dst-host host-name
l Add the destination address of the IP range type: dst-range min-ip [max-ip]
l Delete the destination address of the IP range type: no dst-range min-ip [max-ip]
l Add / Delete the service rule: The service rule includes the protocol type and port number of
the service. You can configure the service rule of the policy according to the required
Tip: By default, the configured policy rule will take effect immediately. If you
apply a schedule to the policy rule, the rule will only take effect in the specified
time defined in the schedule. You can configure up to 8 schedules for a policy
rule, and the effective time of the policy rule is the sum of all time configured in
the schedules.
l Edit the QoS tag of the rule: policy-qos-tag tag(the value range of tag is 1 to 1024)
l Bind the anti-virus profile: av {av-profile-name | no-av} (no-av indicates binding the pre-
defined Anti-Virus Profile named no-av, i.e., no Anti-Virus detection.)
l Bind the IPS profile: ips {ips-profile-name | no-ips} (no-ips indicates binding the predefined
IPS Profile named no-ips, i.e., no IPS detection.)
l Bind the Email filter profile:mail {mail-profile-name | no-mail} (no-mail indicates binding
the predefined Email filter Profile named no-mail, i.e., no Email filter.)
l Bind the URL filter profile: url {url-profile-name | no-url}(no-url indicates that you bind
the predefined profile no-url to the policy rule and the system will not check and filter the
URLs.)
By default, the configured policy rule will take effect immediately. You can terminate its control
over the traffic by disabling the rule. To enable or disable the policy rule, in the policy rule con-
figuration mode, use the following commands:
l Disable:disable
l Enable:enable
l For the policy rules of action Permit, logs will be generated when the matched traffic session
starts and ends.
l For the policy rules of action Deny, logs will be generated when the matched traffic is denied.
Before using this function, make sure the log function for the traffic is enabled. In the global con-
figuration mode, use the command logging traffic on. To configure the log management of policy
rules, in the policy rule configuration mode, use the following command:
lo g {p o licy-den y | sessio n -start | sessio n -en d}
l policy-deny - Generates logs when the matched traffic is denied. This parameter is applicable
to the policy rules of action Deny.
l session-start - Generates logs when the matched traffic starts its session. This parameter is
applicable to the policy rules of action Permit.
l session-end - Generates logs when the matched traffic ends its session. This parameter is
applicable to the policy rules of action Permit.
To cancel the log management configuration, in the policy rule configuration mode, use the com-
mand no log {policy-deny | session-start | session-end}.
In addition, for the traffic from the source security zone to the destination security zone that is
not matched to any policy rule, you can specify whether to generate logs. By default, the system
does not generate log for such kind of traffic. To generate log for such traffic, in the global policy
configuration mode, use the following command:
lo g p o licy-default
To restore to the default value, in the global policy configuration mode, use the following com-
mand:
n o lo g p o licy-default
When configuring the service rule of the policy rule, you can add a predefined or user-defined ser-
vice that have been configured in the service book. When the required service does not exist in
the service book, the administrator can specify the protocol type and port number of the service
by configuring the service rules, thus simplifying the configuration steps of the policy.
To add a service rule of TCP or UDP type, in the policy configuration mode, use the following
command:
service-rule {tcp | udp } dst-p o rt min-port [ max-port ] [src-p o rt min-port [ max-port ]]
l tcp | udp - Specifies the protocol type of the service rule: TCP or UDP.
l dst-portmin-port [max-port] – Specifies the destination port number of the service rule. If
the destination port number is a number range, then min-port is the minimum destination port
number, and max-port is the maximum destination port number. If max-port is not configured,
system will use min-port as the single destination port number. The value range is 0 to 65535
l src-portmin-port [max-port] – Specifies the source port number of the service rule. If the
source port number is a number range, then min-port is the minimum source port number,
and max-port is the maximum source port number. If max-port is not configured, system will
use min-port as the single source port number. The value range is 0 to 65535.
To add a service rule of ICMP type, in the policy configuration mode, use the following com-
mand:
service-ruleicmp typ e type-value [co de min-code [ max-code ]]
l type-value – Specifies the ICMP type value of the user-defined service. The value range is 0
(Echp-Reply), 3(Destination-Unreachable), 4(Source Quench), 5(Redirect), 8
(Echo), 11(Time Exceeded), 12(Parameter Problem), 13(Timestamp), 14
(Timestamp Reply) , 15(Information Request), 16(Information Reply), 17
(Address Mask Request), 18(Address Mask Reply), 30(Traceroute), 31(Datagram
Conversion Error), 32(Mobile Host Redirect), 33(IPv6 Where-Are-You), 34(IPv6
l code min-code [max-code] – Specifies the ICMP code value for the user-defined service. If
the ICMP code is a number range, then min-port is the minimum code, and max-port is the
maximum code. If max-port is not configured, system will use min-port as the single code.
The value range is 0 to 15.
To add a service rule of ICMPv6 type, in the policy configuration mode, use the following com-
mand:
service-ruleicmpv6 type type-value [ code min-code [ max-code ]]
l type-value – Specifies the ICMPv6 type value. For more information about the value range,
see Appendix 1: ICMPv6 Type and Code.
l code min-code [max-code] – Specifies the ICMPv6 code value for the user-defined service.
If the ICMPv6 code is a number range, then min-port is the minimum code, and max-port is
the maximum code. If max-port is not configured, system will use min-port as the single code.
The value range is 0 to 255.
To add a service rule of SCTP type, in the policy configuration mode, use the following com-
mand:
service-rule sctp dst-p o rt min-port [ max-port ] [src-p o rt min-port [ max-port ]]
l dst-port min-port [max-port] – Specifies the destination port number of the service rule. If
the destination port number is a number range, then min-port is the minimum destination port
number, and max-port is the maximum destination port number. If max-port is not configured,
system will use min-port as the single destination port number. The value range is 0 to 65535
l src-port min-port [max-port] – Specifies the source port number of the service rule. If the
source port number is a number range, then min-port is the minimum source port number,
and max-port is the maximum source port number. If max-port is not configured, system will
use min-port as the single source port number. The value range is 0 to 65535.
l protocol-number – Specifies the protocol number of the service rule. The value range is 1 to
255.
To delete the specified service rule, use one of the following commands.
l no service-rule protocolprotocol-number
You can specify the default action for the traffic that is not matched to any configured policy rule.
StoneOS will process the traffic according to the specified default action. By default StoneOS will
deny such traffic. To specify the default action as Permit, in the global policy configuration mode,
use the following command:
default-actio n p ermit
To restore to the default action of Deny, in the global policy configuration mode, use the fol-
lowing command:
n o default-actio n p ermit
Each policy rule is labeled with a unique ID and name. When traffic flows into a Hillstone device,
the device will query policy rules by turn, and processes the traffic according to the first matched
rule. However, the policy rule ID is not related to the matching sequence during the query. The
l name name | id – Specifies the policy rule ID or name that you want to move.
l before {name rule-name | id} –Moves the policy rule before the rule of specified ID or
name.
l after {name rule-name | id} –Moves the policy rule after the rule of specified ID or name.
To view the resource usage of the source address, destination address, and service in policy rules,
that is, to view the proportion of the number of source address, destination address, and service
configured in policy rules to the total available number, in any mode, use the following command:
For example:
Resource usage:
address: 2%(10000 of 480000; src-addr usage: 5000; dst-addr usage: 5000; current available:
470000)
service: 4%(10000 of 240000; current available: 230000)
In the above case, there are 5000 configured source addresses and 5000 configured des-
tination addresses in the policy rules. The configured source and destination addresses
In order to make the rules in the policy are effective, system provides a method to check the con-
flicts among rules in a policy. With this method, administrators can check whether the rules over-
shadow each other.
In any mode, use the following command to start redundancy check:
exec p o licy redun dan cy-ch eck start
The check will last a few minuts, please wait. After checking, you can use show policy redund-
ancy-check command to view the policy rule ID which is overshadowed.
You can also use exec policy redundancy-check stop command to stop check or use exec policy
redundancy-check clear command to clear cache of last redundancy check results.
System support the policy audit function. When you create or modify the policy rule/, you can
use this function to add policy audit comments of the policy rule/aggregation policy so that you
can understand the change reasons and change history of the policy rule.
By default, the policy audit function is disabled. To enable this function, in the global con-
figuration mode, use the following command:
audit-comment-enable
To disable this function, in the global policy configuration mode, use the following command:
no audit-comment-enable
To add policy audit comments to the policy rule, in any mode, use the following command:
l rule id id - Specifies the ID of the policy rule that needs to add audit comments.
l comment comment - Specifies the audit comment content. The range is 1-255 characters.
To view the policy audit function enabled status, in any mode ,use the following command:
show audit-comment-status
Notes:
l Policy audit comment is optional. When you create or modify the policy rule,
you can add policy audit comments to policy rules according to requirements.
l For viewing the audit history information of policy rules, you can only view it
via WebUI. Please refer to StoneOS_WebUI_User_Guide.
Policy Group
You can organize some policy rules together to form a policy group, and configure the policy
group directly.
You can perform the following operations on a policy group through CLI:
To create a policy group, in the global configuration mode, use the following command:
p o licy-gro up group-name
l group-name –Specifies the name of the policy group. The length is 1 to 95 characters.
After executing this command, the CLI will enter the policy group configuration mode.
To detele a policy group, in the global configuration mode, use the following command:
n o p o licy-gro up group-name
Policy group is enabled by default. To disable or enable the policy group, in the policy group con-
figuration mode, use the following command:
l Enable:enable
l Disable:disable
Notes:
l After disable or enable the policy group, the enabled status of policy rules in
policy group are modified at the same time.
In the policy group configuration mode, use the following command to modify the description of
a policy group.
l group-name – Specifies the new description. You can enter at most 255 characters.
In the policy group configuration mode, use the following command to delete the description of a
policy group.
n o descrip tio n
To add a policy rule member to the policy group, in the policy group configuration mode, use the
following command:
rule id
To delete a policy rule member to the policy group, in the policy group configuration mode, use
the following command:
n o rule id
To rename a policy group entry, in the global configuration mode, use the following command:
ren ame p o licy-gro up old-name new-name
To configure a policy group for VSYS Profile, in the VSYS Profile configuration mode, use the fol-
lowing command:
l max max-num reserve reserve-num – Specifies the maximum quota ( max-num ) and
reserved quota (reserve reserve-num) of policy group in VSYS. The reserved quota and max-
imum quota vary from different platforms. The reserved quota should not exceed the max-
imum quota.
To view the policy group information, in any mode, use the following command:
sh o w p o licy-gro up [ name ]
l name – Specifies the name of policy group for viewing the information.
The user online notification function redirects your HTTP request to a new notification page
when you visit Internet for the first time. In the process, a prompt page (see the picture below)
will be shown first, and after you click Continue on this page, the system will redirect to the spe-
cified notification page. If you want to visit your original URL, you need to type the URL address
in your Web browser.
To configure the user online notification function, take the following steps:
1. Enable WebAuth.
2. Create a policy rule to specify the traffic that will be redirected and the network resources
accessible to the traffic.
To configure the user online notification URL, in the policy rule configuration mode, use the fol-
lowing command:
web -redirect [ url ]
l url – Specifies the user online notification URL. The length is 1 to 127 characters. The URL
format should be http://www.abc.com or https://www.abc.com. If the parameter is not spe-
cified, the webpage will be redirected to the URL originally specified by the user.
To cancel the user online notification URL, in the policy rule configuration mode, use the fol-
lowing command:
n o web -redirect
Notes: For more information about how to enter the policy rule configuration
mode, see Entering the Policy Configuration mode
The idle time refers to the time that a user keeps online without traffic transmitting. If an HTTP
request exceeds the idle time, it will be redirected to the user online notification page again. To
configure the idle time, in the global configuration mode, use the following command:
web -redirect idle-time time-value
l time-value – Specifies the idle time. The value range is 3 to 1440 minutes. The default value
is 30.
To restore to the default idle time, in the global configuration mode, use the following command:
n o web -redirect idle-time
You can change the logo picture and customize your own user online notification page. To import
the logo picture, you need zip the picture first, and then in the execution mode, use the following
command:
imp o rt custo mize web redirect fro m {ftp server ip-address [vro uter vrouter-name ] [user user-
name p asswo rd password ] | tftp server ip-address [vro uter vrouter-name ]} file-name
l ftp server ip-address [user user-name password password [vrouter vrouter-name]] - Obtains
the logo picture from the FTP server, and specifies the IP address, VRouter, username and
password of the server. If no username and password are specified, you will log into the server
anonymously.
l tftp server ip-address [vrouter vrouter-name] - Obtains the logo picture from the TFTP server,
and specifies the IP address and VRouter of the TFTP server.
Notes: The uploaded zip file should include the “logo.jpg” file.
To restore to the default logo picture, in any mode, use the following command:
exec custo mize web redirect default
To view the detailed information of online notification users, in any mode, use the following com-
mand:
sh o w web -redirect-user
You can view the detailed information of all policy rules or a specified policy rule. And also you
can view the detailed information of the policy matching the five-tuple filtering conditions (includ-
ing source IP address, destination IP address, protocol, source port and destination port).
l from src-zone - Shows the detailed information of the policy rule whose source security zone
is the specified zone.
l to dst-zone - Shows the detailed information of the policy rule whose destination security
zone is the specified zone.
l src-addr src-addr – Shows the detailed information of the specified source address of the IP
range type.
l dst-addr dst-addr – Shows the detailed information of the specified the destination address
of the address entry type.
l service service-name – Shows the detailed information of the specified service type.
l description description –Shows the detailed information of the specified name rule.
l name name –Shows the detailed information of the specified name rule.
l name-filter filter-name –Shows the detailed information of all rules whose name includes the
specified keyword.
To view the policy rules corresponding to TCP or UDP protocol types, in any mode, use the fol-
lowing command:
l tcp | udp – Shows the detailed information of the policy rule with the protocol type of TCP
or UDP.
l dst-port{ port-number| range min-port max-port}– Shows the detailed information of the
specified destination port. port-numberis a single destination port number. If the destination
port number is in a range, min-port is the minimum destination port number, max-port is the
maximum destination port number, and the range is 0 to 65535.
l src-port {port-number| range min-port max-port} - Shows the detailed information of the spe-
cified source port. port-numberis a single source port number. If the source port number is in
a range, min-port is the minimum source port number, max-port is the maximum source port
number, and the range is 0 to 65535.
To view the policy rules corresponding to ICMP or ICMPv6 protocol types, in any mode, use the
following command:
show policy protocol {icmp | icmpv6} [type type-number [code {code-number | rangemin-code
max-code}] ]
l icmp | icmpv6 –Shows the detailed information of the policy rule with the protocol type of
ICMP or ICMPv6.
l typetype-number – Shows the detailed information of the policy rule with the specified
ICMP type or ICMPv6 type.
l code {code-number| range min-code max-code} - Shows the detailed information of the
policy rule with the specified ICMP code or ICMPv6 code. code-numberis a single code. If
the code is in a range, min-codeis the minimum code, max- codeis the maximum code. The
show policy protocol sctp [dst-port {port-number | range min-port max-port}] [ src-port {port-
number | range min-port max-port} ]
l dst-port{ port-number| range min-port max-port}– Shows the detailed information of the
specified destination port. port-numberis a single destination port number. If the destination
port number is in a range, min-port is the minimum destination port number, max-port is the
maximum destination port number, and the range is 0 to 65535.
l src-port {port-number| range min-portmax-port} - Shows the detailed information of the spe-
cified source port. port-numberis a single source port number. If the source port number is in
a range, min-port is the minimum source port number, max-port is the maximum source port
number, and the range is 0 to 65535.
To view the policy rules corresponding to other specified protocol types, in any mode, use the fol-
lowing command:
show policy protocol protocol-number
l protocol-number – Shows the detailed information of the policy rule with the specified pro-
tocol number. The protocol number is from 1 to 255.
To view the current policy configuration information of the device, in any mode, use the fol-
lowing command:
sh o w co n figuratio n p o licy [n ame name | id id | b y-lin e]
l name name – Shows the policy configuration information of the specified policy name in a
single line.
l id id – Shows the policy configuration information of the specified policy ID in a single line.
StoneOS supports statistics on policy hit counts, i.e., it counts how many times the traffic
matches a policy rule. Each time the inbound traffic matches a certain policy rule, the hit count
will increment by one automatically. To view the policy hit count statistics, in any mode, use the
following command:
sh o w p o licy h it-co un t [id id | n ame name | [fro m src-zone ] [to dst-zone ] to p {10 | 20 | 50 |
all }]
l name name –Shows the policy hit count statistics of the specified name rule.
l from src-zone - Shows the policy hit count statistics of the rule whose source security zone is
the specified zone.
l top {10 | 20 | 50 | all } - Shows the policy hit count statistics of the top 10, 20, 50 matched
rules , or shows the policy hit count statistics of all policy rules in descending order.
Examples:
===================================================-
===========================
------------------------------------------------------------------------------
===================================================-
===========================
===================================================-
==================
---------------------------------------------------------------------
===================================================-
===========================
------------------------------------------------------------------------------
===================================================-
===========================
To clear the policy hit count statistics, in any mode, use the following command:
clear p o licy h it-co un t {all | id id | n ame name}
l all - Clears the policy hit count statistics of all the rules.
l id id - Clears the policy hit count statistics of all the specified ID rules.
l name name –Clears the policy hit count statistics of all the specified name rules.
To clear the policy hit count statistics of the default action, in any mode, use the following com-
mand:
Before configuring policy assistant related function, please enable the function first. To enable the
policy assistant, in the policy configuration mode, use the following command:
assistan t en ab le
Notes: For the root VSYS, at most 4 policies are allowed to enable the policy assist-
ant function, while for the non-root VSYS, only 1 policy can enable the function.
To disable the policy assistant, in the policy configuration mode, use the following command:
assistan t disab le
Examp le:
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule id 2
hostname(config-policy-rule)# assistan t en ab le
To view the policy of the policy assistant enabled, in any mode, use the following command:
sh o w p o licy assistan t-en ab le
l Adjusting position
2. After entering the policy rule configuration mode, specify the created policy rule as an
aggregate policy.
Notes: If you need to specify an existing policy rule as an aggregate policy, the con-
figuration of the policy rule must meet the following requirements, otherwise it can-
not be specified as an aggregate policy:
To create an aggregate policy, in the global configuration mode, use the following command:
rule [idid ] { namename} aggregate-type
l idid - Specifies the ID of an aggregate policy. If not specified, system will automatically assign
an ID to the policy. The ID should be unique in the system.
l namename - Specifies the name of an aggregate policy. The range is 1 to 95 characters and the
name is required.
After creating an aggregate policy, the administrator can add a policy rule to the aggregate policy to
be an aggregate policy member. First, use therule ididto enter the configuration mode of the
policy rule to be added, and then, use the following command:
aggregate-rule{ name name | idid} [ top | before {namerule-name| id} | after {namerule-name|
id} ]
l name name | idid - Specifies a name or an ID of the aggregate policy to be added to.
l after {namerule-name| id} – Specifies an aggregate policy member to be put after the
ID or name of a certain member in the policy.
Notes:
l A policy rule can only be added to one aggregate policy.
l If a policy rule has already been added to an aggregate policy, the policy rule
will be added to the newly specified aggregate policy after executing the com-
mand.
To remove a member from an aggregate policy, use the command rule idid to enter the con-
figuration mode of the member to be removed, and then use the following command:
no aggregate-rule
Notes:
l If the member at the top position is removed from an aggregate policy, the
removed member will be put before the aggregate policy
To delete an aggregate policy and remove its members, in the global configuration mode, use the
following command:
n o rule {id id | n ame name }
To delete an aggregate policy and its members, that is, delete the aggregate policy together with all
the members in it, in the global configuration mode or policy configuration mode, use the fol-
lowing command:
n o rule {id id | n ame name } in clude-memb er
Adjusting Position
To adjust the position of an aggregate policy or an aggregate policy member, in the policy con-
figuration mode, use the following command:
mo ve {n ame name | id } {to p | b o tto m | b efo re {n ame rule-name | id } | after {n ame rule-
name | id } }
l top – If an aggregate policyis moved, specifies the policy to be put at the top of all other
policy rules; if an aggregate policy memberis moved, specifies the member to be put at the
top of all other members in the policy to which it belongs.
Notes:
l After adjusting the position of an aggregate policy, the positions of all aggreg-
ate policy members will be adjusted accordingly.
By default, the configured aggregate policy will take effect immediately. By disabling an aggregate
policy, the administrator can terminate its control over the traffic. To disable or enable an aggreg-
ate policy, in the configuration mode of the aggregate policy, use the following commands:
l Disable: disable
l Enable: enable
To add a description to an aggregate policy, in the configuration mode of the aggregate policy, use
the following command:
descrip tio n description
To delete the description of an aggregate policy, in the configuration mode of the policy, use the
following command:
n o descrip tio n
To create the name of share access rule and enter the share access configuration mode, in the
global configuration mode, use the following commands:
sh are-access-detect rule rule-name [ip v6]
l rule-name –Specifies the name of share access rule. If the rule of specified name already
exists, enter the share access configuration mode directly.
l [ipv6] - Specifies the share access rule as the type of IPv6. If not specified , it will be the type
of IPv4.
To delete the share access rule, in the global configuration mode, use the following command:
no share-access-detect rule rule-name
To configure a share access rule, in the share access configuration mode, use the following com-
mands:
l Specify the source IP address range (IPv4/IPv6)of share access: src-range begin-ipv4 end-
ipv4 / src-range begin-ipv6 end-ipv6
l Delete the source IP address range (IPv4/IPv6) of share access: no src-range begin-ipv4 end-
ipv6 / no src-range begin-ipv6 end-ipv6
l Specify the source IP address book (IPv4/IPv6) of share access: src-addr ipv4-addr/ src-addr
ipv6-addr
l Delete the source IP address book (IPv4/IPv6) of share access: no src-addr ipv4-addr/ no
src-addr ipv6-addr
l Specify the schedule of share access: schedule schedule-name(The share access rule takes
effect in the period specified by the schedule. If the schedule is not configured, the share
access rule will always be effective.)
l Specify the action: When the number of endpoints with the same IP address exceeds the max-
imum allowed to be shared by system, the IP address of the endpoints will be processed
according to the specified action. The actions include: block and log, log only, warning and
log. The default action is log only.
action {block | log-only | warning}
l block – When the number of shared access endpoints exceeds the maximum, system
will block the IP address of the endpoints out of the limit and record logs during the
specified period.
l log-only – When the number of shared access endpoints exceeds the maximum, sys-
tem will only record logs of the IP address out of limit, without affecting the normal
connection of the access endpoints.
l warning – When the number of shared access endpoints exceeds the maximum, sys-
tem will send warnings to endpoints out of limit and record logs during the specified
period.
l Specify the control duration of block or warning: control-duration duration (The range is 60-
3600s and the default value is 60s. After the duration, system will detect whether the number
of access endpoints exceeds the maximum again.)
l Specify the sequence number of share access rules: sequence {first | last | seq-id}
l last – Specifies the sequence number of share access rule as the last.
l seq-id – Specifies the sequence number of share access rules. The range is 1-8. The
smaller the number, the higher the priority.
To view share access rules, in any mode, use the flowing command:
sh o w sh are-access-detect rule [ rule-name ]
l rule-name – Specifies the name of share access rule. If you do not specify the name of rule,
system will display the configurations of all rules by default.
To view the statistics of share access, in any mode, use the following command:
sh o w sh are-access-detect statistics [rule rule-name ] [src-ip { ipv4-address | ipv6-address }]
[src-zo n e zone-name ] [status { b lo ckin g | n o rmal | lo ggin g | warn in g}] [en dp o in t-n um {gt
| lt | eq} number ]
l src-zone zone-name – Displays the endpoints statistics of the specified source zone.
l status { blocking | normal | logging | warning} – Specify the endpoint IP address status.
After the specified, the access endpoints statistics in this status will be displayed.
l blocking - Displays the endpoints statistics when the status of endpoint IP address is
blocking.
l normal – Displays the endpoints statistics when the status of endpoint IP address is
normal.
l logging – Displays the endpoints statistics when the status of endpoint IP address is
logging.
l warning - Displays the endpoints statistics when the status of endpoint IP address is
warning.
l Updating now
To update the share access signature database, in the global configuration mode, use the following
command:
sh are-access-detect sign ature up date [mo de {auto | man ual} | p ro xy-server {main | b ackup }
proxy-ip proxy-port | sch edule {daily | weekly {sun | mo n | tue | wed | th u | fri | sat} |
mo n th ly date } [ HH:MM ] | server1 { domain | ip } [vro uter vrouter-name ] | server2 { domain |
ip } [vro uter vrouter-name ] | server3 { domain | ip } [vro uter vrouter-name ] | protocol
HTTP ]
l mode {auto | manual} – Specifies the update mode of share access. System supports auto-
matic and manual update modes. The default mode is automatic update.
l proxy-server {main | backup} proxy-ip proxy-port– Specifies the proxy server of share
access database update.
l schedule {daily | weekly {sun | mon | tue | wed | thu | fri | sat} | monthly date}
[HH:MM] – Specifies the automatic update schedule of share access database.
l server1 {domain | ip} [vrouter vrouter-name] – Specifies the domain, IP address and
VRouter of update server 1.
l server2 {domain | ip} [vrouter vrouter-name] – Specifies the domain, IP address and
VRouter of update server 2.
l server3 {domain | ip} [vrouter vrouter-name] – Specifies the domain, IP address and
l protocol HTTP - Specifies the update protocol as HTTP, and the default protocol is HTTPS.
To update the share access signature database immediately, in the execution mode, use the fol-
lowing command:
exec sh are-access-detect sign ature up date
In some cases, your device may be unable to connect to the update server to update the share
access signature database. To solve this problem, StoneOS provides the file import function of
share access signature database, i.e., importing the share access signature files to the device from
an FTP or TFTP server, so that the device can update the share access signature database locally.
To import the share access signature file, in the execution mode, use the following command:
imp o rt sh are-access-detect sign ature fro m {ftp server { A.B.C.D | X:X:X:X::X } [vro uter
vrouter-name ] [user username p asswo rd string ] | tftp server { A.B.C.D | X:X:X:X::X }
[vro uter vrouter-name ]} file-name
l ftp server { A.B.C.D | X:X:X:X::X } [vrouter vrouter-name] [user user-name password pass-
word] – Specifies the IP address, VRouter, user name and password of FTP server to import
share access signature files. You can log in the server anonymously without typing user name
and password.
l tftp server { A.B.C.D | X:X:X:X::X } [vrouter vrouter-name]– Specifies the IP address and
VRouter of TFTP server to import share access signature files.
l file-name – Specifies the name of the share access signature file to be imported.
To view the update information of share access signature database, in any mode, use the following
command:
sh o w sh are-access-detect sign ature up date
To view the information of share access signature database, in any mode, use the following com-
mand:
sh o w sh are-access-detect sign ature in fo
l rule rule-name – Displays the endpoints statistics of the specified share access rule.
l src-ip ip-address – Displays the endpoints statistics of the specified source IP.
l src-zone zone-name – Displays the endpoints statistics of the specified source zone.
l status {normal | logging | warning} – Displays the endpoints statistics in the specified
status.
l normal – Displays the endpoints statistics when the status of endpoint IP address is
normal.
l logging– Displays the endpoints statistics when the status of endpoint IP address is
logging.
l endpoint-num {gt | lt | eq} number – Displays the statistics of endpoints which meets the
specified number.
l gt – Displays the statistics of endpoints whose number is more than the specified num-
ber.
l lt – Displays the statistics of endpoints whose number is less than the specified num-
ber.
l eq – Displays the statistics of endpoints whose number is equal to the specified num-
ber.
To enable the share access log, in the global configuration, use the following command. The func-
tion is enabled by default.
lo ggin g sh are-access-detect o n
To disable the share access log, in the global configuration, use the following command:
n o lo ggin g sh are-access-detect o n
You can specify the output destination of share access log as needed, including syslog server, buf-
fer and console. The default destination is buffer. In the global configuration mode, use the fol-
lowing command:
lo ggin g sh are-access-detect to { syslo g | b uffer [size buffer-size ] | co n so le}
l buffer [size buffer-size] –Sends the share access log to the buffer and specifies the memory
of buffer. The range is 4096-524288 bytes. The default value is 524288.
To cancel the output destination configuration of share access log, in the global configuration
mode, use the following command:
n o lo ggin g sh are-access-detect to { syslo g | b uffer [size buffer-size ] | co n so le}
To view the share access log, in any mode, use the following command:
sh o w lo ggin g sh are-access-detect
l "Destination Route" on Page 367:A manually-configured route which determines the next
routing hop according to the destination IP address.
l "ISP Route" on Page 371:A kind of route which determines the next hop based on different
ISPs.
l "Source Route" on Page 388:Source IP based route which selects routers and forwards data
according to the source IP address.
l "Src-If Route " on Page 389:Source IP and ingress interface based route.
l "Policy-based Route" on Page 391: A route which forwards data based on the source IP, des-
tination IP address and service type.
l Proximity routing: Selects routers and forwards data according to the result of proximity detec-
tion.
l "ECMP" on Page 475:Load balancing traffic destined to the same IP address or segment in
multiple routes with equal administration distance.
l "Static Multicast Routing" on Page 476:a manually-configured route which broadcasts pack-
ets from a multicasting source to all the members within a group.
When forwarding the inbound packets, the Hillstone device selects a route in the following
sequence: PBR > SIBR > SBR > DIBR > Destination Routing/ISP Routing/Proximity Rout-
ing/Dynamic Routing.
l if the keep-session function is enabled, the related session will not be deleted, and the
routing information of the session will turn to invalid. When the route that the session
matched before is added again, the session will match the optimal route again:
l if the egress interface of the rematched route remains the same, the routing
information of the session will turn to valid, and the session will be restored to
normal status.
l if the egress interface of the rematched route changes, the related session will be
deleted.
l when the route that the session matched before is modified or a new route is added:
l if the route that the session matched before is still the optimal route, the related session
remains normal.
l if the route that the session matched before is not the optimal route, yet the egress inter-
face of the rematched route remains the same, the routing information of the related ses-
sion will be updated.
l if the route that the session matched before is not the optimal route and the egress inter-
face of the rematched route changes, the related session will be deleted.
In some cases (such as adding or deleting the application bound with PBR rule), a large number of
sessions may be deleted, which will lead to traffic anomaly. Meanwhile, you should disable the
function of route rematch by session.
To enable or disable this function, in the Flow configuration mode, use the following command:
session rematch route {enable [ keep-session ]| disable}
l keep-session - Keep the related session. When the route rematch by session function is
enabled and this parameter is specified, the related session will be not deleted and the routing
information of the session will turn to invalid. By default, this parameter is not specified,
namely, the keep-session function is disabled.
l disable - Disable the route rematch by session. If the keep-session function is enabled, it will
be disabled at the same time.
VRouter
VR virtually acts as a router, and different VRouters have their own independent routing tables. A
VRouter named trust-vr is bundled with the system. Hillstone devices support multiple VRouters
(a function known as multi-VR). All the routing configuration of the Hillstone devices must be
performed in an appropriate VRouter configuration mode. To enter the VRouter configuration
mode, in global configuration mode, use the following command:
ip vro uter vrouter-name
In the VRouter Configuration mode, you can configure static routing entries, dynamic routing pro-
tocols, or specify the maximum number of routing entries supported by the VRouter, as well as
import routing entries from other VRouters.
To use the multi-VR function, you need to run exec vrouter enable first, and then reboot the sys-
tem to make multi-VR take effect.
l number - Specifies the maximum number of routing entries. The value range is 1 to 100000.
To cancel the specified maximum number of routing entries, in the VRouter configuration mode,
use the following command:
n o max-ro utes
When reaching the maximum number of routing entries, the system will issue an alarm.
l vrouter-name- Specifies the name of the VRouter the imported routing entry belongs to.
l connected | static | rip | ospf | bgp - Specifies the type of the routing entry that will be
imported.
Notes: The priority of routing entries imported from other VRouters is lower than
the priority of the entries bundled with the original VRouter.
To restore the he highest priority of direct route, in the VRouter configuration mode, use the fol-
lowing command:
n o fib -lo o kup co n n ect-first-disab le
Destination Route
The destination route is a manually-configured routing entry that determines the next routing hop
based on the destination IP address. Usually a network with a comparatively small number of out-
bound connections or stable Intranet connections will use a destination route. You can add a
default routing entry at your own choice as needed.
You can add a destination routing entry to VRouter. However, before adding the entry, you need
to enter the VRouter configuration mode. In the global configuration mode, use the following
command:
ip vro uter vrouter-name
To add a destination route, in the VRouter configuration mode, use the following command:
ip ro ute { A.B.C.D/M | A.B.C.D A.B.C.D } { A.B.C.D | interface-name [ A.B.C.D ] | vro uter
vrouter-name } [ distance-value ] [weigh t weight-value ] [tag tag-value ] [descrip tio n description ]
[sch edule schedule-name ] [track track-name ]
l A.B.C.D/M | A.B.C.D A.B.C.D - Specifies the destination address. The Hillstone devices
support two formats: A.B.C.D/M or A.B.C.D A.B.C.D, for example, 1.1.1.0/24 or 1.1.1.0
l A.B.C.D | interface-name [A.B.C.D] | vrouter vrouter-name- Specifies the type of next hop
which can be a gateway address (A.B.C.D), interface (interface-name) or VRouter (vrouter
vrouter-name). If the next hop type is interface, you can select a tunnel interface (for multi-
tunnel interface, you must specify the next hop IP address of IPsec VPN, GRE or SCVPN
tunnel by the A.B.C.D parameter, and this address must be the same as the next hop IP
address of the corresponding tunnel bound to the tunnel interface), Null0 interface or PPPoE
interface. For more information about how to configure the next hop IP address of the
VPN/GRE tunnel that is bound to the tunnel interface, see “Binding a Tunnel” in “Fire-
wall”.
l distance-value - Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l weight weight-value - Specifies the weight of traffic forwarding in load balance. The value
range is 1 to 255. The default value is 1.
l tag tag-value – Specifies the tag value of the destination route. When OSPF redistributes
routes, if the configured routing tag values here are matched to the rules in the routing map-
ping table, the route will be redistributed to filter its information. The value range is 1 to
4294967295.
l description description – Specifies the description of this route. You can enter at most 63
characters.
l schedule schedule-name- Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
l track track-name– Specify the name of a created track object. When the track fails, the route
will be invalid.
To view the destination routing information, in any mode, use the following command:
sh o w ip ro ute static [vro uter vrouter-name ]
To add a destination interface route, in the VRouter configuration mode, use the following com-
mand:
l A.B.C.D/M | A.B.C.D A.B.C.D - Specifies the destination address. The Hillstone devices
support two formats: A.B.C.D/M or A.B.C.D A.B.C.D, for example, 1.1.1.0/24 or 1.1.1.0
255.255.255.0.
l A.B.C.D | interface-name [A.B.C.D] | vrouter vrouter-name - Specifies the type of next hop
which can be a gateway address (A.B.C.D), interface (interface-name) or VRouter (vrouter
vrouter-name). If the next hop type is interface, you can select a tunnel interface (for multi-
tunnel interface, you must specify the next hop IP address of IPsec VPN, GRE or SCVPN
tunnel by the A.B.C.D parameter, and this address must be the same as the next hop IP
address of the corresponding tunnel bound to the tunnel interface), Null0 interface or PPPoE
interface. For more information about how to configure the next hop IP address of the
VPN/GRE tunnel that is bound to the tunnel interface, see “Binding a Tunnel” in “Fire-
wall”.
l . distance-value- Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l weight weight-value - Specifies the weight of traffic forwarding in load balance. The value
range is 1 to 255. The default value is 1.
l description description – Specifies the description of this route. You can enter at most 63
characters.
l schedule schedule-name - Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
l track track-name– Specify the name of a created track object. When the track fails, the route
will be invalid.
ISP Route
Generally many users might apply for multiple lines for load balancing purpose. However, a typ-
ical balance will not function based on the traffic's direction. If a server in ISP A is accessed
through ISP B, the speed will be rather low. For such a scenario, StoneOS provides ISP Route
which allows traffics from different ISPs to take their proprietary routes, thus accelerating net-
work access.
l Updating immediately
The ISP information database can be manually or automatically updated. To configure the update
mode of the ISP information database, in global configuration mode, use the following command:
isp -in fo rmatio n up date mo de {auto | man ual}
l auto – Specifies to automatically update the ISP information database. This is the default
update mode.
In global configuration mode, use the following command to return to the default update mode:
no isp-information update mode
The ISP information database can be updated over HTTP or HTTPS. By default, HTTPS is
used. To set the transmission protocol of updating the ISP information database to HTTP, in
global configuration mode, use the following command:
In global configuration mode, use the following command to return to the default transmission
protocol:
n o isp -in fo rmatio n up date p ro to co l HTTP
The system provides the default update server of the ISP information database update1.hill-
stonenet.com and update2.hillstonenet.com. You can also configure other update servers to down-
load the latest predefined ISP profile as needed. At most 3 update servers can be configured. To
configure an update server, in global configuration mode, use the following command:
l server1 | server2 | server3 – Specifies the server to be configured. The server supports both
IPv4 and IPv6. The default value of server1 is update1.hillstonenet.com and the default value
of server2 is update2.hillstonenet.com.
l ip-address | domain-name – Specifies the name of the update server, which can be an IP
address or domain name, such as update1.hillstonenet.com.
l vroutervrouter-name– Specifies the virtual router bound to the update server. By default,
trust-vr is used.
To restore the default configuration of server1 or server2 or delete the configuration of server3,
in global configuration mode, use the following command:
n o isp -in fo rmatio n up date {server1 | server2 | server3}
If an HTTP proxy server is required for the device to access the Internet, you need to specify the
IP address and port number of the proxy server on the device to ensure normal update.
To specify an HTTP proxy server for the ISP information database, in global configuration mode,
use the following command:
isp -in fo rmatio n up date p ro xy-server {main | b ackup } ip-addressport-number
l main | backup– Uses the main field to specify the main proxy server and uses the backup
field to specify the backup proxy server.
l ip-addressport-number– Specifies the IP address and port number of the proxy server.
To cancel the specified proxy server, use the no isp-information update proxy-server {main |
backup} command.
By default, the system automatically updates the ISP information database on a daily basis. The
daily update time is random to avoid high server traffic volume. To specify the update frequency
and time of the ISP information database, in global configuration mode, use the following com-
mand:
isp -in fo rmatio n up date sch edule {daily | weekly {mo n | tue | wed | th u | fri | sat | sun } |
mo n th ly <1-31> } [ HH:MM ]
l weekly {mon | tue | wed | thu | fri | sat | sun} – Updates the database every week. The
mon | tue | wed | thu | fri | sat | sun field is used to specify the date when the database is
updated every week.
l monthly<1-31>– Updates the database every month. The <1-31> field is used to specify
the date when the database is updated every month.
l HH:MM – Specifies the time when the database is updated, such as 09:00.
Updating Immediately
No matter whether the update mode is manual or automatic, you can use the following command
to update the ISP information database at any time. To immediately update the ISP information
database, in any mode, use the following command:
exec isp-information update
l exec isp-information update – Updates only different parts between the current ISP inform-
ation database and the latest ISP information database released by the update server.
In some cases, your device may fail to connect to the update server to update the ISP information
database. To avoid this issue, StoneOS provides the ISP profile import function. You can import
The predefined ISP profiles are encrypted. The device provides the built-in ISP information data-
base, which contains predefined ISP profiles. The device can connect to the update server or
import predefined ISP profiles over FTP, FTPS, SFTP, or TFTP to update the ISP information
database. You can delete predefined ISP profiles from the ISP information database by using the
CLI.
To delete predefined IPv4 ISP profiles from the system, in execution mode, use the following
command:
exec isp -n etwo rk clear-p redefin e
After you run the command, restart the system and the system will restore the original predefined
IPv4 ISP profiles (built-in predefined IPv4 ISP profiles).
To delete predefined IPv6 ISP profiles from the system, in execution mode, use the following
command:
exec isp -n etwo rk clear-p redefin e ip v6
After you run the command, restart the system and the system will restore the original predefined
IPv6 ISP profiles (built-in predefined IPv6 ISP profiles).
Notes: To ensure that predefined IPv6 ISP profiles can be deleted as expected,
delete nested IPv6 ISP information entries before you delete the predefined IPv6
ISP profiles.
To view information about the ISP information database of the device at any time, in any mode,
use the following command:
show isp-information info
Example:
You can view the update information about the ISP information database of the device by using
corresponding show commands at any time. The update information includes but are not limited
to the update server information, update mode, update frequency, time, and botnet prevention sig-
nature database update status. To view the update configuration of the ISP information database,
in any mode, use the following command:
show isp-information update
Example:
l isp-name - Specifies the name of IPv4 ISP. System allows up to 26 IPv4 ISP information to
be created.
To delete the specified IPv4 ISP, in the global configuration mode, use the following command:
n o isp -n etwo rk isp-name
To add a subnet entry to IPv4 ISP, in the IPv4 ISP information configuration mode, use the fol-
lowing command:
sub n et A.B.C.D/M
l A.B.C.D/M - Specifies the subnet for the IPv4 ISP, in the form of IP address/netmask, for
example, 1.1.1.0/24. The maximum number of subnet entries that the system allows to add
varies depending on the platform, and the range is 1000-6000.
In the IPv4 ISP information configuration mode, repeat the above command to add multiple sub-
nets for the IPv4 ISP.
To delete the specified subnet, in the IPv4 ISP information configuration mode, use the fol-
lowing command:
To add an IPv4 ISP information entry, that is to add other configured IPv4 ISP information (pre-
defined IPv4 ISP information or user-defined IPv4 ISP information), in the IPv4 ISP information
configuration mode, use the following command:
member isp-name
l isp-name – Specifies the IPv4 ISP name. An IPv4 ISP can include up to 1 nested layers, but
an IPv4 ISP cannot add itself as a member.
In the IPv4 ISP information configuration mode, repeat the above command to add multiple IPv4
ISP information entrys for the IPv4 ISP.
To delete the specified IPv4 ISP information entry, in the IPv4 ISP information configuration
mode, use the following command:
no member isp-name
Notes: IPv4 ISP information and IPv6 ISP information are not allowed to be nested
in each other.
To configure an ISP route, in the VRouter configuration mode, use the following command:
ip ro ute isp-name { A.B.C.D | interface-name | vro uter vrouter-name } [ distance-value ]
[weigh t weight-value ] [descrip tio n description ] [sch edule schedule-name ]
l A.B.C.D | interface-name | vrouter vrouter-name- Specifies the type of next hop which can
be a gateway address (A.B.C.D), interface (interface-name) or VRouter (vrouter vrouter-
name). If the next hop type is interface, you can select a tunnel interface, Null0 interface or
PPPoE interface.
l distance-value - Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l weight weight-value - Specifies the weight of traffic forwarding in load balance. The value
range is 1 to 255. The default value is 1.
l description description – Specifies the description of this route. You can enter at most 63
characters.
l schedule schedule-name - Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
l User-defined IPv4 ISP profiles: Follow the format example shown below to compile a user-
defined profile. Otherwise, even if the file is uploaded successfully, it will not take effect in
the system.
subnet 1.1.1.1/32
subnet 2.2.2.2/32
member CERNET
exit
l Predefined IPv4 ISP profiles: The predefined IPv4 ISP profile shipped with StoneOS is
encrypted. If the predefined profile has been updated, you need to upload the new profile.
To upload a user-defined IPv4 ISP profile through FTP and TFTP server, in the execution mode,
use the following command:
import ispfile from {ftp server ip-address [user username password string] | tftp server ip-
address} file-name
l user username password string - Specifies the user name and password accessing FTP server.
The custom ISP profiles can only be saved through WebUI. To save an IPv4 ISP profile to your
PC, take the following steps:
3. Click Download to open the Download User Defined ISP File panel.
To delete the specified IPv6 ISP, in the global configuration mode, use the following command:
n o isp -n etwo rk isp-name
To add a subnet entry to IPv6 ISP, in the IPv4 ISP information configuration mode, use the fol-
lowing command:
sub n et ipv6-address/prefix
l ipv6-address/prefix - Specifies the subnet for the IPv6 ISP, in the form of IPv6 address/-
prefix, for example, 1::1/64. The maximum number of subnet entries that the system allows
to add varies depending on the platform, and the range is 1000-6000.
In the IPv6 ISP information configuration mode, repeat the above command to add multiple sub-
nets for the IPv6 ISP.
To delete the specified subnet, in the IPv6 ISP information configuration mode, use the fol-
lowing command:
n o sub n et A.B.C.D/M
To add an IPv6 ISP information entry, that is to add other configured IPv6 ISP information (pre-
defined IPv6 ISP information or user-defined IPv6 ISP information), in the IPv6 ISP information
configuration mode, use the following command:
member isp-name
l isp-name – Specifies the IPv6 ISP name. An IPv6 ISP can include up to 1 nested layers, but
an IPv6 ISP cannot add itself as a member.
Notes: IPv6 ISP information and IPv4 ISP information are not allowed to be nested
in each other.
To configure an ISP route, in the VRouter configuration mode, use the following command:
ip ro ute isp-name { A.B.C.D | interface-name | vro uter vrouter-name } [ distance-value ]
[weigh t weight-value ] [ descrip tio n description ] [sch edule schedule-name ]
l isp-name - Specifies an existing ISP in the system as the destination address of the route.
l A.B.C.D | interface-name | vrouter vrouter-name- Specifies the type of next hop which can
be a gateway address (A.B.C.D), interface (interface-name) or VRouter (vrouter vrouter-
name). If the next hop type is interface, you can select a tunnel interface, Null0 interface or
PPPoE interface.
l distance-value - Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l description description – Specifies the description of this route. You can enter at most 63
characters.
l schedule schedule-name - Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
Hillstone devices support two types of IPv6 ISP profiles: user-defined IPv6 ISP profiles and pre-
defined IPv6 ISP profiles.
To upload a user-defined IPv6 ISP profile through the FTP/FTPS/SFTP/TFTP server, in the
execution mode, use the following command:
import ispfile from {ftp serverip-address [useruser-namepasswordpassword ] | ftps serverip-
address [useruser-namepasswordpassword ] | sftp serverip-address [useruser-namepasswordpass-
word ] | tftp serverip-address } [vroutervr-name] file-name
The custom ISP profiles can only be saved through WebUI. To save an IPv6 ISP profile to your
PC, take the following steps:
3. Click Download to open the Download User Defined ISP File panel.
Source Route
The source route can only be configured in the VRouter configuration mode. To enter the
VRouter configuration mode, in global configuration mode, use the following command:
ip vro uter vrouter-name
l A.B.C.D/M | A.B.C.D A.B.C.D - Specifies the destination address. The Hillstone devices
support two formats: A.B.C.D/M or A.B.C.D A.B.C.D, for example, 1.1.1.0/24 or 1.1.1.0
255.255.255.0.
l A.B.C.D | interface-name - Specifies the type of next hop which can be a gateway address
(A.B.C.D), interface (interface-name) or VRouter (vrouter vrouter-name).If the next hop type
is interface, you can select a tunnel interface, Null0 interface or PPPoE interface.
l weight weight-value - Specifies the weight of traffic forwarding in load balance. The value
range is 1 to 255. The default value is 1.
l schedule schedule-name- Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
l track track-name– Specify the name of a created track object. When the track fails, the route
will be invalid.
To delete the specified source route, in the VRouter configuration mode, use the following com-
mand:
n o ip ro ute so urce { A.B.C.D/M | A.B.C.D A.B.C.D } { A.B.C.D | interface-name }
Src-If Route
The Src-If route can only be configured in the VRouter configuration mode. To enter the
VRouter configuration mode, in global configuration mode, use the following command:
ip vro uter vrouter-name
l A.B.C.D/M | A.B.C.D A.B.C.D - Specifies the destination address. The Hillstone devices
support two formats: A.B.C.D/M or A.B.C.D A.B.C.D, for example, 1.1.1.0/24 or 1.1.1.0
255.255.255.0.
l A.B.C.D | interface-name | vrouter vrouter-name - Specifies the type of next hop which can
be a gateway address (A.B.C.D), interface (interface-name) or VRouter (vrouter vrouter-
name). If the next hop type is interface, you can select a tunnel interface or Null0 interface.
l distance-value - Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l weight weight-value - Specifies the weight of traffic forwarding in load balance. The value
range is 1 to 255. The default value is 1.
l schedule schedule-name- Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
l track track-name– Specify the name of a created track object. When the track fails, the route
will be invalid.
Policy-based Route
Policy-based Route (PBR) is designed to select a router and forward data based on the source IP
address, destination IP address and service type of a packet, and specify the next hop of the pack-
ets which match the policy.
l name - Specifies the name of the PBR policy. The length is 1 to 31 characters. If the policy
exists, the system will directly enter the PBR policy configuration mode.
To delete the specified PBR policy, use the commandno pbr-policy name.
l id rule-id- Specifies the ID of the new PBR rule. The value range is 1 to 255. If no ID is spe-
cified, the system will automatically assign an ID. The rule ID must be unique in its
l before rule-id | after rule-id | top - Specifies the position of the PBR rule. The new PBR rule
can be located before a rule (before rule-id), after a rule (after rule-id) or at the top of all the
rules (top). By default, the system will put the new rule at the end of all the rules.
l src-addr - Specifies the source address which should be an entry defined in the address book.
l dst-addr - Specify the destination address which should be an entry defined in the address
book.
l weight value - Specifies the weight for the next hop. The value range is 1 to 255. The default
value is 1. If a PBR rule is configured with multiple next hops, the system will distribute the
traffic in proportion to the corresponding weight.
l track track-object-name - Specifies the track object for the next hop. If the track object fails,
the PBR rule will fail as well. For more information about track object, see “Configuring a
Track Object” in “System Management”.
To delete the specified rule, in the PBR policy configuration mode, use the following command:
n o match id rule-id
In addition, you can also use the following command in PBR policy configuration mode to create
a PBR rule ID, and then in the PBR policy rules configuration mode, further configure other rel-
evant parameters of the PBR rule:
l id id - Specifies the ID of the new PBR rule. If no ID is specified, the system will auto-
matically assign an ID. The rule ID must be unique in the whole system. However, the PBR
rule ID is not related to the matching sequence.
l top | before rule-id | after rule-id - Specifies the position of the PBR rule. The new PBR rule
can be located before a rule (before rule-id), after a rule (after rule-id) or at the top of all the
rules (top). By default, the system will put the newly created rule at the end of all the rules.
Notes: For more information about how to configure other policy-related parameter,
see“Editing a PBR Rule”。
l match id rule-id(only applicable to the existing rule ID. To delete the rule, use the
commandno match id rule-id)
To edit the rule, in the PBR policy rules configuration mode, use the following commands:
l Specify the next hop: nexthop {interface-name | A.B.C.D | vrouter-name | vsys vsys-name}
l Disable the logging function for PBR rules :no log enable
By default the configured PBR rules will take effect immediately. You can disable a rule to end its
control over traffic. To enable or disable a PBR rule, in the PBR policy rules configuration mode,
use the following commands:
l Disable: disable
l Enable: enable
To cancel prioritized destination routing (DBR) lookup, in the PBR policy configuration mode,
use the following command:no fib-lookup dbr-first
l name - The interface , security zone or VRouter the specified PBR rule is bound to.
To cancel the PBR rule binding to the interface, security zone or VRouter, in the interface con-
figuration mode , security zone configuration mode or VRouter configutation mode, use the fol-
lowing command:
n o b in d p b r-p o licy
To restore to the default match order, in the global configuration mode, use the command no pbr-
match.
In the PBR policy rule configuration mode, use the following commands:
ttl-ran ge min-ttl max-ttl
In the PBR policy rule configuration mode, use no ttl-range command to cancel the TTL con-
figuration.
l name - Shows the specified PBR rule information. If no name is specified, the command will
show the details of all the PBR rules.
DNS Redirect
The DNS redirect function redirects the DNS requests to a specified DNS server. In this version,
the DNS redirect function is mainly used to redirect the video traffic for load balancing. With the
policy based route working together, the system can redirect the Web video traffic to different
links, improving the user experience.
To enable or disable the DNS redirect function, in the global configuration mode, use the fol-
lowing command:
ap p cach e dn s-redirect {en ab le | disab le}
l enable – Enable the DNS redirect function. After enabling this function, specify the DNS
server address according to the prompts provided by the system. Then the DNS requests will
be redirect to the specified DNS server.
l disable – Disable the DNS redirect function. It is the default status of the function.
In any mode, use the show dns-redirect command to show the binding status between the DNS
server and the ingress interface that is bound to the PBR policy.
Hillstone device is deployed at the ingress interface of the internet. The ethernet0/0 interface
connects to the PC, and the ethernet0/2 and ethernet0/3 interfaces connect to two ISP lines,
ISP A and ISP B. After configuring the DNS redirect settings and the PBR policies, the traffic
that matches the default route will flow out from the ethernet0/2, and the traffic that matches the
policy-based route will flow out from the ehternet0/3. The topology is shown as below:
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/2)# zo n e dmz
hostname(config-if-eth0/2)# exit
hostname(config-if-eth0/3)# zo n e dmz
hostname(config-if-eth0/3)# exit
hostname(config)#
hostname(config)# n at
Match id 1 is created.
hostname(config-pbr)# match id 1
hostname(config-pbr-match)# ap p licatio n YO U KU
hostname(config-pbr)# exit
hostname(config)# exit
hostname(config-if-eth0/0)# exit
hostname(config-vrouter)# exit
hostname(config)# zo n e trust
Step 9:Enabling the DNS redirect and configuring the IP address of the DNS server:
To add a domian name route, in the VRouter configuration mode, use the following command:
do main ro ute domain-name { A.B.C.D | interface-name [ A.B.C.D ] | vro uter vrouter-name }
[ distance-value ] [weigh t weight-value ] [descrip tio n description ] [sch edule schedule-name ]
l domain route - Specifies the destination domain name. It only supports the specific domain
name (e.g., www.test.com).
l A.B.C.D | interface-name [A.B.C.D] | vrouter vrouter-name- Specifies the type of next hop
which can be a gateway address (A.B.C.D), interface (interface-name) or VRouter (vrouter
vrouter-name). If the next hop type is interface, you can select a tunnel interface (for multi-
tunnel interface, you must specify the next hop IP address of IPsec VPN, GRE or SCVPN
tunnel by the A.B.C.D parameter, and this address must be the same as the next hop IP
address of the corresponding tunnel bound to the tunnel interface), Null0 interface or PPPoE
interface.
l weight weight-value - Specifies the weight of traffic forwarding in load balance. The value
range is 1 to 255. The default value is 1.
l description description – Specifies the description of this route. You can enter at most 63
characters.
l schedule schedule-name- Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
l vrouter-name - Specifies the domain name routing information of the specified VRouter.
Dynamic Routing
Dynamic routing refers to the routing that will be automatically adjusted based on the operation
status of network. Hillstone devices will automatically adjust the dynamic routing table according
to the routing protocol being used. StoneOS support 4 dynamic routing protocols: RIP, OSPF,
IS-IS, and BGP.
Basic Options
The basic options of RIP configuration include version, metric, distance, information originate
and timer (update interval, invalid time, holddown time and flush time). You can configure RIP
protocol for different VRouter respectively. The basic options of RIP must be configured in the
RIP routing configuration mode. To enter the RIP routing configuration mode, in the global con-
figuration mode, use the following commands:
ip vrouter vrouter-name (enters the VRouter configuration mode)
router rip (enters the RIP routing configuration mode, and at the same time enables the RIP func-
tion on the device)
To disable RIP, in the VRouter configuration mode, use the command no router rip.
Specifying a Version
Hillstone devices support RIP-1 and RIP-2. RIP-1 transmits packets by broadcasting, while RIP-
2 transmits packet by multicasting. To specify the RIP version, in the RIP routing configuration
mode, use the following command:
versio n version-number
l version-number - Specifies the version number which can be 1 (RIP-1) or 2 (RIP-2). The
default version number is 2.
To restore to the default version, in the RIP routing configuration mode, use the command no ver-
sion.
RIP measures the distance to the destination network by hops. This distance is known as metric.
The metric from a router to a directly connected network is 1, and increments by 1 for every addi-
tional router between them. The maximum metric is 15, and the network with metric larger than
15 is not reachable. The default metric will take effect when the route is redistributed. To specify
the default metric, in the RIP routing configuration mode, use the following command:
default-metric value
l value - Specifies the default metric value. The value range is 1 to 15. If no value is specified,
the value of 1 will be used.
To restore to the metric value of 1, in the RIP routing configuration mode, use the command no
default-metric.
Specifying a Distance
To specify the default distance for RIP, in the RIP routing configuration mode, use the following
command:
distan ce distance-value
l distance-value - Specifies the default administration distance value. The value range is 1 to
255. If no value is specified, the value of 120 will be used.
To restore to the distance value of 120, in the RIP routing configuration mode, use the command
no distance.
You can specify if the default route will be redistributed to other routers with RIP enabled. By
default RIP will not redistribute the default route. To configure the default information originate,
in the RIP routing configuration mode, use the following commands:
Redistribute: default-information originate
Do not redistribute: no default-information originate
The timers you can configure for RIP include update interval, invalid time, holddown time and
flush time, as described below:
l Update interval: Specifies the interval at which all RIP routes will be sent to all the neighbors.
The default value is 30 seconds.
l Invalid time: If a route has not been updated for the invalid time, its metric will be set to 16,
indicating an unreachable route. The default value is 180 seconds.
l Holddown time: If the metric becomes larger (e.g., from 2 to 4) after a route has been
updated, the route will be assigned with a holddown time. During the holddown time, the
route will not accept any update. The default value is 180 seconds.
l Flush time: StoneOS will keep on sending the unreachable routes (metric set to 16) to other
routers during the flush time. If the route still has not been updated after the flush time ends,
it will be deleted from the RIP information database. The default value is 240 seconds.
To modify the above four timers, in the RIP routing configuration mode, use the following com-
mand:
timers b asic interval-time invalid-time holddown-time flush-time
l interval-time - Specifies the update interval time. The value range is 0 to 16777215 seconds.
The default value is 30.
l invalid-time - Specifies the invalid time. The value range is 1 to 16777215 seconds. The
default value is 180.
l holddown-time - Specifies the holddown time. The value range is 1 to 16777215 seconds.
The default value is 180.
l flush-time - Specifies the flush time. The value range is 1 to 16777215 seconds. The default
value is 240.
Configuring Redistribute
RIP allows you to introduce information from other routing protocols (BGP, connected, static
and OSPF) and redistribute the information. To configure the redistribute metric, in the RIP rout-
ing configuration mode, use the following commands:
redistrib ute {b gp | co n n ected | static | o sp f | isis} [metric value ]
l bgp | connected | static | ospf | isis- Specifies the protocol type which can be bgp, con-
nected, static , OSPF or isis.
l metric value- Specifies a metric value for the redistribute. The value range is 1 to 15. If the
value is not specified, the system will use the default RIP metric configured by the command
default-metric value.
Configuring a Passive IF
You can configure some interfaces to only receive but not to send data. This kind of interfaces is
known as a passive interface. To configure a passive interface, in the RIP routing configuration
mode, use the following command:
p assive-in terface interface-name
You can specify some neighbors to allow P2P (non-broadcasting) RIP information exchanges
between the neighbors and Hillstone devices. To configure a neighbor, in the RIP routing con-
figuration mode, use the following command:
n eigh b o r ip-address
Configuring a Network
You can configure some networks so that only the interfaces within the specified networks can
receive and send RIP update. To configure a network, in the RIP routing configuration mode, use
the following command:
n etwo rk ip-address/netmask
Configuring a Distance
You can specify an administration distance for the routes that are obtained from the specified net-
works. To configure a distance, in the RIP routing configuration mode, use the following com-
mand:
distan ce distance-value ip-address/netmask
Repeat the above command to configure a distance for the routes that are obtained from different
networks.
To delete the specified distance, in the RIP routing configuration mode, use the command no dis-
tance ip-address/netmask .
RIP Database
When a Hillstone device is running RIP, it will own a RIP route database which can store all rout-
ing entries for all the reachable networks. The routing entry information includes destination
address, next hop, metric, source, and timer information. To view the RIP database information,
in any mode, use the following command:
sh o w ip rip datab ase [ A.B.C.D/M ] [vro uter vrouter-name ]
l vrouter vrouter-name- Shows the RIP information of the specified VRouter. At present
StoneOS only supports VRouter named trust-vr.
The RIP configuration for the interfaces of Hillstone devices includes: authentication mode, trans-
mit and receive version, and split horizon. The RIP configuration for the interfaces must be done
in the interface configuration mode.
Only RIP-2 supports authentication on RIP packets. The packet authentication mode includes
plain text and MD5. The plain text authentication, during which unencrypted string is transmitted
together with the RIP packet, cannot assure security, so it cannot be applied to the scenarios that
To cancel the specified authentication mode and authentication string, in the interface con-
figuration mode, use the following commands:
By default RIP-2 information will be transmitted. To specify the RIP version number that will be
transmitted, in the interface configuration mode, use the following command:
ip rip sen d versio n [1][2]
To restore to the default version number, in the interface configuration mode, use the command
no ip rip send version.
By default RIP-2 information will be received. To specify the RIP version number that will be
received, in the interface configuration mode, use the following command:
ip rip receive versio n [1][2]
To restore to the default version number, in the interface configuration mode, use the command
no ip rip receive version.
In split horizon, routes learned from an interface will not be sent from the same interface, in order
to avoid routing loop and assure correct broadcasting to some extent. To enable or disable split
horizon, in the interface configuration mode, use the following commands:
Enable: ip rip split-horizon
Disable: no ip rip split-horizon
To view the RIP information of system, in any mode, use the following command:
sh o w ip rip
To view the RIP route information, in any mode, use the following command:
sh o w ip route rip [vro uter vrouter-name ]
Configuring OSPF
OSPF, the abbreviation for Open Shortest Path First, is an internal gateway protocol based on link
state developed by IETF. The current version of OSPF is version 2 (RFC2328). OSPF is applic-
able to networks of any size. Its quick convergence feature can send update message immediately
after the network topology has changed, and its algorithm assures it will not generate routing
loops. OSPF also have the following characteristics:
l Area division: divides the network of autonomous system into areas to facilitate management,
thereby reducing the protocol’s CPU and memory utilization, and improving performance.
l Verification: interface-based packet verification ensures the security of the routing calculation.
You can configure OSPF protocol for different VRouters respectively. The configuration of
OSPF protocol includes:
l Configuring a Router ID
l Configuring redistribute
l Configuring a Passive IF
The basic options of OSPF protocol must be configured in the OSPF routing mode. To enter the
OSPF routing mode, in the global configuration mode, use the following commands:
ip vrouter vrouter-name (enters the VRouter configuration mode)
router ospf [process-id]((enters the OSPF routing mode, and at the same time enables OSPF on
the device)
l process-id – Specify the OSPF process ID. The default value is 1. The value ranges from 1
to 65535. Each OSPF process is individual, and has its own link state database and the related
OSPF routing table. Each VRouter supports up to 4 OSPF processes and multiple OSPF pro-
cesses maintain a routing table together.
When specifying the OSPF process ID, note the following matters:
l When running multiple OSPF processes in a VRouter, the network advertised in interfaces in
each OSPF process cannot be same.
l When route entries with the same prefix exist in multiple OSPF processes, the system will
compare the administrative distance of each route entry and the route entry with the lower
administrative distance will be added to the VRouter’s routing table. If their AD is the
same, the route entry that was first discovered will be added to the routing table.
l If the OSPF route entries are redistributed to other routing protocols, the routing information
of process 1 will be redistributed by default. If this process does not exist, the routing inform-
ation of OSPF will not be redistributed.
To disable OSPF, in the VRouter configuration mode, use the command no router ospf [process-
id].
Each router running OSPF protocol must be labeled with a Router ID. The Router ID is the
unique identifier of an individual router in the whole OSPF domain, represented in the form of an
IP address. To configure a Router ID for the Hillstone device that is running OSPF protocol, in
the OSPF routing mode, use the following command:
ro uter-id A.B.C.D [lo cal]
l local - Specifies the Router ID as a local configuration. This kind of configuration is applic-
able to HA A/A mode, and is not synchronized to HA configuration. By default the router ID
is not a local configuration.
By default, there is no area authentication. To configure an area authentication mode, in the OSPF
routing mode, use the following command:
area { id | A.B.C.D } auth en ticatio n [message-digest]
l [message-digest] - Specifies the MD5 authentication. If the keyword is not specified, then the
system will use the plain text authentication.
The authentication mode specified by the above command must be the same as that of the other
routers within the area; the authentication password for routers that communicate over OSPF in
the same network must be the same.
To cancel the specified area authentication mode, in the OSPF routing mode, use the command
no area {id | A.B.C.D} authentication.
In OSPF, the network types of an interface have the following options: broadcast, point-to-point,
and point-to-multipoint. By default, the network type of an interface is broadcast. To configure
the network type of an interface, in the interface configuration mode, use the following command:
To set the network type as the default broadcast type, use the following command:
n o ip o sp f n etwo rk
Route aggregation refers to aggregating the routing information with the same prefix together
through ABR, and then only advertising one route to other areas. You can configure multiple
aggregation segments in one area, so that OSPF can aggregate multiple segments. By default, the
route aggregation function is disabled. To configure route aggregation for an area, in the OSPF
routing mode, use the following command:
area { id | A.B.C.D } ran ge { A.B.C.D/M } [advertise | n o t-advertise]
l id | A.B.C.D- Specifies an area ID that will perform the route aggregation, in form of a 32-bit
digital number, or an IP address.
l advertise - Specifies to aggregate the routes of the segment and advertises the aggregated
route.
l not-advertise -Specifies to aggregate the routes of the segment, but do not advertise the
aggregated route.
The route aggregation function is only applicable to an area border router (also known as ABR, the
router that connects the backbone area and non-backbone area).
To cancel the route aggregation, in the OSPF routing mode, use the command no area {id |
A.B.C.D} range {A.B.C.D/M} [advertise | not-advertise].
The default cost of an area refers to the default routing cost for sending a packet to the stub area.
To configure default cost for an area, in the OSPF routing mode, use the following command:
area { id | A.B.C.D } default-co st cost-value
l id | A.B.C.D - Specifies an area ID the default cost will be applied to, in form of a 32-bit
digital number, or an IP address.
l cost-value - Specifies a cost value. The value range is 0 to 16777214. If no value is specified,
the system will use the value of 1.
To restore to the cost value of 1, in the OSPF routing mode, use the command no area {id |
A.B.C.D} default-cost.
Virtual link is used to connect the discontinuous backbone areas, so that they can maintain logical
continuity. To configure virtual link parameters and its timer parameters, in the OSPF routing
mode, use the following command:
area { id | A.B.C.D } virtual-lin k A.B.C.D [h ello -in terval interval-value ] [retran smit-in terval
interval-value ] [tran smit-delay interval-value ] [dead-in terval interval-value ]
l id | A.B.C.D - Specifies an area ID that requires virtual link, in form of a 32-bit digital num-
ber, or an IP address.
l virtual-link A.B.C.D - Specifies the Router ID that is used as a virtual link router.
l hello-interval interval-value - Specifies the interval for sending the Hello packets. The value
range is 1 to 65535 seconds. The default value is 10.
l retransmit-interval interval-value - After sending a LSA packet to its neighbor, a router will
wait for the acknowledge from the peer. If no ACK packet is received after the specified
l transmit-delay interval-value - Specifies the transmit delay time of the update packets. The
value range is 1 to 65535 seconds. The default value is 1.
l dead-interval interval-value - If a router has not received the Hello packet from its peer for a
certain period, it will determine the peering router is dead. This period is known as the dead
interval between the two adjacent routers. This parameter is used to specify the value of dead
interval. The value range is 1 to 65535 seconds. The default value is 40.
To restore to the default timer values, in the OSPF routing mode, use the command no area {id |
A.B.C.D} virtual-link A.B.C.D [hello-interval] [retransmit-interval] [transmit-delay] [dead-inter-
val].
To configure the authentication mode of the virtual link, in the OSPF routing mode, use the fol-
lowing command:
area { id | A.B.C.D } virtual-lin k A.B.C.D auth en ticatio n [message-digest] [auth en ticatio n -key
string ] [message-digest-key ID md5 string ] [n ull]
l id | A.B.C.D - Specifies an area ID that requires virtual link, in form of a 32-bit digital num-
ber, or an IP address.
l virtual-link A.B.C.D - Specifies the Router ID that is used as a virtual link router.
l authentication-key string - Specifies the password for the plain text authentication.
l null - No authentication.
To cancel the authentication mode, in the OSPF routing mode, use the command no area {id |
A.B.C.D} virtual-link A.B.C.D authentication [message-digest] [authentication-key string] [mes-
sage-digest-key ID].
The stub area refers to the area that does not send or receive Type-5 LSA (AS-external-LSAs).
For the network that generates large amount of Type-5 LSAs, this approach can effectively reduce
the router LSDB size within the stub area, and the resource occupation arising from SPF cal-
culation on the router. The stub area is usually located at the border of the autonomy system. To
configure the stub area of OSPF, in the OSPF routing mode, use the following command:
area { id | A.B.C.D } stub [n o -summary]
l id | A.B.C.D - Specifies an ID for the stub area, in form of a 32-bit digital number, or an IP
address.
l no-summary - Stops ABR from sending Type 3 or Type 4 Summary LSA to the stub area.
To cancel the specified stub area, in the OSPF routing mode, use the command no area {id |
A.B.C.D} stub [no-summary].
A stub area cannot redistribute routes. You can configure the area as an NSSA area to allow for
route redistribution by keeping other stub area characteristics. To configure the NSSA area of
OSPF, in the OSPF routing mode, use the following command:
area { id | A.B.C.D } n ssa [n o -summary | n o -redistrib utio n | default-in fo rmatio n -o rigin ate]
l id | A.B.C.D - Specifies an ID for the NSSA area, in form of a 32-bit digital number, or an IP
address.
OSPF can calculate the cost of sending OSPF packets for an interface based on the interface band-
width. To configure reference bandwidth, in the OSPF routing mode, use the following com-
mand:
auto -co st referen ce-b an dwidth bandwidth
l bandwidth - Specifies the bandwidth value. The value range is 1 to 4294967 Mbps. The
default value is 100.
To calculate the cost of sending OSPF packets for an interface based on the interface type, in the
OSPF routing mode, use the commandno auto-cost reference-bandwidth
The default metric configured here will take effect when redistributing. To specify the default
metric for OSPF, in the OSPF routing configuration mode, use the following command:
default-metric value
l value - Specifies the default metric value. The value range is 1 to 16777214.
To restore to the original metric value, in the OSPF routing configuration mode, use the com-
mand no default-metric.
You can specify if the default route will be redistributed to other routers with OSPF enabled. By
default OSPF will not redistribute the default route. To configure the default information ori-
ginate, in the OSPF routing configuration mode, use the following command:
default-in fo rmatio n o rigin ate [always] [typ e {1|2}] [metric value ]
l type {1|2} - Specifies the type of the external route associated with the default route that is
sent to OSPF routing area. 1 refers to type1 external route, 2 refers to type2 external route.
l metric value - Specifies the metric value for the default route that will be sent. If no default
metric value is specified by this command or by the command default-metric value, then
OSPF will use the value of 20. The value range is 0 to16777214.
To restore to the value of 20, in the OSPF routing configuration mode, use the command no
default-information originate.
To configure the default distance for OSPF route, in the OSPF routing configuration mode, use
the following command:
distan ce distance-value
l distance-value - Specifies the default administration distance value. The value range is 1 to.
255. If no value is specified, OSPF will use the value of 110.
To restore to the value of 110, in the OSPF routing configuration mode, use the command no dis-
tance.
You can specify the following two OSPF protocol timers: how long OSPF will re-calculate the
path after receiving an update, and the interval between the two OSPF calculations. To configure
an OSPF timer, in the OSPF routing configuration mode, use the following command:
timers sp f delay1 delay2
l delay1 - After receiving the update, OSPF will re-calculate the path within the specified
period. The value range is 0 to 65535 seconds. The default value is 5.
l delay2 - Specifies the interval between the two calculations. The value range is 0 to 65535
seconds. The default value is 10.
To specify the network interface that enables OSPF and add the network to the specified area, in
the OSPF routing configuration mode, use the following command:
n etwo rk A.B.C.D/M area { id | A.B.C.D }
l area {id | A.B.C.D} - Specifies the area ID the network will be added to, in form of a 32-bit
digital number, or an IP address.
To cancel the specified network interface, in the OSPF routing configuration mode, use the com-
mand no network A.B.C.D/M area {id | A.B.C.D}.
Configuring Redistribute
OSPF allows you to introduce information from other OSPF processes and routing protocols
(BGP, IS-IS, connected, static, RIP, VPN and Domain Name routing) and redistribute the inform-
ation. You can set the metric and type of the external route for the redistribute, or filter the rout-
ing information based on a route map and only distribute specific routing information. To
configure the redistribute metric, in the OSPF routing configuration mode, use the following com-
mand:
redistrib ute {b gp | co n n ected | isis | o sp f process-id | static | rip | vp n | do main } [typ e {1
| 2}] [metric value ] [ro ute-map name ] [tag tag-value ]
l bgp | connected | isis | ospf process-id | static | rip | vpn - Specifies the protocol type
which can be bgp, connected, isis, ospf, static, rip, VPN or domain (domain name routing).
When introducing information from other OSPF processes, specify the process.
l type {1|2} - Specifies the type of the external route. 1 refers to type1 external route, 2
refers type2 external route.
l route-map name - Specifies the route map that is used to filter the routing information intro-
duced from other routing protocols. For more information about route map, see Configuring a
Route Map.
l tag tag-value – Specifies the tag values of the redistributed route. The value range is 1 to
4294967295.
By default the system will introduce all the routing information. You can filter the routing inform-
ation introduced from other routing protocols by referencing a route map. The route map mainly
consists of two parts: matching rules and actions (permit or deny) for the matched routing inform-
ation. If introduced routing information hits any matching rule, the system will take the con-
figured action, i.e., permit or deny the introduced routing information.
Notes:
l If the action is set to Permit, the system will only permit the matched routing
information and deny all the unmatched routing information.
l If the action is set to Deny, the system will deny the matched routing inform-
ation, but still permit all the unmatched routing information.
To configure a route map and filter the introduced routing information, take the following steps:
2. Add matching conditions to the matching rules. The matching condition can be the metric,
destination address, next-hop IP address or next-hop interface of the introduced routing
information. One matching rule may contain multiple matching conditions, and the relation
between these conditions is AND, i.e., in order to hit a matching rule, the routing inform-
ation information must satisfy all the matching conditions in the rule.
3. If the matching condition is the destination address or next-hop IP address, also configure a
route access-list that will be referenced. For more information about route access-list, see
Configuring a Route Access-list.
4. If needed, require the system to continue to match another rule after the routing inform-
ation hits a matching rule.
5. If needed, modify partial attrubutes of the introduced routing information before redis-
tribution.
To create a route map and add a matching rule to the route map, in the global configuration mode,
use the following command:
ro ute-map name {den y | p ermit} sequence
l route-map name - Specifies the name of the route map, and enters the route map con-
figuration mode. The value range is 1 to 31 characters. If the name already exists in the sys-
tem, you will directly enter the route map configuration mode.
l deny | permit - Specifies the action for the matched routing information.
l sequence - Specifies the sequence number for the matching rule in the route map. The value
range is 1 to 65535.
l sequence - Only deletes the specified matching rule from the route map.
To add a matching condition to the matching rule, in the route map configuration mode, use the
following command:
match {as-p ath access-list-number | co mmun ity { community-list-name | community-list-num-
ber } [ exact-match ] | metric metric-value | in terface interface-name | ip address access-list |
ip n ext-h o p access-list | tag tag-value }
l metric metric-value - Specifies to match the metric of the introduced routing information.
The value range is 0 to 4294967295.
l interface interface-name - Specifies to match the next-hop interface of the introduced routing
information.
l ip address access-list - Specifies to match the destination address of the introduced routing
information. access-list is the route access-list configured in the system. If the destination
address of the routing information is the permitted address in the route access-list, the system
l ip next-hop access-list - Specifies to match the next-hop IP address of the introduced routing
information. access-list is the route access-list configured in the system. If the next-hop IP
address of the routing information is the permitted address in the route access-list, the system
will conclude the matching succeeds. For more information about route access-list, see Con-
figuring a Route Access-list.
l tag tag-value – Matches the route tag value of OSPF protocol. If the configured tag value of
the route here matches the tag value in the static route, the match is considered successful.
The value range is 1 to 4294967295.
Repeat the above command to add more matching conditions to the matching rule. To delete the
specified matching condition from the matching rule, in the route map configuration mode, use
the following command:
n o match {metric | in terface | ip address | ip n ext-h o p }
Notes: If you only created a route map but did not add any matching rule, by default
the system will conclude all the introduced routing information is matched.
For example, the following commands will only allow OSPF to redistribute the routing inform-
ation from BGP with the next-hop interface set to eth0/1 and metric set to 50:
hostname(config-route-map)# exit
hostname(config-vrouter)# ro uter o sp f
hostname(config-router)# en d
By default if the introduced routing information hits any matching rule, the system will not con-
tinue to match any other matching rules. For fine-grained control, you can require the system to
continue to match another matching rule even after hitting a matching rule. To continue to match
another matching rule, in the route map configuration mode, use the following command:
co n tin ue [ sequence ]
l sequence - Specifies the sequence number for the matching rule that will be continued. The
value range is 1 to 65535. This sequence number must be larger than the sequence number of
the current matching rule. If this parameter is not specified, the system will continue to match
the next rule after hitting the current rule.
To cancel the above configuration, in the route map configuration mode, use the following com-
mand:
n o co n tin ue
For example, the following commands will also only allow OSPF to redistribute the routing
information from BGP with the next-hop interface set to eth0/1 and metric set to 50:
hostname(config-route-map)# co n tin ue 20
hostname(config-route-map)# exit
hostname(config-route-map)# exit
hostname(config-vrouter)# ro uter o sp f
hostname(config-router)# en d
For the introduced routing information, you can modify partial attributes before redistribution. To
modify the attribute of the introduced routing information, in the route map configuration mode,
use the following command:
set {metric metric-value | metric-typ e {typ e-1 | typ e-2}| tag tag-value }
l metric metric-value - Specifies the metric of the introduced routing information. The value
range is 0 to 4294967295.
l metric-type {type-1 | type-2} - Specifies the metric type of the external route. type-1 indic-
ates type1 external route metric, and type-2 indicates type2 external route metric.
l tag tag-value – Specifies the tag value of OSPF protocol’s redistributed route. The value
range is 1 to 4294967295.
To cancel the modification and restore to the metric setting when the routing information was
introduced, in the route map configuration mode, use the following command:
n o set {metric | metric-typ e | tag }
The destination address and next-hop IP address in the matching conditions are matched by route
access-list. A route access-list mainly consists of two parts: IP address matching rules and actions
(Permit or Deny) for the matched IP addresses. If the destination address or next-hop IP address
matches the IP address defined in the route access-list, the system will take the specified action.
One route access-list may contain multiple IP address matching rules. The system will match
these rules in the sequence of rule creation time, and will stop matching if any rule is hit; if no
rule is hit, the system will take the action of Deny.
To configure a route access-list, in the global configuration mode, use the following command:
access-list ro ute name {den y | p ermit} { A.B.C.D/M [exact-match ] | an y}
l name - Specifies the name of the route access-list. The value range is 1 to 31 characters.
To delete the specified route access-list, in the global configuration mode, use the following com-
mand:
n o access-list ro ute name [{den y | p ermit} { A.B.C.D/M [exact-match ] | an y}]
If any IP address matching rule is specified, the command will only delete the rule from the route
access-list, but will not delete the route access-list.
To add description to the route access-list, in the global configuration mode, use the following
command:
access-list ro ute name descrip tio n description
l name - Specifies the name of the route access-list. The value range is 1 to 31 characters.
l description - Specifies the description of the route access-list. The value range is 1 to 31 char-
acters.
To delete the description, in the global configuration mode, use the following command:
n o access-list ro ute name descrip tio n
For example, the following commands will disallow OSPF to redistribute the routing information
from BGP with the next-hop IP address set to 192.168.1.1 or any IP address in 192.168.2.0 seg-
ment:
hostname(config-route-map)# exit
hostname(config-vrouter)# ro uter o sp f
hostname(config-router)# en d
Configuring a Distance
You can specify the administration distance based on the type of route. To configure the distance,
in the OSPF routing configuration mode, use the following command:
distan ce o sp f {in tra-area distance-value | in ter-area distance-value | extern al distance-value }
l intra-area distance-value - Specifies the administration distance for the routes within an area.
The value range is 1 to 255. The default value is 110.
l inter-area distance-value - Specifies the administration distance for the routes between areas.
The value range is 1 to 255. The default value is 110.
l external distance-value- Specifies the administration distance for the external type5 route. The
value range is 1 to 255. The default value is 110.
To restore to the default value, in the OSPF routing configuration mode, use the command no dis-
tance ospf.
Configuring a Passive IF
You can configure some interfaces to only receive but not to send data. This kind of interfaces is
known as a passive interface. To configure a passive interface, in the OSPF routing configuration
mode, use the following command:
p assive-in terface interface-name
OSPF uses the route access-list to filter the introduced route. To configure the route filter func-
tion based on the route access-list, use the following command in the OSPF routing configuration
mode:
distrib ute-list access-list-name in [ interface-name ]
l access-list-name – Specifies name of the route access-list. For more information about route
access-list, see Configuring a Route Access-list .
l interface-name – Specifies name of the interface. After specifying this interface, the system
will filter the OSPF route from the specified interface. If the interface name is not specified,
the system will filter all OSPF routes.
The OSPF function for an interface must be configured in the interface configuration mode. The
OSPF configuration for the Hillstone device’s interfaces includes:
The priority of OSPF authentication for an interface is higher than that of the OSPF authen-
tication for an area. Hillstone devices support the plain text and MD5 authentication. By default
the OSPF authentication for an interface is disabled. To enable or disable it, in the interface con-
figuration mode, use the following commands:
ip o sp f auth en ticatio n
n o ip o sp f auth en ticatio n
To configure the password for the plain text authentication, in the interface configuration mode,
use the following command:
ip o sp f auth en ticatio n -key string
To cancel the specified password, in the interface configuration mode, use the command no ip
ospf authentication-key.
To configure the MD5 authentication ID and password, in the interface configuration mode, use
the following command:
ip o sp f message-digest-key ID md5 string
To cancel the specified password, in the interface configuration mode, use the command no ip
ospf message-digest-key ID.
To specify the link cost for an interface, in the interface configuration mode, use the following
command:
ip o sp f co st cost-value [lo cal]
l local - Specifies the link cost for an interface as local. When the device is operating in the HA
AA mode, the parameter will prevent the device from synchronizing the cost value to the
backup device. Thus the two devices’ link costs will be different, avoiding asymmetrical
OSPF routes.
To cancel the specified link cost, in the interface configuration mode, use the command no ip
ospf cost [local].
There are four interface timers: the interval for sending Hello packets, the dead interval of adja-
cent routers, the interval for retransmitting LSA, and the transmit delay for updating packets.
To specify the interval for sending Hello packets for an interface, in the interface configuration
mode, use the following command:
ip o sp f h ello -in terval interval
l interval - Specifies the interval for sending Hello packets for an interface. The value range is 1
to 65535 seconds. The default value is 10.
To restore to the default interval, in the interface configuration mode, use the command no ip
ospf hello-interval.
If a router has not received the Hello packet from its peer for a certain period, it will determine
the peering router is dead. This period is known as the dead interval between the two adjacent
routers. To configure the dead interval for an interface, in the interface configuration mode, use
the following command:
ip o sp f dead-in terval interval
l interval - Specifies the dead interval of adjacent routes for an interface. The value range is 1 to
65535 seconds. The default value is 40 (4 times of sending the Hello packets).
To restore to the default dead interval, in the interface configuration mode, use the command no
ip ospf dead-interval.
l interval - Specifies the LSA retransmit interval for an interface. The value range is 3 to 65535
seconds. The default value is 5.
To restore to the default retransmit interval, in the interface configuration mode, use the com-
mand no ip ospf retransmit-interval.
To specify the transmit delay for updating packet for an interface, in the interface configuration
mode, use the following command:
ip o sp f tran smit-delay interval
l interval - Specifies the transmit delay for updating packet for an interface. The value range is 1
to 65535 seconds. The default value is 1.
To restore to the default transmit delay, in the interface configuration mode, use the command no
ip ospf transmit-delay.
The router priority is used to determine which router will act as the designated router. The des-
ignated router will receive the link information of all the other routers in the network, and broad-
cast the received link information. To specify the router priority for an interface, in the interface
configuration mode, use the following command:
ip o sp f p rio rity level
l level - Specifies the router priority. The value range is 0 to 255. The default value is 1. The
router with priority set to 0 will not be selected as the designated router. If two routers within
a network can both be selected as the designated router, the router with higher priority will be
selected; if the priority level is the same, the one with higher Router ID will be selected.
To restore to the default priority, in the interface configuration mode, use the command no ip
ospf priority.
In OSPF, the network types of an interface have the following options: broadcast, point-to-point,
and point-to-multipoint. By default, the network type of an interface is broadcast. To configure
the network type of an interface, in the interface configuration mode, use the following command:
ip o sp f n etwo rk {p o in t-to -p o in t | p o in t-to -multip o in t}
To set the network type as the default broadcast type, use the following command:
n o ip o sp f n etwo rk
To view the OSPF route information, in any mode, use the following command:
sh o w ip ro ute o sp f [vro uter vrouter-name ]
l vrouter-name - Shows the OSPF route information of the specified VRouter name.
To view the OSPF information of the Hillstone device, in any mode, use the following command:
sh o w ip o sp f [vro uter vrouter-name ] [p ro cess process-id ]
To view the OSPF protocol’s database information of the Hillstone device, in any mode, use
the following commands:
sh o w ip o sp f datab ase {asb r-summary | extern al | n ssa-extern al | n etwo rk | ro uter | sum-
mary} [ A.B.C.D ] [{adv-ro uter A.B.C.D } | self-o rigin ate] [vro uter vrouter-name ] [p ro cess pro-
cess-id ]
sh o w ip o sp f datab ase [max-age | self-o rigin ate] [vro uter vrouter-name ] [p ro cess process-id ]
To view the OSPF interface information, in any mode, use the following command:
sh o w ip o sp f in terface [ interface-name ] [vro uter vrouter-name ] [p ro cess process-id ]
To view the OSPF virtual link information, in any mode, use the following command:
sh o w ip o sp f virtual-lin ks [vro uter vrouter-name ] [p ro cess process-id ]
To view the OSPF neighbor information, in any mode, use the following command:
sh o w ip o sp f n eigh b o r [ A.B.C.D | detail] [vro uter vrouter-name ] [p ro cess process-id ]
To view the route map information, in any mode, use the following command:
sh o w ro ute-map [ name ]
To view the route access-list information, in any mode, use the following command:
sh o w access-list ro ute [ name ]
To view the route filtering information, in any mode, use the following command:
sh o w ip o sp f distrib ute-list [vro uter vrouter-name ] [p ro cess process-id ]
Configuring IS-IS
IS-IS (Intermedia System-to-Intermediate System) is a dynamic routing protocol that is designed
by ISP for CLNP (Connection-Less Network Protocol). To make it support IP, IETF (Interface
Engineering Task Force) modified IS-IS in RFC 1195. With the modifications added, the new IS-
IS, which is called Integrated IS-IS or Dual IS-IS, can be used in both TCP/IP environment and
OSI environment. StoneOS supports the application of IS-IS in the TCP/IP environment.
You can configure the IS-IS for each virtual router. Configuring IS-IS includes the following sec-
tions:
Basic Settings
To configure the IS-IS dynamic routing protocol, you need to enter the IS-IS routing configuring
mode by executing the following commands:
ip vrouter vrouter-name – In the global configuration mode, enter the VRouter configuration
mode.
router isis – Enter the IS-IS routing configuration mode and create the IS-IS process. The IS-IS
processes in each VRouter are independent.
The types include Level-1 router, Level-2 router, and Level-1-2 router. To configure the router
type, use the following command in the IS-IS routing configuration mode:
is-typ e [level-1 | level-1-2 | level-2-o n ly]
l level-1 | level-1-2 | level-2-only – Configure the type as Level-1 router (level-1) , Level-2
router (level-2-only), or Level-1-2 router (level-1-2). The default type is Level-1-2. Only
when the type is Level-1-2, you are allowed to configure the interface type as Level-1 or
Level-2.
To cancel the type settings, use the no is-type command in the IS-IS routing configuration mode.
By default, the IS-IS function is disabled at the interface. After creating an IS-IS process at the
current router, proceed to enable the IS-IS function at the interface. Use the following command
in the interface configuration mode:
isis en ab le
Use the no isis enable command to disable the IS-IS function at the interface.
When the router type is Level-1, the interface type can only be Level-1 and it can only establish
the Level-1 adjacency. When the router type is Level-2, the interface type can only be Level-2
and it can only establish the Level-2 adjacency. When the router type is Level-1-2, the interface
type can be Level-1 and Level-2. To configure the interface type, use the following command in
the interface configuration mode:
isis circuit-typ e [level-1 | level-1-2 | level-2-o n ly]
l level-1 | level-1-2 | level-2-only – Specify the interface type as Level-1 interface (level-1),
Level-2 interface (level-2-only), or Level-1-2 interface (level-1-2).
If there are two devices in the broadcast network, you can configure the link that the interface loc-
ates as the point-to-point type. For point-to-point type link, IS-IS does not execute the DIS elec-
tion and CSNP flooding. Use the following command in the interface configuration mode:
isis n etwo rk p o in t-to -p o in t
Use the no isis network point-to-point command to cancel the above settings.
NET (Network Entity Title) represents the network layer information of the IS, excluding the
transmission layer information. The NET address is used to mark the device with the IS-IS pro-
cess enabled. An IS-IS process can have at most three NET addresses and these NET addresses
must have the same System IDs. To specify the NET address for the device, use the following
command in the IS-IS routing configuration mode:
n et net [ local ]
l net – Specify the NET address for the device. When you use this device as level-1 router, it
must have the same area ID with other devices in the same area. When you use this device as
level-2 router, the process of establishing the adjacency will not check the area ID.
l local - Specifies NET address as a local configuration. This kind of configuration is applicable
to HA Peer mode, and is not synchronized to HA configuration. By default theNET address
is not a local configuration.
To cancel the NET address configurations, use the no net net command.
To configure the administrative distance, use the following command in the IS-IS routing con-
figuration mode:
distan ce distance-value
If the metric style is Narrow, the router only generates and receives packets whose metric field is
narrow. The metric value of the interface ranges from 0 to 63. For the large network environment,
the maximum allowed metric of a route is 1023. When the metric value exceeds 1023, the des-
tination is considered to be unreachable. If the metric style is Wide, the router only generates and
receives packets whose metric field is wide. The metric value of the interface ranges from 0 to
16777215. If the metric style is transition, the router can generate and receive packets whose met-
ric field is wide or narrow. To configure the metric style, use the following command in the IS-IS
routing configuration mode:
metric-style {wide | n arro w | tran sitio n }
l wide - The router only generates and receives packets whose metric field is Wide.
l narrow - The router only generates and receives packets whose metric field is Narrow.
l transition - The router can generate and receive packets whose metric field is Wide or Nar-
row.
The metric is used to calculate the cost to the destination network via the selected link. To con-
figure the metric of the link, use the following command in the interface configuration mode:
isis metric value [level-1 | level-2]
l value – Configure the metric value of the link that the interface locates. The value ranges
from 1 to 16777214 and the default value is 10.
Use the no isis metric command to restore the metric value to the default one.
Configuring Redistribute
IS-IS allows you to introduce routing information from other routing protocols (connected, static,
OSPF, BGP and RIP) and redistribute the information. To configure the redistribute and the cor-
responding metric, in the IS-IS routing configuration mode, use the following commands:
redistrib ute {co n n ected | static | o sp f | b gp | rip } [level-1 | level-1-2 | level-2] [metric
value ] [metric-typ e {extern al | in tern al}]
l connected | static | ospf | bgp | rip - Specify the protocol type which can be connected,
static, OSPF, bgp, or rip.
l level-1 | level-1-2 | level-2 – Specify the level for the introduced route, including the level-
1 route (level-1), level-2 route (level-2), and both levels (level-1-2).
l metric value - Specify a metric value for the introduced route. The value range is 0 to
4294967296. The default value is 0. When the metric type of the router is narrow, the metric
value of the introduced route cannot exceed 63.
l metric-type {external | internal} – If you select the external metric type (external), the met-
ric value will be the sum of the value configured in metric value and 64. If you select the
internal metric type (internal), the metric value will be the one you configured in the metric
value command. The default option is internal.
To cancel the redistribute configurations, use the no redistribute {connected | static | ospf | bgp
| rip} [level-1 | level-1-2 | level-2] command.
The default route in the introduced routing information will not be used by the routers. To advert-
ise the default route in the routing domain, in the IS-IS routing configuration mode, use the
If there is a default route in the router with the above command configured, the IS-IS process in
this router will advertise this route via Level-2 LSPs.
To cancel the default route advertisement, use the no default-information originate command.
Network Optimization
To configure the interval that the interface sends Hello packets, use the following command in
the interface configuration mode:
isis h ello -in terval value [level-1 | level-2]
l value – Specify the interval that the interface sends Hello packets. The value ranges from 1
to 600. The unit is second. The default value is 3.
l level-1 | level-2 – Use level-1 to configure the interval for sending Level-1 Hello packets.
Use level-2 to configure the interval for sending Level-2 Hello packets.
Use the no isis hello-interval command to restore the interval to the default value.
Within the hold time, if a router does not receive Hello packets form its neighbor, it considers the
neighbor down and will re-calculate the routes. The hold time is to multiply the Hello multiplier
and the Hello interval. To configure the Hello multiplier, use the following command in the inter-
face configuration mode:
isis h ello -multip lier value [level-1 | level-2]
l value – Specify the multiplier for Hello packets. The value ranges from 2 to 100. The default
value is 10.
To restore the multiplier value to the default value, use the no isis hello-multiplier command.
Use the padding function to pad the hello packets and make them as large as the MTU of the inter-
face. To configure the padding function, use the following command in the interface con-
figuration mode:
isis h ello p addin g
To cancel the padding function, use the no isis hello padding command.
In the broadcast network, you can specify the DIS priority for the interface to influence the DIS
election. In the DIS election, the router whose interface has higher DIS priority will be selected
as the DIS. If interfaces have the same priority, the router whose interface has larger MAC address
will be selected as the DIS. To configure the DIS priority for the interface, use the following com-
mand in the interface configuration mode:
isis p rio rity value [level-1 | level-2]
l value – Specify the DIS priority for this interface. The value ranges from 0 to 127. The
default value is 64.
l level-1 | level-2 – Use level-1 to specify the priority for the Level-1 interface. Use level-2 to
specify the priority for the Level-2 interface. Without specifying level-1 or level-2, the pri-
ority is effective for both Level-1 and Level-2 interfaces.
Use the no isis priority [level-1 | level-2] command to restore the priority of the specified inter-
face level to the default one.
After configure an interface as a passive interface, this interface will not send and receive any IS-
IS packets, and it will not establish adjacency with neighbors. But you can redistribute the con-
nected routing information about this network to other interfaces via LSPs. To configure an inter-
face as a passive interface, use the following command in the interface configuration mode:
isis p assive
When the network topology changes, the router will generate LSPs. To avoid the frequent gen-
eration of LSPs consuming a larger amount of router resources and bandwidth, you can configure
the LSP generation interval. In the IS-IS routing configuration mode, use the following command
to configure the LSP generation interval:
lsp -gen -in terval value [level-1 | level-2]
l value – Specify the LSP generation interval. The value ranges from 1 to 120. The default
value is 30. The unit is second.
l level-1 | level-2 – Enter level-1 to specify the LSP generation interval for level-1 LSPs only,
and enter level-2 to specify the LSP generation interval for level-2 LSPs only. If you enter no
parameter, the configured interval value will be used for both level-1 LSPs and level-2 LSPs.
To restore the value to the default one, use the no lsp-gen-interval command.
Each LSP has a maximum age. The LSP with an age of 0 will be deleted from the LSDB. To con-
figure the maximum age of LSPs, in the IS-IS routing configuration mode, use the following com-
mand:
max-lsp -lifetime value
l value – Specify the maximum age of LSP. The value ranges from 350 to 65535. The default
value is 1200. The unit is second.
Since each LSP has a maximum age, the router must refresh the LSPs generated by itself. To con-
figure the LSP refresh interval, in the IS-IS routing configuration mode, use the following com-
mand:
lsp -refresh -in terval value
l value – Specify the LSP refresh interval. The value ranges from 1 to 65535. The default
value is 900. The unit is second. Hillstone recommends that the refresh interval is 300s less
than the maximum age, which ensures that the LSP refresh can reach the routes within the
area before the arrival of the maximum age.
Use the no lsp-refresh-interval command to restore the value to the default one.
If the LSDB changes, the router will re-calculate the SPF. To configure the SPF calculation inter-
val, use the following command in the IS-IS routing configuration mode:
sp f-in terval value [level-1 | level-2]
l value – Specify the SPF calculation interval. The value ranges from 1 to 120. The default
value is 10. The unit is second.
l level-1 | level-2 – Enter level-1 to specify the SPF calculation interval for level-1 SPFs only,
and enter level-2 to specify the SPF generation interval for level-2 SPFs only. If you enter no
parameter, the configured interval value will be used for both level-1 SPFs and level-2 SPFs.
Use the no spf-interval command to restore the value to the default one.
The lack of resources can lead to the result that the LSDB is inaccurate or incomplete. The router
whose resource is lack will add the overload bit in the LSPs. After other routers receive these
LSPs, they will not use this router whose resource is lack to forward packets. If the packets
whose destination address is the network that is connected to this router, the packets will still be
In the IS-IS routing domain, System ID, as part of the NET address, is used to identify the host
or the router. Hostname mapping maps the System ID to the hostname. The router will maintain a
mapping table which records the mapping settings between the System ID and the hostname. To
configure the hostname mapping, use the following command in the IS-IS routing configuration
mode:
h o stn ame dyn amic
Authentication
Configure the authentication methods for the LSP packets, CSNP packets, and PSNP packets.
With the authentication configured, routers will authenticate the preceding packets when they
receive them. But this will not affect the Hello packets for establishing neighbors. There are two
authentication methods, clear text authentication and MD5 authentication. As the default option,
the clear text authentication cannot secure the communication and the password is forwarded
together with the packets. To configure the authentication method, use the following command
in the IS-IS routing configuration mode:
auth en ticatio n {md5 | text} [level-1 | level-2]
l md5 | text – Use the MD5 authentication (md5) or the clear text authentication (text).
l level-1 | level-2 – Use level-1 to configure the authentication method for the packets
between Level-1 routers, which prevents Level-1 routers learning the routing information
from the untrusted routers . The Level-1 routers in the same area must use the same
To cancel the authentication configurations, use the no authentication mode command in the IS-
IS routing configuration mode.
After configuring the authentication methods, proceed to configure the passwords. To specify the
password for the packet authentication between level-1 routers, use the following command in
the IS-IS routing configuration mode:
area-p asswo rd word
l word – Specify the password. You can specify at most 32 characters. To delete the pass-
word, use the no area-password command.
Interface authentication is used to verify the legality of its neighbors and avoid the adjacency
establishment with illegal routers. After configuring interface authentication, the password will be
encapsulated in the Hello packets. After the packets were verified, the routers can become neigh-
bors. To become neighbors, two interfaces must use the same interface authentication method
and password. To configure the interface authentication, use the following command in the inter-
face configuration mode:
isis auth en ticatio n {md5 | text} [level-1 | level-2]
l level-1 | level-2 – Use level-1 to configure the authentication method for the Hello packets
between Level-1 routers. Use level-2 to configure the authentication method for the Hello
packets between level-2 routers.
l level-1 | level-2 – Use level-1 to configure the password for the Hello packets between
Level-1 routers. Use level-2 to configure the password for the Hello packets between level-2
routers.
To show the IS-IS process and corresponding information, use the following command in any
mode:
sh o w isis [vro uter vrouter-name ]
To show the link state database, use the following command in any mode:
sh o w isis datab ase [detail] [vro uter vrouter-name ]
To show the IS-IS interface information, use the following command in any mode:
sh o w isis in terface [ interface-name ]
To show the dynamic host information, use the following command in any mode:
sh o w isis h o stn ame [vro uter vrouter-name ]
To show the IS-IS routing information, use the following command in any mode:
sh o w isis ro ute [ A.B.C.D/M ] [vro uter vrouter-name ]
To show the routing redistribute information, use the following command in any mode:
sh o w isis ro ute redistrib ute [level-1 | level-2] [ A.B.C.D/M ] [vro uter vrouter-name ]
Configuring BGP
BGP, the abbreviation for Border Gateway Protocol, is a routing protocol that is used to exchange
dynamic routing information among the autonomous systems (An autonomous system is the
router and network group under the control of a management institution. All the routers in the
autonomous system must run the same routing protocol). It is also the protocol used between
ISPs. BGP runs over port TCP 179, and supports Classless Inter-Domain Routing (CIDR). BGP
operates in two ways: when running between the autonomous systems, it is known as EBGP;
when running within the autonomous system, it is know as IBGP. BGP has the following char-
acteristics:
l After the initial TCP connection has been established, BGP neighbors exchange the entire
BGP routing tables, then they only exchange the updated routing information.
l BGP is a distance vector routing protocol that is designed to avoid the routing loop.
The router that sends BGP messages is known as a BGP speaker. The BGP speaker will receive
or generate new routing information, and advertise to other speakers. When a speaker receives a
new route from another autonomous system, if the route is shorter than all the known routes, or
there is no known route at all, the speaker will advertise the route to all the other speakers. The
BGP speaker that is exchanging information is knows as a peer to its counterpart, and multiple
You can configure the BGP protocol for different VRouters respectively. The BGP protocol con-
figuration includes:
l Specifying a Router ID
l Configuring a timer
l Configuring description
l Configuring BGP GR
The BGP protocol options must be configured in the BGP routing mode. To enter the BGP rout-
ing mode, in the global configuration mode, use the following commands:
ip vrouter vrouter-name (enters the VRouter configuration mode)
ro uter b gp number
l number - Specifies the number of the autonomous system. The value range is 1 to
4,294,967,295.
The above command will enable the BGP function on the system, create a BGP instance for the
specified autonomous system, and switch to the BGP instance configuration mode.
To delete the specified BGP instance, in the VRouter configuration mode, use the command no
router bgp number.
Specifying a Router ID
Each router running BGP protocol must be labeled with a Router ID. The Router ID is the
unique identifier of an individual router in the whole BGP domain, represented in the form of an
IP address. If the Router ID is not specified, the system will set the largest IP address of the loop-
back interface on the device as the Router ID; if there is no loopback interface or the IP address
of the loopback interface is not configured, the system will select the largest IP address of other
interfaces as the Router ID. To specify the Router ID, in the BGP instance configuration mode,
use the following command:
ro uter-id A.B.C.D
To cancel the specified Router ID, in the BGP instance configuration mode, use the following
command:
You can aggregate the routing entries in the BGP routing table. To create a route aggregation, in
the BGP instance configuration mode, use the following command:
aggregate-address { A.B.C.D/M | A.B.C.D A.B.C.D } [as-set] [summary-o n ly]
l A.B.C.D/M | A.B.C.D A.B.C.D - Specifies the network address for the aggregation. Hill-
stone devices support two formats: A.B.C.D/M or A.B.C.D A.B.C.D, for example,
1.1.1.0/24 or 1.1.1.0 255.255.255.0.
l as-set- If this parameter is specified, the system will advertise the aggregated path information
to other routers as its own path information.
l summary-only - If this parameter is specified, the system will only advertise the aggregated
route.
To cancel the specified route aggregation, in the BGP instance configuration mode, use the fol-
lowing command:
n o aggregate-address { A.B.C.D/M | A.B.C.D A.B.C.D}
To add a static BGP route, in the BGP instance configuration mode, use the following command:
n etwo rk { A.B.C.D/M | A.B.C.D A.B.C.D }
l A.B.C.D/M | A.B.C.D A.B.C.D - Specifies the static BGP routing entry. Hillstone devices
support two formats: A.B.C.D/M or A.B.C.D A.B.C.D, for example, 1.1.1.0/24 or 1.1.1.0
255.255.255.0.
To delete the specified static routing entry, in the BGP instance configuration mode, use the fol-
lowing command:
n o n etwo rk { A.B.C.D/M | A.B.C.D A.B.C.D }
You can configure two BGP timers which are KEEPALIVE and HOLDDOWN, as described
below:
l KEEPALIVE: The interval of sending the KEEPALIVE message to the BGP peer. By
default StoneOS sends the message every 60 seconds.
l HOLDDOWN: If the local router still has not received the KEEPALIVE message from any
peer after the HOLDDOWN time, then it will determine the peer is not active any more. The
default value is 180 seconds.
To configure a timer, in the BGP instance configuration mode, use the following command:
timers keepalive holddown
l keepalive - Specifies the interval for sending the KEEPALIVE message. The value range is 0
to 65535 seconds, but should not be larger than HOLDDOWN/3. The default value is 60. If
the value is larger than HOLDDOWN/3, the actual effective time will be HOLDDOWN/3.
The value 0 indicates never sending the KEEPALIVE message.
l holddown - Specifies the HOLDDOWN time. The value range is 0 to 65535 seconds or 3 to
65535 seconds. The default value is 180. The value 0 indicates never checking the
HOLDDOWN time.
To restore to the default timer value, in the BGP instance configuration mode, use the following
command:
n o timers
You can specify the administration distance for the local BGP routes or the BGP routes acquired
from other peers. To specify the administration distance for a BGP route, in the BGP instance
configuration mode, use the following command:
distan ce ebgp-distance ibgp-distance local-distance
l ibgp-distance - Specifies the administration distance for the IBGP route. The value range is 1
to 255. The default value is 200.
l local-distance - Specifies the administration distance for the local route. The value range is 1
to 255. The default value is 200.
To restore to the default administration distance for a BGP route, in the BGP instance con-
figuration mode, use the following command:
n o distan ce
By default, the metric of the redistributed IGP route remains unchanged, and the metric of the
redistributed connected route is 0. To specify the default metric of the redistributed routing, in
the BGP instance configuration mode, use the following command:
default-metric value
l value - Specifies the default metric value. The value range is 1 to 4294967295. To restore to
the default metric value, in the BGP instance configuration mode, use the following com-
mand:
To restore to the default metric value, in the BGP instance configuration mode, use the following
command:
n o default-metric
The BGP peer group is designed to simplify the configuration, and update the information in a
more effective way. To create a BGP peer group, in the BGP instance configuration mode, use
the following command:
n eigh b o r peer-group-name p eer-gro up
To delete the specified BGP peer group, in the BGP instance configuration mode, use the fol-
lowing command:
n o n eigh b o r peer-group-name p eer-gro up
To add a BGP peer-to-peer group, in the BGP instance configuration mode, use the following
command:
n eigh b o r A.B.C.D p eer-gro up peer-group-name
l A.B.C.D - Specifies the IP address of the BGP peer that will be added.
l peer-group-name - Specifies the peer group that has been created in the system.
To delete the specified BGP peer from the BGP peer group, in the BGP instance configuration
mode, use the following command:
n o n eigh b o r A.B.C.D p eer-gro up peer-group-name
To exchange BGP routing information, you need to specify a BGP peer (peer group) for the
device. To configure a BGP peer, in the BGP instance configuration mode, use the following com-
mand:
n eigh b o r { A.B.C.D | peer-group } remo te-as number
l A.B.C.D | peer-group - Specifies the IP address of the peer or the name of the peer group.
l number - Specifies the number of autonomous system the configured peer or peer group
belongs to.
To cancel the specified BGP peer or peer group, in the BGP instance configuration mode, use the
following command:
n o n eigh b o r { A.B.C.D | peer-group } remo te-as
To improve BGP security, you can configure MD5 authentication for the BGP peer or peer
group. With this function enabled, the two ends of a peer will have to pass the MD5 authen-
ticatoin in order to establish a TCP connection. To configure BGP MD5 authentication, in the
BGP instance configuration mode, use the following command:
n eigh b o r { A.B.C.D | peer-group } p asswo rd password
l A.B.C.D | peer-group - Specifies the IP address of the peer or the name of peer group.
l password password - Specifies the MD5 password string. The value range is 1 to 32 char-
acters.
To cancel the BGP MD5 authentication,in the BGP instance configuration mode, use the fol-
lowing command:
n o n eigh b o r { A.B.C.D | peer-group } p asswo rd
Notes: The MD5 password configured on the peers or peer groups must be con-
sistent.
By default, the BGP connection between the configured BGP peer or peer group and the device
is activated. You can de-activate or re-activate the BGP connection. To activate the BGP con-
nection, in the BGP instance configuration mode, use the following command:
n eigh b o r { A.B.C.D | peer-group } activate
l A.B.C.D | peer-group - Specifies the IP address of the peer or the name of the peer group.
To de-activate the BGP connection to the specified BGP peer or peer group, in the BGP instance
configuration mode, use the following command:
n o n eigh b o r { A.B.C.D | peer-group } activate
You can specify if the default route will be redistributed to other BGP peers or peer groups. By
default BGP will not redistribute the default route.
To configure the default information originate, in the BGP instance configuration mode, use the
following command:
default-in fo rmatio n o rigin ate
If there is no default route in the routing table,the system will not redistribute default route any
more.
To cancel the default information originate, in the BGP instance configuration mode, use the fol-
lowing command:
n o default-in fo rmatio n o rigin ate
To configure the default information originate, in the BGP instance configuration mode, use the
following command:
n eigh b o r { A.B.C.D | peer-group } default-o rigin ate
l A.B.C.D | peer-group - Specifies the IP address of the peer or the name of the peer group.
If there is no default route in the routing table,the system will construct a default route to redis-
tribute.
To cancel the default information originate, in the BGP instance configuration mode, use the fol-
lowing command:
n o n eigh b o r { A.B.C.D | peer-group } default-o rigin ate
Configuring Description
To configure description for a peer or peer group, in the BGP instance configuration mode, use
the following command:
n eigh b o r { A.B.C.D | peer-group } descrip tio n description
l A.B.C.D | peer-group - Specifies the IP address of the peer or the name of the peer group.
By default, the timer of BGP peers or peer groups in the whole BGP system is set to the value
specified by timer keepalive holddown. You can specify a different timer value for a specific BGP
peer or peer group. The priority of the specified value is higher than that of the value specified by
timer keepalive holddown. To specify a timer value for a BGP peer or peer group, in the BGP
instance configuration mode, use the following command:
n eigh b o r { A.B.C.D | peer-group } timers keepalive holddown
l A.B.C.D | peer-group - Specifies the IP address of the peer or the name of the peer group.
l keepalive - Specifies the interval for sending the KEEPALIVE message. The value range is 0
to 65535 seconds, but should not be larger than HOLDDOWN/3. The default value is 60. If
the value is larger than HOLDDOWN/3, the actual effective time will be HOLDDOWN/3.
The value 0 indicates never sending the KEEPALIVE message.
l holddown - Specifies the HOLDDOWN time. The value range is 0 to 65535 or 3 to 65535
seconds. The default value is 180. The value 0 indicates never checking the HOLDDOWN
time.
To cancel the specified timer for the BGP peer or peer group, in the BGP instance configuration
mode, use the following command:
n o n eigh b o r { A.B.C.D | peer-group } timers
With this function configured, the router will advertise the next hop of the BGP route for the
BGP peer or peer group is the router itself. To configure the next hop as itself, in the BGP
instance configuration mode, use the following command:
n eigh b o r { A.B.C.D | peer-group } n ext-h o p -self
To cancel next hop as itself, in the BGP instance configuration mode, use the following com-
mand:
n o n eigh b o r { A.B.C.D | peer-group } n ext-h o p -self
For BGP running between different AS (i.e., EBGP), if the BGP peers or peer groups are not dir-
ectly connected, you need to configure EBGP multihop in order to establish neighbor between
devices. To configure EBGP multihop, in the BGP instance configuration mode, use the fol-
lowing command:
n eigh b o r { A.B.C.D | peer-group } eb gp -multih o p [ ttl ]
l A.B.C.D | peer-group - Specifies the peer IP address or the name of peer group.
l ttl- Specifies the count of maximum hops to the peer IP address or peer group. The value
range is 1 to 255, and the default value is 255. If no peer or peer group can be found after the
maximum hops, the system will conclude neighbor cannot be established.
To cancel EBGP multihop, in the BGP instance configuration mode, use the following command:
n o n eigh b o r { A.B.C.D | peer-group } eb gp -multih o p
If a peer or peer group is disabled, all the sessions to the peer or peer group will be dropped, and
all the relevant routing information will be deleted. To disable a peer or peer group, in the BGP
instance configuration mode, use the following command:
n eigh b o r { A.B.C.D | peer-group } sh utdo wn
l A.B.C.D | peer-group - Specifies the IP address of the peer or the name of the peer group.
To re-enable the specified peer or peer group, in the BGP instance configuration mode, use the
following command:
n o n eigh b o r { A.B.C.D | peer-group } sh utdo wn
To reset a BGP connection, in the execution mode, use the following command:
clear ip b gp {* | A.B.C.D | extern al | p eer-gro up peer-group-name | number } [vro uter
vrouter-name ]
l vrouter vrouter-name - Specifies the VRouter where the reset operation is performed.
An AS-path access list is the sequence of the AS numbers that the route has traversed before
reaching the destination network. Before reaching the destination network, the BGP route will
add the AS number to the AS-path access list each time it traversed an AS.
With an AS-path access list, you can use the route filter function. The AS-path access list mainly
consists of a set of regular expressions and the actions that will be performed when the route
matches the regular expressions (permit or deny). When the regular expression matches the AS
path of the route, the system will execute the specified action. If not, the system will deny the
route. The system supports up to 64 AS-path access list and each AS-path access list supports up
to 8 regular expressions.
To configure the AS-path access list, use the following command in the global configuration
mode:
ip as-p ath access-list access-list-number {den y | p ermit} regular-expression
l deny | permit – Specifies the action that will be performed to the route that matches the AS-
path access list.
l regular-expression – Specifies the regular expressions to match the AS path. StoneOS sup-
ports the PCRE.
To delete the AS-path access list, use the following command in the global configuration mode:
n o ip as-p ath access-list access-list-number [{den y | p ermit} regular-expression ]
In the example below, you can configure an AS-path access list whose number is 1, refuse the
route that has traversed AS 31, and allow other routes.
hostname(config)#
The communities path attribute provides a way to group the routing information that has the same
characteristics and it does not relate to the IP subnet and AS where it locates. Besides the cus-
tomized communities path attribute, the system supports the following well-known community
values that you can specify for BGP routes:
l No-export – Routes with this communities path attribute cannot be advertised to peers that
are outside the AS.
l No-adverties – Route with this communities path attribute cannot be advertised to any BGP
peers.
l Local-as – Route with this communities path attribute can be advertised to other peers in the
local AS and cannot be advertised to peers outside the local AS.
l Internet – Route with this communities path attribute can be advertised to any BGP neigh-
bor. By default, each route carries this communities path attribute.
l standard community-list-name – Specifies the name of the community list. You can specify
up to 31 characters.
l community-list-number – Specifies the number of the community list. The number is in the
range of 1 to 99.
l deny | permit – Specifies the actions performed to the route that matched the list. deny
means the route will be denied and permit means the route will be permitted.
To delete the community list, use the following command in the global configuration mode:
n o ip co mmun ity-list {stan dard community-list-name | community-list-number }
The BGP supports the function that redistributes routes of other protocols into BGP and advert-
ises the routing information. Besides, you can set the metric of the redistributed route and use the
route map to filter the routing information. To redistribute routes into BGP, use the following
command in the BGP instance configuration mode:
redistrib ute {o sp f | isis | co n n ected | static | rip } [metric value ] [ro ute-map name ]
l ospf | isis | connected | static | rip - Specifies the protocol type which can be ospf, isis, con-
nected, static or rip.
l route-map name - Specifies the route map that is used to filter the routing information intro-
duced from other routing protocols. For more information about route map, see Configuring
a Route Map.
You can use the command above to redistribute route of different types.。
To cancel the redistributed route, use the following command: no redistribute {ospf | isis | con-
nected | static | rip}.
By default the system will introduce all the routing information. You can filter the routing inform-
ation introduced from other routing protocols by referencing a route map. The route map mainly
consists of two parts: matching rules and actions (permit or deny) for the matched routing inform-
ation. If introduced routing information hits any matching rule, the system will take the con-
figured action, i.e., permit or deny the introduced routing information.
Notes:
l If the action is set to Permit, the system will only permit the matched routing
information and deny all the unmatched routing information.
l If the action is set to Deny, the system will deny the matched routing inform-
ation, but still permit all the unmatched routing information.
To configure a route map and filter the introduced routing information, take the following steps:
1. Create a route map and add matching rules to the route map. Matching rules are dif-
ferentiated by IDs. The smaller the ID is, the higher the matching priority will be. By
default if the routing information hits any matching rule, the system will not continue to
2. Add matching conditions to the matching rules. The matching condition can be the AS
path, communities path attribute, metric, destination IP address, or next-hop IP address of
the introduced routing information. One matching rule may contain multiple matching con-
ditions, and the relation between these conditions is AND, i.e., in order to hit a matching
rule, the routing information must satisfy all the matching conditions in the rule.
3. If needed, require the system to continue to match another rule after the routing inform-
ation hits a matching rule.
4. If needed, modify partial attributes of the introduced routing information before redis-
tribution.
To create a route map and add a matching rule to the route map, in the global configuration mode,
use the following command:
ro ute-map name {den y | p ermit} sequence
l route-map name - Specifies the name of the route map, and enters the route map con-
figuration mode. The value range is 1 to 31 characters. If the name already exists in the sys-
tem, you will directly enter the route map configuration mode.
l deny | permit - Specifies the action for the matched routing information.
l sequence - Specifies the sequence number for the matching rule in the route map. The value
range is 1 to 65535.
To delete the specified route map, in the global configuration mode, use the following command:
n o ro ute-map name [ sequence ]
l sequence - Only deletes the specified matching rule from the route map.
To add a matching condition to the matching rule, in the route map configuration mode, use the
following command:
l metric metric-value – Matches the metric of the introduced routing information. The value
range is 0 to 4294967295.
l interface interface-name– Matches the next-hop interface of the introduced routing inform-
ation.
l ip address access-list– Matches the destination address of the introduced routing inform-
ation. access-list is the route access-list configured in the system. If the destination address of
the routing information is the permitted address in the route access-list, the system will con-
clude the matching succeeds. For more information about route access-list, see Configuring an
AS-path Access List.
l ip next-hop access-list - Specifies to match the next-hop IP address of the introduced routing
information. access-list is the route access-list configured in the system. If the next-hop IP
address of the routing information is the permitted address in the route access-list, the system
Repeat the above command to add more matching conditions to the matching rule. To delete the
specified matching condition from the matching rule, use the following command:
n o match {as-p ath | co mmun ity | metric | in terface | ip address | ip n ext-h o p }
Notes: If you only created a route map but did not add any matching rule, by default
the system will conclude all the introduced routing information is matched.
For the introduced routing information that satisfies the matching conditions, you can modify par-
tial attributes before the redistribution. To modify the attribute of the introduced routing inform-
ation, in the route map configuration mode, use the following command:
set {as-p ath p rep en d as-number | co mmu-list { community-list-name | community-list-num-
ber } delete | co mmun ity {[in tern et] [lo cal-AS] [n o -advertise] [n o -exp o rt] [ community-list-
number ]} [additive] | ip n ext-h o p ip-address | lo cal-p referen ce value | metric metric-value |
o rigin {egp | igp | in co mp lete}}
l as-path prepend as-number – Add a new AS path after the existing AS path of the intro-
duced route. The rang is 1 to 65535 and you can use spaces to separate multiple values.
l metric metric-value - Specifies the metric type of the external route. type-1 indicates type1
external route metric, and type-2 indicates type2 external route metric.
l origin {igp | egp | incomplete}– Modifies the source attribute of the introduced route. igp
means the route comes from internal AS; egp means the route is obtained from EGP. incom-
plete means the route is obtained by other methods.
To cancel the modification and restore to the settings when the routing information was intro-
duced, use the following command:
n o set {as-p ath p rep en d | co mmu-list | co mmun ity | ip n ext-h o p | lo cal-p referen ce | o rigin
| metric | metric-typ e}
BGP uses the AS-path access list to filter the route introduced by the peers or peer groups or the
route advertised. To configure the route filter function based on the AS-path access list, use the
following command in the BGP instance configuration mode:
n eigh b o r { A.B.C.D | peer-group } filter-list access-list-number {in | o ut}
l A.B.C.D | peer-group – Specifies the IP address or the name of the BGP peer.
l access-list-number– Specifies number of the AS-path access list. For more information about
AS-path access list, see Configuring an AS-path Access List.
l in | out – Use in to filter the introduced routes or use out to filter the advertised routes.
To send communities path attributes to peers or peer groups, use the following command in the
BGP instance configuration mode:
l A.B.C.D | peer-group - Specifies the IP address of the BGP peer or the name of the peer
group.
l standard | extended | both – Specifies the type of the communities path attributes. There
are three types: standard means the standard communities path attributes, extended means the
extended communities path attributes, and both means both of the communities path attrib-
utes and extended communities path attributes.
BGP uses the route map to filter the route introduced by the peers or peer groups or the route
advertised. To configure the route filter function based on the route map, use the following com-
mand in the BGP instance configuration mode:
n eigh b o r { A.B.C.D | peer-group } ro ute-map {in |o ut}
l A.B.C.D | peer-group – Specifies the IP address of the BGP peer or the name of the peer
group.
l in | out – Use in to filter the introduced routes or use out to filter the advertised routes.
To configure the maximum number of equal cost multipath (ECMP) routes for BGP, use the fol-
lowing command in the BGP instance configuration mode:
maximum-p ath s {eb gp | ib gp } maximum-number
Use the following command in the BGP instance configuration mode to cancel the above settings:
n o maximum-p ath s {eb gp | ib gp }
Notes: Before configuring this ECMP routing, you must first enable the ECMP func-
tion. For more information, see ECMP.
To view the BGP routing information , in any mode, use the following command:
sh o w ip ro ute b gp [vro uter vrouter-name ]
To view the routing information of the entire BGP routing table, in any mode, use the following
command:
sh o w ip b gp [ A.B.C.D | A.B.C.D/M ] [vro uter vrouter-name ]
l A.B.C.D | A.B.C.D/M - Shows the BGP routing information of the specified network.
To view the path information of all the autonomous systems stored in the BGP database, in any
mode, use the following command:
sh o w ip b gp p ath s [vro uter vrouter-name ]
l vrouter-name - Shows the paths information of autonomous systemof the specified VRouter.
To view the status parameters of all BGP connections, including the prefix, path, attribute, etc.,
in any mode, use the following command:
sh o w ip b gp summary [vro uter vrouter-name ]
To view the BGP peer status, in any mode, use the following command:
sh o w ip b gp n eigh b o r [ A.B.C.D ] [vro uter vrouter-name ]
To view the BGP community list, use the following commands in any mode:
sh o w ip co mmun ity [ community-list-name ]
l community-list-name – Shows the information of the specified community list. Without this
parameter specified, the information of all community lists will be displayed.
l access-list-number – Shows the information of the specified AS-path access list. Without
this parameter specified, the information of all AS-path access lists will be displayed.
For EBGP to the same destination network through different AS paths, system supports enabling
multipath-relax of EBGP function, so that EBGP can achieve load balancing on different AS
paths. In the BGP instance configuration mode,, use the following command:
Configuring BGP GR
l End-of-RIB marker: End-of RIB marker is a BGP Update message with no reachable Network
Layer Reachability Information (NLRI) and its withdrawn NLRI is empty. When the current
device receives the End-of-RIB marker from its peer, it indicates that this peer has sent all
updates needing to be notified.
l Graceful Restart Capability: Graceful Restart Capability is a new BGP capability to better sup-
port GR functionality. It is advertised by the BGP with the Open message when a BGP con-
nection is established. Graceful Restart Capability can indicate that the current device can
preserve its forwarding state during BGP restart, and generate the End-of-RIB marker upon
the completion of its initial updates.
l GR Restarter: GR Restarter is the device applying Graceful Restart during BGP restart or the
switchover between backup and primary devices.
l GR Helper: GR Helper is the neighbor of GR Restarter, and is the device with GR Capability
to assist GR Restarter in the Graceful Restart.
1. In device HA, the new primary device works as the GR Restarter and re-establishes the
BGP connection with the GR Helper.
2. The GR Helper disconnects its BGP neighborhood with the previous primary device and
marks the BGP routes learned from the previous primary device as stale. But the GR Helper
still forwards data messages via these routes and enables the Graceful-Restart Stale-Path-
Time. To configure the Graceful-Restart Stale-Path-Time, use the graceful-restart stale-
path-time time command.
4. GR Helper sends updates after becoming a neighbor of the GR Restarter and generates an
End-of-RIB marker upon the completion of the updates. Even if the GR Helper does not
have updates to be notified, it is required to send the End-of-RIB marker.
5. GR Restarter starts to select the optimum path after receiving the End-of-RIB markers from
its peers. If GR Restarter does not receive all the necessary End-of-RIB markers, it will start
to select the optimum path after the configured Graceful-Restart Wait-For-Rib-Time
expires. To configure the Graceful-Restart Wait-For-Rib-Time, use the graceful-restart wait-
for-rib-time time command.
6. After the selection of the optimum path, GR Restarter updates the RIB, then generates
updates of the BGP route and sends the updates to its BGP neighbors. Whether there are
updates or not, GR Restarter should notify the End-of-RIB marker.
7. After receiving the route updates, GR Helper removes the stale markers of relative routes.
GR Helper will remove routes still with stale markers after receiving the End-of-RIB marker
sent by the GR Restarter.
l Only when devices in the below scenarios can they work as the GR Restarter.
Otherwise, they work as the GR Helper.
l BGP GR does not work if HA between primary and backup devices dis-
connects.
Enabling BGP GR
To enable the BGP GR functionality, in the BGP instance configuration mode, use the following
command:
graceful-restart
To disabling the BGP GR functionality, in the BGP instance configuration mode, use the com-
mand no graceful-restart.
Configuring GR Restart-Time
To configure the longest time for a peer to wait for a BGP session to be re-established, in the
BGP instance configuration mode, use the following command:
graceful-restart restart-time time
l time - Specifies the longest time for a peer to wait for a BGP session to be re-established. The
time range from 1 to 3600 seconds. The default Graceful-Restart Restart-Time is 120
seconds.
To restore to the default value, in the BGP instance configuration mode, use the commandno
graceful-restart restart-time.
Configuring GR Stale-Path-Time
l time - Specifies the longest time to retain the stale routes of the restarted peers. The time
range from 1 to 3600 seconds. The default Graceful-Restart Stale-Path-Time is 360 seconds.
To restore to the default value, in the BGP instance configuration mode, use the command no
graceful-restart stale-path-time.
Configuring GR Wait-For-Rib-Time
To configure the longest time for the GR Restarter to wait for the End-of-RIB markers from the
neighbors, in the BGP instance configuration mode, use the following command:
graceful-restart wait-for-rib-time time
l time - Specifies the longest time for the GR Restarter to wait for the End-of-RIB markers
from the neighbors. The time range from 1 to 3600 seconds. The default Graceful-Restart
Wait-For-Rib-Time is 180 seconds.
To restore to the default value, in the BGP instance configuration mode, use the command no
graceful-restart wait-for-rib-time.
ECMP
Equal Cost Multi-Path Routing (ECMP) is a routing strategy where the next-hop packet for-
warding to a single destination can occur over multiple best paths which tie for top place in rout-
ing metric calculations.
Configuring ECMP
By default the ECMP function is enabled, and allows up to 40 equal-cost routes for the purpose
of load balancing. To enable or disable ECMP, in the VRouter configuration mode, use the fol-
lowing command:
ecmp en ab le ecmp-route-num
To configure the method for selecting an ECMP route, in the global configuration mode, use the
following command:
ecmp -ro ute-select {b y-5-tup le | b y-src | b y-src-an d-dst}
l by-src-and-dst - Selects a route based on the source IP address and destination IP address.
This is the default method.
l Ingress and egress interface: the data that match the corresponding multicast source and mul-
ticast address flows in from the ingress interface specified in the multicast routing rule, and
flows out from the specified egress interface.
l Enable: ip multicast-routing
l Disable: no ip multicast-routing
l A.B.C.D A.B.C.D - Specifies the multicast source and multicast address. The first A.B.C.D is
the IP address of the multicast source, and the second A.B.C.D is the multicast address. The
value range is 224.0.0.0 to 239.255.255.255.
l iif interface-name - Specifies an ingress interface. You can specify up to two ingress interfaces.
l eif interface-name - Specifies an egress interface. You can specify up to four egress interfaces.
To delete the specified static multicast route, in the VRouter configuration mode, use the fol-
lowing command:
n o ip mro ute A.B.C.D A.B.C.D [iif interface-name ] [eif interface-name ]
You can configure an ingress or egress interface for the existing static multicast route. Each mul-
ticast route can have up to two ingress interfaces, and up to 32 egress interfaces. The options of
ingress and egress interface must be configured in the static multicast route configuration mode.
To enter the static multicast route configuration mode, in the VRouter configuration mode, use
the following command:
ip mro ute A.B.C.D A.B.C.D
l A.B.C.D A.B.C.D - Specifies the multicast source and multicast address. The first A.B.C.D is
the IP address of the multicast source, and the second A.B.C.D is the multicast address.
To specify an ingress and egress interface for the existing static multicast routing entry, in the
static multicast route configuration mode, use the following command:
l A.B.C.D A.B.C.D - Shows the multicast route information of the specified multicast source
and multicast address. The first A.B.C.D is the IP address of the multicast source, and the
second A.B.C.D is the multicast address.
l vrouter vr-name - Shows the multicast route information of the specified VRouter.
l A.B.C.D A.B.C.D - Shows the multicast FIB information of the specified multicast source
and multicast address. The first A.B.C.D is the IP address of the multicast source, and the
second A.B.C.D is the multicast address.
l vrouter vr-name - Shows the multicast FIB information of the specified VRouter.
IGMP
Internet Group Message Protocol (IGMP) is used to establish and maintain multicast group mem-
bership between hosts and routers. A host reports its membership of a group to its local router
over IGMP, and a router listens to reports from hosts and periodically sends out queries to check
if any group member is alive. If no report is received from the member, the router side will
determine there is no member in the multicast group.
The latest version of StoneOS supports IGMPv1 (defined in RFC1112) , IGMPv2 (defined in
RFC2236) and IGMPv3 (defined in RFC3376). And it also supports IGMP Proxy (operating on
the Application Layer) and IGMP Snooping (operating on the Link Layer).
IGMP Proxy
IGMP Proxy is designed to create multicast routing tables and forward multicast data by inter-
cepting the IGMP packets between the hosts and routers. IGMP Proxy acts differently on the
two interfaces of the Hillstone device:
To enable or disable the IGMP proxy function, in the VRouter configuration mode, use the fol-
lowing commands:
To enter the VRouter configuration mode, in the global configuration mode, use the following
command:
ip vro uter vrouter-name
l vrouter-name - Specifies a Vrouter. If the name exists, the system will directly enter the
Vrouter configuration mode.
To configuring an IGMP proxy mode (either router mode or host mode) for an interface, in the
interface configuration mode, use the following command:
ip igmp -p ro xy {ro uter-mo de | h o st-mo de} [ A.B.C.D ] [v2| v3]
l router-mode - Configures the IGMP proxy mode of the downstream interface to the router
mode.
l host-mode - Configures the IGMP proxy mode of the upstream interface to the host mode.
l [A.B.C.D] - Specifies the multicast address. The IGMP proxy mode will only be applied to
this address.
l v2 – Specifies the protocol version of the IGMP message is IGMPv2. By default, the
IGMPv2 protocol is used.
To cancel the IGMP proxy mode for the specified interface, in the interface configuration mode,
use the following command:
n o ip igmp -p ro xy {ro uter-mo de | h o st-mo de} [ A.B.C.D ]
To view the IGMP Proxy information, in any mode, use the following command:
sh o w ip igmp -p ro xy [ A.B.C.D ] [vro uter vrouter-name ]
l show ip igmp-proxy - Shows all the IGMP Proxy information in the system.
l [A.B.C.D] - Shows the IGMP Proxy information of the specified multicast address.
l [vrouter vrouter-name] - Shows the IGMP Proxy information of the specified VRouter.
To enable or disable the IGMP Snooping function, in the VSwitch configuration mode, use the
following commands
To create or enter the VSwitch configuration mode, in the global configuration mode, use the fol-
lowing command:
vswitch vswitch Number
l Number - Specifies the VSwitch’s identifier. The value range may vary from different plat-
forms. For example, the command vswitch vswitch2 will create a VSwitch named VSwitch2,
as well as an interface named VSwitchif2. Besides the system will enter the configuration
mode of VSwitch2. If the specified VSwitch exists, the system will directly enter the VSwitch
configuration mode.
To configuring IGMP Snooping, in the interface configuration mode, use the following command:
ip igmp -sn o o p in g {ro uter-mo de [ A.B.C.D ] | h o st-mo de [ A.B.C.D ] | disab le | auto }
l router-mode - Configures the IGMP Snooping mode of the downstream interface to the
router mode.
l host-mode - Configures the IGMP Snooping mode of the upstream interface to the host
mode.
l auto - The system will determine the interface mode automatically based on the IGMP
packet.
To cancel the IGMP Snooping mode, in the interface configuration mode, use the following com-
mand:
n o ip igmp -sn o o p in g {ro uter-mo de A.B.C.D | h o st-mo de A.B.C.D }
By default dropping unknown multicast is disabled. With this function enabled, the device will
drop the packets that are destined to unknown multicast groups, thus saving the bandwidth. To
enable the function, in the VSwitch configuration mode, use the following command:
un kn o wn -multicast dro p
To disable the function, in the VSwitch configuration mode, use the following command:
n o un kn o wn -multicast dro p
To view the IGMP Snooping information, in any mode, use the following command:
l [A.B.C.D] - Shows the IGMP Snooping information of the specified multicast address.
l [vswitch name] - Shows the IGMP Snooping information of the specified VSwitch.
BFD
BFD (Bidirectional Forwarding Detection) is a unified detection mechanism for the entire net-
work, which is used to fast detect and monitor the forwarding and connection status of the link
and the IP route. To enhance the network performance, the protocol neighbor must have the abil-
ity to detect the communication failures quickly. Thus, the backup communication can be estab-
lished to restore the communication in time.
BFD creates sessions between two routers for monitoring the bidirectional forwarding path
between these two routers, which provides services for the upper level protocol, for example,
routing protocol. BFD does not have the discovering mechanism and upper level protocol will
notify BFD to create sessions with specifies objects. If no BFD packets are received from the
peer during the detection period after creating sessions, BFD will notify the upper-level service
and the upper-level service will execute the corresponding operations.
In the current StoneOS, BFD can integrate with static route, OSPF route, and BGP route. Thus,
StoneOS can realize the detection of the forwarding and connection status on the link that runs
static route, OSPF route, and BGP route.
l Active mode: No matter whether BFD control packets are received or not from the peer
before creating sessions, the BFD control packets will be sent actively.
BFD has two detection modes that will work after creating sessions: asynchronous mode and
inquiry mode. Two sides in the communication must be in the same mode.
l Asynchronous mode: Devices that works in the asynchronous mode send the BFD control
packets periodically. If the peer does not receive the BFD control packets during the detec-
tion period, the session is considered as the down status.
l Inquiry mode: Assume that there is an independent method to confirm the connection status
with the peer system. In this way, after creating the BFD session, the device will stop sending
the BFD control packets periodically except for the requirements of verifying the connection
apparently.
BFD Echo
The BFD Echo function makes the local device send the BFD Echo packets periodically and the
peer device only returns the packets to the local device via the forwarding channel. You can use
the Echo function to discover failures fast.
The Echo function can integrate with the detection methods. If you enable the Echo function in
the asynchronous mode, the device will reduce the sending of the control packets. If you enable
the Echo function in the inquiry mode, you can cancel the sending of BFD packets after the BFD
session is established.
Notes: To use the Echo function, ensure the peer device can forward the Echo
packets after you enable the Echo function in the local device.
Configuring BFD
Configuring BFD involved the following sections:
There are two detection methods after creating the BFD session: asynchronous mode and the
inquiry mode. Two sides in the communication must be in the same mode. By default, the detec-
tion mode of the BFD session is the asynchronous mode. You can change the mode according to
your requirements. To use the inquiry mode, use the following command:
b fd deman d en ab le
After creating the BFD sessions, you can modify the minimum interval of receiving/sending BFD
session packets and edit the multiple for calculating the timeout value. To configure the BFD ses-
sion parameters, use the following command in the interface configuration mode:
b fd min -tx min-tx-value min -rx min-rx-value detect-multip lier value
l min-tx-value – Specifies the minimum interval of sending BFD packets. The unit is mil-
lisecond. The default value is 100 and it is in the range of 100 to 1000.
l min-rx-value – Specifies the minimum interval of receiving BFD packets. The unit is mil-
lisecond. The default value is 100 and the range is 100 to 1000.
l value – Specifies the multiple for calculating the timeout value. The detailed information of
Notes:
l In the asynchronous mode, the system compares the value of the min-tx-
value parameter of the local device with the value of the min-rx-value of the
peer device, uses the bigger one times the value of the value parameter con-
figured for the peer device, and uses the result as the timeout value.
l In the inquire mode with the Echo function enabled, the system compares
the value of the min-tx-value parameter of the local device with the interval
of receiving Echo packets configured for the peer device, uses the bigger one
times the value of the value parameter configured for the local device, and
uses the result as the timeout value.
l In the asynchronous mode with the Echo function enabled, the system com-
pares the value of the min-tx-value parameter of the local device with the
interval of receiving Echo packets configured for the peer device, uses the
bigger one times the value of the value parameter configured for the peer
device, and uses the result as the timeout value.
For more information about configuring the interval of receiving Echo packets, see
Specifying the Interval of Receiving Echo Packets.
By default, the Echo function is disabled. To enable this function, use the following command in
the interface configuration mode:
b fd ech o en ab le
Use the following command in the interface configuration mode to disable the function:
no bfd echo enable
To specify the interval of receiving Echo packets, use the following command in the interface con-
figuration mode:
b fd min -ech o -rx value
l value – Specifies the interval of receiving BFD Echo packets. The unit is millisecond. The
default value is 0 and the range is 100 to 1000.
To restore the value to the default one, use the following command in the interface configuration
mode: no bfd min-echo-rx.
A large number of ICMP redirection packets sent from the peer leads to the network congestion.
To avoid the network congestion, you can configure the source IP address of the Echo packets.
To configure the source IP address, use the following command in the global configuration mode:
b fd ech o -so urce-ip echo-src-address
To delete the configured source IP address, use the following command in the global con-
figuration mode: no bfd echo-source-ip.
Notes:
l You can specify a random source IP address of the Echo packets. Hillstone
recommends you use an IP address which does not belong to the network seg-
ments where interfaces of the device locate.
l The destination IP address of the Echo packets that sent from the local
device is the interface IP address of the local device.
BFD sessions support one-hop detection and multi-hop detection. You can select the detection
method according to the session networking.
l One-hop detection: BFD can detect the connectivity of the IP link between two directly-con-
nected systems.
l Multi-hop detection: BFD can detect the link connectivity of any path between two devices.
Notes:
l In the current system, only BFD multi-hop session detection can integrate
with the BGP route.
l BFD multi-hop session detection only supports the asynchronous mode, but
not the query mode and echo function.
The BFD multi-hop detection template is used to specify the encryption authentication mode of
BFD control packets, the minimum interval and the detection time multiple for sending or receiv-
ing BFD multi-hop session packets. To create a BFD multi-hop detection template, in the global
configuration mode, use the following command:
bfd template template-namemulti-hop
l template-name - Specifies the name of the BFD multi-hop detection template and enter the
BFD multi-hop detection template configuration mode. If the specified name already exists,
enter the BFD multi-hop detection template configuration mode directly.
To delete the specified BFD multi-hop detection template, in the global configuration mode, use
the command no bfd templatetemplate-name.
As the number of network hops increases, BFD control packets may be tampered more easily. In
BFD sessions, BFD control packets can be encrypted and authenticated. To specify the encrypted
authentication mode of BFD control packets, in the BFD multi-hop detection template con-
figuration mode, use the following commands:
authentication-type {m-md5 | m-sha1 | md5 | sha1 | simple} key-id {plainplain-string}
l m-md5 | m-sha1 | md5 | sha1 | simple - Specifies the authentication algorithm: Meticulous
MD5 algorithm (m-md5), Meticulous SHA1 algorithm (m-sha1), MD5 algorithm( md5),
SHA1 algorithm (sha1) and simple authentication (simple).
To delete the specified encrypted authentication mode of BFD control packets, in the BFD
multi-hop detection template configuration mode, use the commandno authentication-type.
After the BFD multi-hop session is established, you can modify the minimum interval and the
detection time multiplier for sending or receiving BFD multi-hop session packets. To configure
the BFD multi-hop session parameters, in the BFD multi-hop detection template configuration
mode, use the following commands:
interval min-tx min-tx-valuemin-rxmin-rx-value detect-multiplier value
l min-tx-value – Specifies the minimum interval for sending the BFD multi-hop session pack-
ets. The range is 100 to 1000 milliseconds, and the default value is 100 milliseconds.
l min-rx-value – Specifies the minimum interval for receiving the BFD multi-hop session pack-
ets. The range is 100 to 1000 milliseconds, and the default value is 100 milliseconds.
The static route does not have the neighbor discovering mechanism. Thus, when BFD integrates
with the static route, a failure detected by the BFD session indicates that the next hop is not
reachable and this route will not be added to the routing table.
To integrate BFD with the static route and enable the BFD detection function for the specified
next hop, use the following command in the VRoute configuration mode:
ip ro ute { A.B.C.D/M | A.B.C.D A.B.C.D } interface-name A.B.C.D b fd
l A.B.C.D/M | A.B.C.D A.B.C.D – Specifies the network address of the static route. Hill-
stone devices support two formats: A.B.C.D/M or A.B.C.D A.B.C.D, for example,
1.1.1.0/24 or 1.1.1.0 255.255.255.0.
l bfd – Enables the BFD detection function for the specified next hop.
To cancel the integration, use the following command in the VRouter configuration mode:
n o ip ro ute { A.B.C.D/M | A.B.C.D A.B.C.D } interface-name A.B.C.D b fd
By integrating BFD with the OSPF route, the system realizes the quick link detection which has
higher performance than the Hello detection mechanism of the OSPF protocol. With the integ-
ration, OSPF protocol improves its convergence performance.
To integrate BFD with the OSPF rout and enable the BFD detection function on the specified
interfaces that corresponds to the OSPF route, use the following command in the interface con-
figuration mode:
ip o sp f b fd
To cancel the integration, use the following command in the interface configuration mode:
n o ip o sp f b fd
To integrate BFD with the BGP route and enable the BFD detection function for the specified
BGP neighbor, you can select the one-hop or multi-hop detection. In the BGP instance con-
figuration mode, use the following command:
n eigh b o r A.B.C.D fall-o ver b fd[multi-h o p bfd-template-name ]
l multi-hop bfd-template-name – When the multi-hop detection mode is used, specify the
name of the BFD multi-hop detection template to bind this template. If this parameter is not
specified, the single-hop detection mode will be used.
To cancel the integration, use the following command in the BGP instance configuration mode:
n o n eigh b o r A.B.C.D fall-o ver b fd
By integrating BFD with the IS-IS route, and BFD works with IS-IS to more quickly detect the
faults that occur on neighboring devices or links. In this manner, fast route convergence is imple-
mented.
To cancel the integration, use the following command in the interface configuration mode:
n o isis b fd
l interface interface-name - Shows the information of the BFD sessions of the specified inter-
face.
l detail – Shows the detailed information of the BFD sessions of all routers.
MPLS
MPLS is a technique which enables the forwarding of packets based on labels. A label is a fixed-
length local identifier, encapsulated between the link layer and the network layer. It is used to
identify the FEC (Forwarding Equivalence Class) to which a packet belongs, so that a group of
packets can be forwarded in the same manner, for example, over the same path or with the same
forwarding treatment. For packets carrying MPLS labels, forwarding is based on label lookup and
replacement only, rather than on the destination IP address in traditional IP forwarding.
There are MPLS networks which contain LSRs (Label Switching Routers) as basic units. LSRs loc-
ating on the edge of an MPLS network are called LERs (Label Edge Routers) which interconnect
with non-MPLS networks.
When an IP packet enters the MPLS network, the ingress LER parses the packet's header, encap-
sulates the packet with a label and then forwards it to the next hop. All subsequent MPLS nodes
will do packet forwarding based on the label of the received packet without parsing the IP header,
until the label is removed when the packet leaves the MPLS network.
l Receiver DR: A PIM device that is directly connected to group members (receiver hosts) and
is responsible for forwarding multicast data to the group members.
l RP (Rendezvous Point): An RP is the core of a PIM-SM network, which can be divided into
the static RP and dynamic RP. An RPT is a shared tree with an RP as the root and members of
multicast group as the leaves in a PIM-SM network.
l BSR (BootStrap Router): A BSR of a PIM-SM network, which is responsible for collecting
and distributing RP information.
l RPT (Rendezvous Point Tree): An RPT is a multicast distribution tree (MDT) with an RP as
the root and members of multicast group as the leaves.
l SPT (Shortest Path Tree): A shortest path tree (SPT) is a multicast distribution tree (MDT)
with the multicast source as the root and members of multicast group as leaves.
Configuring PIM-SM
l Enabling/Disabling a Multicast Route (For details, see the Static Multicast Routing >
Enabling/Disabling a Multicast Route section)
l Configuring a Candidate RP
Notes: The PIM-SM function cannot be configured with the static multicast routing
function or the IGMP Proxy function at the same time.
Basic Configurations
You can configure PIM-SM for different VRouter. The basic configurations of PIM-SM must be
configured in the PIM-SM configuration mode. To enter the PIM-SM configuration mode, in the
global configuration mode, use the following commands:
ip vroutervrouter-name (entering the VRouter configuration mode)
router pim(entering the PIM-SM configuration mode)
By default, the PIM-SM function is disabled. To enable or disable the PIM-SM function, in the
PIM-SM configuration mode, use the following commands:
Select PIM devices in the PIM-SM domain to configure as the candidate RP (Rendezvous Point),
and then the RP will be elected from the candidates. Configure the candidate BSR at the same
time, and then the BSR will be elected from the candidate BSR (BootStrap Router), which is
responsible for collecting and distributing the RP information in the network.
To configure the candidate RP, in the PIM-SM configuration mode, use the following commands:
rp-candidateinterface-name [interval interval-time ] [priority level]
l interface-name – Specifies the interface where the candidate RP resides. The interface must
be enabled with PIM-SM.
l interval-time – Specifies the interval for sending candidate RP messages. The range is 1 to
16383 seconds. The default value is 60 seconds.
l priority level – Specifies the priority (the smaller the value, the higher the priority). In the
RP election, the candidate RP with the higher priority will be elected as the RP. The range is
0 to 255 and the default priority is 0.
To delete the configuration of candidate PR, in the PIM-SM configuration mode, use the fol-
lowing command:
no rp-candidate
Notes: When configuring a candidate RP, you do not need to specify a multicast
address. The default multicast address is 224.0.0.0/4.
In a PIM-SM domain, you need to configure one or more candidate BSR, and the BSR will be gen-
erated from the candidate BSR automatically. The BSR will collect and distribute the RP inform-
ation.
To configure the candidate BSR, in the PIM-SM configuration mode, use the following com-
mands:
bsr-candidateinterface-name [priority level]
l priority level – Specifies the priority (the higher the value, the higher the priority). If there is
only one candidate BSR in the PIM-SM domain, it will be become the BSR. If there are mul-
tiple candidate BSRs, the candidate BSR with the higher priority will be elected as the BSR.
The range is 0 to 255, the default priority is 0.
To delete the configuration of candidate BSR, in the PIM-SM configuration mode, use the fol-
lowing command:
no bsr-candidate
Notes: When a dynamic RP is used, the candidate BSR and at least one candidate
BSR must be configured in the PIM-SM domain.
Configuring a Static RP
When there’s only one Rendezvous Point (RP) in the network, you’re suggested to configure
a static RP rather than a dynamic RP, which can save the bandwidth occupied by message
exchange between the Candidate RP and the BSR. In the PIM-SM domain, the static RP con-
figured on all the devices should be the same.
To specify the address of static RP, in the PIM-SM configuration mode, use the following com-
mands:
rp-addressA.B.C.D [A.B.C.D/M]
l A.B.C.D – Specifies the IP address of the interface where the static RP resides.
To delete the configured static RP address, in the PIM-SM configuration mode, use the following
command:
no rp-addressA.B.C.D [A.B.C.D/M]
Since the RPT (Rendezvous Point Tree) in the PIM-SM domain may not be the shortest path,
when the multicast data traffic becomes too high, the RP may become the fault point. To solve
the problem, by default, the RPT can be switched to the SPT (Shortest Path Tree). After the
switchover, the multicast data can be sent directly from the multicast source to the receiver along
the SPT. You can switch RPT to SPT as needed.
Figure: Before RPT switch to SPT
To configure the switchover to SPT, in the PIM-SM configuration mode, use the following com-
mands:
spt-threshold {0 | infinity}
l 0 – Enable the switchover from RPT to SPT. This is the default option.
The PIM-SM function for an interface must be configured in the interface configuration mode.
The PIM-SM configurations for the interfaces include:
By default, the PIM-SM function for interface is disabled. To enable or disable the PIM-SM func-
tion for interface, in the interface configuration mode, use the following commands:
Notes: The PIM-SM function only can be enabled on the Layer 3 interface.
The priority of the DR (Designated Router) is used to determine which router to use as the des-
ignated router (DR). To specify the priority of DR, in the interface configuration mode, use the
following commands:
l level – Specifies the priority of the DR (the higher the value, the higher the priority). The
default value is 1. The range is 0 to 4294967294. All routers in the PIM-SM domain can be
specified as DR and the router with higher priority will be selected. If the priority of the
routers is the same, the one with a large IP address will be selected.
To restore the default priority, in the interface configuration mode, use the commandno ip pim
dr-priority.
After the PIM-SM function is enabled on an interface, Hello packets will be sent periodically.
You can specify the interval for sending Hello packets on the interface as needed. In the interface
configuration mode, use the following command:
ip pim query-interval interval
l interval – Specifies the interval for sending Hello packets. The range is 1 to 65535, and the
default interval is 30 seconds.
To restore to the default interval, in the interface configuration mode, use the commandno ip pim
query-interval.
The network where the receiver host is located may connect to multiple multicast routers. These
multicast routers then elect a router as the querier automatically to maintain IGMP group mem-
bership of the interface. On the Hillstone device, after the PIM-SM function is enabled for the
interface, the querier will send IGMP general query messages to learn about the entry and exit of
multicast group members.
To specify the interval for sending IGMP general query messages, in the interface configuration
mode, use the following command:
ip pim igmp-query-interval interval
To restore to the default interval, in the interface configuration mode, use the commandno ip pim
igmp-query-interval.
If the multicast router in the network does not receive IGMP general query messages within the
specified timeout period, multicast routers will elect a querier again.
To specify the IGMP general query timeout value, in the interface configuration mode, use the fol-
lowing commands:
ip pim igmp-query-timeout timeout-value
l timeout-value – Specifies the IGMP general query timeout value. The range is 30 to 300
seconds, and the default value is 120 seconds.
To restore to the default interval, in the interface configuration mode, use the commandno ip pim
igmp-query-timeout.
You can specify the maximum response time after the receiver host receives the general query
message. After the querier sends the IGMP general query message twice and no response from
the receiver host within the specified maximum response time, system will delete the receiver in
the multicast routing table.
To specify the maximum response time, in the interface configuration mode, use the following
commands:
ip pim igmp-query-max-response-timeresponse-time
l response-time – Specifies the maximum response time for IGMP general query. The range is
1 to 25 seconds, and the default value is 10 seconds.
To restore to the default interval, in the interface configuration mode, use the commandno ip pim
igmp-query-max-response-time.
To view the BSR information, in any mode, use the following command:
show ip pim bsr-route [vrouter vrouter-name]
To view the PIM-SM interface information, in any mode, use the following command:
show ip pim interface [interface-name]
To view the PIM neighbor information, in any mode, use the following command:
show ip pim neighbor [vrouter vrouter-name]
To view the RPF information, in any mode, use the following command:
show ip pim rpfsource-address [vrouter vrouter-name]
l source-address – Shows the RPF information of the specified multicast source IP address.
l vrouter-name - Shows the RPF information of the multicast source IP address of the specified
VRouter.
To view the IGMP multicast group information, in any mode, use the following command:
show ip pim igmp groups [group-address [vrouter vrouter-name]]
l vrouter vrouter-name – Shows the IGMP multicast group information of the specified
VRouter.
To view the IGMP interface information, in any mode, use the following command:
show ip pim igmp interfaces [interface-name]
l interface-name – Shows the IGMP information of the specified interface (the interface
enabled with PIM-SM).
PIM-SSM
PIM-SM needs to maintain Rendezvous Points (RPs) to transmit multicast data. If receivers know
the exact location of a multicast source and want to request multicast data directly from a mul-
ticast source, Protocol Independent Multicast-Source-Specific Multicast (PIM-SSM) can enable
use hosts to rapidly join multicast groups. A shortest path tree (SPT) is set up between the mul-
ticast source and group members without maintaining an RP. The multicast data will be forwarded
to receivers along the SPT.
Configuring PIM-SSM
l Enabling/Disabling a Multicast Route (For the details, refer to Static Multicast Routing >
Enabling/Disling a Multicast Route)
Notes:
l PIM-SSM function is on the basis of the PIM-SM function. Configure PIM-
SM mode first before configuring the PIM-SSM (For details, refer to Protocol
By default, the address range of PIM-SSM is 232.0.0.0/8. You can configure the address range of
the PIM-SSM multicast group as needed, and the address range of PIM-SSM group should be the
same within the network. When the address range of PIM-SSM multicast group is configured, the
PIM-SSM function will also be enabled.
To configure the address range of the PIM-SSM multicast group, in the PIM-SM configuration
mode, use the following command:
p im-ssm {default | group-prefix/Mask }
l default - Uses the default address range of PIM-SSM multicast group: 232.0.0.0/8.
l group-prefix/Mask - Specifies the address range of the certain PIM-SSM multicast group.
To delete the configured address range, in the PIM-SM configuration mode, use the following
command:
n o p im-ssm
l deny- Make the interface deny receiving multicast group in the IGMPv1/IGMPv2 packets.
To restore to the default values, in the interface configuration mode, use the following command:
n o ip p im igmp {p ermit | den y}
To make interface allow or deny multicast source and multicast group in the IGMPv3 packets, in
the interface configuration mode, use the following command:
ip p im igmp v3 {p ermit | den y} { any | source-prefix/Mask }{ any | group-prefix/Mask }
l permit- Allow the interface to receive multicast source and multicast group in the IGMPv3
packets.
l deny- Make the interface deny receiving multicast source and multicast group in the IGMPv3
packets.
l any |source-prefix/Mask - Specify the address range of multicast source. any is for any mul-
ticast source address.
l any |group-prefix/Mask - Specify the address range of multicast group. any is for any mul-
ticast group address.
To restore to the default values, in the interface configuration mode, use the following command:
n o ip p im igmp v3 {p ermit | den y}
l group-address - Specifies the IP address of the multicast group to which the interface is added
based on the IGMPv2 protocol.
In the interface configuration mode, run the no ip pim igmp join-groupgroup-address command to
remove the interface from the specified multicast group.
To set the type of protocol based on which the interface is added to a specified multicast group to
IGMPv3, run the following command in the interface configuration mode:
ip pim igmpv3 join-groupgroup-addresssource-address
l group-address - Specifies the IP address of the multicast group to which the interface is added
based on the IGMPv3 protocol.
l source-address - Specifies the IP address of multicast source data traffic that the interface
receives.
Notes:
l Only layer-3 interfaces can be added to the multicast group.
l The PIM-SM function is enabled for the interface. For more inform-
ation, refer to Enabling/Disabling the PIM-SM for Interfaces.
l The PIM-SM function is also enabled for the upstream device of the
device where the interface resides.
Configuration Steps
Configurations of the security zones and interfaces are omitted. Only the configuration example of
routes is as follows:
In the above source routing configuration, the traffic from the Trust and Trust1 zone will go to
Netcom, while the traffic from other zones will go to Telecom. If the Netcom line fails for any
reason, users in the Trust and Trust1 zones will not be able to access the Internet. In such a case
only when all the above 4 source routes are deleted will the traffic be completely migrated to the
Telecom line. If there are too many relevant source routes, the workload of deleting routes and
then adding routes after troubleshooting will be very heavy; besides the trivial work also possibly
leads to errors. The Hillstone’s solution is: when any line fails, disable the source route query,
and then users in the Trust and Trust1 zones will use the default route and be able to access the
Internet through the Telecom line. Use the following command:
After troubleshooting, to re-enable the source route query function, use the following command:
l Inter-VR forwarding
There are overlapped IP addresses in Trust-vr and VR1, but the data transmission of the two VRs
should be independent, and should not affect each other. The network topology is shown below:
There are two VRs in the system: trust-vr and VR1. ethernet0/1 belongs to zone1, ethernet0/2
belongs to zone2, both zone1 and zone2 belong to trust-vr; ethernet0/3 belongs to zone3, eth-
ernet0/4 belongs to zone4, belong zone3 and zone4 belong to VR1. The IP address of eth-
ernet0/1 and ethernet0/3 is overlapped; the IP address of ethernet0/2 and ethernet0/4 is
overlapped as well.
Configuration Steps
hostname# reb o o t
Step 3:Configure interfaces and security zones (by default zone1 and zone2 belong to trust-vr):
hostname(config)# zo n e zo n e1
hostname(config)# zo n e zo n e2
hostname(config-zone-zone2)# exit
hostname(config)# zo n e zo n e3
hostname(config-zone-zone3)# exit
hostname(config)# zo n e zo n e4
hostname(config-zone-zone4)# exit
hostname(config-if-eth0/1)# zo n e zo n e1
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# zo n e zo n e2
hostname(config-if-eth0/2)# exit
hostname(config-if-eth0/3)# zo n e zo n e3
hostname(config-if-eth0/3)# exit
hostname(config-if-eth0/4)# zo n e zo n e3
hostname(config-if-eth0/4)# exit
hostname(config)#
There are two VRs in the system: trust-vr and VR1. The goal is to allow trust-vr forwarding data
through VR1. The network topology is shown below:
There are two VRs in the system: trust-vr and VR1. ethernet0/0 belongs to zone1, and zone1
belongs to trust-vr; ethernet0/2 and ethernet0/3 belong to zone2, and zone2 belongs to trust-vr.
The following configuration example allows trust-vr to forward data through VR1.
Configuration Steps
hostname# reb o o t
Step 3:Configure interfaces and security zones (by default zone1 and zone2 belong to trust-vr):
hostname(config)# zo n e zo n e1
hostname(config-zone-zone1)# exit
hostname(config)# zo n e zo n e2
hostname(config-if-eth0/1)# zo n e zo n e1
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# zo n e zo n e2
hostname(config-if-eth0/2)# exit
hostname(config-if-eth0/3)# zo n e zo n e2
hostname(config-if-eth0/3)# exit
hostname(config)#
hostname(config-vrouter)# exit
hostname(config-vrouter)# exit
hostname(config)#
The multicast source sends data to multicast group. The multicast address is 224.91.91.2. Inter-
face ethernet0/0, the ingress interface of the multicast data, belongs to the trust zone; eth-
ernet0/1, the egress interface of the multicast data, belongs to the untrust zone. The goal is to
configure a static multicast route so that the multicast data can be properly transmitted to the cli-
ent PC that belongs to the multicast group. The network topology is shown below:
Configuration Steps
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config)#
hostname(config-vrouter)# ip mro ute 1.1.1.2 224.91.91.2 iif eth ern et0/0 eif eth -
ern et0/1
hostname(config-vrouter)# exit
hostname(config)#
hostname(config-addr)# ip 1.1.1.2/32
hostname(config-addr)# exit
hostname(config-addr)# ip 224.91.91.2/32
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
Requirement
The multicast source sends data to the multicast group. The multicast address is 224.91.91.2.
Interface ethernet0/0 is the upstream interface; ethernet0/1 and ethernet0/2 are the downstream
interfaces. Configure an IGMP Proxy so that the multicast data can be properly forwarded to the
client PC that belongs to the multicast group. The network topology is shown below:
Configuration Steps
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# zo n e trust
hostname(config-if-eth0/2)# exit
hostname(config)#
hostname(config-vrouter)# exit
hostname(config)#
hostname(config-vrouter)# ip igmp -p ro xy en ab le
hostname(config-vrouter)# exit
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/2)# exit
hostname(config)#
hostname(config-addr)# ip 1.1.1.2/32
hostname(config-addr)# exit
hostname(config-addr)# ip 224.91.91.2/32
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
The multicast source sends data to the multicast group. The multicast address is 224.91.91.2. The
device is working in the transparent mode. Interface ethernet0/0 is the upstream interface; eth-
ernet0/1 and ethernet0/2 are the downstream interfaces. The goal is to configure IGMP snooping
so that the multicast data can be properly forwarded to the client PC that belongs to the multicast
group.
Configuration Steps
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e l2-trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# zo n e l2-trust
hostname(config-if-eth0/2)# exit
hostname(config-if-vsw1)# exit
hostname(config)#
hostname(config-vrouter)# exit
hostname(config-vswitch)# exit
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# exit
hostname(config)#
hostname(config-addr)# ip 1.1.1.2/32
hostname(config-addr)# exit
hostname(config-addr)# ip 224.91.91.2/32
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Requirement
The redundant link consists of two Hillstone devices and two routers. The BFD detection func-
tion is enabled between the routers and the Hillstone devices. The reachable network segment of
Router1 is 100.1.1.1/24. The following examples individually integrate BFD with the static
route, the OSPF route, and the BGP route between the Router1 and the device A. The network
topology is shown in the figure below:
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config)#
Step 2:Configure the BFD session parameters on the interface of the device A. The default
detection method is asynchronous:
hostname(config-if-eth0/0)# exit
hostname(config)#
Step 3: Configure the device A to integrate BFD with the static route Router1:
hostname(config-vrouter)# exit
hostname(config)#
Step 4:Configure the interface of Router1 and the BFD functions. The IP address of the inter-
face is 1.1.1.2/24.
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config)#
Step 2:Configure the BFD session parameters on the interface of the device A, specify the
detection method as the inquiry method, enable the Echo function, and integrate BFD with the
OSPF route:
hostname(config-if-eth0/0)# b fd deman d en ab le
hostname(config-if-eth0/0)# b fd ech o en ab le
hostname(config-if-eth0/0)# ip o sp f b fd
hostname(config)#
hostname(config-vrouter)# ro uter o sp f
hostname(config-router)# exit
hostname(config)#
Step 4:Configure the interface of Route1, BFD functions, and OSPF route. The IP address of
the interface is 1.1.1.2/24. Use the inquiry method, enable the Echo function, and ensure the
Echo packets can be forwarded.
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config)#
Step 2:Configure the BFD session parameters on the interface of the device A, specify the
detection method as the inquiry method and enable the Echo function.
hostname(config-if-eth0/0)# b fd deman d en ab le
hostname(config-if-eth0/0)# b fd ech o en ab le
hostname(config-if-eth0/0)# exit
hostname(config)#
Step 3:Configure the BGP protocol on the device A and integrate BFD with BGP:
hostname(config-router)# exit
hostname(config)#
Step 4:Configure the interface of Route1, BFD functions, and BGP route. The IP address of
the interface is 1.1.1.2/24. Use the inquiry method, enable the Echo function, and ensure the
Echo packets can be forwarded.
Requirement
Ethernet0/6 and ethernet0/7 are connected to telecom and netcom links respectively. With
inbound LLB enabled, the device will return the IP address defined in the ISP static address
named telecom after receiving a DNS request from netcom users, and will return the IP address
defined in the ISP static address named telecom after receiving a DNS request from telecom
users. The network topology is shown below:
Configurations of interfaces are omitted. Only the configurations of ISP information and inbound
LLB are provided.
Step 1: Configure ISP information:
hostname(config-isp)# 101.1.1.0/24
hostname(config-isp)# exit
hostname(config-isp)# 201.1.1.0/24
hostname(config-isp)# exit
hostname(config-llb-smartdns)# exit
Step 3: Confirm the above configurations have taken effect by command show:
Binding to nexthop: 0
Subnet(IP/Netmask): 1
101.1.1.0/24
Binding to nexthop: 0
Subnet(IP/Netmask): 1
201.1.1.0/24
I: inactive
===================================================-
==========
-------------------------------------------------------------
name: test
domain count: 1
rule count: 2
status: enable
domains: www.test.com;
ip addresses:
===================================================-
================
When PC1 requests www.test.com, the device will return the IP address for telecom link
(100.1.1.2); when PC2 requests www.test.com, the device will return the IP address for netcom
link (200.1.1.2).
Requirement
The multicast source sends data to the multicast group. The multicast address is 224.91.91.2. The
receiver PC receives multicast data in the multicast mode, and the PIM domain adopts the SM
mode. Assume that the device is the candidate RP, the interface loopback1 is used as the inter-
face for electing RP, the interface ethernet0/0 is the upstream interface, and the interface eth-
ernet0/1 is the downstream interface. After PIM-SM is configured, multicast data can be
forwarded to the receiver PC. The network topology is shown below:
Figure : Network Topology of Configuring PIM-SM
Configuration Steps
Step 3:Configure the interface and enable the PIM-SM for the interface.
hostname(config-if-loo1))# exit
hostname(config)# interface ethernet0/0
hostname(config-if-eth0/0)# zone untrust
hostname(config-if-eth0/0)# ip address 1.1.1.2/24
hostname(config)#
Naming Rules
When you name an object, follow the conventions below:
l Hillstone recommends you to not use the following special characters: comma (,), single quo-
tation marks (‘‘), quotation marks (“”), tab, space, semicolons (;), backslash (\), slash
(/), angle brackets (<>), and other special characters (&, #). It is recommend that you should
use figures (0-9) and letters (a-z, A-Z) in the name.
l If an object name has space in it, you need to enclose the entire name in quotation marks
when you use CLI, but this does not apply to WebUI operations.
l host-name – Specifies the host name of the Hillstone device. You can specify up to 63 char-
acters. After executing the command, the command prompt will be changed to the specified
host name.
To restore to default value, in global configuration mode, use the command no hostname.
For example, the following commands change the host name to hillstone:
hostname# configure
hostname(config)# h o stn ame h illsto n e
h illsto n e(config)#
l length – Specifies the host name that can be displayed by the system. The length range is 1
to 63 characters. The default value is 16 characters, that is, when the length of the host name
exceeds 16 characters, the exceeding part will be displayed as "~".
To restore to the default value, in the global configuration mode, use the following command:
no hostname-display-length
If this command is executed with none of these items specified, or the tab title configuration is
deleted, the default tab title will be displayed. If multiple items are specified, the sequence of the
items is not limited. The sequence of the items displayed in the actual tab title is consistent with
the configuration sequence.
To delete the tab title configuration, in the global configuration mode, use the following com-
mand:
no webui-title-display-mode
To view the tab title configuration, in any mode, use the following command:
show webui-title-display-mode
l admin: can write, execute and write the system. Administrator role can manage all functions of
the device, view configurations and execute commands like import, export and save etc.
under configuration mode.
l operator: can write, execute and write the system. Operator can modify settings others than
administrator privileges, reboot the system, restore factory default and upgrade StoneOS, view
configurations, but operators cannot view log messages, and execute some commands.
l auditor: can manage log messages, including view, export and clear logs. The table lists admin
user's permissions.
Permissions
Reboot √ χ χ χ
Command export √ √ χ √
Command clear √ √ √ √
Command ping/traceroute √ √ √ χ
Command debug √ √ √ χ
Command exec √ √ √ √
l The system has a default administrator “hillstone”. This default administrator can be edited.
l Except administrator, other roles cannot edit properties of a system admin user, but only its
own password.
l Auditor can manage one or more log messages, but an auditor’s log types are defined by
users of administrator role.
l Assigning a role
l Configuring password
l role-name – Specifies the name of the administrator role. The length varies from 4 characters
to 95 characters. After executing this command, the system will create the administrator role
and enter the administrator role configuration mode. If the name already exists, it will enter
the administrator role configuration mode directly.
l description – Specify the description for the administrator role. You can specify up to 255
characters.
l user-name - Specifying a name for the admin user. The length is from 4 to 31 characters. This
command not only creates the admin user, also enters the user’s configuration mode; if the
admin user exists, it enters its configuration mode directly.
To delete an admin user, under global configuration mode, use the command no admin user user-
name.
When you are under an admin user’s mode, you can edit its role, password, access methods and
log types (for auditor roles).
Assigning a Role
To assign a role for an admin user, in the user's configuration mode, use the following command:
ro le {admin | o p erato r |audito r |admin -read-o n ly}
Configuring Password
Password is required for an admin account. To define a password, in the admin user’s con-
figuration mode, use the following command:
p asswo rd password
l password – Specify a password for admin user. The length is from 4 to 31 characters.
To cancel a password, under the admin user's configuration mode, use the command no password.
If you login as an operation, auditor or administrator-read-only, you can edit your own password
under any mode:
exec admin user p asswo rd up date password
Notes: If you use an Administrator account, you have the privilege to edit the pass-
word of every user.
Password policy defines admin user’s password complexity. The password complexity controls
the total length of the password, the length of each element, and the validity period of the pass-
word. A password can be a combination of elements from the following types:
l Capital letters A to Z.
l Lowercase letters a to z.
You must enter the password policy mode before you can change the complexity requirement.
Use the command password-policy to enter password policy configuration mode.
You can set the password complexity if the default-settings can not fit the security requirement.
You must enable password complexity checking before setting the password complexity.
To enable or disable password complexity checking, in password policy configuration mode, use
the following command:
admin co mp lexity {en ab le | disab le}
l enable | disable – Enable or disable password complexity checking. By default, the password
complexity checking is disabled. After the feature is enabled, the default complexity requires
that the password must contain all the four types of formats: two uppercase letters, two lower-
case letters, two figures and two other visible characters (e.g.@).
To define the length of password elements, in password policy configuration mode, use the fol-
lowing command:
admin {cap ital-letters | n o n -alp h an umeric-letters | n umeric-ch aracters | small-letters} value
l capital-letters value – Specify the length of capital letters in password. The default value is 2
and the range is 0 to 16.
l non-alphanumeric-letters value– Specify the length of visible characters except letters and
figures in password. The default value is 2 and the range is 0 to 16.
l numeric-characters value – Specify the length of figures in password. The default value is 2
and the range is 0 to 16.
l small-letters value – Specify the length of lowercase letters in password. The default value is
2 and the range is 0 to 16.
To define the minimum length of password for the admin users, in password policy configuration
mode, use the following command:
l min-length length-value – Specify the minimum length of the password. The default value is
4, and the range is 4 to 16. After password complexity checking is enabled, the default value
is 8(two uppercase letters, two lowercase letters, two figures and two other visible characters),
and the range is 8 to 16.
Notes: You can define the minimum length of the password in order to strengthen
the security whether the password complexity checking is enabled or not.
The validity period of the password is used to limit the time that you use password. When you log
in, if the entered password has expired, the system will prompt to reset the password. After press-
ing Enter, please enter the new password again. If the new password does not meet the password
complexity requirements or the new passwords for the two times are not consistent, you need to
re-input. Given that continuous input for three times does not meet the requirement of the pass-
word, you can not connect to the device. You are still required to set a new password when log-
ging in again. The new password can be the same as the old one.
To define the validity period of the password for the admin users, in password policy con-
figuration mode, use the following command:
admin p asswo rd-exp iratio n value
l password-expiration value – Specifies the validity period of the password. The unit is day.
The range is 0 to 365. The default value is 0, which indicates that there is no restriction on
validity period of the password.
In the password policy configuration mode, use the command no admin complexity to resume the
default setting of password complexity checking.
To enable or disable the History Password Check function, in the password policy configuration
mode, use the following command:
admin history-password-check {enable | disable}
With the History Password Check function enabled, when you change your password, the system
verifies whether the new password is the same as the historical password. The new password can-
not be the same as the specified numbers of historical passwords. To configure the History Pass-
word Check function, in the password policy configuration mode, use the following command:
admin history-password-recordscount
l count - Specifies the number of historical passwords to be verified. The value rage is from 3
to 8. The default value is 5, indicating that the new password cannot be the same as the last
five historical passwords.
To view password policy for admin users, in any mode, use the command:
sh o w p asswo rd-p o licy
The function of resetting the administrator password by security question enables you to change
passwords through security question. You can easily reset the password without knowing the pre-
vious password. If this function is configured and enabled, when you enter the wrong username
or password for three consecutive times through the console port, the system will prompt you to
reset the password by the security question.
To configure the security question, in the global configuration mode, use the following com-
mands:
admin reset-password question {customvalue | predefined {question1 | question2 |
question3}}
To configure the security answer, in the global configuration mode, use the following command:
admin reset-password answer value
l answer value–Specifies the security answer, which can only include letters, numbers, and
special characters (excluding "). Chinese characters cannot be included in the security ques-
tion. When you enter a string, add double quotations to the value. The value range is 1 to
256 characters.
l enable–Enables the function of resetting the administrator password by the security ques-
tion. To enable the function, you need to configure the security question and its answer
first.
l disable–Disables the function of resetting the administrator password by the security ques-
tion.
To delete the security question and its answer, in the global configuration mode, use the fol-
lowing commands:
no admin reset-password {question | answer}
l answer–Deletes the security answer only. To perform this operation, you need to disable
the function of resetting the administrator password by security question first.
To view the information about the function of resetting the administrator password by security
question, including the enabled/disabled status of the function, the content of the security ques-
tion, and the security answer, in any mode, use the following command:
show admin reset-password
l console – Allows the admin user to use Console port to access the device.
l http – Allows the admin user to use HTTP to access the device.
l https – Allows the admin user to use HTTPS to access the device.
l ssh – Allows the admin user to use SSH to access the device.
l telnet – Allows the admin user to use TELNET to access the device.
l netconf – Allows the admin user to use NETCONF to access the device.
l any – Allows the admin user to use any of the above methods to access the device.
l By specifying the SSO scheme as CAS_QIMING, you can log in to the CloudEdge without
authentication after logging in to the Venustech CSMP
l By specifying the SSO scheme as CTYUN, you can log in to the CloudEdge without authen-
tication after logging in to the e Cloud.
l By specifying the SSO scheme as 360-YUNZHEN, you can log in to the CloudEdge
without authentication after logging in to the 360 CSMP.
Enabling/Disabling SSO
To enable or disable the SSO function, in the global configuration mode, use the command:
Enable:admin sso-login enable
Disable:admin sso-login disable
Notes: When configuring SSO, the system time of the third-party platform and the
CloudEdge must be consistent. The time difference of this two parties cannot
exceed 10 minutes, otherwise the SSO will fail.
After enabling the SSO function, you need to specify one of the following SSO schemes of a
third-party platform: CAS_ QIMING, CTYUN and 360_YUNZHEN.
To specify the SSO scheme as CAS_QIMING, in the global configuration mode, use the com-
mand:
admin sso-login type cas-qiming
After specifying the SSO scheme as CAS_QIMING, you need to specify the Service Ticket
check URL and the virtual router where the third-party SSO passes.
l To specify the Service Ticket check URL , in the CAS_QIMING SSO mode, use the fol-
lowing command:
ticket-check-url url
l To specify the virtual router where the third-party SSO passes, in the SSO mode, use the fol-
lowing command:
vrouter vrouter-name
To specify the SSO Scheme as CTYUN, in the global configuration mode, use the following com-
mand:
admin sso-login type ctyun
This function can be used only in CTYUN SSO. The system allows you to view or delete the
Token information of the administrator. Token information is used for authentication during SSO.
To view the administrator's Token information, in the global configuration mode, use the com-
mand:
show admin sso-token type ctyun
To delete the administrator's Token information, in the global configuration mode, use the com-
mand:
l username– Specifies the username of the administrator whose Token information needs to
be deleted.
To specify the SSO scheme as 360_YUNZHEN, in the global configuration mode, use the com-
mand:
admin sso-login type 360-yunzhen
This function can be used only in 360_YUNZHEN SSO. The system allows you to view the
Token information of the administrator. Token information is used for authentication during SSO.
To view the administrator's Token information, in the global configuration mode, use the com-
mand:
show admin sso-info type 360-yunzhen
To view the SSO infomation , in any mode ,use the following command:
show http
To configure SMS/Email two-factor authentication, in global configuration mode, use the fol-
lowing command:
l sms-auth– Enables the SMS authentication. After the SMS authentication is enabled, the
administrator who does not configure the mobile number will be unable to log in to the
device.
l email-auth– Enables the Email authentication. After the Email authentication is enabled, the
administrator who does not configure the email address will be unable to log in to the device.
In global configuration mode, use the no admin sms-auth command to disable the SMS authen-
tication.
In global configuration mode, use the no admin email-auth command to disable the Email authen-
tication.
Notes: You cannot enable the SMS/Email authentication and SSO from a third-
party platform at the same time.
After the SMS authentication is enabled, an administrator is required to pass a multi-factor authen-
tication by using a verification code. The administrator who does not configure the mobile
To create an API token, in administrator configuration mode, use the following command:
api-token create – By default, the newly created API token is enabled.
To change the validity period of the API token, in administrator configuration mode, use the fol-
lowing command:
api-token expirationexpiration-time
l expiration-time – Changes the validity period of the API token. Valid values: 0 to 365 days.
Default value: 60 days. The value 0 indicates that the API token is valid for a long term.
After an administrator updates the API token, the original API token immediately becomes
invalid. The validity period of the newly generated API token will be recalculated. To update the
An administrator can renew the API token in the enabled or expired state. The value of the API
token does not change after the renewal. The validity period of the API token will be recal-
culated.
api-token renewal
An administrator can enable the API token. The validity period of the API token will be recal-
culated. For example, if the original validity period is 30 days, the validity period will become 30
days again after you enable this API token. To enable the API token, in administrator con-
figuration mode, use the following command:
api-token enable
An administrator can disable the API token. If needed, the administrator can use this API token
again by using the enable command. To disable the API token, in administrator configuration
mode, use the following command:
api-token disable
An administrator can delete the API token. To do this, use the following command:
api-token delete
You can use the show command in any mode to view the API token of a specified administrator:
show admin api-token user-name
Example:
============================================================-
====
API Token:(Displays the API token value, which is used to log in to RESTful
API) ewoJInR5cCI6CSJKV1QiLAoJImFsZyI6CSJTSEEyNTYiCn0-
=.ewoJInVzZXJuYW1l-
IjoJInRl-
c3QiLAoJInZzeXN-
faWQiOgk-
wCn0-
=.$020100rE$cmWWDXrSBhBtQvY+Pco1mSf-
fmhmICNk7NKAhxeS08wX/Kb08=
Current status: normal(Displays the current status of the API token. The
value normal indicates that the API token is enabled.)
============================================================-
====
l iot-monitor – Specifies that the auditor can manage IoT monitor logs.
l share-access-detect – Specifies that the auditor can manage share access logs.
l endpoint-tag – Specifies that the auditor can manage endpoint tag logs.
l urlfilter – Specifies that the auditor can manage URL filter logs.
l lockout-duration time – Specifying lockout duration. The unit is minute. The length is 1 to
65525. The default value is 2.
l max-login-failure times – Specify the maximum error password times. The default value is 3,
and the range is 1 to 256.
Use the command no admin max-login-failure to resume to the default failure time.
Notes: This command is available only for admin user of administrator role.
l max-login-failuretimes – Specify the maximum error password times. The default value is
256, and the range is 1 to 256.
Use the command no admin max-login-failure to resume to the default failure time.
To specify the maximum login failure time of user account, under the global configuration mode,
use the command:
admin max-lo gin -failure-user times
l max-login-failure-usertimes – Specify the maximum error password times. The default value
is 3, and the range is 1 to 5.
Use the command no admin max-login-failure-user to resume to the default failure time.
Notes: This command is available only for admin user of administrator role.
l capacity-num - Specify the maximum number of admin users, ranging from 1 to 128.
Notes: This command is a local configuration command and does not support HA
synchronization. In HA environment, if the maximum number of admin users set
on the master device is different from that on the backup device, the HA status may
be normal, while system will prompt an alarm regularly.
Notes: In the HA Active-Passive (A/P) mode, the backup device does not support
this function, and you can log in with the default username and password.
l To show the SMS and Email authentication configuration of admin users: show admin mul-
tiple-factor-auth
Example:
============================================================-
=
l The non-root administrators are created by root administrators or root operators after logging
into non-root VSYS.
l After logging into root VSYS, the root administrators can switch to non-root VSYS and con-
figure it.
l Non-root administrators can enter the corresponding non-root VSYS after the successful
login, but the non-root administrators cannot switch to the root VSYS.
l Each administrator name should be unique in the VSYS it belongs to, while administrator
names can be the same in different VSYSs. In such a case, when logging in, you must specify
Permissions
Configure √ χ √ χ √ χ √ χ
(including
save con-
figuration)
Managing √ χ χ χ √ χ χ χ
admin users
Restore fact- √ χ χ χ χ χ χ χ
ory default
Delete con- √ χ √ χ √ χ √ χ
figuration
file
Roll back √ χ √ χ √ χ √ χ
con-
figuration
Reboot √ χ √ χ χ χ χ χ
View log √ √ χ √ √ √ χ √
information
Modify cur- √ √ √ √ √ √ √ √
rent admin
password
Command √ χ √ χ √ χ √ χ
import
Command √ √ √ √ √ √ √ √
export
Command √ √ √ √ √ √ √ √
clear
Command √ √ √ χ √ √ √ χ
ping/tracero-
ute
Command √ √ √ χ χ χ χ χ
debug
Command √ √ √ √ √ √ √ √
exec
Command √ √ √ √ √ √ √ χ
terminal
width
Notes: When you cannot access the device from a particular host, check the IP set-
tings of the trusted host.
To set the IP range for the trusted host, in the global configuration mode, use the following com-
mand:
admin h o st {ran ge A.B.C.D A.B.C.D | A.B.C.D netmask | A.B.C.D/M | an y} {h ttp | h ttp s |
ssh | teln et | n etco n f | an y }
To set the IP range and MAC address/range, in the global configuration mode, use the following
command:
l range A.B.C.D A.B.C.D | A.B.C.D netmask | A.B.C.D/M | any – Specifies the IP range of
the trusted host, such as 1.1.1.1 255.255.0.0. any means any IP address.
l range H.H.H H.H.H | H.H.H | any}– Specifies the MAC address or range of
the trusted host, such as 1111.1111.1111 2222.2222.2222. any means any MAC address.
l http | https | ssh | telnet | netconf | any – Specifies the login type of the trusted host. any
menas any type of HTTP, HTTPS, SSH, Telnet and NETCONF.
You can repeat the above commands to set more range of the trusted hosts. At most 128 range
can be set in the system.
Use the command no admin host {range A.B.C.D A.B.C.D | A.B.C.D netmask | A.B.C.D/M |
any} to disable the specified IP range.
Use the command no admin host {range A.B.C.D A.B.C.D | A.B.C.D netmask | A.B.C.D/M |
any} mac-host{ range H.H.H H.H.H | H.H.H| any} to disable the specified IP
range and MAC address/range.
When IP range is used to match the trusted hosts, use the command no admin host
{rangeA.B.C.D A.B.C.D | A.B.C.D/M | any} {http | https | ssh | telnet | netconf | any } to
disable the specified login type.
When IP range and MAC address/range are used to match the trusted hosts, use the command no
admin host {range A.B.C.D A.B.C.D | A.B.C.D/M | any} mac-host{ range H.H.H
H.H.H | H.H.H| any} {http | https | ssh | telnet | netconf | any } to disable the spe-
cified login type.
l X:X:X:X::X/M | range X:X:X:X::X X:X:X:X::X | any - Specifies the start IP and end IP of
trusted hosts, for example, “1.1.1.1 255.255.0.0”. any means you can access the device
from any host.
l http | https | ssh | telnet | netconf | any - Specifies the protocol you can use to access the
device from a trusted host. any means all the four protocols are enabled.
1. Enable the NetBIOS host name resolution service for the specified zone (the zone should
not the one being connected to WAN).
This process may take a while and the results are stored in the NetBIOS cache table. The table is
updated regularly by the system.
Notes: The computer’s host name cannot be searched unless it is enabled with
NetBIOS.
Tip: To enter a zone configuration mode, use the command zone zone-namezone
zone-name.
l vrouter vrouter-name - Specifies the VR of the host. If this parameter is not defined, StoneOS
uses the default VR (trust-vr).
l ip-address - Specifies the IP address and NetBIOS cache data related to this IP address are
cleared by the system. If this parameter is not defined, all NetBIOS cache data are cleared.
l vrouter vrouter-name - Specifies the VR and NetBIOS cache data related to this VR are
cleared by the system. If this parameter is not specified, all NetBIOS cache data are cleared.
l ip-address - Shows NetBIOS cache data related to the specified IP address. If this parameter
is not defined, all NetBIOS cache data are displayed.
l vrouter vrouter-name - Shows NetBIOS data of the specified VR. If this parameter is not
defined, all NetBIOS cache data are displayed.
As shown above, User1, User2 and User3 belong to UserGroup1, while User3 also belongs to
UserGroup2, and UserGroup2 also contains User4, User5 and UserGroup1.
Roles are designed with certain privileges. For example, a specific role can gain access to some spe-
cified network resources, or exclusively use some bandwidth. In StoneOS, users and privileges
are not directly associated. Instead, they are associated by roles. The mappings between roles and
users are defined by role mapping rules. When a role is assigned with some services, its mapped
users receive the corresponding services as well. StoneOS supports the AND, NOT or OR logical
calculation of roles.
Hillstone device supports the following role-based functions:
l Role-based stat-set: Collects statistics on bandwidth, sessions and new sessions based on
roles.
Configuring Users
User configurations include static user binding configuration and authenticated user configuration.
To bind an IP address or MAC address to a user, in the global configuration mode, use the fol-
lowing command:
user-b in din g aaa-server-name user-name {ip { ipv4-address | ipv6-address } [auth -ch eck-o n ly
| vro uter vr-name ] | mac mac-address }
l ip {ipv4-address | ipv6-address} - Specifies the IP address, including IPv4 address and IPv6
address.
l auth-check-only - If this parameter is configured, the system checks if the user IP address con-
forms with the bound IP of this user. If it conforms, the user is allowed to enter authen-
tication stage.
l vrouter vr-name - Specifies the VR of the designated IP/MAC address. The default value is
the default VR (trust-vr).
To remove the binding of IP/MAC and user, in the global configuration mode, use the following
command:
n o user-b in din g aaa-server-name user-name {ip { ipv4-address | ipv6-address } [auth -ch eck-
o n ly] | mac mac-address } [vro uter vr-name ]
You can configure users/user groups to a local AAA server. To enter the local AAA server con-
figuration mode, in the global configuration mode, use the command aaa-server aaa-server-name
type local
user user-name
To create a local user, in the local AAA server configuration mode, use the following command:
This command creates a user and leads you into its configuration mode; if the user name exists,
you will directly enter the user configuration mode. To delete the specified user, in the AAA
server configuration mode, use the following command:
n o user user-name
Configuring Password
To specify a password, in the user configuration mode, use the following command:
p asswo rd [ irreversib le-cip h er ] password
To delete a password, in the user configuration mode, use the following command:
n o p asswo rd
An expired user cannot pass the authentication, so it becomes an invalid user. By default, all users
have no expiration date set.
To specify the expiration date and time for a user, in the user configuration mode, use the fol-
lowing command:
exp ire Month/day/year HH:MM
l Month/day/year HH:MM - Specifies the date and time in the format of month/date/year
hour:minute. For example, expire 02/12/2010 12:00 indicates that the user is invalid since
12:00, February 12nd, 2010.
To cancel the expiration date configuration, in the user configuration mode, use the following
command:
n o exp ire
Describing a User
To give some description for a user, in the user configuration mode, use the following command:
desc string
To delete the description, in the user configuration mode, use the following command:
n o desc
Specifying an IKE ID
The Dial-up VPN users need IKE IDs. To specify an IKE ID, in the user configuration mode,
use the following command:
ike_id {fqdn string | asn 1dn string | key-id string }
l fqdn string - Uses IKE ID of the FQDN (Fully Qualified Domain Name) type. string is the
ID content.
l asn1dn string- Uses IKE ID of the Asn 1dn type, which is only applicable to the user with a
certificate. string is the ID content.
l key-id string – Specifies the ID that uses the type of the Key ID. This type can only be used
in the XAUTH function.
To delete the IKE ID of a user, in the user configuration mode, use the following command:
n o ike_id
You can categorize users into a group according to your need. One user is allowed to be in mul-
tiple groups.
To specify a group for a user, in the user configuration mode, use the following command:
gro up user-group-name
l user-group-name - Specifies the name of an existing group in the system. You can specify up
to 127 characters.
Repeat this command to define more user groups for a user. Note: If a user is added to more than
256 groups, only the first 256 group associations will take effect based on the association
Tip: For more information about user group settings, see Configuring a User
Group.
To view the information of user/user group, in any mode, use the following commands:
This command creates the user group and leads you into the user group configuration mode; if the
user group of the specified name exists, you will enter the user group configuration mode directly.
To delete the specified user group, use the following command:
n o user-gro up user-group-name
To add a member (either a user or another user group) to the user group, in the user group con-
figuration mode, use the following command:
memb er {user user-name | gro up user-group-name }
l user-group-name - Specifies the user group name. A user group can include up to five nested
layers, but a group cannot add itself as a member.
Configuring a Role
Role configurations include:
l Creating a role
Creating a Role
To create a role, in the global configuration mode, use the following command:
ro le role-name
To delete a role, in the global configuration mode, use the following command:
n o ro le role-name
Role mapping rule defines the mapping relationship between a role and user/user group. StoneOS
supports up to 64 role mapping rules, and each rule has a maximum number of 256 entries.
When the authentication for SCVPN is set to USB Key certificate authentication ("User-
name/Password + USB Key Certificate" or "USB Key only"), the system can map a role for the
user according to the CN, OU or DN field of the USB Key certificate. For more information
about USB Key authentication, see “Authentication With USB Key Certificate” of “VPN”.
To enter the role mapping rule configuration mode, in the global configuration mode, use the fol-
lowing command:
ro le-map p in g-rule rule-name
l rule-name - Specifies a name for the role mapping rule. You can specify up to 31 characters.
This command creates a rule and leads you in the role mapping rule configuration mode; if this
rule exists, you will enter its configuration mode directly.
To delete the specified role mapping rule, in the global configuration mode, use the following
command:
n o ro le-map p in g-rule rule-name
To configure a role mapping rule, in the role mapping rule configuration mode, use the following
command:
To configure a role mapping rule, in the role mapping rule configuration mode, use the following
command:
match {an y | user user-name | user-gro up user-group-name | cn cn-field | o u ou-field |
user-attribute user-attribute-name | certificate-dn dn-field } ro le role-name
To configure a user attribute instance, you need to enter the configuration mode of the user attrib-
ute instance. In the global configuration mode, use the following command:
role-mapping-source user-attribute user-attribute-name protocol-type {radius | ad/ldap}
l protocol-type {radius | ad/ldap} - Specifies the protocol type, which can be RADIUS
(radius) or AD/LDAP (ad/ldap).
After this command is performed, the system creates a user attribute instance with the specified
name and protocol type and enters the configuration mode of the user attribute instance. If the
specified user attribute instance name exists, you will directly enter the configuration mode of the
user attribute instance.
l attribute-value - Specifies the name of the user attribute. The name can be user-defined or
common names of user attributes.
Notes:
l Each user attribute instance supports up to 8 filers.
In the configuration mode of the user attribute instance, use the following command to delete
configured filters of the user attribute instance:
no attribute attribute-value {contain | end-with | equal-to | greater-than | less-than | same-as |
start-with} value
Configuring the Matching Policy
l once | all - Specifies the matching policy of the user attribute instance: Once or All. once–
The user is matched to the role mapped to the user attribute instance when the user hits any
filter configured in the user attribute instance. all - The user is matched to the role mapped to
the user attribute instance only when the user hits all filters configured in the user attribute
instance.
In the configuration mode of the user attribute instance, use the no match command to cancel the
specified matching policy of the user attribute instance.
Roles can be grouped using logical calculation into a role combination. To configure a role com-
bination, in the global configuration mode, use the following command:
ro le-exp ressio n [n o t] r1 [{an d | o r} [n o t] r2 ] ro le r3
l [not] r1 - Specifies the first role in this combination. not means excluded; r1 refers to the
name of an existing role. For example, “not testrole1” means all roles other than testrole1.
l [not] r2 - Specifies the second role in this combination. r2 refers to the name of an existing
role.
l role r3 - Specifies the calculated result. r3 refers to the name of the result.
To delete the specified role combination, in the global configuration mode, use the following com-
mand:
n o ro le-exp ressio n [n o t] r1 [{an d | o r} [n o t] r2 ] ro le r3
To configure the baud Rate of console port, in any mode, use the following command:
exec co n so le b audrate {9600 | 19200 | 38400 | 57600 | 115200}
l 9600 | 19200 | 38400 | 57600 | 115200 - Specifies the baud rate. The unit is bps.
Note:The default value is 115200bps for A series, K series(excluding K2680 and K2380), and
X8180. The default value is 9600bps for E series, X series(excluding X8180), K2680, and
K2380.
Notes: When you login to the device, the baud rate of your console terminal should
conform to the console baud rate specified here.
If there is no configuration performed by the logged-in administrator until timeout, the system
will disconnect the connection.
To configure the console timeout value, in the global configuration mode, use the following com-
mand:
co n so le timeo ut timeout-value
l timeout-value - Specifies console timeout value. The value range is 0 to 60 minutes; the value
of 0 means no time limit. The default value is 10.
To restore to the default value of console timeout, in the global configuration mode, use the fol-
lowing command:
n o co n so le timeo ut
l timeout-value - Specifies the Telnet timeout value. The range is 1 to 60 minutes. The default
value is 10.
To restore to the Telnet default timeout value, in the global configuration mode, use the fol-
lowing command:
no telnet timeout
To configure the allowed maximum number of sessions, in the global configuration mode, use the
following command:
teln et max-sessio n max-session
To restore the session numbers to the default value, in the global configuration mode, use the fol-
lowing command:
n o teln et max-sessio n
To specify the port number of Telnet, in the global configuration mode, use the following com-
mand:
teln et p o rt port-number
l port-number - Specifies Telnet port number. The range is 1 to 65535. The default value is 23.
To restore to the default value, in the global configuration mode, use the following command:
n o teln et p o rt
Telnet maximum login number defines how many times you can try to login to the device over
Telnet. If you fail more than the maximum times, your Telnet login attempts will be refused.
To specify the Telnet maximum login number, in the global configuration mode, use the fol-
lowing command:
teln et auth o rizatio n -try-co un t count-number
l count-number - Specifies the maximum login number. The value range is 1 to 10 times. The
default value is 3.
To restore to the default value, in the global configuration mode, use the following command:
n o teln et auth o rizatio n -try-co un t
l timeout-value - Specifies the SSH maximum idle time. The value range is 1 to 60 minutes.
The default value is 10.
To restore to the default value, in the global configuration mode, use the following command:
n o ssh timeo ut
To configure the allowed maximum number of sessions, in the global configuration mode, use the
following command:
ssh max-sessio n max-session
l max-session – Specifies the allowed maximum number of sessions. The maximum number of
sessions of difference platforms differs. The default value of each platform is the maximum
number of sessions.
To restore the session numbers to the default value, in the global configuration mode, use the fol-
lowing command:
n o ssh max-sessio n max-session
To set up the SSH port number, in the global configuration mode, use the following command:
ssh p o rt port-number
l port-number - Specifies the SSH port number. The value range is 1 to 65535. The default
value is 22.
To restore to the default SSH port number, in the global configuration mode, use the following
command:
n o ssh p o rt
SSH connection interval specifies the frequency of receiving SSH requests. When an SSH con-
nection is established, the device receives the next SSH connection request at an interval of the
time specified here.
ssh co n n ectio n -in terval interval-time
To restore to the default value, in the global configuration mode, use the following command:
n o ssh co n n ectio n -in terval
l timeout-value - Specifies the WebUI timeout value. The value range is 1 to 1440 minutes.
The default value is 10.
To restore to the default WebUI timeout value, in the global configuration mode, use the fol-
lowing command:
no web timeout
To specify the HTTP port number, in the global configuration mode, use the following command:
h ttp p o rt port-number
l port-number - Specifies the port number of HTTP. When visiting WebUI over HTTP, the
browser’s HTTP port must be the same as the port number specified here. The value range
is 1 to 65535. The default value is 80.
To restore to the default HTTP port number, in the global configuration mode, use the following
command:
n o h ttp p o rt
To configure the anti-XSS service, in the global configuration mode, use the following command:
h ttp an ti-xss { disab le | en ab le | mo de {n o rmal| strict}}
l mode {normal| strict} – Specifies the mode of the anti-XSS service, including the character
matching mode and the regular expression mode.
In the global configuration mode, use the following command to restore the configurations to the
default.
n o h ttp an ti-xss { disab le | en ab le | mo de {n o rmal| strict}}
Click-jacking is a visual deception means. The attacker uses an invisible iframe to cover a web
page and induces the end user to perform operations on the web page. The end user will click
on the invisible iframe page without knowing it. To prevent the attacker's page from being
embedded in the WebUI page of the firewall, you can enable the anti-click-jacking function,
which will add an "X-Frame-Options sameorigin" field to the response to make sure all WebUI
pages of the firewall are from the same domain name. By default, the anti-click-jacking func-
tion is enabled.
To disable the anti-click-jacking function, in the global configuration mode, use the following
command:
l HTTPS: The system communicates with the client (browser) based on the TLS/SSL pro-
tocol;
l GM HTTPS: The system communicates with the client (GM browser) based on the GM
TLS/SSL protocol. In the SSL authentication process, two certificates are used, including the
signature certificate and the encryption certificate.
To enable or disable GM HTTPS, in the global configuration mode, use the following command:
https ssl-protocol-gm {enable | disable}
To specify the HTTPS port number, in the global configuration mode, use the following com-
mand:
h ttp s p o rt port-number
l port-number - Specifies the HTTPS port number. When visiting WebUI over HTTPS, the
browser’s HTTPS port number must be the same as the port number specified here. The
value range is 1 to 65535. The default value is 443.
To restore to the default HTTPS port number, in the global configuration mode, use the fol-
lowing command:
n o h ttp s p o rt
To specify the PKI trust domain for HTTPS access, or specify the PKI trust domain of signature
certificate for GM HTTPS access, in the global configuration mode, use the following command:
h ttp s trust-do main trust-domain-name
l trust-domain-name - Specifies the name of the configured PKI trust domain. When users
access the device via HTTPS, in the SSL authentication process, the HTTPS server uses the
certificate stored in the specified PKI trust domain. When users access the device via GM
HTTPS, in the GMSSL authentication process, the HTTPS server uses the certificate stored
in the specified PKI trust domain as the signature certificate. By default, the system uses the
below default PKI trust domain: trust_domain_default.
To restore the default PKI trust domain, in the global configuration mode, use the following com-
mand:
n o h ttp s trust-do main
GM HTTPS applies two certificates. Therefore, when GM HTTPS is enabled, you should specify
the PKI trust domain of the encryption certificate. To specify the PKI trust domain of the encryp-
tion certificate, in the global configuration mode, use the following command:
https trust-domain-enc trust-domain-name
To restore to the default encryption trust domain for GM HTTPS access, in the global con-
figuration mode, use the following command:
n o h ttp s trust-do main -en c
l usb0 | usb1 - Formats the USB disk inserted to the device’s USB port.
l storageX - Formats the storage expansion module in the specified slot. X is the slot number
and its value range varies from platform types.
Notes: Formatting a storage device erases all the data in it. You should back up your
files.
l usb0 | usb1 - Removes the USB disk from the specified USB port.
l storageX - Removes the storage expansion module from the specified slot.
l delete - Delete earlier version of data whose format is inconsistent with that of new version of
data.
l percent percent-value – Specify the threshold of alarm. The storage ratio ranges from 1% to
90%.
l global - The storage threshold is calculated based on the total storage space.
l by-log - The storage threshold is calculated based on the separate storage space of each
module log.
Note: For devices without hard disks, the storage threshold is calculated by-log by default,
and the storage space for logs and reports is a fixed value.
To restore to the default disk space size of log, use the following command:
no storage threshold log {configuration | event | network | sandbox | threat | traffic {session |
nat} }
The default disk space size differs from devices and log types. After restoring to the default disk
space size of log, you can use the show storage threshold command to view the default settings.
l report percent-value - Specify the disk space size of the report file.
Note: For devices without hard disks, the storage space for reports is a fixed value.
l percent-value - Configure the storage size of statistical data for the Long-term Monitor func-
tion. Valid values: 0.01% to 90%. Default value: 10%.
l percent-value - Specifies the storage size for packet loss statistics. Valid values: 0.1%-90%.
Default value: 2%. If the storage usage exceeds the threshold, earlier statistical data is deleted.
Notes: Passwords of local users will not be exported when you export configuration
information.
Initial configuration information, stored in the configuration file, is used to configure the system
parameters when the device is powered on. If no proper initial configuration information is found,
Notes: If you have rolled back to a specified saved initial configuration, the con-
figuration information is marked as "Startup".
To view the initial configuration information, in any mode, use the following command: show con-
figuration [startup]
To view configuration information other than the current one, in any mode, use the following
command:
sh o w co n figuratio n b ackup number
To view the configuration information record other than the current one, in any mode, use the fol-
lowing command:
sh o w co n figuratio n
To view the current interface configuration information, in any mode, use the following com-
mand:
sh o w co n figuratio n in terface [ interface-name | last number ]
l interface-name – Specifies the interface name of the configuration information need to dis-
played.
l last number – Specifies the interface entry number of configuration information need to be
displayed. System will display the interface configuration information from the last specified
value entry to the end entry.
To view the current configuration information, in any mode, use the following command:
sh o w co n figuratio n reco rd
To view the current address book configuration information the system is using, in any mode, use
the following command:
sh o w co n figuratio n [ ipv4 | ipv6 ] address [last number | address-name ]
l [ipv4 | ipv6] - Specifies to display the configuration information of the IPv4 (ipv4) or IPv6
(ipv6) address entries, including the address entry name, type (pre-defined or user-defined)
and address members. If not specified, it will display the configuration information of all IPv4
and IPv6 address entries.
l last number – Specifies the address entry number of the configuration information need to
be displayed. System will display the address configuration information from the last specified
value entry to the end entry, including the address entry name, type (pre-defined or user-
defined) and address members.
l address-name - Specifies to display the configuration information of the address entry with the
specified name, including the address entry name, type (pre-defined or user-defined) and
address members.
To view the current policy configuration information the system is using, in any mode, use the fol-
lowing command:
sh o w co n figuratio n p o licy [last number ]
l last number – Specifies the policy entry number of the configuration information need to be
displayed. System will display the policy configuration information from the last specified
value entry to the end entry.
To view the current routing configuration information the system is using, in any mode, use the
following command:
sh o w co n figuratio n vro uter [last number ]
Output the current configuration information using the XML format, in any mode, use the fol-
lowing command:
sh o w co n figuratio n xml
In the configuration rollback mode, use the following command to roll back to the previous con-
figuration and exit the configuration rollback mode. The configuration will be valid without restart-
ing the device.
exec co n figuratio n ro llb ack
Notes: In the execution mode, you should use exec configuration start command to
enter the rollback mode.
For example:
To exit the configuration rollback mode directly, you can use the following two ways:
In the configuration rollback mode, use the following command to exit the configuration rollback
mode directly.
exec co n figuratio n co mmit
For example:
In the configuration rollback mode, use the command exitto exit the terminal directly.
Tip:
l When different users log in the device meanwhile, only the user who
enters the configuration rollback mode first can do further configuration,
and the later users cannot.
l When a user log in the device through different access methods, the user
of a certain access method enters in the configuration rollback mode first
can do further configuration, and the later users of other access methods
When exiting the configuration rollback mode by using command exit, system wil exit the con-
figuration rollback mode directly by default. To roll back to the previous configuration and exit
the configuration rollback mode, in the global configuration mode, take the following command:
cli-exit-actio n ro llb ack
To restore to the default value, in the global configuration mode, take the following command:
cli-exit-actio n co mmit
To delete a configuration file from the system, in the configuration mode, use the following com-
mand:
delete co n figuratio n {startup | b ackup number }
When the current configurations are saved, they become the initial configuration information used
by the system as next start-up configurations.
To save the current configurations, in any mode, use the following command:
save [ string ]
l string - Give some description for the saved configuration. If you leave this parameter blank,
the former configurations will be replaced.
You can configure the function of back up the configuration file automatically, the device will
check the configuration file regularly, when the configuration file changes, the system will update
the configuration files to a FTP server , a TFTP server, a SFTP server or a FTPS server.
Notes: For any device platform, the maximum number of system configuration files
that can be backed up is 5.
To back up configuration file to a FTP server automatically, in the global configuration mode, use
the following command:
co n figuratio n auto -b ackup ftp ip-address [user user-name p asswo rd password ] [vro uter
vrouter-name ] p ath path [in terval time-value ]
l user user-name password password - Specifies the user name and password accessing FTP
server.
l interval time-value – Specifies the update interval. The value range is 1 to 7*24 hours. The
default value is 1 hour.If this parameter is not specified, the system will check the con-
figuration file hourly, and back up the changed configuration files to FTP server when con-
figurations are changed.
In the global configuration mode, use no configuration auto-backup ftp command to cancel the
settings of backing up configuration file to a FTP server automatically.
To back up configuration file to a TFTP server automatically, in the global configuration mode,
use the following command:
co n figuratio n auto -b ackup tftp ip-address [vro uter vrouter-name ] p ath path [in terval time-
value ]
In the global configuration mode, use no configuration auto-backup sftp command to cancel the
settings of backing up configuration file to a SFTP server automatically.
To back up configuration file to a FTPS server automatically, in the global configuration mode,
use the following command:
co n figuratio n auto -b ackup ftp s ip-address [user user-name p asswo rd password ] [vro uter
vrouter-name ] p ath path [in terval time-value ]
In the global configuration mode, use no configuration auto-backup ftps command to cancel the
settings of backing up configuration file to a FTPS server automatically.
To view backing up configuration file automatically Information, in any mode, use the following
command:
sh o w co n figuratio n auto -b ackup
Current and backup configurations can be exported to external destinations, including FTP server,
TFTP server, a SFTP server or a FTPS server and USB flash disk.
To export system configurations to an FTP server, in the execution mode, use the following com-
mand:
export configuration {startup [config-filetype zip [zip-password zip-password] ] | backup
number| all-vsys} to ftp server ip-address [vrouter vrouter-name] [ user user-name password pass-
word] [file-name]
l config-filetype zip [zip-password zip-password] - When exporting the current startup con-
figurations, the system supports encrypted and unencrypted ZIP files. zip-password specifies
the compression password of the ZIP file.
l user user-name password password - Specifies the username and password of the FTP server.
To export configurations to a TFTP server, in the execution mode, use the following command:
export configuration { startup [ config-filetype zip [ zip-password zip-password ] ] |
backup number | all-vsys } to tftp server ip-address [ vrouter vrouter-name ] [ file-
name ]
To export configurations to a SFTP server, in the execution mode, use the following command:
exp o rt co n figuratio n {startup [ config-filetype zip [ zip-password zip-password ] ] |
b ackup number | all-vsys } to sftp server ip-address [vro uter vrouter-name ] [user user-name
p asswo rd password ] [ file-name ]
To export configurations to a FTPS server, in the execution mode, use the following command:
exp o rt co n figuratio n {startup [ config-filetype zip [ zip-password zip-password ] ] |
b ackup number | all-vsys } to ftp s server ip-address [vro uter vrouter-name ] [user user-name
p asswo rd password ] [ file-name ]
To export system configurations to USB flash disk, in the execution mode, use the following com-
mand:
export configuration { startup [ config-filetype zip [ zip-password zip-password ] ] |
backup number | all-vsys } to { usb0 | usb1 } [ vrouter vrouter-name ] [ file-name ]
Configuration files can be imported into the system from the FTP server, TFTP server, SFTP
server, FTPS server or USB flash disk inserted to the device USB port.
To import configurations from an FTP server, in the execution mode, use the following com-
mand:
import configuration [all-vsys | config-filetype zip [zip-password zip-password] ] from ftp server
ip-address user user-name password password [vrouter vrouter-name] file-name
l config-filetype zip [zip-password zip-password] - Specifies the imported file type as being
ZIP. If the file is encrypted, enter the compression password.
l user user-name password password - Specifies the username and password of the FTP server.
To import configurations from a TFTP server, in the execution mode, use the following com-
mand:
import configuration [all-vsys | config-filetype zip [zip-password zip-password] ] from tftp server
ip-address [vrouter vrouter-name] file-name
To import configurations from a SFTP server, in the execution mode, use the following com-
mand:
imp o rt co n figuratio n [ all-vsys | config-filetype zip [ zip-password zip-password ] ] from
sftp server ip-address [vro uter vrouter-name ] [user user-name p asswo rd password ] [ file-name ]
To import configurations from a FTPS server, in the execution mode, use the following com-
mand:
To import configurations from a USB flash disk, in the execution mode, use the following com-
mand:
import configuration [all-vsys | config-filetype zip [zip-password zip-password] ] from {usb0 |
usb1} [vrouter vrouter-name] file-name
By default, when the device system starts, it will import the configuration files in USB auto-
matically, that is, replace all existing configuration files in the device, including predefined con-
figuration files and incremental configuration files (added on the basis of predefined
configuration) , you can disable this function by command, and then the configuration file will not
be imported automatically. To disable or enable this function, in global configuration mode, use
the following command:
l When the device starts with the factory default configuration, system will import the incre-
mental configuration file in USB automatically. The name of the incremental configuration file
must be "sn-inject_XXX.cong", the "sn" indicates the device SN, and "XXX" indicates a user-
defined field, which consists of English characters, numbers, or underscores, and cannot
exceed 128 bytes. After the configuration file is automatically imported, the import log inform-
ation will be recorded in the USB root directory.
l The automatically imported configuration file must be a UTF-8 encoding file and the max-
imum size cannot exceed 16M.
l The automatically imported configuration files need to be stored in the root directory of USB.
You can either press the CLR button on the device or use the command in this section to reset
the device and restore factory defaults.
un set all
Notes: Use this command with caution. It clears all configurations on the device.
l QSFP28 port: The QSFP28 port cannot be inserted with the optical fiber-to-copper module.
By default, it is in 100G working mode and can be switched to 40G working mode to connect
with a 40G interface. To switch it to the 40G working mode, in the interface configuration
mode, run the command: channel-speed 40000.
l QSFP+ port: The QSFP+ port cannot be inserted with the optical fiber-to-copper module.
By default, it is in 40G working mode. It can be split into four 10G interfaces to connect with
other 10G interfaces. In this condition, QSFP+ port still cannot be inserted with the optical
fiber-to-copper module. The IOC-A-2QSFP+ of A-Series Firewall cannot be switched to the
lower-speed working mode. To switch it to the 10G working mode, in the interface con-
figuration mode, run the command: channel-speed 10000.
l SFP+ port: By default, SFP+ port is in 10G working mode. According to the transmission
rate of the fiber-optic module or the fiber-optic-to-copper module, it can be automatically
switched to 1G working mode to connect with a 1G interface. If the working mode cannot be
switched automatically, in the interface configuration mode, run the command channel-speed
1000 to manually switch it to the 1G working mode.
To restore its default working mode, in the interface configuration mode, run the command:
no channel-speed
Notes:
l Delete relevant configuration of the interface before switching its working
mode.
l When the working mode is switched, the fiber-optic module of the switched
working mode needs to be inserted into the interface for connection.
l For more information about the supported fiber-optic interfaces of All Series
Firewalls, refer to Hardware Reference Guide and Expansion Modules Refer-
ence Guide.
Switching Mode
The 2x40GE(QSFP+) and 2x100GE(QSFP28) optical interfaces of SG-6000-A7600/A6800 can
be switched to the following three modes through the exec port-mode command:
l Auto-negotiation mode: This is the default negotiation mode. In this mode, an interface oper-
ates in auto-duplex mode at 1000Mb/s. After auto negotiation is completed, interfaces at both
ends operate in full-duplex mode at 1000Mb/s.
To ensure that interfaces at both ends can complete link negotiation, you need to make the nego-
tiation mode configuration of interfaces at both ends consistent. Negotiation mode configuration
involves the following scenarios:
l The peer interface is in forced mode and the local interface is in auto-negotiation mode: In
interface configuration mode, use the sfp-to-copper force command to set the negotiation
mode of the local fiber-optic interface to forced. The negotiation will not succeed until the
negotiation mode of interfaces at both ends are consistent.
l The peer interface is in auto-negotiation mode and the local interface is in forced mode: In
interface configuration mode, use the no sfp-to-copper force command to set the negotiation
mode of the local fiber-optic interface to auto-negotiation. The negotiation will not succeed
until the negotiation mode of interfaces at both ends are consistent.
Notes: This function is supported only for certain devices, including A-series, E-
series, K9180, X8180, X9180, and X10800 devices.
l slot-number – Specifies the slot number where the IOM locates. The range is 1 to 128.
After executing this command, the system will display different prompts according to the dif-
ferent situations. You can perform the operations accordingly.
l When executing the hot-swappable action for the SCM, SSM and QSM, you
do not need to execute the above command.
Example:
OM2 max transmit distance: 300 m (Display the max transmission dis-
tance of OM2 fiber.)
OM3 max transmit distance: 0 m (Display the max transmission dis-
tance of OM3 fiber.)
copper max transmit distance: 0 m (Displays the max transmission
distance of the copper cable.)
============================================================-
===
l Firstly, to shut down a virtual NIC, in any mode, use the following command:
exec detach-port port port-number
l port-number - Specify the port number of the virtual NIC that needs to be shut down.
The value of port-number is equal to the value of "X" of Etherent0/X on the device.
l After the above command has been executed, the status of physical / protocol / link state,
etc. of the corresponding interfaces will become Down (you can view it via the show inter-
face command).
l Finally, to make the module initialize normally, in the execution mode, delete the con-
figuration information of virtual NIC via the following command: exec unset-port port port-
number
l port-number – Specify the port number of the virtual NIC of which the configuration
information needs to be deleted. The value of port-number is equal to the value of "X"
of Etherent0/X on the device and the port-number value of command exec detach-port
port port-number.
After the above commands are executed, The NIC is removed safely.
Configuring Banner
Banner used to display the statement after logining the system, the user can customize the Banner
information content. To edit the Banner, in the global configuration mode, use the following com-
mand:
admin lo gin -b an n er Banner-content
l Banner-content - Specifies the Banner content. The length varies from 1 characters to 4096
characters. After executing this command, the system will create the Banner of specified con-
tent. If the Banner already exists, it will modify the Banner for the specified content.
In the global configuration mode, use no admin login-banner command to delete the Banner.
Notes:
l In the edit Banner content, if you need to wrap, enter "\n", if you need a
space, enter the double quotes "".
l Support for displaying Banner when login to the device over SSH, Telnet, or
Console port.
Ping
Ping is used mainly for testing network connection and host accessibility.
To check network availability, in any mode, use the following command:
p in g [ip v6 ] { ip-address | hostname } [co un t number ] [size number ] [so urce ip-address ]
[timeo ut time ] [vro uter vrouter-name ]
l ip-address | hostname - Specifies the IP address or hostname of the destination. When using
the dual-stack firmware, you can specify the IPv6 address.
l count number - Specifies the number of Ping packets. The value range is 1 to 65535. By
default, packet number is not limited.
l size number - Specifies the size of ping packet. The value range is 28 to 65500 bytes.
l timeout time - Specifies the timeout value for the ping packets. The range is 0 to 3600
seconds. The default number is 0, which means no timeout.
l vrouter vrouter-name - Specifies the VRouter of the interface sending ping packets. The
default value is trust-vr.
The output of ping command includes the response status for each Ping packet and the final stat-
istics:
l The response status for each Ping packet. If there is no response, the output is “Destination
Host Not Responding”; otherwise, the output is the packet sequence, TTL and responding
time of the response packet. If the Ping packet does not reach the destination route or the
l Final statistics. The final statistics includes sent packet number, received packet number, lost
packet percentage and time.
hostname(config)# p in g 10.200.3.1
1 128 2.53
2 128 1.48
3 128 1.48
4 128 1.47
5 128 1.46
statistics:
Traceroute
Traceroute is used to test and record gateways of packets from source host to the destination. It is
mainly used to check whether the destination is reachable, and analyze the fault gateway in the net-
work. The common Traceroute function is performed as follows: first, send a packet with TTL 1,
so the first hop sends back an ICMP error message to indicate that this packet cannot be sent
(because of the TTL timeout); then this packet is re-sent, with TTL 2, TTL timeout is sent back
again; repeat this process till the packet reaches the destination. In this way, each ICMP TTL
timeout source address is recorded. As result, the path from the originating host to the destination
is identified.
l port port-number - Specifies the UDP port number. The value range is 1 to 65535. The
default value is 33434.
l probe probe-number - Specifies the number of probe packet in each hop. The range is 1 to
65535. The default value is 3.
l timeout time - Specifies the timeout value of next probe packet. The range is 1 to 3600
seconds. The default value is 5.
l ttl [min-ttl] [max-ttl] - min-ttl is the minimum TTL value, with range from 1 to 255 and
default value being 1. max-ttl is the maximum TTL value, with range from 1 to 255 and
default value being 30. Specifying TTL is used to display the echo from the min-ttl hop to the
max-ttl hop.
l source interface - Specifies the the name of the interface sending traceroute probe packets.
l use-icmp - Uses ICMP packets to probe. If this parameter is not defined, the system uses
UDP packets to probe.
l vrouter vrouter-name - Specifies the VRouter of the egress interface of traceroute probe pack-
ets. The default value is the default VRouter (trust-vr).
9***
10 * * *
This example shows which gateways the packets have traversed during the process from source
host to destination host and fault gateways.
System Debugging
System debugging helps you to diagnose and identify system errors. Basically, all the protocols
and functions can be debugged. By default, debugging of all functions is disabled. The debugging
function can only be configured through CLI.
To enable system debugging, in any mode, use the following command:
deb ug {all | function-name }
To disable all or one debugging function, in any mode, use the following command:
un deb ug {all | function-name }
You can disable debugging by pressing ESC key. As some debugging information has been
cached, the closing process may take several minutes.
Notes: If you want to view debugging information on your terminal, enable debug
logging function (execute the command logging debug on).
l cpu-number – Collects and saves the tech-support information of specified CPU to file. You
can configure this parameter only in system with multiple CPUs.
l all –Collects and saves all the tech-support information to file. You can configure this para-
meter only in system with multiple CPUs.
Notes: You can collect and save all the tech-support information to file through
command show tech-support in system with single CPU.
To view the tech-support information through Console port, in any mode, use the following com-
mand:
sh o w tech -sup p o rt [cp u cpu-number | all] to co n so le
l cpu-number – Displays the tech-support information of specified CPU to Console port. You
can configure this parameter only in system with multiple CPUs.
Notes: You can view all the tech-support information though Console port by com-
mand show tech-support toconsole in system with single CPU.
To collect the Tech-support Information Automatically, in any mode, use the following com-
mand:
sh o w tech -sup p o rt-auto in terval interval-time co un t count-time
l interval-time – Specifies the interval time to collect the tech-support information auto-
matically. The range is 10 to 1440. The unit is minute.
l count-time –Specifies the times to collect the tech-support information automatically. The
range is 1 to 10.
Notes:
l System can save 10 tech-support files at most. When the number of file
exceeds 10, the new file will cover the older file.
To view the log information of nvramlog or watchdoglog in tech-support file, in any mode, use
the following command:
sh o w tech -sup p o rt log-name
To delete the function of automatically collecting tech-support information, in any mode, use the
following command:
sh o w tech -sup p o rt-auto clear
hostname# reb o o t
System configuration has been modified. Save? [y]/n (type y or press Enter
to save the settings; type n to give up changes.)
Building configuration..
System reboot, are you sure? y/[n] (type y to reboot the system; type
n or press Enter to go back to the configuration mode.)
Save the current settings before rebooting the device if you don’t want to lose unsaved con-
figurations. Be careful when you execute this command, because network disconnection occurs
during the rebooting process.
Upgrading StoneOS
This section introduces StoneOS starting-up system and describes how to upgrade StoneOS.
l Bootloader - The first started program when the device is powered on. Bootloader loads
StoneOS or Sysloader and makes them start.
When a device is powered on, the Bootloader tries to start StoneOS or Sysloader. The Sysloader
is used to select existing StoneOS in the system and upgrade StoneOS via FTP, TFTP or USB
port. The upgrade of Sysloader is performed by the Bootloader via TFTP.
Bootloader
The Bootloader has two working modes: automatic mode and interactive mode.
In the automatic mode, Bootloader starts the existing StoneOS first. If no StoneOS exists or only
illegal ones present, the system stops and you must upgrade StoneOS in Sysloader.
To enter the interactive mode, press ESC during the starting process according to the prompt. In
the interactive mode, you can select a Sysloader stored in the flash to start, or download a new ver-
sion of Sysloader from the TFTP server and then start it.
HILLSTONE NETWORKS
BOOTROM: 512 KB
Press ESC to stop autoboot: 4 (Press ESC during the 5-second count-
down.)
Run on-board sysloader? [y]/n: y (Type y or press Enter)
Loading: ##########################
Power on the device and enter Sysloader. For SG-6000-A/K series, please refer to the following
steps:
6 Reset
Specify Sysloader IP, TFTP server IP, gateway IP, and the name of StoneOS:
Verified OK
Save this image? [y]/n: y (Type y or press Enter to save the trans-
ferred StoneOS.)
Saving .........................................
6 Reset
The device can save only two versions of StoneOS. If you want to save a new one, delete an exist-
ing one according to the prompt.
To download StoneOS from FTP server and upgrade it, in the Sysloader program, take following
steps:
2. Type the Sysloader IP address behind the prompt Local ip address [ ]: and press Enter.
3. Type the FTP server IP address behind the prompt Server ip address [ ]: and press Enter.
4. If the Sysloader and FTP server are not in the same network segment, type the gateway IP
address of Sysloader behind the prompt Gateway ip address [ ]: and press Enter.
5. Type FTP user name behind the prompt User Name [anonymous ]: and press Enter.
6. Type the password of that user behind Password : and press Enter.
7. Type the file name of StoneOS behind the prompt File name : and press Enter. The system
starts to download the specified StoneOS.
8. When the downloading is complete, type y to save this version of StoneOS into the device
flash.
9. After the new StoneOS is saved, the system shows Sysloader menu and you can type 6 and
press Enter to start the system with the new StoneOS.
To upgrade StoneOS to a version saved in the USB flash disk, take the following steps:
1. Copy the StoneOS you want to use in your USB flash disk.
2. Plug the USB flash disk into the device USB port.
4. Select the StoneOS you want and type y. The system starts to upload the StoneOS.
5. When it’s complete, type y if you want to save the StoneOS into the device flash.
6. In the Sysloader menu, select 6 and press Enter. The system starts with the new StoneOS.
This section introduces the function of each Sysloader menu item. Type the number of the oper-
ation you want, and press Enter, then follow instructions to continue.
Option Description
5. Show on-board firmware Shows all saved StoneOS with their status.
l user user-name password password - Specifies username and password of FTP server.
To upgrade StoneOS via TFTP, in the configuration mode, use the following command:
imp o rt image fro m tftp server ip-address [vro uter vrouter-name ] file-name
To upgrade StoneOS via USB, in the configuration mode, use the following commands:
imp o rt image fro m {usb 0 | usb 1} [vro uter vrouter-name ] file-name
l filename - Specifies the name of the patch file that needs to be imported into the system.
To import the patch file into the system via TFTP server, in the configuration mode, use the fol-
lowing commands:
import patch from tftp serverip-address [vroutervrouter] [filename]
l filename - Specifies the name of the patch file that needs to be imported into the system.
To delete, load, activate and run the patch, in any mode, use the following commands:
exec patchpatch-name {delete | load | unload | activate | deactivate | run}
l delete - Deletes the patch file with the specified name. Only patches in the unloading state
can be deleted.
l activate - Activates the patch file with the specified name. After the device is restarted, the
patch enters the inactive state.
l run - Activates the patch file with the specified name. After the device is restarted, the patch
remains in the running state.
To show the status of patch, in any mode, use the following commands:
show patch
l user username password password - Specifies the username and password of the FTP server.
In executive mode, type the following mode to restore data from the specified FTP server:
imp o rt db -data fro m ftp server ip-address [vro uter VR-name ][user username p asswo rd pass-
word ] filename
l user username password password - Specifies the username and password of the FTP server.
Graceful Shutdown
Some of the modularized Hillstone platforms (SG-6000-X6150, SG-6000-X6180, SG-6000-
X7180 and SG-6000-X10800) support graceful-shutdown on a single hardware module. Graceful
shutdown will not interrupt any service running on the module, thus assuring uninterrupted oper-
ation of the whole system. At the time of writing only SSM and QSM support this function.
You need to stop the module from receiving new traffic in order to execute graceful shutdown.
After all the services have been processed, the status of the module will change to offline auto-
matically (you can view the status by command show module). At this point graceful shutdown is
completed. To reboot the module, use the command reboot slot {number}.
To shutdown the specified module gracefully, in any mode, use the following command:
l number - Specifies the slot number for SSM/QSM. The value range is 1 to 10.
After executing the command, the system provides different prompts as listed below, specifically
depending on your running environment. Determine your next operation as prompt.
To reboot the specified module, use the command reboot slot {number}.
Tip: Graceful shutdown commands are also applicable to hot swap of SSM or
QSM. Before hot swap, use the command to shut down the module, and then
plug it.
SCM HA
Some Hillstone devices (SG-6000-X6150, SG-6000-X6180, and SG-6000-X7180,SG-6000-
X9180,SG-6000-X10800,SG-6000-K9180) support SCM HA. When a device is installed
with two SCMs, the SCM that is plugged into slot SC0/SCM0 is used as the master module, and
working in the Master mode; the SCM that is plugged into slot SC1/SCM1 is used as the backup
module, and working in the Backup mode. If a device is installed with only one SCM, the SCM is
used as the master module, and the newly installed SCM (if any) is used as the backup module. In
such a case the master and backup modules are not determined by the slot positions. If the master
SCM fails, the backup SCM will be promoted to the master module automatically to assure con-
tinuous business operation.
When using SCM HA, keep in mind that:
l After master-backup switching, the new backup SCM still works in the Backup mode after
rebooting, and will not preempt the master SCM.
l After master-backup switching, you need to re-establish the management connection, such as
Telnet or HTTP connection.
l To assure proper synchronization of license information, the system might prompt to reboot
the system (with network disconnection). Continue your operation as prompted.
To view the SCM HA status, use the command show module. In the output the module that is
labeled with M (e.g., Master) is the master SCM, and the module that is labeled with B (e.g.,
Backup) is the backup SCM.
l In a dual-SWM scenario, if only one SWM fails, the user can configure whether to switch the
device HA.
When the SWM fails, the device HA switchover is performed by default. To configure not to per-
form the device HA switchover, in the execution mode, use the following command:
ha config-swm-fault no-switchover
License Management
License used to authorize users features, services or extending the performance. If you do not buy
and install the corresponding License, the features, services and performances which is based on
License will not be used, or can not achieve the higher performance.
License classes and rules.
ZTNA Trial Providing ZTNA trial. Mul- When the ZTNA Trial
CloudEdge License
CloudEdge licenses are categorized to platform licenses, sub licenses, and function licenses . A
platform license is the base to install all other types of licenses. You can apply for all kinds of
licenses through SN number (i.e., old version license mechanism). If the virtual firewall is rein-
stalled, due to the change of SN number, you have to re-apply for a license.
From the version 5.5R5, the CloudEdge license has been upgraded to the latest version, with a dif-
ferent licensing mechanism. After the installation of the new platform license, the SN number of
the device will be changed to a virtual SN (vSN for short). If you want to continue to obtain func-
tion or sub licenses, they can be applied through the vSN number. For the new license does not
depend on the SN number of the original system after the re-installation of system, the new
license that was originally applied for can still be effective. At the same time, Hillstone provides
LMS ( license management system) to verify and manage licenses, which can ensure the security
of licenses.
Notes: If CloudEdge is a full license product, you do not need to purchase or install
any license. It is already a full feature firewall when you purchase it.
CloudEdge is pre-installed with a free default license without application. You can apply for the
platform license (the old version of the platform license) through the SN number or directly apply
for the new version of the license. Old version platform license is divided into base license and
trial license. The new platform license is divided into base license and sub license.
l Default License
CloudEdge has a built-in free default license. All features are available in system with default
l Platform License
When a CloudEdge is officially purchased, you can buy a Platform License. Platform License
provides fundamental firewall features.
When it expires, the system can be normally functioning, but cannot be upgraded to higher
version.
Sub licenses control whether corresponding functions are enabled or not and the time limit as
well.
Some functions are only enabled when that corresponding license is installed. The function ser-
vice includes:
l ZTNA License
Providing the ZTNA function, including the following types:
a. ZTNA license: ZTNA license is permanently valid and has the highest priority. Multiple
ZTNA licenses can be installed to increase the authorized number of ZTNA access.
When the authorized number of SCVPN access is inadequate, SCVPN access can use
the ZTNA license. ZTNA access cannot use the SCVPN license.
b. ZTNA Trial License: Providing ZTNA trial. Multiple ZTNA trial licenses can be
installed to increase the number and validity period of ZTNA access. When the license
expires, you can only use the default authorization of 8 ZTNA concurrent users.
c. ZTNA Upgrade License: Converting the specified number of SSL VPN access to the
equal number of ZTNA access. The SSL VPN license type is not limited. Multiple
ZTNA Upgrade Licenses can be installed, but the converted number of access cannot
l Sandbox License
Sandbox License provides sandbox function, which controls the suspicious file quantity
allowed to be uploaded to the cloud sandbox every day, also, it provides white list upgrade.
Sandbox License has its own validity. When it expires, the cloud analysis is stopped and the
white list can not be upgraded. However, if the suspicious traffic still matches the analysis
entries in the local cache, the sandbox function is still valid. After the system is restarted, the
sandbox function will not be used.
l URL DB License
URL DB License provides URL filter function and allows URL database to upgrade. URL DB
License has its own validity. When it expires, the URL filter function works normally, but
URL database cannot be upgraded.
l APP DB License
APP DB License allows APP database to upgrade. APP DB license is issued with platform
license. There is no need to apply for it. The validity of APP DB License also follows
Notes:
l Besides the licenses listed above, a hardware platform from Hillstone Net-
works can install other types of licenses, e.g. StoneShield, but currently,
CloudEdge does not support licenses other than those listed here.
l Currently, Anti-Virus (AV) License and Sandbox License are not available in
CloudEdge for private cloud platform.
Installing a License
A license contains a string of characters. When you get the license, take the following steps to
install it in the device:
If you use CLI to install a license, in any mode, use the command exec license install license-
string. For more information, see Managing a License Using CLI. After installing, you need to
reboot system to make the license effective.
Notes: Although license can be removed, you are strongly suggested not to uninstall
any license.
l The way that used to verify validity via public network license server is applicable in some
small private clouds or industry cloud scenarios. After the virtual firewall being connected to
the public server, the server will verify validity of the license, (currently the public network
server does not support the distribution and management of the license). If the cloned license
is found or the virtual firewall is not connected to server to verify, the virtual firewall will be
restarted in 30 days.
l The way that used to verify validity via LAN vLMS is applicable in the large-scale public
cloud scenarios. After the virtual firewall being connected to the vLMS, the vLMS not only
verifies the validation of license, but also support automatic distribution and management of
license. If the cloned license is found, the server will recycle all virtual firewall licenses of
If you use CLI to connect to the license server, in any mode, use the command exec connect {
public-server | license-serverA.B.C.Dssl-port port-number} vroutervrouter-name.
For more information, see Connecting to License server. After connecting, you need to reboot
system to make the license effective.
For more information about LMS, refer to 《License Management System User Guide》.
Notes:
l CloudEdge with version 5.5R7 or above must connect the LMS with the ver-
sion 3.0 or above.
l If there are CloudEdges with 5.5R7 and the previous version, when LMS dis-
covers the license cloning behavior, the CloudEdge with the previous version
of 5.5R7 will be judged as cloning device.
l Suggestion: Please upgrade the LMS to version 3.0 or above, and then
upgrade the CloudEdge to 5.5R7 before connecting to the LMS.
To generate a request for license, in any mode, use the following command:
exec licen se ap p ly ap p lican t string
After obtaining the license, to install it, in any mode, use the following command:
exec licen se in stall license-string
After installing some licenses, you need to type the command reboot to reboot system.
The following licenses will take effect after the reboot and other licenses will take effect directly.
l After installing the following licenses for the first time, you need to reboot the system: Plat-
form Trial, Platform, AV, IPS, Botnet C&C Prevention, Antispam, Stoneshield, URL, Sand-
box, Virtual CPU, LLB, IP Reputation.
l The system needs to be rebooted each time the following licenses are installed: AEL, VSYS.
For Hillstone CloudEdge virtual firewall, after installing the licenses, you need to connect to the
LMS to verify the validity of licenses, in any mode, use the following command :
exec lms en ab le { p ub lic | p rivate ip A.B.C.D p o rt port-number }vro uter vrouter-name
l private A.B.C.D – Specify the Intranet LMS to verify the validity of license and specifies its
IP address. Note: If the actual deployed network topology is connected to the License server
through a proxy server, specify the address and port of the proxy server here.
The license will take effect after the device is rebooted. If it has not been rebooted before, after
successfully connecting to LMS, enter the command reboot to restart the device.
Notes: When you verify your license through public LMS, make sure that the inter-
face connected to the public server is in the trust-vr zone and that you can access
the Internet through the trust-vr zone.
To view the license summary information, including the feature name, license state, license type,
expiration and resource, in any mode, use the following command:
show license summary
For example:
===============================================
----------------------------------------------------------------------------------------------
APP signature Authorized Service license 2020/03/05(Upgrade effective time expired) NULL
===============================================
The parameters in the results of above show command are explained as follows:
l Feature: Displays the names of all features that are controlled by the license.
l State: Displays the installation status or effective status of the license, including Expired,
Authorized, To be effective and No License.
l Type : Displays the types of the license, including Permanent license, Service license, Sub-
scribe license and Trial license.
l Expiration: Displays the expiration time of the license, which is different for different types of
licenses:
l Service license: "Upgrade effective time expired" indicates that the feature is available,
but the upgrade effective time of the signature database has expired and the signature
database cannot be upgraded. "Upgrade effective time" indicates that it's within the
upgrade effective time of the signature database.
l Subscribe license: "2021/08/30 to 2021/09/28 (29 days left)" indicates that the feature
can be used for 29 days within the time range.
l Trial license: "2 days left" indicates that the feature can be used for 2 days. "0 days left"
indicates that the feature is expired and the state is shown as Expired.
The priority of the license effective mechanism is: Permanent license > Service license > Sub-
scription license > Trial license > Default license. For example, if the device installs both an
IPSec VPN subscription license with 150 tunnels and an IPSec VPN permanent license with 30
tunnels, the permanent license takes effect and the number of tunnel resources is 30. If you unin-
stall the permanent license, the subscription license takes effect and the number of tunnel
resources is 150.
For Hillstone CloudEdge virtual firewall, when CloudEdge is deployed as HA, if there is not
enough public network IP available for backup devices to connect to the public network LMS,
you can configure communication through the master device to connect to the public publix LMS
to complete license verification. In this case, the master device will act as the proxy for the
backup device, and the authentication requests between the backup device and the public LMS
will be firstly forwarded to the master device through the HA link, and then to the public LMS
server. This function is disabled by default. To enable LMS connection through the master
device, using the following commands in the global configuration mode of the master device:
lms master-auth -p ro xy { en ab le | disab le }
l enable - Enable LMS connection through the HA master device. When enabled, the master
device will act as the proxy for the backup device, and the authentication requests between
the backup device and the public LMS will be firstly forwarded to the master device through
the HA link, and then to the public LMS server.
l disable - Disable LMS connection through the HA master device. This function can be dis-
abled when the backup device itself can connecte to the LMS.
When CloudEdge is connected to LMS, digital certificates are used for authentication (two-way
authentication for authenticating the connection while one-way authentication for distributing the
connection). After the authentication is successful, CloudEdge and LMS are successfully con-
nected. You need to create a trust domain in CloudEdge to store CA certificates, local certificates,
and the private keys, which will be used for authenticating the connection between CloudEdge
and LMS. To create a trust domain and configure certificates and private keys, refer to Con-
figuring PKI.
LMS references the configured trust domain to obtain new certificates. In the global configuration
mode, use the following command:
lms trust-domaintrust-domain-name
l trust-domain-name– Specifies the name of the configured trust domain where new cer-
tificates and private keys are stored. If this parameter is not configured, the default built-in cer-
tificates are used.
1. If you require many licenses, you need provide the device serial numbers and license types
information to Hillstone. For information about license, consult the local agent.
3. When you receive the license files, copy them to a FAT32 USB disk under the directory
named “\license” (the name must be in lower case). The license files cannot be changed;
otherwise they are unable to be installed.
4. Install the licenses to all the devices in the USB disk. See the section below.
Installing a License
After copying the license files to the proper directory in the USB disk, insert the USB disk into
the USB port of the device, the device automatically scans the USB disk and install the matched
license. You can view the status by checking the LED lights.
Power on the device, wait until it shows login prompt.
Insert the USB disk into the USB port.
The device automatically scans the USB disk, searches for a license with the same serial number
of the device, and installs it. The ALM light shows the installation status, as shown in the table
below:
Searching for a matched license from the directory Blinking green until installation
“license” in USB disk. completes
Remove the USB disk from the device and you can install licenses to other devices using the
same method.
l Network Management System (NMS): A software system which uses the network managers
(like adventnet, solarwinds) to send requests, such as Get and Set, and receives the responses
from the SNMP agent so that it can manage and monitor network devices.
l SNMP Agent: A software module on a managed network device, which sends the local device
information to NMS.
l Network Management Protocol: It is used to exchange SNMP packets between NMS and
SNMP agent. It supports three basic functions, which are GET, SET and Trap. Get is used by
NMS to fetch the MIB value from the SNMP agent; Set is used by NMS to configure the MIB
value of the SNMP agent; Trap is used by the SNMP agent to sent event notifications to
NMS.
Hillstone SNMP
Hillstone devices support SNMP agent function, which receives requests from and responds the
device information to NMS. Figure below illustrates how a NMS interacts with a security device
via SNMP.
l RFC-1906 - Transport Mappings for Version 2 of the Simple Network Management Pro-
tocol.
l RFC-2264 - User-based Security Model (USM) for version 3 of the Simple Network
Management Protocol (SNMPv3);
l RFC-2265 - View-based Access Control Model (VACM) for the Simple Network Man-
agement Protocol (SNMP).
Supported MIBs
The device supports all relevant Management Information Base II (MIB II) groups defined in
RFC-1213, the Interfaces Group MIB (IF-MIB) using SMIv2 defined in RFC-2233, the User-
based Security Model (USM) for version 3 defined in RFC-2574 and the View-based Access Con-
trol Model (VACM) defined in RFC-2575. Besides, StoneOS offers a private MIB, which con-
tains the system information, IPsec VPN information and statistics information of the device.
You can use the private MIB by loading it into a SNMP MIB browser on the management host.
Supported Traps
Trap is an asynchronous notification from SNMP agent to SNMP client. The following traps are
supported in StoneOS:
l Warm start
l Authentication Ffailure
l HA status change
l System status changes, including CPU utilization over 80%, fan status change, memory low,
etc.
l Network attacks, including ARP spoofing, IP Spoofing, SYN Flood attack, etc.
l Configuration changes
Configuring SNMP
Hillstone device provides the following SNMP configuration options:
l Configuring sysContact
l Configuring sysLocation
By default, the SNMP agent function is disabled. To enable the function, in the global con-
figuration mode, use the following command:
snmp-server manager
To disable it, use the command no snmp-server manager.
To specify the port number of the SNMP agent, in the global configuration mode, use the fol-
lowing command:
sn mp -server p o rt port-number
l port-number - Specifies the port number. The value range is 1 to 65535. The default value is
161.
SNMP EngineID is a unique identifier for the SNMP engine. The SNMP engine is the essential
component of the SNMP entity (NMS or network devices managed by SNMP). The functions of
the SNMP engine are sending/receiving SNMP messages, authenticating, extracting PDU, assem-
bling messages, communicating with SNMP applications, etc.
To configure the SNMP engineID of the local device, in the global configuration mode, use the
following command:
sn mp -server en gin eID string
To configure a SNMPv3 user group, in the global configuration mode, use the following com-
mand:
sn mp -server gro up group-name v3 {n o auth | auth | auth -en c} [read-view {mib 2 | p rivmib |
vacm | usm}] [write-view usm]
l group-name - Specifies a name for the user group. The value range is 1 to 31 characters.
l noauth | auth | auth-enc - Specifies the security level of the user group. The security level
determines the security mechanism used when handling a SNMP packet. noauth means no
authentication nor encryption; auth means it requires MD5 or SHA authentication; auth-enc
indicates that it uses MD5 or SHA authentication and AES or DES packet encryption.
l read-view {mib2 | privmib | vacm | usm} - Specifies the read-only MIB view names of the
user group. The SNMPv3 user group can read the specified MIB, including the public MIB
defined in RFC-1213 and RFC-2233 (mib2), Hillstone Networks private MIB (privmib), the
View-based Access Control Model MIB defined in RFC-2575 (vacm) and the User-based
Security Model MIB for version 3 defined in RFC-2574 (usm). If this parameter is not spe-
cified, the SNMPv3 user group can read all MIB views.
The system allows up to five user groups, each of which with a maximum of five users. To delete
the specified user group, in the global configuration mode, use the command no snmp-server
group group-name.
To configure a SNMPv3 user, in the global configuration mode, use the following command:
sn mp -server user user-name gro up group-name v3 remo te A.B.C.D/M [auth -p ro to co l {md5
| sh a} auth-pass [en c-p ro to co l {des | aes} enc-pass ]]
l user user-name - Specifies a name for the user. The value range is 1 to 31 characters.
l remote A.B.C.D/M - Specifies the IP address of the remote management host and network
mask.
l auth-protocol {md5 | sha} - Specifies that the user should be authenticated with MD5 or
SHA algorithm. If this parameter is not specified, no authentication nor encryption is required
for the user.
l enc-protocol {des | aes} - Specifies that the user is encrypted with DES or AES.
The system allows up to 25 users. To delete the specified user, in the global configuration mode,
use the command no snmp-server user user-name.
To configure the management host’s address, in the global configuration mode, use the fol-
lowing command:
sn mp -server h o st { ip-address | ip-address/mask | ran ge start-ip end-ip } {versio n [ 1 | 2c ]
co mmun ity string [ro | rw] | versio n 3 }
l version [1 | 2c] - Specifies that SNMP version is SNMPv1 (1) or SNMPv2C (2c).
l community string - Community strings are shared password between the managing process
and agent process, therefore, an SNMP packet whose community string does not match that
of the security device will be dropped. Specifies the community string (31 characters at most)
here and it only works for SNMPv1 and SNMPv2C.
l ro | rw - Specifies the read and write privileges of community string. The ro (read-only) com-
munity string can only read MIB; rw (read and write) community string can read and change
MIB. This is optional. By default, community string has read-only privilege.
To delete the specified management host, in the global configuration mode, use the command no
snmp-server host {host-name | ip-address | ip-address/mask | range start-ip end-ip}.
To configure the recipient of the SNMP trap packets, in the global configuration mode, use the
following command:
sn mp -server trap -h o st host-ip [ source-ip ip-address ] {versio n { 1 | 2c } co mmun ity string |
versio n 3 user user-name en gin eID string } [p o rt port-number ]
l source-ip ip-address – Specifies the source IP address that sends SNMP trap packets.
l port port-number - Specifies the SNMP version used to send trap packets. It can be SNMPv1
or SNMPv2C.
l port port-number - Specifies the recipient host port number. The value range is 1 to
65535.The default value is 162.
To delete the specified trap recipient host, in the global configuration mode, use the command no
snmp-server trap-host host-ip [source-ip].
Notes: In the HA environment, the backup device does not synchronize with the
source IP address (source-ip) configured in the primary device for sending SNMP
trap packets. To specify the source IP address for the added trap host to send
SNMP trap packets, you can use thesnmp-server trap-host host-ip source-ip ip-
address command in the backup device.
Configuring sysContact
sysContact specifies the contact name for this managed device (here refers to the security device),
as well as information about how to contact this person.
To configure a sysContact, in the global configuration mode, use the following command:
sn mp -server co n tact string
To delete the contact, in the global configuration mode, use the command no snmp-server con-
tact.
Configuring sysLocation
sysLocation specifies the physical location of this managed device (here refers to the security
device).
To configure sysLocation, in the global configuration mode, use the following command:
sn mp -server lo catio n string
l string - Specifies the location string. You can specify up to 255 characters.
To delete the sysLocation, in the global configuration mode, use the command no snmp-server
location.
You can specify the VRouter on which the SNMP function is enabled. To specify the VRouter, in
the global configuration mode, use the following command:
sn mp -server vro uter vrouter-name
To disable the SNMP function in the VRouter, in the global configuration mode, use no snmp-
server vrouter.
You can configure the SNMP server to get the ARP information through the SNMP protocol. To
configure the SNMP server, in the global configuration mode, use the following command:
arp -mib -query server ip-address co mmun ity string [vro uter vrouter-name ] [so urce interface-
name ] [ p o rt port-number ] [in terval value ]
l community string – Specifies the community string (31 characters at most) here and it only
works for SNMPv1 and SNMPv2C.
l source interface-name – Specifies the name of the source interface for receiving ARP inform-
ation on the SNMP server.
l port port-number – Specifies the port number of SNMP server. The value range is 1 to
65535, the default value is 161.
l interval value – Specifies the interval for receiving ARP information on the SNMP server.
The value range is 5 to 1800 seconds, the default value is 60 seconds.
To delete the SNMP server, use the command no arp-mib-query server ip-address.
To clear the ARP table information of SNMP server, in any mode, use the following command:
clear arp -mib -query
To view SNMP server information, in any mode, use the following commands:
l Show the ARP table information of the SNMP server: show snmp-group
Requirements
The goal is to connect the NMS (PC with IP address 10.160.64.193) to a security device on inter-
face eth0/1 (IP: 10.160.64.194), as shown below:
l Example 1: Use NMS (PC of 10.160.64.193) to manage the security device through
SNMPv2C with community string “public”. In addition, the device is allowed to send trap
packets to NMS with community string “private”.
Example 1
Example 2
To specify that the NMS can only read MIB-II but has
write privilege over usm MIB:
hostname(config)# sn mp -server gro up gro up 1 v3 auth -en c read-view mib 2 write-view
usm
Configuration SNMP does not NETCONF provides a locking mechanism to avoid con-
management provide a locking mech- figuration conflicts arising from multi-user operations.
anism.
Inquiry You can inquire about You can inquire about all configurations of the system.
one or more nodes of
the table through mul-
tiple interactions with
the system.
Through the NETCONF client, you can modify the configuration of Hillstone devices and obtain
configuration and status information. You can configure the following function modules:
l Network module: You can create/delete/edit zone, interface, DNS server, DNS proxy,
DHCP, destination route, source route, policy route, OSPF, BGP, IPsec VPN, and SSL
VPN through the NETCONF client.
l Policy module: You can create/delete/edit a policy, SNAT, and DNAT through the
NETCONF client.
Notes:
l NETCONF function requires you to configure the login type of admin-
istrators and the trusted host as NETCONF, and the management method of
interfaces as NETCONF. It is recommended to configure the three options
before you enable NETCONF.
l When the root VSYS enables NETCONF, you can configure the login type
of non-root administrators as NETCONF to enable NETCONF on non-root
VSYS.
To disable the NETCONF agent, in the global configuration mode, use the following command:
n o n etco n f-man ager en ab le
NETCONF candidate enables you to modify the configuration of the current device but apply the
modification later so that the current service traffic is not influenced. You can modify the con-
figuration of the candidate, and replace the current configuration with the candidate configuration
To disable the NETCONF candidate function, in the global configuration mode, use the fol-
lowing command:
no netconf-manager candidate
l value – Specifies the response timeout period for the NETCONF client. The value range is
from 5 to 30 minutes. The default value is 10 minutes.
HSM Agent
Hillstone Security Management (HSM) is a centralized management platform to manage and con-
trol multiple Hillstone devices. HSM system consists of three modules: HSM Agent, HSM Server
and HSM Client. After deploying these modules and establishing security connection, you can use
the HSM Client to view logs, statistics and attributes of managed security devices, as well as mon-
itor system status and traffic information.
l Application data information on the interface, including application latency, jitter, upstream
and downstream packet loss rate, etc.
You can use command lines or WebUI to configure HSM agent (Hillstone SR Series only sup-
ports WebUI). The HSM agent configurations include:
To configure the port number of HSM server, in the global configuration mode, use the following
command:
n etwo rk-man ager h o st p o rt port-number
l port-number - Specifies the port number of HSM server. The value range is 1 to 65535. The
default value is 9091.
To configure the connection interface of the HSM server, in the global configuration mode, use
the following command:
n etwo rk-man ager h o st so urce interface-name
To modify the registering mode of the HSM server to plain mode (unencrypted), in the global con-
figuration mode, use the following command:
n etwo rk-man ager h o st p lain
To modify the registering mode of the HSM server to encrypted mode, in the global configuration
mode, use the following command:
no network-manager host plain
To specify the password of HSM server, in the global configuration mode, use the following com-
mand:
n etwo rk-man ager h o st p asswo rd password
l password - Specifies the password. HSM server uses this password to authenticate the device.
The length is 1 to 31 characters.
To specify the VRouter on which the HSM agent is enabled, in the global configuration mode,
use the following command:
n etwo rk-man ager h o st vro uter vrouter-name
To ensure that the device can communicate normally with the HSM server in the NAT envir-
onment, you can configure the IP addresses of the FTP servers and log server. By default, the IP
address of the FTP server is the IP address of the HSM server, the port numb is 21; the IP
address of the log server is the IP address of the HSM server, the port number is 514.
To configure the IP address and the port number of the FTP server, in the global configuration
mode, use the following command:
n etwo rk-man ager h o st ftp -server ip-address [p o rt port-number ]
In the global configuration mode, use the following command to restore the following values to
the default ones:
n o n etwo rk-man ager h o st ftp -server [p o rt]
To configure the IP address and the port number of the log server, in the global configuration
mode, use the following command:
n etwo rk-man ager h o st syslo g-server ip-address [secure-tcp ] [p o rt port-number ]
l secure-tcp – If this parameter is specified, system will transfer logs enerypted to HSM.
In the global configuration mode, use the following command to restore the following values to
the default ones:
n o n etwo rk-man ager h o st syslo g-server [secure-tcp ][p o rt]
l trust-domain-name–Specifies the name of the existing trust domain that stores the new
CA certificate in the system. If this parameter is not specified, the system uses the default
built-in CA certificate.
Reference the existing trust domain to obtain a new local certificate and private key, in the global
configuration mode, use the following command:
network-manager agent trust-domain trust-domain-name
l trust-domain-name–Specifies the name of the existing trust domain that stores the new
local certificate and private key in the system. If this parameter is not specified, the system
uses CA certificate to implement one-way authentication with the HSM server.
Notes: If the HSM server does not support bidirectional authentication, the HSM
server will authenticate the device by default after the device provides the local cer-
tificate.
To disable the HSM agent, in the global configuration mode, use the following command:
n o n etwo rk-man ager en ab le
For a security device, system time influences many functional modules, like VPN tunnel, sched-
ule and signature certificate, etc. NTP is used to synchronize the system time with NTP server.
There are two ways to synchronize time: manual setting and using NTP.
Notes: When using the signature license for the first time, do synchronize the sys-
tem time with the computer time in advance.
To configure the system clock manually, in the global configuration mode, use the following com-
mand:
clo ck time HH:MM:SS Month Day Year
l HH:MM:SS Month Day Year - Specifies the system clock. HH, MM and SS indicate hour,
minute and second respectively, Month, Day and Year indicate month, day and year respect-
ively.
The system provides multiple predefined time zone. To configure time zone more accurately, you
can configure a customized time zone, and configure summer time for the customized time zone.
The default time zone of the system is GMT+8. To configure a time zone, in the global con-
figuration mode, use the following command:
clo ck zo n e { timezone-name | cus-timezone-name hours minutes }
l cus-timezone-name - Specifies the name of customized time zone. The value range is 1 to 6
characters.
l hours minutes - Specifies the offset to UTC (Universal Time Coordinated). The value range of
hours is -13 to 12; the value range of minutes is 0 to 59.
For example, to configure a customized time zone named test, and set the offset to UTC to 6
hours and 30 minutes, use the following command:
Summer time is a local time regulation for saving energy. According to the law issued by the
authority, during summer the clock will jump forward for one hour, and will jump backward for
one hour when the summer ends. You can specify the absolute time period and the periodic time
period of the summer time for the customized time zone.
To specify the absolute time period of the summer time, in the global configuration mode, use the
following command:
clo ck summer-time cus-timezone-name date start-date start-time end-date end-time [ com-
pensation-time ]
l cus-timezone-name - Specifies the name of customized time zone. The value range is 1 to 6
characters.
l start-date - Specifies the start date of summer time. The format is month/day/year, for
example, 7/20/2011.
l start-time - Specifies the start time of summer time. The format is hour:minute, for example,
10:30.
l end-date - Specifies the end date of summer time. The format is month/day/year, for
example, 7/20/2011.
l end-time - Specifies the end time of summer time. The format is hour:minute, for example,
10:30.
l compensation-time – Specifies the compensation time when the summer time starts. The
default value is 0. For example, when the summer time starts, in some places the clock will
jump forward for 1 hour and 30 minutes; when the summer time ends, the clock will jump
backward for 1 hour and 30 minutes. In such a case, the compensation time is 1 hour and 30
minutes. The format is hour:minute, such as 1:30.
To specify the periodical time period of the summer time, i.e. executing the summer time in a spe-
cified time period in every year, in the global configuration mode, use the following command:
clo ck summer-time cus-timezone-name recurrin g { [Mo n ] |[…] | [Sun ] }{after |
b efo re} start-day start-month start-time { [Mo n ] |[…] |[Sun ]} {after | b efo re} end-day end-
month end-time [co mp en satio n -time]
l cus-timezone-name – Specifies the name of customized time zone. The value range is 1 to 6
characters.
l { [Mon] |[…] | [Sun] }{after | before}start-day start-month start-time – Specifies the start
time of the periodical time period. For example, Mon before 22 6 10:30 means the start time
of the summer time in every year is 10:30 on the Monday of the first week before 22nd, June.
l { [Mon] |[…] |[Sun]} {after | before}end-day end-month end-time - Specifies the end time
of the periodical time period. For example, Fri after 23 9 10:00 means the end time of the
summer time in every year is 10:00 on the Friday of the first week after 23rd, September.
l compensation-time – Specifies the compensation time of the summer time when the sum-
mer time takes effect. The default value is 0. For example, when the summer time starts, the
system adjust the time of certain zones 1.5 hours ahead, and when the summer time ends,
adjust the time of certain zones 1.5 hours back. 1.5 hours is the compensation time you
defined. The format is “hour:minute”, for example, 1:30.
For example, to configure a customized time zone named test, set the start time as 10:30 on the
Monday of the first week before 22nd, June and set the end time as 10:00 on the Friday of the
first week after 23rd, September. The time during the summer time is 2.5 hours ahead.
Notes: The summer time may affect logs and modules that rely on time. For
example, in the above example, when the summer time ends on 9/23/2011 10:00,
the clock will jump backward for 2 hours and 30 minutes, i.e., jump backward to
7:30. Therefore, time range from 7:30 to 10:00 will appear twice on 9/23/2011.
To cancel the summer time configuration, in the global configuration mode, use the command no
clock summer-time cus-timezone-name date.
To view the time zone settings, in any mode, use the command show clock.
To view the summer time settings, in any mode, use the command show config.
NTP is used to synchronize the system clock with NTP server. The system supports the fol-
lowing NTP configurations:
You can specify up to three NTP servers, one of which with keyword “prefer” is the primary
NTP server, or, if no “prefer” is specified, the earliest configured NTP server is the first one
for time synchronization.
To configure an NTP server, in the global configuration mode, use the following command:
n tp server { ip-address | host-name } [key number ] [so urce interface-name ] [p refer] [vro uter
vrouter-name ]
l ip-address | host-name- Specifies the IP address or host name of the NTP server. The length
of the host name can be 1 to 127 characters.
l key number - Specifies the password of the NTP server if it requires so.
l source interface-name - Specifies the interface on which the security device sends and
receives NTP packets.
l prefer- If more than one NTP servers are specified, use this keyword to determine the primary
server.
To cancel the NTP server settings, use the command no ntp server {ip-address | host-name}.
Here is an example of configuring a NTP server:
The maximum time adjustment value represents the acceptable time difference between the
device system clock and the time received from an NTP server. The device only adjusts its clock
l time-value - Specifies the time value. The value range is 0 to 3600 seconds. The value of 0
means no adjustment time. The default value is 10.
The device updates its clock with NTP servers at intervals of the value you set here.
To configure the query interval, in the global configuration mode, use the following command:
n tp query-in terval time-interval
l time-interval - The query interval. The value range is 1 to 60 minutes. The default value is 5.
If you choose to use NTP authentication, the security device only interact with servers that pass
the authentication.
To configure NTP authentication key ID and key, in the global configuration mode, use the fol-
lowing command:
To cancel the authentication private key settings, in the global configuration mode, use the com-
mand no ntp authentication-key number.
To view the current NTP configurations, in any mode, use the command show ntp status.
hostname(config)# n tp max-adjustmen t 5
hostname(config)# n tp en ab le
hostname(config)# sh o w n tp status
Configuring Schedule
Schedules control the effective time for some functional modules, such as allowing a policy rule
or NAT rule to take effect in a specified time, and controls the duration for the connection
between a PPPoE interface and Internet. There are two types of schedule: periodic schedule and
absolute schedule. The periodic schedule specifies a time point or time range by periodic sched-
ule entries, while the absolute schedule decides a time range in which the periodic schedule will
take effect.
Creating a Schedule
To create a schedule, in the global configuration mode, use the following command:
sch edule schedule-name
l schedule-name - Specifies a name for the schedule. The length of it can be 1 to 31 characters.
This command creates a schedule and leads you into the schedule configuration mode; if the
schedule exists, you will enter its configuration mode directly.
To delete a schedule, use the command no schedule schedule-name. Note that you should unbind
the schedule from all the functional modules before deleting it.
l start start-date start-time - Specifies the start date and time. start-date specifies the start date
in the format of month/date/year, e.g. 10/23/2007; start-time specifies the start time in the
format of hour:minute:second, e.g. 15:30:20. If this parameter is not specifies, it uses the
l end end-date end-time - Specifies the end date and time. end-date specifies the finish date in
the format of month/date/year, e.g. 11/05/2007; end-time specifies the finish time in the
format of hour:minute:second, e.g. 09:00:00. If the parameters are not specifies, there is no
end time for the absolute time.
l Daily: The specified time of every day, such as Everyday 09:00:30 to 18:00:20.
l Days: The specified time of a specified day during a week, such as Monday Tuesday Saturday
09:00:15 to 13:30:45.
l Due: A continuous period during a week, such as from Monday 09:30:30 to Wednesday
15:00:05.
To specify a periodic schedule, in the schedule configuration mode, use the following command:
p erio dic {daily | weekdays | weeken d | [mo n day] […] [sun day]} start-time to end-time
l daily To specify a periodic schedule, in the schedule configuration mode, use the following
command:
l [monday] […] [sunday] - Specifies particular days. For example, if you want Tuesday, Wed-
nesday and Saturday, type the key words tuesday wednesday saturday.
l end-time - Specifies the end time in the format of hour: minute:second, e.g. 16:30:30.
l start-time - Specifies the start time in the format of hour:minute:second, e.g. 09:00:00.
l end-time - Specifies the end time in the format of hour:minute:second, e.g. 16:30:30.
Notes: In both absolute schedule and periodic schedule, the interval between the
Start time and the End time should not be less than 1 minute.
l When the track object is congested, the system will still keep all the existing
sessions to the object, but will not allow any new session.
To configure a track object, in the global configuration mode, use the following command:
track track-object-name [lo cal]
l track-object-name - Specifies a name for the track object. The length of it can be 1 to 31 char-
acters.
l local - If you enter this parameter, the system will not synchronize configuration of this track
with the backup device. Without entering this parameter, this configuration will not be syn-
chronized with the backup device.
This command creates the track object and leads you into the track object configuration mode; if
the object exists, you will enter its configuration mode directly.
To delete the specified track object, use the following command:
n o track track-object-name
You are allowed to track your object by using five protocols of ICMP, HTTP, ARP, DNS and
TCP. Besides, the object also can be tracked by counting the traffic information of specified inter-
face.
l interval value - Specifies the interval of sending Ping packets . The value range is 1 to 255
seconds. The default value is 3.
l threshold value - Specifies the number which determines the tracking fails. If the system does
not receive response packets of the number specified here, it determines that the tracking has
failed, namely, the destination is unreachable. The value range is 1 to 255. The default value is
3.
l prior-used-srcip – If the secondary IP is specified for the source interface and specifies the
IP to be prior-used-srcip, system will use the IP to send track packets priorly. If the parameter
is not specified, system will use default IP of the source interface to send track packets.
l weight value - Specifies how important this entry failure is to the judgment of tracking failure.
The value range is 1 to 255. The default value is 255.
l disable - Disable the dynamic Ping message ID function. With this function disabled, the
header ID of ICMP messages sent by the same track object is a fixed value.
To track an object using Ping packets, in the object configuration mode, use the following com-
mand:
icmp6 {ipv6-address | host host-name} interface interface-name [interval value] [threshold value]
[src-interface interface-name [prior-used-srcip ipv6-address]] [weight value]
l ipv6-address | host host-name - Specifies the IPv6 address or host name of the tracked
object. The length of the host name can be 1 to 63 characters.
l interval value - Specifies the interval of sending Ping packets . The value range is 1 to 255
seconds. The default value is 3.
l threshold value - Specifies the number which determines the tracking fails. If the system does
not receive response packets of the number specified here, it determines that the tracking has
failed, namely, the destination is unreachable. The value range is 1 to 255. The default value is
3.
l prior-used-srcip ipv6-address – If the secondary IP is specified for the source interface and
specifies the IP to be prior-used-srcip, system will use the IP to send track packets priorly. If
the parameter is not specified, system will use default IP of the source interface to send track
packets.
l A.B.C.D | host host-name - Specifies the IP address or host name of the track object. The
length of the host name can be 1 to 63 characters.
l interface interface-name - Specifies the egress interface of sending HTTP test packets.
l interval value - Specifies the interval of sending HTTP packets. The value range is 1 to 255
seconds. The default value is 3.
l threshold value - Specifies the number which concludes the tracking fails. If the system does
not receive response packets of the number specified here, it concludes that the tracking has
failed. The value range is 1 to 255. The default value is 1.
l weight value - Specifies how important this entry failure is to the judgment of tracking failure.
The value range is 1 to 255. The default value is 255.
l interface interface-name - Specifies the egress interface of sending ARP test packets.
l interval value - Specifies the interval of sending ARP packets. The value range is 1 to 255
seconds. The default value is 3.
l threshold value - Specifies the threshold number which concludes the tracking fails. If the sys-
tem does not receive response packets of the number specified here, it concludes that the
tracking has failed. The value range is 1 to 255. The default value is 3.
l weight value - Specifies how important this entry failure is to the judgment of tracking fail-
ure. The value range is 1 to 255. The default value is 255.
l interface interface-name - Specifies the egress interface of sending DNS test packets.
l threshold value- Specifies the threshold number which concludes the tracking fails. If the sys-
tem does not receive response packets of the number specified here, it concludes that the
tracking has failed. The value range is 1 to 255. The default value is 3.
l weight value - Specifies how important this entry failure is to the judgment of tracking failure.
The value range is 1 to 255. The default value is 255.
l A.B.C.D | host host-name - Specifies the IP address or host name of track object. The length
of the host name can be 1 to 63 characters.
l port port-number - Specifies the destination port of the track object. The value range is 0 to
65535.
l interface interface-name - Specifies the egress interface for sending TCP test packets.
l interval value - Specifies the interval of sending TCP packets. The value range is 1 to 255
seconds. The default value is 3.
l weight value - Specifies how important this entry failure is to the judgment of tracking failure.
The value range is 1 to 255. The default value is 255.
Repeat the command to configure more TCP tracking entries. For one single track object, you can-
not configure both the HTTP track on the host and TCP track on port 80 simultaneously.
To delete the specified tracking entry, use the following command:
n o tcp { A.B.C.D | h o st host-name } p o rt port-number in terface interface-name [delay]
l weight value - Specifies how important this entry failure is to the judgment of tracking failure.
The value range is 1 to 255. The default value is 255.
l direction {in | out | both} - Specifies the traffic direction to be tracked. in indicates ingress,
out indicates egress (the default direction), both indicates the both directions.
l high-watermark value low-watermark value – Specifies the high watermark and low water-
mark for the interface bandwidth. The value range is 1 to 100000000 kbps. When the inter-
face bandwidth is below the specified high watermark, the system will conclude the link is
normal; when the interface bandwidth exceeds or equals to the specified high watermark, the
system will conclude the link is congested; if congestion occurred, the system will not con-
clude the link restores to normal until the interface bandwidth is below or equals to the spe-
cified low watermark. Such a design can avoid link status’ frequent switching between
normal and congested.
l interval value - Specifies the tracking interval. The value range is 1 to 255 seconds. The
default value is 3.
l threshold value – Specifies the threshold number which concludes the entry is congested. If
the system detected interface overload for the times specified here in succession, it concludes
the entry is congested. The value range is 1 to 255. The default value is 1.
l weight value - Specifies how important this link congestion is to the judgment of track object
congestion. The value range is 1 to 255. The default value is 255.
l ipv6 – Specifies the interface quality track object as the IPv6 type. If this parameter is not
specified, the interface quality track object is specified as IPv4 type by default.
l interval value – Specifies the duration of per track period. The unit is second. The value
range is 1 to 255. The default value is 3. After a track period is finished, system will reset the
tracked value of new session.
l threshold value – Specifies the threshold value which concludes the track entry is failed. The
value range is 1 to 255. The default value is 3.
l weight value – Specifies how important this track failure is to the judgment of track object
failure. The value range is 1 to 255. The default value is 255.
Configuring a Threshold
Threshold is used to conclude if the track object failed or is congested. When the total weight
sum of the track entries that belong to the same category in the track object exceeds or equals to
l value - Specifies the threshold value. The value range is 1 to 255. The default value is 255.
To restore to the default threshold value, in the track object configuration mode, use the fol-
lowing command:
n o th resh o ld
Fail Close
With this function enabled, system will check application layer IPS, AV, content filtering and
Web Content, application-layer behavior control. If you disable this feature , when the system
resources is too low , such as CPU usage high, memory or data packets buffer residual capacity is
insufficient, system will pass packets for controlling the resources utilization, so as not to affect
other functions. By default, this function is disabled.
Notes: Fail close is not applicable for: FTP behavior control, web surfing,
MSRPC/SUNRPC/DNS (UDP) check of IPS.
To disable application layer security bypass, under global mode, use the command:
n o ap p -security-b yp ass
Notes: When the application layer security bypass and fail close are configured at
the same time, the application layer security bypass has a higher priority.
Monitor Alarm
The monitor alarm function is designed to monitor the utilization of system resources, and issue
an alarm according to the configuration. The current version supports log and SNMP Trap alarms.
You need to enter the monitor configuration mode to configure the monitor alarm function. To
enter the monitor configuration mode, in the global configuration mode, use the following com-
mand:
mo n ito r
After entering the monitor configuration mode, you can configure a monitor rule as needed for
the system resource object:
l config | event | ips | network | security | traffic {session | nat | urlfilter} - Specifies
the log type.
l utilization - Specifies the value of monitor object as the utilization of each object. Since
the default value for cpu is utilization, so you do not need to specify this parameter for
the monitor object of CPU.
l interval interval-value - Specifies the monitor interval, i.e., the interval for acquiring the value
of monitor object within the sampling period (sample-period period-value). The value range is
3 to 10 seconds.
l rising-threshold threshold-value - Specifies the rising threshold. The system will issue an
alarm if the value of monitor object exceeds the percentage specified here. The value range is
1 to 99.
l count count-value - Specifies the count for the conditions the value of monitor object
exceeds the rising-threshold within the sampling period (sample-period). The value range is 1
to 1000. If this parameter is configured, when the count exceeds the rising-threshold within
the sampling period, the system will issue an alarm; if this parameter is not configured, when
the average value of monitor object exceeds the rising-threshold, the system will issue an
alarm.
l log [snmp-trap] | snmp-trap - Specifies the method which can be log, snmp-trap or both.
For example:
To delete the specified monitor rule, in the monitor configuration mode, use the following com-
mand:
Notes:
l For every monitor object, only the last configured monitor rule takes effect.
l The system does not support monitor alarm for port resources whose IP
address is translated into an egress IP address (eif-ip) after SNAT.
To view the monitor alarm configuration, in any mode, use the following command:
sh o w mo n ito r
After entering the monitor configuration mode, use the following command to configure the CPU
Cache Error monitor function:
cache-error-config threshold-num num reboot {enable | disable}
l threshold-num num - Specifies CPU Cache Error monitor threshold. When the number of
CPU Cache Errors of the system reported reaches this value, the device will restart or not
l reboot {enable | disable} - Specifies the action of the device after the number of CPU Cache
Errors reported reaches the specified threshold, which can be enable (enable) or not (disable).
For example:
hostname(config)# mo n ito r
In the monitor configuration mode, use the command no cache-error-config to cancel the CPU
Cache Error monitor function.
To view the CPU Cache Error monitor configuration, in any mode, use the following command:
show cache-error-config
Platform / Expan-
Firmware Max Concurrent Sessions
sion Module
SG-6000 A-Ser- StoneOS IPv4 With multiple virtual routers, anti-virus, IPS, URL sig-
ies devices version nature database, Sandbox, Anti-Spam, Botnet Pre-
vention and/or NetFlow enabled on the system , the
maximum concurrent sessions will not change.
SG-6000 K-Ser- StoneOS IPv4 l With multiple virtual routers enabled: the max-
ies devices version imum concurrent sessions will drop by 15%.
(Excluding The formula is: Actual maximum concurrent ses-
K9180) sions = original maximum concurrent sessions*
(1-0.15);
E3965, E5168, StoneOS IPv4 l With multiple virtual routers enabled: the max-
E5260, E5268, version imum concurrent sessions will drop by 15%.
E5560, E5568, The formula is: Actual maximum concurrent ses-
E5660, E5760, sions = original maximum concurrent sessions*
E5960, E6160, (1-0.15);
E6168, E6360,
l With anti-virus, IPS, URL signature database,
E6368
Sandbox, Anti-Spam and/or Botnet Prevention
enabled: the maximum concurrent sessions will
drop by 50%.
The formula is: Actual maximum concurrent ses-
sions = original maximum concurrent sessions*
(1-0.5);
QSM StoneOS IPv4 l With multiple virtual routers enabled: the max-
Other SG-6000 version imum concurrent sessions will drop by 15%.
E-series devices The formula is: Actual maximum concurrent ses-
except the sions = original maximum concurrent sessions*
devices listed (1-0.15);
above
l With anti-virus, IPS, URL signature database,
Sandbox, Anti-Spam and/or Botnet Prevention
enabled: the maximum concurrent sessions will
drop by 50%.
SSM-300 StoneOS IPv4 l With multiple virtual routers enabled: the max-
version imum concurrent sessions will drop by 15%.
The formula is: Actual maximum concurrent ses-
sions = original maximum concurrent sessions*
(1-0.15);
SSM-200 StoneOS IPv4 l With multiple virtual routers enabled: the max-
SSM-100 version imum concurrent sessions will drop by 15%.
The formula is: Actual maximum concurrent ses-
sions = original maximum concurrent sessions*
(1-0.15);
SIOM StoneOS IPv4 l With multiple virtual routers enabled: the max-
version imum concurrent sessions will drop by 15%.
The formula is: Actual maximum concurrent ses-
sions = original maximum concurrent sessions*
(1-0.15);
IOM-P100-300 StoneOS IPv4 l With multiple virtual routers enabled: the max-
IOM-P40-300 version imum concurrent sessions will drop by 15%.
The formula is: Actual maximum concurrent ses-
sions = original maximum concurrent sessions*
(1-0.15);
IOM-8SFP+ StoneOS IPv4 With NetFlow enabled: the maximum concurrent ses-
version sions will drop by 25%.
The formula is: Actual maximum concurrent sessions =
original maximum concurrent sessions*(1-0.25).
Note: Other unlisted functions has no effect on the max-
imum concurrent sessions of the system.
IOM-200; StoneOS IPv4 With NetFlow enabled: the maximum concurrent ses-
IOM-100 version sions will drop by 25%.
The formula is: Actual maximum concurrent sessions =
IOM-80; StoneOS IPv4 l With fast forwarding data enabled on the IOM:
IOM-20 version the maximum concurrent sessions will drop by
60%.
The formula is: Actual maximum concurrent ses-
sions = original maximum concurrent sessions*
(1-0.6);
l value - Specifies the maximum concurrent sessions of IPv4. Please refer to the table below for
the value range.
Platform Value
l Enabling CloudView
Notes: For more information about the cloud sandbox settings, refer to Threat Pre-
vention > Sandbox.
l A.B.C.D/domain - Specifies the IP address or domain name of the cloud service platform
server. The default value is cloud.hillstonenet.com.cn.
To cancel the specified IP address or domain name, in the Cloud Server configuration mode,
use the command no address .
To configure the user name and password of the cloud service platform server, in the Cloud
Server configuration mode, use the following command:
To cancel the specified user name and password, in the Cloud Server configuration mode, use
the command no username .
To configure the virtual router of the cloud service platform server, in the Cloud Server con-
figuration mode, use the following command:
To cancel the specified VRouter, in the Cloud Server configuration mode, use the command no
vrouter .
l trust-domain-name–Specifies the name of the existing trust domain that stores the new
CA certificate in the system. If this parameter is not specified, the system uses the default
built-in CA certificate.
Reference the existing trust domain to obtain a new local certificate and private key, in the Cloud
Server configuration mode, use the following command:
l trust-domain-name–Specifies the name of the existing trust domain that stores the new
local certificate and private key in the system. If this parameter is not specified, the system
uses the default built-in local certificate and private key.
Enabling CloudView
CloudView is a SaaS product. It is deployed on the public cloud to provide users with online on-
demand services. Hillstone devices register with the cloud service platform and upload device
information, traffic data, threat events, system logs and so on to the cloud service platform, and
the visual display is provided by CloudView . Users can monitor the device status, gain reports
and threat analysis through the Web or mobile phone APP. In addition, you can also use
CloudView to send configuration to the device. When the Cloud Configuration function is
enabled, the system will load the configuration sent from CloudView.
The following sections describe how to enable the CloudView service in StoneOS:
l Enabling CloudView
Enabling CloudView
You can enable the CloudView service in the Cloud View configuration mode. To enter the
Cloud View configuration mode, in the global configuration mode, use the following command:
cloud-view
To enable the CloudView service, in the Cloud View configuration mode, use the following com-
mand:
enable
To disable the CloudView service, in the Cloud View configuration mode, use the command no
enable.
Enabling the Data Uploading
l log-event - Specifies to upload the event logs to the cloud service platform. The upload inter-
val is 10 minutes by default. Before enabling this function, make sure that the event logging
function is enabled (logging event on).
l session - Specifies to upload the session data to the cloud service platform.
l threat-event - Specifies to upload the threat events to the cloud service platform. The upload
interval is 60 minutes by default.
l traffic - Specifies to upload the traffic data to the cloud service platform.
l url - Specifies to upload the URL data to the cloud service platform.
l inspection - Specifies to upload the collected cloud inspection data to the cloud service plat-
form. With the cloud inspection function, the device can receive and execute the inspection
instructions from the cloud, and upload the collected inspection data to the cloud service plat-
form, which enables you to carry out real-time monitoring and management on the cloud any-
time and anywhere.
l ips-buffer - Specifies to upload the buffer data of IPS detection engine to the cloud service
platform. Buffer data include the Top 20 threat rules (and their corresponding IDs) that are
ranked by hit counts.
l fast-pattern - Specifies to upload some signature strings in the IPS signature DB to the cloud
service platform. These strings help to analyze false positive by prefiltering packets.
l sample-collect Specifies to upload encrypted traffic of the device to the cloud service plat-
form.
l all - Specifies to upload all the data described above to the cloud service platform.
l PTF Dynamic IP Blacklist: Log in to CloudView to send the configuration of the PTF
dynamic IP blacklist to the root VSYS of the device. Both IPv4 and IPv6 addresses are sup-
ported. You can also specify the virtual router to take effect as well as the block duration.
When the system receives the configuration task from CloucView, corresponding dynamic IP
blacklist entries, configuration logs, and operation logs are generated.
Enabling CloudVista
To enable the CloudVista service, in the Cloud Server configuration mode, use the following com-
mand:
vista enable
To disable the CloudVista service, in the Cloud Server configuration mode, use the command no
vista enable.
l enable - After enabling this function, you can use the /rest/file interface to upload files. The
suffix and size of the file will not be checked.
l disable- The /rest/file interface cannot be used, and an error will be returned directly when
uploading a file. By default, the /rest/file interface is disabled.
l version 5.5R4 - Compatible with some formats of RESTful API of 5.5R4 version .
l Fan is broken
To make the system automatically clear the alarm status of the ALM indicator, in the global con-
figuration mode, use the following command:
led-alarm-autoclear
In the global configuration mode, use the no led-alarm-autoclear command to cancel the con-
figuration for the system to automatically clear the alarm status of the ALM indicator.
l Each VSYS has independent virtual routers, zones, address book, service book, etc;
The supported default VSYS number varies from different platforms. You can expand the number
by purchasing and installing the license.
VSYS Objects
This section describes VSYS objects, including root VSYS, non-root VSYS, administrator,
VRouter, VSwitch, zone, and interface.
l Only the root VSYS administrators and root VSYS operators can create or delete non-root
VSYS. For more information about administrator permissions, see “Administrator”.
l When creating a non-root VSYS, the following corresponding objects will be created sim-
ultaneously:
For example, when creating the non-root VSYS named vsys1, the following objects
will be created:
l When deleting a non-root VSYS, all the objects and logs in the VSYS will be deleted sim-
ultaneously.
l The root VSYS contains a default VSwitch named VSwitch1, but there is no default VSwitch
in a newly created non-root VSYS. Therefore, before creating l2 zones in a non-root VSYS, a
VSwitch must be created. The first VSwitch created in a non-root VSYS will be considered as
the default VSwitch, and the l2 zone created in the non-root VSYS will be bound to the
default VSwitch automatically.
Administrator
The admin users of each VSYS are independent from other VSYS. VSYS admin users also have
different roles of Administrator, Administrator-ready-only, operator and auditor. Their roles and
l The non-root administrators are created by root administrators or root operators after logging
into non-root VSYS.
l After logging into root VSYS, the root administrators can switch to non-root VSYS and con-
figure it.
l Non-root administrators can enter the corresponding non-root VSYS after the successful
login, but the non-root administrators cannot switch to the root VSYS.
l Each administrator name should be unique in the VSYS it belongs to, while administrator
names can be the same in different VSYSs. In such a case, when logging in, you must specify
the VSYS the administrator belongs to in the format of vsys_name\admin_name. If no VSYS
is specified, you will enter the root VSYS.
Permissions
Configure √ χ √ χ √ χ √ χ
(including
save con-
figuration)
Managing √ χ χ χ √ χ χ χ
admin users
Restore fact- √ χ χ χ χ χ χ χ
ory default
Delete con- √ χ √ χ √ χ √ χ
figuration
file
Roll back √ χ √ χ √ χ √ χ
con-
figuration
Reboot √ χ √ χ χ χ χ χ
View log √ √ χ √ √ √ χ √
information
Modify cur- √ √ √ √ √ √ √ √
rent admin
password
Command √ χ √ χ √ χ √ χ
import
Command √ √ √ √ √ √ √ √
export
Command √ √ √ √ √ √ √ √
clear
Command √ √ √ χ √ √ √ χ
ping/tracero-
ute
Command √ √ √ χ χ χ χ χ
debug
Command √ √ √ √ √ √ √ √
exec
Command √ √ √ √ √ √ √ χ
terminal
width
l Shared object: A shared object can be shared by multiple VSYSs (CloudEdge, TAI(X8180),
and A-series platforms do not support shared object). A shared object can only belong to the
root VSYS and can only be configured in the root VSYS. A non-root VSYS can reference the
shared object, but cannot configure them. The name of the shared object must be unique in
the whole system.
Figure below shows the reference relationship among dedicated and shared VRouter, VSwitch,
zone, and interface.
As shown in the figure above, there are three VSYSs in StoneOS: Root VSYS, VSYS-A, and
VSYS B. Root VSYS contains shared objects (including Shared VRouter, Shared VSwitch, Shared
L3-zone, Shared L2-zone, Shared IF1, and Shared IF2) and dedicated objects.
VSYS-A and VSYS-B only contain dedicated objects. The dedicated objects VSYS-A and VSYS-
B can reference the shared objects in Root VSYS. For example, A-zone2 in VSYS-A is bound to
the shared object Shared VRouter in Root VSYS, and B-IF3 in VSYS-B is bound to the shared
object Shared L2-zone in Root VSYS.
Shared VRouter
A shared VRouter contains the shared and dedicated L3 zones of the root VSYS. Bind a L3 zone
to a shared VRouter and configure this L3 zone to have the shared property. Then this zone
becomes a shared zone.
Shared Zone
The shared zones consist of L2 shared zones and L3 shared zones. After binding the L2 zone with
the shared property to a shared VSwitch, it becomes a shared L2 zone; after binding the L3 zone
with the shared property to a shared VRouter, it becomes a shared L3 zone. A shared zone can
contain interfaces in both root VSYS and non-root VSYS. All function zones cannot be shared.
Shared Interface
After binding an interface in the root VSYS to a shared zone, it becomes a shared interface auto-
matically.
Interface Configuration
Only RXW administrator in the root VSYS can create or delete interfaces. Configurations to an
interface and its sub-interfaces must be performed in the same VSYS.
Configuring VSYS
VSYS configurations include:
After executing the command, the system creates a non-root VSYS with the specified name and
enters the configuration mode of the created non-root VSYS. If the specified name exists, the sys-
tem enters the configuration mode of the non-root VSYS directly.
To delete the specified non-root VSYS, in the global configuration mode of the root VSYS, use
the following command:
n o vsys vsys-name
The system does not allow the name of the non-root VSYS to be modified, which might lead to
large amount of workload and impact on clients' business when clients need to modify the name
of the non-root VSYS. To solve this issue, the system suppots to configure the alias of non-root
VSYS, which meets clients' need to modify the name of the non-root VSYS and avoids the neg-
ative impact on the business that the non-root VSYS bears when its name is modified.
By default, the alias of non-root VSYS is null.
To configure the alias of non-root VSYS, in the global configuration mode of the non-root VSYS,
use the following command:
alias alias_name
To delete the specified alias of non-root VSYS, in the global configuration mode of the root
VSYS, use the following command:
no alias
Notes:
l When creating a new non-root VSYS, the specified VSYS name cannot be the
same with the name or alias of ther non-root VSYS.
l When configuring the alias of non-root VSYS, the specified alias cannot be
the same with name or alias of ther non-root VSYS.
To specify the description for a non-root VSYS, in the VSYS configuration mode, use the fol-
lowing command:
descriptionstring
l vsys-profile-name - Specifies the name of the VSYS profile to be created. It is a string com-
posed of 1 to 31 characters.
After executing the command, the system creates a VSYS profile with the specified name and
enters the configuration mode of the created VSYS profile. If the specified name exists, the sys-
tem enters the configuration mode of the VSYS profile directly.
To delete the specified VSYS profile, in the global configuration mode of the root VSYS, use the
following command:
n o vsys-p ro file vsys-profile-name
Notes:
l Up to 128 VSYS profiles are supported.
l The default VSYS profile of the root VSYS named root-vsys-profile and the
default VSYS profile of non-root VSYS named default-vsys-profile cannot be
edited or deleted.
l Before deleting a VSYS profile, you must delete all the VSYSs referencing
the VSYS profile.
You can configure the quota of a VSYS, including CPU (cpu), concurrent sessions (session),
zones (zone), keywords (keyword), keyword categories (keyword-category), policy rules (policy),
l {simple | regexp} - Only applicable to keyword. simple is used to specify the quota of simple
keyword. regexp is used to specify the quota of regular expression keyword.
l max max-num- Specifies the maximum quota value. The reserved quota and maximum quota
vary from different platforms. The reserved quota should not exceed the maximum quota.
Table below shows the value range of the maximum quota and minimum number of reserved
quota.
l alarm alarm-num - Only applicable to CPU. With this parameter configured, the system will
generate alarm logs when the CPU utilization exceeds the specified percentage. The value
range is 50 to 99.
CPU 1 – 10000 0
Zones (max-num①-res-num③) – 0
max-num①
category
l non-root l non-root
VSYS Profile: 0 – 118 VSYS Profile: 0
Statistics set 0 - 32 0
After configuring to send logs to the memory buffer, you can specify the reserved buffer quota
and maximum buffer quota for each type of logs in a VSYS by creating a VSYS profile. Reserved
quota refers to the memory buffer value reserved for each type of logs; maximum quota refers to
the maximum memory buffer value available to each type of logs. The root administrator has the
permission to create VSYS profiles. If the logs’ capacity in a VSYS exceeds its maximum quota,
the new logs will override the earliest logs in the buffer.
To configure the quota of buffer for each type of logs, in the VSYS profile configuration mode,
use the following command:
lo g {co n figuratio n | o p eratio n | even t | n etwo rk | th reat | traffic {sessio n | n at |
web surf}} b uffer-size max max-num reserve reserve-num
l max max-num reserve reserve-num- Specifies the maximum quota (max max-num) and
reserved quota (reserve reserve-num) of configuration logs, operation logs, event logs, net-
work logs, threat logs, traffic logs(including session logs, NAT logs and websurf logs) in a
VSYS. The range of reserved quota or maximum quota varies from different platforms. The
reserved quota should not exceed the maximum quota.
The root administrator can configure whether enable URL filter or not in a VSYS Profile. Then
you can bind a VSYS Profile to a non-root VSYS to enable or disable URL filter. VSYSs share
URL resources including URL, URL category and URL Profile. You can specify the reserved
quota and maximum quota for each type of URL resources.
To enable URL filter or configure URL resources in a VSYS Profile, you need to enter urlfilter
configuration mode first, in the VSYS profile configuration mode, use the following command:
urlfilter
To enable or disable URL filter, in the urlfilter configuration mode, use the following command:
l Disable: no enable
To configure URL resources quota, in the urlfilter configuration mode, use the following com-
mand:
{url | url-catego ry | url-p ro file} max max-num reserve reserve-num
l max max-num reserve reserve-num - Specifies the maximum quota (max max-num) and
reserved quota (reserve reserve-num) of tatal URLs, user-defined URL category and URL Pro-
file in a VSYS. The range of reserved quota or maximum quota varies from different plat-
forms. The reserved quota should not exceed the maximum quota. Table below shows the
value range of the maximum quota and minimum number of reserved quota. The default value
of maximum quota is the system capacity. The default value of minimum quota is 0.
URL 0 – Capacity 0
User-defined 0 – 26 0
URL category
URL Profile 0 – 32 0
Configuring IPS
The root administrator can configure whether enable IPS or not in a VSYS Profile. Then you can
bind a VSYS Profile to a non-root VSYS to enable or disable IPS. VSYSs share IPS Profile
resources. You can specify the reserved quota and maximum quota.
To enable IPS or configure IPS Profile resources in a VSYS Profile, you need to enter IPS con-
figuration mode first, in the VSYS profile configuration mode, use the following command:
ip s
To enable or disable IPS, in the IPS configuration mode, use the following command:
l Disable: no enable
To configure IPS Profile resources quota, in the IPS configuration mode, use the following com-
mand:
p ro file max max-num reserve reserve-num
l max max-num reserve reserve-num - Specifies the maximum quota (max max-num) and
reserved quota (reserve reserve-num) of IPS Profile in a VSYS. You can create up to four IPS
profiles in a non-root VSYS. That is, the range of maximum quota is from 0 to 4. The default
value is 4. The default value of the reserved quota is 0, which means only predefined IPS Pro-
files can be used in non-root VSYS.
Configuring Anti-Virus
The root administrator can configure whether enable Anti-Virus or not in a VSYS Profile. Then
you can bind a VSYS Profile to a non-root VSYS to enable or disable Anti-Virus. VSYSs share AV
Profile resources. You can specify the reserved quota and maximum quota.
To enable AV or configure AV Profile resources in a VSYS Profile, you need to enter AV con-
figuration mode first, in the VSYS profile configuration mode, use the following command:
av
To enable or disable Anti-Virus, in the AV configuration mode, use the following command:
l Enable: enable
l Disable: no enable
To configure AV Profile resources quota, in the AV configuration mode, use the following com-
mand:
p ro file max max-num reserve reserve-num
The root administrator can configure whether enable perimeter traffic filtering or not in a VSYS
Profile. Then you can bind a VSYS Profile to a non-root VSYS to enable or disable perimeter
traffic filtering. VSYSs share user-defined black/white list resources. You can specify the reserved
quota and maximum quota.
To enable perimeter traffic filtering or configure user-defined black/white list resources in a
VSYS Profile, you need to enter AV configuration mode first, in the VSYS profile configuration
mode, use the following command:
perimeter-traffic-filtering
To enable or disable perimeter traffic filtering, in the perimeter traffic filtering configuration
mode, use the following command:
l Enable: enable
l Disable: no enable
To configure user-defined black/white list resources quota, in the perimeter traffic filtering con-
figuration mode, use the following command:
userdefin e max max-num reserve reserve-num
Root RXW administrators can configure whether enable QoS or not in a VSYS Profile. Then you
can bind a VSYS Profile to a non-root VSYS to enable or disable QoS. You can specify the
reserved quota and maximum quota for root-pipe.
To enable QoS or configure QoS Profile resources in a VSYS Profile, you need to enter QoS con-
figuration mode first, in the VSYS profile configuration mode, use the following command:
iqos
To enable or disable QoS, in the QoS configuration mode, use the following command:
l Enable: enable
l Disable: no enable
To configure QoS Profile resources quota, in the QoS configuration mode, use the following com-
mand:
root-pipe max max-num reserve reserve-num
l max max-num reserve reserve-num – Specifies the maximum quota (max max-num) and
reserved quota (reserve reserve-num)of root-pipe in a VSYS. The reserved quota should not
exceed the maximum quota. The default value of maximum quota and reserved quota is 0.
To restore to the default binding, in the VSYS configuration mode, use the command no profile.
Notes:
l When binding a VSYS profile to a VSYS, if the total number of the reserved
quota in all VSYSs exceeds the current capacity, the binding operation will
fail.
l Only after cancelling the binding can you delete the VSYS profile.
1. Start a connection client on the local PC, type the management IP and port to connect with
the device.
2. Type the username and password according to the prompt, which can be the username and
password of the root administrator or the user configured in the authentication server (local
server / Radius server / TACACS+ server) of the root VSYS.
2. In the global configuration mode of the root VSYS, use command vsysvsys-name to create a
non-root VSYS. For more information on creating non-root VSYS, see Creating a Non-root
VSYS.
3. Start a connection client on the local PC, type the management IP and port to connect with
the device.
Notes: If you directly enter the non-root VSYS through the above method, you can-
not exit the current non-root VSYS and back to the root VSYS by using the com-
mand exit-vsys. You should logout the system and enter the root VSYS again.
The second way: the root VSYS administrator can enter the non-root VSYS from root VSYS. The
administrator in the root VSYS can configure the functions of the non-root VSYS after entering it.
To enter a non-root VSYS, in the execution mode or the global configuration mode of the root
VSYS, use the following command:
enter-vsys vsys-name
2. In the global configuration mode of the non-root VSYS, use command aaa-serveraaa-server-
name [type] {local | radius | tacacs+} to create and configure an AAA server (local server
/ Radius server / TACACS+ server). For more information on AAA server, see "Con-
figuring an AAA Server" on Page 988.
3. In the global configuration mode of the non-root VSYS, use command admin auth-server
server-name to specify the configured AAA server as the authentication server for the non-
root administrator. For more information on specifying an authentication server for the sys-
tem administrator, see "Configuring Authentication and Authorization for the Server" on
Page 1052.
4. Start a connection client on the local PC, type the management IP and port to connect with
the device.
5. Type the username and password configured in the AAA server according to the prompt.
To remove the shared property, in the VRouter/VSwitch/zone configuration mode of the root
VSYS, use the command no vsys-shared.
l vsys-name – Specifies the non-root VSYS name to which the interface will be exported.
To export a physical interface to a non-root VSYS by alias, in the interface configuration mode,
use the following command:
exp o rt-to alias alias_name
l alias alias_name – Specifies the non-root VSYS alias to which the interface will be exported.
To export the physical interface in the non-root VSYS back to the root VSYS, in the interface con-
figuration mode, use the command no export-to.
l vsys-name - Specifies the name of the non-root VSYS to which the interface will be allocated.
l alias alias_name – Specifies the alias of the non-root VSYS to which the interface will be
allocated.
To restore the interface to the root VSYS, in the interface configuration mode, use the command
no vsys.
l track-name - Specifies the name of the track object. Ensure that this track object is created in
this non-root VSYS.
To complete the binding by alias, in the non-root VSYS configuration mode, use the following
command:
vsys alias alias_name
l alias alias_name – Specifies the alias of the track object. Ensure that this track object is cre-
ated in this non-root VSYS.
To cancel the binding, in the non-root VSYS configuration mode, use the following command:
n o vsys-track-status track track-name
Notes:
l After you cancel the binding, you can delete the track object.
l vsys-name – Specifies the VSYS name. This is the one that you want to monitor.
l weight value – Specifies the weight. Specifies how important this entry failure is to the judg-
ment of track object failure. The value range is 1 to 255. The default value is 255.
Notes: Monitoring the status of a specified VSYS is only available in High Avail-
ability.
In the configuration rollback mode, use the following command to roll back to the previous con-
figuration and exit the configuration rollback mode. The configuration will be valid without restart-
ing the device.
exec co n figuratio n ro llb ack
Notes:
l In the execution mode, you should use exec configuration start command to
l You cannot switch among VSYS when starting the rollback mode.
l For each VSYS, you can enable and disable the rollback mode separately.
l For each VSYS, only one user is allowed to enable and disable the con-
figuration of rollback mode at a time.
l IF configuring the rollback mode for root VSYS, system cannot operate the
followings: switching HA status, switching between HA master and backup
device, creating or deleting HA Cluster, creating or deleting VSYS, and modi-
fying VSYS resources quota.
For example:
To exit the configuration rollback mode directly, you can use the following two ways:
In the configuration rollback mode, use the following command to exit the configuration rollback
mode directly.
exec co n figuratio n co mmit
For example:
In the configuration rollback mode, use the command exitto exit the terminal directly.
Tip:
l When different users log in the device meanwhile, only the user who
enters the configuration rollback mode first can do further configuration,
and the later users cannot.
l When a user log in the device through different access methods, the user
of a certain access method enters in the configuration rollback mode first
can do further configuration, and the later users of other access methods
cannot. The user of other access methods can force the user of that access
method to exit the configuration rollback mode through command.
When exiting the configuration rollback mode by using command exit, system wil exit the con-
figuration rollback mode directly by default. To roll back to the previous configuration and exit
the configuration rollback mode, in the global configuration mode, take the following command:
cli-exit-actio n ro llb ack
To restore to the default value, in the global configuration mode, take the following command:
cli-exit-actio n co mmit
Notes: In non-root VSYS, the system does not support debugging, IPS and NBC
logs.
2. Configuring a Simple-Switch.
Including create a Simple-Switch, create a L2 zone and binding the L2 zone to the Simple-
Switch.
By default, the cross-VSYS traffic forwarding function is disabled. To enable/disable the cross-
VSYS traffic forwarding function, in the global configuration mode, use the following commands:
l Enable: vsys-switch-mode
l Disable: no vsys-switch-mode
Configuring a Simple-Switch
Simple-Switch is a special VSwitch, which can only learn MAC address, forward the known uni-
cast packet or flooding. You can create multiple Simple-Switchs, each Simple-Switch is virtually
an independent broadcast domain.
Creating a Simple-Switch
To create a Simple-Switch, in the global configuration mode, use the following commands:
vswitch vswitch Number [simp le-switch ]
l Number - Specifies the numeric identification for the VSwitch. The value range varies from
different platforms. Cannot be specified as VSwitch1.
l simple-switch - Specifies this parameter to create the Simple-Switch and enter the Simple-
Switch configuration mode .
To delete the Simple-Switch, in the global configuration mode, use the following command:
n o vswitch vswitch Number
Then, in the zone configuration mode, use the following command to bind the L2 zone to a
Simple-Switch:
b in d vswitch-name
l vswitch-name - Specifies the name of Simple-Switch to which the Layer 2 zone is bound.
VWANIF interface is a Layer 3 interface, each time you create a VWANIF interface, you need to
create a corresponding VPort interface for the VWANIF interface.
To create a VWANIF interface, in the global configuration mode, use the following command:
in terface vwan if id
l id - Specifies the ID of the VWANIF interface. If the specified VWANIF interface does not
exist, this command creates a VWANIF interface and leads you to its configuration mode. If
the specified VWANIF interface exists, you will enter its configuration mode directly.
To clear the specified VWANIF interface, use the command no interface vwanif id
To create a VPort interface, in the global configuration mode, use the following command:
in terface vp o rt id
l id – Specifies the ID of the VPort interface, this number must be the same as the number of
the paired VWANIF interface. If the specified VPort interface does not exist, this command
To clear the specified VPort interface, use the commandno interface vportid.
After the VPort interface is created, you need to bind the VPort interface to the L2 zone that has
been added to the Simple-Switch, in the global configuration mode, use the following command:
zo n e zone-name
l zone -name – Specifies the L2 zone name that has been added to the Simple-Switch.
In order to realize the cross-VSYS traffic forwarding, you also need to allocate the VWANIF inter-
face to a VSYS, and configure the zone , IP address (IPv4 or IPv6) for the VWANIF interface.
Notes: How to configure the zone and IP address (IPv4 or IPv6) for the VWANIF
interface, refer to Configuring Interface section.
After you create the VWANIF interface, you need to allocate the VWANIF interface to a VSYS,
in the interface configuration mode, use the following command:
vsys vsys-name
l vsys-name - Specifies the name of the VSYS to which the VWANIF interface will be alloc-
ated.
To view the cross-VSYS traffic forwarding information, in any mode, use the following command:
sh o w vsys-switch -mo de
To view the VWANIF interface configuration, in any mode, use the following command:
sh o w in terface vwan if id
To view the VWANIF interface IPv6 configuration, in any mode, use the following command:
sh o w ip v6 in terface vwan if id
l vsys-name - Specifies the name of the VSYS whose information you want to view. If this para-
meter is not specified, the information of all the VSYSs in the system will be displayed.
To view the VSYS information by alias, in any mode of the root VSYS, use the following com-
mand:
sh o w vsys alias alias_name
l alias alias_name – Specifies the alias of the VSYS whose information you want to view.
l vsys-profile-name - Specifies the name of the VSYS profile whose information you want to
view. If this parameter is not specified, the information of all the VSYS profiles in the system
will be displayed.
To meet the above requirement, a VSYS and corresponding policy rules are needed. Below is the
logical illustration.
Configuration Steps
hostname(config-vsys)# exit
hostname(config)#
Step 2:Export ethernet0/0 and ethernet0/3 to VSYS-a by the root administrator of the root
VSYS:
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/3)# exit
hostname(config)#
Step 3:Enter VSYS-a to configure ethernet0/0, ethernet0/3 and related policy rules:
hostname(vsys-a)(config)# zo n e vsys-a-trust
hostname(vsys-a)(config-zone-vsys-a-trust)# exit
hostname(vsys-a)(config-if-eth0/0)# zo n e vsys-a-trust
hostname(vsys-a)(config-if-eth0/0)# exit
hostname(vsys-a)(config-zone-vsys-a-untrust)# exit
hostname(vsys-a)(config-if-eth0/3)# exit
hostname(vsys-a)(config-policy)# rule
hostname(vsys-a)(config-policy-rule)# src-addr an y
hostname(vsys-a)(config-policy-rule)# dst-addr an y
hostname(vsys-a)(config-policy-rule)# service an y
hostname(vsys-a)(config-policy-rule)# exit
hostname(vsys-a)(config-policy)# exit
hostname(vsys-a)(config)# exit-vsys
hostname(config)#
hostname(config-vsys)# exit
hostname(config-vsys)# exit
hostname(config)#
hostname(config-vrouter)# sn atrule fro m an y to an y eif eth ern et0/3 tran s-to eif-ip
mo de dyn amicp o rt
rule ID=3
hostname(config-vrouter)# exit
hostname(config)#
hostname(config-vrouter)# exit
hostname(config)#
hostname(config-zone-untrust)# exit
hostname(config)#
hostname(config-if-eth0/0)# exit
hostname(vsys-a)(config-if-eth0/0)# zo n e vsys-a-trust
hostname(vsys-a)(config-if-eth0/0)# exit
hostname(vsys-a)(config)# p o licy-glo b al
hostname(vsys-a)(config-policy)# rule
hostname(vsys-a)(config-policy-rule)# src-addr an y
hostname(vsys-a)(config-policy-rule)# dst-addr an y
hostname(vsys-a)(config-policy-rule)# service an y
hostname(vsys-a)(config-policy-rule)# exit
hostname(vsys-a)(config-policy)# exit
hostname(vsys-a)(config-vrouter)# exit
hostname(vsys-a)(config)# exit-vsys
hostname(config)#
hostname(config-if-eth0/7)# exit
hostname(config)#
hostname(vsys-b)(config-if-eth0/7)# exit
hostname(vsys-b)(config)# p o licy-glo b al
hostname(vsys-b)(config-policy)# rule
hostname(vsys-b)(config-policy-rule)# src-addr an y
hostname(vsys-b)(config-policy-rule)# dst-addr an y
hostname(vsys-b)(config-policy-rule)# service an y
hostname(vsys-b)(config-policy-rule)# exit
hostname(vsys-b)(config-policy)# exit
hostname(vsys-b)(config-policy)# exit
hostname(vsys-b)(config-vrouter)# exit
hostname(vsys-b)(config)# exit-vsys
hostname(config)#
To meet the above requirement, the shared VSwitch and corresponding policy rules are needed.
Below is the logical illustration.
hostname(config-vsys)# exit
hostname(config-vsys)# exit
hostname(config)#
hostname(config-vswitch)# exit
hostname(config-zone-l2-tru~)# exit
hostname(config)#
Configure ethernet0/3
hostname(config)# in terface eth ern et0/3
hostname(config)#
hostname(config-if-eth0/0)# exit
hostname(config)#
hostname(vsys-a)(config)# zo n e a-l2 l2
hostname(vsys-a)(config)#
hostname(vsys-a)(config-if-eth0/0)# zo n e a-l2
hostname(vsys-a)(config-if-eth0/0)# exit
hostname(vsys-a)(config)# p o licy-glo b al
hostname(vsys-a)(config-policy)# rule
hostname(vsys-a)(config-policy-rule)# src-addr an y
hostname(vsys-a)(config-policy-rule)# dst-addr an y
hostname(vsys-a)(config-policy-rule)# service an y
hostname(vsys-a)(config-policy-rule)# exit
hostname(vsys-a)(config-policy)# exit
hostname(vsys-a)(config)# exit-vsys
hostname(config)#
hostname(config-if-eth0/7)# exit
hostname(config)#
Enter VSYS-b, and create a VSwitch and a L2 zone. Bind the created L2 zone to the shared
VSwitch1
hostname(config)# en ter-vsys vsys-b
hostname(vsys-b)(config)# zo n e b -l2 l2
hostname(vsys-b)(config)#
hostname(vsys-b)(config-if-eth0/7)# zo n e b -l2
hostname(vsys-b)(config-if-eth0/7)# exit
hostname(vsys-b)(config)# p o licy-glo b al
hostname(vsys-b)(config-policy)# rule
hostname(vsys-b)(config-policy-rule)# src-addr an y
hostname(vsys-b)(config-policy-rule)# dst-addr an y
hostname(vsys-b)(config-policy-rule)# service an y
hostname(vsys-b)(config-policy-rule)# exit
hostname(vsys-b)(config-policy)# exit
hostname(vsys-b)(config)# exit-vsys
hostname(config)#
To meet the above requirement, the Simple-Switch, VWANIF interface, VPort interface and cor-
responding route, policy rules are needed. Below is the logical illustration.
hostname(config-vsys)# exit
hostname(config-vsys)# exit
hostname(config)#
hostname(config-vswitch)# exit
hostname(config-zone-l2-sim~)# b in d vswitch 2
hostname(config-zone-l2-sim~)# exit
hostname(config)#
hostname(config)#
hostname(config)#
Configure ethernet0/0
hostname(config)# in terface eth ern et0/0
hostname(config)#
Configure ethernet0/2
hostname(config)#
hostname(vsys-v1)(config-if-vwa1)# zo n e vsys-v1-trust
hostname(vsys-v1)(config-if-vwa1)# ip v6 en ab le
hostname(vsys-v1)(config-if-vwa1)# exit
hostname(vsys-v1)(config-if-eth0/0)# zo n e vsys-v1-trust
hostname(vsys-v1)(config-if-eth0/0)# ip v6 en ab le
hostname(vsys-v1)(config-if-eth0/0)# exit
hostname(config)#
hostname(vsys-v1)(config-vrouter)# exit
hostname(vsys-v1)(config)# p o licy-glo b al
hostname(vsys-v1)(config-policy)# exit
hostname(vsys-v1)(config)# exit-vsys
hostname(config)#
hostname(vsys-v2)(config-if-vwa2)# zo n e vsys-v2-trust
hostname(vsys-v2)(config-if-vwa2)# ip v6 en ab le
hostname(vsys-v2)(config-if-vwa2)# exit
hostname(vsys-v2)(config-if-eth0/2)# zo n e vsys-v2-trust
hostname(vsys-v2)(config-if-eth0/2)# ip v6 en ab le
hostname(vsys-v2)(config-if-eth0/2)# exit
hostname(config)#
hostname(vsys-v2)(config-vrouter)# exit
hostname(vsys-v2)(config)# p o licy-glo b al
hostname(vsys-v2)(config-policy)# exit
hostname(vsys-v2)(config)# exit-vsys
hostname(config)#
Overview
HA (High Availability) provides a failover solution for malfunction of the communication line or
devices in order to ensure smooth communication and effectively improve the network reliability.
To implement the HA function, you need to group two Hillstone devices as an HA cluster, using
the identical hardware platform, firmware version, and licenses. When one device is unavailable or
cannot handle the request from the client properly, the request will be promptly directed to the
other device that works normally, thus ensuring uninterrupted network communication and
greatly improving the reliability of communications.
Hillstone devices support two HA modes: Active-Passive (A/P) and Peer Active-Active (A/A)
mode.
HA Cluster
For the external network devices, an HA cluster is a single device which handles network traffic
and provides security services. The HA cluster is identified by its cluster ID. After specifying an
HA cluster ID for the device, the device will be in the HA state to implement HA function.
HA Group
System will select the master and backup device of the same HA group ID in an HA cluster
according to the HCMP protocol and the HA configuration. The master device is in active state
and processes network traffic. When the master device fails, the backup device will take over its
work.
HA Node
To distinguish the HA device in an HA group, you can use the value of HA Node to mark the
devices. StoneOS support the values of 0 and 1.
In the HA Peer mode, the system can decide which device is the master according to the HA
Node value. In the HA group 0, the device whose HA Node value is 0 will be active and the
device whose HA Node value is 1 is at the disabled status. In the HA group 1, the device whose
HA Node value is 0 is at the disabled status and the device whose HA Node value is 0 is active.
HA Selection
In an HA cluster, if the group ID of the HA devices is the same, the one with higher priority will
be selected as the master device.
HA Synchronization
To ensure the backup device can take over the work of the master device when it fails, the master
device will synchronize its information with the backup device. There are 3 types of information
that can be synchronized: configuration information, files and RDO (Runtime Dynamic Object).
The specific content of RDO includes:
l SCVPN information
l ARP table
l PKI information
l DHCP information
l MAC table
l WebAuth information
System supports two methods to synchronize: real-time synchronization and batch syn-
chronization. When the master device has just been selected successfully, the batch syn-
chronization will be used to synchronize all information of the master device to the backup
device. When the configurations change, the real-time synchronization will be used to syn-
chronize the changed information to the backup device. Except for the HA related configurations
and local configurations (for example, the host name), all the other configurations will be syn-
chronized.
Notes:
l If you configure Local property for an interface , the system will not syn-
chronize this configuration with the backup device. For this reason, it is
recommended not to configure the Local property for the business interface.
Configuring HA
To configure the HA function, take the following steps:
1. Configure an HA group, including specifying the device priority (for selection) and HA
packets-related parameters.
3. Configure the HA link, including an HA link interface and an HA link IP address, for the
device synchronization and HA packets transmission.
4. Configure an HA cluster. Specify the HA cluster ID and HA node ID, and enable the HA
function.
WebUI: Select System > HA from the menu bar. In the HA dialog, configure the options.
Configuring an HA Group
The HA group need to be configured in the HA group configuration mode. To enter the HA
group configuration mode, in the global configuration mode, use the following command:
h a gro up group-id
After executing the command, the system will enter the HA group configuration mode. To delete
the specified HA group, in the global configuration mode, use the following command:
no ha group group-id
In the HA group configuration mode, you can perform the following configurations:
The priority specified by the command is for used for HA selection. The device with higher pri-
ority (the smaller number) will be selected as the master device. To specify the priority, in the HA
group configuration mode, use the following command:
p rio rity number
l number – Specifies the priority. The value range is the 1 to 254. The default value is 100.
To restore to the default priority, in the HA group configuration mode, use the following com-
mand:
n o p rio rity
Tip: When the priorities are identical, the device with smaller value in the 10th to
14th bit of the device S/N will be priorized.
Hello interval refers to the interval for the HA device to send heartbeats (Hello packets) to other
devices in the HA group. The Hello interval in the same HA group must be identical. To specify
the Hello interval, in the HA group configuration mode, use the following command:
h ello in terval time-interval
To restore to the default Hello interval, in the HA group configuration mode, use the following
command:
n o h ello in terval
If the device does not receive the specified number of Hello packets from the other device, it
will judge that the other device’s heartbeat fails. To specify the Hello threshold, in the HA
group configuration mode, use the following command:
h ello th resh o ld value
l value – Specifies the Hello threshold value. The value range is 3 to 255. The default value is
3.
To restore to the default Hello threshold, in the HA group configuration mode, use the following
command:
no hello threshold
This feature is only supported for CloudEdge. By default, the transport protocol of Hello packets
is VRRP.But in a virtualized environment, the virtual core switch restricts both the transmission
rate and the packet size of VRRP packets, affecting the synchronization function between the HA
master and the backup device. You can change the transport protocol of Hello with UDP protocol
to prevent the restriction, in the HA group configuration mode, use the following command:
h a tran smit udp
To restore to the default protocol VRRP, in the HA group configuration mode, use no ha trans-
mit udp command:
l The master device and the backup device shoud be configured with the same
Hello transport protocol.
When the preempt mode is enabled, once the backup device find its own priority is higher than
the master device, it will upgrade itself to the master device and the original master device will
become the backup device. When the preempt mode is disabled, even if the device's priority is
higher than the master device, it will not take over the master device unless the master device
fails. When configuring the preempt mode, you can also set the delay time to make the backup
device take over the master device after the specified delay time. To configure the preempt mode,
in the HA group configuration mode, use the following command:
p reemp t [ delay-time ]
l delay-time – Specifies the delay time. The value range is 1 to 600 seconds. The default value
is 30.
To cancel the preempt mode, in the HA group configuration mode, use no preempt command.
When the backup device is selected as the master device, it will send an ARP request packet to
the network to inform the relevant network devices to update its ARP table. This command is
used to specify the number of ARP packets the upgraded master device will send. The maximum
number of gratuitous ARP packages sent by new master device is determined by the number of
sending gratuitous ARP packets specified by this command. The system will send five gratuitous
ARP packets immediately after device switching, and sending one ARP packets per second until
the number of gratuitous ARP packets reaches the number specified by this command. To specify
l number – Specify the gratuitous ARP packet number. The value range is 10 to 180. The
default value is 15.
To restore to the default gratuitous ARP packet number, in the HA group configuration mode,
use no arp command.
When the backup device is promoted to the master device, since the new master device only sent
rather limited ARP packets to the network, some servers in the network may be unable to receive
any ARP packets and therefore unable to update the ARP table. As a result, these servers may be
unable to provide normal service within a short period. To solve the problem, the system sup-
ports sending gratuitous ARP packets manually via a specified interface. To send gratuitous ARP
packets via the specified interface, in the execution mode, use the following command:
sen d gratuito us-arp in terface interface-name [co un t num | in terval num ]
l interface interface-name – Specifies the interface on which gratuitous ARP packets are sent.
This interface can be a physical interface, VSwitch interface, aggregate interface or redundant
interface with an IP address configured.
l count num – Specifies the count for sending ARP packets. The value range is 0 to 60. The
default value is 5. Value 0 indicates sending the packets consistently. You can stop sending by
pressing Ctrl+C.
l interval num – Specifies the interval for sending ARP packets. The value range is 1 to 60
seconds. The default value is 1.
To specify description information, in the HA group configuration mode, use the following com-
mand:
descrip tio n string
To cancel the description information, in the HA group configuration mode, use no description
command.
The track object is used to monitor the working status of the device. When the device cannot
work normally, the system will take the corresponding action. To specify the track object, in the
HA configuration mode, use the following command:
mo n ito r track track-object-name
l track-object-name – Specifies the name of the track object configured in the system.
To cancel the track object, in the HA configuration mode, use no monitor track command.
Notes: It is recommended that the track object in the HA group should be con-
figured with the Local property. For more information about how to configure the
track object, see “Configuring a Track Object” of “System Management”.
To configure the interface for HA Group 1, in the global configuration mode, use the following
command:
interface {ethernet x/y:1 | redundant x:1 | aggregate x:1 | tunnel x:1 | loopback x:1 | ethernet
x/y.u:1 | redundantx.y:1 | aggregatex.y:1 | vswitchif x:1 }
l ethernet x/y:1 : Specifies ethernetx/y as the interface for Group 1 and uses this interface for
data forwarding.
l redundant x:1 : Specifies redundantx as the interface for Group 1 and uses this interface for
data forwarding.
l aggregate x:1 : Specifies aggregatex as the interface for Group 1 and uses this interface for data
forwarding.
l tunnel x:1 : Specifies tunnelx as the interface for Group 1 and uses this interface for data for-
warding.
l loopback x:1 : Specifies loopbackx as the interface for Group 1 and uses this interface for data
forwarding.
l ethernet x/y.u:1 : Specifies ethernetx/y.u as the interface for Group 1 and uses this interface
for data forwarding.
l redundantx.y:1 : Specifies redundantx.y as the interface for Group 1 and uses this interface for
data forwarding.
l aggregate x.y:1 : Specifies aggregatex.y as the interface for Group 1 and uses this interface for
data forwarding.
To cancel the specified interface, in the global configuration mode, use the following command:
no interface {ethernet x/y:1 | redundant x:1 | aggregate x:1 | tunnel x:1 | loopback x:1 | eth-
ernet x/y.u:1 | redundant x.y:1 | aggregatex.y:1 | vswitchif x:1 }
l A.B.C.D | X:X:X:X::X – Specifies the next-hop IPv4 or IPv6 address of the interface.
l local – If you enter this parameter, the system will not synchronize this configuration with
the backup device. Without entering this parameter, this configuration will not be syn-
chronized with the backup device.
In the interface configuration mode, use the following command to cancel the above con-
figurations:
no direct-send default-nexthop { A.B.C.D | X:X:X:X::X} [local]
Configuring a HA Link
The synchronization between the master and backup device and the Hello packets are transmitted
over the HA link. There are two types of HA links, control Link and data Link. The control link
is used to synchronize all data between two devices and the data link is used to synchronize the
data packet information such as session information. According to your requirements, you can
choose whether to configure the data link. If you configure the data ink, the Hello packets will be
transmitted over the data link and the information of data synchronization and others will be trans-
mitted over the control link. Without the data link configured, all synchronization information
will be transmitted over the control link.
You need to specify the HA link interface first, and then specify the IP address of the interface.
l You can only synchronize the data information through HA date link inter-
face.
l Connect the HA0 of master SCM on the master device with the HA0
of the master SCM on the backup device.
l Connect the HA1 of master SCM on the master device with the
HA0 of the backup SCM on the backup device.
l Connect the HA1 of backup SCM on the master device with the
HA1 of the backup SCM on the backup device.
You can specify up to two HA control link interfaces. The later configured HA link interface
serves as the backup interface for the first configured one. When the first interface disconnects,
the later configured interface will take over the task of transmitting HA packets.
For X series devices, the system supports to configure the interface on I/O module as the HA
control link interface in order to avoid the abnormal HA heartbeat and synchronization message
due to the abnormal link of the interface on the control module. By default, the HA control link
interface is on the control module.
To specify an HA control link interface, in the global configuration mode, use the following com-
mand:
ha link interface interface-name
To specify a HA data link interface, in the global configuration mode, use the following com-
mand:
ha link data interface interface-name
l data – Specify the type of the HA link as the data link. After specifying this data link, the ses-
sion information will be synchronized over this data link. You can configure the physical inter-
face or aggregate interface as the interface of the data link. You can specify at most one
aggregate interface as the HA data link interface, or at most two physical interfaces as the HA
data link interface.
Notes: For X series devices, only the interface of the IOM-2Q8SFP+ -200 module
card of the X7180 device can be specified as the HA assist link interface. Other
module card interfaces do not support this function.
The two physical interfaces of the HA data link interface can work in Active-passive mode or
Load-balance mode. To specify the work mode of the HA data link interface, in the global con-
figuration mode, use the following command:
ha data-link mode {active-passive | load-balance}
l active-passive – Specify the work mode of the HA data link interface as Active-passive
mode. After specifying this work mode, the first configured HA data link interface works as
the master interface, and the later configured HA data link interface serves as the backup inter-
face for the first one. When the first interface fails, the later configured interface will take over
the work of the failure interface. When the master interface restores to normal, it will take all
the data link work again.
l load-balance - Specify the work mode of the HA data link interface as Load-balance mode.
The load-balance mode is the default mode. After specifying this work mode, the two HA
data link interfaces perform their own tasks simultaneously, and monitor the operation status
of each other. When one interface fails, the other will take over the work of the failure inter-
face and also run its own work simultaneously. When the failure interface restores to normal,
the two HA data link interfaces perform their own work again.
To restore to the default work mode of the HA data link interface, in the global configuration
mode, use the following command:
To configure the IP address (IPv4 or IPv6 address) of the HA link, in the global configuration
mode, use the following command:
ha link {ip ip-address/Mask | ipv6 ipv6-address/Mask }
l ip ip-address/Mask – Specifies the IPv4 address and the netmask of the HA link, both
IP/netmask (e.g. 1.1.1.1/24) and IP wildcard netmask (e.g. 1.1.1.1 255.255.255.0) are sup-
ported.
l ipv6 ipv6-address/Mask - Specifies the IPv6 address prefix and the prefix length of the HA
link. The value range of the prefix length is 1 to 128.
To cancel the specified IP address, in the global configuration mode, use the following command:
no ha link {ip ip-address/Mask | ipv6 ipv6-address/Mask }
In the Active-Passive (A/P) mode, you can specify the HA assist link interface to receive and
send heartbeat packets (Hello packets), and ensure the main and backup device of HA switches
normally when the HA link fails.
To specify an HA assist link interface, in the global configuration mode, use the following com-
mand:
ha assist-link interfaceinterface-name
l interface-name – Specifies the name of the interface. You can configure only one HA assist
link interface.
To delete the specified HA assist link interface, in the global configuration mode, use the fol-
lowing command:
no ha assist-link interface interface-name
l The HA assist link interface must use an interface other than the HA link
interface and be bound to the zone.
l You need to specify the same interface as the HA assist link interface for the
main and backup device, and ensure that the interface of the main and backup
device belongs to the same VLAN.
l For X series devices, only the interface of the IOM-2Q8SFP+ -200 module
of the X7180 device can be specified as the HA assist link interface, and the
other devices do not support this function.
The MAC address of HA link interface refers to the source MAC address for the HA device to
send heartbeats (Hello packets) to other devices in HA group. By default, system uses the default
MAC address to send Hello packets. Users can specify the MAC address of control link interface
or customize a MAC address as the MAC address of HA link interface. To specify the MAC
address of HA link interface, in the global configuration mode, use the following command:
ha link mac { 1st-interface-mac | mac-address}
l 1st-interface-mac – Specifies the MAC address of control link interface as the MAC address
of HA link interface. When there is more than one configured control link interfaces, system
will use the MAC address of the first control link interface as the MAC address of HA link
l mac-address – Specifies a customized MAC address as the MAC address of HA link inter-
face.
In the global configuration mode, use the following command to restore the default MAC address
of HA link interface.
no ha link mac
This function is only supports for the interface of CloudEdge, except HA link interface and the
interface configured with the Local property. By default, the interface forwards traffic with the vir-
tual MAC address provided by system. After configuring the function, each interface will use its
real MAC address for communication. To enable the real MAC address of interface, in the global
configuration mode, use the following command:
no ha virtual-mac enable
To restore to the default virtual MAC address, in the global configuration mode, use tha virtual-
mac enable command.
Notes: When device is added to HA cluster and HA function take effective, you
can not change the MAC address of interface.If you want to change it, execute the
command no ha cluster firstly.
System supports HA negotiation through two-layer unicast mode. You can configure the HA peer
IP address or configure the peer IP and MAC address concurrently in each device. After that, this
two device will negotiate through two-layer unicast mode.
To configure HA peer IP address (IPv4 or IPv6 address) or mac address, in the global con-
figuration mode, use the following command:
ha peer {ip ip-address | ipv6 ipv6-address} [mac mac-address]
l ipv6 ipv6-address - Specifies the IPv6 address of HA link interface of peer device.
l mac mac-address - Specifies the MAC address of HA link interface of peer device.
In the global configuration mode, use no ha {ip | ipv6}to restore the default configuration.
Notes: When device is added to HA cluster and HA function take effective, you
can not modify the HA peer ip or mac address .If you want to modify it, execute the
command no ha cluster firstly.
l value – Specifies the MTU value of the HA link interface. The default value is 1500.
To cancel the specified MTU value, in the global configuration mode, use the following com-
mand: no ha link mtu.
Configuring a HA Cluster
After configuring the HA group, HA group interface and HA link interface, you need to add the
device to the HA cluster to make the HA function take effective. If there are more than one pair
of HA devices in the network, you need to configure different HA cluster IDs, otherwise the
MAC addresses may conflict. To configure an HA cluster, in the global configuration mode, use
the following command:
ha cluster cluster-id [[peer-mode node ID [symmetric-routing]]| node ID]
l peer-mode node ID – Configures the HA Peer mode and specifies the role of this device in
the HA cluster. The range is 0 to 1. By default, the group 0 in the device whose HA Node ID
is 0 will be active and the group 0 in the device whose HA Node ID is will be in the disabled
status.
l symmetric-routing - If you enter this parameter, the device will work in the symmetrical rout-
ing environment.
l node ID - Specifies the HA Node value for the device. The values for two devices must be
different. The range is 0 to 1. You need to specify the HA node value for SG-6000-X10800.
If you do not specify this value for other devices, the devices will obtain the Node ID value
by automatic negotiation.
To disable the specified HA cluster, in the global configuration mode, use no ha cluster com-
mand.
To restore to the default prefix, in the global configuration mode, use no ha virtual-mac-prefix
command.
Tip: With the HA function enabled, if you want to modify the HA virtual MAC
prefix, you may need to disable the HA function first.
To view the current HA virtual MAC prefix and the maximum number of HA clusters that can be
configured, use the following command in any mode:
show ha cluster
Configuring a Management IP
To manage the HA backup device, you need to configure a management IP for the backup device.
To configure a management IP address, in the interface configuration mode, use the following
command:
manage ip ip-address
l The physical interface that belongs to a redundant interface, and the redundant interface is
bound to a Layer 3 zone.
l The physical interface that belongs to an aggregate interface, and the aggregate interface is
bound to a Layer 3 zone.
To enable or disable the Layer 3 port down-up function, in the global configuration mode, use the
following command:
ha l3-port-force-down-up {enable | disable}
1. View the relevant configuration information of both master and backup device by using the
command show.
l If the configuration information is consistent, then you don’t need to synchronize manually;
l If the configuration information is inconsistent, you need to run the corresponding commands
to manually synchronize the configuration (for more information about the relevant com-
mands, see table below).
Manual syn-
HA synchronization clear synchronization
show command chronization com-
information times command
mand
Configuration inform- show con- exec ha sync con- clear ha sync config
ation figuration figuration
DNS configuration show ip hosts exec ha sync rdo dns clear ha sync dns
information
DHCP configuration show dhcp exec ha sync rdo dhcp clear ha sync dhcp
information
PKI configuration show pki key exec ha sync rdo pki clear ha sync pki
information show pki trust-
domain
IPSec VPN inform- show ipsec sa exec ha sync rdo vpn clear ha sync vpn
ation show isakmp sa
IPSec VPN inform- show scvpn client exec ha sync rdo clear ha sync scvpn
ation test scvpn
show scvpn
show auth-user
scvpn
show auth-user
l2tp [interface
interface-name |
vrouter vrouter-
name | slot slot-
no]
NTP information show ntp exec ha sync rdo ntp clear ha sync ntp
Route information show ip route exec ha sync rdo route clear ha sync route
Multicast routing show ha sync stat- exec ha sync rdo clear ha sync mroute
information istic mroute mroute
show ha sync
state mroute
By default the system will synchronize sessions between HA devices automatically. Session syn-
chronization will generate some traffic, and will possibly impact device performance when the
device is overloaded. You can enable or disable automatic HA session synchronization according
to the device workload to assure stability.
To enable or disable automatic HA session synchronization, in the global configuration mode, use
the following command:
After the scheduled comparison of HA configurations is enabled, system will check the HA con-
figurations every 1 hour and record logs if the configuration is found changed. By default, the
scheduled comparison of HA configurations is disabled.
To enable or disable the scheduled comparison of HA configurations, in global configuration
mode, use the following command:
Notes: Currently, you can only back up statistical data via CLI, not WebUI.
The system supports backup device configuration mode to enhance the consistency between the
master device and the backup device. In this mode, the user can manually modify the con-
figuration of the backup device by using the command of the corresponding function when the
user finds that the configuration of the master device and the backup device is not synchronized
correctly.
In the execution mode, use the following command:
Notes: After entering the backup device configuration mode, the master device can
still be normally configured, and the configuration of the master device and the
backup device can still be synchronized.
You can view the backup status of statistical data as needed, including whether statistical data
backup is enabled or not, device online status, device priority, etc. To view the backup status of
statistical data, in any mode, use the following command:
show ha apm state
l Via HAVIP, you can configure the high availability virtual IP address (HAVIP) on the cloud
platform to deploy the HA scenario.
l Via Accesskey , you can configure the access key and secondary IP addresson the cloud plat-
form to deploy the HA scenario.
l key-id - Enter the AccessKey or APP ID applied for on the cloud platform.
l password - Enter the key password applied for on the cloud platform.
In the global configuration mode , use the command no cloud-deploy accesskeyid to delete the
configuration of AccessKey.
Configuring HA Traffic
For the HA devices that are deployed in asymmetric routing environment (i.e., inbound and out-
bound traffic may take different routes), you can enable HA traffic to assure the inbound and out-
bound packets of a session are processed on the same device, thus avoiding session failure. Figure
below illustrates a typical HA traffic application topology.
As shown in the figure above, the left route is from PC to the FTP server by the way of Device
A. the righ route is the same start and ending by the way of Device B. the metric value of these
two routes are different from each other, making the network an asymmetric route,In addition,
the FTP requests from PC are sent to the FTP server via Device A. In order to assure the
response packets from the FTP server are returned to PC via Device A, you need to enable HA
traffic on both Device A and Device B.
To enable HA traffic, use the following two steps:
2. Enable HA traffic.
Enabling HA Traffic
HA traffic is disabled by default. To enable or disable the function, in the global configuration
mode, use the following commands:
Notes: After enabling the HA traffic function, the traffic between devices increase.
Hillstone recommends you first configure the interface of the data link.
When processing outbound packets, the device with HA traffic enabled will synchronize packet-
related information with the pairing device. If the peer device responses (i.e., inbound packet)
before the synchronization is completed, the sessions will not be matched and the response to the
request packet will be dropped. To solve this problem, in the transparent mode, you can con-
figure HA traffic delay. The device will wait for the specified delay time so that the syn-
chronization will be completed, and then process inbound packets.
To configure HA traffic delay, in the global configuration mode, use the following commands:
ha traffic delay num
l num - Specifies the delay time. The value range is 1 to 50 ms. The default value is 3.
To cancel the above configurations, use the following command in the global configuration mode:
no ha traffic delay
In the routing mode, you can configure the first packet forwarding function to ensure that when
processing outbound packets, the device will synchronize packet-related information with the pair-
ing device. To configure the first packet forwarding function, use the following command in the
global configuration mode:
ha traffic first-packet [max-size num]
l max-size num – Specifies the size of the first packet. The unit is byte. The value is 64 to
1024. Without configuring this parameter, the default value is 124.
To cancel the above configurations, use the following command in the global configuration mode:
no ha traffic first-packet
In the routing mode/transparent mode, you can configure the first packet forwarding bounce back
function to ensure that when processing outbound packets, the device will synchronize packet-
related information with the peer device.
l In the routing mode, the local device synchronizes the outbound packets and packet-related
information to the peer HA device. After the peer device completes the session creation, it
will return the outbound packets to the local device. After that, the local device performs the
next step of forwarding processing.
l In the transparent mode, the local device sends the session synchronization information to the
peer HA device, and then continues to send outbound packets. When the peer device com-
pletes the session creation, it will return the outbound packets to the local device, and then
the local device will perform the next step of forwarding processing.
To configure the first packet forwarding bounce back function, use the following command in the
global configuration mode:
ha traffic first-packet-bounce-back [max-size num]
To cancel the above configurations, use the following command in the global configuration mode:
no ha traffic first-packet-bounce-back
In the HA Active-Passive (A/P) mode, you can enable the HA route rematch by session function
if the master device and backup device are interconnected with other devices(such as switches)
using different interfaces and IP addresses which are not in the same network segment. With this
function enabled, the backup device will match the route again for the session synchronized from
the master device and find a new egress interface for the route, thus avoiding session failure after
HA switchover. Figure below illustrates a typical HA route rematch by session application topo-
logy.
l Device A connects to Switch01 through interface eth0/2. Interface eth0/3 is not connected.
A static route with the destination IP of eth0/2 is configured.
l Device B connects to Switch01 through interface eth0/3. Interface eth0/2 is not connected.
A static route with the destination IP of eth0/3 is configured.
When HA switches, Device B becomes the primary device, but the next hop of the route syn-
chronized from Device A is still the IP address of Switch01, causing the session failure. When the
HA route rematch by session function is enabled on Device B, Device B will match the route and
find the egress interface again for sessions synchronized from Device A, thus avoiding the session
failure.
Notes:
l In the above typical scenario, you need to disable the eth0/3 of Device A
and the eth0/2 of Device B by using the command shutdown.
The HA session rematch route function is disabled by default. To enable the function, in the
global configuration mode, use the following command:
ha session-rematch-route
To disable the HA session rematch route function, in the global configuration mode, use the com-
mand no ha session-rematch-route.
Viewing HA Configuration
To view the HA configuration information, use the following commands:
l Show the HA synchronization state: show ha sync state {pki | dns | dhcp | vpn | ntp | con-
fig | flow | scvpn | route | mroute }
l Show the HA synchronization statistics: show ha sync statistic {pki | dns | dhcp | vpn | ntp
| config | scvpn | route| mroute }
l Show key information of the HA switchover: show ha state change info [all]
l all - Show key information for HA switchover of last three times, including HA state
change time, HA state change event, HA state change reason, CPU information,
memory information, session information and HA interface rate. If this parameter is not
specified, the system will show key information for the latest HA switchover.
l Show current status (enable or disable) of the HA route rematch by session function: show ha
session-rematch-route
HSVRP
The system supports the Hillstone Virtual Redundant Protocol (HSVRP) function. In peer active-
active (A/A) scenarios, if a device fails, traffic that originally flows into the interface of this
device will be redirected to another healthy device. This ensures that network communication is
not interrupted.
The HSVRP function provides the HSVRP group, which consists of a group of interfaces on two
HA devices. The virtual IP address of the HSVRP group takes effect on the primary interface
first. In other words, traffic that accesses the virtual IP address flows into the primary interface of
the HSVRP group. If the device where the primary interface belongs fails, traffic will be redir-
ected to the secondary interface on another device. This avoid network communication inter-
ruptions.
Typical Scenario
HSVRP is usually deployed in HA peer mode. In the following scenario, HA group 0 of the
M0D1 device is at the active status and HA group 1 of the D0M1 device is at the disabled status.
HA group 1 of the D0M1 device is at the active status and HA group 0 of the D0M1 device is at
the disabled status. The eth0/1 and eth0/1:1 interfaces are service forwarding interfaces of HA
group 0 and group 1 respectively. After the HSVRP function is configured, the virtual IP address
of the HSVRP group takes effect on eth0/1 first. If M0D1 fails, the virtual IP address takes
l If M0D1 and D0M1 are running as normal, the virtual IP address (20.1.1.1) takes effect on
eth0/1 and access traffic is redirected by M0D1.
l If M0D1 fails, the virtual IP address (20.1.1.1) takes effect on eth0/1:1 and D0M1 takes over
M0D1 to redirect access traffic.
Basic Concepts
HSVRP Group
HSVRP group is a virtual entity that has a virtual IP address and a virtual MAC address. In HA
scenarios, after an HSVRP group is configured, the group does not take effect until referenced by
a group of interfaces on HA devices.
After an interface references an HSVRP group, the virtual IP address of the HSVRP group takes
effect. One interface can reference up to two HSVRP groups. If an interface references two
HSVRP groups, the interface needs to be used as the primary interface of an HSVRP group and
the secondary interface of another HSVRP group.
l Example 1: The eth0/1 and eth0/1:1 interfaces reference only hsvrp 1. The eth0/1 interface
is used as the primary interface of hsvrp 1 and the eth0/1:1 interface is used as the secondary
interface of hsvrp 1.
In this case, the virtual IP address of hsvrp 1 takes effect on eth0/1, which receives traffic
that accesses the virtual IP address. The eth0/1:1 interface is in the backup state. The virtual
IP address of hsvrp 1 takes effect on eth0/1:1 and eth0/1:1 starts taking over traffic of
eth0/1 only when M0D1 fails.
l Example 2: The eth0/1 and eth0/1:1 interfaces reference both hsvrp 1 and hsvrp 2. The
eth0/1 interface is used as the primary interface of hsvrp 1 and the secondary interface of
hsvrp 2. The eth0/1:1 interface is used as the secondary interface of hsvrp 1 and the primary
interface of hsvrp 2.
In this case, the virtual IP address of hsvrp 1 takes effect on eth0/1 and the virtual IP address
of hsvrp 2 takes effect on eth0/1:1. That is, eth0/1 receives traffic that accesses the virtual
IP address of hsvrp 1 and eth0/1:1 receives traffic that accesses the virtual IP address of
hsvrp 2 within the same period. The eth0/1 and eth0/1:1 interfaces serve as a backup for
each other.
l If M0D1 fails, eth0/1:1 takes over traffic of eth0/1. Traffic that accesses the virtual IP
address of both hsvrp 1 and hsvrp 2 reaches eth0/1:1.
l If D0M1 fails, eth0/1 takes over traffic of eth0/1:1. Traffic that accesses the virtual IP
address of both hsvrp 1 and hsvrp 2 reaches eth0/1.
The system determines the interface on which the virtual IP address of an HSVRP group takes
effect based on the status of the HSVRP group. This interface processes traffic that accesses the
virtual IP address. Only one interface takes effect at a time. If the device where this interface
belongs fails, the interface on another device takes over traffic of the faulty device to ensure busi-
ness continuity in the network.
An HSVRP group can be in the active or inactive state. If the status of the HSVRP group on the
interface is active, it indicates that the HSVRP group takes effect on this interface, which pro-
cesses traffic that accesses the virtual IP address. If the status of the HSVRP group on the inter-
face is inactive, it indicates that the HSVRP group does not take effect on this interface and
another interface processes traffic that accesses the virtual IP address. If the status of the HSVRP
group on an interface is active, the status of the same HSVRP group on another interface is inact-
ive at the same time.
The status of an HSVRP group on an interface is determined by whether the interface is the
primary interface of the HSVRP group and whether the device where the interface belongs runs as
normal:
l If the device where the primary interface belongs runs as normal, the status of the HSVRP
group on the primary interface is active. Otherwise, the status of the HSVRP group on the sec-
ondary interface is active.
l If the device where the primary interface belongs recovers from a failure, the status of the
HSVRP group on the primary interface changes from inactive to active.
When the status of the HSVRP group on the interface changes from inactive to active, the inter-
face uses the virtual IP address and virtual MAC address of the HSVRP group to send gratuitous
ARP packets, redirects traffic that accesses the virtual IP address to itself, and then forwards the
traffic.
You can create up to 255 HSVRP groups. To create an HSVRP group, use the following com-
mand in global configuration mode:
hsvrp id id
l id - Specifies the ID of the HSVRP group. Valid values: 1 to 255. For example, hsvrp id 1 and
hsvrp id 2 indicates different HSVRP groups. After the command is executed, you will enter
the configuration mode of the HSVRP group.
In global configuration mode, use the no hsvrp id id command to delete a specified HSVRP
group.
Notes: Before you delete an HSVRP group, you need to cancel the reference to the
HSVRP group by interfaces.
The IP address of an HSVRP group and the IP address of the interface to which the HSVRP
group is bound can belong to the same network segment or different network segments. To con-
figure the virtual IP address of an HSVRP group, use the following command in HSVRP group
configuration mode:
ip address {A.B.C.D | A.B.C.D/M}
l If you specify the IP address in the A.B.C.D format, the subnet mask is
255.255.255.255. In this case, the specified IP address and the IP address of the inter-
face to which the HSVRP group is bound needs to belong the same network segment.
l If you specify the IP address in the A.B.C.D/M format, the specified IP address and
the IP address of the interface to which the HSVRP group is bound needs to belong dif-
ferent network segments.
In HSVRP group configuration mode, use the no ip address [A.B.C.D | A.B.C.D/M] command
to cancel the configuration.
Tips: After you configure the virtual IP address of an HSVRP group, the system auto-
matically generates the virtual MAC address corresponding to the HSVRP group
based on the HSVRP group ID. The generated virtual MAC address is in the format
of 00-00-5E-00-01-id, in which "id" indicates the hexadecimal HSVRP group ID. For
example, the virtual MAC address of hsvrp 17 is 00-00-5E-00-01-11.
To view an HSVRP group, use the following command in any configuration mode:
show hsvrp [id id]
l id id - Specifies the ID of the HSVRP group whose information you want to view, including
the virtual IP address, virtual MAC address, primary interface name, secondary interface name,
and the name of the interface on which the virtual IP address takes effect.
In peer mode, to ensure that the interface address of the M0D1 or D0M1 device is still reachable
when the device fails, the interface needs to reference an HSVRP group. After the interface ref-
erences a configured HSVRP group and provides the IP address of the HSVRP group externally,
traffic that accesses the IP address of the HSVRP group will reach this interface and be processed
by the device where this interface belongs.
The following types of interfaces can reference an HSVRP group: physical interface, aggregate
interface, redundant interface, VSwitch interface, or subinterface of preceding interfaces.
To reference an HSVRP group for an interface, in global configuration mode, use the following
command to go to the interface configuration mode of the interface:
interface interface-name
l interface-name - Specifies the interface name and you will enter the configuration mode of the
interface.
In interface configuration mode, use the following command to reference a configured HSVRP
group for the interface:
hsvrp id id {primary | secondary}
l primary - Sets the interface to the primary interface of the HSVRP group. If both devices in
peer A/A mode run as normal, the referenced HSVRP group is in the active state on the inter-
face.
l secondary - Sets the interface to the secondary interface of the HSVRP group. If both devices
in peer A/A mode run as normal, the referenced HSVRP group is in the inactive state on the
interface.
In interface configuration mode, use the no hsvrp id id {primary | secondary} command to can-
cel the reference to the HSVRP group.
l After an interface references an HSVRP group, you can still use the IP
address of the interface itself. However, we recommend that you use the IP
address as the management IP address instead of as the IP address of other
service forwarding interfaces.
l After an interface references an HSVRP group, you can configure only static
routes for network devices connected to the interface and cannot use
dynamic routing protocols.
Introduction
Currently , data centers providing important data information and office services in many indus-
tries. In order to improve the reliability, companies generally build two or more data centers, and
the extended mode of L2 (DCI: Data Center Interconnection) is used for inter-connections
between two data centers. Two data centers running independently, providing business services
and mutual backup, constitute a redundant data center.
The Hillstone devices are deployed in the data center under the routing mode, used to check
traffic and isolated by policy across different regions. Because of the DCI, the asymmetric L3
traffic that across the data center and different regions may occurs (i.e., inbound and outbound
traffic may take different routes), the policy isolation will not take effect. To resolve this problem,
system provides the Twin-mode HA function. This function will optimizes the traffic forwarding,
ensuring the business continuity and efficiency of redundant data centers.
Notes:
l Currently, only some devices (All platforms of X series, E3960 and above
platforms of E series and A3000 and above platforms of A series) support the
function.
l Before configuring Twin Mode, make sure you have already installed Twin-
mode License。
l Currently, only the IP address and peer IP address of the twin-mode HA A/P
link interface supports IPv6.
Currently, The system supports functions for Twin-mode HA listed in Table below. For more
details and configuration, see relevant section.
Function
As shown in the figure above, configure two data center to form an HA group, with one data
center acting as a master device and the other acting as its backup device. When the master
data center fails, the backup data center will be promoted to master and take over its work to
forward packets. The Hillstone devices are deployed on each data center (you can use 3
straight series deployment or deploy the device in the gateway location), and make up the HA
A/P mode.
l Active-Active(A/A)deployment scenarios
As shown in the figure above, the two data centers perform their own tasks simultaneously,
As shown in the figure above, the Hillstone devices are deployed in the data center as a
gateway and make up the HA A/P mode. The two data centers consist of twin-mode A/A
mode, and backup each other. Since the extended device of L2 filters the same IP address
and MAC address of the data center gateway, this problem is solved by deploying the gate-
way mode and configuring the twin-mode HA gateway function.
Twin-mode HA Synchronization
To ensure the backup device can take over the work of the master data center when it fails, the
master data center will synchronize its information with the backup data center. In different
deployment modes, the system supports different synchronous mode and synchronous inform-
ation types.
In twin-mode HA A/P mode, the types of information that can be synchronized includes:
l IPv4 pinhole
In twin-mode HA A/A mode, the system supports two synchronous mode: Part synchronization
and No synchronization. About configuration steps, refer to Specifying the deployment mode and
synchronization mode. The types of information that can be synchronized includes:
l IPv4 pinhole
Configuring Twin-mode HA
The Twin-mode HA need to be configured in the Twin-mode configuration mode. To enter the
Twin-mode configuration mode, in the global configuration mode, use the following command:
twin-mode
After executing the command, the system will enter the Twin-mode configuration mode.
In the Twin-mode configuration mode, you can perform the following configurations:
Notes:
l Before configuring the twin-modefunction, you should install the Twin-mode
License first.
Currently, supports two deployment modes for Twin-mode HA: A/A mode and A/P mode. The
system supports two synchronization mode: Part synchronization and No synchronization. In the
Twin-mode configuration mode, use the following command:
mode {active-active [no-sync | part-sync] | active-passive }
l part-sync - Specifies the synchronization mode is part synchronization mode. About specific
To cancel the specified deployment mode, in the Twin-mode configuration mode, use the fol-
lowing command:
no mode
To distinguish the data center, you can use the value of Node to mark the data center. To specify
the Node, in the global configuration mode, use the following command:
node node-ID
To cancel the specified Node, in the Twin-mode configuration mode, use the following com-
mand:
no node
Notes:
l You must specify the different Node for each data center.
l User needs to restart the device to make it take effect after modifying the
Node.
The priority specified by the command is for used for HA selection. The device with higher pri-
ority (the smaller number) will be selected as the master device of data center. To specify the pri-
ority, in the Twin-mode configuration mode, use the following command:
priority number
To restore to the default priority, in the Twin-mode configuration mode, use the following com-
mand:
no priority
Tip: When the priorities are identical, the device with Node 0 will be priorized.
When the preempt mode is enabled, once the backup device find its own priority is higher than
the master device, it will upgrade itself to the master device and the original master device will
become the backup device. When the preempt mode is disabled, even if the device's priority is
higher than the master device, it will not take over the master device unless the master device
fails. When configuring the preempt mode, you can also set the delay time to make the backup
device take over the master device after the specified delay time. To configure the preempt mode,
in the Twin-mode configuration mode, use the following command:
preempt [delay-time]
l delay-time – Specifies the delay time. The value range is 1 to 600 seconds. The default
value is 3.
To cancel the preempt mode, in the Twin-mode configuration mode, use the following command:
no preempt
Hello interval refers to the interval for the HA device to send heartbeats (Hello packets) to other
devices in the HA group. The Hello interval in the same HA group must be identical. To specify
the Hello interval, in the Twin-mode configuration mode, use the following command:
hello interval time-interval
To restore to the default Hello interval, in the Twin-mode configuration mode, use the following
command:
no hello interval
If the device does not receive the specified number of Hello packets from the other device, it
will judge that the other device’s heartbeat fails. To specify the Hello threshold, in the Twin-
mode configuration mode, use the following command:
hello threshold value
l value – Specifies the Hello threshold value. The value range is 5 to 255. The default value is
10.
To restore to the default Hello threshold, in the Twin-mode configuration mode, use the fol-
lowing command:
no hello threshold
There are two types of Twin-mode HA links, control Link and data Link. Currently, system only
support to specify the physical interfaces and aggregation interfaces as a Twin-mode HA link inter-
face.
You need to specify the Twin-mode HA link interface first, and then specify the IP address and
peer IP address of the interface.
To specify a Twin-mode HA link interface, in the Twin-mode configuration mode, use the fol-
lowing command:
link { control | data } interface interface-name
To delete the specified Twin-mode HA link interface, in the Twin-mode configuration mode, use
the following command:
no link { control | data } interface interface-name
Notes:
l Data link interface does not allow specifying on the X-series device panel
interface ethernet0/0- ethernet0/3.
l When asymmetric data traffic is larger, it is recommended that users use two
data links or using a aggregate interface to ensure sufficient bandwidth for
transmitting data traffic.
After the Twin-mode HA link interface is specified, to configure the IPv4 or IPv6 address of the
Twin-mode HA link interface, in the Twin-mode configuration mode, use the following com-
mand:
link {ip | ipv6} ip-address netmask
l ip | ipv6 – Specifies the IP address of the Twin-mode HA link interface. It can be an IPv4
(ip) or IPv6 (ipv6)address.
l ip-address netmask – Specifies the IPv4 address and the netmask or the IPv6 address prefix
and the prefix length of the Twin-mode HA link interface.
To cancel the specified IP address, in the Twin-mode configuration mode, use the following com-
mand:
no link {ip | ipv6}
The peer IP supports both IPv4 or IPv6 address. To configure the peer IP address, in the Twin-
mode configuration mode, use the following command:
peer-ip {ip | ipv6} ip-address
l ip | ipv6 – Specifies the IP address of the peer. It can be an IPv4 (ip) or IPv6 (ipv6)address.
l ip-address – Specifies the IPv4 address or the IPv6 address of the peer. You can configure
up to two peer IP adresses.
To cancel the specified peer IP address, in the Twin-mode configuration mode, use the following
command:
no peer-ip
Notes:
l Currently, only the IP address and peer IP address of the twin-mode HA A/P
link interface supports IPv6 configurations.
l The type of the IP address and the peer address of the twin-mode HA A/P
link interface must be the same, such as IPv4 or IPv6.
Enabling/Disabling Twin-mode HA
By default the Twin-mode HA function is disabled. To enable or disable Twin-mode HA, in the
Twin-mode configuration mode, use the following command:
l Enable: enable
l Disable: no enable
For the asymmetric traffic, Twin-mode HA provides two forwarding mode: tunnel mode and layer
2 tunnel mode.
l Tunnel Mode: The encapsulated package will be sent to the peer data center through Data
Link, after the traffic was de-encapsulated , the peer data center will transfer it. By default, the
forwarding mode is tunnel mode.
l Layer 2 Tunnel Mode: The MAC address of the packet is modified as the virtual MAC
(VMAC) address which corresponds to its interface of peer data center, the traffic is for-
warded through layer 2 tunnel. With this mode, the user needs to enable the layer 2 tunnel for-
warding mode at all business interfaces of the device.
To enable the layer 2 tunnel forwarding mode, in the interface configuration mode, , use the fol-
lowing command:
twin-mode-l2-tunnel-enable
To restore to the default forwarding mode, in the interface configuration mode, use the following
command:
no twin-mode-l2-tunnel-enable
Notes: The forwarding mode must be specified. The two modes cannot be mixed,
otherwise the function is not effective.
l max-size num – Specifies the size of the first packet. The unit is byte. The value is 64 to
1024. Without configuring this parameter, the default value is 124.
To cancel the above configurations, use the following command in the Twin-mode configuration
mode:
no first-packet-bounce-back
In the gateway deployment scenarios, because the extended device of L2 filters the same IP
address and MAC address of the data center gateway, the asymmetric traffic blocked. In order to
avoid this problem, you needs to enable the twin-mode gateway function, and configure gateway
interface IP address for sending the ARP request message, the system will take this IP address as
the source of IP, Twin-mode virtual MAC (VMAC) as the source MAC address to send the ARP
request message, and forward the data traffic with Twin-mode virtual MAC (VMAC) address as
the source address, so as to solve the problem of asymmetric traffic.
To enable the twin-mode gateway function and configure gateway interface IP address for sending
the ARP request message, in the interface configuration mode, use the following command:
twin-mode-gateway sender-ip ip-address
l ip-address – Specifies the gateway interface IP address for sending the ARP request message.
This IP address must be in the same network segment as the IP address of the gateway inter-
face.
To disable this function and delete the specified IP address, in the interface configuration mode,
use the following command:
no twin-mode-gateway sender-ip ip-address
In the twin-mode HA A/A mode, system supports two switching modes of twin-mode HA ses-
sion state, including unidirectional switching and bidirectional switching.
l Unidirectional switching: When a link of access extranet server fails in the data center, the sys-
tem will quickly switch the inactive twin-mode HA session state to the active state, and
ensure that the traffic will not be interrupted.
l Bidirectional switching: When you need to modify the traffic forwarding path of data center,
you can use this switching mode, the system will quickly switch the inactive twin-mode HA
session state to the active state, so as to optimize the traffic paths.
To configure the switching mode of twin-mode HA session state, in the Flow configuration
mode, use the following command:
twin-mode-sess-owner-change {follow-init-direction | follow-two-direction}
l follow-init-direction – Unidirectional switching, when the traffic hits the upstream traffic of
the inactive session, the system will switch the session state.
l follow-two-direction – Bidirectional switching, when the traffic hits both the upstream and
downstream traffic of the inactive session, the system will switch the session state.
To disable this function, in the Flow configuration mode, use the following command:
no twin-mode-sess-owner-change
Tip: To enter the flow configuration mode, in the global configuration mode, use
the command flow.
In some exceptional circumstances, the master and backup configurations of data center may not
be synchronized. In such a case you need to manually synchronize the twin-mode HA con-
figuration information of the master and backup data center. To determine if you need to manually
synchronize the twin-mode HA information, take the following steps:
1. View the relevant configuration information of both master and backup datacenter by using
the command show twin-mode configuration difference on the master device.
2. According to the displayed configuration information, determine whether you need to manu-
ally synchronize the twin-mode HA information:
l If the configuration information is consistent, then you don’t need to synchronize manually;
l If the configuration information is inconsistent, you need to run the commandexec twin-mode
sync configurationto manually synchronize the configuration.
Notes: The command exec twin-mode sync configuration can only be executed on
the master HA device of the master data center.
To view the transfer packet count of Twin-mode HA, in any mode, use the following command:
show twin-mode-counter
To clear the transfer packet count of Twin-mode HA, in any mode, use the following command:
clear twin-mode-counter
Requirement
To goal is use two Hillstone devices, which are of the same hardware platform, firmware version,
and license, to a form an HA cluster in Active-Passive mode. In addition, the two devices are
using the same interface to connect to the network. The network topology is shown below:
Configuration Steps
hostname(config-if-eth0/0)# zo n e un trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Step 2: Configure a track object which is used for tracking the status of interface of the master
device, and if the interface ethernet0/0 fails, the device will implement failover:
hostname(config-trackip)# exit
hostname(config)#
hostname(config-ha-group)# exit
hostname(config)#
Device B
hostname(config)# h a gro up 0
hostname(config-ha-group)# exit
hostname(config)#
Device A
hostname(config)# h a lin k in terface eth ern et0/2
hostname(config)#
Device B
hostname(config)# h a lin k in terface eth ern et0/2
hostname(config)#
Step 6: Configure the management IPs of the master device and backup device after syn-
chronization:
Device A
hostname(config)# in terface eth ern et0/1
hostname(config-if-eth0/1)# zo n e trust
Device B
hostname(config)# in terface eth ern et0/1
hostname(config-if-eth0/1)# zo n e trust
Step 7: Configure a track object on Device B, and if the interface ethernet0/0 on Device B fails,
the device will implement failover:
Device B
hostname(config)# h a gro up 0
hostname(config-ha-group)# exit
hostname(config)#
After the above configuration, the system will select Device A as the master device for for-
warding traffic. Device B acts as the backup device. Device A will synchronize its configuration
information and status to Device B. When Device A fails and cannot forward traffic, or the eth-
ernet0/0 of Device A is disconnected, Device B will switch to the master device without inter-
rupting user’s communication, and continue to forward the traffic.
Requirement
This section describes how to configure HA Peer mode and HA traffic in asymmetrical routing
environment. Before configuring, make sure the two Hillstone devices that will adopt HA Peer
mode are using the same hardware platform, firmware version, license, and the interfaces that are
connected to the network belong to the same security zone.
After completing the configuration, both of the two devices enable HA traffic. When PC requests
any virus file in zip format from the FTP server, this function can assure the inbound and out-
bound packets will be processed on Device A, and related logs will also be generated on Device
A. The network topology is shown below:
The following steps omit the configuration of interfaces and zones, and only focus on the con-
figuration of HA Peer mode and HA traffic.
Step 1: Configure HA Peer mode and HA link interfaces:
Device A
hostname(config)# h a lin k in terface eth 0/1
hostname(config)# exit
Device B
hostname(config)# h a lin k in terface eth 0/1
hostname(config)# exit
Device A
hostname(M0D1) (config)# h a traffic en ab le
Device B
hostname(D0M1) (config)# h a traffic en ab le
Step 3: Configure the asymmetric routing environment. Assume that all routers use the OSPF pro-
tocols and you have set the default metric and cost:
hostname(M0D1)# co n fig
hostname(M0D1) (config-if-eth0/4:1)# en d
Step 4: Configure a track object to monitor the status of ethernet0/1 on R3. If the interface fails,
all the sessions will be switched to Device B:
Device A
hostname(M0D1) (config)# track track1
Device A
hostname(M0D1) (config)# av-p ro file av
hostname(M0D1) (config-zone-untrust)# av en ab le av
l Configuring PMTU
l NDP protection
l Configuring NAT-PT
Notes: All the IPv6-related functions in the current firmware version support mul-
tiple VRs, i.e.,system support the default VR trust-vr.
hostname(config-if-eth0/1)# ip v6 en ab le
After enabling IPv6 on an interface, you can configure the following IPv6 options for the inter-
face:
Suppose the name of general prefix is test-prefix, the IPv6 address prefix is 2002:ae3:1111::/48,
the sub-prefix is 0:0:0:2222::1/64, then the command ipv6 address test-prefix 0:0:0:2222::1/64
will specify the IPv6 address 2002:ae3:1111:2222::1/64 for the interface.
To cancel the specified global IPv6 unicast address, use the following commands:
no ipv6 address (cancels all the IPv6 addresses on the interface)
no ipv6 address {ipv6-address/Mask | general-prefix-name sub-prefix/Mask } (cancels the spe-
cified IPv6 address on the interface)
l X:X:X:X::X/M – Specifies the IPv6 address prefix for the general prefix.
l interface-name – Specifies the interface referenced by the 6to4 general prefix (references the
IPv4 address of the interface).
To delete the specified IPv6 general prefix, in the global configuration mode, use the following
command:
no ipv6 general-prefix prefix-name {X:X:X:X::X/M | 6to4 interface-name}
To view the IPv6 general prefix defined in the system, in any mode, use the following command:
show ipv6 general-prefix
l default – If the interface is configured with a default router, this option will generate a
default route to the default router.
To cancel address auto-config, in the interface configuration mode, use the following command:
no ipv6 address autoconfig
l Mask – Specifies the prefix length. The value range is 1 to 128. If the length value is not lar-
ger than 64, the last 64 bits of the address will use the generated interface ID; if the length
value is larger than 64, the last (128-prefix) bits of the address will use the generated interface
ID.
To cancel the specified EUI-64 address, in the interface configuration mode, use the command:
no ipv6 address ipv6-address/Mask eui-64
To cancel the specified link-local address (and restore to the default link-local address), in the
interface configuration mode, use the command no ipv6 address ipv6-address link-local.
l value – Specifies the MTU value. The default MTU value is 1500 bytes. The range is 1280
bytes to 1800/2000 bytes (The max MTU may vary on different platforms.). If the Jumbo
To restore to the default MTU, in the interface configuration mode, use the command no ipv6
mtu.
l interface-name – Shows IPv6 configuration of the specified interface. If this parameter is not
specified, the system will show all the interfaces which are enabled with IPv6.
l Configuring DAD
l Configuring RA parameters
l Specifying a RA interval
l Specifying RA lifetime
l Specifying DRP
Configuring DAD
This function is implemented by sending NS (Neighbor Solicitation) requests. After receiving an
NS packet, if any other host on the link finds the address of the NS requester is duplicated, it will
send an NA (Neighbor Advertisement) packet advertising the address is already in use, and then
the NS requester will mark the address as Duplicate, indicating the address is an invalid IPv6
address.
The configuration of DAD includes specifying NS packets attempts times and interval.
To specify NS packet attempts times for an interface, in the interface configuration mode, use the
following command:
ipv6 nd dad attempts times
l times – Specifies NS packet attempts times. The value range is 0 to 20. The default value is
1. Value 0 indicates DAD is not enabled on the interface. If the system does not receive any
NA response packet after sending NS packets for the attempts times, it will verify the IPv6
address is the unique available address.
To restore to the default attempts time, in the interface configuration mode, use the command no
ipv6 nd dad attempts.
To specify an NS packet interval for an interface, in the interface configuration mode, use the fol-
lowing command:
ipv6 nd ns-interval interval
l interval – Specifies an interval for sending NS packets. The value range is 1000 to 3600000
milliseconds. The default value is 1000.
To restore to the default NS packet interval, in the interface configuration mode, use the com-
mand no ipv6 nd ns-interval.
l time – Specifies reachable time. The value is 0 to 3600000 milliseconds. The default value is
30000.
To restore to the default value, in the interface configuration mode, use the command no ipv6 nd
reachable-time.
Specifying RA Parameters
Routers send RA (Router Advertisement) packets periodically to advertise availability information
and link/Internet parameters, including address prefix, recommended hop limit value, local MTU,
auto-config type flag used by the node, DNS configuration options, etc.
Hop limit refers to the maximum number of hops for IPv6 or RA packets sent by the interface.
To specify a hop limit, in the interface configuration mode, use the following command:
ipv6 nd hoplimit number
l number - Specifies the hop limit. The value range is 0 to 255. The default value is 64.
To restore to the default hop limit, in the interface configuration mode, use the following com-
mand:
no ipv6 nd hoplimit
Advertising MTU
You can specify whether to include MTU in RA packets sent on device interfaces and advertise to
other routers. By default MTU is advertised. To specify to advertise MTU, in the interface
You can specify to include DNS configuration options in RA packets sent on device interfaces
and advertise to IPv6 hosts. IPv6 hosts that receive DNS configuration options can perform auto-
matic DNS configuration. DNS configuration options include:
l RDNSS (Recursive DNS Server) configuration option: This option contains the IP addresses
of recursive DNS servers. IPv6 hosts use recursive DNS servers for DNS name resolution.
l DNSSL (DNS Search List) configuration option: This option is a list of DNS suffix domain
names. IPv6 hosts searches for short, unqualified domain names from this list when they per-
form DNS query .
To specify the RDNSS configuration option, in the interface configuration mode, use the fol-
lowing command:
ipv6 nd ra dns server {suppress | ipv6-addresslifetime {infinite | rdnss-life}}
l suppress - After this parameter is configured, RA packets sent on the specified interface no
longer deliver the RDNSS configuration option.
l lifetime {infinite | rdnss-life} - Specifies the valid time of the RDNSS configuration option.
If infinite is specified, the option will be valid permanently. If rdnss-life is configured, the
value range is 0 to 4294967295 seconds.
l suppress - After this parameter is configured, RA packets sent on the specified interface no
longer deliver the DNSSL configuration option.
l lifetime {infinite | dnssl-life} - Specifies the valid time of the DNSSL configuration option.
If infinite is specified, the option will be valid permanently. If dnssl-life is configured, the
value range is 0 to 4294967295 seconds.
To cancel the specified DNSSL configuration option, in the interface configuration mode, use the
following command:
no ipv6 nd ra dns search-list {suppress | list}
You can notify the connected hosts whether to obtain IP addresses and other configuration para-
meters via auto-config method (e.g., DHCP) by specifying an auto-config type flag in the RA pack-
ets. To specify to obtain IP addresses via auto-config, in the interface configuration mode, use the
following command:
ipv6 nd managed-config-flag
To cancel the above configuration, in the interface configuration mode, use the command no ipv6
nd managed-config-flag.
To specify to obtain other configuration parameters other than IP addresses via auto-config, in the
interface configuration mode, use the following command:
ipv6 nd other-config-flag
RA packets will advertise the IPv6 prefix of interface. You can also specify the IPv6 prefix to be
advertised, and configure its related parameters. In the interface configuration mode, use the fol-
lowing command:
ipv6 nd prefix {ipv6-prefix/M | default} [no-advertise | [valid-lifetime preferred-lifetime [off-
link | no-autoconfig]]] | [at valid-date [ preferred-date [off-link | no-autoconfig]]]
l valid-lifetime – Specifies valid lifetime for the IPv6 prefix. The value range is 0 to
4294967295 seconds. The default value is 2592000 (30 days).
l preferred-lifetime – Specifies the preferred lifetime for the IPv6 prefix. The default value is
604800 (7 days). The preferred lifetime should not be larger than the valid lifetime.
l off-link – Specifies off-link status for the prefix, i.e., the node that receives the RA packets
will not write the prefix to its own routing table; if the prefix already exists in the routing
table, the node will delete it.
l no-autoconfig – Advertises the host that receives the packets not to use the prefix as an
IPv6 auto-configured address.
l valid-date – Specifies a valid date for the prefix, i.e., the prefix is only valid before the date.
The format is MM/DD/YYYY HH:MM, such as 09/20/2010 09:30.
l preferred-date – Specifies a preferred valid date for the prefix. The format is
MM/DD/YYYY HH:MM. This date must be earlier than the valid date.
Specifying a RA Interval
RA interval refers to the interval at which interface sends RA packets. This interval should not be
larger than the lifetime of RA packets configured via CLI. To reduce the possibility of sending
RA packets simultaneously with other routers on the same link, the system usually select a ran-
dom number between the maximum and minimum interval as the actual RA interval. To configure
a RA interval, in the interface configuration mode, use the following command:
ipv6 nd ra interval max-interval [min-interval]
l max-interval – Specifies the maximum interval. The value range is4 to 1800 seconds. The
default value is 600.
l min-interval – Specifies the minimum interval. The value range is 3 to 1350 seconds. The
minimum interval should not be larger than 75% of the maximum interval and must be larger
than 3. If this parameter is not specified, the system will use 1/3 of the maximum interval as
the minimum interval.
To restore to the default RA interval, in the interface configuration mode, use the following com-
mand:
no ipv6 nd ra interval
Specifying RA Lifetime
RA lifetime refers to the valid time during which the router is used as the default router of the
interface. To specify RA lifetime, in the interface configuration mode, use the following com-
mand:
ipv6 nd ra lifetime time
To restore to the default RA lifetime, in the interface configuration mode, use the following com-
mand:
no ipv6 nd ra lifetime
Specifying DRP
DRP is the abbreviation for Default Router Preference. When a node receives an equal-cost route
from different routers, it will select a preferred router based on DRP. To specify DRP, in the inter-
face configuration mode, use the following command:
ipv6 nd router-preference {high | medium | low}
To restore to the default value, in the interface configuration mode, use the following command:
no ipv6 nd router-preference
l slot slot-num – Shows IPv6 neighbor cache entries of the specified slot. Only for some
devices (X6150, X6180, X7180, X10800).
l vrouter vr-name – Shows IPv6 neighbor cache entries of the specified VRouter.
To add a static IPv6 cache entry, in the global configuration mode, use the following command:
ipv6 neighbor ipv6-address interface-name mac-address
To delete a static IPv6 cache entry, in the global configuration mode, use the following command:
clear ipv6 neighbor [ipv6-address] [vrouter vr-name]
l vrouter vr-name – Deletes the IPv6 neighbor cache entries of the specified VRouter.
l To export the configuration file: export configuration {{startup | backup} number} to {ftp
server ipv6-address [vrouter vrouter-name] [user username password string] | tftp server ipv6-
address [vrouter vrouter-name]} [file-name]
l To export the system firmware: export image name to {ftp server ipv6-address [vrouter
vrouter-name] [user username password string] | tftp server ipv6-address} [file-name]
l To export the license: export license name to {ftp server ipv6-address [user username pass-
word string] | tftp server ipv6-address} [file-name]
l To export logs: export log { event | security} to {ftp server ipv6-address [user username pass-
word string] | tftp server ipv6-address} [file-name]
l To export the PKI certificate: export pki trust-domain-name {cacert | cert | pkcs12 pass-
word} to {ftp server ipv6-address [user username password string] | tftp server ipv6-address}
[file-name]
l To export the SCVPN user-host binding list: export scvpn user-host-binding to {ftp server
ipv6-address [user username password string] | tftp server ipv6-address} [file-name]
l To export the URL database: export urlfilter-database to {ftp server ipv6-address [user user-
name password string] | tftp server ipv6-address} [file-name]
l To import the application signature database: import application-signature from {ftp server
ipv6-address [user username password string] | tftp server ipv6-address} file-name
l To import the configuration file: import configuration from {ftp server ipv6-address [user
username password string] | tftp server ipv6-address} file-name
l To import the customized picture for SCVPN or WebAuth webpage: import customize
{scvpn • To import the license:| webauth} from {ftp server ipv6-address [user username pass-
word string] | tftp server ipv6-address} file-name
l To import the system firmware: import image from {ftp server ipv6-address [user username
password string] | tftp server ipv6-address} file-name
l To import the ISP file: import ispfile from {ftp server ipv6-address [user username password
string] | tftp server ipv6-address} file-name
l To import the license: import license from {ftp server ipv6-address [user username password
string] | tftp server ipv6-address} file-name
l To import the PKI license: import pki trust-domain-name {cacert | cert | pkcs12 password}
from{ftp server ipv6-address [user username password string] | tftp server ipv6-address} file-
name
l To import the SCVPN user-host binding list: import scvpn user-host-binding from {ftp server
ipv6-address [user username password string] | tftp server ipv6-address} file-name
Tip: For more detailed information about the command parameters, see related
chapters.
l community string – Specifies the community string. The length is 1 to 31 bits. The com-
munity string is a password between the management and proxy processes; therefore, SNMP
packets with inconsistent community strings will be dropped. This parameter only applies for
SNMP v1 and v2C.
l ro | rw – Specifies a privilege for the community string. ro stands for read-only, and such a
community string can only read information in the MIB; rw stands for read-write, and such a
community string can not only read but also modify information in the MIB. This parameter is
To delete the specified IPv6 management host, in the global configuration mode, use the com-
mand no snmp-server ipv6-host {host-name | ipv6-address}.
l ipv6-source-ip ipv6-address - Specifies the source IPv6 address that sends SNMP trap pack-
ets.
l port port-number – Specifies the port number of the destination host that receives trap pack-
ets. The value range is 1 to 65535. The default value is 162.
To delete the specified trap destination host, in the global configuration mode, use the command
no snmp-server ipv6-trap-host ipv6-address [ipv6-source-ip].
l group group-name – Specifies a user group defined in the system for the user.
l ipv6-remote ipv6-address – Specifies the IPv6 address of the remote management host.
l auth-protocol {md5 | sha} – Specifies the authentication protocol as MD5 or SHA. If this
parameter is not specified, the default security level will be no authentication and no encryp-
tion.
The system supports up to 25 users. To delete the specified user, in the global configuration
mode, use the command no snmp-server user user-name.
l ipv6-address – Specifies the destination address to which ping packets are sent.
l count number – Specifies the number of ping packets. The value range is 1 to 65535. The
default value is 5.
l size number – Specifies the size of ping packets. The length is 28 to 65535 bytes.
l source {ipv6-address | interface-name} – Specifies the source address where ping packets
originate. It can be either an IP address or an interface.
l timeout time – Specifies timeout for ping packets. The value range is 0 to 3600 seconds.
The default value is 0, i.e., never timeout.
l vrouter-name – Specifies the name of VRouter, and enter the VRouter configuration mode.
l distance-value – Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l weight-value – Specifies the weight of traffic forwarding in load balance. The value range is 1
to 255. The default value is 1.
l track track-name– Specify the name of a created track object. When the track fails, the route
will be invalid.
l A.B.C.D | interface-name | vrouter vrouter-name – Specifies the next hop which can be a
gateway address (ipv6-address) , VRouter(vrouter vrouter-name)or an interface (interface-
name).
l distance-value – Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l weight-value – Specifies the weight of traffic forwarding in load balance. The value range is 1
to 255. The default value is 1.
l track track-name– Specify the name of a created track object. When the track fails, the route
will be invalid.
l ipv6-address | interface-name | vrouter vrouter-name – Specifies the next hop which can be
a gateway address (ipv6-address) , VRouter(vrouter vrouter-name) or an interface (inter-
face-name).
l distance-value – Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l weight-value – Specifies the weight of traffic forwarding in load balance. The value range is
1 to 255. The default value is 1.
l track track-name– Specify the name of a created track object. When the track fails, the route
will be invalid.
l ipv6-address | interface-name | vrouter vrouter-name – Specifies the next hop which can be
a gateway address (ipv6-address) , VRouter(vrouter vrouter-name) or an interface (inter-
face-name).
l distance-value – Specifies the administration distance of the route. This parameter is used to
determine the precedence of the route. The smaller the value is, the higher the precedence is.
If multiple routes are available, the route with higher precedence will be prioritized. The value
range is 1 to 255. The default value is 1. When the value is set to 255, the route is invalid.
l weight-value – Specifies the weight of traffic forwarding in load balance. The value range is 1
to 255. The default value is 1.
l track track-name– Specify the name of a created track object. When the track fails, the route
will be invalid.
l To view connected route information: show ipv6 route connected [vrouter vr-name]
l To view routing information of the specified destination address: show ipv6 route ipv6-
address/[M] [vrouter vr-name]
l To view IPv6 routes statistics: show ipv6 route summary [vrouter vr-name]
l To view IPv6 FIB information: show ipv6 fib [source | source in-interface interface-name |
ipv6-address/[M] | summary] [vrouter vr-name]
Configuring RIPng
RIPng (RIP next generation) is an extension to the RIP-2 in IPv4. Most concepts of RIP are
applicable to RIPng.
Compared with RIP, RIPng modifies following items:
l UDP port: Uses the UDP port 521 to send and receive routing information.
l Multicast address: Uses FF02::9 as the multicast address of the RIPng router in the local-link
address range.
l Prefix length: The destination address uses prefix length of 128 bits.
RIPng configuration includes basic options, redistribute, passive IF, network and distance.
Besides, you also need to configure RIP parameters for different interfaces, including split hori-
zon and poison reverse.
Basic Options
The basic options of RIPng configuration include metric, distance, information originate and
timer (update interval, invalid time, and flush time). You can configure RIPng protocol for dif-
ferent VRouter respectively. The basic options of RIPng must be configured in the RIPng routing
configuration mode. To enter the RIPng routing configuration mode, in the global configuration
mode, use the following commands:
ip vrouter vrouter-name (enters the VRouter configuration mode)
ipv6 router rip (enters the RIPng routing configuration mode, and at the same time enables the
RIPng function on the device. Each RIPng process is individual and you can create one RIPng
process in a VRouter.)
To disable the RIPng function, in the VRouter configuration mode, use the command no ipv6
router rip.
RIPng measures the distance to the destination network by counting the number of hops. This dis-
tance is known as metric. The metric from a router to a directly connected network is 1, and incre-
ments by 1 for every additional router between them. The maximum metric is 15, and the
network with metric larger than 15 is not reachable. The default metric will take effect when the
route is redistributed. To specify the default metric, in the RIPng routing configuration mode, use
the following command:
default-metric value
l value – Specifies the default metric value. The value range is 1 to 15. If no value is specified,
the value of 1 will be used.
To specify the default distance for RIPng, in the RIPng routing configuration mode, use the fol-
lowing command:
distance distance-value
l distance-value – Specifies the default administration distance value. The value range is 1 to
255. If no value is specified, the value of 120 will be used.
To restore to the distance value of 120, in the RIPng routing configuration mode, use the com-
mand no distance.
Specifying a Timer
The timers you can configure for RIPng include update interval, invalid time, holddown time and
flush time, as described below:
l Update interval: Specifies the interval at which all RIPng routes will be sent to all the neigh-
bors. The default value is 30 seconds.
l Invalid time: If a route has not been updated for the invalid time, its metric will be set to 16,
indicating an unreachable route. The default value is 180 seconds.
l Flush time: StoneOS will keep on sending the unreachable routes (metric set to 16) to other
routers during the flush time. If the route still has not been updated after the flush time ends,
it will be deleted from the RIPng information database. The default value is 240 seconds.
To modify the above three timers, in the RIPng routing configuration mode, use the following
command:
timers basic interval-time invalid-time flush-time
l invalid-time – Specifies the invalid time. The value range is 1 to 16777215 seconds. The
default value is 180.
l flush-time – Specifies the flush time. The value range is 1 to 16777215 seconds. The default
value is 120.
To restore to the default timer value, in the RIPng routing configuration mode, use the command
no timers basic.
You can specify if the default route will be redistributed to other routers with RIPng enabled. By
default RIPng will not redistribute the default route. To configure the default information ori-
ginate, in the RIPng routing configuration mode, use the following commands:
Configuring Redistribute
RIPng allows you to introduce information from other routing protocols (IPv6 BGP, connected,
static, OSPFv3 and IS-IS) and redistribute the information. To configure the redistribute metric,
in the RIP routing configuration mode, use the following commands:
redistribute {bgp | connected | static | ospf | isis} [metric value]
l bgp | connected | static | ospf – Specifies the protocol type: IPv6 BGP (bgp), connected
route (connected), static route (static) , OSPFv3 (OSPF) or IS-IS (isis).
l metric value – Specifies a metric value for the redistribute. The value range is 1 to 15. If the
value is not specified, the system will use the default metric configured by the command
default-metric value.
Configuring a Network
You can configure some networks so that only the interfaces within the specified networks can
receive and send RIPng update. To configure a network, in the RIPng routing configuration
mode, use the following command:
network {interface-name | X:X:X:X::X/M}
l interface-name – Specified the interface name. This interface is located at the network that
you want to specify.
Configuring a Passive IF
You can configure some interfaces to only receive but not to send data. This kind of interfaces is
known as a passive interface. To configure a passive interface, in the RIPng routing configuration
mode, use the following command:
passive-interface interface-name
When using split horizon, routes learned from an interface will not be sent from the same inter-
face, in order to avoid routing loop and assure correct broadcasting to some extent. To enable or
disable split horizon, in the interface configuration mode, use the following commands:
When using poison reverse, RIPng will send the poison messages to all neighbor routers, includ-
ing the router whose sends the poison message, and will not obey the split horizon rule. This
poison message advertise the invalid route. To configure the poison reverser function , use the fol-
lowing command in the interface configuration mode:
To view the RIPng information, in any mode, use the following command:
show ipv6 rip
To view the RIPng route information, in any mode, use the following command:
show ip route rip [vrouter vrouter-name]
When a Hillstone device is running RIPng, it will own a RIPng route database which can store all
routing entries for all the reachable networks. The routing entry information includes destination
address, next hop, metric, source, and timer information. To view the RIPng database inform-
ation, in any mode, use the following command:
show ipv6 rip database [vrouter vrouter-name]
Configuring OSPFv3
OSPFv3 is the third version of Open Shortest Path First and it mainly provides the support of
IPv6.
The similarities between OSPFv3 and OSPFv2 are as follows:
l Both protocols use the Hello packets, DD (database description) packets, LSR (link state
request) packets, LSU (link state update) packets, and LSAck (link state acknowledgment)
packets.
l Both protocols use the same mechanisms of finding neighbors and establishing adjacencies.
l Both protocols use the same mechanisms of LSA flooding and aging
l OSPFv3 identifies neighbors by Router ID, and OSPFv2 identifies neighbors by IP address.
You can configure the OSPFv3 protocol for each VRouter respectively. Configuring OSPFv3
includes the following options:
l Configuring a Router ID
l Configuring redistribute
The basic options of OSPFv3 protocol must be configured in the OSPFv3 routing mode. To
enter the OSPFv3 routing mode, in the global configuration mode, use the following commands:
ip vrouter vrouter-name (enters the VRouter configuration mode)
ipv6 router ospf [process-id] (enters the OSPFv3 routing configuration mode, and at the same
time enables OSPFv3 on the device.)
l process-id - Specifies the OSPFv3 process ID. If not specified, process 1 will be used by
default. Each OSPFv3 process is individual, and has its own link state database and the related
OSPFv3 routing table. Each VRouter supports up to four OSPFv3 processes, and multiple
processes maintain a routing table together. Each OSPFv3 process can redistribute OSPFv3
routes from other OSPFv3 processes, as well as routes from other IPv6 routing protocols
(static, connected, IPv6BGP, RIPng and ISISv6).
l When other routing protocols attempt to redistribute OSPFv3 routes, only the routing inform-
ation of process 1 will be redistributed.
To disable OSPFv3, in the VRouter configuration mode, use the command no ipv6 router ospf.
Configuring a Router ID
Each router running OSPFv3 protocol must be labeled with a Router ID. The Router ID is the
unique identifier of an individual router in the whole OSPFv3 domain, represented in the form of
an IP address. To configure a Router ID for the Hillstone device that is running OSPFv3 pro-
tocol, in the OSPF routing mode, use the following command:
router-id A.B.C.D [local]
l local - Specifies the Router ID as a local configuration. This kind of configuration is applic-
able to HA Peer mode, and is not synchronized to HA configuration. By default the router ID
is not a local configuration.
OSPFv3 can use IPsec Authentication Header (AH) and IPSec Encapsulating Security Payload
(ESP) header capabilities to achieve encryption and authentication between neighbor devices.
You can enable encryption and authentication for an OSPFv3 area and on an interface within the
OSPFv3 area.
l When you need to protect all OSPFv3 packets in an area, you can enable encryption and
authentication for this area. In this case, all devices in this area needs to be configured the
same encryption and authentication policy, including the authentication method, SIP value,
l When you need to protect OSPFv3 packets of a specified interface within an area, you can
enable encryption and authentication on this interface. In this case, the interface of the dir-
ectly connected neighbor needs to be configured with the same encryption and authentication
policy, including the authentication method, SIP value, authentication algorithm, authen-
tication key, etc.
Take note of the following rules for the Cryptographic Authentication function of the OSPFv3
route:
l If the Cryptographic Authentication function is enabled in an area and disabled for all inter-
faces in this area, the encryption and authentication policy of the area is applied to these inter-
faces.
l If the Cryptographic Authentication function is enabled for both an interface and the area
where the interface belongs and the authentication types of the interface and the area are dif-
ferent and the authentication method of the interface is neither AH NULL nor ESP NULL,
the encryption and authentication policy of the interface takes effect.
l If the Cryptographic Authentication function is enabled for the area where the interface
belongs and the authentication types of the interface and the area are different and the authen-
tication method of the interface is NULL, the encryption and authentication policy of the area
is applied to the interface. For example, if the area where the interface belongs is configured
with AH authentication and the interface is configured with ESP NULL, the encryption and
authentication policy of this area is applied to this interface.
l Both the interface and the area where the interface belongs can be configured with one authen-
tication method.
To enable AH authentication for an area, use the following command in OSPFv3 routing mode:
area { id | A.B.C.D } authentication ipsec spispi-id {md5 | sha1} authentication-key
l id | A.B.C.D– Specifies the area ID of OSPFv3, which can be a 32-bit digital number, or an
IP address.
l spi-id – Specifies the Security Parameter Index (SPI) value. Valid values: 256 to
4294967295. The receiver authenticates received packets by using the SPI value.
l authentication-key – Specifies the authentication key in the hexadecimal string format in the
OSPFv3 area. The authentication algorithms include MD5 and SHA1.
In OSPFv3 routing mode, use the no area { id | A.B.C.D } authentication ipsec spispi-id com-
mand to disable AH authentication for a specified area.
In interface configuration mode, use the no ipv6 ospf authentication {ipsec spispi-id | null} com-
mand to cancel the configuration.
To enable ESP authentication for an area, use the following command in OSPFv3 routing mode:
area { id | A.B.C.D } encryption ipsec spispi-idesp {3desencryption-key | aes-cbc {128 | 192 |
256} encryption-key | desencryption-key | null} {md5 | sha1} authentication-key
l id | A.B.C.D– Specifies the area ID of OSPFv3, which can be a 32-bit digital number, or an
IP address.
l spi-id – Specifies the SPI value. Valid values: 256 to 4294967295. The receiver authen-
ticates received packets by using the SPI value.
To enable ESP authentication on an interface, use the following command in interface con-
figuration mode:
ipv6 ospf encryption { ipsec spispi-idesp {3desencryption-key | aes-cbc {128 | 192 | 256}
encryption-key | desencryption-key | null} {md5 | sha1} authentication-key | null}
l spi-id – Specifies the SPI value. Valid values: 256 to 4294967295. The receiver authen-
ticates received packets by using the SPI value.
l null – Specifies that no ESP authentication is enabled on the interface., which is applicable
to the scenario where ESP authentication is enabled for an area but is disabled for packets of
the interface within this area.
In interface configuration mode, use the no ipv6 ospf encryption {ipsec spispi-id | null} com-
mand to cancel the configuration.
Virtual link is used to connect the discontinuous backbone areas, so that they can maintain logical
continuity. To configure virtual link parameters and its timer parameters, in the OSPFv3 routing
mode, use the following command:
area { id | A.B.C.D } virtual-link A.B.C.D
The default metric configured here will take effect if the redistributed route has no configured
metric. To specify the default metric for OSPFv3, in the OSPFv3 routing configuration mode,
use the following command:
default-metric value
l value – Specifies the default metric value. The value range is 1 to 16777214.
To restore to the original metric value, in the OSPFv3 routing configuration mode, use the com-
mand no default-metric.
You can configure the default administrative distance according to the route type. To configure
the default administrative distance, in the OSPFv3 routing configuration mode, use the following
command:
distance {distance-value | ospf [intra-area distance-value | inter-area distance-value | external
distance-value}
l distance-value – You can configure the default administrative distance according to the route
type. To configure the default administrative distance, in the OSPFv3 routing configuration
mode, use the following command:
l intra-area distance-value – Specifies the administrative distance value of the intra-area route.
The default value is 110 and the value ranges from 1 to 255.
l inter-area distance-value – Specifies the administrative distance value of the inter-area route.
The default value is 110 and the value ranges from 1 to 255.
To restore to the value of 110, in the OSPFv3 routing configuration mode, use the command no
distance ospf.
You can specify if the default route will be redistributed to other routers. To configure the default
information originate, in the OSPFv3 routing configuration mode, use the following command:
default-information originate [always] [type {1|2}] [metric value]
l always – When using always, OSPFv3 of this router unconditionally generates and redis-
tributes the default route. If there is no default route in the current router, it will generate a
route whose next hop is the router itself. Without using always, the router will not redis-
tribute the default route if it has no one.
l type {1|2} – Specifies the type of the external route associated with the default route that
is sent to OSPFv3 routing area. 1 refers to type1 external route, 2 refers to type2 external
route.
l metric value – Specifies the metric value for the default route that will be sent. If no default
metric value is specified by this command or by the command default-metric value, then
OSPFv3 will use the value of 20. The value range is 0 to16777214.
To restore to the value of 20, in the OSPFv3 routing configuration mode, use the command no
default-information originate.
To specify the area and instance that the interface belongs to, in the OSPFv3 routing con-
figuration mode, use the following command:
ipv6 ospf process-id area { A.B.C.D | id} {instance id}
l area { A.B.C.D | id} – Specifies the area ID that the interface belongs to. The area ID is in
form of a 32-bit digital number, or an IP address.
l instance id – Specifies the instance ID that the interface belongs to. To establish the neigh-
bor relationship, interfaces must belong to the same instance. The value ranges from 0 to 255.
The default value is 0.
To cancel the area and instance configuration, in the OSPFv3 routing configuration mode, use the
command no ipv6 ospf area { A.B.C.D | id}.
Configuring Redistribute
OSPFv3 allows you to introduce information from other routing protocols (IPv6 BGP, con-
nected, static , IS-IS and RIPng) and redistribute the information. You can set the metric and type
of the external route for the redistribute. To configure the redistribute, in the OSPFv3 routing
configuration mode, use the following command:
redistribute {bgp | connected | static | isis | ripng | ospfv3 process-id} [type {1 | 2}] [metric
value]
l bgp | connected | static | isis | ripng – Specifies the protocol type which can be IPv6 BGP
(bgp), connected route (connected), static route (static) or OSPFv3 (OSPF).
l type {1|2} – Specifies the type of the external route. 1 refers to type1 external route, 2
refers type2 external route.
l metric value – Specifies a metric value for the redistribute. The value range is 0 to
16777214. If the value is not specified, the system will use the default OSPFv3 metric con-
figured by the command default-metric value.
You can configure some interfaces to only receive but not to send data. This kind of interfaces is
known as a passive interface. To configure a passive interface, in the interface configuration
mode, use the following command:
ipv6 ospf passive
Repeat the above command to configure more passive interfaces.
To cancel the specified passive interface, in the interface configuration mode, use the command
no ipv6 ospf passive.
There are four interface timers: the interval for sending Hello packets, the dead interval of adja-
cent routers, the interval for retransmitting LSA, and the transmit delay for updating packets.
To specify the interval for sending Hello packets for an interface, in the interface configuration
mode, use the following command:
ipv6 ospf hello-interval interval
l interval – Specifies the interval for sending Hello packets for an interface. The value range is
1 to 65535 seconds. The default value is 10. If the OSPFv3 interface chooses the point-to-
multipoint network type, the default value is 30.
To restore to the default interval, in the interface configuration mode, use the command no ipv6
ospf hello-interval.
If a router has not received the Hello packet from its peer for a certain period, it will determine
the peering router is dead. This period is known as the dead interval between the two adjacent
routers. To configure the dead interval for an interface, in the interface configuration mode, use
the following command:
ipv6 ospf dead-interval interval
To restore to the default dead interval, in the interface configuration mode, use the command no
ipv6 ospf dead-interval.
To specify the LSA retransmit interval for an interface, in the interface configuration mode, use
the following command:
ipv6 ospf retransmit-interval interval
l interval – Specifies the LSA retransmit interval for an interface. The value range is 3 to
65535 seconds. The default value is 5.
To restore to the default retransmit interval, in the interface configuration mode, use the com-
mand no ipv6 ospf retransmit-interval.
ipv6 ospf transmit-delay interval
l interval – Specifies the transmit delay for updating packet for an interface. The value range is
1 to 65535 seconds. The default value is 1.
To restore to the default transmit delay, in the interface configuration mode, use the command no
ipv6 ospf transmit-delay.
The router priority is used to determine which router will act as the designated router. The des-
ignated router will receive the link information of all the other routers in the network, and send
the received link information. To specify the router priority for an interface, in the interface con-
figuration mode, use the following command:
ipv6 ospf priority level
l level – Specifies the router priority. The value range is 0 to 255. The default value is 1. The
router with priority set to 0 will not be selected as the designated router. If two routers within
To restore to the default priority, in the interface configuration mode, use the command no ipv6
ospf priority.
You can use one of the following methods to configure the link cost for an interface:
l Specify the bandwidth reference value and OSPFv3 computes the cost automatically based on
the bandwidth reference value
To specify the cost directly, use the following command in the interface configuration mode:
ipv6 ospf cost cost-value
l bandwidth – Specifies the bandwidth reference value. The unit is Mbps, and the default
value is 100. The value ranges from 1 to 4294967. The cost equals to the value of dividing
interface bandwidth by the bandwidth reference value.
To restore the bandwidth reference value to the default value, use no auto-cost reference-band-
width.
OSPFv3 uses DBD packets to check whether the interface MTU set is matched or not between
the neighbors. If the MTU set is not matched, the neighbors cannot establish the adjacency. You
In OSPFv3, the network types of an interface have the following options: broadcast, point-to-
point, and point-to-multipoint. By default, the network type of an interface is broadcast. To con-
figure the network type of an interface, in the interface configuration mode, use the following
command:
ip v6 o sp f n etwo rk {p o in t-to -p o in t | p o in t-to -multip o in t}
To set the network type as the default broadcast type, use the following command:
n o ip v6 o sp f n etwo rk
Disable OSPFv3 protocol on interface, in the interface configuration mode, use ipv6 ospf shut-
down.
Enable OSPFv3 protocol on interface, in the interface configuration mode, use no ipv6 ospf shut-
down.
To view the OSPFv3 routing information of the Hillstone device, in any mode, use the following
command:
show ipv6 ospf [vrouter vrouter-name] [process process-id]
l vrouter-name - Shows the OSPF route information of the specified VRouter name. If the
VRouter is not specified, system will only show the protocol information of the trust-vr.
l process process-id - Shows the protocol information of the OSPFv3 with the specified pro-
cess ID. If the process ID is not specified, system will show the protocol information of all
OSPFv3 processes in the VRouter.
To view the OSPFv3 protocol’s database information of the Hillstone device, in any mode, use
the following commands:
show ipv6 ospf database
show ipv6 ospf database {inter-router | external | network | router | inter-prefix | link | intra-
prefix} [A.B.C.D] [{adv-router A.B.C.D} | self-originate] [vrouter vrouter-name] [process pro-
cess-id]
l inter-router – Shows the LSAs originated by ABRs and these LSAs are flooded throughout
the LSA's associated area. Each inter-router LSA describes a route to ASBR.
l external – Shows the LSAs originate by ASBRs and these LSAs are flooded throughout the
AS (except Stub and NSSA areas). Each external LSA describes a route to another AS.
l network – Shows the LSAs of the network. These LSAs are originated for broadcast and
NBMA networks by the designated router. This LSA contains the list of routers connected to
the network, and is flooded throughout a single area only.
l router – Shows the LSAs of the router. These LSAs are originated by all routers. This LSA
describes the collected states of the router's interfaces to an area, and is flooded throughout a
single area only.
l link – Shows the LSAs originated by a router. This link LSA is originated for each link and it
has link-local flooding scope. Each link LSA describes the IPv6 address prefix of the link and
link-local address of the router.
l intra-prefix - Shows the LSAs that contains IPv6 prefix information on a router, stub area or
transit area information, and it has area flooding scope. The intra-prefix LSAs were introduced
because router LSAs and network LSAs contain no address information now.
l vrouter-name - Specifies the VRouter name. If the VRouter is not specified, system will only
show the database information of all OSPFv3 processes in the trust-vr.
l process process-id - Shows the database information of the OSPFv3 with the specified pro-
cess ID. If the process ID is not specified, system will show the database information of all
OSPFv3 processes in the VRouter.
To view the OSPF interface information, in any mode, use the following command:
show ipv6 ospf interface [interface-name] [vrouter vrouter-name] [process process-id]
To view the OSPF neighbor information, in any mode, use the following command:
show ip ospf neighbor [A.B.C.D | detail][vrouter vrouter-name] [process process-id]
To view the OSPF border router information, in any mode, use the following command:
show ipv6 ospf border-routers [A.B.C.D][vrouter vrouter-name] [process process-id]
To view the OSPF route information, in any mode, use the following command:
show ip ospf route [X:X:X:X::X/M [vrouter vrouter-name] [process process-id]
l Configuring a timer
l Configuring description
l Activating a connection
To configure the settings of IPv6 unicast route, you must enter into the IPv6 unicast routing con-
figuration mode. Execute the following command in the BGP instance configuration mode:
address-family ipv6 unicast
IPv6 BGP supports IPv6 unicast route redistribute. It allows users to introduce information from
other routing protocols (connected, IS-IS, static, OSPFv3 and RIPng) and redistribute the inform-
ation. To configure the redistribute metric, in the IPv6 unicast routing configuration mode, use
the following command:
redistribute {ospf | isis| connected | static | rip} [metric value]
l ospf | isis| connected | static | rip – Specifies the protocol type which can be connected
route (connected), IS-IS (isis), static route (static), RIPng (rip) or OSPFv3 (ospf).
l metric value – Specifies the redistribute metric value. The value range is 0 to 4294967295.
By default, the IPv6 BGP connection between the configured BGP peer or peer group and the
device is activated. You can de-activate or re-activate the IPv6 BGP connection. To activate the
IPv6 BGP connection, in the IPv6 unicast routing configuration mode, use the following com-
mand:
neighbor {X:X:X:X::X | A.B.C.D | peer-group} activate
To de-activate the IPv6 BGP connection to the specified BGP peer or peer group, in the IPv6
unicast routing configuration mode, use the following command:
no neighbor {X:X:X:X::X | A.B.C.D | peer-group} activate
To configure the upper limit of prefixes that can be received from IPv6 peer/peer group, use the
following command in the IPv6 unicast routing configuration mode:
neighbor {X:X:X:X::X | A.B.C.D | peer-group} send-community {standard | extended | both}
l {X:X:X:X::X | A.B.C.D | peer-group} – Specifies the IPv4/IPv6 address of the peer or the
name of the peer group.
l standard | extended | both – Specifies the type of the communities path attributes. There
are three types: standard means the standard communities path attributes, extended means the
extended communities path attributes, and both means both of the communities path attrib-
utes and extended communities path attributes.
To configure the upper limit of prefixes that can be received from IPv6 peer/peer group, use the
following command in the IPv6 unicast routing configuration mode:
neighbor {X:X:X:X::X | A.B.C.D | peer-group} maximum-prefix maximum [threshold] [restart
restart-interval] [warning-only]
l {X:X:X:X::X | A.B.C.D | peer-group} – Specifies the IPv4/IPv6 address of the peer or the
name of the peer group.
l threshold – Specifies the threshold that will trigger the generation of log information. The
default value is 75, and it ranges from 1 to 100.
l restart restart-interval – After the received prefixes reaches the threshold, the connection to
the peer will be disconnected and the connection will be re-established after the specified
interval here. The unit is minute and the value ranges from 1 to 65535.
l warning-only – After the received prefixes reaches the threshold, the system generates the
corresponding log information.
To view the routing information of the entire IPv6 BGP routing table, in any mode, use the fol-
lowing command:
show ip bgp ipv6 unicast {X:X:X:X::X/Mask | vrouter vrouter-name}
l X:X:X:X::X/Mask – Shows the IPv6 BGP routing information of the specified network.
l vrouter-name - Shows the IPv6 BGP routing information of the specified VRouter.
To view the status parameters of all BGP connections, including the prefix, path, attribute, etc.,
in any mode, use the following command:
show ip bgp ipv6 unicast summary [vrouter vrouter-name]
l vrouter-name - Shows the IPv6 BGP routing information of the specified VRouter.
To view the BGP peer status, in any mode, use the following command:
show ip bgp ipv6 unicast neighbor [ X:X:X:X::X | A.B.C.D ] [vrouter vrouter-name]
l vrouter-name - Shows the IPv6 IPv6 BGP routing information of the specified VRouter.
To create a PBR policy, in the global configuration mode, use the following command:
pbr-policy name
l name – Specifies the name of the PBR policy. The length is 1 to 31 characters. If the policy
exists, the system will directly enter the PBR policy configuration mode.
To delete the specified PBR policy, use the command no pbr-policy name.
To create a IPv6 PBR rule, in the PBR policy configuration mode, use the following command:
match-v6 [id rule-id] [before rule-id | after rule-id | top] src-addr dst-addr service-name [applic-
ation-name] nexthop {interface-name | A.B.C.D | vrouter vrouter-name | vsys vsys-name}
[weight value] [track track-object-name]
l before rule-id | after rule-id | top – Specifies the position of the PBR rule. The new PBR
rule can be located before a rule (before rule-id), after a rule (after rule-id) or at the top of all
the rules (top ). By default, the system will put the new rule at the end of all the rules.
l src-addr – Specifies the source address which should be an entry defined in the address
book. The address should be IPv6 address.
l dst-addr – Specify the destination address which should be an entry defined in the address
book. The address should be IPv6 address.
l service-name – Specifies the name of the service. service-name should be the service
defined in the service book.
l weight value – Specifies the weight for the next hop. The value range is 1 to 255. The
default value is 1. If a PBR rule is configured with multiple next hops, the system will dis-
tribute the traffic in proportion to the corresponding weight.
l track track-object-name – Specifies the track object for the next hop. If the track object
fails, the PBR rule will fail as well. For more information about track object, see “Con-
figuring a Track Object” in “System Management”.
To delete the specified rule, in the PBR policy configuration mode, use the following command:
l id id – Specifies the ID of the new PBR rule. If no ID is specified, the system will auto-
matically assign an ID. The rule ID must be unique in the whole system. However, the PBR
rule ID is not related to the matching sequence.
l top | before rule-id | after rule-id – Specifies the position of the PBR rule. The new PBR
rule can be located before a rule (before rule-id), after a rule (after rule-id) or at the top of all
the rules (top ). By default, the system will put the newly created rule at the end of all the
rules.
l Configuring redistribute
By default, the IPv6 IS-IS function is disabled at the interface. After creating an IS-IS process at
the current router, proceed to enable the IPv6 IS-IS function at the interface. Use the following
command in the interface configuration mode:
isis ipv6 enable
The metric is used to calculate the cost to the destination network via the selected link. To con-
figure the metric of the link where the interface locates in IPv6 network, use the following com-
mand in the interface configuration mode:
isis ipv6 metric value [level-1 | level-2]
l value – Configure the metric value of the link that the interface locates. The value ranges
from 1 to 16777214 and the default value is 10.
l level-1 | level-2 – Use level-1 to configure the metric value for Level-1 routes. Use level-2
to configure the metric value for Level-2 routes. Without specifying level-1 or level-2, the
metric value is effective for both Level-1 and Level-2 routes.
Use the no isis ipv6 metric command to restore the metric value to the default one.
To configure the settings for IPv6 IS-IS unicast route, you must enter into the IPv6 unicast rout-
ing configuration mode. Execute the following commands to enter into this configuration mode:
ip vrouter vrouter-name – In the global configuration mode, execute this command to enter into
the VRouter configuration mode.
router isis – Enter into the IS-IS routing configuration mode and create the IS-IS process. The
IS-IS processes in each VRouter are independent.
address-family ipv6 unicast - Enter into the IPv6 unicast routing configuration mode.
The default IPv6 route in the introduced routing information will not be used by the routers. To
advertise the default IPv6 route in the routing domain, in the IS-IS IPv6 unicast routing con-
figuration mode, use the following command:
default-information originate
To configure the administrative distance of the IPv6 IS-IS route, use the following command in
the IS-IS IPv6 unicast routing configuration mode:
distance distance-value
l distance-value – Specify the administrative distance. The value ranges from 1 to 255. The
default value is 115.
To restore the value to the default one, use the no distance command.
Configuring Redistribute
IPv6 IS-IS allows you to introduce routing information from other routing protocols (connected,
static, OSPFv3, IPv6 BGP and RIPng) and redistribute the information. To configure the redis-
tribute and the corresponding metric, in the IS-IS IPv6 unicast routing configuration mode, use
the following commands:
redistribute {connected | static | ospf | bgp | rip} [level-1 | level-1-2 | level-2] [metric value]
[metric-type {external | internal}]
l connected | static | ospf | bgp | rip – Specifies the protocol type which can be connected,
static, OSPF(OSPFv3), bgp(IPv6 BGP), or rip(RIPng).
l level-1 | level-1-2 | level-2 – Specifies the level for the introduced route, including the
level-1 route (level-1), level-2 route (level-2), and both levels (level-1-2).
l metric value – Specifies a metric value for the introduced route. The value range is 0 to
4294967296. The default value is 0. When the metric type of the router is narrow, the metric
value of the introduced route cannot exceed 63.
To cancel the redistribute configurations, use the no redistribute {connected | static | ospf | bgp
| rip} [level-1 | level-1-2 | level-2] command.
If a router is lack of resources, its LSDB might be inaccurate or incomplete. You can configure
the overload bit for this router, which will suppress the advertisement of the introduced routes.
The routes introduced from other routing protocol will not be advertised. And this reduces the
number of packets that are forwarded via this router. However, the packets whose destination is
the directly connected network of this router or the packets whose destination is within the same
routing domain, can be forwarded to this router as before. To configure the overload bit for the
router, use the following command in the IS-IS IPv6 unicast routing configuration mode:
set-overload-bit suppress external
To cancel the overload bit configuration, use the command no set-overload-bit.
If the LSDB changes, the router will re-calculate the SPF. To configure the SPF calculation inter-
val for IPv6 IS-IS, use the following command in the IPv6 IS-IS unicast routing configuration
mode:
spf-interval value [level-1 | level-2]
l value – Specify the SPF calculation interval. The value ranges from 1 to 120. The default
value is 10. The unit is second.
l level-1 | level-2 – Enter level-1 to specify the SPF calculation interval for level-1 SPFs only,
and enter level-2 to specify the SPF generation interval for level-2 SPFs only. If you enter no
parameter, the configured interval value will be used for both level-1 SPFs and level-2 SPFs.
When using IPv6 IS-IS, the device supports both unique topology routing and multiple-topology
routing. When using unique topology routing, the device calculates the mixed routing for both
IPv4 topo and IPv6 topo.
When using multiple-topology routing, the device will perform the SFP calculation for IPv4 topo
and IPv6 topo individually, and generate the routing information individually.
By default, the system uses the unique topology routing. To enable the multiple-topology routing,
first change the metric type to wide in the IS-IS routing configuration mode by using the metric-
style wide command. Then perform the following command in the IS-IS IPv6 unicast routing con-
figuration mode:
multi-topology
To disable the multiple-topology routing, use the command no multi-topology.
To show the routing information of the IPv6 IS-IS, use the following command in any mode:
show isis ipv6 route
To show the IS-IS process and corresponding information, use the following command in any
mode:
show isis [vrouter vrouter-name]
To show the link state database, use the following command in any mode:
show isis database [detail] [vrouter vrouter-name]
To show the IS-IS interface information, use the following command in any mode:
To create an IPv6 static multicast route entry, in the VRouter configuration mode, use the fol-
lowing command:
ip v6 mro ute X.X.X.X::X X.X.X.X::X [iif interface-name ] [eif interface-name ]
l X.X.X.X::X X.X.X.X::X - Specifies the multicast source address and multicast address. The
first X.X.X.X::X is the IPv6 address of the multicast source, and the second X.X.X.X::X is
the IPv6 multicast address.
l iif interface-name - Specifies an ingress interface. You can specify up to two ingress interfaces.
l eif interface-name - Specifies an egress interface. You can specify up to four egress interfaces.
To delete the specified IPv6 static multicast route entry, in the VRouter configuration mode, use
the following command:
n o ip v6 mro ute X.X.X.X::X X.X.X.X::X
You can configure an ingress or egress interface for the existing IPv6 static multicast route entry.
Each multicast route entry can have up to two ingress interfaces, and up to 32 egress interfaces.
The options of ingress and egress interface must be configured in the IPv6 static multicast route
configuration mode. To enter the IPv6 static multicast route configuration mode, in the VRouter
configuration mode, use the following command:
ip v6 mro ute X.X.X.X::X X.X.X.X::X
To specify an ingress and egress interface for the existing IPv6 static multicast routing entry, in
the IPv6 static multicast route configuration mode, use the following command:
To view the IPv6 multicast route information, in any mode, use the following command:
sh o w ip v6 mro ute [ X.X.X.X::X X.X.X.X::X | summary] [vro uter vr-name ]
l show ipv6 mroute - Shows all the IPv6 multicast route information.
l X.X.X.X::X X.X.X.X::X - Shows the multicast route information of the specified multicast
source address and multicast address. The first X.X.X.X::X is the IPv6 address of the mul-
ticast source, and the second X.X.X.X::X is the IPv6 multicast address.
l vrouter vr-name - Shows the IPv6 multicast route information of the specified VRouter.
To view the IPv6 multicast FIB information, in any mode, use the following command:
sh o w ip v6 mfib [ X.X.X.X::X X.X.X.X::X | summary] [vro uter vr-name ]
l show ipv6 mfib- Shows all the IPv6 multicast FIB information.
l X.X.X.X::X X.X.X.X::X - Shows the multicast FIB information of the specified multicast
source address and multicast address. The first X.X.X.X::X is the IPv6 address of the mul-
ticast source, and the second X.X.X.X::X is the IPv6 multicast address.
l vrouter vr-name - Shows the IPv6 multicast FIB information of the specified VRouter.
A large number of ICMP redirection packets sent from the peer leads to the network congestion.
To avoid the network congestion, you can configure the source IP address of the Echo packets.
To configure the source IPv6 address, use the following command in the global configuration
mode:
b fd ech o -so urce-ip v6 echo-src-address
l echo-src-address – Specifies the source IPv6 addresses of the BFD Echo packets.
To delete the configured source IPv6 address, use the following command in the global con-
figuration mode: no bfd echo-source-ipv6.
To integrate BFD with the IPv6 static route and enable the BFD detection function for the spe-
cified next hop, use the following command in the VRoute configuration mode:
ip v6 ro ute ipv6-address/M interface-name nexthop-ipv6-address b fd
l bfd – Enables the BFD detection function for the specified next hop.
To cancel the integration, use the following command in the VRouter configuration mode:
no ipv6 route ipv6-address/M interface-name nexthop-ipv6-address bfd
By integrating BFD with the OSPFv3 route, the system realizes the quick link detection which
has higher performance than the Hello detection mechanism of the OSPFv3 protocol. With the
integration, OSPFv3 protocol improves its convergence performance.
To integrate BFD with the OSPFv3 rout and enable the BFD detection function on the specified
interfaces that corresponds to the OSPFv3 route, use the following command in the interface con-
figuration mode:
ip v6 o sp f b fd
To cancel the integration, use the following command in the interface configuration mode:
n o ip v6 o sp f b fd
To view the IPv6 BFD session information, use the following command in any mode:
sh o w b fd sessio n [in terface interface-name | n eigh b o r X:X:X:X::X | detail ]
l interface interface-name - Show the information of the BFD sessions of the specified inter-
face.
l X:X:X:X::X – Specify IPv6 address of the neighbor router. The address type is Link-local.
l detail – Show the detailed information of the BFD sessions of all routers.
l DHCP client: A Hillstone device's interface can be configured as a DHCP client and obtain
IP addresses from the DHCP server.
l DHCP server: A Hillstone device's interface can be configured as a DHCP server and allocate
IP addresses chosen from the configured address pool for the connected hosts.
l DHCP relay proxy: A Hillstone device's interface can be configured as a DHCP relay proxy to
obtain DHCP information from the DHCP server and forward the information to connected
hosts.
Hillstone devices are designed with all the above three DHCP functions, but an individual inter-
face can be only configured with one of the above functions.
To enable the interface to obtain an IPv6 address via DHCP, in the interface configuration mode,
use the following command:
ipv6 address dhcp [rapid-commit]
l rapid-commit – Specifying this option can help fast get IPv6 address from the server. You
need to enable both of the DHCP client and the server's Rapid-commit function.
To cancel the configuration, in the interface configuration mode, use the command no ipv6
address dhcp.
The interface that has obtained a dynamic IPv6 address via DHCP can release and renew its IPv6
address. To release and renew the IPv6 address, in the interface configuration mode, use the fol-
lowing commands:
To view the DHCP IPv6 address information allocated to an interface, in the interface con-
figuration mode, use the following command:
show dhcpv6-client interface interface-name
After executing the above command, the system will create a new DHCP address pool and enter
the DHCP server configuration mode of the address pool; if the specified address pool exists, the
system will directly go to the DHCP server configuration mode.
Configuring an IP Range
You need to specify the IP range used for external allocation. To specify the IP range of the
address pool, in the DHCP server configuration mode, use the following command:
address prefix ipv6-address/prefix-length [lifetime {valid-lifetime | infinite}|{preferred-lifetime
| infinite}]
l preferred-lifetime – Specifies the preferred lifetime for the IPv6 address. The preferred life-
time should not be larger than the valid lifetime.
To cancel the specified IP range, in the DHCP server configuration mode, use the command no
address prefix.
To configure domain name for the DHCP client, in the DHCP server configuration mode, use the
following commands:
domain domain-name
To cancel the configured domain name, in the DHCP server configuration mode, use the com-
mand no domain.
To configure DNS servers for the DHCP client, in the DHCP server configuration mode, use the
following commands:
dns-server ipv6-address [ipv6-address1 ] [ipv6-address2 ]
To cancel the configured DNS, WINS server and domain name, in the DHCP server con-
figuration mode, use the command no dns-server.
If the address pool is bound to an interface, the interface will run DHCP server based on the con-
figuration parameters of the address pool. To bind the address pool to an interface, in the interface
configuration mode, use the following command:
dhcpv6-server enable pool pool-name [rapid-commit] [preference preference]
l rapid-commit – Specifying this option can help fast get IPv6 address from the server. You
need to enable both of the DHCP client and the server's Rapid-commit function.
l preference preference – Specifies the priority of the DHCP server. The range should be from
0 to 255. The bigger the value is, the higher the priority is.
To disable the DHCP server on the interface, in the interface configuration mode, use the com-
mand no dhcpv6-server enable.
To enable DHCP relay proxy on an interface, in the interface configuration mode, use the fol-
lowing command:
dhcpv6-relay enable
To disable the specified DHCP relay proxy, in the interface configuration mode, use the com-
mand no dhcpv6-relay enable.
To specify the IP address of the DHCP server, in the interface configuration mode, use the fol-
lowing command:
dhcpv6-relay server ipv6-address [interface interface-name]
l interface interface-name – If the DHCP server is specified as link-local address, you need to
specify the egress interface name.
To cancel the specified IP address, in the interface configuration mode, use the command no
dhcpv6-relay server ipv6-address [interface interface-name].
l show dhcpv6 interface: Shows all the interfaces information which enabling DHCP IPv6.
l show dhcpv6-client interface interface-name: Shows the interface information which enabling
DHCP client IPv6.
l show dhcpv6-server binding pool-name: Shows the binding relationship between DHCP
server and client.
l show dhcpv6-server pool pool-name: Shows the address pool information of the DHCP
server.
Notes: This section only describes IPv6-related configurations. For more inform-
ation about DNS and its configurations, see “DNS” of “Firewall”.
You can specify the source address of DNS request in the rule to filter the DNS request message.
It is permissible to specify multiple source address filtering conditions. To add or delete the
source address of DNS request, in DNS proxy rule configuration mode, use the following com-
mand:
l Add the IPv6 source address of the address entry type :src-addr { ipv6-addr-name | ipv6-
any}
l Delete the IPv6 source address of the address entry type: no src-addr { ipv6-addr-name |
ipv6-any}
l Add the IPv6 source address of the IP member type: src-ip ipv6-address/netmask
l Add the IPv6 source address of the IP range type:src-range min-ipv6-address max-ipv6-
address
l Delete the IPv6 source address of the IP range type :no src-rangemin-ipv6-address min-ipv6-
address
You can specify the IPv6 destination address of DNS request in the rule to filter the DNS request
message. It is permissible to specify multiple destination address filtering conditions.To add or
l Add the IPv6 destination address of the address entry type: dst-addr { ipv6-addr-name |
ipv6-any }
l Delete the IPv6 destination address of the address entry type:no dst-addr { ipv6-addr-name |
ipv6-any }
l Delete the IPv6 destinaion address of the IP member type:no dst-ip ipv6-address/netmask
l Delete the IPv6 destination address of the IP range type: no dst-rangemin-ipv6-address max-
ipv6-address
When the action of the proxy rule is specified as proxy, you need to configure the DNS proxy
servers. You can specify up to six DNS server and you can configure the interface and preferred
properties for the DNS server as needed. When you configure multiple DNS servers, the DNS
server with preferred property will be selected for domain name resolution. If no preferred server
is specified, the system will query whether there are DNS servers that have specified the egress
interface; If so, select these DNS server in a round robin; Except for the two DNS servers, which
means that you only have a regular DNS server, then select this kind of DNS servers in a round
robin.To add a DNS proxy server, in the DNS proxy rule configuration mode, use the following
command:
name-serverserver-ipv6-address [vroutervrouter-name] [egress-interface interface-name][preferred]
l preferred – Specifies the DNS proxy 4dserver as the preferred server, and a DNS proxy rule
can only specify one server as the preferred server.
To delete the DNS proxy server, in the DNS proxy rule configuration mode, use the command no
name-serverserver-ipv6-address [vrouter vrouter-name]
l ipv6-address1 – Specifies the IPv6 address of DNS server. You can configure up to six
DNS servers by one or multiple commands, i.e., running command ipv6 name-server
2002:ae3:1111:2222::1 2001:0db8::3 and running commands ipv6 name-server
2002:ae3:1111:2222::1 and ipv6 name-server 2001:0db8::3make no difference.
l vrouter vr-name – Specifies the VRouter the IPv6 DNS server belongs to.
To cancel the specified IPv6 DNS servers, in the global configuration mode, use the command no
ipv6 name-server ipv6-address1 [ipv6-address2 ] ... [ipv6-address6 ] [vrouter vr-name].
l domain-suffix | any – Specifies the suffix of domain name that is used to match the domain
names in IPv6 DNS requests. any indicates any suffix.
l vrouter vr-name – Specifies the VRouter the IPv6 DNS server belongs to.
To delete the specified mapping entry, in the global configuration mode, use the command no
ipv6 dns-proxy domain {domain-suffix | any} [vrouter vr-name].
For example, to add a mapping entry whose suffix is com and IP address of IPv6 DNS server is
2010::1, use the following command:
To delete the specified static IPv6 DNS mapping entry, in the global configuration mode, use the
command no ipv6 host host-name [vrouter vr-name].
This command is used to clear the specified or all the dynamic IPv6 DNS mapping entries. To
clear static IPv6 DNS mapping entries that are configured manually, in the global configuration
mode, use the command no ipv6 host host-name [vrouter vr-name].
Configuring PMTU
When an IPv6 node sends large amount of data to another node, the data is transferred in form of
a series of IPv6 packets. If possible, the size of these packets should not exceed the size limit for
packets that requires fragmentation in the path from the source node to the destination node. This
size is known as path MTU (PMTU) which equals to the smallest MTU of each hop in the path.
IPv6 defines a standard mechanism that is used to discover PMTU in any path. StoneOS supports
this PMTU discovery mechanism.
Tip: To enter the flow configuration mode, in the global configuration mode, use
the command flow.
With PMTU enabled, the system will generate a PMTU entry to record the destination address,
interface, PMTU value and aging out time after receiving an ICMPv6 Packet Too Big error. If any
session to the destination address specified by the PMTU entry is established within the aging out
time, the system will refresh the aging out time, i.e., restart counting; if no session matches to the
PMTU entry within the aging out time, the entry will be aged out and deleted. You can specify an
appropriate aging out time for the PMTU entry as needed.
To specify an aging out time, in the flow configuration mode, use the following command:
ipv6 pmtu ageout-time time
l time – Specifies the aging out time. The value range is 10 to 600 seconds. The default value
is 300.
To restore to the default aging out time, in the flow configuration mode, use the following com-
mand:
no ipv6 pmtu ageout-time
You can also clear a PMTU entry immediately as needed. To clear a PMTU entry, in any mode,
use the following command (if no optional parameter is specified, the command will clear all the
existing PMTU entries):
clear ipv6 pmtu [dst-ip ipv6-address interface interface-name]
l ipv6-address – Specifies the IPv6 address of the PMTU entry that will be deleted.
l interface-name – Specifies the interface of the PMTU entry that will be deleted.
To view the status of PMTU, e.g., if the function is enabled, or the aging out time, in any mode,
use the following command:
show ipv6 pmtu status
Tip: This section only describes IPv6-related configurations. For more inform-
ation about User-defined Application and its configurations, see “Service and
Application” of “Firewall”.
After executing this command, the system enters the application configuration mode.
To delete the user-defined application, use the following command:
no application application-name
l id – Specify the ID of user-defined application signature rule. If the ID is not specified, sys-
tem will create a user-defined application signature rule and specify the ID automatically.
To delete this user-defined application signature rule, use the following command in the applic-
ation signature rule configuration mode:
n o sign ature id id
l ipv6-address – Specifies the IPv6 source address for the user-defined application signature.
l ipv6-address – Specifies the IPv6 destination address for the user-defined application sig-
nature.
l type-value – Specifies the ICMPv6 type value. For more information about the value range,
see Appendix 1: ICMPv6 Type and Code. The default value is Any, which indicates all the
ICMPv6 type values.
l code min-code [max-code] – Specifies the minimum code value (min-code) and maximum
code value (max-code) for ICMPv6. The value range is 0 to 255. If the code value is not spe-
cified, by default the system will use the code value that corresponds to the Type value
(defined in RFC); if the maximum code value is not specified, by default the system will use
the minimum code value as the maximum code value.
To delete the specified ICMPv6 application rule, in the application signature rule configuration
mode, use the following command:
no protocol
Tip: This section only describes the configuration of IPv6-related policy rules.
For more information about policy rule configurations, see “Policy”.
To create an address entry and enter the address entry configuration mode, in the global con-
figuration mode, use the following command:
address address-entry ipv6
If the specified address entry already exists, the system will directly enter the address entry con-
figuration mode. To add an IPv6 address to the address entry or delete an IPv6 address from the
address entry, in the address entry configuration mode, use the following commands:
ip ipv6-address/M
no ip ipv6-address/M
To add an IPv6 address range to the address entry or delete an IPv6 address range from the
address entry, in the address entry configuration mode, use the following commands:
range min-ipv6-address max-ipv6-address
no range min-ipv6-address max-ipv6-address
When creating an IPv6 address entry, keep in mind that:
l The first 64 bits of an IPv6 address range must be identical. For example, the address range
from 2005::1 to 2006::1 is not permitted, while the address range from 2005::1 to 2005::1000
is permitted;
l The current version does not support hosts with IPv6 addresses.
Tip: For more information about the configuration of IPv4 service book, see
“Application and Service” of “Firewall”.
For more information about how to create a user-defined ICMPv6 service, see the section below:
To create a user-defined service and enter the user-defined service configuration mode, in the
global configuration mode, use the following command:
service service-name
If the specified service already exists, the system will directly enter the user-defined service con-
figuration mode.
To add an ICMPv6 service, in the user-defined configuration mode, use the following command:
icmpv6 type type-value [code min-code [max-code]]
l type-value – Specifies the ICMPv6 type value. For more information about the value range,
see Appendix 1: ICMPv6 Type and Code. The default value is Any, which indicates all the
ICMPv6 type values.
To delete the specified ICMPv6 service, in the user-defined configuration mode, use the fol-
lowing command:
no icmpv6 type type-value [code min-code [max-code]][timeout timeout-value]
l id id – Specifies the ID of the policy rule. If not specified, the system will automatically
assign an ID to the policy rule. The ID must be unique in the entire system.
l top | before id | after id – Specifies the location of the policy rule. The location can be top
| before id | after id. By default, the newly-created policy rule is located at the end of all the
rules.
l to dst-addr – Specifies the destination address of the policy rule. dst-addr can be an IPv6
address, an IPv6 address entry defined in the address book, or ipv6-any.
l service service-name – Specifies the service name of the policy rule. service-name is the ser-
vice defined in the service book.
l permit | deny – Specifies the action of the policy rule. permitmeans system will permit the
traffic to pass through. deny means system will deny the traffic.
Besides you can also use the following command in the policy configuration mode to create a
policy rule ID and enter the policy rule configuration mode for further configurations:
rule {id id | {top | before id | after id}}
l id id – Specifies the ID of the policy rule. If the policy exists, the system will directly enter
the policy configuration mode. If not specified, the system will automatically assign an ID to
the policy rule. The ID must be unique in the entire system. The policy rule ID is not related
to the matching sequence of the policy rule.
l top | before id | after id – Specifies the location of the policy rule. The location can be top
| before id | after id. By default, the newly-created policy rule is located at the end of all the
rules.
l rule id id(The command applies to the case that ID is existing. To delete the rule, use the
command no rule id id.)
l To add the source address of the IP range type: src-range min-ipv6-address [max-ipv6-address]
l To delete the source address of the IP range type: no src-range min-ipv6-address [max-ipv6-
address]
l To add the destination address of the IP range type: dst-range min-ipv6-address [max-ipv6-
address]
l To delete the destination address of the IP range type: no dst-range min-ipv6-address [max-
ipv6-address]
2. Configure an access control rule, which is used to specify the IPv6 extended message, rule
type, and control action required to be controlled.
3. Binding the ACL profile to a policy rule. Only after the configured ACL profile is bound to
a policy rule can access control function on the device.
The ACL profile needs to be configured in the ACL profile configuration mode. To enter the
ACL profile configuration mode, in the global configuration mode, use the following command:
acl-profile acl-profile-name
l acl-profile-name – Specifies the name of the ACL profile. After executing the command, the
system will create a ACL profile with the specified name, and enter the ACL profile con-
figuration mode; if the specified name exists, the system will directly enter the ACL profile
configuration mode. You can specify up to 64 ACL profiles.
To delete the specified ACL Profile, in the global configuration mode, use the command no acl-
profile acl-profile-name.
To configure an access control rule, in the ACL Profile configuration mode, use the following
command:
sequence id {drop |pass} [both |forward |backward] [src-mac src-mac-address] [dst-mac dst-
mac-address][dscp dscp-value] [flow-label flow-label-value [end-flow-label-value]] [ext-header [ah]
[fragment][esp][hop][none][dest [dest-value1 [dest-value2 |home-address]]][mobility [mobility-
value1 [mobility-value2 ]|bind-refresh | bind-ack |bink-err | bind-update | cot | coti| hot
|hoti]][routing [routing-value1 [routing-value2 ]] [no-recommended-order | recommended-order]]
[single-ext-header { ah | dest | esp |fragment | hop | mobility | routing} number{equal |
greater-than | less-than} number] [ log ]
l drop | pass – Specifies the action for the access control rule, drop or pass.
l both |forward |backward – Specifies the traffic direction of the access control rule.
l src-mac src-mac-address – Specifies the source MAC address of the access control rule.
l dst-mac dst-mac-address – Specifies the destination MAC address of the access control rule.
l log - System will log when the messages matching the access control rules.
To delete the specified access control rule, in the ACL Profile configuration mode, use the com-
mand no sequence id.
When there is no access control rule is hit, the system will take the specified default access con-
trol action. To configure the default action, in the ACL Profile configuration mode, use the fol-
lowing command:
default-action {drop |pass}
l drop | pass – Specifies the default action for the access control rule, drop or pass.
The configured ACL profiles will not take effect until being bound to a policy rule. To bind an
ACL Profile to a policy rule, in the policy configuration mode, use the following command:
acl acl-profile-name
l acl-profile-name – Specifies the name of the ACL profile that will be bound.
To cancel the binding,, in the ACL Profile configuration mode, use the command no acl.
To view the ACL profile configuration, in any mode, use the following command:
show acl-profile [acl-profile-name]
l acl-profile-name – Shows the configuration of the specified ACL profile. If this parameter is
not specifies, the command will show the configurations of all the ACL profiles.
Notes: The ALG function of FTP, TFTP, HTTP, RSH, SIP, MSRPC, RTSP,
SQLNetV2 and SUNRPC is enabled by default, while the ALG function of FTPS is
disabled by default.
l Address spoofing: Attackers modify the MAC address of victim host by RS (Router Soli-
citation)/NS(Neighbor Solicitation)/NA(Neighbor Advertisement)/RA(Router Advert-
isement)/Redirect packets, or modify the MAC address of gateway by RS/NS/NA/RA
packets, resulting in communication errors between the victim host and network.
l DAD attack: When the victim host performs DAD query, attackers interfere with the process
by NS or NA packets, resulting in DAD failure and inability to obtain the IP address on the
victim host.
l Flooding: Attackers send huge amount of NS/RS/NA/RA packets to flood the ND table
entries on the gateway.
l Redirection: Attackers use link layer address as the source address and send redirection pack-
ets to the victim host; when the victim host receives the erroneous redirection message, its
routing table will be modified.
StoneOS provides a series of NDP protection measures for the above attacks to assure the secur-
ity of IPv6 network, including:
l IP-MAC binding
l NDP learning
l NDP inspection
l NDP spoofing defense (NDP reverse query, IP number per MAC check, unsolicited NA pack-
You can adopt different protection measures for different network applications. For example, to
implement Layer 2 NDP protection, you can enable NDP inspection (configuring an NDP packet
rate limit, configuring a trusted interface, denying RA packets); to implement Layer 3 protection,
you can disable NDP learning or dynamic entry learning, enable ND reverse query, or enable one-
click binding to convert dynamic IP-MAC entries to static entries.
The following section describes the configuration and usage of the above protection measures.
IP-MAC Binding
To reinforce network security control, the device supports IP-MAC binding. The binding inform-
ation can be obtained statically or dynamically: the information learned via NDP is known as
dynamic binding information, and the information manually configured is known as static binding
information. To simplify the configuration of static IP-MAC binding, you can convert the
dynamic binding information to static binding information by one-click binding. Both the static
and dynamic binding information is stored in the IPv6 ND cache table.
To add a static IP-MAC binding entry to the cache table, in the global configuration mode, use
the following command:
ipv6 neighbor ipv6-address interface-name mac-address
To delete the specified static IP-MAC binding entry, in the global configuration mode, use the fol-
lowing command:
no ipv6 neighbor {all | ipv6-address interface-name}
One-click binding allows you to convert dynamic IP-MAC binding entries that are obtained via
NDP learning to static binding entries when all the hosts in the Intranet can visit Internet. To con-
figure one-click binding, in the execution mode, use the following command:
exec ipv6 nd-dynamic-to-static [vrouter vr-name]
l vr-name – Specifies the VRouter on which the function is implemented. The default value is
the default VR trust-vr.
The above command will convert all the dynamic IP-MAC binding entries in the system to static
binding entries.
By default the system allows hosts that are dynamically learned via NDP to visit Internet. To only
allow hosts in the static IP-MAC binding entries to visit Internet, in the interface configuration
mode, use the following command:
ipv6 nd-disable-dynamic-entry
To disable the function, in the interface configuration mode, use the following command:
no ipv6 nd-disable-dynamic-entry
To view IP-MAC binding information, in any mode, use the following command (if no parameter
is specified, the command will show all the static and dynamic IP-MAC binding entries in the sys-
tem):
show ipv6 neighbor [generic | interface interface-name | slot slot-num | static | vrouter vr-name
| ipv6-address]
To clear dynamic IP-MAC binding information, in any mode, use the following command (if not
parameter is specified, the command will clear all the dynamic IP-MAC binding information in the
system):
clear ipv6 neighbor [ipv6-address]
NDP Learning
Hillstone devices obtain IP-MAC binding information in the Intranet via ND learning, and add
the binding information to the ND table. By default NDP learning is enabled, i.e., the device will
keep on NDP learning and add all the learned IP-MAC binding information to the ND table. If
any IP or MAC address changes during NDP learning, the device will update the IP-MAC binding
information and add it to the ND table. With NDP learning disabled, the system will only allow
hosts whose IP addresses are in the ND table to forward packets.
To configure NDP learning, in the interface configuration mode, use the following command:
After the NDP learning function is enabled, when a user host that connects to the interface ini-
tiates NDP attacks, ND entry resources may be exhausted, making other interfaces unable to
l number - Specifies the maximum number of IP-MAC bindings that can be learned on the inter-
face. Valid values: 1 to capacity. The capacity varies based on device platforms.
In interface configuration mode, use the no ipv6 nd-learning-limit command to disable the NDP
learning limit function.
NDP Inspection
Hillstone devices support NDP inspection on interfaces. With this function enabled, the system
will check all the NDP packets passing through the specified interface, and compare the IP
addresses of the NDP packets with the static binding entries in the ND cache table:
l If the IP address is in the ND cache table, and the MAC address and interface of the packet
are also consistent with the binding entry, then the system will forward the NDP packet;
l If the IP address is in the ND cache table, but the MAC address or interface of the packet is
not consistent with the binding entry, then the system will drop the NDP packet;
l If the IP address is not in the ND cache table, then the system will drop or forward the packet
according to the configuration (ipv6 nd-inspection {drop | forward}).
The BGroup and VSwitch interfaces of StoneOS support NDP inspection. This function is dis-
abled by default. To enable NDP inspection on a BGroup or VSwitch interface, in the BGroup or
VSwitch interface configuration mode, use the following command:
ipv6 nd-inspection {drop | forward}
l forward – Forwards NDP packets whose IP addresses are not in the ND cache table.
To disable NDP inspection, in the BGroup or VSwitch interface configuration mode, use the fol-
lowing command:
no ipv6 nd-inspection
You can configure a physical interface in BGroup or VSwitch as the trusted interface. Packets
passing through the trusted interface are exempt from NDP inspection. By default all the inter-
faces on the device are untrusted. To configure a trusted interface, in the interface configuration
mode, use the following command:
ipv6 nd-inspection trust
To cancel the specified trusted interface, in the interface configuration mode, use the following
command:
no ipv6 nd-inspection trust
Denying RA Packets
To prevent interfaces from sending RA packets arbitrarily, you can specify to deny RA packets on
some specific interfaces (physical interfaces only). Such a measure can prevent against RA attacks
and improve LAN security effectively. To deny RA packets on an interface, in the interface con-
figuration mode, use the following command:
ipv6 nd-inspection deny-ra
To cancel the above restriction, in the interface configuration mode, use the following command:
no ipv6 nd-inspection deny-ra
To configure an NDP packet rate limit, in the interface (physical interface only) configuration
mode, use the following command:
l number – Specifies the number of NDP packets that are allowed per second. If the number
of NDP packets received per second exceeds the value, the system will drop excessive NDP
packets. The value range is 0 to 10000. The default value is 0, i.e., no rate limit.
To cancel the specified rate limit, in the interface configuration mode, use the following com-
mand:
no ipv6 nd-inspection rate-limit
To view the NDP inspection configuration, in any mode, use the following command:
show ipv6 nd-inspection configuration
l reverse-query – Enables reverse query. When the system receives an NDP request, it will
log the IP address and reply with another NDP request; and then the system will check if any
packet with a different MAC address will be returned, or if the MAC address of the returned
packet is the same as that of the NDP request packet. To disable the function, use the com-
mand no ad ipv6 nd-spoofing reverse-query.
l ip-number-per-mac number – Specifies whether to check the IP number per MAC in NDP
table. If the parameter is set to 0 (the default value), the system will not check the IP number;
if set to a value other than 0, the system will check the IP number, and if the IP number per
MAC is larger than the parameter value, the system will take the action specified by action
[drop | alarm]. The available actions include drop (give an alarm and drop the ARP packets)
After configuring NDP spoofing defense, to view attack statistics, use the following command:
show ipv6 nd-spoofing-statistics
To clear NDP spoofing attack statistics, in any mode, use the following command:
clear ipv6 nd-spoofing-statistics
Attack Defense
The system supports IPv6 attack defense functions listed in Table below. For more details and
configuration, see “Attack Defense” of “Threat Prevention”.
L3 IP spoofing ad ip-spoofing
defense
Teardrop ad tear-drop
defense
l Manual 6to4 tunnel: Provides one-to-one connection. The end point of the tunnel is manually
configured.
l Automatic 6to4 tunnel: An automatic one-to-many tunnel that is used to connect multiple
isolated IPv6 networks via IPv4 networks. Hillstone devices can either be used as 6to4
routes or 6to4 relay routers, specifically relying on network environment.
l Creating a tunnel
Creating a Tunnel
To create an IPv6 6to4 tunnel, in the global configuration mode, use the following command:
tunnel ip6in4 tunnel-name {manual | 6to4}
l manual | 6to4 – Specifies a tunnel type which can be a manual 6to4 tunnel (manual) or auto-
matic 6to4 tunnel (6to4).
After executing the above command, the system will create an IPv6 6to4 tunnel with the spe-
cified name and enter the tunnel configuration mode; if the specified name already exists, the sys-
tem will directly enter the tunnel configuration mode.
To delete the specified IPv6 6to4 tunnel, in the global configuration mode, use the following
command:
no tunnel ip6in4 tunnel-name {manual | 6to4}
l interface-name– Specifies the name of egress interface which can be a physical interface or
logical interface (except for tunnel interface).
To cancel the specified egress interface, in the tunnel configuration mode, use the following com-
mand:
no interface
l ipv4-address – Specifies a destination address (must be an IPv4 address) for the manual tun-
nel.
To cancel the specified destination address, in the tunnel configuration mode, use the following
command:
no destination
l maximum – Specify the subtunnel number of a 6to4 tunnel. The rang is 1 to 1200, and the
default value is 200.
Under tunnel configuration mode, use the command to resume the default value:
no subtunnel-limit
To cancel the binding between the IPv6 6to4 tunnel and tunnel interface, in the tunnel con-
figuration mode, use the following command:
no tunnel ip6in4 ipv6-tunnel-name
l Creating a tunnel
Creating a Tunnel
To create an IPv6 4to6 tunnel, in the global configuration mode, use the following command
tunnel ip4in6 tunnel-name manual
l ipv6-address – Specfiy source address of IPv6 4to6 tunnel. This address should be an IPv6
address.
Under tunnel configuration mode, use the command to delete egress interface and source address:
no interface
l ipv6-address – Specifies a destination address (must be an IPv6 address) for the IPv6 4to6
tunnel.
To cancel the specified destination address, in the tunnel configuration mode, use the following
command:
no destination
To cancel the binding between the IPv6 4to6 tunnel and tunnel interface, in the tunnel con-
figuration mode, use the following command:
no tunnel ip4in6 tunnel-name
l The g bit means an IEEE (Institute of Electrical and Electronic Engineers) group or indi-
vidual ID, which is 0 all the time.
For example, the prefix of IPv6 is 2001:DB8:1234:5678::/64 and the IPv4 address needs to be
embedded is 10.173.129.8, which can be identified as 0AAD:8108 (hexadecimal), the ISATAP
address is 2001:DB8:1234:5678:0000:5EFE: 0AAD:8108.
The configuration of ISATAP tunnel includes:
To delete the specified ISATAP tunnel, in the global configuration mode, use the following com-
mand:
no tunnel ip6in4 tunnel-nameisatap
l maximum – Specify the number of subtunnels for an ISATAP tunnel. The range is 1 to
1200, and the default value is 200.
In the ISATAP tunnel configuration mode, use the command to restore to the default number of
subtunnels:
no subtunnel-limit
l interface-name – Specifies the name of egress interface, which can be a physical interface or
logical interface (except tunnel interface).
To cancel the specified egress interface, in the ISATAP tunnel configuration mode, use the fol-
lowing command:
no interface
To cancel the binding between the ISATAP tunnel and tunnel interface, in the tunnel con-
figuration mode, use the following command:
no tunnel ip6in4 ipv6-tunnel-name
Configuring DS-lite
StoneOS supports DS-lite technology. DS-lite integrates with IPv4-in-IPv6 tunnel with NAT.
The IPv4 client uses the B4 (Base Bridge Broadband) device and the AFTP (Address Family
Transition Router) device to create a tunnel in the IPv6 network. And then it uses this tunnel to
communicate with the resource in the IPv4 network. In the end of this tunnel, the AFTR device
uses NAT to translate the private IPv4 address.
When using DS-lite, you must also configure the corresponding NAT settings.
To delete a tunnel, use the following command in the global configuration mode:
no tunnel ip4in6 tunnel-name ds-lite
To cancel the above settings, use the no interface command in the DS-lite tunnel configuration
mode.
l value – Specify the maximum number of sub tunnels that AFTR can create. The default
value is 200. The value ranges from 1 to 1200.
Configuring NAT-PT
IPv6 can solve the problem of increasingly exhausted IP addresses, and will replace IPv4 to
become the core of next generation Internet. However, it’s not possible to upgrade the existing
IPv4 networks to IPv6 networks overnight; for quite a long time, IPv6 and IPv4 networks will
co-exist and communicate with each other.
NAT-PT (Network Address Translation - Protocol Translation) is a transitional mechanism that is
designed for the inter-communication between pure IPv6 and IPv4 networks. NAT-PT adopts
NAT for the translation between IPv4 and IPv6 addresses, and adopts PT for the translation of
protocols (including network layer protocols, transport layer protocols and application layer pro-
tocols) on the basis of semantically equivalent rules. Powered by NAT-PT, you can implement
the inter-communication between IPv6 and IPv4 networks without any change to the existing
IPv4 networks. Figure below shows an illustration of intercommunication between a pure IPv6
and IPv4 network via a Hillstone device with NAT-PT enabled.
SNAT rules are used to specify whether to implement NAT-PT on the source IPv6/IPv4 address
of the matched traffic. If NAT-PT is implemented, you also need to specify the translated IP
address and translation mode. To configure an SNAT rule for NAT-PT, in the VRouter con-
figuration mode, use the following command:
snatrule [idid] [before id | after id | top] from src-addresstodst-address [eifegress-interface |
evrvrouter-name] trans-to {addressbook trans-to-address | eif-ip| eif-ipv6} mode {static |
dynamicip | dynamicport [sticky] [fixed-block start start-port end end-port size port-block-size] }
[log] [group group-id ][description description]
l before id | after id | top – Specifies the position of the rule. The position can be before id,
after id, top. If the position is not specified, the rule would be located at the end of all the
SNAT rules. By default, the newly-created SNAT rule is located at the end of all the rules.
l from src-address - Specifies the source IP address of the traffic. src-address should be
an IPv4 address, IPv6 address or an address entry in the address book.
l eif egress-interface | evr vrouter-name - Specifies the egress interface (eif egress-inter-
face) or the next-hop VRouter (evr vrouter-name) of the traffic.
l mode {static | dynamicip | dynamicport [sticky] [fixed-block start start-port end end-port
size port-block-size] } – Specifies the translation mode. StoneOS supports three modes for
the translation between IPv4 and IPv6 addresses: static, dynamicip and dynamicport. For
more details, see the table below:
l log – Enables the log function for this SNAT rule (Generating a log when the traffic is
matched to this NAT rule).
l group group-id - Specifies the HA group the SNAT rule belongs to. If the parameter is not
specified, the SNAT rule being created will belong to HA group0.
For example, the following example achieves the interface-based NAT of ethernet0/0 in the
untrust zone:
Each SNAT rule is labeled with a unique ID. When traffic flows into the Hillstone device, the
device will query for SNAT rules in the list by turns, and then implement NAT-PT on the source
IP of the traffic according to the first matched rule. However, the rule ID is not related to the
matching sequence during the query. The sequence displayed by the command show snat is the
query sequence for the matching. You can move an SNAT rule to modify the matching sequence.
To move an SNAT rule, in the VRouter configuration mode, use the following command:
snatrule move id {before id | after id| top | bottom}
l top – Moves the SNAT rule to the top of the SNAT rule list.
l bottom – Moves the SNAT rule to the bottom of the SNAT rule list.
To delete the SNAT rule with the specified ID, in the VRouter configuration mode, use the fol-
lowing command:
no snatrule id id
To view the SNAT configuration information, in any mode, use the following command:
show snat [id id] [vrouter vrouter-name]
When the SNAT translation mode is set to dynamicport, to view the usage of port resources in
the source address pool, in any mode, use the following command:
show snat resource [vrouter vrouter-name]
l vrouter vrouter-name – Shows the port usage of SNAT source address pool of the specified
VRouter.
DNAT rules are used to specify whether to implement NAT-PT on the destination IPv6/IPv4
address of the matched traffic. To configure a DNAT rule for NAT-PT, in the VRouter con-
figuration mode, use the following command:
dnatrule [id id] [before id | after id | top] from src-address to dst-address [service service-name]
trans-to trans-to-address [port port] [load-balance] [track-tcp port] [track-ping] [log] [group group-
id] [description description]
l id id – Specifies the ID of the DNAT rule. Each DNAT rule has a unique ID. If the ID is
not specified, the system will automatically assign one. If the specified DNAT ID exists, the
original rule will be overwritten.
l before id | after id | top – Specifies the position of the rule. The position can be top, before
id or after id. If the position is not specified, the rule would be located at the end of all the
DNAT rules. By default, the newly-created DNAT rule is located at the end of all the rules.
When traffic flows into the Hillstone device, the device will query for DNAT rules in the list
by turns, and then implement NAT on the destination IP of the traffic according to the first
matched rule.
l from src-address – Specifies the source IP address of the traffic. src-address should be
an IPv4 or IPv6 address, or an address entry in the address book.
l service service-name – Specifies the service type of the traffic. If the port number
needs to be translated together (specified by port port), the specified service can only
be configured with one protocol and one port. For example, the TCP port number can
be 80, but cannot be 80 to 100.
l load-balance – Enables load balancing for this DNAT rule, i.e., balances the traffic to dif-
ferent servers in the internal network.
l track-tcp port – If this parameter is configured and the port number of the internal network
server is specified, the system will send TCP packets to the internal network server to mon-
itor if the specified TCP port is reachable.
l track-ping – If this parameter is configured, the system will send ping packets to the internal
network server to monitor if the server is reachable.
l log – Enables the log function for this DNAT rule (Generating a log when the traffic is
matched to this DNAT rule).
For example, the following command will translate the IP address of the request from addr1 to
the IP address of addr2, but will not translate the port number:
To configure a DNAT rule that disables NAT-PT, in the VRouter configuration mode, use the fol-
lowing command:
dnatrule [id id] [before id | after id | top] from src-address to dst-address [service service-name]
no-trans [group group-id]
Each DNAT rule is labeled with a unique ID. When traffic flowing into the Hillstone device, the
device will query for DNAT rules by turns, and then implement NAT on the source IP of the
traffic according to the first matched rule. However, the rule ID is not related to the matching
sequence during the query. The sequence displayed by the command show dnat is the query
sequence for the matching. You can move a DNAT rule to modify the matching sequence. To
move a DNAT rule, in the VRouter configuration mode, use the following command:
dnatrule move id {before id | after id| top | bottom}
l top – Moves the DNAT rule to the top of the DNAT rule list.
l bottom – Moves the DNAT rule to the bottom of the DNAT rule list.
To delete the DNAT rule with the specified ID, in the VRouter configuration mode, use the fol-
lowing command:
no dnatrule id id
To view the DNAT configuration information, in any mode, use the following command:
show dnat [id id] [vrouter vrouter-name]
To show the information of the DNAT rule with load balancing configured, in any mode, use the
following command:
show dnat server [ip-address] [vrouter vrouter-name] [tcp-port port] [ping]
l ip-address – Shows status of the internal network server of the specified IP address.
l vrouter vrouter-name – Shows status of the internal network server of the specified
VRouter.
l tcp-port port – Shows status of the internal network server of the specified port number.
Enabling/Disabling DNS64
After configuring the IPv6 DNS proxy rules, you can enable or disable the DNS64. By default,
the DNS64 function is disabled. In DNS proxy rule configuration mode, use the following com-
mand:
l Enable: dns64 enable (After executing this command, system will enter the DNS64 con-
figuration mode.)
Notes: The DNS64 function is only supported in IPv6 DNS proxy rules and is not
supported in IPv4 DNS proxy rules.
To delete the DNS64 server, in the DNS64 configuration mode, use the commandno
serverserver-ip [vroutervrouter-name].
To delete the DNS64 prefix configuration, in the DNS64 configuration mode, use the
commandno prefixipv6-address/Mask .
l id id – Specifies the ID of the DNS64 rule. The value range is 1 to 16. Each DNS64 rule has
a unique ID. If the specified DNS64 ID exists, the original rule will be overwritten.
l prefix ipv6-address/Mask – Specifies the IPv6 prefix and length of the prefix. DNS64 uses
the prefix to translate IPv4 addresses to IPv6 addresses. The value range of prefix length is 0
to 96.
To delete the specified DNS64 rule, in the global configuration mode, use the following com-
mand:
no ipv6 dns64-proxy id id
l id id – Specifies the ID of the DNAT rule. Each DNAT rule has a unique ID. If the ID is
not specified, the system will automatically assign one. If the specified DNAT ID exists, the
original rule will be overwritten.
l before id | after id | top – Specifies the position of the rule. The position can be top, before
id or after id. If the position is not specified, the rule would be located at the end of all the
DNAT rules. By default, the newly-created DNAT rule is located at the end of all the rules.
When traffic flows into the Hillstone device, the device will query for DNAT rules in the list
by turns, and then implement NAT on the destination IP of the traffic according to the first
matched rule.
l from src-address to dst-address [service service-name] – Specifies conditions of the rule that
the traffic should be matched. The conditions are:
l from src-address – Specifies the source IP address of the traffic. src-address should be
an IPv6 address, or an IPv6 address entry in the address book.
l service-name – Specifies the service type of the traffic. The specified service can only
be configured with one protocol and one port. For example, the TCP port number can
be 80, but cannot be 80 to 100.
l v4-mapped – Extracts the destination IPv4 address from the destination IPv6 address of the
packet directly.
l log – Enables the log function for this DNAT rule (Generating a log when the traffic is
matched to this DNAT rule).
l group group-id - Specifies the HA group that the DNAT rule belongs to. If the parameter is
not specified, the DNAT rule being created will belong to HA group0.
To delete the specified DNAT rule, in the VRouter configuration mode, use the following com-
mand:
no dnatrule id id
l track-object-name – Specifies a name for the track object. The length of it can be 1 to 31
characters.
l local –If you enter this parameter, the system will not synchronize configuration of this track
with the backup device. Without entering this parameter, this configuration will not be syn-
chronized with the backup device.
This command creates the track object and leads you into the track object configuration mode; if
the object exists, you will enter its configuration mode directly.
To delete the specified track object, use the following command:
l ipv6-address | host host-name – Specifies the IPv6 address or host name of the tracked
object. The length of the host name can be 1 to 63 characters.
l intervalvalue – Specifies the interval of sending Ping packets . The value range is 1 to 255
seconds. The default value is 3.
l thresholdvalue – Specifies the number which determines the tracking fails. If the system
does not receive response packets of the number specified here, it determines that the track-
ing has failed, namely, the destination is unreachable. The value range is 1 to 255. The default
value is 3.
l prior-used-srcip ipv6-address – If the secondary IP is specified for the source interface and
specifies the IP to be prior-used-srcip, system will use the IP to send track packets priorly. If
the parameter is not specified, system will use default IP of the source interface to send track
packets.
l weight value –pecifies how important this entry failure is to the judgment of tracking failure.
The value range is 1 to 255. The default value is 255.
l ipv6-address | host host-name – Specifies the IPv6 address or host name of the track object.
The length of the host name can be 1 to 63 characters.
l interface interface-name – Specifies the egress interface of sending HTTP test packets.
l interval value – Specifies the interval of sending HTTP packets. The value range is 1 to 255
seconds. The default value is 3.
l threshold value – Specifies the number which concludes the tracking fails. If the system
does not receive response packets of the number specified here, it concludes that the tracking
has failed. The value range is 1 to 255. The default value is 1.
l weight value – Specifies how important this entry failure is to the judgment of tracking fail-
ure. The value range is 1 to 255. The default value is 255.
l intervalvalue – Specifies the interval of sending DNS packets. The value range is 1 to 255
seconds. The default value is 3.
l thresholdvalue – Specifies the threshold number which concludes the tracking fails. If the
system does not receive response packets of the number specified here, it concludes that the
tracking has failed. The value range is 1 to 255. The default value is 3.
l weightvalue – Specifies how important this entry failure is to the judgment of tracking fail-
ure. The value range is 1 to 255. The default value is 255.
l interface interface-name – Specifies the egress interface of sending NDP test packets.
l thresholdvalue – Specifies the threshold number which concludes the tracking fails. If the
system does not receive response packets of the number specified here, it concludes that the
tracking has failed. The value range is 1 to 255. The default value is 3.
l weightvalue – Specifies how important this entry failure is to the judgment of tracking fail-
ure. The value range is 1 to 255. The default value is 255.
l ipv6-address | hosthost-name – Specifies the IPv6 address or host name of track object. The
length of the host name can be 1 to 63 characters.
l portport-number –Specifies the destination port of the track object. The value range is 0 to
65535.
l interfaceinterface-name – Specifies the egress interface for sending TCP test packets.
l intervalvalue – Specifies the interval of sending TCP packets. The value range is 1 to 255
seconds. The default value is 3.
l thresholdvalue – Specifies the threshold number which concludes the tracking fails. If the
system does not receive response packets of the number specified here, it concludes that the
tracking has failed. The value range is 1 to 255. The default value is 3.
l weightvalue – Specifies how important this entry failure is to the judgment of tracking fail-
ure. The value range is 1 to 255. The default value is 255.
Repeat the command to configure more TCP tracking entries. For one single track object, you can-
not configure both the HTTP track on the host and TCP track on port 80 simultaneously.
To delete the specified tracking entry, use the following command:
n o tcp ip v6 { ipv6-address | h o st host-name } p o rt port-number in terface interface-name
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# exit
hostname(config)#
hostname(config)# policy-global
hostname(config-policy)# rule
hostname(config-policy-rule)# src-zone trust
hostname(config-policy-rule)# dst-zone untrust
hostname(config-policy-rule)# exit
hostname(config)#
Device A
hostname(config)# interface ethernet0/0
hostname(config-if-eth0/0)# zone trust
hostname(config-if-eth0/0)# ipv6 enable
hostname(config-if-eth0/0)# ipv6 address
27a6::210:ea1:71ff:fe00/64
hostname(config-if-eth0/0)# exit
Device B
hostname(config)# interface ethernet0/0
hostname(config-if-eth0/0)# zone trust
hostname(config-if-eth0/0)# ipv6 enable
hostname(config-if-eth0/0)# ipv6 address
32f1::250:af:34ff:fe00/64
hostname(config-if-eth0/0)# exit
hostname(config)# interface ethernet0/1
hostname(config-if-eth0/1)# zone untrust
Device A
hostname(config)# tunnel ip6in4 test-tunnelA manual
hostname(config-ip6in4-manual)# interface ethernet0/1
hostname(config-ip6in4-manual)# destination 100.100.10.2
hostname(config-ip6in4-manual)# exit
hostname(config)#
Device B
hostname(config-ip6in4-manual)# exit
hostname(config)#
Device A
hostname(config)# interface tunnel1
hostname(config-if-tun1)# zone untrust
hostname(config-if-tun1)# ipv6 enable
hostname(config-if-tun1)# tunnel ip6in4 test-tunnelA
hostname(config-if-tun1)# exit
hostname(config)#
Device B
hostname(config)# interface tunnel1
hostname(config-if-tun1)# zone untrust
hostname(config-if-tun1)# ipv6 enable
Device A
hostname(config)# policy-global
hostname(config-policy)# rule
hostname(config-policy-rule)# src-zone trust
Device B
hostname(config)# policy-global
hostname(config-policy)# rule
hostname(config-policy-rule)# src-zone untrust
hostname(config-policy-rule)# dst-zone trust
hostname(config-policy-rule)# src-addr ipv6-any
hostname(config-policy-rule)# dst-addr ipv6-any
Device A
hostname(config)# ip vrouter trust-vr
hostname(config-vrouter)# ipv6 route 32f1::/64 tunnel1
hostname(config-vrouter)# exit
hostname(config)#
Device B
hostname(config)# ip vrouter trust-vr
Device A
hostname(config)# interface ethernet0/0
hostname(config-if-eth0/0)# zone trust
hostname(config-if-eth0/0)# ipv6 enable
hostname(config-if-eth0/0)# ipv6 address
2002:202:201::1/48
hostname(config-if-eth0/0)# exit
hostname(config)# interface ethernet0/1
hostname(config-if-eth0/1)# zone untrust
hostname(config-if-eth0/1)# ip address 2.2.2.1/24
hostname(config-if-eth0/1)# exit
hostname(config)#
Device B
hostname(config)# interface ethernet0/0
hostname(config-if-eth0/0)# exit
hostname(config)# interface ethernet0/1
hostname(config-if-eth0/1)# zone untrust
hostname(config-if-eth0/1)# ip address 2.2.2.2/24
hostname(config-if-eth0/1)# exit
hostname(config)#
Device C
hostname(config)# interface ethernet0/0
Device A
hostname(config)# tunnel ip6in4 test-tunnelA 6to4
hostname(config-ip6in4-6to4)# interface ethernet0/1
hostname(config-ip6in4-6to4)# exit
hostname(config)#
Device B
hostname(config)# tunnel ip6in4 test-tunnelB 6to4
hostname(config-ip6in4-6to4)# interface ethernet0/1
hostname(config-ip6in4-6to4)# exit
hostname(config)#
Device C
hostname(config)# tunnel ip6in4 test-tunnelC 6to4
hostname(config-ip6in4-6to4)# interface ethernet0/1
hostname(config-ip6in4-6to4)# exit
hostname(config)#
hostname(config-if-tun1)# zo n e un trust
hostname(config-if-tun1)# ip v6 en ab le
hostname(config-if-tun1)# exit
hostname(config)#
Device B
hostname(config-if-tun1)# zo n e un trust
hostname(config-if-tun1)# ip v6 en ab le
hostname(config-if-tun1)# exit
hostname(config)#
Device C
hostname(config-if-tun1)# zo n e un trust
hostname(config-if-tun1)# ip v6 en ab le
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)#
Device A
hostname(config)# ip vrouter trust-vr
hostname(config-vrouter)# ipv6 route 2002:202:202::/48
tunnel1
hostname(config-vrouter)# ipv6 route 310a::/16 tunnel1
2002:202:203::1
hostname(config-vrouter)# exit
hostname(config)#
Device B
hostname(config)# ip vrouter trust-vr
hostname(config-vrouter)# ipv6 route 2002:202:201::/48
tunnel1
hostname(config-vrouter)# ipv6 route 310a::/16 tunnel1
2002:202:203::1
hostname(config-vrouter)# exit
hostname(config)#
Device C
hostname(config)# ip vrouter trust-vr
hostname(config-vrouter)# ipv6 route 2002::/16 tunnel1
The host address is 1.1.12/24; the host is connected to etherenet0/0 that belongs to the untrust
zone with address of 1.1.1.1/24. Take the following steps:
Step 1: Configure an interface:
hostname(config-if-eth0/0)# zo n e un trust
hostname(config-if-eth0/0)# exit
hostname(config)#
Finishing the above configuration, you can view IPv6-related MIB information via a MIB browser
on the management host.
The host address is 2008::2/64; the host is connected to etherenet0/0 that belongs to the untrust
zone with address of 2008::1/24. Take the following steps:
Step 1: Configure an interface:
hostname(config-if-eth0/0)# zo n e un trust
hostname(config-if-eth0/0)# ip v6 en ab le
hostname(config-if-eth0/0)# exit
hostname(config)#
Finishing the above configuration, you can view IPv6-related MIB information via a MIB brower
on the management host.
l Requirement 1: The host in the IPv6 network can initiate access to the host in the IPv4 net-
work, while the host in the IPv4 network cannot initiate access the host in the IPv6 network;
l Requirement 2: The host in the IPv4 network can initiate access to the host in the IPv6 net-
work, while the host in the IPv6 network cannot initiate access the host in the IPv4 network.
The host in the IPv6 network can initiate access to the host in the IPv4 network, while the host
in the IPv4 network cannot initiate access the host in the IPv6 network. Assume the situation
below: for the host in the IPv6 network, the mapping IPv6 address of the host in the IPv4 net-
work is 2003::2.
Take the following steps:
Step 1: Configure interfaces:
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# ip v6 en ab le
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/13)# zo n e trust
hostname(config-if-eth0/13)# exit
hostname(config)#
rule ID=1
rule ID=1
hostname(config-vrouter)# exit
hostname(config)#
hostname(config)# policy-global
hostname(config-policy)# rule
hostname(config-policy-rule)# src-zone trust
hostname(config-policy-rule)# dst-zone trust
hostname(config-policy-rule)# src-addr 2001::2/64
hostname(config-policy-rule)# dst-addr 2003::2/128
Requirement 2
The host in the IPv4 network can initiate access to the host in the IPv6 network, while the host
in the IPv6 network cannot initiate access the host in the IPv4 network. Assume the situation
below: for the host in the IPv4 network, the mapping IPv4 address of the host in the IPv6 net-
work is 192.168.2.2.
Take the following steps:
Step 1: Configure interfaces:
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# ip v6 en ab le
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/13)# zo n e trust
hostname(config-if-eth0/13)# exit
hostname(config)#
rule ID=2
rule ID=2
hostname(config-vrouter)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)#
rule ID=1
rule ID=1
hostname(config-vrouter)# exit
hostname(config)#
Error message
[RFC2894]
[RFC2894]
[RFC2894]
139 ICMP Node Inform- 0 - The Data field contains an IPv6 address which is [RFC4620]
ation Query the Subject of this Query
140 ICMP Node Inform- 0 - A successful reply. The Reply Data field may or [RFC4620]
ation Response may not be empty.
l PKI describes the function of Public Key Infrastructure, which provides public key encryp-
tion and digital signature service.
Overview
AAA is the abbreviation for Authentication, Authorization and Accounting. Details are as fol-
lows:
l Accounting: Records the fees users should pay for their network resource usage.
l Local authentication: Configures user information (including username, password and prop-
erties) on Hillstone devices. Local authentication is fast, and can reduce operation cost, but
the amount of information that will be stored is limited by the hardware of the device. By
default, Hillstone devices use local authentication.
l External authentication: Hillstone devices also support external authentication over RADIUS,
AD, LDAP and TACACS+ protocol. User information is stored in an external RADIUS, AD,
LDAP or TACACS+ server, and Hillstone devices authenticate users by the external server.
l External accounting: Performs Accounting for authenticated users via a RADIUS server.
2. The Hillstone device receives the username and password, and sends an authentication
request to the RADIUS/LDAP/AD/TACACS+server.
AAA configurations need to be done in the AAA service configuration mode. To create an AAA
server, in the global configuration mode, use the following command:
aaa-server aaa-server-name [typ e] {lo cal | radius | active-directo ry | ldap | tacacs+}
l aaa-server-name – Specifies the name of the AAA server. The length is 1 to 31 characters
and is case sensitive.
l type {local | radius | active-directory | ldap | tacacs+} – Specifies the type of the AAA
server to be created. It can be a local server (local), RADIUS server (radius), Active-
Directory server (active-directory), LDAP server (ldap) or TACACS+ server
(tacacs+).
After executing this command, the system will create an AAA server with the specified name, and
enter the AAA server configuration mode. If the specified name exists, the system will directly
enter the AAA server configuration mode.
To delete the specified AAA server, in the global configuration mode, use the following com-
mand:
n o aaa-server aaa-server-name
To enter the local server configuration mode, in the global configuration mode, use the command
aaa-server aaa-server-name type local. The local authentication server configuration includes:
To prevent account security problem, you can configure the password control function. The con-
figuration of the password control function must be performed in the password control con-
figuration mode. To enter the password control configuration mode, in the local server
configuration mode, use the following command:
password-control
The password control function include:
Local users can change their password on the login page after successful authentication. For con-
figuration, prefer to "User Authentication > User Identification > Web Authentication > Allow-
ing Password Change by Local Users".
By default, the local user is not allowed to change its password, but you can configure the device
to enable password changing right for local users if they pass SSL VPN authentication. For con-
figuration, prefer to "VPN > SSL VPN> Configuring SSL VPN Server > Allowing Password
Change by Local Users".
By default , the function is disabled. Configure Change Password after First Login function, in the
password control mode, use the following command:
first-login-check [ mode { compatibility | enforcement }]
l compatibility –Specifies the compatible mode for the Change Password after First Login
function: ①If this function does not apply to the SSL VPN client, users can log in to the SSL
VPN client for the first time without changing the password.②If this function applies to the
SSL VPN client, users need to change the login password immediately after logging in to the
SSL VPN client for the first time.
l enforcement –Specifies the enforce mode for the Change Password after First Login func-
tion. Users need to change the login password immediately after logging in to the SSL VPN cli-
ent for the first time.
Notes:
l In case the Enforce Mode is configured, the SSL VPN client cannot be used
if this function does not apply to the SSL VPN client. You are advised to
l The SSL VPN client versions that allow you to change the password upon
the first login are as follows: SSL VPN Windows client 1.4.9.1274 or later
version, Linux 1.4.0 or later version, Android 4.5 or later version, and iOS
2.0.6 or later version.
l Change Password after First Login function does not apply to SSL VPN Win-
dows client(non-administrator) version 1.5.x.
You can configure the password validity and the days how long users will be reminded of pass-
word expiry before it expires.
To configure the password validity and password expiry warning, in the password control mode,
use the following command:
agingaging-day [alert-before-expirealert-day]
l aging-day – Specifies the valid period of password. The value range is 1 to 365 days. The
default value is 90.
l alert-day–Specifies the days to remind the user to change the password before the password
expires. The value range is 1 to 30 days. The default value is 7.
To cancel the settings of password validity and password expiry warning, use the no aging com-
mand.
When the history password check function is enabled, system will verify the newly changed pass-
word with verifying the historical passwords, ensuring the new password is different from the his-
tory passwords.
l count – Configure the newly changed passwords is different from the passwords set in the
recent specified times. The value range is 1 to 5. The default value is 3.
To cancel the history password check configuration, use the no history-check command.
The lower the complexity of the password, the more likely it is to be cracked, such as including
the username and short password length. For security reasons, you can enable the password com-
plexity configuration and configure the password complexity requirements to ensure that the
user's password has high complexity.
To enable password complexity configuration, in the password control mode, use the following
command:
co mp lexity en ab le
l capital - lettersletters - Specifies the minimum length of uppercase letters contained in the
password. The range is 0-16. The default value is 0.
l small-letterslength - Specifies the minimum length of lowercase letters contained in the pass-
word. The range is 0-16. The default value is 0.
l min - lengthlength - Specify the minimum password length, the range is 1-16, the default
value is 1.
l numeric-characterslength - Specifies the minimum length of the number contained in the pass-
word. The range is 0-16. The default value is 0.
To restore the default value, use the no complexity {capital - letters | small-letters | min - length
| no-include -username | non-alphanumeric-letters |numeric-characters }command.
During user authentication, the system will extract the user name based on the configured authen-
tication user name format. If the desired format is not available, the system will directly use the
original user name for authentication.
To specify the authentication user name format, in the local server configuration mode, use the
following command:
extract-username-format authenticate { [domain\username ] [username@domain] }
To delete configuration of the authentication user name format, in the local server configuration
mode, use the following command:
no extract-username-format authenticate { [domain\username ] [username@domain] }
While implementing policy control based on user name or user group, the system will search the
group to which a user name belongs from the organization units locally stored.
To specify the user name format supported when searching for the user group, in the local server
configuration mode, use the following command:
extract-username-format search-usergroup { [domain\username ] [username@domain] }
To delete configuration of the user name format for searching groups, in the local server con-
figuration mode, use the following command:
no extract-username-format search-usergroup { [domain\username ] [username@domain] }
After specifying a role mapping rule, the system will assign a role for users who have been authen-
ticated by the server according to the specified role mapping rule. To configure a role mapping
rule for the server, in the local server configuration mode, use the following command:
ro le-map p in g-rule rule-name
To cancel the specified role mapping rule configuration, in the local server configuration mode,
use the following command:
n o ro le-map p in g-rule
After configuring a user blacklist for the local server, the system will not allow blacklist users who
are authenticated by the server to access any network resource. To configure a user blacklist, in
the local server configuration mode, use the following command:
user-b lack-list usern ame user-name
l user-name – Specifies the username of blacklist user. The value range is 1 to 63 characters.
To delete a user from the blacklist, in the local server configuration mode, use the following com-
mand:
n o user-b lack-list usern ame user-name
After configuring a backup authentication server for the local server, the backup authentication
server will take over the authentication task when the primary server malfunctions or authen-
tication fails on the primary server. The backup authentication server can be any existing local,
Active-Directory, RADIUS or LDAP server defined in the system. To configure a backup authen-
tication server, in the local server configuration mode, use the following command:
b ackup -aaa-server aaa-server-name
Notes:
l The backup authentication server and primary server should belong to the
same VSYS. For more information about VSYS, see Virtual System.
l The backup authentication server should not nest another backup authen-
tication server.
l Before deleting an AAA server, make sure the server is not specified as a
backup authentication server.
To prevent illegal users from obtaining user name and password via brute-forth cracking, you can
configure the brute-force cracking defense by locking out user or IP, i.e., within the specified
period, if the failed attempts reached the specified times, the user or IP will be locked for a while.
The Brute-force Cracking Defense configuration includes:
By default, the Brute-force Cracking Defense function is disabled. To enable this function, in the
local server configuration mode, use the following command:
The number of attempts, that is, the allowed times of login failure within the specified time. To
configure the number of attempts, in the local server configuration mode, use the following com-
mand:
lockout {ip | user} failed-attemptsnumber intervalinterval
l failed-attemptsnumber – Specifies the allowed times of login failure. For lockout user, the
range is 1 to 32, the default value is 5. For lockout IP, the range is 1 to 2048, the default
value is 64.
l interval interval – Specifies the allowed time of login. The range is 1 to 180 and the default
value is 60 seconds.
If the failed attempts reached the specified times in the specified time, the user or IP will be
locked out for a while. To configure the lockout time, in the local server configuration mode, use
the following command:
lockout {ip | user} lockout-time time
l lockout-timetime – Specifies the lockout time. The range is 30 to 180. The default value is
600 seconds for lockout user, and 60 seconds for lockout IP.
To view the information of locked user or IP, in any mode, use the following command:
sh o w aaa-server aaa-server-name lo cko ut {user [ username ] | ip [ ip-address vr_id number ]}
l user [username] - View the information of the locked user of the specified name.
To unlock and delete the user or IP, in any mode, use the following command:
exec aaa aaa-server aaa-server-name lo cko ut delete {user [ username ] | ip [ ip-address vr_id num-
ber ]}
To enter the RADIUS server configuration mode, in the global configuration mode, use the com-
mand aaa-server aaa-server-name type radius.
The RADIUS authentication server configuration includes:
When the Radius server is used to authenticate users, you can specify the LOCAL NAS (Network
Access Server) IP address as needed. To specify the LOCAL NAS IP address, in the Radius
server configuration mode, use the following command:
local-nas-ip ip-address
l ip-address – Specifies the LOCAL NAS IP address (At present, the system only supports
IPv4 addresses). This way, the source IP address of Radius authentication packets and
accounting packets, as well as the nas-ip-address of the authentication packets are all
changed to this specified IP address, ensuring that packets returned by the Radius server
are received by the current device in the complex network environment. The LOCAL NAS
IP should be the same as the interface IP of the device. Otherwise, Radius authentication
packets or accounting packets may not be properly sent.
To delete the LOCAL NAS IP address, in the Radius server configuration mode, use the fol-
lowing command:
no local-nas-ip ip-address
Notes:
l In the HA environment, the configuration of the LOCAL NAS IP address is
not synchronized to the backup device. Therefore, you need to configure it
in both primary and backup devices.
l It should be ensured that there are reachable routes between the current
device and the Radius server.
To configure the IP address, domain name, or VRouter of the primary authentication server, in
the RADIUS server configuration mode, use the following command:
h o st { ip-address | host-name }[vro uter vrouter-name ]
l ip-address | host-name – Specifies the IP address ( IPv4 or IPv6 ) or domain name of the
primary authentication server.
l vrouter vrouter-name – Specifies the VRouter that the primary server belongs to. The
default Vrouter is trust-vr.
To delete the above configurations of the primary authentication server, in the RADIUS server
configuration mode, use the command:
n o h o st
This configuration is optional. Backup server must be of the same type of primary server. When
the authentication does not pass primary server’s check, the backup server 1 and 2 will start
checking its credentials consecuritvely. To configure the IP address, domain name, or VRouter of
the backup authentication server 1, in the RADIUS server configuration mode, use the following
command:
b ackup 1 { ip-address | host-name }[vro uter vrouter-name ]
l ip-address | host-name – Specifies the IP address ( IPv4 or IPv6 ) or domain name of the
backup server 1.
l vrouter vrouter-name – Specifies the VRouter that the back server 1 belongs to. The default
Vrouter is trust-vr.
To delete the IP address or domain name configuration of the backup authentication server 1, in
the RADIUS server configuration mode, use the command:
n o b ackup 1
This configuration is optional. Backup server must be of the same type of main server. When the
authentication does not pass main server’s check, the backup server 1 and 2 will start checking
its credentials consecuritvely.To configure the IP address or domain name of the backup authen-
tication server 2, in the RADIUS server configuration mode, use the following command:
b ackup 2 { ip-address | host-name }[vro uter vrouter-name ]
l ip-address | host-name – Specifies the IP address ( IPv4 or IPv6 ) or domain name of the
backup server 2.
l vrouter vrouter-name – Specifies the VRouter that the back server 2 belongs to. The default
Vrouter is trust-vr.
To delete the IP address or domain name configuration of the backup authentication server 2, in
the RADIUS server configuration mode, use the command:
n o b ackup 2
To configure the port number of the RADIUS server, in the RADIUS server configuration mode,
use the following command:
p o rt port-number
l port-number – Specifies the port number of the RADIUS server. The value ranges from
1024 to 65535. The default value is 1812.
To restore the default value of the port number, in the RADIUS server configuration mode, use
the command:
n o p o rt
To configure the secret of the RADIUS server, in the RADIUS server configuration mode, use
the following command:
secret secret
To cancel the secret configuration of the RADIUS server, in the RADIUS server configuration
mode, use the command
n o secret
If the security device does not receive the response packets from the AAA server, it will resend
the authentication packets. Retry times refers to the times for the authentication packets resent to
the AAA server. To configure the retry times, in the RADIUS server configuration mode, use the
following command:
retries times
l times – Specifies a number of retry times for the authentication packets sent to the AAA
server. The value range is 1 to 10. The default value is 3.
To restore to the default value, in the RADIUS server configuration mode, use the command:
n o retries
If the security device does not receive response packets from the AAA server when the server
response time ends, the device will resend the authentication packets. To configure the timeout,
in the RADIUS server configuration mode, use the following command:
timeo ut time-value
l time-value – Specifies the response timeout for the server. The value range is 1 to 30
seconds. The default value is 3.
To restore to the default timeout, in the RADIUS server configuration mode, use the command:
n o timeo ut
During user authentication, the system will extract the user name based on the configured authen-
tication user name format. If the desired format is not available, the system will directly use the
original user name for authentication.
To specify the authentication user name format, in the RADIUS server configuration mode, use
the following command:
extract-username-format authenticate { [domain\username ] [username@domain] }
To delete configuration of the authentication user name format, in the RADIUS server con-
figuration mode, use the following command:
no extract-username-format authenticate { [domain\username ] [username@domain] }
While implementing policy control based on user name or user group, the system will search the
group to which a user name belongs from the organization units locally stored.
To specify the user name format supported when searching for the user group, in the RADIUS
server configuration mode, use the following command:
extract-username-format search-usergroup { [domain\username ] [username@domain] }
To delete configuration of the user name format for searching groups, in the RADIUS server con-
figuration mode, use the following command:
no extract-username-format search-usergroup { [domain\username ] [username@domain] }
After specifying the role mapping rule, the system will assign a role for users who have been
authenticated by the server according to the specified role mapping rule. To configure a role map-
ping rule, in the RADIUS server configuration mode, use the following command:
ro le-map p in g-rule rule-name
To cancel the role mapping rule configuration, in the RADIUS server configuration mode, use the
command:
n o ro le-map p in g-rule
To prevent illegal users from obtaining user name and password via brute-forth cracking, you can
configure the brute-force cracking defense by locking out user or IP, i.e., within the specified
period, if the failed attempts reached the specified times, the user or IP will be locked for a while.
The Brute-force Cracking Defense configuration includes:
By default, the Brute-force Cracking Defense function is disabled. To enable this function, in the
RADIUS server configuration mode, use the following command:
The number of attempts, that is, the allowed times of login failure within the specified time. To
configure the number of attempts, in the RADIUS server configuration mode, use the following
command:
lockout {ip | user} failed-attemptsnumber intervalinterval
l failed-attemptsnumber – Specifies the allowed times of login failure. For lockout user, the
range is 1 to 32, the default value is 5. For lockout IP, the range is 1 to 2048, the default
value is 64.
l interval interval – Specifies the allowed time of login. The range is 1 to 180 and the default
value is 60 seconds.
If the failed attempts reached the specified times in the specified time, the user or IP will be
locked out for a while. To configure the lockout time, in the RADIUS server configuration mode,
use the following command:
lockout {ip | user} lockout-time time
l lockout-timetime – Specifies the lockout time. The range is 30 to 180. The default value is
600 seconds for lockout user, and 60 seconds for lockout IP.
To view the information of locked user or IP, in any mode, use the following command:
sh o w aaa-server aaa-server-name lo cko ut {user [ username ] | ip [ ip-address vr_id number ]}
l user [username] - View the information of the locked user of the specified name.
To unlock and delete the user or IP, in any mode, use the following command:
exec aaa aaa-server aaa-server-name lo cko ut delete {user [ username ] | ip [ ip-address vr_id num-
ber ]}
After configuring a user blacklist for the RADIUS server, the system will not allow blacklist users
who are authenticated by the server to access any network resource. To configure a user blacklist,
in the RADIUS server configuration mode, use the following command:
user-b lack-list usern ame user-name
l user-name – Specifies the username of blacklist user. The value range is 1 to 63 characters.
To delete a user from the blacklist, in the RADIUS server configuration mode, use the following
command:
no user-black-list username user-name
After configuring a backup authentication server for the RADIUS server, the backup authen-
tication server will take over the authentication task when the primary server malfunctions or
authentication fails on the primary server. The backup authentication server can be different from
main server. It can be any existing local, Active-Directory, RADIUS or LDAP server defined in
the system. To configure a backup authentication server, in the RADIUS server configuration
mode, use the following command:
b ackup -aaa-server aaa-server-name
To cancel the specified backup authentication server, in the RADIUS server configuration mode,
use the following command:
n o b ackup -aaa-server
Notes:
l The backup authentication server and primary server should belong to the
same VSYS. For more information about VSYS, see Virtual System.
l Before deleting an AAA server, make sure the server is not specified as a
backup authentication server.
When a user is authenticated by the Radius server, when the user is authenticated successfully,
the Radius server will create a security policy for the authenticated user that includes the des-
tination network segment, destination port, protocol, and behavior. This policy is called an author-
ization policy. System supports two authorization policies: "Authorization Policy During
Authentication" and "Dynamic Authorization Policy". You can enable the authorization policy
function to enable to obtain the authorization policy from the Radius server and add it to the sys-
tem's policy list to make it effective. When the authenticated user is disconnected, the author-
ization policy will be deleted automatically.
By default, the authentication policy is disabled. To enable or disable the authentication policy, in
the RADIUS server configuration mode, use the following command:
After the authorization policy of the Radius server is enabled, you add the obtained authorization
policy to the aggregation policy that has been created, and arrange it as the member of aggregation
policy at the end of aggregation policy, which is more convenient for the user to manage the
authorization policy uniformly. If it is not added to the aggregation policy, the authorization
policy will be added to the end of the system policy list by default.
To add the authentication Policy to an aggregate policy, in the RADIUS server configuration
mode, use the following command:
authorization-policy associated-aggregate-rulerule-name
To cancel the configuration, in the RADIUS server configuration mode, use the following com-
mand:
no authorization-policy associated-aggregate-rule
Importing Dictionary
When a third party wants to customize some attributes, they can use a dictionary file to include its
self-defined fields. The dictionary file of Hillstone Networks is “dictionary.hillstone”. The
RADIUS server administrator adds dictionary.hillstone file into its server by editing the master
RADIUS dictionary.
dictionary.hillstone contains the following attributes:
Attribute Description
all=31
Users other than types listed here do not need this checking.
To enter the Active-Directory server configuration mode, in the global configuration mode, use
the command aaa-server aaa-server-name type active-directory.
The Active-Directory authentication server configuration includes:
l Specifying sAMAccountName
Configuring the IP Address, Domain Name, and VRouter of the Primary Server
To configure the IP address, domain name, or VRouter of the primary authentication server, in
the Active-Directory server configuration mode, use the following command:
h o st { ip-address | host-name }[vro uter vrouter-name ]
l vrouter vrouter-name – Specifies the VRouter that the primary server belongs to. The
default VRouter is trust-vr.
To delete the IP address or domain name configuration of the primary authentication server, in
the Active-Directory server configuration mode, use the command:
n o h o st
This configuration is optional. Backup server must be of the same type of primary server. When
the authentication does not pass primary server’s check, the backup server 1 and 2 will start
checking its credentials consecuritvely. To configure the IP address or domain name of the
backup authentication server 1, in the Active-Directory server configuration mode, use the fol-
lowing command:
b ackup 1 { ip-address | host-name }[vro uter vrouter-name ]
l ip-address | host-name – Specifies the IP address ( IPv4 or IPv6 ) or domain name of the
backup authentication server 1.
l vrouter vrouter-name – Specifies the VRouter that the backup server 1 belongs to. The
default VRouter is trust-vr.
To delete the IP address or domain name configuration of the backup authentication server 1, in
the Active-Directory server configuration mode, use the command:
n o b ackup 1
This configuration is optional. Backup server must be of the same type of primary server. When
the authentication does not pass primary server’s check, the backup server 1 and 2 will start
checking its credentials consecuritvely. To configure the IP address or domain name of the
backup authentication server 2, in the Active-Directory server configuration mode, use the fol-
lowing command:
l ip-address | host-name – Specifies the IP address ( IPv4 or IPv6 ) or domain name of the
backup authentication server 2.
l vrouter vrouter-name – Specifies the VRouter that the backup server 2 belongs to. The
default VRouter is trust-vr.
To delete the IP address or domain name configuration of the backup authentication server 2, in
the Active-Directory server configuration mode, use the command:
n o b ackup 2
To configure the port number of the Active-Directory server, in the Active-Directory server con-
figuration mode, use the following command:
p o rt port-number
l port-number – Specifies the port number of the Active-Directory server. The value range is
1 to 65535. The default value is 389.
To restore to the default port number, in the Active-Directory server configuration mode, use the
command:
n o p o rt
Plain text and MD5 method can be configured to authenticate or synchronize user between the
Active-Directory server and the system. To configure the authentication or synchronization
method, in the Active-Directory server configuration mode, use the following command:
auth -meth o d {p lain | digest-md5}
Notes: If the sAMAccountName is not configured after you specify the MD5
method, the plain method will be used in the process of synchronizing user from
the server, and the MD5 method will be used in the process of authenticating user.
Base-DN is the starting point at which your search will begin when the AD server receives an
authentication request. To specify the Base-DN, in the Active-Directory server configuration
mode, use the following command:
b ase-dn string
l string – Specifies the Base-DN for the Active-Directory server, such as dc = hillstonenet.
To cancel the Base-DN configuration, in the Active-Directory server configuration mode, use the
command:
n o b ase-dn
Synchronization Base-DN is the starting point at which the system synchronizes users and user
groups from the Active-Directory server. All users and user groups in the Base-DN will be syn-
chronized to the local when you specify the Synchronization Base-DN. To specify the Syn-
chronization Base-DN, in the Active-Directory server configuration mode, use the following
command:
sync-base-dnstring
l string - Specifies the starting point at which the system synchronizes users and user groups
from the Active-Directory server, such as OU=test, dc = com.
You can repeatedly execute the command to configure multiple paths to be synchronized.
When the Synchronization Base-DN is specified, all users and groups in the Synchronization
Base-DN will be synchronized to the local. If no Synchronization Base-DN is specified, all users
and groups in the Base-DN will be synchronized to the local. After you specify that the Syn-
chronization Object is users or groups, the system filters the information synchronized to the
local and retains the information of the specified object. To specify the Synchronization Object,
in the Active-Directory server configuration mode, use the following command:
sync-object {user | group}
l user –Specifies the Synchronization Object as users. System will retain user information
only.
l group–Specifies the Synchronization Object as groups. System will retain group inform-
ation only.
Base-DN is the starting point at which your search will begin when the AD server receives an
authentication request. All users in the Base-DN (including those directly under the user group)
will be allowed to pass the authentication when you specify the Authentication Base-DN. To spe-
cify the Authentication Base-DN, in the Active-Directory server configuration mode, use the fol-
lowing command:
auth-base-dnstring
l string - Specifies the Authentication Base-DN for the Active-Directory server, such as
OU=A, dc = hillstonenet.
If plain text method is configured to authenticate or synchronize user, the system will send the
login DN and the login password to the server to be authenticated, in order to connect to the
server for user authentication or synchronization. The login DN is typically a user account with
query privilege predefined by the Active-Directory server. To specify the login DN, in the Act-
ive-Directory server configuration mode, use the following command:
lo gin -dn string
l string – Specify the login DN for the Active-Directory server, which is a string of 1 to 255
characters and is not case sensitive.
To cancel the login DN configuration, in the Active-Directory server configuration mode, use the
command:
n o lo gin -dn
Specifying sAMAccountName
If MD5 method is configured to authenticate or synchronize user, the system will send the
sAMAccountName and the login password to the server to be authenticated, in order to connect
to the server for user authentication or synchronization. To specify the sAMAccountName, in the
Active-Directory server configuration mode, use the following command:
lo gin -dn sAMAcco un tName string
The login password here should correspond to the password for Login DN. To configure the
login password, in the Active-Directory server configuration mode, use the following command:
lo gin -p asswo rd string
To cancel the password configuration, in the Active-Directory server configuration mode, use the
command:
n o lo gin -p asswo rd
With the SSL encrypted connection function enabled, the system connects to the Active Dir-
ectory authentication server through SSL, thus ensuring the security of data transmission between
the system and the Active Directory authentication server. To enable/disable the SSL encrypted
connection, in the Active-Directory server configuration mode, use the following command:
connect-through-SSL {enable | disable}
l enable | disable - Enable (enable) or (disable) the SSL encrypted connection function.
During user authentication, the system will extract the user name based on the configured authen-
tication user name format. If the desired format is not available, the system will directly use the
original user name for authentication.
To specify the authentication user name format, in the Active-Directory server configuration
mode, use the following command:
extract-username-format authenticate { [domain\username ] [username@domain] }
To delete configuration of the authentication user name format, in the Active-Directory server
configuration mode, use the following command:
no extract-username-format authenticate { [domain\username ] [username@domain] }
While implementing policy control based on user name or user group, the system will search the
group to which a user name belongs from the organization units locally stored.
To specify the user name format supported when searching for the user group, in the Active-Dir-
ectory server configuration mode, use the following command:
extract-username-format search-usergroup { [domain\username ] [username@domain] }
After specifying the role mapping rule, the system will assign a role for users who have been
authenticated by the server according to the specified role mapping rule. To configure role map-
ping rules, in the Active-Directory server configuration mode, use the following command:
ro le-map p in g-rule rule-name
To cancel the role mapping rule configuration, in the Active-Directory server configuration mode,
use the command:
n o ro le-map p in g-rule
After configuring a user blacklist for the Active-Directory server, the system will not allow black-
list users who are authenticated by the server to access any network resource. To configure a user
blacklist, in the Active-Directory server configuration mode, use the following command:
user-b lack-list usern ame user-name
l user-name – Specifies the username of blacklist user. The value range is 1 to 63 characters.
To delete a user from the blacklist, in the Active-Directory server configuration mode, use the fol-
lowing command:
n o user-b lack-list usern ame user-name
To prevent illegal users from obtaining user name and password via brute-forth cracking, you can
configure the brute-force cracking defense by locking out user or IP, i.e., within the specified
period, if the failed attempts reached the specified times, the user or IP will be locked for a while.
The Brute-force Cracking Defense configuration includes:
By default, the Brute-force Cracking Defense function is disabled. To enable this function, in the
Active-Directory server configuration mode, use the following command:
The number of attempts, that is, the allowed times of login failure within the specified time. To
configure the number of attempts, in the Active-Directory server configuration mode, use the fol-
lowing command:
lockout {ip | user} failed-attemptsnumber intervalinterval
l failed-attemptsnumber – Specifies the allowed times of login failure. For lockout user, the
range is 1 to 32, the default value is 5. For lockout IP, the range is 1 to 2048, the default
value is 64.
l interval interval – Specifies the allowed time of login. The range is 1 to 180 and the default
value is 60 seconds.
If the failed attempts reached the specified times in the specified time, the user or IP will be
locked out for a while. To configure the lockout time, in the Active-Directory server con-
figuration mode, use the following command:
lockout {ip | user} lockout-time time
l lockout-timetime – Specifies the lockout time. The range is 30 to 180. The default value is
600 seconds for lockout user, and 60 seconds for lockout IP.
To view the information of locked user or IP, in any mode, use the following command:
sh o w aaa-server aaa-server-name lo cko ut {user [ username ] | ip [ ip-address vr_id number ]}
l user [username] - View the information of the locked user of the specified name.
To unlock and delete the user or IP, in any mode, use the following command:
exec aaa aaa-server aaa-server-name lo cko ut delete {user [ username ] | ip [ ip-address vr_id num-
ber ]}
User synchronization specifies that the system will synchronize user information on the con-
figured Active-Directory server to the local. By default, the system will synchronize user inform-
ation every 30 minutes.
Before synchronizing user information, you need to enable synchronization function. By default,
it is enabled. To enable or disable user synchronization function, in the Active-Directory con-
figuration mode, use the following command:
System supports two synchronization modes: manual synchronization and automatic syn-
chronization.
Manul Synchronization
In the Active-Directory configuration mode, use the following command to update the con-
nections with Active-Directory server and manually synchronize user information:
man ual-syn c
After executing the command, system will synchronize information immediately. If reconfigure
the command during synchronization process, the system will clear the existed user information
and resynchronize.
Automatic Synchronization
l HH:MM – Specifies the time when the user information is synchronized everyday. HH and
MM indicates hour and minute respectively.
l once – If this parameter is specified, the system will synchronize automatically when the con-
figuration of Active-Directory server is modified. After executing this command , the system
will synchronize user information immediately.
By default, the system will synchronize the user information on the authentication server to the
local every 30 minutes. To restore the automatic synchronization mode to default, in the Active-
Directory server configuration mode, use the following command:
n o auto -syn c
After configuring user filters, the system can only synchronize and authenticate users that are
match the filters on the authentication server. You must enter AAA server configuration mode
before configuring user filter.
To enter the Active-Directory server configuration mode, in the global configuration mode, use
the command:
aaa-server aaa-server-name type active-directory
To configure user-filter, in the Active-Directory server configuration mode, use the following
command:
user-filter filter-string
l filter-string – Specifies the user filters. The length is 0 to 120 characters. For example, when
you configure an Active-Directory server, if the filter-string is configured to “mem-
berOf=CN=Admin, DC=test, DC=com”, which indicates that the system only can syn-
chronize or authenticate user whose DN is “memberOf=CN=Admin,DC=test,DC=com”.
= Equals a value.
& and
| or
! not
~= fuzzy query
Notes:
l The hillstone system supports all the operators that Active-Directory server
supports.
l If the entered format does not comply with the rules of the Active-Directory
server, the system may fail to synchronize or authenticate users from the
server.
In the Active-Directory server configuration mode, use no user-filter to cancel the above con-
figuration.
Two synchronization modes can be selected to synchronize organization structure and user
information to local from Active-Directory server: OU-based and Group-based, so that you can
configure above two types of user group in security policy rules. By default, user information will
be synchronized to the local based on Group.
To configure the synchronization mode of user information, in the Active-Directory server con-
figuration mode, use the following command:
If the OU mode is selected, you can configure the maximum depth of OU to be synchronized. In
the Active-Directory server configuration mode, use the following command:
syn c-o u-dep th depth-value
After configuring a backup authentication server for the Active-Directory server, the backup
authentication server will take over the authentication task when the primary server malfunctions
or authentication fails on the primary server. The backup authentication server can be any existing
local, Active-Directory, RADIUS or LDAP server defined in the system. To configure a backup
authentication server, in the Active-Directory server configuration mode, use the following com-
mand:
b ackup -aaa-server aaa-server-name
To cancel the specified backup authentication server, in the Active-Directory server configuration
mode, use the following command:
n o b ackup -aaa-server
l The backup authentication server should not nest another backup authen-
tication server.
l Before deleting an AAA server, make sure the server is not specified as a
backup authentication server.
When you sync the users and user-groups from Active-Directory server, you can enable or disable
the user-groups under Base-DN Synchronization as need. In the Active-Directory server con-
figuration mode, use the following command:
To enter the LDAP server configuration mode, in the global configuration mode, use the com-
mand aaa-server aaa-server-name type ldap.
The LDAP authentication server configuration includes:
l Specifying Authid
To configure the IP address or domain name of the primary authentication server, in the LDAP
server configuration mode, use the following command:
h o st { ip-address | host-name }[vro uter vrouter-name ]
l ip-address | host-name – Specifies the IP address ( IPv4 or IPv6 )or domain name of the
primary authentication server.
l vrouter vrouter-name – Specifies the VRouter that the primary server belongs to. The
default VRouter is trust-vr.
To cancel the IP address or domain name configuration of the primary authentication server, in
the LDAP server configuration mode, use the command:
n o h o st
This configuration is optional. Backup server must be of the same type of primary server. When
the authentication does not pass primary server’s check, the backup server 1 and 2 will start
checking its credentials consecuritvely.To configure the IP address or domain name of the backup
authentication server 1, in the LDAP server configuration mode, use the following command:
b ackup 1 { ip-address | host-name }[vro uter vrouter-name ]
l vrouter vrouter-name – Specifies the VRouter that the backup server belongs to. The default
VRouter is trust-vr.
To cancel the IP address or domain name configuration of the backup authentication server 1, in
the LDAP server configuration mode, use the command:
n o b ackup 1
This configuration is optional. Backup server must be of the same type of primary server. When
the authentication does not pass primary server’s check, the backup server 1 and 2 will start
checking its credentials consecuritvely.To configure the IP address or domain name of the backup
authentication server 2, in the LDAP server configuration mode, use the following command:
b ackup 2 { ip-address | host-name }[vro uter vrouter-name ]
l ip-address | host-name – Specifies the IP address ( IPv4 or IPv6 ) or domain name of the
backup authentication server 2.
l vrouter vrouter-name – Specifies the VRouter that the backup server belongs to. The default
VRouter is trust-vr.
To cancel the IP address or domain name configuration of the backup authentication server 2, in
the LDAP server configuration mode, use the command
n o b ackup 2
To configure the port number of the LDAP server, in the LDAP server configuration mode, use
the following command:
p o rt port-number
To restore to the default value, in the LDAP server configuration mode, use the command:
n o p o rt
Plain text and MD5 method can be configured to authenticate or synchronize user between the
LDAP server and the system. To configure the authentication or synchronization method, in the
LDAP server configuration mode, use the following command:
auth -meth o d {p lain | digest-md5}
To restore to the default authentication or synchronization method, in the LDAP server con-
figuration mode, use the command:
n o auth -meth o d
Notes: If the Authid is not configured after you specify the MD5 method, the plain
method will be used in the process of synchronizing user from the server, and the
MD5 method will be used in the process of authenticating user.
Base-DN is the starting point at which your search will begin when the LDAP server receives an
authentication request. To specify the Base-DN, in the LDAP server configuration mode, use the
following command:
b ase-dn string
l string – Specifies the Base-DN for the LDAP server, such as dc = hillstonenet.
To cancel the Base-DN configuration, in the LDAP server configuration mode, use the command:
When the LDAP server receives an authentication request, it will begin search directories from
the Base-DN. If Synchronization Base-DN is specified, all users and groups in the Base-DN will
be synchronized to the local. To specify the Synchronization Base-DN, in the LDAP server con-
figuration mode, use the following command:
sync-base-dn string
l string - Specifies the Synchronization Base-DN for the LDAP server, such as OU=A, dc =
hillstonenet, dc=com.
To cancel the Synchronization Base-DN configuration, in the LDAP server configuration mode,
use the command no sync-base-dn.
If the Synchronization Base-DN is specified, only users and groups in the Synchronization Base-
DN directory will be synchronized to the local. If no Synchronization Base-DN is specified, users
and groups in the Base-DN will be synchronized to the local. After you specify that the Syn-
chronization Object is users or groups, the system filters the information synchronized to the
local and retains the information of the specified object. To specify the Synchronization Object.,
in the LDAP server configuration mode, use the following command:
sync-object {user | group}
l user –Specifies the Synchronization Object as users. System will retain user information
only.
l group–Specifies the Synchronization Object as groups. System will retain group inform-
ation only.
When the LDAP server receives an authentication request, it will begin search directories from
the Base-DN. All users in the Base-DN (including those directly under the user group) will be
l string - Specifies the Authentication Base-DN for the LDAP server, such as OU=A, dc = hill-
stonenet, dc=com.
To delete the Authentication Base-DN configuration, in the LDAP server configuration mode,
use the command no auth-base-dn.
If plain text method is configured to authenticate or synchronize user, the system will send the
login DN and the login password to the server to be authenticated, in order to connect to the
server for user authentication or synchronization. The login DN is typically a user account with
query privilege predefined by the LDAP server. To specify the login DN, in the LDAP server con-
figuration mode, use the following command:
lo gin -dn string
l string – Specify the login DN for the LDAP server, which is a string of 1 to 255 characters
and is not case sensitive.
To cancel the login DN configuration, in the LDAP server configuration mode, use the com-
mand:
n o lo gin -dn
Specifying Authid
If MD5 method is configured to authenticate or synchronize user, the system will send the
Authid and the login password to the server to be authenticated, in order to connect to the server
for user authentication or synchronization. To specify the Authid, in the LDAP server con-
figuration mode, use the following command:
lo gin -dn auth id string
l string – Specifies the Authid, which is a string of 1 to 63 characters and is case sensitive.
To cancel the Authid configuration, in the LDAP server configuration mode, use the command:
The login password here should correspond to the password for Login DN. To configure the
login password, in the LDAP server configuration mode, use the following command:
lo gin -p asswo rd string
To cancel the password configuration, in the LDAP server configuration mode, use the command:
n o lo gin -p asswo rd
With the SSL encrypted connection function enabled, the system connects to the LDAP authen-
tication server through SSL, thus ensuring the security of data transmission between the system
and the LDAP authentication server. To enable/disable the SSL encrypted connection, in the
LDAP server configuration mode, use the following command:
connect-through-SSL {enable | disable}
l enable | disable - Enable (enable) or (disable) the SSL encrypted connection function.
The name attribute is a string that uniquely identifies name in the LDAP server. To specify the
name attribute, in the LDAP server configuration mode, use the following command:
n amin g-attrib ute string
l string – Specifies the name attribute. The length is 1 to 63 characters. The string is usually
uid (User ID) or cn (Common Name). The default name attribute is uid.
To restore to the default value, in the LDAP server configuration mode, use the command:
n o n amin g-attrib ute
The name attribute is a string that uniquely identifies group name in the LDAP server. To specify
the group name attribute, in the LDAP server configuration mode, use the following command:
gro up -n amin g-attrib ute string
l string – Specifies the group name attribute. The length is 1 to 63 characters. The string is
usually uid (User ID) or cn (Common Name). The default name attribute is uid.
To restore to the default value, in the LDAP server configuration mode, use the command:
n o gro up -n amin g-attrib ute
To specify the ObjectClass of the Group-class, in the LDAP server configuration mode, use the
following command:
gro up -class string
l string – Specifies the Group-class. The length is 1 to 63 characters. The default value is
groupOfUniqueNames.
To restore to the default value, in the LDAP server configuration mode, use the command:
n o gro up -class
To specify the member attribute of the Group-class, in the LDAP server configuration mode, use
the following command:
memb er-attrib ute string
l string – Specifies the member attribute. The length is 1 to 63 characters. The default value is
uniqueMember.
To restore the default value, in the LDAP server configuration mode, use the command:
no member-attribute
During user authentication, the system will extract the user name based on the configured authen-
tication user name format. If the desired format is not available, the system will directly use the
original user name for authentication.
To specify the authentication user name format, in the LDAP server configuration mode, use the
following command:
extract-username-format authenticate { [domain\username ] [username@domain] }
To delete configuration of the authentication user name format, in the LDAP server configuration
mode, use the following command:
no extract-username-format authenticate { [domain\username ] [username@domain] }
While implementing policy control based on user name or user group, the system will search the
group to which a user name belongs from the organization units locally stored.
To specify the user name format supported when searching for the user group, in the LDAP
server configuration mode, use the following command:
extract-username-format search-usergroup { [domain\username ] [username@domain] }
To delete configuration of the user name format for searching groups, in the LDAP server con-
figuration mode, use the following command:
no extract-username-format search-usergroup { [domain\username ] [username@domain] }
After specifying the role mapping rule, the system will assign a role for users who have been
authenticated by the server according to the specified role mapping rule. To configure role map-
ping rules, in the LDAP server configuration mode, use the following command:
ro le-map p in g-rule rule-name
To cancel the role mapping rule configuration, in the LDAP server configuration mode, use the
command
n o ro le-map p in g-rule
After configuring a user blacklist for the LDAP server, the system will not allow blacklist users
who are authenticated by the server to access any network resource. To configure a user blacklist,
in the LDAP server configuration mode, use the following command:
user-b lack-list usern ame user-name
l user-name – Specifies the username of blacklist user. The value range is 1 to 63 characters.
To delete a user from the blacklist, in the LDAP server configuration mode, use the following
command:
n o user-b lack-list usern ame user-name
To prevent illegal users from obtaining user name and password via brute-forth cracking, you can
configure the brute-force cracking defense by locking out user or IP, i.e., within the specified
period, if the failed attempts reached the specified times, the user or IP will be locked for a while.
The Brute-force Cracking Defense configuration includes:
By default, the Brute-force Cracking Defense function is disabled. To enable this function, in the
LDAP server configuration mode, use the following command:
The number of attempts, that is, the allowed times of login failure within the specified time. To
configure the number of attempts, in the LDAP server configuration mode, use the following
command:
lockout {ip | user} failed-attemptsnumber intervalinterval
l failed-attemptsnumber – Specifies the allowed times of login failure. For lockout user, the
range is 1 to 32, the default value is 5. For lockout IP, the range is 1 to 2048, the default
value is 64.
l interval interval – Specifies the allowed time of login. The range is 1 to 180 and the default
value is 60 seconds.
If the failed attempts reached the specified times in the specified time, the user or IP will be
locked out for a while. To configure the lockout time, in the LDAP server configuration mode,
use the following command:
lockout {ip | user} lockout-time time
l lockout-timetime – Specifies the lockout time. The range is 30 to 180. The default value is
600 seconds for lockout user, and 60 seconds for lockout IP.
To view the information of locked user or IP, in any mode, use the following command:
sh o w aaa-server aaa-server-name lo cko ut {user [ username ] | ip [ ip-address vr_id number ]}
l user [username] - View the information of the locked user of the specified name.
To unlock and delete the user or IP, in any mode, use the following command:
exec aaa aaa-server aaa-server-name lo cko ut delete {user [ username ] | ip [ ip-address vr_id num-
ber ]}
User Synchronization
User synchronization specifies that the system will synchronize user information on the con-
figured LDAP server to the local. By default, the system will synchronize user information every
30 minutes.
Before synchronizing user information, you need to enable synchronization function. By default,
it is enabled. To enable or disable user synchronization function, in the LDAP configuration
mode, use the following command:
System supports two synchronization modes: manual synchronization and automatic syn-
chronization.
Manul Synchronization
After executing the command, system will synchronize information immediately. If reconfigure
the command during synchronization process, the system will clear the existed user information
and resynchronize.
Automatic Synchronization
To configure the automatic synchronization, in the LDAP server configuration mode, use the fol-
lowing command:
auto -syn c {p erio dically interval | daily HH:MM | o n ce}
l interval – Specifies the time interval of automatic synchronization. The value range is 30 to
1440 minutes. The default value is 30.
l HH:MM – Specifies the time when the user information is synchronized everyday. HH and
MM indicates hour and minute respectively.
l once – If this parameter is specified, the system will synchronize automatically when the con-
figuration of LDAP server is modified. After executing this command , the system will syn-
chronize user information immediately.
By default, the system will synchronize the user information on the authentication server to the
local every 30 minutes. To restore the automatic synchronization mode to default, in the LDAP
server configuration mode, use the following command:
n o auto -syn c
After configuring user filters, the system can only synchronize and authenticate users that are
match the filters on the authentication server. You must enter AAA server configuration mode
before configuring user filter.
To enter the LDAP server configuration mode, in the global configuration mode, use the com-
mand:
l filter-string – Specifies the user filters. The length is 0 to 120 characters. For example, when
you configure a LDAP server, if the filter-string is configured to “(|(object-
class=inetOrgperson)(objectclass=person))”, which means that the system only can syn-
chronize or authenticate users which are defined as inetOrgperson or person.
Operator Meaning
= equals a value
& and
| or
! not
~= fuzzy query
Notes:
l The hillstone system supports all the operators that LDAP server supports.
l If the entered format does not comply with the rules of the LDAP server, the
system may fail to synchronize or authenticate users from the server.
In the LDAP server configuration mode, use no user-filter to cancel the above configuration.
Two synchronization modes can be selected to synchronize organization structure and user
information to local from LDAP server: OU-based and Group-based, so that you can configure
above two types of user group in security policy rules. By default, user information will be syn-
chronized to the local based on Group.
To configure the synchronization mode of user information, in the LDAP server configuration
mode, use the following command:
syn c-typ e {o u | gro up }
If the OU mode is selected, you can configure the maximum depth of OU to be synchronized. In
the LDAP server configuration mode, use the following command:
syn c-o u-dep th depth-value
After configuring a backup authentication server for the LDAP server, the backup authentication
server will take over the authentication task when the primary server malfunctions or authen-
tication fails on the primary server. The backup authentication server can be any existing local,
Active-Directory, RADIUS or LDAP server defined in the system. To configure a backup authen-
tication server, in the LDAP server configuration mode, use the following command:
b ackup -aaa-server aaa-server-name
Notes:
l The backup authentication server and primary server should belong to the
same VSYS. For more information about VSYS, see Virtual System.
l The backup authentication server should not nest another backup authen-
tication server.
l Before deleting an AAA server, make sure the server is not specified as a
backup authentication server.
Unser global mode, use the command aaa-server aaa-server-name type tacacs+ to enter
TACACS+ server configuration mode.
Configuration of TACACS+ server includes:
l ip-address | host-name – Specify the IP address or domain name of the current primary
TACACS+ server.
l vrouter vrouter-name – Specify the VRouter which the current TACACS+ server belongs
to. The default VR is trust-vr.
Under TACACS+ server configuration mode, use the no command to delete its IP or domain
name configuraiton :
n o h o st
This configuration is optional. Backup server must be of the same type of primary server. When
the authentication does not pass primary server’s check, the backup server 1 and 2 will start
checking its credentials consecuritvely.To configure the IP address or domain name of the backup
authentication server 1, in the TACACS+ server configuration mode, use the following com-
mand:
b ackup 1 { ip-address | host-name }[vro uter vrouter-name ]
l vrouter vrouter-name – Specifies the VRouter that the backup server belongs to. The default
VRouter is trust-vr.
To cancel the IP address or domain name configuration of the backup authentication server 1, in
the TACACS+ server configuration mode, use the command:
n o b ackup 1
This configuration is optional. Backup server must be of the same type of primary server. When
the authentication does not pass primary server’s check, the backup server 1 and 2 will start
checking its credentials consecuritvely.To configure the IP address or domain name of the backup
authentication server 1, in the TACACS+ server configuration mode, use the following com-
mand:
b ackup 2 { ip-address | host-name }[vro uter vrouter-name ]
l ip-address | host-name – Specifies the IP address or domain name of the backup authen-
tication server 2.
l vrouter vrouter-name – Specifies the VRouter that the backup server belongs to. The default
VRouter is trust-vr.
To cancel the IP address or domain name configuration of the backup authentication server 1, in
the TACACS+ server configuration mode, use the command:
n o b ackup 2
To configure the port number of the TACACS+ server, in its TACACS+ server configuration
mode, use the following command:
p o rt port-number
l port-number – Specifies the port number of the LDAP server. The default value is 49.
To configure the secret of TACACS+ server, under TACACS+ server configuration mode, use
the command below:
secret secret
l secret – Specifies the secret string of TACACS+ server. The range is 1 to 31 characters.
To delete secret, under TACACS+ server configuration mode, use the no command:
n o secret
During user authentication, the system will extract the user name based on the configured authen-
tication user name format. If the desired format is not available, the system will directly use the
original user name for authentication.
To specify the authentication user name format, in the TACACS+ server configuration mode, use
the following command:
extract-username-format authenticate { [domain\username ] [username@domain] }
To delete configuration of the authentication user name format, in the TACACS+ server con-
figuration mode, use the following command:
no extract-username-format authenticate { [domain\username ] [username@domain] }
While implementing policy control based on user name or user group, the system will search the
group to which a user name belongs from the organization units locally stored.
To specify the user name format supported when searching for the user group, in the TACACS+
server configuration mode, use the following command:
extract-username-format search-usergroup { [domain\username ] [username@domain] }
To delete configuration of the user name format for searching groups, in the TACACS+ server
configuration mode, use the following command:
no extract-username-format search-usergroup { [domain\username ] [username@domain] }
The role mapping rule can allocate a role for the authenticated users in this server.
To assign a role mapping rule to users in TACACS+ server, under TACACS+ server con-
figuration mode, use the command below:
ro le-map p in g-rule rule-name
To cancel this rule, under TACACS+ server configuration mode, use the command:
n o ro le-map p in g-rule
TACACS+ server should also be configured if it wants to communicate with StoneOS system.
The configuration is to add some user defined attributes.
You should make the following changes in TACACS+ server:
l For tac_plus in Linux: add hillstone attributes, seet the table below:
l For Cisco acs 4.2 and above:add new server with name “hillstone” and edit the service
attributes to include hillstone characters, see table below:
Attribute Description
Only read=0
user-group This attribute is optional. It defines the user group of the spe-
cified user. User group is for user group based policy control.
To prevent illegal users from obtaining user name and password via brute-forth cracking, you can
configure the brute-force cracking defense by locking out user or IP, i.e., within the specified
period, if the failed attempts reached the specified times, the user or IP will be locked for a while.
The Brute-force Cracking Defense configuration includes:
By default, the Brute-force Cracking Defense function is disabled. To enable this function, in the
TACACS+ server configuration mode, use the following command:
The number of attempts, that is, the allowed times of login failure within the specified time. To
configure the number of attempts, in the TACACS+ server configuration mode, use the following
command:
lockout {ip | user} failed-attemptsnumber intervalinterval
l failed-attemptsnumber – Specifies the allowed times of login failure. For lockout user, the
range is 1 to 32, the default value is 5. For lockout IP, the range is 1 to 2048, the default
l interval interval – Specifies the allowed time of login. The range is 1 to 180 and the default
value is 60 seconds.
If the failed attempts reached the specified times in the specified time, the user or IP will be
locked out for a while. To configure the lockout time, in the TACACS+ server configuration
mode, use the following command:
lockout {ip | user} lockout-time time
l lockout-timetime – Specifies the lockout time. The range is 30 to 180. The default value is
600 seconds for lockout user, and 60 seconds for lockout IP.
To view the information of locked user or IP, in any mode, use the following command:
sh o w aaa-server aaa-server-name lo cko ut {user [ username ] | ip [ ip-address vr_id number ]}
l user [username] - View the information of the locked user of the specified name.
To unlock and delete the user or IP, in any mode, use the following command:
exec aaa aaa-server aaa-server-name lo cko ut delete {user [ username ] | ip [ ip-address vr_id num-
ber ]}
Hillstone devices support accounting for authenticated users via a RADIUS server. To enter the
RADIUS server configuration mode, in the global configuration mode, use the command aaa-
server aaa-server-name type radius.
The RADIUS accounting server configuration includes:
To enable/disable the accounting function of the RADIUS server, in the RADIUS server con-
figuration mode, use the following commands:
After enabling the accounting function, you can continue to configure other parameters.
To configure the IP address or domain name of the primary or backup accounting server, in the
RADIUS server configuration mode, use the following command:
acco un tin g {h o st { ip-address | host-name } | b ackup 1 { ip-address | host-name } | b ackup 2
{ ip-address | host-name }}
l host {ip-address | host-name} – Specifies the IP address or domain name of the primary
server.
l backup1 {ip-address | host-name} – Specifies the IP address or domain name of the backup
server 1.
l backup2 {ip-address | host-name} – Specifies the IP address or domain name of the backup
server 2.
To cancel the IP address or domain name configuration of the primary or backup server, in the
RADIUS server configuration mode, use the command:
n o acco un tin g {h o st | b ackup 1 | b ackup 2}
To configure the port number of the accounting server, in the RADIUS server configuration
mode, use the following command:
acco un tin g p o rt port-number
l port-number – Specifies the port number of the accounting server. The value range is 1024
to 65535. The default value is 1813.
To restore to the default value of the port number, in the RADIUS server configuration mode,
use the command:
n o acco un tin g p o rt
To configure the secret of the accounting server, in the RADIUS server configuration mode, use
the following command:
acco un tin g secret secret
l secret – Specifies the secret string of the accounting server. The length is 1 to 31 characters.
To cancel the secret configuration of the accounting server, in the RADIUS server configuration
mode, use the command:
n o acco un tin g secret
After the offline management of accouting user is enabled, the system will disconnect from the
specified offline user and stop charging according to the offline user information on the Radius
server (including the name of the offline user, the IP address of the offline user, the accounting
ID). By default, the function is disabled.
To enable the offline management of accouting user, in the RADIUS server configuration mode,
use the following command:
un so licited-message en ab le
To disable the offline management of accouting user, in the RADIUS server configuration mode,
use the following command:
n o un so licited-message en ab le
The Radius server supports encrypted storage and encrypted transmission of passwords using the
extended password encryption algorithm of SM4. To configure the SM4 extended password
encryption algorithm for the Radius server, you need to use the relevant commands in the exten-
ded-option configuration mode.
To enter the extended-option configuration mode, in the RADIUS server configuration mode,
use the following command:
extend-option
l SM4- Specifies the SM4 extended password encryption algorithm. SM4 is not case sensitive.
To delete the specified extended password encryption algorithm of SM4, use command no encryp-
tion-algorithm.
After configuring the AAA authentication server, you need to specify one server as the authen-
tication server for the system administrator. By default, the StoneOS system uses the local server
as the authentication server, which cannot be deleted.
To Configure authentication and authorization for the server, in the global configuration mode,
use the following command:
admin auth o rizatio n -mo de {lo cal | aaa-server server-name [disab le-retry-lo cal]}
l disable-retry-local - Disables the function of the local password retry. By default, if the
configured external authentication server is not reachable or the server returns the noti-
fication of the password error to StoneOS, the StoneOS system will use the local server
as the authentication server. You can disable the function of the local password retry,
that is, disable local server authentication. If the specified external server returns the
notification of the password error to StoneOS, the local server cannot be used for
To restore to the default authentication server, in the global configuration mode, use the com-
mand no admin authorization-mode.
You can, according to your own needs, preferentially use the local server for authentication for
administrators who access through the Console mode. If the local server is unreachable or the
authentication server is unavailable, the StoneOS system uses the default Radius server for admin-
istrator authentication. To specify the local server as the authentication server for administrators
who access through the Console mode, in the global configuration mode, use the following com-
mand:
admin co n so le lo cal-auth -p rio r
To disable local server authentication, use the command no admin console local-auth-prior.
To view the authorization information of the authentication server, in any mode, use the fol-
lowing command:
sh o w admin auth o rizatio n -mo de
To view the local server authentication enabled status, in any mode, use the following command:
sh o w admin co n so le lo cal-auth -p rio r
If you select the local server authorization, you need to configure the administrator and authen-
tication information. To configure the authentication server, use the following command in the
administrator role configuration mode:
authentication-server {local | aaa-server server-name [retry-local]}
l retry-local - Enables the function of the local password retry. If the external server is
unreachable and the local password retry is enabled, the StoneOS system will use the
local server as the authentication server. the local server is used for system admin-
istrator authentication. If the function of the local password retry is disabled, the local
server cannot be used for administrator authentication. If the external server returnsthe
notification of the password error to StoneOS, direct authentication fails, regardless of
whether retry-local is configured.
To view the configuration information of AAA server, in any mode, use the following command:
sh o w aaa-server [ server-name ]
To view the user blacklist information, in any mode, use the following command:
sh o w user-b lack-list
To view the debug information of AAA, in any mode, use the following command:
deb ug aaa [acco un tin g | auth en ticatio n | auth o rizatio n | in tern al | radius | ldap | user]
l internal - Shows debug information when local users access to the device via local authen-
tication.
l ldap - Shows debug information for the LDAP (including Active-Directory server and LDAP
server) authentication.
l user – Shows debug information when the local user attributes change.
l When the user is authenticated successfully, the Radius server can send a Radius CoA
(Change of Authorization) request message to the authority of the authenticated user to the
device. The device automatically generates the security policy rule for the user. When the user
goes offline, the device delete this user's security policy rule automatically
l When the SCVPN user is authenticated successfully, the Radius server can send a Radius DM
(Disconnect Messages) request message to send the accounting user information (including
the user name, user IP address, user accounting ID, etc.) to the device, and the device can dis-
connect the specified scvpn authentication user and end the accounting.
By default, the Radius dynamic authorization is disabled. To enable or disable the Radius dynamic
authorization, in the global configuration mode, use the following command:
Notes: If you need to use the Radius dynamic authorization function, first enable
and configure the Radius accounting server. For the configuration, refer to "Con-
figuring a RADIUS Accounting Server" on Page 1049.
To configure a Radius dynamic authorization server, in the global configuration mode, user the fol-
lowing command:
radius-server dyn amic-auth o rizatio n {server-ip ip-address [destin atio n -ip destination-ip ]}
{secret key-string }
l secret key-string - Specifies the secret string of the Radius dynamic authorization server. The
length is 1 to 31 characters.
To delete the configuration of the Radius dynamic authorization server, in the global con-
figuration mode, user the following command:
no radius-server dynamic-authorizationserver-ipip-address
To configure the port number of the Radius dynamic authorization server, in the global con-
figuration mode, user the following command:
radius-server dyn amic-auth o rizatio n p o rt port-number
l port-number- Specifies the port number of the Radius dynamic authorization server. The
value range is 1024 to 65535. The default value is 3799.
To restore to the default value of the port number, in the global configuration mode, user the fol-
lowing command:
no radius-server dynamic-authorization port
To view the Radius dynamic authorization server configuration, in any mode, use the following
command:
show radius-server dynamic-authorization
To enter the Radius Snooping configuration mode, use the following command in the global con-
figuration mode:
user-sso server radius-snooping default
By default, the Radius Snooping function is disabled. To enable this function, use the following
command in the Radius Snooping configuration mode:
l Enable: enable
l Disable: no enable
To specify the AAA server referenced by system, use the following command in the Radius
Snooping configuration mode:
aaa-server aaa-server-name
l aaa-server-name – Specifies the name of the AAA server. The Local, AD or LDAP server is
available to select on the AAA server. You’re suggested to directly select the configured
authentication AD server. After selecting the AAA server, system can query the
To cancel the above configurations, use the following command in the Radius Snooping con-
figuration mode:
n o aaa-server
If the device does not receive the mirrored RADIUS packets within the specified time period, it
will delete the mappings between the usernames and the IP addresses. To specify the time period,
namely the idle time, use the following command in the Radius Snooping configuration mode:
idle-timeo ut timeout
l timeout – Specifies the idle time (in minutes). The value ranges from 1 to 1440.
By default, system will not delete the user authentication information if there is no traffic. To
restore the idle time to the default value, use the following command in the Radius Snooping con-
figuration mode:
n o idle-timeo ut
To specify the forced logout time, in the Radius Snooping configuration mode, use the following
command:
fo rce-timeo ut time
l time - Specified the forced logout time. When the online time of a user exceeds the con-
figured force timeout time, system will kick out the user and force the user to log out. The
range is 0 (the function is disabled) to 1440 minutes, and the default value is 600 minutes.
To restore the configured force timeout time to default, in the Radius Snooping configuration
mode, use the following command:
n o fo rce-timeo ut
When authentication is successful, the system will automatically reconfirm login information
before the configured timeout value ends in order to maintain the login status. If configuring the
idle time at the same time, you will log off from the system at the smaller value. To configure the
heartbeat timeout value, in the Radius Snooping configuration mode, use the following command:
h eartb eat-timeo ut { interval | disab le}
l interval – Specifies the heartbeat timeout value. The value range is 3 to 1440 minutes. The
default value is 5 minutes.
To restore to the default heartbeat timeout value, in the Radius Snooping configuration mode, use
the command:
n o h eartb eat-timeo ut
With the Username Filter function, the system excludes usernames ended with a specific string
and generates user authentication information only for usernames that are not excluded by the
"not end with" filter condition.
To configure username filter, in the Radius Snooping configuration mode, use the following
command:
l not-end-with filter-string - The "not end with" filter condition indicates that usernames ended
with a specific string are excluded. The system generates user authentication information only
for usernames not excluded by the "not end with" filter condition. The value range of the
string is from 1 to 15 characters.
To delete username filter configuration, in the Radius Snooping configuration mode, use the fol-
lowing command:
To view the Radius Snooping configuration information, in any mode, use the following com-
mand:
sh o w user-sso server radius-sn o o p in g default
Configuration Example
This example shows how to use the external RADIUS authentication server to authenticate Tel-
net users. Specific requirements and configurations are described as below.
Requirement
The goal is to authenticate the Telnet users via RADIUS server. IP address of the RADIUS
authentication server is 202.10.1.2, and there is no back-up server. The retry time is the default
value 3. The response timeout is the default value 3. Port 1812 is used for RADIUS authen-
tication. The figure below shows the networking topology.
Configuration Steps
hostname# co n figure
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-aaa-server)# h o st 202.10.1.2
hostname(config-aaa-server)# p o rt 1645
hostname(config-aaa-server)# exit
===================================================-
===========
aaa-server: radius
type: radius
role-mapping-rule :
backup-aaa-server :
first backup :
radius setting:
accounting setting:
first backup :
second backup :
===================================================-
===========
Overview
System supports various methods of user identification, which is used to authenticate users who
access the Internet via the device.
Web Authentication
After the Web authentication (WebAuth) is configured, when you open a browser to access the
Internet, the page will redirect to the WebAuth login page. According to different authentication
modes, you need to provide corresponded authentication information. With the successful Web
authentication, system will allocate the role for IP address according to the policy configuration,
which provides a role-based access control method.
If you use HTTPS request to trigger WebAuth, it only supports unilateral SSL proxy. System will
enable the SSL connection during the authentication. After the authentication is completed, SSL
proxy will be invalid. The client and server communicate directly without SSL encryption.
In addition, system supports customizing WebAuth page. For more information, refer to Cus-
tomizing WebAuth Login Pages.
To enter the WebAuth configuration mode, in the global configuration mode, use the following
command:
web auth
Enabling/Disabling WebAuth
By default, the WebAuth is disabled. To enable the WebAuth function, in the WebAuth con-
figuration mode, use the following commands:
enable
To disable the WebAuth function, in the WebAuth configuration mode, use the following com-
mand:
l Password Authentication: Using username and password during the Web authentication.
l SMS Authentication: Using SMS during the Web authentication. In the login page, you need
to enter the mobile number and the received SMS verification code. If the SMS verification
code is correct, you can pass the authentication.
l NTLM Authentication: System obtains the login user information of the local PC terminal
automatically , and then verifies the identity of the user.
Web authentication mode can be divided into the single authentication mode and combined
authentication mode.
Notes: NTLM authentication mode only supports the Active Directory servers
deployed in Windows Server 2008 or older versions.
To configure the single authentication mode, in the WebAuth configuration mode, use the fol-
lowing command:
mo de { p asswo rd | sms | n tlm}
You can specify the combined authentications used in the Web authentication login page, that is,
the combined authentication mode.
l System can integrate the password authentication with the SMS authentication, as shown in
the figure:Password Authentication or SMS Authentication.
To configure the combined authentication mode, in the WebAuth configuration mode, use the fol-
lowing command:
mo dep asswo rd-sms
To restore to the default password authentication mode, in the WebAuth configuration mode, use
the following command:
n o mo de
System supports HTTP and HTTPS. HTTP mode is faster, and HTTPS mode is more secure. To
configure the protocol type, in the WebAuth configuration mode, use the following command:
p ro to co l {h ttp | h ttp s}
To restore to the default HTTP protocol type, in the WebAuth configuration mode, use the fol-
lowing command:
n o p ro to co l
After the WebAuth function is enabled, the WebAuth function of all interfaces is disabled by
default. To specify the Webauth global default configuration of the interface, in the WebAuth con-
figuration mode, use the following command:
in terface glo b al-default {en ab le | disab le}
l enable – Specifies that the WebAuth function of all interfaces is enabled by default.
l disable – Specifies that the WebAuth function of all interfaces is disabled by default .
Tip: For more information about configuring the WebAuth of interface, refer to
Enabling/Disabling the WebAuth of Interface.
To configure the HTTP or HTTPS port number for the authentication server, in the WebAuth
configuration mode, use the following commands:
h ttp -p o rt port-number
l port-number – Specifies the HTTPS port number. The value range is 1 to 65535. The
default value is 44433.
To restore to the default value of the HTTP or HTTPS port number, in the WebAuth con-
figuration mode, use the following commands:
n o h ttp -p o rt
n o h ttp s-p o rt
Notes: HTTP port number and HTTPS port number should be different.
After enabling the Web authentication, the device will authenticate the HTTP request whose des-
tination port is 80. When the HTTP traffic of accessing network needs to have a proxy by the
HTTP proxy server, you need to specify the HTTP proxy server port in the device. Then, the
device can authenticate the HTTP request sent to the proxy server.
To specify the HTTP proxy server port, in the WebAuth configuration mode, use the following
command:
p ro xy-p o rt port-number
l port-number – Specify the port that the HTTP proxy server used for the HTTP request
proxy. The value ranges from 1 to 65535.
Use the no proxy-port command to cancel the HTTP proxy server port settings. The device will
authenticate the HTTP request whose destination port is 80.
After enabling the Web authentication function and specifying the HTTP proxy server port, each
user must add the IP address of the device to the Exceptions list in the Proxy Settings in the Web
browser. With this operation, the Web authentication can be performed.
To configure the HTTPS trust domain name, in the WebAuth configuration mode, use the fol-
lowing command:
https-trust-domain trust-domain-name
l trust-domain-name – Specifies the name of the HTTPS trust domain. Before executing this
command, this new PKI trust domain must have been added into system, and you should
make sure that the local certificate purchased from the certificate authority has been imported
into it. By default, HTTPS trust domain is trust_domain_default, which will result in the
untrusted certificate warning.
To restore to the default HTTPS trust domain trust_domain_default, in the WebAuth con-
figuration mode, use the following command:
no https-trust-domain
By default, the address type of authentication user is IP address. To specify the address type of
authentication user, in the WebAuth configuration mode, use the following command:
address-typ e {ip | mac}
l mac – Specifies MAC address as the address type of authentication user. The device needs
to be deployed in the same Layer 2 network environment with the client. Otherwise, system
will fail to get the MAC address of the client or get the incorrect MAC address.
To restore to the default address type, in the WebAuth configuration mode, use the following
command:
no address-type
By default, the multi-logon function is disabled. If it is enabled, you can log into multiple clients
using the same username simultaneously. To enable the multi-logon function, in the WebAuth
configuration mode, use the following command:
multi-lo go n
After executing this command, the multi-logon function is enabled, and the number of clients
using one username is limited. To specify the number of clients, in the WebAuth configuration
mode, use the following command:
multi-lo go n number
l number – Specifies how many times the same username can be logged in simultaneously.
The value range is 2 to 1000 times.
To disable this function, in the WebAuth configuration mode, use the command:
n o multi-lo go n
The auto-kickout function means that only one user is allowed to login on one client. When the
same user logs in again, according to the configuration, system will kick out the registered user or
prevent the same user from logging in again.
Kicking out the registered user, that is, the system will disconnect the original connection and use
the new logon information to replace the original logon information. To kick out the registered
user, in the WebAuth configuration mode, use the following commands:
auto -kicko ut
To prevent the same user from logging in again, in the WebAuth configuration mode, use the fol-
lowing commands:
n o auto -kicko ut
You can enable the proactive WebAuth under L3 interface of device. After enabling, you can
access the Web authentication address initiate authentication request, and then fill in the correct
user name and password in the authentication login page. The Web authentication address con-
sists of the IP address of the interface and the port number of the HTTP/HTTPS of the authen-
tication server. For example the IP address of the interface is 192.168.3.1, authentication server
HTTP/HTTPS port numbe is respectively configured as 8182/44434. When the authentication
server is configured for HTTP authentication mode, Web address is: http:// 192.168.3.1:8182;
when the authentication server is configured for HTTPS mode, the Web address for the https://
192.168.3.1:44434 certification.
To enable proactive WebAuth, in the interface configuration mode, use the following command:
web auth aaa-server aaa-server-name
To disable the proactive WebAuth function, in the interface configuration mode, use the fol-
lowing command:
n o web auth aaa-server
Notes:
l When enable proactive WebAuth in L3 interface, you need to ensure that the
system's WebAuth function is enabled, otherwise it will not work.
l The proactive WebAuth function only supports the mode of password and
SMS authentication. If the system is configured with NTLM authentication
After the WebAuth function is enabled, the WebAuth function of all interfaces is disabled by
default. To enable the WebAuth function of the specified interface, in the interface configuration
mode, use the following command:
web auth en ab le
To disable the WebAuth function of the specified interface, in the interface configuration mode,
use the following command:
web auth disab le
To specify that the interface uses the global default configuration of WebAuth, in the interface
configuration mode, use the following command:
web auth glo b al-default
Tip:
l It is recommended to use the command after the WebAuth is enabled, oth-
erwise the configuration is invalid.
l For more information about WebAuth global default configuration, see Spe-
cifying the WebAuth Global Default Configuration of Interface.
In passive WebAuth, you will be prompted to check the identity on the authentication page if you
visit a service. In this case, if the Web authentication address is configured with a domain name
(that is, configure the domain name for the IP address of the interface), the URL of the Web
l domain-name - Specifies the domain name of the Web authentication address. The value range
is from 1 to 255 characters.
To delete the domain name configuration of the Web authentication address, in the interface con-
figuration mode, use the following command:
no webauth domain
Disconnecting a User
You can disconnect a specific user from a WebAuth system by CLI. To disconnect a user, in any
mode, use the following command:
exec user-map p in g web auth {n tlm | p asswo rd | sms } kicko ut {{ip ip-address | mac mac-
address } vro uter vrouter | usern ame username { auth -server auth-server-name }}
Notes: You need to specify the VRouter or the authentication server to avoid dis-
connecting too many users with the same name from the WebAuth system.
Local users can change their password on the login page after successful authentication. By
default, this function is disabled. To enable or disable password change by local users, in the local
sever configuration mode, in the password control mode, use the following commands:
l Enable: allow-pwd-change
l Disable: no allow-pwd-change
To change the login password, local users can take the following steps:
1. Enter the correct username and password on the WebAuth login page, and then click Login.
2. After successful login, click Modify on the login page. See the figure below:
You should configure corresponding policy rules to make WebAuth take effect. To configure
WebAuth parameters for a policy rule, in the policy rule configuration mode, use the following
commands:
Tip: For information about how to configure a policy rule, see Policy.
The system supports the customizing WebAuth login page function. After WebAuth is enabled,
the default login page is shown as the figure below:
You can customize the WebAuth login page by downloading the zip file and modifying the con-
tents. To import the modified zip file you need to the system, in the execution mode, use the fol-
lowing command:
imp o rt custo mize web auth fro m { ftp server ip-address [vro uter vrouter-name ] [user user-
name password password ] | tftp server ip-address [vro uter vrouter-name ]} file-name
l ftp server ip-address [vrouter vrouter-name] [user user-name password password] – Specify
to get the zip file from the FTP server, and configure the IP address, VRouter, username and
password of the server. If the username and password are not specified, you will login anonym-
ously by default.
l tftp server ip-address [vrouter vrouter-name] – Specify to get the zip file from the TFTP
server, and configure the IP address and VRouter of the server.
To restore to the default WebAuth login page, in any mode, use the following command:
exec custo mize web auth default
Notes:
l After upgrading the previous version to the 5.5R6 version, the WebAuth
login page you already specified will be invalid and restored to the default
page. You should re-download the template after the version upgrade and cus-
tomize the login page.
l After upgrading the system version, you should re-download the template,
modify the source file, and then upload the custom page compression pack-
age. If the uploaded package version is not consistent with the current system
version, the function of the custom login page will not be used normally.
l System can only save one file of the default template page and the cus-
tomized page. When you upload the new customized page file, the old file
will be covered. It is suggested to back up the old file.
l When you modify the zip file, see “readme_cn.md” file or “readme_
en.md” file.
To export the default modified zip file, in the execution mode, use the following command:
exp o rt web auth default-p age to {ftp server ip-address [vro uter vrouter-name ] [user user-
name p asswo rd password ] | tftp server ip-address [vro uter vrouter-name ]} file-name
l ftp server ip-address [vrouter vrouter-name] [user user-name password password] – Specify
to export the zip file to the FTP server, and configure the IP address, VRouter, username and
password of the server. If the username and password are not specified, you will login anonym-
ously by default.
l tftp server ip-address [vrouter vrouter-name] – Specify to export the zip file to the TFTP
server, and configure the IP address and VRouter of the server.
Password Authentication
To enable password authentication, in the WebAuth configuration mode, use the following com-
mand:
mo de p asswo rd
System can re-authenticate a user after a successful authentication. By default, the re-authen-
tication function is inactive. To configure the re-authenticate interval, in the WebAuth con-
figuration mode, use the following command:
p asswo rd reauth -in terval { time | disab le}
l time – Specifies the interval to re-authenticate a user. The value range is 10 to 60*24
minutes.
To restore to the default value, in the global configuration mode, use the command:
n o p asswo rd reauth -in terval
The redirect URL function redirects the client to the specified URL after successful authen-
tication. You need to turn off the pop-up blocker of your web browser to ensure this function can
work properly. To configure the redirect URL function, in the WebAuth configuration mode, use
the following command:
p asswo rd p o p up -url url
l url – Specifies the redirect URL. The length is 1 to 127 characters. The format of URL
should be "http://www.abc.com" or "https://www.abc.com".
To delete the redirect URL configuration, in the WebAuth configuration mode, use the com-
mand:
n o p asswo rd p o p up -url
Notes:
l You can specify the username and password in the URL address. When the
l When entering the redirect URL in CLI, add double quotations to the URL
address if the URL address contains question mark. For example,
“http://192.10.5.201/oa/-
login.do?username=$USER&password=$HASHPWD”
If the forced timeout function is enabled, users must re-login after the configured interval ends.
By default, the forced re-login function is disabled. To configure the forced timeout value, in the
WebAuth configuration mode, use the following command:
p asswo rd fo rce-timeo ut { timeout-value | disab le}
l timeout-value - Specifies the forced timeout value. The value range is 10 to 60*24*100
minutes.
l disable – Disables the forced timeout function, that is , system does not force the user to
login again.
To restore to the default value, in the WebAuth configuration mode, use the command:
n o p asswo rd fo rce-timeo ut
If there is no traffic during a specified time period after the successful authentication, the system
will disconnect the connection. By default, the system will not disconnect the connection if there
l timeout – Specifies the idle timeout value (in minutes). The value range is 1 to 60*24
minutes.
l disable – Disables the idle timeout function, which indicates that system will not disconnect
the connection if there is no traffic after the successful authentication.
To restore to the default value, in the WebAuth configuration mode, use the following command:
n o p asswo rd idle-timeo ut
Notes:
l If you pass the web authentication by using the mobile phones running on
iOS or Android, enable this function and specify the idle time. Then the
mobile phones can keep online when they generate traffic.
When authentication is successful, the system will automatically refresh the login page before the
configured timeout value ends in order to maintain the login status. If configuring the idle time at
the same time,you will log off from the system at the smaller value.To configure the heartbeat
timeout value, in the WebAuth configuration mode, use the following command:
p asswo rd h eartb eat-timeo ut { interval | disab le}
To restore to the default heartbeat timeout value, in the global configuration mode, use the com-
mand:
n o p asswo rd h eartb eat-timeo ut
SMS Authentication
Besides using username and password during the Web authentication, the system support SMS
authentication method. After enabling the SMS authentication function, the HTTP request will
be redirected to the Web authentication login page. In the login page, the user needs to enter the
mobile phone number and the received SMS code. If the SMS code is correct, the user can pass
the authentication.
To enable SMS authentication, in the WebAuth configuration mode, use the following command:
mo de sms
After passing the SMS authentication successfully, the user will be re-authenticated after the
timeout value reaches. To configure the timeout value, in the WebAuth configuration mode, use
the following command:
sms fo rce-timeo ut { timeout-value | disab le}
l timeout-value – Specifies the forced timeout value. The value range is 10 to 60*24*100
minutes. The default value is 60 minutes.
l disable – Disables the forced timeout function, that is , system does not force the user to
authenticate again.
To restore to the default value, in the WebAuth configuration mode, use the command:
n o sms fo rce-timeo ut
If there is no traffic during a specified time period after the successful authentication, the system
will disconnect the connection. By default, system will not disconnect the connection if there is
no traffic after the successful authentication. To specify the idle timeout value, in the WebAuth
configuration mode, use the following command:
sms idle-timeo ut { timeout | disab le}
l timeout – Specifies the idle timeout value (in minutes). The value range is 1 to 60*24
minutes.
l disable – Disables the idle timeout function, which indicates that system will not disconnect
the connection if there is no traffic after the successful authentication.
To restore to the default value, in the WebAuth configuration mode, use the following command:
n o sms idle-timeo ut
When using SMS authentication, users need to use the SMS verification code received by the
mobile phone, and the verification code will be invalid after the timeout value reaches. After the
timeout value reaches, if the verification code is not used, you needs to get the new SMS veri-
fication code again, in the global configuration mode, use the following command:
webauth sms-verify-code-timeouttimeout-value
l timeout-value – Specifies the verification code interval, the range is 1 to 10 minutes. The
default value is 1 minute.
In the global configuration mode, use the following command to restore the timeout value to the
default one.
no webauth sms-verify-code-timeout
If the protocol type of the SMS Gateway is SGIP or USM , users can specify a message sender
name to display in the message content. If the protocol type of the SMS Gateway is
l sender-name – Specifies the sender name or sign name. The range is 1 to 63.
In the WebAuth configuration mode, use the following command to delete the sender name or
sign name:
no webauth sms-sender-name
Notes: Due to the limitation of UMS enterprise information platform, when the the
SMS gateway authentication is enabled, the sender name will be displayed on the
name of the UMS enterprise information platform.
To specify the length of the SMS verification code, in the WebAuth configuration mode, use the
following command:
sms verification-code-length length
l length - Specifies the length of the SMS verification code. The range is 4 to 8 characters. The
default value is 6.
If the protocol type of the SMS Gateway is ALIYUNSMS, users must specify the code of the
SMS template applied in the SMS of Alibaba Cloud. To specify the template code, in the
WebAuth configuration mode, use the following command:
sms templatecode word
In the WebAuth configuration mode, use the following command to cancel the specified template
code:
no sms templatecode
To specify SMS modem to send SMS, in the WebAuth configuration mode, use the following
command:
sms agent modem
To specify SMS gateway to send SMS, in the WebAuth configuration mode, use the following
command:
sms agent gateway sp-name
l sp-name – Specifies the SP instance name which should be a created SP. The range is 1 to
31.
NTLM Authentication
To enable NTLM, in the WebAuth configuration mode, use the following command:
mo de n tlm
Notes:
l For IE, you need to enable automatic logon with current username and pass-
word in order to complete the WebAuth automatically.
Authentication will only take effect within a limited time range after you have been authenticated
by the Active Directory server; after timeout, you still need to type valid username and password
in the WebAuth page to continue to access network resources. To configure the timeout, in the
WebAuth configuration mode, use the following command:
n tlm fo rce-timeo ut { timeout-value | disab le}
l timeout-value - Specifies the forced timeout value. The value range is 10 to 60*24*100
minutes.
l disable – Disables the forced timeout function, that is , system does not force the user to
login again.
To restore to the default value, in the WebAuth configuration mode, use the command:
n o n tlm fo rce-timeo ut
Since the NTLM function only supports users using Windows OS, you can use the compatibility
mode to ensure that all users using different OSs can execute the authentication. The com-
patibility mode will use the password WebAuth when the following situation appears: you have
enabled the NTLM function and users fail in the authentication. By default, the system will not
take any action if users fail in the authentication. To use the compatibility mode, use the fol-
lowing command in the WebAuth configuration mode:
n tlm fallb ack-to -web fo rm
To restore to the defaut value, in the WebAuth configuration mode, use the following command:
n o n tlm fallb ack-to -web fo rm
If there is no traffic during a specified time period after the successful authentication, the system
will disconnect the connection. By default, system will not disconnect the connection if there is
no traffic after the successful authentication. To specify the idle timeout value, use the following
command in the WebAuth configuration mode:
n tlm idle-timeo ut { timeout | disab le}
l timeout – Specifies the idle timeout value (in minutes). The value ranges from 1 to 60*24
minutes.
l disable – Disables the idle timeout function, which indicates that system will not disconnect
the connection if there is no traffic after the successful authentication.
To restore to the defaut value, in the WebAuth configuration mode, use the following command:
n o n tlm idle-timeo ut
To view the current WebAuth configuration information, in any mode, use the following com-
mand:
sh o w web auth
To view all the WebAuth configuration information, in any mode, use the following command:
sh o w web auth detail
To view the online WebAuth user information, in any mode, use the following commands:
sh o w auth -user {web auth -n tlm | web auth -p asswo rd | web auth -sms }[in terface interface-
name | vro uter vrouter-name ]
sh o w user-map p in g web auth { n tlm | p asswo rd | sms }[ip ip-address | mac mac-address ]
[vro uter vrouter-name ]
With the Single Sign-on (SSO) agent function enabled, users will automatic pass the authen-
tication after they pass the Active-Directory authentication.
To use the AD Scripting function, you should firstly add the script program named Login-
script.exe, which is provided by Hillstone, to the logon/logout script of the Active-Directory
server.
Notes: For the information of how to add the script program “Loginscript.exe”
into the Active-Directory server, refer to Example of Configuring AD Agent for
SSO.
To enter the AD-Scripting configuration mode, use the following command in the global con-
figuration mode:
user-sso server ad-scrip tin g default
By default, the AD Scripting function is disabled. To enable this function, use the following com-
mand in the AD-Scripting configuration mode:
enable
To disable the function, use the following command:
no enable
To specify the AAA server referenced by system, use the following command in the sso-agent
configuration mode:
aaa-server aaa-server-name
l aaa-server-name – Specifies the name of the AAA server. The Local, AD or LDAP server is
available to select on the AAA server. You’re suggested to directly select the configured
authentication AD server. After selecting the AAA server, system can query the cor-
responding user group and role of the online user on the referenced AAA server, so as to
achieve the policy control based on the user group and role.
To cancel the above configurations, use the following command in the AD-Scripting con-
figuration mode:
n o aaa-server
If there is no traffic during a specified time period after the successful authentication, system will
delete the user authentication information. To specify the time period, namely the idle time, use
the following command in the AD Scripting configuration mode:
idle-timeo ut timeout
l timeout – Specifies the idle time (in minutes). The value ranges from 1 to 1440.
By default, system will not delete the user authentication information if there is no traffic. To
restore the idle time to the default value, use the following command in the global configuration
mode:
n o idle-timeo ut
By default, if a user logs on again after hi or her successful logon, the system will disconnect the
original connection and use the new logon information to replace the original logon information.
Thus, users with the same credentials cannot be online simultaneously. If you want users with the
same credentials to be online simultaneously, you can use the following commands in the AD-
Scripting configuration mode:
no auto-kickout
To restore the settings to the default, use the following command in the AD-Scripting con-
figuration mode:
auto-kickout
To view the configuration information of the AD Scripting function, use the following command
in any mode:
sh o w user-sso server ad-scrip tin g default
To view the mapping information between user name and IP of AD Scripting, in any mode, use
the following command:
sh o w user-map p in g user-sso ad-scrip tin g default
The user authentication information are stored in the authenticated user table. To view the user
authentication information, use the following command in any mode:
sh o w auth -user ad-scrip tin g
To delete the user mapping information of the specified IP, in any mode, use the following com-
mand:
exec user-map p p in g user-sso ad-scrip tin g kicko ut ip ip-address vro uter vrouter-name
The device can receive the accounting packets that based on the Radius standard protocol, and
then perform the following actions according to the content of the packets:
l Generate user authentication information and add them to the authenticated user table.
To disable the function, in the SSO-Radius configuration mode, use the following command:
no enable
Note: After enabling SSO Radius, you should wait at least 20 seconds before disabling it, and vice
versa.
Specify the AAA server that user belongs to. To specify the AAA server, in the SSO-Radius con-
figuration mode, use the following command:
aaa-server aaa-server-name
l aaa-server-name – Specifies the name of the AAA server. You can select Local, AD or
LDAP server on the AAA server. After selecting the AAA server, system can query the cor-
To delete the AAA server, in the SSO-Radius configuration mode, use the following command:
n o aaa-server
To specify the port number for receiving Radius packets (Don’t configure port in non-root
VSYS), in the SSO-Radius configuration mode, use the following command:
p o rt port
l port – Specifies the port number. The range is 1 to 65535. The default port is 1813.
Specify the IP address of the Radius client. You can specify up to 8 clients. To specify the IP
address of the Radius clients and enter the Radius client configuration mode, in the SSO-Radius
configuration mode, use the following command:
clien t {an y | A.B.C.D | X:X:X:X::X }
l A.B.C.D – Receive the packets sent from the Radius Client with specified IP address.
l X:X:X:X::X –Receive the packets sent from the Radius client with specified IPv6 address.
This specification is valid only when the system version is the IPv6 version.
To delete the configured Radius client, in the global configuration mode, use the no client {any |
A.B.C.D| X:X:X:X::X} command.
System will verify the packet by the shared secret key, and parse the packet after verifying suc-
cessfully. If system fails to verify the packet, the packet will be dropped. The packet can be
l key-value – Specifies the shared secret key. The length range is from 1 to 31 characters.
Heartbeat timeout is used to configure the effective time for user authentication information of
Radius packets in the device. If there’s no update or delete packet of the user during the heart-
beat timeout, the device will delete the user authentication information.
To configure the heartbeat timeout, in the Radius client configuration mode, use the following
command:
h eartb eat-timeo ut timeout
l timeout– Specifies the timeout value. The unit is minute. The range is from 0-1440. The
default value is 30. 0 means it will never timeout.
To restore the heartbeat timeout to default, in the Radius client configuration mode, use the no
heartbeat-timeout command.
To disable the heartbeat timeout, in the Radius client configuration mode, use the heartbeat-
timeout disable command.
Idle timeout refers to the longest time during which the authenticated user keeps his/her authen-
ticated state in non-traffic state. When the configured idle timeout is exceeded, system will delete
the authentication information of the user.
To specify the idle timeout, in the SSO Radius client mode, use the following command:
idle-timeo ut time
To restore the idle timeout to the default value, in the SSO Radius client mode, use the no idle-
timeoutcommand.
To disable the idle timeout, in the SSO Radius client mode, use the idle-timeout disablecom-
mand.
When the online time of a user exceeds the configured force timeout time, system will force the
user to log out.
To specify the forced timeout, in the SSO Radius client mode, use the following command:
fo rce-timeo ut time
l time - Specify the forced timeout time. The range is 0 to 144000 minutes, and the default
value is 600 minutes. If it is specified as 0, this function will be disabled.
To restore the forced timeout to the default value, in the SSO Radius client mode, use the no
force-timeoutcommand.
To disable the forced timeout, in the SSO Radius client mode, use the force-timeout disablecom-
mand.
To view the SSO Radius configuration information, in any mode, use the following command:
sh o w user-sso server sso -radius default
To view the mapping information between the user name and IP of SSO Radius, in any mode, use
the following command:
sh o w user-map p in g user-sso sso -radius default
The user authentication information generated by the device is saved in the authentication user
table. In any mode, use the following command:
sh o w auth -user sso -radius
To delete the user mapping information of the specified IP, in any mode, use the following com-
mand:
exec user-map p p in g user-sso sso -radius kicko ut ip ip-address vro uter vrouter-name
When Agile Controller is enabled, the system can receive packets sent by the Agile Controller
server. The packets are sent when users log in to or log out of the server or when users update
their information. To realize SSO, the system obtains user authentication information, updates
online user information, and manages the user's login and logout according to the packets.
To enter the Agile Controller configuration mode, in the global configuration mode, use the fol-
lowing command:
user-sso server agile-co n tro ller default
By default, Agile Controller is disabled. To enable or disable Agile Controller, in the Agile Con-
troller configuration mode, use the following command:
l To enable: enable
l To disable: no enable
To specify the port for StoneOS to receive packets from the Agile Controller server (Port cannot
be configured in non-root VSYS), in the Agile Controller configuration mode, use the following
command:
lo cal-p o rt port
l port - Specifies the port number. The range is 1024 to 65535. The default port number is
8001.
In the Agile Controller configuration mode, use no local-port command to restore to the default
port.
Specify the AAA Server that the user belongs to. To specify the AAA server, in the Agile Con-
troller configuration mode, use the following command:
aaa-server aaa-server-name
l aaa-server-name - Specifies the name of the AAA server. You can select the configured Local,
AD, or LDAP server. After selecting the AAA server, the system can query the user group
and role information associated with the username of the online user on the referenced AAA
server, to realize the policy control based on the user group and role.
In the Agile Controller configuration mode, use no aaa-server command to cancel the specified
AAA server.
To specify the address range of the source IP to be queried when the system actively queries the
information of the online user associated with the source IP from the Agile Controller server, in
the Agile Controller configuration mode, use the following command:
sync-address address-entry
In the Agile Controller configuration mode, use the no sync-address command to cancel the spe-
cified query address range of the source IP.
To specify the query rate when the system actively queries the information of the online user asso-
ciated with the source IP from the Agile Controller server, in the Agile Controller configuration
mode, use the following command:
sync-rate number
l number - Specifies the rate at which query packets are sent. The range is 5-40 times/second.
In the Agile Controller configuration mode, use no sync-rate command to restore to the default
query rate.
To specify the query interval when the system actively queries the information of the online user
associated with the source IP from the Agile Controller server, in the Agile Controller con-
figuration mode, use the following command:
ip-sync-interval time
l time - Specifies the query interval between each source IP. The range is 1-100 seconds. The
default value is 20 seconds
In the Agile Controller configuration mode, use no ip-sync-interval command to restore to the
default query interval.
To specify the maximum source IPs contained in a query packet when the system actively queries
the information of the online user associated with the source IP from the Agile Controller server,
in the Agile Controller configuration mode, use the following command:
max-ip-per-packet number
In the Agile Controller configuration mode, use no max-ip-per-packet command to restore to the
default value.
To specify the timeout after which access for the authenticated user is forcibly terminated, in the
Agile Controller configuration mode, use the following command:
fo rce-timeo ut time
l time - Specifies the timeout. The range is 5 to 1440 minutes. The default timeout is 600
minutes.
In the Agile Controller configuration mode, use no force-timeout command to restore to the
default timeout.
To configure an Agile Controller client, you need to enter the configuration mode of the Agile
Controller client. In the Agile Controller configuration mode, use the following command:
access-agile-co n tro ller name
To specify the IP address of the Agile Controller server, in the configuration mode of the Agile
Controller client, use the following command:
host ip-address [vrouter vr-name]
l vrouter vr-name - Specifies the virtual router that the specified Agile Controller server
belongs to. If the VRouter is not specified, the system uses trust-vr by default.
In the configuration mode of the Agile Controller client, use the no host command to cancel the
specified IP address of the Agile Controller server.
The system verifies the encrypted communication packets sent by the Agile Controller server by
using the shared key. The system parses the packets only when the verification is successful.
Otherwise, the system drops the packets. The Agile Controller client should be configured with
the same shared key as the Agile Controller server. Otherwise, the packets cannot be successfully
verified. To configure the shared key, in the configuration mode of the Agile Controller client,
use the following command:
sh ared-secret key-value
To clear the shared key, in the configuration mode of the Agile Controller client, use the no
shared-secret command.
To specify the encryption algorithm applied in the communication between the system and the
Agile Controller server, in the configuration mode of the Agile Controller client, use the fol-
lowing command:
encryption [3des | aes128 ]
l 3des | aes128 - Specifies the encryption algorithm applied in the communication between the
system and the Agile Controller server. If this option is not specified, the system uses the
AES128 algorithm by default.
In the configuration mode of the Agile Controller client, use the no encryption command to
restore to the default encryption algorithm.
When Active Query is enabled, the system will actively query the information of the online users
from the Agile Controller server. By default, Active Query is disabled. To enable or disable Act-
ive Query, in the configuration mode of the Agile Controller client, use the following command:
To display configuration information of the Agile Controller, in any mode, use the following com-
mand:
sh o w user-sso server agile-co n tro ller default
To create an AD Polling profile and enter the AD-Polling configuration mode, in the global con-
figuration mode, use the following command:
user-sso client ad-polling profile-name
l profile-name - Specifies the name of the AD Polling profile to be created. After executing the
command, system will create an AD Polling profile with the specified name and enter the AD
Polling configuration mode; if the specified name has existed, system will enter the AD
Polling configuration mode directly.
To delete the specified AD Polling profile, in the global configuration mode, use the following
command:
n o user-sso clien t ad-p o llin g name
After enabling the AD Polling function, the system will regularly query the AD server to obtain
the online user information and probe the terminal PCs to verify whether the users are still online.
To enable the AD Polling function, in the AD-Polling configuration mode, use the following com-
mand:
en ab le
To disable the AD Polling function, in the AD-Polling configuration mode, use the following
command:
n o en ab le
To specify the authentication AD server in the domain, in the AD-Polling configuration mode,
use the following command:
h o st ip-address
l ip-address - Specifies the IP address of the authentication AD server in the domain.You can
only specify AD server. After specifying the authentication AD server, when the domain user
logs in the AD server, the AD server will generate on the server. The length is 1 to 31 char-
acters.
To delete the authentication servers in the domain, in the AD-Polling configuration mode, use
the following command:
n o h o st
To specify the AAA server referenced by system, in the AD-Polling configuration mode, use the
following command:
aaa-server server-name
l server-name - Specifies the name of the referenced AAA server. The Local, AD or LDAP
server is available to select on the AAA server. You’re suggested to directly select the
To delete the AAA server, in the AD-Polling configuration mode, use the following command:
n o aaa-server
To specify the nameof domain user to log in the AD server, in the AD-Polling configuration
mode, use the following command:
acco un t username
l username – Specifies the name of domain user to log in the AD server. The format is
domain\username, and the range is 1 to 63 characters. The user is required to have permission
to read security log on the AD server, such as the user Administrator whose privilege is
Domain Admins on the AD server.
To delete the account, in the AD-Polling configuration mode, use the following command:
n o acco un t
To specify the password corresponding to the domain user name, in the AD-Polling configuration
mode, use the following command:
p asswo rd password
l password - Specifies the password corresponding to the user name. The range is 1 to 31 char-
acters.
To delete the password, in the AD-Polling configuration mode, use the following command:
n o p asswo rd
To specify the time interval for regular AD Polling probing, in the AD-Polling configuration
mode, use the following command:
ad-p o llin g-in terval interval
l interval - Specifies the time interval for regular AD Polling probing. System will query the AD
server to obtain the online user information at the interval. The range is 1 to 3600 seconds,
the default value is 2 seconds. You are suggested to configure 2 to 5 seconds to ensure to get
the online user information in real time.
To restore the configured time interval for regular AD Polling probing to default, in the AD-
Polling configuration mode, use the following command:
n o ad-p o llin g-in terval
To specify the time interval for the regular client probing, in the AD-Polling configuration mode,
use the following command:
clien t-p ro b in g-in terval time
l time – Specifies the time interval for the regular client probing. System will probe whether
the online user is still online through WMI at set intervals, and system will kick out the user if
cannot be probed. The range is 0 to 1440 minutes, and the default value is 0 minute( the func-
tion is disabled). You are suggested to configure a larger probing interval to save the system
performance, if you have low requirements of the offline users.
To restore the configured client probing interval to default, in the AD-Polling configuration
mode, use the following command:
n o clien t-p ro b in g-in terval
To specify the forced logout time, in the AD-Polling configuration mode, use the following com-
mand:
l time - Specified the forced logout time. When the online time of a user exceeds the con-
figured force timeout time, system will kick out the user and force the user to log out. The
range is 0 (the function is disabled) to 144000 minutes, and the default value is 600 minutes.
To restore the configured force timeout time to default, in the AD-Polling configuration mode,
use the following command:
n o fo rce-timeo ut
To view the AD Polling configuration owned or specified by system, including the name, status,
AAA server, client probing interval, etc., in any mode, use the following command:
sh o w user-sso clien t ad-p o llin g [ profile-name ]
l profile-name – Specifes the name of the AD Polling profile. Here shows the configuration
information of specified AD Polling.
To view the mapping information between user name and IP of SSO Monitor, in any mode, use
the following command:
show user-mapping user-sso ad-polling profile-name
The user authentication information are stored in the authenticated user table. To view the user
authentication information, use the following command in any mode:
sh o w auth -user ad-p o llin g
To delete the user mapping information of the specified IP, in any mode, use the following com-
mand:
exec user-map p p in g user-sso ad-p o llin g kicko ut ip ip-address vro uter vrouter-name
SSO Monitor can synchronize the online status of users stored on external servers to the firewall
based on specified protocol packets, generate authenticated users on the firewall, and update the
username-IP binding relationship of online users in real time. In addition, SSO Monitor can
extract the user group of users from packets so that the users can avoid repetitive login process.
StoneOS does not restrict the form and type of external servers. A server of TCP connection that
can synchronize user information to the firewall over the SSO Monitor protocol can be used as an
external server, such as AD Agent software.
Notes: To use AD Agent software to obtain user information in version earlier than
StoneOS 5.5R10, you can connect the AD agent by using SSO Monitor or con-
figure the security agent in Active-Directory server configuration mode. In
StoneOS 5.5R10 and later, the system no longer supports the security agent func-
tion. When the version is upgraded to StoneOS 5.5R10 or later, the configured
security agent function is automatically converted to the SSO Monitor function to
connect to the AD Agent software configuration. You can run the show user-sso cli-
ent sso-monitor[ profile-name] command to view the configuration. The converted
name of SSO Monitor Profile is the same as that of the AD server.
To create SSO Monitor profile and enter the SSO-Monitor configuration mode, in the global con-
figuration mode, use the following command:
user-sso clien t sso -mo n ito r profile-name
l profile-name - Specifies a name of the SSO Monitor profile to be created. After executing the
command, system will create the SSO Monitor profile with the specified name and enter SSO-
Monitor configuration mode; if the profile with the specified name has existed, system will
enter the SSO-Monitor configuration mode directly.
To delete the specified SSO Monitor profile, in the global configuration model, use the following
command:
n o user-sso clien t sso -mo n ito r name
After enabling SSO Monitor, the system establishes a connection with the external server over the
SSO-Monitor protocol and obtains the online status of users and information about the user group
of the users (optional). The system will also update the username-IP mapping information of
online users in real time. To enable SSO Monitor function, in the SSO-Monitor configuration
mode, use the following command:
en ab le
To disable SSO Monitor function, in the SSO-Monitor configuration mode, use the following
command:
n o en ab le
The external server needs to be able to send the online status of users to the firewall based on
SSO-Monitor protocol packets. You need to configure at least one external server host1, host2, or
host3. If you configure more than one external server, other external servers except the first one
are used for redundant backup. When an address fails to be connected, the system attempts to con-
nect to another external server. We recommend that you configure host1, host2, and host3 in
sequence.
To specify the external server, run the following commands in SSO-Monitor configuration mode:
host1 ip-address [vrouter vrouter-name]
host2 ip-address [vrouter vrouter-name]
host3 ip-address [vrouter vrouter-name]
l ip-address - Specifies the domain name or IP address of the external server, which can be 1 to
31 characters in length.
l vrouter-name - Specifies the name of the virtual router to which the communication interface
between the firewall and external server belongs.
In SSO-Monitor configuration mode, run the following command to delete a specified external
server:
no host {1 | 2 | 3}
In the authenticated user architecture of the firewall, all authenticated users and user groups can-
not independently exist and need to be associated with an AAA server. SSO Monitor users are syn-
chronized from the external server. By specifying an AAA server for the firewall, SSO Monitor
users can be associated with this AAA server.
To specify the referenced server by system, in the SSO-Monitor configuration mode, use the fol-
lowing command:
aaa-server server-name
l server-name - Specifies the name of the referenced AAA server. You can select Local, AD or
LDAP server on the AAA server. After selecting the AAA server, system can query the cor-
responding user group and role information of the online user on the referenced AAA server,
so as to realize the policy control based on the user group and role.
To delete the AAA server, in the SSO-Monitor configuration mode, use the following command:
n o aaa-server
To specify the port number of the third-party authentication server, in the SSO-Monitor con-
figuration mode, use the following command:
p o rt number
To restore the port number to default, in the SSO-Monitor configuration mode, use the following
command:
n o p o rt
To specify the organization source, in the SSO-Monitor configuration mode, use the following
command:
o rg-so urce [aaa-server | message]
l aaa-server – Specifies the organization source as AAA Server. System uses the user organ-
ization structure of AAA server as the group user belongs to. It’s usually used in the scen-
ario of the third-party authentication server being authenticated by AAA server and the user
organization structure being saved in the AAA server.
l message - Specifies the organization source as Message. System uses the user group of authen-
tication message as the group user belongs to. It’s usually used in the scenario of the third-
party authentication server saving user group.
By default, the organization source is Message. To restore to the default, in the SSO-Monitor con-
figuration mode, use the following command:
n o o rg-so urce
Notes: In the scenario where AD Agent software is used to obtain user information,
if the security agent function is configured, this function will be automatically con-
verted to the SSO Monitor function to connect AD Agent software configuration
after the system is upgraded to StoneOS 5.5R10. The organization source is AAA
server after the conversion. You can run the show user-sso client sso-monitor[ pro-
file-name command to view the converted configuration. The converted name of
SSO Monitor Profile is the same as that of the AD server.
To specify the disconnection timeout, in the SSO-Monitor configuration mode, use the following
command:
disco n n -del-timeo ut timeout
l timeout - Configure the disconnection timeout. When StoneOS disconnects with the third-
party authentication server due to timeout,, system will wait during the disconnection
timeout. If system still fails to connect within the configured time, it will delete online user.
The range is 0 to 1800 seconds. The default value is 300. 0 means the user authentication
information will never time out.
To restore the SSO Monitor disconnection timeout to default, in the SSO-Monitor configuration
mode, use the following command:
n o disco n n -del-timeo ut
To control the length of time that authenticated users are online, you can configure forced
timeout period of SSO Monitor to disconnect the users.
To specify forced timeout period of SSO Monitor, use the following command in SSO-Monitor
configuration mode:
fo rce-timeo ut timeout
l timeout - Specifies the forced timeout period. Valid values: 0 to 6000 minutes. Default value:
0, which indicates that authenticate users never times out.
In SSO Monitor configuration mode, use the following command to restore the forced timeout
period of SSO Monitor to the default value:
n o fo rce-timeo ut
To view the SSO Monitor Configuration owned or specified by system, including name, status,
AAA server and client probing interval, in any mode, use the following command:
sh o w user-sso clien t sso -mo n ito r [ profile-name ]
l profile-name – Specifies the name of the SSO Monitor profile. Here shows the configuration
information of the specified SSO Monitor.
To view the mapping information between user name and IP of SSO Monitor, in any mode, use
the following command:
sh o w user-map p in g user-sso sso -mo n ito r profile-name
The user authentication information generated by machine is saved in the authentication user
table. To view the authentication user table, in any mode, use the following command:
sh o w auth -user sso -mo n ito r
To delete the user mapping information of the specified IP, in any mode, use the following com-
mand:
exec user-map p p in g user-sso sso -mo n ito r kicko ut ip ip-address vro uter vrouter-name
Installing and running Hillstone Terminal Service Agent in the Windows server. After the TS
Agent is configured, when users log in the Windows server using remote desktop services, the
Hillstone Terminal Service Agent will allocate port ranges to users and send the port ranges and
users information to the system. At the same time, the system will create the mappings of traffic
IPs, port ranges and users, and achieve the "no-sign-on" authentication.
The configurations of TS Agent for SSO include:
l Configuring the TS Agent server: Installing and running Hillstone Terminal Service Agent in
Windows server.
To create TS Agent profile and enter the TS-Agent configuration mode, in the global con-
figuration mode, use the following command:
user-sso clien t ts-agen t profile-name
l profile-name - Specifies a name of the TS Agent profile to be created. After executing the
command, system will create the TS Agent profile with the specified name and enter TS-
Agent configuration mode; if the profile with the specified name has existed, system will enter
the TS-Agent configuration mode directly.
To delete the specified TS Agent profile, in the global configuration model, use the following
command:
n o user-sso clien t ts-agen t profile-name
After enabling TS Agent, StoneOS will establish SSL connection with Hillstone Terminal Service
Agent, as well as obtain user and port range information. System will also update the mapping
information of traffic IPs, port ranges and user names in real time for online users.
To enable TS Agent function, in the TS-Agent configuration mode, use the following command:
en ab le
To disable TS Agent function, in the TS-Agent configuration mode, use the following command:
n o en ab le
To specify the TS Agent server, in the TS-Agent configuration mode, use the following com-
mand:
h o st { domain-name | ip-address } [vro uter vrouter-name ]
l domain-name | ip-address - Specifies the management address of the TS Agent server. It can
be a domain name, or an IPv4 or IPv6 address.
To delete the TS Agent server, in the TS-Agent configuration mode, use the following command:
n o h o st
To specify the port number of the TS Agent server, in the TS-Agent configuration mode, use the
following command:
p o rt port-number
l port-number – Specifies the port number of the TS Agent server. The default number is
5019. The range is 1025 to 65534. This port number must be the same with the listening port
number of Hillstone Terminal Service Agent, otherwise, the TS Agent client and the TS
Agent server cannot communicate with each other.
To specify the referenced server by system, in the TS-Agent configuration mode, use the fol-
lowing command:
aaa-server server-name
l server-name - Specifies the name of the referenced AAA server. You can select Local, AD or
LDAP server on the AAA server. After selecting the AAA server, system can query the cor-
responding user group and role information of the online user on the referenced AAA server,
so as to realize the policy control based on the user group and role.
To delete the AAA server, in the TS-Agent configuration mode, use the following command:
n o aaa-server
To specify the disconnection timeout, in the TS-Agent configuration mode, use the following
command:
disco n n ectio n -timeo ut timeout
l timeout - Configure the disconnection timeout. When StoneOS disconnects with Hillstone
Terminal Service Agent, system will wait during the disconnection timeout. If system still
fails to connect within the configured time, it will delete online user. The range is 0 to 1800
seconds. The default value is 300. 0 means delete the online user immediately.
To restore the TS Agent disconnection timeout to default, in the TS-Agent configuration mode,
use the following command:
n o disco n n ectio n -timeo ut
To specify the traffic IP, in the TS-Agent configuration mode, use the following command:
l ip-address - Specifies the traffic IP address, that is the network interface IP address of the TS
Agent server. It cab be an IPv4 or IPv6 address. You can specify up to 4 IP addresses.
To delete the specified traffic IP, in the TS-Agent configuration mode, use the following com-
mand:
no traffic-ip ip-address
To view the TS Agent configuration owned or specified by system, including name, enabling or
disabling status, TS Agent server, AAA server, disconnection timeout and traffic IP, in any mode,
use the following command:
sh o w user-sso clien t ts-agen t [ profile-name ]
l profile-name - Specifies the name of the TS Agent profile. Here shows the configuration
information of the specified TS Agent.
To view the TS Agent status, including connection status, port range allocated to users, number
of ports per block, maximum number of block per user, keepalive interval and keepalive timeout,
in any mode, use the following command:
show user-sso client ts-agent profile-name status
To view the user mapping information of TS Agent, in any mode, use the following command:
sh o w user-map p in g user-sso ts-agen t profile-name
The user authentication information generated by device is saved in the authentication user table.
To view the authentication user table, in any mode, use the following command:
sh o w auth -user ts-agen t [p o rt-ran ge range | vro uter vrouter-name ]
To delete the user mapping information of the specified IP address and port range, or the spe-
cified user name, in any mode, use the following command:
exec user-map p p in g user-sso ts-agen t kicko ut {ip ip-address vro uter vrouter-name p o rt-
ran ge range | usern ame user-name auth -server server-name }
Portal Authentication
The portal authentication function identifies and authenticates the users when they want to access
the Internet via the device. After configuring the portal authentication function, the HTTP
requests will be redirected to the specified authentication page of the portal server. In this page,
you can visit free resources. If you want to access the other resources in the Internet, provide
your username and password in this page. After passing the portal authentication succcessfully,
the system will assign a role to the user’s IP address according to the policy configuration. And
assigning a role can control the resource that the IP address can access.
The portal server is configured by the third party and it receives the portal authentication
requests, identifies and authenticates the users, exchanges the authentication information with the
device.
Configuring portal authentication involves the configurations in the following modules:
l Configure the security agent function and the authentication information exchange with the
portal server.
l Create policy rules to define the traffic that will be authenticated, and trigger the portal authen-
tication function.
This section introduces how to define the traffic that will be authenticated, and how the policy
rule triggers the function.
l For more information on the third-party portal authentication server, see the
third-party user guide.
To trigger the portal authentication function, you must configure the corresponding policy rule.
In the global configuration mode, use the following command:
rule [ro le {U NKNO WN | role-name } | user aaa-server-name user-name | user-gro up aaa-
server-name user-group-name ] fro m src-addr to dst-addr service service-name ap p licatio n
app-name {p ermit | den y | tun n el tunnel-name | fro mtun n el tunnel-name | web auth |
p o rtal-server portal-server-url }
l portal-server-url – Use the portal authentication to the traffic that matches the policy rule
and enter the URL of the portal server. The URL can contain up to 63 characters and the
format is http://www.acertainurl.com or https://www.acertainurl.com.
Besides, you must specify the other required information in this command to define the traffic
that will be authenticated. For more information, see Configuring a Policy Rule in Policy.
In this example, WebAuth user access control is demonstrated. It allows only user1 who is authen-
ticated using WebAuth to access the Internet. All other accesses are denied. The WebAuth server
is the local AAA server named local.
Step 1: Configure the user, role and role mapping rule
hostname(config-user-group)# exit
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)# ro le ro le1
hostname(config-role-mapping)# exit
hostname(config)#
Step 2: Specify the role mapping rule for the local authentication server
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/10)# zo n e un trust
hostname(config)#
hostname(config-webauth)# enable
hostname(config-webauth)# exit
hostname(config)# p o licy-glo b al
Rule id 4 is created
hostname(config-policy)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# exit
hostname(config)#
After above configurations, the system will authenticate all HTTP requests (external IP addresses
with reachable route) from 192.168.1.1/16. Users can access the Internet after providing the user-
name user1 and password hillstone1 on the login page.
This section describes the NTLM Authentication example. After the configuration, you can gain
access to network resources if only you have been authenticated by the Active Directory server.
To configure the NTLM authentation, take the following steps:
Step 1: Configure an AAA server of Active-Directory type
hostname(config-aaa-server)# h o st 1.1.1.1
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# exit
hostname(config)#
hostname(config-webauth)# mo de n tlm
Step 4: Enable automatic logon with current username and password on your web browser (take
IE as an example)
3. Click OK to save the settings. Log off from the system and logon again, and you can gain
access to network resources without WebAuth in IE.
This section describes a typical AD Scripting example. After the configuration, you can be authen-
ticated by the device if only you have been authenticated by the Active Directory server.
The following steps only describe configurations related to AAA Server and AD Scripting, and
omit other configurations.
hostname(config-aaa-server)# h o st 1.1.1.1
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-ad-scripting)# en ab le
hostname(config-ad-scripting)# aaa-server ad
hostname(config-ad-scripting)# exit
hostname(config)#
1. On the <AD Scripting> tab of the AD Agent software, click Get AD Scripting to get the
script "Logonscript.exe", and save it under a directory where all AD server users can access.
2. In AD server, go to Start menu, select Mangement Tools> Active Directory User and Com-
puter.
6. In the prompt, click Browse and select the logon script (logonscript.exe), and then enter IP
address of StoneOS for authentication, followed by a space and text Clogon".
7. Click OK.
8. Similarly, import the script into the logout setting, repeat 5-7, and use “logoff” in the
step 6.
Notes: The directory of saving the script must be accessible to all domain users, oth-
erwise, when a user who does not have access will not trigger the script when he
logs in or out.
This section describes a typical example of configuring the AD Polling for SSO. After the con-
figuration, when the domain user logs in via the AD server, the AD server will generate the login
user information. After enabling the AD Polling function, system will query the AD server reg-
ularly to obtain the user login information and probe the terminal PC to verify whether the online
users are still online, thus getting correct authentication user information to achieve SSO.
To configure the AD Polling for SSO, take the following steps:
Step 1: Configure the AAA server referenced by AD Polling. You can select Local, AD or LADP
server, see Specifying the AAA Server. Take the AD server as an example:
hostname(config-aaa-server)# h o st 192.168.2.2
hostname(config-aaa-server)# exit
hostname(config)#
Step 2: Enable the AD Polling function and configure the authentication server, AAA server-
,account, password, etc.
hostname(config-ad-polling)# en ab le
hostname(config-ad-polling)# h o st 10.180.201.8
hostname(config-ad-polling)# aaa-server ad
hostname(config-ad-polling)# exit
hostname(config)#
AD Agent software can send user online status within the AD domain to the firewall by using
packets of SSO-Monitor protocol. Therefore, AD Agent software can be used as an external
server that connects SSO Monitor for SSO. In this example, AD Agent software is used to show
you how to implement SSO by connecting SSO Monitor with AD Agent.
Install AD Agent software on a PC within the AD server or domain. When a user in the domain
logs in to the Active-Directory server, AD Agent records the username, IP address, and time
when the user was most recently online, and sends the mapping relationships between usernames
and IP addresses to StoneOS. This avoids users from repeated logins and generates authenticated
users on the firewall. The system can also implements user-based security statistics, log records,
and online behavior auditing by using the obtained mapping relationships between usernames and
IP addresses.
To use SSO Monitor for SSO, take the following steps:
Step 1: Install AD Agent and configure the corresponding parameters. AD Agent can be installed
on an AD server or a PC within the domain. It can run in the Windows and Windows Server envir-
onment. We recommend that you install AD Agent on Windows Server 2008 /2012/2016/2019
or Windows 7/10.
To install the AD Agent to an AD server or a PC in the domain, take the following steps:
1. Click http://swupdate.hillstonenet.com:1337/sslvpn/download?os=windows-adagent to
download an AD Agent software and copy it to a PC or a server within the domain.
2. Double-click ADAgentSetup.exe to open it and follow the installation wizard to install it.
b. Click Start menu and select All apps > Hillstone AD Agent >AD Agent Con-
figuration Tool.
Option Description
Agent Port Enter agent port number. AD Agent uses this port to com-
municate with StoneOS. The range is 1025 to 65535. The
default value is 6666. This port must be the same with
the configured monitoring port in StoneOS, otherwise,
the AD Agent and StoneOS cannot communicate with
each other.
Password Enter the password that matched with the user name. If
the AD Security Agent is running on the device where
the AD server is located, the user name and password can
be empty.
Server Mon-
itor
Monitor Fre- Specifies the polling interval for querying the event logs
quency on different AD servers. The default value is 5 seconds.
When finishing the query of a AD server, the AD Agent
will send the updated user information to system.
Client Prob-
ing
Probing Fre- Specifies the interval of active probing action. The range
quency is 1 to 99 minutes and the default value is 20 minutes.
5. On the <Discovered Server> tab, click Auto Discover to start automatic scanning the AD
servers in the domain. Besides, you can click Add to input IP address of server to add it
manually.
6. On the <Filtered User> tab, type the user name need to be filtered into the Filtered user
text box. Click Add, and the user will be displayed in the Filtered User list. You can con-
figure 100 filtered users, which are not case sensitive.
7. Click the <Discovered User> tab to view the corresponding relationship between the user
name and user address that has been detected. The user added into the Filtered User list will
not be displayed in the Discovered User list.
8. Click Commit to submit all settings and start AD Agent service in the mean time.
hostname(config-aaa-server)# h o st 192.168.2.2
hostname(config-aaa-server)# exit
hostname(config)#
Step 3: Enable and configure SSO Monitor function. Specify the authentication server, the ref-
erenced AAA server, organization source and so on.
hostname(config-ad-polling)# en ab le
hostname(config-ad-polling)# aaa-server ad
hostname(config-ad-polling)# p o rt 6666
hostname(config-ad-polling)# exit
hostname(config)#
The following is a configuration example for SSO Radius function. After configuring the SSO
Radius function, system can receive the accounting packets that based on the Radius standard
hostname(config-aaa-server)# h o st 1.1.1.1
hostname(config-aaa-server)# exit
hostname(config)#
Step 2: Enable SSO Radius function, as well as specify the referenced AAA server, IP address of
the client and so on.
hostname(config-sso-radius)# en ab le
hostname(config-sso-radius)# aaa-server ad
hostname(config-sso-radius-client)# exit
hostname(config-sso-radius)# exit
hostname(config)#
This section describes a typical TS Agent for SSO example. Installing and running Hillstone Ter-
minal Service Agent in the Windows server. After the TS Agent is configured, when users log in
the Windows server using remote desktop services, the Hillstone Terminal Service Agent will
l Configuring the TS Agent server: Installing and running Hillstone Terminal Service Agent in
Windows server.
Step 1: Installing and running Hillstone Terminal Service Agent in Windows server
1. Click http://swupdate.hillstonenet.com:1337/sslvpn/download?os=windows-tsagent to
download a Hillstone Terminal Service Agent installation program, and copy it to the Win-
dows server.
Notes:
l Windows Server 2008 R2, Windows Server 2016, and Windows
Server 2019 are currently supported. Windows Server 2008 R2 Ser-
vice Pack 1 and KB3033929 must be installed if Windows Server
2008 R2 is used.
2. Double-click HSTSAgent.exe to open it and follow the installation wizard to install it.
3. Double-click the Hillstone Terminal Service Agent shortcut, and the Hill-
stone Terminal Service Agent dialog pops up.
host-name(config-ts-agent)# h o st 10.1.1.1
host-name(config-ts-agent)# en ab le
host-name(config-ts-agent)# exit
hostname(config)#
This section describes a typical example of configuring the Agile Controller for SSO. After the
configuration, system can get correct authentication user information in the following two ways to
l Receiving packets sent by the Agile Controller server. The packets are sent when users log in
to or log out of the server or when users update their information.
l When the traffic flowing through the device matches the configured query address range and
there is no corresponding authenticated user locally, the system will actively query the user
information from the Agile Controller server and update the local user information.
To configure the Agile Controller for SSO, take the following steps:
Step 1: Configure the AAA server referenced by Agile Controller. You can select Local, AD or
LADP server, see Specifying the AAA Server. Take the AD server as an example:
hostname(config-aaa-server)# h o st 192.168.2.2
hostname(config-aaa-server)# exit
hostname(config)#
Step 2: Enable the Agile Controller function and configure the AAA server, the address range of
the source IP to be queried, the IP address of the Agile Controller server and the shared key.
hostname(config-agile-controller)# en ab le
hostname(config-agile-controller)# aaa-server ad
hostname(config-agile-controller-client)# syn c en ab le
hostname(config-agile-controller)# exit
hostname(config)#
hostname(config)# ro le ro le1
hostname(config-role-mapping)# exit
hostname(config)#
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# zo n e dmz
hostname(config)#
Step 3: Configure the role mapping rule of the portal authentication server and enable the security
agent function
hostname(config-aaa-server)# h o st 192.168.2.2
hostname(config-aaa-server)# agen t
hostname(config-aaa-server)# exit
hostname(config)#
Step 4: Trigger the portal authentication function via the policy rule
hostname(config)# rule id 1
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)# rule id 2
hostname(config-policy-rule)# ro le U NKNO WN
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config)# p o licy-glo b al
hostname(config-policy)# exit
hostname(config)#
After above configurations, the system will authenticate all HTTP. Users can access the Internet
after providing the username user1 and password hillstone1 on the login page.
Overview
802.1X is a standard defined by IEEE for Port-based Network Access Control. It uses Layer 2-
based authentication to verify the legality of the users accessing the network trough LAN. Before
authentication, the security device only allows 802.1X message to pass through the port. And
after authentication, all the normal traffic can pass through.
802.1X Architecture
802.1X authentication architecture includes three components: client, authenticator and authen-
tication server. The figure below shows the diagram of 802.1X authentication architecture.
Only when these three components are presented will 802.1X authentication be completed.
l Client: After you start the client program and enter your username and password, the client
program will send requests for 802.1X authentication to the authenticator. Clients need to sup-
port EAP protocol, and should be running 802.1X client software.
l Authentication Server: The server stores users’ information, verifies whether users have the
right to use network resources, and returns the authentication results to the authenticator.
StoneOS support local authentication server or RADIUS server to implement authentication
and authorization.
l Authenticator (Hillstone device): The authenticator provides a physical interface for clients to
access to LAN. It transmits users’ information to the authentication server or returns it to
the client, and then enables or disables the interface according to the server’s authentication
results. Authenticator acts as an agent between the client and authentication server.
Here, take the EAP-MD5 authentication method as the example to introduce the basic 802.1X
authentication process:
1. When you need to visit network, you should start the 802.1X client program, and enter your
username and password to send a connection request. The authentication process starts.
2. After the authenticator receives the connection request from the client, it will ask the client
to send its username.
4. Authenticator will encapsulate the data received from the client and then deliver it to the
authentication server.
5. Authentication server will check the username it received, comparing with the user’s
information in its own database, and try to find the password of the user. After that, the
server will generate random encrypted characters to encrypt the password, and send it to the
authenticator.
6. Authenticator sends the encrypted characters to the client, and the client will encrypt the
password and transmit it back to the authentication server.
7. Authentication server will compare the encrypted password information with their own
encrypted password information. If they are matched, the authenticator will consider the
user as a legitimate user, and allow the user to access the network through the interface. If
not matched, authenticator will refuse the user to access network and keep the status of the
interface as non-authenticated.
EAP-TLS is a kind of 802.1X authentication method that client and server can authenticate each
other. Firstly, the server will send its own digital certificate to the client. When the certificate is
authenticated to be valid, the client will send user’s digital certificate to the server. If the cer-
tificate is valid, the server will consider the user as a legitimate user, and allow the user to access
the network. If you have deployed PKI system in your network environment, Hillstone recom-
mends that you configure EAP-TLS authentication method.
To use EAP-TLS method to realize 802.1X authentication, please install 802.1X client software
which supports certificate authentication at the client side and import user’s and CA’s digital
certificates; please set the authentication method to be EAP-TLS at the server side and import
server’s and CA’s digital certificates.
Tip:
l Currently, the system does not support to realize EAP-TLS authentication
via local authentication server.
l The 802.1X client software needs to be compatible with the 802.1X stand-
ard protocol.
l Specifying the 802.1X authentication server. StoneOS support local authentication server and
external authentication server (RADIUS).
l Configuring 802.1X authentication global parameters, such as configuring the maximum num-
ber of clients to connect, etc.
To create an 802.1X profile, in the global configuration mode, use the following command:
do t1x p ro file profile-name
l profile-name - Specifies the name of 802.1X profile. After executing this command, the sys-
tem will create the 802.1X profile with the specified name, and enter the dot1x configuration
mode. If the profile name you specified already exists, the system will directly enter the dot1x
configuration mode.
To delete the specified 802.1X profile, in the global configuration mode, use the command:
n o do t1x p ro file profile-name
After sending an authentication request to the client and receives a response containing the expec-
ted data, the authenticator transmits the client's response data to the authentication server and
waits for a response. If the authentication server does not answer, the authenticator will resend an
authentication request to the client until receiving a response from the authentication server or
exceeding the allowed maximum retry times. To configure the maximum times of resending the
authentication request, in the dot1x configuration mode, use the following command:
retransmission-count value
l value – Specifies the maximum times of resending authentication request frame. The value
range is 1 to 10 times. The default value is 2.
To restore to the default value, in the dot1x configuration mode, use the command no retrans-
mission-count.
When the client is authorized to access network, the authenticator can re-authenticate the client.
To configure the re-auth period, in the dot1x configuration mode, use the following command:
reauth -p erio d value
To restore the default value, in the dot1x configuration mode, use the command no reauth-
period.
If the authentication fails, the authenticator remains idle for a period of time before go on pro-
cessing the same request from the same client. To configure the authenticator’s quiet period, in
the dot1x configuration mode, use the following command:
quiet-p erio d value
l value – Specifies the value of quiet time. The value range is 0 to 65535 seconds. The default
value is 60. The value of 0 indicates that the system will process the request from the same cli-
ent all the time.
To restore to the default value, in the dot1x configuration mode, use the comman no quiet-
period.
When the authenticator sends a request to ask the client to submit its username, the client need
to responds within a specified period. If client does not respond until timeout, the system will
resend the authentication request message. To specify the client timeout value, in the dot1x con-
figuration mode, use the following command:
tx-p erio d value
l value – Specifies the timeout value. The value range is 1 to 65535 seconds. The default
value is 30.
To restore to the default value, in the dot1x configuration mode, use the command no tx-period.
After sending an authentication request to the client and receives a response containing the expec-
ted data, the authenticator transmits the client's response data to the authentication server and
waits for a response. If the server does not answer the authenticator within a specified time, the
authenticator will resend an authentication request to the client. To specify the authentication
server timeout value, in the dot1x configuration mode, use the following command:
server-timeo ut value
l value – Specifies the response timeout value. The value range is 1 to 65535 seconds. The
default value is 30.
To restore to the default value, in the dot1x configuration mode, use the command no server-
timeout.
You can specify an AAA server as the 802.1X authentication server. To specify the 802.1X
authentication server, in the dot1x configuration mode, use the following command:
aaa-server server-name
l server-name - Specifies the AAA authentication server name. StoneOS support local authen-
tication server and RADIUS server.
To delete the specified 802.1X authentication server, in the dot1x configuration mode, use the
command:
n o aaa-server server-name
Notes: For information about how to configure the local authentication server and
RADIUS server, see Authentication, Authorization and Accounting.
The authenticator provides a port for the client to access LAN, and the port need to be bound to
Layer 2 security zone or VLAN. You can enable the 802.1X authentication function on the port,
and configure attributes according to your need.
To enable or disable 802.1X authentication, in interface configuration mode, use the following
command:
After enabling the 802.1X authentication, you can configure 802.1X attributes on the port.
To bind the created 802.1X profile to a port, in the interface configuration mode, use the fol-
lowing command:
do t1x p ro file profile-name
To cancel the binding, in the interface configuration mode, use the command:
n o do t1x p ro file profile-name
To configure the access control mode on the specified port, in the interface configuration mode,
use the following command:
do t1x p o rt-co n tro l {auto | fo rce-un auth o rized}
l auto - Automatic mode. This is the default setting. In this mode, the authenticator decides
whether the client can access the network according to the results of 802.1X authentication.
To restore to default settings, in the interface configuration mode, use the command:
n o do t1x p o rt-co n tro l
To configure the method of 802.1X port access control, in the interface configuration mode, use
the following command:
do t1x co n tro l-mo de {mac | p o rt}
l mac - MAC address-based authentication. All the clients under the port must be authenticated
and then they can access network resources.
l port - Port-based authentication, which is the default setting. For all the clients under a port,
as long as one client is authenticated, other clients can access network without authentication.
To restore the default settings, in interface configuration mode, use the command:
n o do t1x co n tro l-mo de
The following section describes global parameter configuration for the 802.1X.
To configure the maximum number of clients that are allowed to connect to the port sim-
ultaneously, in the global configuration mode, use the following command:
do t1x max-user user-number
l user-number – Specifies the maximum user number. The value range is 1 to 1000. The
default value may vary from different platforms.
To restore to the default values, in the global configuration mode, use the command no dot1x
max-user.
You can configure the authentication timeout value for authenticated clients. If the client does
not respond within the specified time, it need reapply an authentication. To configure the timeout
value, in the global configuration mode, use the following command:
do t1x timeo ut timeout-value
l timeout-value – Specifies the client authentication timeout value. The value range is 180 to
3600*24 seconds. The default value is 300.
To restore to the default value, in the global configuration mode, use the command no dot1x
timeout.
By default, the multi-logon function is disabled. If it is enabled, you can log into multiple clients
using the same username simultaneously. To enable the multi-logon function, in global con-
figuration mode, use the following command:
do t1x allo w-multi-lo go n
After executing this command, the multi-logon function is enabled, and the number of clients
using one username is limited. To specify the number of clients, in the global configuration mode,
use the following command:
do t1x allo w-multi-lo go n number
l number – Specifies how many times the same username can be logged in simultaneouly. The
value range is 2 to 1000 times.
To disable this function, in the global configuration mode, use the command:
no dot1x allow-multi-logon
When the multi-logon function is disabled, if you enable the auto-kickout function, the user who
already logged in will be kicked out by the same user who logs in later. The system will auto-
matically cut the connection to the user who already logged in. If the auto-kickout function is
To kick out any client manually, in any mode, use the following command:
exec do t1x kicko ut port-name authenticated-user-mac
To view the 802.1X configurations, in any mode, use the following command:
sh o w do t1x [p ro file profile-name | p o rt port-name | statistics [ port-name ]]
l port port-name – Shows the configurations of the specified port and its binding profile’s
information.
Overview
PKI (Public Key Infrastructure) is a system that provides public key encryption and digital sig-
nature service. PKI is designed to automate secret key and certificate management, and assure the
confidentiality, integrity and non-repudiation of data transmitted over Internet. The certificate of
PKI is managed by a public key by binding the public key with a respective user identity by a trus-
ted third-party, thus authenticating the user over Internet. A PKI system consists of Public Key
Cryptography, CA, RA, Digital Certificate and related PKI storage library.
The following section describes PKI terminology:
l Public Key Cryptography: A technology used to generate a key pair that consists of a public
key and a private key. The public key is widely distributed, while the private key is known
only to the recipient. The two keys in the key pair complement each other, and the data
encrypted by one key can only be decrypted by another key of the key pair.
l CA: A trusted entity that issues digital certificates to individuals, computers or any other entit-
ies. CA accepts requests for certificates and verifies the information provided by the applic-
ants based on certificate management policy. If the information is legal, CA will sign the
certificates with its private key and issue them to the applicants.
l RA: The extension to CA. RA forwards requests for a certificate to CA, and also forwards the
digital certificate and CRL issued by CA to directory servers in order to provide directory
browsing and query services.
l CRL: Each certificate is designed with expiration. However, CA might revoke a certificate
before the date of expiration due to key leakage, business termination or other reasons. Once a
certificate is revoked, CA will issue a CRL to announce the certificate is invalid, and list the
series number of the invalid certificate.
l HTTPS/SSH: PKI applies to the situation when a user accesses a Hillstone device over
HTTPS or SSH.
l Sandbox: Support the verification for the trust certification of PE files. Refer to Importing a
Trust Certificate for details.
Configuring PKI
The PKI configuration on Hillstone devices includes:
l Importing a CA certificate
l Downloading a CRL
StoneOS provides a default PKI key pair named Default-Key. To generate a PKI key pair, in the
global configuration mode, use the following command:
p ki key gen erate {rsa | dsa | sm2 | ecc} [lab el key-name ] [ ec-gro up { p rime256 | p rime384
| p rime 521 }] [mo dulus size ] [n o co n firm]
l rsa | dsa – Specifies the type of key pair, either RSA or DSA.
l label key-name – Specifies the name of the PKI key. The name must be unique in StoneOS.
l modulus size – Specifies the modulus of the key pair. The options are 1024 (the default
value), 2048, 512 and 768 bits.
l ec-group { prime256 | prime384 | prime 521 }– Specify the elliptic curve group, including
Prime256, Prime384, and Prime521 elliptic curves. The default elliptic curve group is
Prime256.
l noconfirm – Disables prompt message on the key pair. For example, if the name of the key
pair exists in the system, without this parameter configured, the system will prompt whether
to overwrite key pair with the same name; with this parameter configured, the system will not
allow to create a key pair with the same name. In addition, users can use the command pki key
zeroize noconfirm to disable all the prompt information on key pairs.
To delete the existing PKI key, in the global configuration mode, use the following command:
p ki key zero ize {default | lab el key-name } [n o co n firm]
l default | label key-name – Specifies the key that will be deleted. Default indicates the
default-key. Label key-name indicates the key of the specified name.
A PKI trust domain contains all the necessary configuration information that is used to apply for a
PKI local certificate, such as key pair, enrollment type, subject, etc. To configure a PKI trust
domain, you need to enter the PKI trust domain configuration mode. In the global configuration
mode, use the following command:
p ki trust-do main trust-domain-name
l trust-domain-name – Specifies the name of the PKI trust domain. This command creates a
PKI trust domain with the specified name, and leads you into the PKI trust domain con-
figuration mode; if the specified name exists, you will directly enter the PKI trust domain con-
figuration mode.
To delete the specified PKI trust domain, in the global configuration mode, use the command no
pki trust-domain trust-domain-name.
You can perform the following configurations in the PKI trust domain configuration mode:
l Configuring a CRL
To specify an enrollment type, in the PKI trust domain configuration mode, use the following
command:
en ro llmen t {self | termin al}
To cancel the enrollment type, in the PKI trust domain configuration mode, use the command no
enrollment.
Notes: There is no default value for this command; therefore, you must use the com-
mand to specify an enrollment type.
To specify a key pair, in the PKI trust domain configuration mode, use the following command:
keyp air key-name
To cancel the specified key pair, in the PKI trust domain configuration mode, use the command
no keypair.
To specify subject content for the PIK trust domain, in the PKI trust domain configuration
mode, use the following commands:
Notes: The name of the country can only contain two characters.
To cancel the above configurations, in the PKI trust domain configuration mode, use the fol-
lowing commands:
l no subject commonName
l no subject country
l no subject localityName
l no subject stateOrProvinceName
l no subject organization
l no subject organizationUnit
You can add both the IP address and domain name to the Subject Alternative Name list.
To add the specified IP address to the Subject Alternative Name list, in the PKI trust domain con-
figuration mode, use the following command:
subject-alt-name ip ip-address
l ip-address - Specifies the IP address to be added to the Subject Alternative Name list. Both
IPv4 and IPv6 addresses are supported.
To remove the specified IP address from the Subject Alternative Name list, in the PKI trust
domain configuration mode, use the following command:
no subject-alt-name ip ip-address
To add the specified domain name to the Subject Alternative Name list, in the PKI trust domain
configuration mode, use the following command:
subject-alt-name dns domain-name
To remove the specified domain name from the Subject Alternative Name list, in the PKI trust
domain configuration mode, use the following command:
no subject-alt-name dns domain-name
Configuring a CRL
CRL is used to help you check whether a certificate within its validity period has been revoked by
the CA. To configure a CRL check, in the PKI trust domain configuration mode, use the fol-
lowing command:
crl {n o ch eck | o p tio n al | required}
l nocheck – StoneOS will not check the CRL. This is the default option.
l optional – StoneOS will still accept the peer's authentication even if the CRL is not avail-
able.
l required – StoneOS will not accept the peer’s authentication unless the CRL is available.
In addition, you can configure the URL that is used to retrieve the CRL information. The con-
figuration needs to be performed in the CRL configuration mode. To enter the CRL configuration
mode, in the PKI trust domain configuration mode, use the following command:
crl co n figure
To configure the URL that is used to retrieve CRL information, in the CRL configuration mode,
use the following command:
url index { url-http | url-ldap [usern ame user-name p asswo rd password auth -meth o d auth-
method ]} [vro uter vrouter-name ]
l index – Specifies the URL index. StoneOS supports up to three URLs, and uses them by
turn of URL1, URL2 and URL3.
l url-ldap – Specifies the LDAP URL that is used to retrieve CRL information. The URL
entered should begin with ldap:// and the length is 1 to 255 characters.
l username user-name - Specifies the login DN of the LDAP server. The login DN is typ-
ically a user account with query privilege predefined in the LDAP server.
l auth-method auth-method - Specifies the authentication mode for the LDAP server.
Plain text authentication (plain) is supported.
) when the system is configured to retrieve CRL information via LDAP. If this para-
meter is not configured, the system will retrieve CRL information anonymously by
default.
l vrouter vrouter-name – Specifies the VRouter from which the CRL information is retrieved.
The default value is the default VRouter (trust-vr).
The Online Certificate Status Protocol (OCSP), having the same function as CRL, is used to
obtain the revocation status of certificates. Compared with CRL, OCSP can online check the
status of certificates, thus providing more accurate result. You can configure CRL and OCSP sim-
ultaneously. If it fails to validate the certificate using either CRL or OCSP, the system will con-
clude that the certificate cannot be used.
To specify the OCSP responder, use the following command in the OCSP configuration mode:
url url
l url – Specifies the URL of the OCSP responder. The URL must begin with “http://”.
When the device sends OCSP requests, you can choose to add the random number to the
requests, which improves the security between the device and the OCSP responder. By default,
the device adds the random number to the requests. To add random number, use the following
command in the OCSP configuration mode:
nonce enable
To cancel the configurations, use the following command:
StoneOS provides the function of OCSP response information cache, which improves the effi-
ciency of certificate verification. You can specify the invalidity time for the OCSP request inform-
ation that is stored in the cache of the device and the OCSP request information will be deleted
from the cache after the invalidity time reaches. To specify the invalidity time, use the following
command in the OCSP configuration mode:
response-cache-refresh-interval time
l time - Specifies the invalidity time (in minutes) for the OCSP response information that
stored in the cache. The value ranges from 0 to 1440. 0 represents the device will not store
the OCSP response information. And when the device receives the request of certificate veri-
fication, it will send request to the OCSP responder to check the certificate status. When the
specified value is between 1 and 1440, the invalidity time for stored OCSP response inform-
ation is calculated by comparing the time of “current system time + time” with the time
when the OCSP response information will be updated. The invalidity time is the one which is
shorter.
In the OCSP configuration mode, use the following command to cancel the configurations:no
response-cache-refresh-interval
After you cancel the configurations, the invalidity time for OCSP response information is the time
when the OCSP response information will be updated. This is also the default settings.
Importing a CA Certificate
To import a CA certificate, in the global configuration mode, use the following command:
p ki auth en ticate trust-domain-name
Importing a Key
To import a key to the PKI trust domain, in the global configuration mode, use the following com-
mand:
p ki key imp o rt {rsa | dsa | sm2} [lab el label-name ]
l label-name – Specifies the name of key pair. The name should be the unique in system. If
the parameter is not specified, the default key Default-Key will be selected.
To import the key pair to the PKI trust domain, in the execution mode, use the following com-
mands:
imp o rt p ki key key-name en c-key sig-key-name fro m {ftp server ip-address [vro uter VR-
name ] [user user-name p asswo rd password ] file-name | tftp server ip-address [vro uter VR-
name ] file-name }
l user user-name password password – Specifies the user name and password of the specified
server.
After completing the PKI trust domain configuration, you need to generate a certificate request
based on the content of the PKI trust domain, and then send the request to the CA server to
enroll the corresponding local certificate. To generate a certificate request, in the global con-
figuration mode, use the following command:
p ki en ro ll trust-domain-name
l trust-domain-name – Specifies the name of the PKI trust domain to generate the cor-
responding certificate request.
After obtaining a local certificate from the CA server, you need to import the local certificate to
the device. To import a local certificate, in the global configuration mode, use the following com-
mand:
p ki imp o rt trust-domain-name certificate
l trust-domain-name – Specifies the name of the PKI trust domain where the local certificate
will be imported from.
After executing this command, the system will prompt the user to copy the content of the cer-
tificate to the specified location. Press Enter, type a period (.), and then press Enter again. The sys-
tem will begin to import the local certificate.
To obtain the CRL of the PKI trust domain, in the global configuration mode, use the following
command:
p ki crl request trust-domain-name
l trust-domain-name – Specifies the name of PKI trust domain. The system will obtain the cur-
rent CRL based on CRL configuration in the specified PKI trust domain.
To facilitate configuration, you can export a PKI trust zone's certificate (CA and local certificate)
and the private key for the local certificate in PKSC12 format, and import them on another Hill-
stone device.
To export the PKI trust domain information, in the global configuration mode, use the following
command:
p ki exp o rt trust-domain-name p kcs12 pass-phrase
You can also export the PKI trust domain information in form of a file to an FTP server, TFTP
server or USB disk via CLI.
To export the PKI trust domain information to an FTP server, in the execution mode, use the fol-
lowing command:
exp o rt p ki trust-domain-name p kcs12 password to ftp server ip-address [user user-name p ass-
wo rd password [ file-name ] | file-name ]
l pkcs12 password – Specifies the password used to decrypt the private key.
l user user-name password password – Specifies the username and password of the FTP
server.
To export the PKI trust domain information to a TFTP server, in the execution mode, use the fol-
lowing command:
exp o rt p ki trust-domain-name p kcs12 password to tftp server ip-address [ file-name ]
To export the PKI trust domain information to a USB disk, in the execution mode, use the fol-
lowing command:
exp o rt p ki trust-domain-name p kcs12 password to {usb 0 | usb 1} [ file-name ]
To import the PKI trust domain information, in the global configuration mode, use the following
command:
p ki imp o rt trust-domain-name p kcs12 pass-phrase
After executing this command, the system will prompt the user to copy the content of the PKI
trust domain to the specified location. Press Enter, type a period (.), and then press Enter again.
The system will begin to import the PKI trust domain.
You can also import the PKI trust domain information in form of a file from an FTP server, TFTP
server or USB disk via CLI.
To import the PKI trust domain information from an FTP server, in the execution mode, use the
following command:
imp o rt p ki trust-do main trust-domain-name p kcs12 password fro m ftp server ip-address
{user user-name p asswo rd password file-name | file-name }
l pkcs12 password – Specifies the password used to decrypt the private key.
l user user-name password password file-name – Specifies the username and password of the
FTP server.
To import the PKI trust domain information from a TFTP server, in the execution mode, use the
following command:
imp o rt p ki trust-do main trust-domain-name p kcs12 password fro m tftp server ip-address file-
name
To import the PKI trust domain information from a USB disk, in the execution mode, use the fol-
lowing command:
imp o rt p ki trust-do main trust-domain-name p kcs12 password fro m {usb 0 | usb 1} file-name
If enabling Sandbox function, when importing a trust certificate of PE file, System will not detect
the PE file. In the global configuration mode, use the following command to import a trust cer-
tificate:
imp o rt p ki trusted-ca {p ackage | sin gle} fro m {ftp server ip-address [vro uter VR-name ] [user
user-name p asswo rd password ] file-name | tftp server ip-address [vro uter VR-name ] file-
name }
l server ip-address – Specifies the FTP server IP or the TFTP server IP.
l user user-name password password – Specifies the username and password of the FTP
server.
To facilitate configuration, you can export a PKI trust zone's local certificate, and import it on
another Hillstone device.
To export a local certificate, in the global configuration mode, use the following command:
p ki exp o rt trust-domain-name certificate
After executing this command, the system will prompt the user to copy the content of the cer-
tificate to the specified location. Press Enter, type a period (.), and then press Enter again. The sys-
tem will begin to export the local certificate.
You can also export the local certificate in form of a file to an FTP server, TFTP server, or USB
disk via CLI.
To export the local certificate to an FTP server, in the execution mode, use the following com-
mand:
exp o rt p ki trust-domain-name cert to ftp server ip-address [user user-name p asswo rd pass-
word [ file-name ] | file-name ]
l user user-name password password – Specifies the username and password of the FTP
To export the local certificate to a TFTP server, in the execution mode, use the following com-
mand:
exp o rt p ki trust-domain-name cert to tftp server ip-address [ file-name ]
To export the local certificate to a USB disk, in the execution mode, use the following command:
exp o rt p ki trust-domain-name cert to {usb 0 | usb 1} [ file-name ]
To import a local certificate, in the global configuration mode, use the following command:
p ki imp o rt trust-domain-name certificate
After executing this command, the system will prompt the user to copy the content of the cer-
tificate to the specified location. Press Enter, type a period (.), and then press Enter again. The sys-
tem will begin to import the local certificate.
You can also import the local certificate in form of a file from an FTP server, TFTP server or USB
disk via CLI.
To export the local certificate from an FTP server, in the execution mode, use the following com-
mand:
imp o rt p ki trust-do main trust-domain-name cert fro m ftp server ip-address {user user-name
p asswo rd password file-name | file-name }
l user user-name password password file-name – Specifies the username and password of the
FTP server, and name of the imported file.
To export the local certificate from a USB disk, in the execution mode, use the following com-
mand:
imp o rt p ki trust-do main trust-domain-name cert fro m {usb 0 | usb 1} file-name
When HTTPS mode is selected in Web authentication (WebAuth), the security certificate is usu-
ally not trusted by browser. You will need to click the Continue button to start Web authen-
tication. In order to avoid this situation, you can purchase a local certificate signed by a certificate
authority and import this certificate into a new PKI trust domain. Then you can import the trus-
ted certificate by configuring this feature. The public key of CA certificate in the browser will
authenticate the imported certificate signed by the private key of CA. Therefore, the situation that
security certificate is trusted by browser of client will not occurs any more.
To configure importing customized certificate for HTTPS WebAuth, in the WebAuth con-
figuration mode, use the following command:
h ttp s-trust-do main trust-domain-name
l trust-domain-name – Specifies the name of the HTTPS trust domain. Before executing this
command, this new PKI trust domain must have been added into StoneOS, and you should
make sure that the local certificate purchased from the certificate authority has been imported
into it. By default, HTTPS trust domain is trust_domain_default, which will result in the
untrusted certificate warning.
Notes: Make sure that the trusted CA certificate has been imported into PC’s
browser, , otherwise the browser will still prompt that security certificate is not
being trusted.
To view information on imported customized certificate, in any mode, use the following com-
mand:
sh o w web auth
In order to ensure the validity of the user certificate and to avoid the problems caused by cer-
tificate expiry, the system provides the following solutions:
l For the certificate or CA certificate that will expire soon, the system will generate a log of the
Warning level one week before the date of expiry;
l For the certificate or the CA certificate that have already expired, the system will generate a
log of the Critical level everyday;
l For the self-signed certificate, the system provides a refreshing option to allow you to re-sign
the certificate.
The system defines the validity period of a self-signed certificate is 10 years. To refresh the self-
signed certificate and re-sign the certificate, in the global configuration mode, use following com-
mand:
p ki refresh trust-domain-name
To view the configuration information of key pair, in any mode, use the following command:
sh o w p ki key [lab el key-name ]
To view the configuration information of PKI trust domain, in any mode, use the following com-
mand:
sh o w p ki trust-do main [ trust-domain-name ]
A certificate chain consists of a root CA certificate, any intermediate CA certificates, and a CA-
signed user certificate. Browsers consider that the certificate of the current user is valid and trus-
ted only if each certificate in the certificate chain is valid. A root CA certificate lies in the top
most position of the chain of trust hierarchy. Intermediate certificates branch off root certificates
like branches of trees. They act as middle-men between the protected root certificates and the
server certificates issued out to the public. There will always be at least one intermediate cer-
tificate in a chain, but there can be more than one.
To create a certificate chain, use the following command in global configuration mode:
pki cert-chain cert-chain-name
l cert-chain-name - Specifies the name of the certificate chain, which can be 1 to 31 characters.
After the command is executed, the system generates a certificate chain with the specified
name and enters the certificate chain configuration mode. If the specified name already exists,
the system directly enters the certificate chain configuration mode.
To delete a specified certificate chain, use the following command in global configuration mode:
no pki cert-chaincert-chain
The system allows you to import certificate chain files from servers or by copying the certificate
chain content. A certificate chain can contain at most 6 certificates. These certificates need to be
able to complete a chain but there is no limitation on the order of these certificates.
To import a certificate chain file from the FTP, FTPS, or SFTP server, use the following com-
mand in execution mode:
import pki cert-chain cert-chain-name {pkcs7 | pkcs12-der password | cert-bundle} from {ftp |
ftps | sftp server} ip-address vrouter vrouter-name user user-name password password file-name
l pkcs7 | pkcs12-der password | cert-bundle - Specifies the format of the certificate chain file,
which can be PKCS#7, PKCS#12, or CERT-BUNDLE. The certificate chain file in the
CERT-BUNDLE format is PEM-encoded. For certificate chain files in the PKCS#12 format,
you need to specify the password of the files.
l user user-name password password- Specifies the username and password used to access the
server.
To import a certificate chain file from the TFTP server, use the following command in execution
mode:
import pki cert-chain cert-chain-name {pkcs7 | pkcs12-der password | cert-bundle} from tftp
server ip-address vrouter vrouter-name file-name
To import a certificate chain file by copying the certificate chain content, use the following com-
mand in global configuration mode:
pki import cert-chain cert-chain-name {pkcs7 | cert-bundle}
The system allows you to export a certificate chain file to a specified server or display the cer-
tificate chain content on the endpoint.
To export a certificate chain file to a server, use the following command in execution mode:
export pki cert-chain cert-chain-name {pkcs7 | pkcs12-der password } to {ftp | ftps | sftp
server} ip-address vrouter vrouter-name user user-name password password file-name
To export a certificate chain file and display the file content on the endpoint, use the following
command in global configuration mode:
pki export cert-chain cert-chain-name
To view configuration information about a specified certificate chain, use the following command
in any mode:
show pki cert-chain cert-chain-name
To view configuration information about all certificate chains, use the following command in any
mode:
show pki cert-chain
To view information about certificates in a specified certificate chain, use the following command
in any mode:
show pki cert-chain cert-chain-namecert subject-name
Certificate validity check is effective for all certificates in the certificate chain and certificates in
the trusted domain. By default, certificate validity check is enabled. To disable certificate validity
check, use the following command in global configuration mode:
pki cert-validity-check disable
To enable certificate validity check, use the following command in global configuration mode:
pki cert-validity-check enable
By default, the system sends an alarm per day a week before the certificate expires. When the cer-
tificate expires, the system records an event log at critical level.
To configure check interval of certificate validity and warning days before certificate expiration,
use the following command in global configuration mode:
pki cert-validity-check {interval value | pre-warning-time time}
l interval value - Specifies the check interval of certificate validity. Valid values: 1 to 100, in
hours. Default value: 24.
l pre-warning-time time - Specifies the warning days before certificate expiration. Valid values:
1 to 1000, in hours. Default value: 168.
To view the configuration of certificate validity check, use the following command in any mode:
show pki cert-validity-check
The last check result is displayed in the command output:
l null cert: The certificate is not imported in the trusted domain or certificate chain because no
certificate exists.
Requirement
The goal is to create a secure tunnel between Hillstone Device A and Hillstone Device B. PC1 is
used as the host of Hillstone Device A, whose IP address is 10.1.1.1, and the gateway address is
10.1.1.2; Server1 is used as the server of Hillstone Device B, whose IP address is 192.168.1.1,
and the gateway address is 192.168.1.2. The requirement is: protecting the traffic between the
subnet represented by PC1 (10.1.1.0/24) and the subnet represented by server1
(192.168.1.0/24). The authentication policy adopts PKI certificate system, using security pro-
tocol ESP and encryption algorithm 3DES, and the Hash algorithm is SHA1. The networking
topology is shown in the figure below:
Hillstone Device A
hostname(config)# in terface eth ern et0/0
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-tun1)# zo n e trust
hostname(config-if-tun1)# exit
Hillstone Device B
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-tun1)# zo n e trust
hostname(config-if-tun1)# exit
Hillstone Device A
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Hillstone Device B
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Hillstone Device A
hostname(config)# isakmp p ro p o sal p 1
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# h ash sh a
hostname(config-isakmp-proposal)# exit
Hillstone Device B
hostname(config)# isakmp p ro p o sal p 1
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# h ash sh a
hostname(config-isakmp-proposal)# exit
Hillstone Device A
Generate a key pair
hostname(config)# p ki key gen erate rsa lab el 111 mo dulus 1024
hostname(config-trust-domain)# exit
Hillstone Device B
Generate a key pair
hostname(config)# p ki key gen erate rsa lab el 222 mo dulus 1024
hostname(config-trust-domain)# exit
Hillstone Device A
hostname(config)# isakmp p eer east
hostname(config-isakmp-peer)# exit
Hillstone Device B
hostname(config-isakmp-peer)# exit
Hillstone Device A
hostname(config)# ip sec p ro p o sal p 2
hostname(config-ipsec-proposal)# p ro to co l esp
hostname(config-ipsec-proposal)# h ash sh a
hostname(config-ipsec-proposal)# exit
Hillstone Device B
hostname(config)# ip sec p ro p o sal p 2
hostname(config-ipsec-proposal)# p ro to co l esp
hostname(config-ipsec-proposal)# h ash sh a
hostname(config-ipsec-proposal)# exit
H illst o n e D e vic e A
hostname(config)# tun n el ip sec vp n auto
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-if-tun1)# exit
Hillstone Device B
hostname(config)# tun n el ip sec vp n auto
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-if-tun1)# exit
Hillstone Device A
hostname(config)# ip vro uter trust-vr
hostname(config-vrouter)# exit
Hillstone Device B
hostname(config)# ip vro uter trust-vr
hostname(config-vrouter)# exit
l IPSec Protocol
l SSL VPN
l Dial-up VPN
l PnPVPN
l GRE Protocol
l L2TP Protocol
Overview
IPsec is a widely used protocol suite for establishing VPN tunnel. IPsec is not a single protocol,
but a suite of protocols for securing IP communications. It includes Authentication Headers
(AH), Encapsulating Security Payload (ESP), Internet Key Exchange (IKE) and some authen-
tication methods and encryption algorithms. IPsec protocol defines how to choose the security
protocols and algorithms, as well as the method of exchanging security keys among com-
munication peers, offering the upper layer protocols with network security services including
access control, data source authentication and data encryption, etc.
l Authentication Header (AH): AH is a member of the IPsec protocol suite. AH guarantees con-
nectionless integrity and data source verification of IP packets, and furthermore, it protects
against replay attacks. AH can provide sufficient authentications for IP headers and upper-
layer protocols.
l Encapsulating Security Payload (ESP): ESP is a member of the IPsec protocol suite. ESP
provides encryption for confidential data and implements data integrity check of IPsec ESP
data in order to guarantee confidentiality and integrity. Both ESP and AH can provide service
of confidentiality (encryption), and the key difference between them is the coverage.
l Internet Key Exchange (IKE): IKE is used to negotiate the AH and ESP password algorithm
and put the necessary key of the algorithm to the right place.
Notes: The Russia version does not support the IPsec protocol and the related
IPsec VPN function.
Security Association
IPsec provides encrypted communication between two peers which are known as IPsec ISAKMP
gateways. Security Association (SA) is the basis and essence of IPsec. SA defines some factors of
Establishing a SA
You can establish a SA in two ways: manual and IKE auto negotiation (ISAKMP).
Manually configuring a SA is complicated as all the information will be configured by yourself and
some advanced features of IPsec are not supported (e.g. timed refreshing), but the advantage is
that the manually configured SA can independently fulfill IPsec features without relying on IKE.
This method applies to the condition of a small number of devices, or the environment of static
IP addresses.
IKE auto negotiation method is comparatively simple. You only need to configure information of
IKE negotiation and leave the rest jobs of creating and maintaining a SA to the IKE auto nego-
tiation function. This method is for medium and large dynamic network. Establishing SA by IKE
auto negotiation consists of two phases. The Phase 1 negotiates and creates a communication
channel (ISAKMP SA) and authenticates the channel to provide confidentiality, data integrity and
data source authentication services for further IKE communication; the Phase 2 creates an IPsec
SA using the established ISAKMP. Establishing a SA in two phases can speed up key exchanging.
Phase 1 SA
The Phase 1 SA refers to the Security Association for establishing the channel. The negotiation
procedure is:
3. DH exchange. Although it is known as key exchange, actually the two hosts will not
exchange any real key at any time during the communication, and instead they only exchange
the basic element information that is used by the DH algorithm to generate shared key. The
DH exchange can be either open to the public or protected. After exchanging elements for
generating the key, the two hosts of the both ends can generate the identical shared master
key respectively to protect the authentication process hereafter.
Phase 2 SA
The Phase 2 SA, a fast SA, refers to the Security Association established for data transmission.
This phase will negotiate to establish an IPsec SA, and provide IPsec service for data exchange.
The negotiation messages in Phase 2 are protected by the Phase 1 SA, and any message that is not
protected by the Phase 1 SA will be rejected. The Phase 2 negotiation (fast negotiation mode) pro-
cedure is:
l After the above four requirements reach an agreement, two SAs will be established
and used for inbound and outbound communications respectively.
Hash Algorithm
Both AH and ESP can verify the integrity of IP packets, and determine whether the packets have
been tampered during transmission. The verification algorithm is mainly implemented by the hash
function. The hash function can accept a message input of random length, and produces an output
of fixed length. The output is known as the message digest. IPsec peers will compute the message
digest. If the two digests are identical, the message proves to be complete and not having been
tampered. In general IPsec adopts the following Hash algorithms:
l MD5: Use message input of a random length to produces a 128-bit message digest.
l SHA-1: Use a message with a length less than 264 bits to produce a 160-bit message digest.
The digest of SHA-1 is longer than that of MD5, so it is more secure.
l SHA-2: Consists of SHA-256, SHA-384 and SHA-512. This algorithm can produce a longer
message digest. For SHA-256, a message input with a length less than 264 bits can produce a
256-bit message digest; for SHA-384, a message input with a length less than 2128 bits pro-
duces a 384-bit message digest; for SHA-512, a message input with a length less than 2128
bits produces a 512-bit message digest.
ESP can provide encryption protection for the content of IP packets, and prevent against sniffing
during the transmission. The encryption algorithm is implemented mainly through symmetric key
system which uses the same key to encrypt and decrypt data. StoneOS supports 3 encryption
algorithms:
l DES (Data Encryption Standard): Uses a 56-bit key to encrypt each 64-bit plain text block.
l 3DES (Triple DES): Uses three 56-bit DES keys (168 bits in total) to encrypt plain text.
l AES (Advanced Encryption Standard): StoneOS supports AES algorithms of 128-bit, 192-bit
and 256-bit keys.
Compression Algorithm
IPComp (IP Payload Compression) is a protocol designed to reduce the length of IP datagram.
This protocol compresses the IP datagram payload by different compression algorithms, and
achieves the effect of transmitting data of heavy payload under the conditions of low bandwidth.
The prerequisite for a successful IPComp communication is to establish an IPComp Association
(IPCA) between the two ends of the communication. The association includes all the information
needed for IPComp operation, such as the compression algorithm and the parameters for the com-
pression algorithm. When compressing the network data stream of IPsec by IPComp, you can cre-
ate an IPCA manually or by dynamic negotiation. For the dynamic negotiation approach, ISAKMP
gateway offers all the mechanisms necessary for establishing the IPCA. The IPsec function of Hill-
stone devices provides the following IPComp compression algorithm:
References
The IPsec function of Hillstone devices follows the IPsec protocol specifications defined in
RFC. For more detailed information about IPsec Protocol, see the relevant sections of the RFC
l ESP: RFC2406/RFC4303
l AH: RFC2402/RFC4302
l Hash algorithm: FIPS180-2 (SHA), RFC2404 (SHA-1), RFC4868 (SHA-2) and RFC2403
(MD5)
l Policy-based VPN: Applies a configured VPN tunnel in a policy rule, and only permits the
matched traffic to pass through the VPN tunnel.
l Route-based VPN: Bind the configured VPN tunnel to a tunnel interface; when configuring
the static route, you need to specify the tunnel interface as the next-hop route.
This feature is only supported for CloudEdge. When more than 2 vCPUs are used, you can enable
the function to improve the decrypting performance of IPSec VPN as needed. After it is enabled,
system will decrypt the packet with multi-core decryption technology, which will also increase
the throughput of device. To improve the decrypting performance of IPSec VPN, in the global
configuration mode, use the following command:
tunnel-core-unbind
In the global configuration mode, use the command no tunnel-core-unbind to restore the default
configuration.
You can configure the function to improve the new session processing performance of IPSec
VPN as needed. After this function is configured, system will adopt multi-core and multi-pro-
cessor technology for VPN negotiation.
Configuring the Number of CPU Cores Used By the System Data Plane
To improve the new session processing performance of IPSec VPN, you need to configure the
number of CPU cores used by the system data plane first. After the configuration, The number of
VPN processor is the total number of system CPU cores minus the number of CPU cores used by
the system data plane. To configure the number of CPU cores used by the system data plane, in
the global configuration mode, use the following command:
flow-core-num number
l number - Specifies the number of CPU cores used by the system data plane. The range is
max_core_number/2 to max_core_number, max_core_number is the total number of system
CPU cores. After configuration, the formula is: number of VPN processor = max_core_num-
ber (the total number of system CPU cores) - flow-core-number (the number of CPU cores
used by the system data plane).
By default, the VPN multi-process function is disabled. To enable or disable this function, in the
global configuration mode, use the following command:
l Enable:cp-multi-cores vpnd
Notes:
l After configuring the number of CPU cores used by the system data plane or
canceling the number already configured, you must reboot the device to make
the configuration take effect.
l After enabling /disabling the VPN multi-process function, you must reboot
the device to make the configuration take effect.
l You need to configure both "Configuring the Number of CPU Cores Used By
the System Data Plane and "Enable VPN multi-process function", and after
restarting the device, the VPN multi-process function can be fully enabled.
l This function supports IKEv1 VPN, Dial-up VPN, PnPVPN and XAUTH.
l SG-6000-X8180 and devices with less than or equal to two CPU cores do
not support this function.
The IPSec asynchronous mode applies to platforms (X8180 and A-series) that integrate hardware
accelerators. IPSec encryption and decryption support asynchronous mode, where data encryption
and decryption are accelerated, and IPSec throughput performance is improved through hardware
accelerators.
The asynchronous mode of IPSec is enabled by default . In the global configuration mode, use the
following commands to enable or disable this function:
To view the information and algorithms of the hardware accelerator supported by the system, use
the following command in any mode:
show dp-dpdk-crypto-device
To view statistics for encryption and decryption queues, use the following commands in any
mode:
show ipsec-async-crypto statistic [ tunnel_id ] [clear]
l show ipsec-async-crypto statistic: Displays the statistics of the IPSec encryption and
decryption queues of the device in asynchronous mode.
l tunnel_id:Specifies the tunnel ID number. The system displays the the statistics of the
IPSec encryption and decryption queue of the specified tunnel.
l clear:Displays the statistics of the IPSec encryption and decryption queues of the device
or the specified tunnel, and then clear the statistics.
The configuration options of manual key VPN include the operation mode of IPsec protocol,
SPI, protocol type, encryption algorithm, hash algorithm and compression algorithm.
To create a manual key VPN, in the global configuration mode, use the following command:
tunnel ipsec name manual
l name – Specifies the name of the manual key VPN tunnel that will be created.
After executing the above command, the CLI is in the manual key VPN configuration mode. You
need to configure all the parameters of the manual key VPN in this mode.
To delete the specified manual key VPN, in the global configuration mode, use the following com-
mand:
no tunnel ipsec name manual
To specify the encapsulation mode of IPsec protocol (either transport mode or tunnel mode), in
the manual key VPN configuration mode, use the following command:
mo de {tran sp o rt | tun n el}
l tunnel – Specifies the encapsulation mode of IPsec protocol as tunnel. This is the default
mode.
To restore to the default mode, in the manual key VPN configuration mode, use the command no
mode.
Specifying a SPI
SPI (Security Parameter Index) is a unique 32-bit identifier generated by SA and transmitted in
the AH and ESP header. SPI is used to find the corresponding VPN tunnel for decryption. To
specify a SPI, in the manual key VPN configuration mode, use the following command:
To cancel the SPI, in the manual key VPN configuration mode, use the command no spi.
When configuring an SA, you should configure the parameters of both the inbound and outbound
direction. Furthermore, SA parameters of the two ends of the tunnel should be totally matched.
The local inbound SPI should be the same with the outbound SPI of the other end; the local out-
bound SPI should be the same with the inbound SPI of the other end.
The IPsec protocol types include ESP and AH. To specify the protocol type for the manual key
VPN tunnel, in the manual key VPN configuration mode, use the following command:
protocol {esp | ah}
l ah – Uses AH.
To restore to the default protocol type, in the manual key VPN configuration mode, use the com-
mand no protocol.
To specify an encryption algorithm for the manual key VPN tunnel, in the manual key VPN con-
figuration mode, use the following command:
en cryp tio n {3des | des | aes | aes-192 | aes-256 | n ull}
l 3des – Uses the 3DES encryption. The key length is 192-bit. This is the default algorithm.
l aes – Uses the AES encryption. The key length is 128 bits.
l aes-192 – Uses the 192-bit AES encryption. The key length is 192 bits.
l null – No encryption.
To restore to the default encryption algorithm, in the manual key VPN configuration mode, use
the command no encryption.
To specify a hash algorithm for the manual key VPN tunnel, in the manual key VPN configuration
mode, use the following command:
hash {md5 | sha | sha256 | sha384 | sha512 | null}
l md5 – Uses the MD5 hash algorithm. The digest length is 128 bits.
l sha – Uses the SHA-1 hash algorithm. The digest length is 160 bits. This is the default hash
algorithm.
l sha256 – Uses the SHA-256 hash algorithm. The digest length is 256 bits.
l sha384 – Uses the SHA-384 hash algorithm. The digest length is 384 bits.
l sha512 –Uses the SHA-512 hash algorithm. The digest length is 512 bits.
To restore to the default hash algorithm, in the manual key VPN configuration mode, use the com-
mand no hash.
By default, the manual key VPN does not use any compression algorithm. To specify a com-
pression algorithm (DEFLATE for the manual key VPN tunnel), in the manual key VPN con-
figuration mode, use the following command:
compression deflate
To cancel the specified compression algorithm, in the manual key VPN configuration mode, use
the command no compression.
To specify a peer IP address, in the manual key VPN configuration mode, use the following com-
mand:
peer ip-address
To cancel the specified peer IP address, in the manual key VPN configuration mode, use the com-
mand no peer.
You should configure the keys of both ends of the tunnel. The local inbound hash key should be
the same with the peer's outbound hash key, and the local outbound hash key should be the same
with the peer's inbound hash key. To configure a hash key, in the manual key VPN configuration
mode, use the following command:
hash-key inbound hex-number-string outbound hex-number-string
To cancel the specified hash key, in the manual key VPN configuration mode, use the command
no hash-key.
You should configure the keys of both ends of the tunnel. The local inbound encryption key
should be the same with the peer's outbound encryption key, and the local outbound encryption
key should be the same with the peer's inbound encryption key. To configure an encryption key
for the protocol, in the manual key VPN configuration mode, use the following command:
encryption-key inbound hex-number-string outbound hex-number-string
To specify an egress interface, in the manual key VPN configuration mode, use the following com-
mand:
l interface interface-name
To cancel the specified egress interface, in the manual key VPN configuration mode, use the com-
mand no interface.
Notes: The egress interface in the non-root VSYS cannot be the VSYS shared inter-
face.
IKEv1 VPN
l Configuring a P1 proposal
l Configuring a P2 proposal
l Configuring a tunnel
Configuring a P1 Proposal
P1 proposal is the IKE security proposal that can be applied to the ISAKMP gateway, and is used
in the Phase 1 SA. The configurations of IKE security proposal include specifying an authen-
tication method, encryption algorithm, hash algorithm and lifetime of SA and DH group.
To create a P1 proposal, i.e., an IKE security proposal, in the global configuration mode, use the
following command:
isakmp proposal p1-name
l p1-name – Specifies the name of the P1 proposal that will be created. After executing the
command, the CLI will enter the P1 proposal configuration mode. You can configure para-
meters for P1 proposal in this mode.
To delete the specified P1 proposal, in the global configuration mode, use the command no
isakmp proposal p1-name.
Specify the method of IKE identity authentication. Identity authentication is used to confirm the
identities of both the ends during the communication. There are two methods: pre-shared key
authentication and digital signature authentication. For the pre-shared key authentication, the
authentication string is used as an input to generate a key, and different authentication strings will
definitely generate different keys. In the non-root VSYS, only the pre-share key authentication
mode is supported. To specify the authentication method of IKE security proposal, in the P1 pro-
posal configuration mode, use the following command:
authentication {p re-sh are | rsa-sig | dsa-sig | gm-de }
l pre-share – Uses the pre-shared key authentication. This is the default method.
l dsa-sig – Uses the DSA digital signature authentication. The corresponding Hash algorithm
can only be SHA-1.
l gm-de – Uses the envelope authentication mode. When the authentication mode is selected,
only encryption algorithm SM1 and SM4 are supported and verification algorithm SHA or
SM3 are supported.
StoneOS provides the following five encryption algorithms: 3DES, DES, 128bit AES, 192-bit
AES and 256-bit AES. To specify the encryption algorithm of IKE security proposal, in the P1
proposal configuration mode, use the following command:
en cryp tio n {3des | des | aes | aes-192 | aes-256 | sm1 | sm4}
l 3des – Uses the 3DES encryption. The key length is 192 bits. This is the default algorithm
for StoneOS.
l aes – Uses the AES encryption. The key length is 128 bits.
l aes-192 – Uses the 192-bit AES encryption. The key length is 192 bits.
l aes-256 – Uses the 256-bit AES encryption. The key length is 256 bits.
l sm1 – Uses the SM1 block cipher algorithm. The key length is 128 bits.
l sm4 – Uses the SM4 block cipher algorithm. The key length is 128 bits.
To restore to the default encryption algorithm, in the P1 proposal configuration mode, use the
command no encryption.
StoneOS supports the following hash algorithms: MD5, SHA-1 and SHA-2 (including SHA-256,
SHA-384 and SHA-512). To specify the hash algorithm of IKE security proposal, in the P1 pro-
posal configuration mode, use the following command:
h ash {md5 | sh a | sh a256 | sh a384 | sh a512 | sm3}
l sha – Uses the SHA-1 hash algorithm. The digest length is 160 bits. This is the default hash
algorithm.
l sha256 – Uses the SHA-256 hash algorithm. The digest length is 256 bits.
l sha384 – Uses the SHA-384 hash algorithm. The digest length is 384 bits.
l sha512 – Uses the SHA-512 hash algorithm. The digest length is 512 bits.
l sm3 – Uses the SM3 hash algorithm. The digest length is 256 bits. The algorithm can be
used in the digital signature and verification, generating message verification code and other
application scenarios.
To restore to the default hash algorithm, in the P1 proposal configuration mode, use the com-
mand no hash.
Selecting a DH Group
Diffie-Hellman (DH) is designed to establish a shared secret key. DH group determines the
length of the element generating keys for DH exchange. The strength of keys is partially decided
by the robustness of the DH group. The longer the key element is, the more secure the generated
key will be, and the more difficult it will be to decrypt it. The selection of DH group is important,
because the DH Group is only determined in the Phase 1 SA negotiation, and the Phase 2 nego-
tiation will not re-select a DH group. The two phases use the same DH group; therefore the selec-
tion of DH group will have an impact on the keys generated for all sessions. During negotiation,
the two ISAKMP gateways should select the same DH group, i.e., the length of key element
should be equal. If the DH groups do not match, the negotiation will fail.
To select a DH group, in the P1 proposal configuration mode, use the following command:
group { 1 | 2 | 5 | 14 | 15 | 16 | 18 | 19 | 20 | 21 | 24 }
l 2 – Selects DH Group2. The key length is 1024 bits(MODP Group).This is the default
value.
l 19 – Select DH Group 19. The key length is 256 bits (ECP Group).
l 20 – Select DH Group 20. The key length is 384 bits (ECP Group).
l 21 – Select DH Group 21. The key length is 521 bits (ECP Group).
l 24 – Select DH Group 24. The key length is 2048 bits (MODP Group with 256-bit Prime
Order Subgroup).
To restore the DH group to the default, in the P1 proposal configuration mode, use the command
no group.
When configuring PFS in the P2 proposal, you can also select the DH group.
The Phase 1 SA is configured with a default lifetime. When the SA lifetime expires, the device
will send an SA P1 deleting message to its peer, notifying that the P1 SA has expired and it
requires a new SA negotiation. To specify the lifetime of SA, in the P1 proposal configuration
mode, use the following command:
lifetime time-value
To restore to the default lifetime, in the P1 proposal configuration mode, use the command no
lifetime.
After creating an ISAKMP gateway, you can configure the IKE negotiation mode, IP address and
type of the ISAKMP gateway, IKE security proposal, pre-shared key, PKI trust zone, local ID,
ISAKMP gateway ID, ISAKMP connection type, NAT traversal, etc.
To create an ISAKMP gateway, in the global configuration mode, use the following command:
isakmp peer peer-name
After executing the command, the CLI will enter the ISAKMP gateway configuration mode. You
can configure parameters for the ISAKMP gateway in this mode.
To delete the specified ISAKMP gateway, in the global configuration mode, use the command no
isakmp peer peer-name.
To bind an interface to the ISAKMP gateway, in the ISAKMP gateway configuration mode, use
the following command:
interface interface-name
To cancel the binding, in the ISAKMP gateway configuration mode, use the command no inter-
face interface-name.
The IKE negotiation consists of two modes: the main mode and aggressive mode. The aggressive
mode cannot protect identity. You have no choice but use the aggressive mode in the situation
that the IP address of the center device is static and the IP address of client device is dynamic. To
configure the IKE negotiations mode, in the ISAKMP gateway configuration mode, use the fol-
lowing command:
mo de {main | aggressive}
l main – Uses the main mode, and provides ID protection. This is the default mode.
To restore to the default negotiations mode, in the ISAKMP gateway configuration mode, use the
command no mode.
You can configure a custom UDP port for IKE negotiation, and establish the IPSec connection.
To configure a custom IKE negotiation port, in the ISAKMP gateway configuration mode, use
the following command:
ipsec-over-udp port port-number
l port-number – Specifie the UDP port number, the range is 1 to 65535. To avoid port num-
ber conflicts, you are advised to use port numbers ranging from 1024 to 65535.
To cancel the configuration, in the ISAKMP gateway configuration mode, use the command no
ipsec-over-udp.
You can configure a custom port pool for IKE negotiation. When the first packet negotiation over
port 500 or 4500 is failed, the system can use the port in the custom port pool for IKE nego-
tiation and establish an IPSec connection.
l min min_port max max_port- Specifies the minimum port number and maximum port num-
ber of the port range. The value range is 1024 to 65535.
Repeat the above commands to configure multiple port ranges. You can configure up to 120 port
ranges.
To delete the specified port range, in the IKE port pool configuration mode, use the command no
port-range min min_port max max_port.
Notes:
l VPN can use the ports in the custom IKE negotiation port pool for IKE
negotiation after the port pool is bound to the ISAKMP gateway. For how to
bind the custom IKE negotiation port pool, see Binding the Custom IKE
Negotiation Port Pool.
l After configuring the custom IKE negotiation port pool function, it is recom-
mended to configure the DPD (Dead Peer Detection) fuction or the VPN
Track function at the same time. If port 500 or 4500 is disabled, the system
will disconnect the old VPN connection and continue to use port 500 or
4500 to initiate the IKE negotiation. If the first packet negotiation fails, the
system will use the port in the custom port pool for IKE negotiation.
l It is recommended that you configure the custom IKE negociation port func-
tion and the custom IKE negotiation port pool function separately.
VPN can use the ports in the custom IKE negotiation port pool for IKE negotiation after the
port pool is bound to the ISAKMP gateway.
To bind the custom IKE negotiation port pool, in the ISAKMP gateway configuration mode, use
the following command:
bind ike-port-pool
To cancel the binding, in the ISAKMP gateway configuration mode, use the command no bind
ike-port-pool.
You can specify the IP address and address type (static or dynamic) for the peer of the created
ISAKMP gateway. To specify the IP address and the type of the peer, in the ISAKMP gateway
configuration mode, use the following command:
type { dynamic | static }
To restore to the default type, in the ISAKMP gateway configuration mode, use the command no
type.
peer ip-address
To cancel the IP address or the host name, in the ISAKMP gateway configuration mode, use the
command no peer.
To make the ISAKMP gateway accept any peer ID without check, in the ISAKMP gateway con-
figuration mode, use the following command:
accept-all-peer-id
To disable the function, use the command no accept-all-peer-id.
Specifying a P1 Proposal
To specify the P1 proposal for the ISAKMP gateway, in ISAKMP the gateway configuration
mode, use the following command:
isakmp -p ro p o sal p 1-p ro p o sal1 [p 1-p ro p o sal2] [p 1-p ro p o sal3] [p 1-p ro p o sal4]
l p1-proposal1 – Specifies the name of the P1 proposal. You can specify up to four P1 pro-
posals for the ISAKMP gateway.
To cancel the specified P1 proposal, in ISAKMP the gateway configuration mode, use the com-
mand no isakmp-proposal.
If the pre-shared key authentication method is used, you need to specify a pre-shared key. To spe-
cify the pre-shared key for the ISAKMP gateway, in the ISAKMP gateway configuration mode,
use the following command:
pre-share string
If the digital signature authentication mode is used, you need to specify a PKI trust domain for
the digital signature. To specify the PKI trust domain for the ISAKMP gateway, in the ISAKMP
gateway configuration mode, use the following command:
trust-domain string
To cancel the specified PKI trust domain, in the ISAKMP gateway configuration mode, use the
command no trust-domain.
Tip: For more information about how to configure a PKI trust domain, see
“PKI” in the “User Authentication”.
The peer certificate is used for encrypting and authenticating data in the negotiation. The initiator
of VPN connection should import the peer certificate first. The command is supported only in
the GM 1.0 version. To configure the trust domain of peer certificate , in the ISAKMP gateway
configuration mode, use the following command:
remote-trust-domain string
The encryption certificate is used for encrypting data in the negotiation. The command is sup-
ported only in the GM 1.1 version. To configure the trust domain for the encryption certificate,
There are two negotiation protocol standards: IKEv1 and GM standard. By default, IKEv1 is
used in system. To configure the negotiation protocol standard, in the ISAKMP gateway con-
figuration mode, use the following command:
protocol-standard {ikev1 | guomi[v1.0 | v1.1]}
l guomi[v1.0 | v1.1] – Specifies the GM standard as the negotiation protocol standard. If the
version is specified as v1.0 or v1.1, the versions for the devices in the negotiation should be
the same.
Configuring a Local ID
To configure the local ID, in the ISAKMP gateway configuration mode, use the following com-
mand:
lo cal-id {fqdn string | asn 1dn [ string ] | u-fqdn string | key-id string |ip ip-address }
l fqdn string – Specifies the ID type of FQDN. string is the specific content of the ID.
l asn1dn [string] – Specifies the ID type of Asn1dn. This type is only applicable to the case of
using a certificate. string is the specific content of the ID, but this parameter is optional. If
string is not specified, the system will obtain the ID from the certificate.
l key-id string - Specifies the ID that uses the Key ID type. This type is applicable to the
XAUTH function.
l ip ip-address - Specifies the ID type of IP address. string is the specific content of the ID.
To cancel the specified local ID, in the ISAKMP gateway configuration mode, use the command
no local-id.
Configuring a Peer ID
StoneOS supports the ID types of FQDN and Asn1dn. To configure the peer ID, in the
ISAKMP gateway configuration mode, use the following command:
p eer-id {fqdn | asn 1dn | u-fqdn | key-id | ip } string
l fqdn – Specifies the ID type of FQDN. string is the specific content of the ID.
l asn1dn – Specifies the ID type of Asn1dn. This type is only applicable to the case of using a
certificate. string is the specific content of the ID.
l u-fqdn string – Specifies the ID type of U-FQDN, i.e., the email address type, such as user-
[email protected].
l key-id - Specifies the ID using key ID type. The type is only supported for XAUTH function.
To cancel the specified peer ID, in the ISAKMP gateway configuration mode, use the command
no peer-id.
The created ISAKMP gateway can be an initiator, responder, or both the initiator and responder.
To specify the connection type, in the ISAKMP gateway configuration mode, use the following
command:
l bidirectional – Specifies the ISAKMP gateway as both the initiator and responder. This is
the default option.
To restore to the default connection type, in the ISAKMP gateway configuration mode, use the
command no connection-type.
The NAT traversal function must be enabled when there is a NAT device in the IPsec or IKE
tunnel and the device implements NAT. By default, NAT traversal is disabled. To enable NAT
traversal, in the gateway ISAKMP configuration mode, use the following command:
n at-traversal
To disable NAT traversal, in the gateway ISAKMP configuration mode, use the command no nat-
traversal.
For IKEv1 VPN, if the address type for the peer of the created ISAKMP gateway is specified to
be static or dynamic, route entry whose destination IP address is the local ID of the peer and next
hop is tunnel interface will be added to the routing table automatically after you configure auto
routing function and an IPSec SA is created. The auto routing function allows the device to auto-
matically add routing entries from center to branch to avoid complexity of manual routing. When
an IPSec SA is deleted, the corresponding route entry will be deleted from the routing table.
By default the auto routing is disabled. To enable it, in the ISAKMP gateway configuration mode,
use the following command:
generate-route
To disable auto routing, use the command no generate-route.
DPD (Dead Peer Detection) is used to detect the state of the security tunnel peer. After the
DPD function is enabled, the system will periodically send DPD requests to the peer in a spe-
cified time to detect whether the ISAKMP gateway exists. By default, this function is disabled.
To enable DPD, in the ISAKMP gateway configuration mode, use the following command:
dpd
To configure DPD, in the ISAKMP gateway configuration mode, use the following command:
dpd [ interval seconds ] [ retry times ] { on memand | periodic }
l interval seconds – Specifies the interval of sending DPD requests to the peer. The value
range is 1 to 10 seconds. The default value is 10.
l retry times – Specifies the times of sending DPD requests to the peer. The device will keep
sending discovery requests to the peer until it reaches the specified times of DPD retires. If
the device does not receive response from the peer after the retry times, it will determine that
the peer ISAKMP gateway is down. The value range is 1 to 20 times. The default value is 3.
l periodic–Specify the periodic mode for DPD detection. In this mode, the system con-
tinuously sends DPD requests to the peer at a specified interval. If no response packet is
received from the peer within a DPD detection period, the system determines that the peer
does not exist. DPD detection period=DPD Interval * DPD Retries.
l on memand–Specify the on-demand mode for DPD detection. In this mode, the device does
not send DPD requests if it receives no IPSec traffic. If the device receives IPSec traffic and
needs to forward it, the system queries when the last receipt of the peer IPSec traffic happens.
If the interval is shorter than the DPD detection period, it indicates that the peer ISAKMP
gateway exists. In this case, the device does not send DPD detection requests. If the interval
exceeds the DPD detection period, it indicates that the device needs to send DPD requests
to detect the existence of the peer ISAKMP gateway. If the device does not receive the
To resort the settings to the default DPD settings, use the command no dpd.
Specifying Description
To specify description for the ISAKMP Gateway, in the ISAKMP gateway configuration mode,
use the following command:
description string
To delete the description, in the ISAKMP gateway configuration mode, use the command no
description.
The ISAKMP SA and IPSec SA negotiation separation mode is disabled by default. That means
when ISAKM SA times out, if only ISAKMP SA is negotiated and IPSec SA is not, ISAKMP SA
will time out and disconnect after a certain period of time, resulting in IPSec VPN disconnection.
When the ISAKMP SA and IPSec SA negotiation separation mode is enabled, the system allows
negotiation of only ISAKMP SA when it times out. The original IPSec SA will continue to work,
and ISAKMP will not time out because a new IPSec SA is not negotiated.
To enable the ISAKMP SA and IPSec SA negotiation separation mode, in the ISAKMP gateway
configuration mode, use the following command:
phase1-phase2-sa unbind
To disable the ISAKMP SA and IPSec SA negotiation separation mode, in the ISAKMP gateway
configuration mode, use the following command:
phase1-phase2-sa bind
Configuring a P2 Proposal
P2 proposal is used in the Phase 2 SA. The configurations of P2 proposal include encryption
algorithm, hash algorithm, compression algorithm and lifetime.
To create a P2 proposal, i.e., an IPsec security proposal, in the global configuration mode, use the
following command:
ip sec p ro p o sal p2-name
l p2-name – Specifies the name of the P2 proposal that will be created. After executing the
command, the CLI is in the P2 proposal configuration mode. You can configure parameters
for P2 proposal in this mode.
To delete the specified P2 proposal, in the global configuration mode, use the command no ipsec
proposal p2-name.
The protocol types available to P2 proposal include ESP and AH. To specify a protocol type for
P2 proposal, in the P2 proposal configuration mode, use the following command:
p ro to co l {esp | ah }
l ah – Uses AH.
To restore to the default protocol type, in the P2 proposal configuration mode, use the command
no protocol.
You can specify 1 to 4 encryption algorithms for P2 proposal. To specify the encryption algorithm
for P2 proposal, in the P2 proposal configuration mode, use the following command:
encryption { 3des | des | aes | aes-192 | aes-256 | aes-gcm-128 | aes-gcm-192 | aes-
gcm-256 | sm1 | sm4 | null } [ 3des | des | aes | aes-192 | aes-256 | aes-gcm-128 | aes-
gcm-192 | aes-gcm-256 | sm1 | sm4 | null ] [ 3des | des | aes | aes-192 | aes-256 | aes-
gcm-128 | aes-gcm-192 | aes-gcm-256 | sm1 | sm4 | null ]……
l aes – Uses the AES encryption. The key length is 128 bits.
l aes-192 – Uses the 192-bit AES encryption. The key length is 192 bits.
l aes-256 – Uses the 256-bit AES encryption. The key length is 256 bits.
l aes-gcm-128 – Uses the 128-bit AES-GCM encryption. The key length is 128 bits.
l aes-gcm-192 – Uses the 192-bit AES-GCM encryption. The key length is 192 bits.
l aes-gcm-256 – Uses the 256-bit AES-GCM encryption. The key length is 256 bits.
l sm1 – Uses the SM1 block encryption algorithm. The key length is 128 bits.
l sm4 – Uses the SM4 block encryption algorithm. The key length is 128 bits.
l null – No encryption.
To restore to the default encryption algorithm, in the P2 proposal configuration mode, use the
command no encryption.
You can specify 1 to 3 hash algorithms for P2 proposal. To specify the hash algorithm for P2 pro-
posal, in the P2 proposal configuration mode, use the following command:
h ash { md5 | sha | sha256 | sha384 | sha512 | sm3 | null } [ md5 | sha | sha256 |
sha384 | sha512 | sm3 | null ] [ md5 | sha | sha256 | sha384 | sha512 | sm3 | null ]
l md5 – Uses the MD5 hash algorithm. The digest length is 128 bits.
l sha – Uses the SHA-1 hash algorithm. The digest length is 160 bits. This is the default hash
algorithm.
l sha384 – Uses the SHA-384 hash algorithm. The digest length is 384 bits.
l sha512 – Uses the SHA-512 hash algorithm. The digest length is 512 bits.
l sm3 – Uses the SM3 hash algorithm. The digest length is 256 bits.
To restore to the default hash algorithm, in the P2 proposal configuration mode, use the com-
mand no hash.
By default, the P2 proposal does not use any compression algorithm. To specify a compression
algorithm (DEFLATE) for the P2 proposal, in the P2 proposal configuration mode, use the fol-
lowing command:
compression deflate
To cancel the specified compression algorithm, in the P2 proposal configuration mode, use the
command no compression.
Configuring PFS
The PFS (Perfect Forward Security) function is designed to determine how to generate the new
key instead of the time of generating the new key. PFS ensures that no matter what phase it is in,
one key can only be used once, and the element used to generate the key can only be used once.
The element will be discarded after generating a key, and will never be re-used to generate any
other keys. Such a measure will assure that even if a single key is disclosed, the disclosure will
only affect the data that is encrypted by the key, and will not threaten the entire communication.
PFS is based on the DH algorithm. To configure PFS, in the P2 proposal configuration mode, use
the following command:
group { nopfs | 1 | 2 | 5 | 14 | 15 | 16 | 18 | 19 | 20 | 21 | 24 }
l 2 – Selects DH Group2. The key length is 1024 bits(MODP Group).This is the default
value.
l 19 – Select DH Group 19. The key length is 256 bits (ECP Group).
l 20 – Select DH Group 20. The key length is 384 bits (ECP Group).
l 21 – Select DH Group 21. The key length is 521 bits (ECP Group).
l 24 – Select DH Group 24. The key length is 2048 bits (MODP Group with 256-bit Prime
Order Subgroup).
To restore to the default PFS configuration, in the P2 proposal configuration mode, use the com-
mand no group.
Specifying a Lifetime
You can evaluate the lifetime by two standards which are time length and traffic volume. When
the SA lifetime runs out, the SA will get expired and requires a new SA negotiation. To specify
the lifetime for the P2 proposal, in the P2 proposal configuration mode, use the following com-
mands:
lifetime seconds
lifesize kilobytes
l kilobytes – Specifies the lifetime of traffic volume type. The default value is 0.
To cancel the specified lifetime, in the P2 proposal configuration mode, use the following com-
mands:
no lifetime
no lifesize
l Creating a Link
To configure the smart link profile and go to the smart link profile configuration mode, use the fol-
lowing command in the global configuration mode:
ipsec smart-link profile profile-name
l profile-name - Specifies the name of the smart link profile. The value is from 1 to 31 char-
acters. If the specified name already exists, you will go to the configuration mode of this smart
link profile.
In the global configuration mode, use the following command to delete the specified smart link
profile:
no ipsec smart-link profile profile-name
Creating a Link
You can configure both IPv4 and IPv6 addresses for the link to negotiate an IPSec tunnel. But
one smart link profile only supports one IP type (either IPv4 or IPv6). Newly created link will be
added to the end of all links. Use the move link command to adjust link sequence.
To create a link, in the smart link profile configuration mode, use the following command:
link id interface interface-name peer ip-address
l interface-name - Specifies the name of the local interface of the link. This interface should be
configured with IP address.
When an IPSec tunnel is built, the system will send detection packets based on the configured
link detection parameters.
To configure the link detection parameters, in the smart link profile configuration mode, use the
following command:
link-track [source source-ipv4-address destination destination-ip-address] [interval interval-
value] [count count-value]
l source source-ip-address - Specifies the source IP address of the detection packets. Both
IPv4 and IPv6 addresses are supported. If this parameter is not specified, the IP address of
the IPSec tunnel's local interface is used as the source IP address of the detection packets.
l interval interval-value - Specifies the interval to send detection packets. The value range is
from 1 to 5 seconds. The default value is 3 seconds.
l count count-value - Specifies the total number of detection packets sent in a detection
period. The value range is from 1 to 30. The default value is 10.
To restore to the default link detection parameters, in the smart link profile configuration mode,
use the no link-track command.
After a detection period, the system calculates the link's latency and packet loss rate, and com-
pares the value to the threshold. The system will switch the current link to the next one if either
parameter exceeds its threshold.
To configure the threshold of link quality parameters, in the smart link profile configuration
mode, use the following command:
link-track-threshold { [delay delay-value] [loss-rate loss-rate] }
l delay delay-value - Specifies the latency threshold of the link The value range is from 100 to
3000 milliseconds. The default value is 500.
l loss-rate loss-rate - Specifies the threshold of the loss rate of the link. The value range is from
1 to 100 percent. The default value is 30.
To delete configured threshold of the link quality parameters, in the smart link profile con-
figuration mode, use the no link-track-threshold command.
When all links are switched in turn, it is called a switch cycle. If the cycle switching times exceed
the threshold, the system will no longer detect and switch links and will switch the current link to
the one with the best quality.
To configure the threshold of cycle switching times, in the smart link profile configuration mode,
use the following command:
link-switch-cycles cycle-value
l cycle-value - Specifies the threshold for the cycle switching times. The value range is from 0
to 5. The default value is 5. The value 0 indicates that there is no limit to the cycle switching
times.
In the smart link profile configuration mode, use the no link-switch-cycles command to restore to
the default cycle switching times.
To activate the specified link for immediate IPSec tunnel negotiation, in smart link profile con-
figuration mode, use the following command:
active link id
Newly created link will be added to the end of all links. To adjust the sequence of the links, in
smart link profile configuration mode, use the following command:
move link id {after | before id}
l after | before id - Specifies ID of the link before or after which the specified link is placed
after the sequence adjustment.
If the cycle switching times exceed the threshold, the system will no longer detect and switch
links. The default silence period is 600 seconds. When the silence period expires, the system
starts to detect the quality of active links again.
l value - Specifies the silence period. The value range is from 600 to 1800 seconds. The default
value is 600.
Configuring a Tunnel
When configuring an IPSec tunnel through IKE, you need to configure the following options: the
protocol type, ISAKMP gateway, IKE security proposal, ID, DF-bit and anti-replay.
To create an IKE tunnel, in the global configuration mode, use the following command:
tunnel ipsec tunnel-name auto
l tunnel-name - Specifies the name of the IKE tunnel that will be created.
After executing the above command, the CLI will enter the IKE tunnel configuration mode. All
the parameters of the IKE tunnel need to be configured in the IKE tunnel configuration mode.
To delete the specified IKE tunnel, in the global configuration mode, use the command no tunnel
ipsec tunnel-name auto.
The function is enabled by default. To enable or disable an IKE tunnel, in the IKE tunnel con-
figuration mode, use the following command:
To specify the encapsulation mode of IPsec protocol for the IKE tunnel (either transport mode
or tunnel mode), in the IKE tunnel configuration mode, use the following command:
mode { transport | tunnel }
l tunnel – Specifies the encapsulation mode of IPsec as tunnel. This is the default mode.
To restore to the default mode, in the IKE tunnel configuration mode, use the command no
mode.
To specify an ISAKMP gateway for the IKE tunnel, in the IKE tunnel configuration mode, use
the following command:
isakmp-peer peer-name
To cancel the specified ISAKMP gateway, in the IKE tunnel configuration mode, use the com-
mand no isakmp-peer.
To specify a smart link profile for the IKE tunnel, in the IKE tunnel configuration mode, use the
following command:
smart-link-profile profile-name
To cancel the specified smart link profile, use the no smart-link-profile command.
To specify a P2 proposal for the IKE tunnel, in the IKE tunnel configuration mode, use the fol-
lowing command:
ipsec-proposal p2-name
To cancel the specified P2 proposal for the IKE tunnel, in the IKE tunnel configuration mode,
use the command no ipsec-proposal.
Specifying a Phase 2 ID
Users need to specify the IKE phase 2 ID to distribute and limit IPSec VPN traffic. Phase 2 ID
consists of a local network segment, a remote network segment, and the service. During the con-
figuration, you need to configure phase 2 IDS on the local and remote devices. Then, the local
and remote devices negotiate to create an IKE IPSec tunnel. You can specify one or more phase 2
IDs to create one or more IKE IPSec tunnels. The system distributes and limits tunnel traffic
according to the phase 2 ID of each tunnel.
If you do not need to distribute or limit IPSec VPN traffic, you do not need to configure this para-
meter. For details about how to enable IPSec VPN traffic distribution and Limitation function,
see Configuring IPsec VPN Traffic Distribution and Limitation.
To specify a Phase 2 ID for the IKE tunnel, in the IKE tunnel configuration mode, use the fol-
lowing command:
id {auto | local ip-address/mask remote ip-address/mask service service-name}
l auto – Automatically assigns the Phase 2 ID. This is the default option.
l local ip-address/mask – Specifies the IP/ mask of the local network segment in phase 2.
l remote ip-address/mask – Specifies the IP/ mask of the remote network segment(peer
device) in phase 2.
l service service-name – Specifies the service or protocol name of the traffic that can be trans-
mitted by IKE IPSec tunnels in phase 2.
Notes: By default, the Phase 2 IDs of the local and peer device need to be con-
figured accordingly. If the IDs configured on the two device cannot match, the
negotiation will fail. In this case, if you enable the Accepting All Proxy ID function
on the responder's device, the negotiation succeeds. For details about how to
enable Accepting All Proxy ID function, see Accepting All Proxy ID
This function is disabled by default. Before configuring, ensure that the phase 2 ID has been con-
figured and phase 2 negotiations has been successful. After this function is enabled, the device fil-
ters the inbound and outbound traffic of the IKE tunnel according to phase 2 ID and then
distributes and limits the inbound and outbound traffic. Traffic that does not match phase 2 IDs
is discarded. Details are as follows:
l Limitation:Based on the configuration of Phase 2 IDs, the traffic limitation function can
limit the traffic at the IKE tunnel egress interface when the traffic flows out of the IKE tun-
nel. After the traffic was de-encapsulated, StoneOS checks the elements of source IP
address, destination IP address, and the type of the traffic to see whether this kind of traffic
matches a certain Phase 2 ID or not. If matched, the traffic will be dealt with. If not
matched, the traffic will be dropped.
To enable the traffic distribution and limitation, use the following command in the IKE tunnel
configuration mode:
check-id
This function needs to be configured on the responder device of IKE tunnel negotiation. After it
is enabled, the responder device will accept the second-phase ID configured by the peer (nego-
tiation initiator) and set its phase 2 ID according to the peer. In this way, the two ends of the IKE
tunnel can successfully negotiate. This function is often used in scenarios where the responder
device cannot perceive or is not interested in the initiator's Phase 2 ID. To enable the accepting
all proxy ID function, in the IKE tunnel configuration mode, use the following command:
accept-all-proxy-id
To disable the function, in the IKE tunnel configuration mode, use the following command:
no accept-all-proxy-id
Notes: When multiple Phase 2 IDs are configured on the responder device (that is,
multiple IKE tunnels are configured), you need to disable this function. Otherwise,
only one tunnel can be negotiated.
Configuring Auto-connection
The device will be triggered to establish SA in two modes: auto and traffic intrigued.
l In the auto mode, the device detects the SA status every 60 seconds and initiates negotiation
request when SA is not established;
l In the traffic intrigued mode, the tunnel sends negotiation requests only when there is traffic
passing through the tunnel.
By default, the traffic intrigued mode is used. To use the auto mode, in the IKE tunnel con-
figuration mode, use the following command:
auto-connect
To restore to the default mode, in the IKE tunnel configuration mode, use the command no auto-
connect.
Configuring DF-bit
You can specify whether to allow the forwarding device to fragment the packets. To configure
DF-bit for the IKE tunnel, in the IKE tunnel configuration mode, use the following command:
df-b it {co p y | clear | set}
l copy – Copies the IP packet DF options from the sender directly. This is the default value.
To restore to the default value, in the IKE tunnel configuration mode, use the command no df-
bit.
Configuring Anti-replay
Anti-replay is used to prevent hackers from attacking the device by resending the sniffed packets,
i.e., the receiver rejects the obsolete or repeated packets. By default, this function is disabled. To
configure anti-replay for the IKE IPsec tunnel, in the IKE IPsec tunnel configuration mode, use
the following command:
anti-replay {32 | 64 | 128 | 256 | 512}
Hillstone devices can monitor the connectivity status of the specified VPN tunnel, and also allow
backup or load sharing between two or more VPN tunnels. This function is applicable to both the
route-based VPN and policy-based VPN. The practical implementation environments include:
l Configuring a backup VPN tunnel for the remote peer, at any time only one tunnel is act-
ive. Initially, the main VPN tunnel is active, if disconnection of the main tunnel is detec-
ted, the device will re-transmit the information flow through the backup tunnel;
l Configuring two or more VPN tunnels for the remote peer. All tunnels are active sim-
ultaneously, and load balance the traffic via equal-cost multi-path routing (ECMP). If dis-
connection of any tunnel is detected, the device will re-transmit the information flow
through other tunnels.
The VPN track function tracks the status of the target tunnel by Ping packets. By default, the
function is disabled. To configure the VPN track function, in IKE IPsec tunnel configuration
mode, use the following command:
vp n -track [ A.B.C.D ] [src-ip A.B.C.D ] [in terval time-value ] [th resh o ld value ]
l A.B.C.D – Specifies the IP address of the tracked object. When the peer is a Hillstone
device and the parameter is not specified, the system will use the IP address of the peer by
default. This IP address can not be 0.0.0.0 or 255.255.255.255.
l src-ip A.B.C.D – Specifies the source IP address that sends Ping packets. When the peer
device is a Hillstone device and the parameter is not specified, the system will use the IP
address of egress interface by default. This IP address cannot be 0.0.0.0 or 255.255.255.255.
l interval time-value – Specifies the interval of sending Ping packets. The value range is 1 to
255 seconds. The default value is 10.
To disable the VPN track function, in IKE IPsec tunnel configuration mode, use the command
no vpn-track.
The VPN track function can be in active or dead status. To view the VPN track status and con-
figuration information via CLI, use the following commands:
l Show the configuration of VPN track:show tunnel ipsec {manual | auto} {tunnel-name}
For example:
ID: 1
scpu: 0
VPN Name: vpn1
L2tp port: 1
Duration(S): 1375459
Last setup time: 2022-03-08 22:09:53
Last teardown time: 2022-03-09 06:09:54
Tear down reason: a lifetime timeout occurred
Teardowns today: 0
Outbound
Gateway: 1.1.1.2
......
Sending rate(KB/s): 0
Status: Active
Inbound
Gateway: 1.1.1.2
......
Receiving rate(KB/s): 0
Status: Active
VPN track status: alive
Name: vpn1
mode: tunnel
......
vpn-track: enable
tracknotify: enable
1228 Chapter 9 VPN
vpntrack destination 1.1.1.1
By default, the notification of VPN tunnel status is disabled. When the notification is enabled, for
route-based VPN, when system detects disconnection of a VPN tunnel, it will inform the routing
module about the information of the disconnected VPN tunnel and update the tunnel route
information; for policy-based VPN, when system detects disconnection of a VPN tunnel, it will
inform the policy module about the information of the disconnected VPN tunnel and update the
tunnel policy information. You can enable/disable the tunnel state notification function via CLI,
so that the system will not send any tunnel track failure notification. To enable or disable the tun-
nel state notification function, in the IKE IPsec tunnel configuration mode, use the following
command:
l Enable: tunnel-state-notify
l Disable: no tunnel-state-notify
You can set a commit bit to avoid packet loss and time difference. However, the commit bit may
slow down the responding speed. To set a commit bit, in the IKE IPsec tunnel configuration
mode, use the following command:
Responder sets a commit bit:responder-set-commit
Responder does not set a commit bit:no responder-set-commit
Specifying Description
To specify the description of IKE tunnel, in the IKE IPsec tunnel configuration mode, use the
following command:
description string
To delete the description, in the IKE IPsec tunnel configuration mode, use the command no
description.
IKEv2 VPN
l Configuring a P1 proposal
l Configuring a P2 proposal
l Configuring a tunnel
Configuring a P1 Proposal
P1 proposal is the IKEv2 security proposal that is used to store the security parameters during the
IKE_SA_INIT exchange, including the encryption algorithm, hash algorithm, PRF (pseudo-ran-
dom function) algorithm, and DH algorithm. A complete IKEv2 security proposal at least
includes a set of parameters, including a encryption algorithm, a authentication method, a PRF
algorithm, and a DH group.
Creating a P1 Proposal
To create a P1 proposal, i.e., an IKEv2 security proposal, in the global configuration mode, use
the following command:
ikev2 proposal p1-name
l p1-name – Specifies the name of the P1 proposal that will be created. After executing the
command, the CLI will enter the P1 proposal configuration mode. You can configure para-
meters for P1 proposal in this mode.
StoneOS support the following hash algorithms: MD5, SHA-1, and SHA-2. SHA-2 includes
SHA-256, SHA-384, and SHA-512. You can specify up to four hash algorithms. To specify the
hash algorithm, in the P1 proposal configuration mode, use the following command:
h ash {md5 | sh a | sh a256 | sh a384 | sh a512}
l md5 – Uses the MD5 hash algorithm. The digest length is 128 bits.
l sha – Uses the SHA-1 hash algorithm. The digest length is 160 bits. This is the default hash
algorithm.
l sha256 – Uses the SHA-256 hash algorithm. The digest length is 256 bits.
l sha384 – Uses the SHA-384 hash algorithm. The digest length is 384 bits.
l sha512 – Uses the SHA-512 hash algorithm. The digest length is 512 bits.
To restore to the default hash algorithm, in the P1 proposal configuration mode, use the com-
mand no hash.
StoneOS support the following PRF algorithms: MD5, SHA-1, and SHA-2. SHA-2 includes
SHA-256, SHA-384, and SHA-512. You can specify up to four PRF algorithms. To specify the
PRF algorithm, in the P1 proposal configuration mode, use the following command:
p rf {md5 | sh a | sh a256 | sh a384 | sh a512}
l md5 – Uses the MD5 algorithm. The digest length is 128 bits.
l sha – Uses the SHA-1 algorithm. The digest length is 160 bits. This is the default hash
algorithm.
l sha256 – Uses the SHA-256 algorithm. The digest length is 256 bits.
l sha512 – Uses the SHA-512 algorithm. The digest length is 512 bits.
To restore to the default algorithm, in the P1 proposal configuration mode, use the command no
prf.
StoneOS provides the following five encryption algorithms: 3DES, DES, 128bit AES, 192-bit
AES and 256-bit AES. You can specify up to four algorithms. To specify the encryption algorithm
of IKEv2 security proposal, in the P1 proposal configuration mode, use the following command:
en cryp tio n {3des | aes | aes-192 | aes-256}
l 3des – Uses the 3DES encryption. The key length is 192 bits. This is the default algorithm
for StoneOS.
l aes – Uses the AES encryption. The key length is 128 bits.
l aes-192 – Uses the 192-bit AES encryption. The key length is 192 bits.
l aes-256 – Uses the 256-bit AES encryption. The key length is 256 bits.
To restore to the default encryption algorithm, in the P1 proposal configuration mode, use the
command no encryption.
Selecting a DH Group
Diffie-Hellman (DH) is designed to establish a shared secret key. DH group determines the
length of the element generating keys for DH exchange. The strength of keys is partially decided
by the robustness of the DH group. To select a DH group, in the P1 proposal configuration
mode, use the following command:
gro up {1 | 2 | 5 | 14 | 15 |16}
l 2 – Selects DH Group2. The key length is 1024 bits.This is the default value.
To restore the DH group to the default, in the P1 proposal configuration mode, use the command
no group.
The lifetime of IKEv2 SA does not need negotiation and it is determined by individual settings.
The side with a less lifetime will re-negotiate and this can avoid that both sides start the nego-
tiation at the same time. To specify the lifetime of IKEv2 SA for the local side, in the P1 pro-
posal configuration mode, use the following command:
lifetime time-value
l time-value – Specifies the lifetime of IKEv2 SA. The value range is 180 to 86400 seconds.
The default value is 28800.
To restore to the default lifetime, in the P1 proposal configuration mode, use the command no
lifetime.
After creating an IKEv2 peer, you can configure the IKE negotiation mode, IP address of the
IKEv2 peer, IKE security proposal, local ID, etc.
To create an IKEv2 peer, in the global configuration mode, use the following command:
ikev2 peer peer-name
After executing the command, the CLI will enter the IKEv2 peer configuration mode. You can
configure parameters for the IKEv2 in this mode.
To delete the specified IKEv2 peer, in the global configuration mode, use the command no ikev2
peer peer-name.
To bind an interface to the IKEv2 peer, in the IKEv2 pper configuration mode, use the following
command:
interface interface-name
To cancel the binding, in the IKEv2 peer configuration mode, use the command no interface.
You can specify the remote IP address for the IKEv2 peer. To specify the remote IP address, in
the IKEv2 peer configuration mode, use the following command:
match-peer ip-address
To cancel the IP address setting, in the IKEv2 peer configuration mode, use the command no
match-peer.
StoneOS supports the pre-shared key authentication and this is the default authentication method.
To specify the authentication method as pre-shared key, use the following command:
auth psk
To specify the P1 proposal for the IKEv2 peer, in IKEv2 peer configuration mode, use the fol-
lowing command:
ikev2-proposal p1-name
To cancel the specified P1 proposal, in IKEv2 peer configuration mode, use the command no
ikev2-proposal p1-name.
Configuring a Local ID
To configure the local ID, in the IKEv2 peer configuration mode, use the following command:
lo cal-id {fqdn string | key-id string |ip ip-address }
l fqdn string – Specifies the ID type of FQDN. string is the specific content of the ID.
l key-id string - Specifies the ID type of Key ID. string is the specific content of the ID.
l ip ip-address - Specifies the ID type of IP address. ip-address is the specific content of the
ID.
To cancel the specified local ID, in the IKEv2 peer configuration mode, use the command no
local-id.
The created IKEv2 peer can be an initiator, responder, or both the initiator and responder. To spe-
cify the connection type, in the IKEv2 peer configuration mode, use the following command:
co n n ectio n -typ e {b idirectio n al | in itiato r-o n ly | resp o n der-o n ly}
l bidirectional – Specifies the IKEv2 peer as both the initiator and responder. This is the
default option.
To restore to the default connection type, in the IKEv2 peer configuration mode, use the com-
mand no connection-type.
For IKEv2 VPN, when the auto routing is enabled, once an IPSec SA is created, a route entry
whose destination IP address is the destination segment of the secured data traffic and the next
hop is the tunnel interface would be added to the routing table automatically. When an IPSec SA
is deleted, the corresponding route entry will be deleted from the routing table.
By default, the auto routing function is disabled. To enable the function, in the IKEv2 peer con-
figuration mode, use the following command:
gen erate-ro ute
An IKEv2 profile can store the IKEv2 SA parameters that are not required negotiation, for
example, the peer identity, the pre-shared key, and the information of the secured data traffic. You
need to configure an IKEv2 profile at both responder side and the initiator side. To create an
IKEv2 profile, in the IKEv2 peer configuration mode, use the following command:
ikev2-profile profile-name
After executing this command, the CLI will enter the IKEv2 profile configuration mode. You can
configure the IKEv2 SA parameters that are not required negotiation in this mode.
In the IKEv2 peer configuration mode, use the no ikev2-profile profile-namecommand to delete
the specified profile.
To configure the remote ID, in the IKEv2 profile configuration mode, use the following com-
mand:
remo te id {fqdn string | key-id string |ip ip-address }
l fqdn string – Specifies the ID type of FQDN. string is the specific content of the ID.
l key-id string - Specifies the ID type of Key ID. string is the specific content of the ID.
l ip ip-address - Specifies the ID type of IP address. ip-address is the specific content of the
ID.
To cancel the specified remote ID, in the IKEv2 profile configuration mode, use the command
no remote id.
If the pre-shared key authentication method is used, you need to specify a pre-shared key. To spe-
cify the pre-shared key, in the IKEv2 profile configuration mode, use the following command:
remote key key-value
To cancel the specified pre-shared key, in the IKEv2 profile configuration mode, use the com-
mand no remote key.
One or more data traffic which are in the IPSec tunnel can be secured by IKEv2. In some situ-
ations, the source and destination addresses of the data traffic encrypted by IPSec tunnel may be
in the different segments. Therefore, you can use the following command to configure one or
more secured data traffic in the IKEv2 Profile. At present, at most 16 secured data traffic can be
configured in an IKEv2 Profile.
To create the secured data traffic, in the IKEv2 profile configuration mode, use the following
command:
When the command is executed, CLI enters the secured data traffic mode, and then you can con-
figure the parameters of the secured data traffic, such as local address and remote address.
Use the command no traffic-selectortraffic-selector-name to delete the configured secured data
traffic.
Configuring the Local Address
To configure the local address of the secured data traffic, in the secured data traffic configuration
mode, use the following commands:
localA.B.C.D/Mask
l A.B.C.D/Mask – Specify the local address and mask of the secured data traffic.
l A.B.C.D/Mask – Specify the remote address and mask of the secured data traffic.
Configuring a P2 Proposal
P2 proposal is the IPSec security proposal that is used to store the security parameters using by
IPSec, including the security protocol, encryption algorithm, hash algorithm. The configurations
of P2 proposal include protocol type, encryption algorithm, hash algorithm and lifetime.
To create a P2 proposal, i.e., an IPSec security proposal, in the global configuration mode, use the
following command:
ikev2 ipsec-proposal p2-name
To delete the specified P2 proposal, in the global configuration mode, use the command no ikev2
ipsec-proposal p2-name.
The protocol type available to P2 proposal is ESP. To specify a protocol type for P2 proposal, in
the P2 proposal configuration mode, use the following command:
protocol esp
You can specify 1 to 4 hash algorithms for P2 proposal. To specify the hash algorithm for P2 pro-
posal, in the P2 proposal configuration mode, use the following command:
h ash {md5 | sh a | sh a256 | sh a384 | sh a512 }
l md5 – Uses the MD5 hash algorithm. The digest length is 128 bits.
l sha – Uses the SHA-1 hash algorithm. The digest length is 160 bits. This is the default hash
algorithm.
l sha256 – Uses the SHA-256 hash algorithm. The digest length is 256 bits.
l sha384 – Uses the SHA-384 hash algorithm. The digest length is 384 bits.
l sha512 – Uses the SHA-512 hash algorithm. The digest length is 512 bits.
To restore to the default hash algorithm, in the P2 proposal configuration mode, use the com-
mand no hash.
You can specify 1 to 4 encryption algorithms for P2 proposal. To specify the encryption algorithm
for P2 proposal, in the P2 proposal configuration mode, use the following command:
en cryp tio n {3des| des | aes-192 | aes-256 }
l 3des – Uses the 3DES encryption. The key length is 192-bit. This is the default method for
StoneOS.
l aes – Uses the AES encryption. The key length is 128 bits.
l aes-192 – Uses the 192-bit AES encryption. The key length is 192 bits.
l aes-256 – Uses the 256-bit AES encryption. The key length is 256 bits.
To restore to the default encryption algorithm, in the P2 proposal configuration mode, use the
command no encryption.
Configuring PFS
The PFS (Perfect Forward Security) function is designed to determine how to generate the new
key instead of the time of generating the new key. PFS ensures that no matter what phase it is in,
one key can only be used once, and the element used to generate the key can only be used once.
The element will be discarded after generating a key, and will never be re-used to generate any
other keys. Such a measure will assure that even if a single key is disclosed, the disclosure will
only affect the data that is encrypted by the key, and will not threaten the entire communication.
PFS is based on the DH algorithm. To configure PFS, in the P2 proposal configuration mode, use
the following command:
gro up {n o p fs | 1 | 2 | 5 | 14 | 15 |16}
l 2 – Selects DH Group2. The key length is 1024 bits.This is the default value.
To restore to the default PFS configuration, in the P2 proposal configuration mode, use the com-
mand no group.
Specifying a Lifetime
You can evaluate the lifetime by the time length. When the IPSec SA lifetime runs out, the SA
will get expired and requires a new SA negotiation. To specify the lifetime for the P2 proposal, in
the P2 proposal configuration mode, use the following commands:
lifetime seconds
l seconds – Specifies the lifetime of time length type. The value range is 180 to 86400
seconds. The default value is 28800.
lifesize kilobytes
l kilobytes – Specifies the lifetime of traffic volume type. The value range is 1800 to 4194303
KB. The default value is 1800.
To cancel the specified lifetime, in the P2 proposal configuration mode, use the following com-
mands no lifetime.
Configuring a Tunnel
When configuring an IPSec tunnel through IKEv2, you need to configure the following options:
the operation mode, IKEv2 peer, IKEv2 security proposal, and auto-connection.
To create an IKEv2 tunnel, in the global configuration mode, use the following command:
tunnel ipsec tunnel-name ikev2
After executing the above command, the CLI will enter the IKEv2 tunnel configuration mode.
All the parameters of the IKEv2 tunnel need to be configured in the IKEv2 tunnel configuration
mode.
To delete the specified IKEv2 tunnel, in the global configuration mode, use the command no tun-
nel ipsec tunnel-name ikev2.
The system supports the operation mode of IPsec protocol as transport. This is the default mode.
To specify an IKEv2 peer for the IKEv2 tunnel, in the IKEv2 tunnel configuration mode, use
the following command:
ikev2-peer peer-name
To cancel the specified IKEv2 peer, in the IKEv2 tunnel configuration mode, use the command
no ikev2-peer.
Specifying a P2 Proposal
To specify a P2 proposal for the IKEv2 tunnel, in the IKEv2 tunnel configuration mode, use the
following command:
ipsec-proposal p2-name1 [ p2-name2 ] [ p2-name3 ]
l p2-name – Specifies the name of the P2 proposal. You can specify up to 3 P2 proposals.
To cancel the specified P2 proposal for the IKEv2 tunnel, in the IKEv2 tunnel configuration
mode, use the command no ipsec-proposal.
The device supports the SA establishment by using the auto-connection mode. In the auto mode,
the device detects the SA status every 60 seconds and initiates negotiation request when SA is
not established. To use the auto mode, in the IKEv2 tunnel configuration mode, use the fol-
lowing command:
auto-connect
To restore to the default mode, in the IKE tunnel configuration mode, use the command no
auto-connect.
Notes: Auto connection works only when the local device is acting as the initiator.
XAUTH
XAUTH, an extension and enhancement to IKE, allows a device to authenticate users who are try-
ing to gain access to IPsec VPN network combined with the authentication server (RADIUS and
local AAA server) configured on the device. XAUTH is now widely used on mobile devices.
When a remote user initiates a request for VPN connection, the XAUTH server on the device
will interrupt the VPN negotiation and prompt the user to type a valid username and password. If
succeeded, the XAUTH server will go on with the subsequent VPN negotiation procedure and
assign IP addresses for legal clients, otherwise it will drop the VPN connection.
If an AXUTH address pool is configured, when a client successfully connects to its server, the
server will go on with the VPN negotiation procedure, take an IP address from the address pool,
and assign the IP address for the legal client. If the XAUTH address pool is not configured, after
the auto routing function is enabled, the device can automatically generate VPN route entries
based on the configured Phase 2 ID of the IKE IPsec tunnel. For more information about the
auto routing, see "VPN > IPsec Protocol > Configuring an IPsec VPN > IKEv1 VPN > Con-
figuring a Tunnel > Configuring Auto Routing". For more information about the phase 2 ID, see
"VPN > IPsec Protocol > Configuring an IPsec VPN > IKEv1 VPN > Configuring a Tunnel >
Specifying a Phase 2 ID".
XAUTH server is disabled by default. To enable the XAUTH server, in the ISAKMP con-
figuration mode, use the following command:
xauth server
To disable the XAUTH server, in the ISAKMP configuration mode, use the following command:
no xauth server
This parameter is optional. XAUTH address pool is used to store IP addresses allocated to clients.
When a client connects to its server, the server will take an IP address from the address pool
according to the client propriety (like DNS server address or WIN server address) and give it to
the client.
To configure an XAUTH address pool, in the global configuration mode, use the following com-
mand:
xauth pool pool-name
To delete the specified XAUTH address pool, in the global configuration mode, use the following
command:
no xauth pool pool-name
This parameter is optional. To configure the allocatable IP range of an XAUTH address pool, in
the XAUTH address pool configuration mode, use the following command:
address start-ip end-ip netmask mask
To delete the specified IP range of an address pool, in the XAUTH address pool configuration
mode, use the following command:
no address
This parameter is optional. Some addresses in the address pool need to be reserved for other
devices. These reserved IP addresses are not allowed to allocate to XAUTH clients.
To configure the start IP and end IP of reserved IP range, in the XAUTH address pool con-
figuration mode, use the following command:
exclude-address start-ip end-ip
To delete the reserved address range, in the XAUTH address pool configuration mode, use the fol-
lowing command:
no exclude-address
This parameter is optional. The XAUTH address pool will not take effect until being bound to an
XAUTH server. To bind the specified XAUTH address pool to the XAUTH server, in the
ISAKMP configuration mode, use the following command:
xauth pool-name pool-name
To cancel the binding, in the ISAKMP configuration mode, use the following command:
no xauth pool-name
This parameter is optional. If an XAUTH client needs static IP address, IP-user binding rule can
be applied to meet this requirement. Binding the user of XAUTH client to an IP address in the
address pool can guarantee that this IP address is allocated to the XAUTH client when it reaches
the server. In addition, IP address for an XAUTH client can be defined to an address range by
using IP-role binding which defines an IP range for this role. When a client with the role connects
to the server, it gets one address from the IP addresses bound to this role.
When an XAUTH server allocates IP addresses, it follows the rules below:
1. If the client which needs a static IP has had its IP-user binding configured, the server alloc-
ates the bound IP to it. Note that if such a bound IP address is in use, the client applying
for the address is not allowed to log into the server.
2. If a client uses IP-role binding rule, the server takes an IP address from the bound IP range
and allocates it to the client. Otherwise, the server takes an IP address from the unbound IP
range and allocates it to the client. If IP addresses in the IP range is not available, the user
cannot log into the server.
Notes: IP addresses in the IP-user binding rules and those in the IP-role binding
rules should not conflict with each other.
l ip ip-address - Specifies an available IP address in the address pool which will be bound to the
user.
To cancel an IP-user binding, in the XAUTH address pool configuration mode, use the following
command:
no ip-binding user user-name
To bind an IP address to a role, in the XAUTH address pool configuration mode, use the fol-
lowing command:
ip-binding role role-name ip-range start-ip end-ip
l ip-range start-ip end-ip - Specifies the available IP range (start IP address and end IP address)
in the address pool.
To cancel a binding between an IP range and a role, in the XAUTH address pool configuration
mode, use the following command:
no ip-binding role role-name
This parameter is optional. Normally, if a user belongs to multiple roles which bind to different IP
addresses, the system searches for the first rule which matches the user and applies the IP address
under this rule to the user. By default, new rule is at the bottom of the rule list.
To move the position of an IP-role binding rule in the rule list, in the XAUTH address pool con-
figuration mode, use the following command:
move role-name1 {b efo re role-name2 | after role-name2 | to p | b o tto m}
l before role-name2 – Moves the binding rule before the IP-role binding specified here.
l after role-name2 – Moves the binding rule after the IP-role binding specified here.
l top – Moves the binding rule to the top of the IP-role binding rule list.
l bottom – Moves the binding rule to the bottom of the IP-role binding rule list.
This parameter is optional. To specify a DNS server, in the XAUTH address pool configuration
mode, use the following command:
dns address1 [ address2 ]
l address1 - Specifies the IP address of DNS servers. You can specify up to two addresses.
To cancel the DNS setting, in the XAUTH address pool configuration mode, use the following
command:
no dns
This parameter is optional. To specify a WINS server, in the XAUTH address pool configuration
mode, use the following command:
win s address1 [ address2 ]
l address1 - Specifies the IP address of WINS servers. You can specify up to two addresses.
To cancel the WINS setting, in the XAUTH address pool configuration mode, use the following
command:
no wins
The XAUTH server can force to disconnect with a client. To kick out an XAUTH client, in the
execution mode, use the following command:
exec xauth isakmp-peer-name kickout user-name
To configure the tunnel resource quota for non-root VSYS, use the following command in the
VSYS Profile configuration mode:
tunnel-ipsec max max-num reserve reserve-num
Notes: "Max" indicates the maximum number of IPSec VPN supported by the
device. To view the maximum quota , use the following command in the global con-
figuration mode: show capacity all
To delete the quota, use the following command in the VSYS Profile configuration mode:
notunnel-ipsec max max-num reserve reserve-num
To view the configuration information of IPsec, in any mode, use the following commands:
Show the configuration information of IKEv1 P1 proposal: show isakmp proposal [p1-name]
Show the configuration information of IKEv2 P1 proposal: show ikev2 proposal [p1-name]
Show the configuration information of IKEv1 ISAKMP gateway: show isakmp peer [peer-name]
Show the configuration information of IKEv2 peer: show ikev2 peer [peer-name]
Show the configuration information of IKEv2 profile: show ikev2 peer [peer-name] profile [pro-
file-name]
l peer_ip - Shows the information of IKEv1 P1 SA with the specified peer IP address.
l worker-id - Shows the information of IKEv1 P1 SA with the specified VPN processor.
l id | active | inactive - Shows the P2 SA information of IKEv1 with the specified phase 2 ID
(id), or shows the P2 SA information of the active IKEv1 (active), or shows the P2 SA
information of the inactive IKEv1 (inactive).
l workerworker-id - Shows the information of IKEv1 P2 SA with the specified VPN processor.
l isakmp-peer-name - Shows the statistic information of the VPN processor with the specified
ISAKMP gateway name.
l "Example of Configuring Route-based VPN Track and Redundant Backup" on Page 1264
l "Example of Configuring Policy-based VPN Track and Redundant Backup" on Page 1272
The manual key VPN tunnel requires that all the related SA configurations need to be completed
manually. See the example below:
Requirement
There is a tunnel between Hillstone Device A and B. PC1 is a host behind Device A, with the IP
address 188.1.1.2 and gateway 188.1.1.1; Server1 is the server behind Device B, with IP address
10.110.8.210 and gateway 10.110.88.220. The goal of this configuration example is to protect the
communication between the subnet of PC1 (188.1.1.0/24) and the subnet of Server1
(10.110.88.0/24), using the method of route-based VPN. Use ESP as the security protocol,
3DES as encryption algorithm, SHA1 as hash algorithm and DEFLATE as compression algorithm.
The network topology is shown in the following figure.
Configuration Steps
Device A
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
Device B
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
Device A
hostname(config-vrouter)# exit
Device B
hostname(config)# ip vro uter trust-vr
hostname(config-vrouter)# exit
Device A
hostname(config-tunnel-ipsec-manual)# p ro to co l esp
hostname(config-tunnel-ipsec-manual)# exit
Device B
hostname(config)# tun n el ip sec vp n 1 man ual
hostname(config-tunnel-ipsec-manual)# p ro to co l esp
hostname(config-tunnel-ipsec-manual)# h ash sh a
hostname(config-tunnel-ipsec-manual)# exit
Device A
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Device B
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Requirement
There is a tunnel between Hillstone Device A and B. PC1 is a host behind Device A, with the IP
address 10.1.1.1 and gateway 10.1.1.2; Server1 is the server behind Device B, with IP address
192.168.1.1 and gateway 192.168.1.2. The goal of this configuration example is to protect the
communication between the subnet of PC1 (10.1.1.0/24) and the subnet of Server1
(192.168.1.0/24), using the method of route-based VPN. Use ESP as the security protocol,
3DES as the encryption algorithm, SHA1 as the hash algorithm and DEFLATE as compression
algorithm.
Configuration Steps
Device A
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-tun1)# zo n e trust
hostname(config-if-tun1)# exit
Device B
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-tun1)# zo n e trust
hostname(config-if-tun1)# exit
Device A
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Device B
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Device A
hostname(config-vrouter)# exit
Device B
hostname(config-vrouter)# exit
Device A
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# h ash sh a
hostname(config-isakmp-proposal)# exit
Device B
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# h ash sh a
hostname(config-isakmp-proposal)# exit
Device A
hostname(config-isakmp-peer)# exit
Device B
Device A
hostname(config-ipsec-proposal)# p ro to co l esp
hostname(config-ipsec-proposal)# h ash sh a
hostname(config-ipsec-proposal)# exit
Device B
hostname(config-ipsec-proposal)# p ro to co l esp
hostname(config-ipsec-proposal)# h ash sh a
hostname(config-ipsec-proposal)# exit
Device A
hostname(config-tunnel-ipsec-auto)# exit
Device B
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-if-tun1)# exit
When the settings are completed, the security tunnel between Device A and Device B has been
successfully established. The data transmission between the subnet 10.1.1.0/24 and subnet
192.168.1.0/24 is encrypted.
This section describes a route-based VPN track and redundant backup example.
Requirement
There are two IKE VPN tunnels named VPN1 tunnel and VPN2 tunnel respectively between
Hillstone Device A and Device B. The server is behind Device A, with the IP address of
192.168.100.8, and gateway address of 192.168.100.1; PC is behind Device B, with the IP
address of 172.16.10.8, and gateway address of 172.16.10.1. The requirement is tracking the
VPN status of VPN1 tunnel and VPN2 tunnel. When the main tunnel (VPN1 tunnel) link fails,
traffic will be diverted to the backup tunnel (VPN2 tunnel); when the main tunnel recovers, the
flow will be switched back to the main tunnel. The network topology is shown in the following
figure:
Co n figure in terfaces:
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/4)# zo n e un trust
hostname(config-if-eth0/4)# exit
Co n figure a P1 p ro p o sal:
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# exit
hostname(config-isakmp-peer)# exit
hostname(config-isakmp-peer)# exit
Co n figure a P2 p ro p o sal:
hostname(config-ipsec-proposal)# p ro to co l esp
hostname(config-ipsec-proposal)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-if-tun1)# zo n e un trust
hostname(config-if-tun1)#
hostname(config-if-tun1)# exit
hostname(config-if-tun2)# zo n e un trust
hostname(config-if-tun2)# exit
Co n figure ro utes:
hostname(config-vrouter)#
hostname(config-vrouter)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Co n figure in terfaces
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/4)# zo n e un trust
hostname(config-if-eth0/4)# exit
Co n f ig u re a P 1 p ro p o sal
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# exit
Co n f ig u re an I S A K M P g at e way
hostname(config)# isakmp p eer gwb -p eer-1
hostname(config-isakmp-peer)# exit
hostname(config-isakmp-peer)# exit
Co n f ig u re a P 2 p ro p o sal
hostname(config)# ip sec p ro p o sal p 2
hostname(config-ipsec-proposal)# p ro to co l esp
hostname(config-ipsec-proposal)# exit
Co n f ig u re VP N t u n n e ls
hostname(config)# tun n el ip sec vp n 1-tun n el auto
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-tunnel-ipsec-auto)# exit
Cre at e t u n n e l in t e rf ac e s an d b in d t o t he VP N t u n n e ls
hostname(config)# in terface tun n el1
hostname(config-if-tun1)# zo n e un trust
hostname(config-if-tun1)# exit
hostname(config-if-tun2)# zo n e un trust
hostname(config-if-tun2)# exit
Co n f ig u re ro u t e s
hostname(config)# ip vro uter trust-vr
hostname(config-vrouter)# exit
Co n f ig u re p o lic y ru le s
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
In this example both the VPN devices are Hillstone devices, so you can use the default source
and destination addresses for VPN track.
This section describes a policy-based VPN track and redundant backup example.
Requirement
There are two IKE VPN tunnels named VPN1 tunnel and VPN2 tunnel respectively between
Hillstone Device A and Device B. The server is behind Device A, with the IP address of
192.168.100.8, and gateway address of 192.168.100.1; PC is behind Device B, with the IP
address of 172.16.10.8, and gateway address of 172.16.10.1. The requirement is tracking the
VPN status of VPN1 tunnel and VPN2 tunnel. When the main tunnel (VPN1 tunnel) link fails,
traffic will be diverted to the backup tunnel (VPN2 tunnel); when the main tunnel recovers, the
flow will be switched back to the main tunnel. The network topology is shown in the following
figure:
Co n figure in terfaces:
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/4)# zo n e un trust
hostname(config-if-eth0/4)# exit
Co n figure th e ro ute:
hostname(config-vrouter)# exit
Co n figure a P1 p ro p o sal:
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# exit
hostname(config-isakmp-peer)# exit
hostname(config-isakmp-peer)# exit
Co n figure a P2 p ro p o sal:
hostname(config-ipsec-proposal)# p ro to co l esp
hostname(config-ipsec-proposal)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule id 1
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule id 2
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule id 3
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule id 4
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule id 5
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Co n figure in terfaces:
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/4)# zo n e un trust
Co n figure th e ro ute:
hostname(config-vrouter)# exit
Co n figure a P1 p ro p o sal:
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# exit
hostname(config-isakmp-peer)# exit
hostname(config-isakmp-peer)# exit
Co n figure a P2 p ro p o sal:
hostname(config-ipsec-proposal)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule id 1
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule id 2
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule id 3
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule id 4
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule id 5
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
In this example both the VPN devices are Hillstone devices, so you can use the default source
and destination addresses for VPN track.
Requirement
Hillstone device is enabled with XAUTH server, and uses the local AAA server for user authen-
tication. When a user is trying to launch a VPN connection and gain access to internal resources
via a mobile phone, the XAUTH server will authenticate the user by a pre-shared key, and permit
the authenticated users to access to internal resources. The network topology is shown in the fol-
lowing figure:
Configuration Steps
hostname(config-if-eth0/7)# zo n e trust
hostname(config-if-eth0/7)# exit
hostname(config-if-eth0/6)# zo n e un trust
hostname(config-if-eth0/6)# exit
hostname(config)# rule to p
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)#
hostname(config-user)# en d
hostname(config)#
hostname(config)# xauth p o o l p o o l
hostname(config)#
hostname(config-isakmp-peer)# mo de aggresive
hostname(config-isakmp-peer)# exit
hostname(config)#
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-if-tun22)# zo n e trust
hostname(config-if-tun22)# exit
hostname(config)#
After the above steps, the mobile phone user can complete the authentication procedure via the
VPN client bundled with Android or iOS (username auth, password test, IPsec identifier/group
name xauth) and gain access to internal resources.
The HA peer mode supports IPsec VPN. By using an example, this section introduces how to
integrate HA peer mode with IPsec VPN in the asymmetric routing environment. Before con-
figuring the relevant functions, ensure that both Hillstone devices have the same hardware plat-
form, firmware version, and license.
After completing the configurations, both devices are working in the HA peer mode and enable
the IPsec VPN function. The traffic from the PC to the server is via the Device A and is secured
by the IPsec VPN configured in Device A. The backward traffic from the server to the PC is via
the Device B and is secured by the IPsec VPN configured in Device B. If one device or its rel-
evant links are down, the traffic will be forwarded and secured by the other device. The topology
is shown as below:
Configuration Steps
hostname(config)# h a gro up 0
hostname(config-ha-group)# exit
hostname(config)# h a gro up 1
hostname(config-ha-group)# exit
Device B
hostname(config)# h a lin k in terface eth 0/4
hostname(config)# h a gro up 0
hostname(config-ha-group)# exit
hostname(config)# h a gro up 1
hostname(config-ha-group)# exit
Device A
hostname(config)# in terface eth 0/1:1
hostname(con-if-eth0/1:1)# zo n e un trust
hostname(con-if-eth0/1:1)# ip address192.168.10.1/24
hostname(con-if-eth0/1:1)# exit
hostname(con-if-eth0/2:1)# zo n e trust
hostname(con-if-eth0/2:1)# exit
Device A
hostname(M0D1)(config)# isakmp p eer p eer1
hostname(M0D1)(config-isakmp-peer)# exit
hostname(M0D1)(config-isakmp-peer)# exit
hostname(M0D1)(config-tunnel-ipsec-auto)# exit
hostname(M0D1)(config-tunnel-ipsec-auto)# exit
hostname(M0D1)(config-if-tun1)# zo n e vp n
hostname(M0D1)(config-if-tun1)# zo n e vp n
hostname(M0D1)(config-if-tun1)# exit
Device C
hostname(config)# isakmp p eer p eer1
hostname(config-isakmp-peer)# exit
hostname(config-isakmp-peer)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config-if-tun1)# zo n e vp n
hostname(config-if-tun1)# exit
hostname(config-if-tun1)# zo n e vp n
hostname(config-if-tun1)# exit
Device A
hostname(M0D1)(config-vrouter)# exit
Device C
hostname(config)# ip vro uter trust-vr
hostname(config)# exit
Overview
The device provides an SSL based remote access solution. Remote users can access the Intranet
resources safely through SSL VPN.
SSL VPN requires an SSL VPN server and an SSL VPN client. SSL VPN server provides the fol-
lowing functions:
l Assigning IP addresses, DNS server addresses, and WIN server addresses to SSL VPN cli-
ents;
The SSL VPN client for Hillstone devices is called Hillstone Security Connect. You can down-
load and install it on your PC. When your client has successfully connected to the SSL VPN
server, your communication with the server is encrypted and secured.
The default concurrent online client number may vary from hardware platforms. If you want to
have a larger client number, consult your local agents to purchase new SSL VPN license.
l Two-Step Verification
l Host Binding
l Host Check
l General Configuration
Address pool is used to store IPv4 addresses allocated to clients. When a client connects to its
server, the server will take an IPv4 address from the address pool according to the client propriety
(like DNS server address or WIN server address) and give it to the client.
access-address-pool pool-name
This command creates a new address pool and leads you into the address pool configuration
mode; if the pool with this name exists, you will enter its configuration mode directly.
To delete an address pool, in the global configuration mode, use the following command:
no access-address-pool pool-name
The following sections explain how to configure address pools, including:
To configure the start ip, end ip and network mask of an address pool, in the IPv4 address pool
configuration mode, use the following command:
address start-ip end-ip netmask A.B.C.D
l netmask A.B.C.D – Specifies the network mask for this IPv4 address range.
To delete the IP range setting of an address pool, in the IPv4 address pool configuration mode,
use the following command:
no address
Some addresses in the address pool need to be reserved for other devices, like gateways, FTP serv-
ers, etc. These reserved IPv4 addresses are not allowed to allocate to clients.
To configure the start IP and end IP of reserved IP range, in the IPv4 address pool configuration
mode, use the following command:
exclude address start-ip end-ip
To delete the reserved address range, in the IPv4 address pool configuration mode, use the fol-
lowing command:
no exclude
If an IPv4 client needs static IPv4 address, IP-user binding rule can be applied to meet this
requirement. Binding the user of IPv4 client to an IPv4 address in the address pool can guarantee
that this IPv4 address is allocated to the client when it reaches the server. In addition, IPv4
address for a client can be defined to an address range by using IP-role binding which defines an
IP range for this role. When a client with the role connects to the server, it gets one address from
the IPv4 addresses bound to this role.
When an IPv4 server allocates IPv4 addresses, it follows the rules below:
1. Check whether the IP-user binding rule is configured for the client. If yes, allocate the
bound IP to the client; if no, the server will select an IP which is not bound or used from
the address pool, then allocate it to the client.
2. Check whether the IP-role binding rule is configured for the client. If yes, get an IP from
the IP range and allocate to the client; if no, the server will select an IP which is not bound
or used from the address pool, then allocate it to the client.
Binding an IP to a User
To bind an IP address to a user, in the IPv4 address pool configuration mode, use the following
command:
ip-binding user user-name ip ip-address
l ip ip-address – Specifies an available IPv4 address in the address pool which will be bound
to the user.
To cancel an IP-user binding, in the IPv4 address pool configuration mode, use the following
command:
no ip-binding user user-name
Binding an IP to a Role
To bind an IP address to a role, in the IPv4 address pool configuration mode, use the following
command:
ip-binding role role-name ip_range start-ip end-ip
l ip_range start-ip end-ip – Specifies the available IP range (start IPv4 address and end IPv4
address) in the address pool.
To cancel a binding between an IP range and a role, in the IPv4 address pool configuration mode,
use the following command:
no ip-binding role role-name
Normally, if a user belongs to multiple roles which bind to different IPv4 addresses, the system
searches for the first rule which matches the user and applies the IPv4 address under this rule to
the user. By default, new rule is at the bottom of the rule list.
To move the position of an IP-role binding rule in the rule list, in the IPv4 address pool con-
figuration mode, use the following command:
move role-name1 {b efo re role-name2 | after role-name2 | to p | b o tto m}
l role –name1 – Specifies the role whose binding you want to move.
l before role-name2 – Moves the binding rule before the IP-role binding specified here.
l after role-name2 – Moves the binding rule after the IP-role binding specified here.
l top – Moves the binding rule to the top of the IP-role binding rule list.
l bottom – Moves the binding rule to the bottom of the IP-role binding rule list.
To specify a DNS server, in the IPv4 address pool configuration mode, use the following com-
mand:
dns address1 [ address2 ] [ address3 ] [ address4 ]
l address1 – Specifies the IPv4 address of DNS servers. You can specify up to four addresses.
To cancel the DNS setting, in the IPv4 address pool configuration mode, use the following com-
mand:
n o dn s
To specify a WINS server, in the IPv4 address pool configuration mode, use the following com-
mand:
wins address1 [address2 ]
To cancel the WINS server setting, in the IPv4 address pool configuration mode, use the fol-
lowing command:
no wins
To view information about an IPv4 address pool, in any mode, use the following command:
show access-address-pool [ pool-name ]
l pool-name – Specifies the name of IPv4 address pool to be shown. If this parameter is not
specified, you can view all IPv4 address pools.
Name: pool_test1
l pool-name – Specifies the name of IPv4 address pool whose statistics you want to view.
IPv6 address pool is used to store IPv6 addresses allocated to clients. When a client connects to
its server, the server will take an IPv6 address from the address pool according to the client pro-
priety (like DNS server address or WIN server address) and give it to the client.
To creat an IPv6 address pool, in the global configuration mode, use the following command:
access-address-pool-ipv6 pool-name
This command creates a new address pool and leads you into the IPv6 address pool configuration
mode; if the pool with this name exists, you will enter its configuration mode directly.
To delete an IPv6 address pool, in the global configuration mode, use the following command:
no access-address-pool-ipv6 pool-name
The following sections explain how to configure IPv6 address pool, including:
To configure the start ip, end ip and network mask of an IPv6 address pool, in the IPv6 address
pool configuration mode, use the following command:
address start-ipv6-address end-ipv6-address prefix prefix-length
l prefix prefix-length – Specifies the prefix for this IPv6 address range. The range is 111 to
128.
To delete the IP range setting of an address pool, in the IPv6 address pool configuration mode,
use the following command:
no address
Some addresses in the address pool need to be reserved for other devices, like gateways, FTP serv-
ers, etc. These reserved IPv6 addresses are not allowed to allocate to clients.
To configure the start IP and end IP of reserved IP range, in the IPv6 address pool configuration
mode, use the following command:
exclude address start-ipv6-address end-ipv6-address
If an IPv6 client needs static IPv6 address, IP-user binding rule can be applied to meet this
requirement. Binding the user of IPv6 client to an IPv6 address in the address pool can guarantee
that this IPv6 address is allocated to the client when it reaches the server. In addition, IPv6
address for a client can be defined to an address range by using IP-role binding which defines an
IP range for this role. When a client with the role connects to the server, it gets one address from
the IPv6 addresses bound to this role.
When an IPv6 server allocates IPv6 addresses, it follows the rules below:
1. Check whether the IP-user binding rule is configured for the client. If yes, allocate the
bound IP to the client; if no, the server will select an IP which is not bound or used from
the address pool, then allocate it to the client.
2. Check whether the IP-role binding rule is configured for the client. If yes, get an IP from
the IP range and allocate to the client; if no, the server will select an IP which is not bound
or used from the address pool, then allocate it to the client.
Notes: IPv6 addresses in the IP-user binding rules and those in the IP-role binding
rules should not conflict with each other.
Binding an IP to a User
To bind an IP address to a user, in the IPv6 address pool configuration mode, use the following
command:
ip-binding user user-name ip ipv6-address
l ip ipv6-address – Specifies an available IPv6 address in the address pool which will be bound
to the user.
To cancel an IP-user binding, in the IPv6 address pool configuration mode, use the following
command:
no ip-binding useruser-name
Binding an IP to a Role
To bind an IP address to a role, in the IPv6 address pool configuration mode, use the following
command:
ip-binding role role-name ip-range start-ipv6-address end-ipv6-address
To cancel a binding between an IP range and a role, in the IPv6 address pool configuration mode,
use the following command:
no ip-binding role role-name
Normally, if a user belongs to multiple roles which bind to different IPv6 addresses, the system
searches for the first rule which matches the user and applies the IPv6 address under this rule to
the user. By default, new rule is at the bottom of the rule list.
To move the position of an IP-role binding rule in the rule list, in the IPv6 address pool con-
figuration mode, use the following command:
move role-name1 {b efo re role-name2 | after role-name2 | to p | b o tto m}
l before role-name2 – Moves the binding rule before the IP-role binding specified here.
l after role-name2 – Moves the binding rule after the IP-role binding specified here.
l top – Moves the binding rule to the top of the IP-role binding rule list.
l bottom – Moves the binding rule to the bottom of the IP-role binding rule list.
To specify a DNS server, in the IPv6 address pool configuration mode, use the following com-
mand:
dns ipv6-address1 [ ipv6-address2 ] [ ipv6-address3 ] [ ipv6-address4 ]
l ipv6-address1 – Specifies the IPv6 address of DNS servers. You can specify up to four
addresses.
To cancel the DNS setting, in the IPv6 address pool configuration mode, use the following com-
mand:
n o dn s
To view information about an IPv6 address pool, in any mode, use the following command:
show access-address-pool-ipv6 [ pool-name ]
l pool-name – Specifies the name of IPv6 address pool to be shown. If this parameter is not
specified, you can view all IPv6 address pools.
===================================================
Name Address range Prefix length
========================================================-
=======
hostname(config)# sh o w access-address-p o o l-ip v6 2-ip v6-p o o l
Name: 2-ipv6-pool
To view statistical information about an IPv6 address pool, in any mode, use the following com-
mand:
show access-address-pool-ipv6 pool-name statistics
l pool-name – Specifies the name of IPv6 address pool whose statistics you want to view.
Resource list refers to resources configured in the system that can be easily accessible by users.
Each resource contains multiple resource items. The resource item is presented in the form of
resource name followed by resource item name in your default browser page. After the SSL VPN
user is authenticated successfully, the authentication server will send the user group information
of the user to the SSL VPN server. Then, according to the binding relationship between the user
group and resources in the SSL VPN instance, the server will send a resource list which the user
can access to the client. After that, the client will analyze and make the IE browser that your sys-
tem comes with pop up a page to display the received resource list information so that the user
can access the private network resource directly by clicking the resource item name. The resource
list page is poped up only once after the authentication is passed. If a user does not belong to any
user group, the browser will not pop up the resource list page after authentication is passed.
To configure a SSL VPN resource, in the global configuration mode, use the following command:
scvpn resource-list list-name
After this command is executed, you will enter SSL VPN resource list configuration mode and
you can continue to configure resource items for the new resource. To delete a resource, in the
global configuration mode, use the following command:
no resource-list list-name
l SSL VPN client versions that allow you to configure the resource list are as
follows: SSL VPN Windows client 1.4.6.1238 or later versions, iOS 2.0.6 or
later versions, and Android 4.6 or later versions.
To add resource items for resource, in SSL VPN resource list configuration mode, use the fol-
lowing command:
name name url url-string
l name – Specifies the name for resource item. The value range is 1 to 95.
l url-string – Specifies the URL for resource item. The value range is 1 to 255.
To delete a resource item, in SSL VPN resource list configuration mode, use the following com-
mand:
no name name
To view the configuration information of resource list, in any mode, use the following command:
show scvpn resource-list [list-name]
l list-name – Specifies the resource name you want to view. The value range is 1 to 63. Inform-
ation about all resources will be displayed if you keep this parameter unconfigured.
To specify the UDP port number of SSL VPN connection, in the global configuration mode, use
the following command:
scvpn-udp-port port-number
l port-number – Specifies the UDP port number. The value range is 1 to 65535. The default
value is 4433.
When UDP port number is specified, all SSL VPN connections will communicate on this port.
To restore to the default value, in the global configuration mode, use the following command:
no scvpn-udp-port
To create an SSL VPN instance, in the global configuration mode, use the following command:
tunnel scvpn instance-name
This command creates an SSL VPN instance and leads you into the SSL VPN instance con-
figuration mode; if the instance exists, you will enter the SSL VPN instance configuration mode
directly.
To delete an SSL VPN instance, in the SSL VPN instance configuration mode, use the following
command:
no tunnel scvpn instance-name
This section describes how to configure an SSL VPN instance, including:
l Configuring anti-replay
l Configuring multi-logon
l Clearing cache data of the host that uses the SSL VPN client
l Binding Resources
By default, the service type of SSL VPN instanse is IPv4. To specify the service type of the SSL
VPN instance, including IPv4 or IPv6. This command can only be configured when the version is
l ipv4 | ipv6 – Specifies the service type of the SSL VPN instance, including IPv4 or IPv6.
To specify an IPv4 address pool for the IPv4 SSL VPN instance, in the SSL VPN instance con-
figuration mode, use the following command:
access-address-pool pool-name
To cancel the IPv4 address pool, in the SSL VPN instance configuration mode, use the following
command:
no access-address-pool
To specify an IPv6 address pool for the IPv6 SSL VPN instance, in the SSL VPN instance con-
figuration mode, use the following command:
access-address-pool-ipv6 pool-name
To cancel the IPv6 address pool, in the SSL VPN instance configuration mode, use the following
command:
no access-address-pool-ipv6
The client uses HTTPS protocol to access to the device. To specify the SSL VPN interface of the
device, in the SSL VPN instance configuration mode, use the following command:
interface interface-name
l interface-name – Specifies the name of the interface for the SSL VPN client to connect.
To cancel the SSL VPN interface, in the SSL VPN instance configuration mode, use the fol-
lowing command:
To specify the SSL protocol version of an SSL VPN instance, in the SSL VPN instance con-
figuration mode, use the following command:
ssl-protocol { tlsv1 | tlsv1.2 | gmssl | any }
l gmssl – Uses GMSSLv1.0 protocol. After selecting this option, you’re recommended to
select the trust domain that contains SM2 type key for the PKI trust domain and the encryp-
ted trust domain. The SM4 is preferred for encryption algorithm and the SM3 is preferred for
hash algorithm.
l any – Uses any of the following protocols: TLSv1, TLSv1.1 and TLSv1.2.
To restore to the default value, in the SSL VPN instance configuration mode, use the following
command:
no ssl-protocol
If tlsv1.2 or any is specified to the SSL protocol in SSL VPN server, you need to convert the cer-
tificate that you are going to import to the browser or certificate in the USB Key to make it sup-
port the tlsv1.2 protocol before the digital certificate authentication via SSL VPN client, so that
the SSL VPN server can be connected successfully when the Username/Password + Digital Cer-
tificate or Digital Certificate Only authentication method is selected. Prepare a PC with Windows
or Linux system which has been installed with OpenSSL 1.0.1 or later before processing the cer-
tificate.
We will take the certificate file named oldcert.pfx as an example, the procedure is as follows:
1. In the OpenSSL software interface, enter the following command to convert a certificate in
.pfx format to a certificate in .pem format: openssl pkcs12 –in oldcert.pfx –out cert.pem
3. Import the newly generated .pfx format certificate into your browser or USB Key.
After the above operation, you have to log into SSL VPN server with SSL VPN client whose ver-
sion is 1.4.6.1239 or later. When configuring an SSL VPN function that uses the GM standard,
you need to install the SSL VPN client that supports the GM standard on the PC(The current win-
dows client version that supports GM standard is 1.4.7.1252), and log in with the user-
name/password of GM.
l trust-domain-name – Specifies the name of PKI trust domain. The default domain is trust_
domain_default.
To restore to the default value, in the SSL VPN instance configuration mode, use the following
command:
no trust-domain
Tip: For information on how to create a PKI trust domain, see “PKI” in the
“User Authentication”
To specify the encryption trust domain which is usded for the GMSSL negotiation for the SSL
VPN, in the SSL VPN configuration mode, use the following command:
trust-domain-enc enc-cert
To delete the configured encryption trust domain, in the SSL VPN configuration mode, use the
following command:
no trust-domain-enc
Tunnel cipher suite includes encryption algorithm, authentication algorithm and compression
algorithm.
To specify cipher suite for the tunnel, in the SSL VPN instance configuration mode, use the fol-
lowing command:
tun n el-cip h er en cryp tio n {n ull | des | 3des | aes | aes192 | aes256 | sm4} h ash {n ull | md5
| sh a | sh a256 | sh a384 | sh a512 | sm3} [co mp ressio n defl]
l null | des | 3des | aes | aes192 | aes256 | sm4 – Specifies an encryption algorithm. The
default value is AES. Null means no encryption is specified. For more information about
encryption algorithms, see Encryption Algorithm.
l null | md5 | sha | sha256 | sha384 | sha512| sm3 – Specifies an authentication algorithm.
The default value is MD5. Null means no authentication is specified. For more information
about authentication algorithms, see Hash Algorithm.
l compression defl – Specifies the compression algorithm DEFALTE. The default setting is
no compression. For more information on compression algorithms, see Compression
Algorithm.
To restore to the default algorithm settings, in the SSL VPN instance configuration mode, use the
following command:
no tunnel-cipher
l aaa-server-name – Specifies the name of AAA server you want to use for authentication.
l domain domain-name – Specifies the domain for the AAA server so that it can be dis-
tinguished from other servers.
l keep-domain-name – After specifying this parameter, the AAA server uses the full name of
the user, including the username and the domain name, to perform the authentication.
To cancel the AAA server in an SSL VPN, in the SSL VPN instance configuration mode, use the
following command:
no aaa-server aaa-server-name [domain domain-name]
l port-number – Specifies a port number of HTTPS protocol in SSL VPN instance. The range
is 1 to 65535. The default value is 4433. As Web browser uses port 443 for HTTPS, do not
choose 443 as the SSL VPN HTTPS port number. If multiple SSL VPN instances use the
same interface, their HTTPS ports should have different port numbers.
To restore to the default value, in the SSL VPN instance configuration mode, use the following
command:
no https-port
The system supports ZTNA data transmission over TCP or UDP. The default protocol is UDP,
and the default port is 4433. To configure the transport protocol and port number, in the ZTNA
instance configuration mode, use the following command:
transport-service {tcp | udp} port-number
l port-number – Specifies the port number for data transmission. The range is 1 to 65535.
To delete the transport protocol and port number, in the ZTNA instance configuration mode, use
the following command:
no transport-service {tcp | udp}
To reach the destination network segment or destination domain name through SCVPN tunnel,
you need to specify them by configuring the SCVPN tunnel route.
l The specified destination network segment will be distributed to the VPN client, then the cli-
ent uses it to generate the route to the specified destination.
l The specified destination domain name will be distributed to the VPN client, and the client
will generate the route to the specified destination according to the resolving results from
DNS.
You can only specify the IPv4 SCVPN tunnel route for the IPv4 SSL VPN instance. To reach the
destination network segment through SCVPN tunnel, in the SCVPN instance configuration
mode, use the following command:
split-tunnel-route ip-address/netmask [ metric metric-number ]
l metric metric-number – Specifies a metric value for the route. The value range is 1 to 9999.
The default value is 35.
To delete a route, in the SCVPN instance configuration mode, use the following command:
n o sp lit-tun n el-ro ute ip-address/netmask [ metric metric-number ]
You can only specify the IPv6 SCVPN tunnel route for the IPv6 SSL VPN instance. To reach the
destination network segment through SCVPN tunnel, in the SCVPN instance configuration
mode, use the following command:
split-tunnel-route-ipv6 ipv6-address/prefix [ metric metric-number ]
l ipv6-address/prefix – Specifies the IPv6 address and network mask of the destination net-
work segment.
l metric metric-number – Specifies a metric value for the route. The value range is 1 to 9999.
The default value is 35.
To delete a route, in the SCVPN instance configuration mode, use the following command:
n o sp lit-tun n el-ro ute-ip v6 ipv6-address/prefix [ metric metric-number ]
After specifying the domain name, the system will distribute it to the client. The client will gen-
erate the route to the specified destination according to the resolving results from DNS. To spe-
cify the domain name, in the SCVPN instance configuration mode, use the following command:
domain-route {disable | enable | max-entries value | url]
l max-entries value – The maximum numbers of routes that can be generated after obtaining
the resolved IP addresses of the domain name. The default value is 1000. The value ranges
from 1 to 10000.
l url – Specify the URL of the domain name. You can add one each time and you can add up
to 64 domain names. The URL cannot exceed 63 characters and it cannot end with a dot (.).
Both wildcards and a single top level domain, e.g. com and .com are not supported.
To delete the specified domain name, use the following command in the SCVPN instance con-
figuration mode:
no domain-route url
Configuring Anti-replay
Anti-replay is used to prevent hackers from injecting the captured packets repeatedly by rejecting
the packets.
To enable anti-replay, in the SSL VPN instance configuration mode, use the following command:
an ti-rep lay {32 | 64 | 128 | 256 | 512}
l 32 – Specifies that the anti-replay window size is 32. This is the default value.
Bigger window size suits more in bad network conditions, such as serious packets disorder.
l copy - Copies the DF value from the destination of the packet. This is the default value.
To restore to the default value, in the SSL VPN configuration mode, use the following command:
no df-bit
Idle time defines the time length a client is allowed to connect to the device without any oper-
ation. When a client takes no action for the time period of idle time specified here, it is forced to
log out the device.
To specify the idle time, in the SSL VPN instance configuration mode, use the following com-
mand:
idle-time time-value
l time-value – Specifies the idle time value. The value range is 15 to 1500 minutes. The
default value is 30.
To restore to the default value, in the SSL VPN instance configuration mode, use the following
command:
no idle-time
To allow multiple users to log in at multiple places with the same username simultaneously, in the
SSL VPN configuration mode, use the following command:
allow-multi-logon
This command enables the function and does not limit the login number. If you want to specify
the number of users logging in with the same username simultaneously, in the SSL VPN con-
figuration mode, use the following command:
allow-multi-logon number number
l number – Specifies the number of users who are allowed to login with one username. The
value range is 1 to 99999999.
To disable multi-login, in the SSL VPN instance configuration mode, use the following command:
no allow-multi-logon
URL redirection function in SSL VPN server displays a specified URL page to the authenticated
client user. By default, this function is disabled.
To enable URL redirection, in the SSL VPN instance configuration mode, use the following com-
mand:
redirect-url url title name
l url – Specifies the url address of the page shown for the new authenticated client. The value
range is 1 to 255 bytes. It can be an HTTP (http://) or an HTTPS (https://) address.
l title name – Specifies a description for the redirect page. The value range is 1 to 31 bytes.
To cancel URL redirection, in the SSL VPN instance configuration mode, use the following com-
mand:
no redirect-url
You should follow the format of redirected URL pages defined by StoneOS. The format may vary
from URL types. Here are some format requirements for HTTP URL:
Notes: For configuration example of URL redirection feature, see Example of Con-
figuring URL Redirect.
Clearing Cache Data of the Host that Uses the SSL VPN Client
For the security of the private data in the host that uses the SSL VPN client, you can clear the
cache data including the cache data in the Web temporary and other temporary files. To enable
this function, use the following command in the SSL VPN instance configuration mode:
host-cache-clear enable
To disable this function, use the following command in the SSL VPN instance configuration
mode:
host-cache-clear disable
In the network environment using HA peer mode, configure SSL VPN in both Hillstone devices.
When one device or its relevant links are down, the SSL VPN client can re-connect to the other
device. You need to configure the reconnection address table. The SSL VPN client will re-
l ip A.B.C.D | domain url – Enter the IP address or the domain name of the SSL VPN server.
l port port-number – Enter the port number that the SSL VPN server used. The default port
is 4433.
l If you select the Auto Reconnect option in the SSL VPN client and use the client-auto-con-
nect count command to set the reconnection times as unlimited, the SSL VPN client will only
re-connect to the originally configured server, and will not re-connect to the server specified
in the reconnection address table. If you set the reconnection times as X, the SSL VPN client
will re-connect to the server in the table after X times of failed attempts to the originally con-
figured server.
l If you does not select the Auto Reconnect option in the SSL VPN client, the SSL VPN client
will directly re-connect to the server you specified in the reconnection address table
l When using the firmware that supports the using of SSL VPN in HA peer mode, the SSL
VPN whose version is lower than 1.4.4.1207 can connect to the SSL VPN server if the server
has no reconnection address table configured. StoneOS will inform the users to update the
SSL VPN client. If the server has configured the reconnection address table, the SSL VPN
whose version is lower than 1.4.4.1207 cannot connect to SSL VPN server. You need to
When using the old version of SSL VPN client (Hillstone byod client (HBC)) for iOS to connect
the SSL VPN server, you need to bind a L2TP VPN instance to the SSL VPN instance and the
bound L2TP VPN needs to reference an IPSec tunnel. To configure the binding settings, use the
following command in the SSL VPN instance configuration mode:
client-bind-lns tunnel-name
l tunnel-name – Specifies the name of the L2TP VPN instance you want to bind. This L2TP
VPN instance needs to reference an IPSec tunnel. To cancel the binding settings, use the fol-
lowing command: no client-bind-lns
The L2TP VPN instance and the IPSec tunnel mentioned above must meet the following require-
ments:
l The authentication method of the IPSec tunnel must be pre-shared key authentication.
l The secret string of the L2TP instance (specified by the secret secret-string command) must
be the same as pre-shared key of the IPSec tunnel.
l The AAA servers used by the L2TP instance and the SSL VPN instance must be the same.
l The address pool of the L2TP instance must be configured correctly. The device will allocate
the corresponding IP addresses using the address pool of the L2TP instance.
Binding Resources
Only after binding rules between resources and user groups/roles has been configured, can the
SSL VPN client make the IE browser pop up a page to display the received resource list inform-
ation after the authentication is passed. A user group/role can be bound with multiple resources,
l aaa-server-name – Specifies the AAA server name which the user group belongs to. Cur-
rently, only the local authentication server and the RADIUS server are available.
To cancel the binding settings, in the SSL VPN instance configuration mode, use the following
command:
no bind resource-list list-name {user-group aaa-server-name group-name | role role-name}
With the browser download function, you're allowed to download the SSL VPN client via the
browser WebUI. By default, the function is enabled. When this function is disabled, you can only
download the SSL VPN client from www.hillstonenet.com.cn
To enable the function , in the SSL VPN instance configuration mode, use the following com-
mand:
client-download-page enable
To disable the function , in the SSL VPN instance configuration mode, use the following com-
mand:
client-download-page disable
Only when an SSL VPN instance binds to a tunnel interface can it take effect.
l instance-name – Specifies the name of the SSL VPN instance you want to bind.
To cancel the binding of an SSL VPN instance, in the tunnel interface configuration mode, use
the following command:
no tunnel scvpn instance-name
The client is allowed to use a USB flash disk that stores a certificate to authenticate. A USB disk
which supports Windows SDK (Certificate Store Functions) and has a legal UKey certificate can
pass the authentication and connect to the server.
The USB Key certificate authentication supports the following authentication methods:
l Username/Password + USB Key Certificate: SSL VPN users should have a USB Key that
stores the correct digital certificate, and enter the correct user name, password and PIN code
when logging in before they can pass the authentication.
l USB Key Certificate Only: SSL VPN users should have a USB Key that stores the correct
digital certificate, and enter the correct PIN code when logging in to pass the authentication.
Notes: When using the authentication method of USB Key Certificate Only:
l The SSL VPN client will not reconnect to the SSL VPN server automatically
if the USB Key is removed.
The following sections describe how to configure USB Key certificate authentication, including:
By default, this function is disabled. To enable the USB Key certificate authentication, in the SSL
VPN instance configuration mode, use the following command:
client-cert-authentication [usbkey-only]
l usbkey-only – Specifies the USB Key authentication as USB Key only. If this parameter is
not specified, the authentication of Username/Password + USB Key will be used.
To disable the function, in the SSL VPN instance configuration mode, use the following com-
mand:
no client-cert-authentication [usbkey-only]
CA certificates can be imported through various methods, including downloading from an FTP or
TFTP server and from USB disk. To import a certificate, in the execution mode, use the fol-
lowing command:
import pki trust-domain-name cacert from {ftp server ip-address [user user-namepassword pass-
word] | tftp server ip-address | usb0 | usb1} file-name
l ftp server ip-address [user user-name password password] – Specifies the IP address of FTP
server, username and password to log in. If the server supports anonymous login, skip the
username and password.
l usb0 | usb1 – Specifies the port to which the USB disk is plugged.
USB Key certificate authentication requires a trust domain for the CA certificate. When the cer-
tificate provided from client matches one of the trust domain certificates, it passes authentication.
To specify a trust domain, in the SSL VPN instance configuration mode, use the following com-
mand:
client-auth-trust-domain trust-domain
l trust-domain – Specifies a configured PKI trust domain for the CA certificate. Repeat this
command to add more trust domains. The system supports up to 10 domains.
To cancel a PKI trust domain for a certificate, in the SSL VPN instance configuration mode, use
the following command:
no client-auth-trust-domain trust-domain
Tip: For information on how to create PKI trust domain, see “PKI” in the
“User Authentication”
Two-Step Verification
Two-Step Verification means that when an SSL VPN user logs in by providing a "user-
name/password" or a "username/password+Digital Certificate", the Hillstone device will imple-
ment the two-step verification by means of SMS Authentication, Token Authentication or Email
Authentication after the username and password is entered. The user must enter the random veri-
fication code received in order to log into SSL VPN and access intranet resources.
The two-step verification function is disabled by default. Enabling or disabling the two-step veri-
fication function, in the SSL VPN instance configuration mode, use the following command:
To specify the type of the two-step verification, in the SSL VPN instance configuration mode,
use the following command:
two-step verification type {token | sms modem | sms service-provider | email}
l sms modem- Specifies to send a short message through an SMS modem for two-step veri-
fication.
l sms service-provider- Specifies to send a short message through an SMS gateway for two-step
verification.
Token Authentication
The system supports for authentication through the token password when logging in, and user-
defined prompt information for token authentication.
To configure the prompt message of the token authentication, in the SSL VPN instance con-
figuration mode, use the following command:
token-auth prompt-message message
prompt-message message- Specifies the prompt message. The range is 1 to 255 characters.
SMS Authentication
SMS authentication means that when an SSL VPN user logs in by providing a username and pass-
word, the Hillstone device, through an SMS modem or an SMS gateway, sends a dynamically
Modem Authentication
Hillstone device adopts an external GSM modem. Before configuring the SMS authentication
function, you need to prepare an SIM card and a GSM modem, and then connect the modem to
the device properly. To connect the modem to the device, first, you should insert the SIM card
into the GSM modem properly; then, connect the modem to the USB port of the device via a
USB cable.
The following models of SMS modem are recommended:
SSL VPN local users and AD users, when assigned with a mobile phone number by the admin-
istrator, can use SMS password sent by the system to authenticate.
To configure the phone number for a local user, in the user configuration mode, use the following
command:
phone phone-number
To cancel a number, in the user configuration mode, use the following command:
no phone
For an AD user, configure the mobile phone number in the mobile propriety of AD server.
Each SMS authentication code has a period of validity. If the user neither types the auth-code
within the period nor applies for a new code, SSL VPN server will disconnect the connection.
To configure the SMS auth-code validity period, in the SSL VPN instance configuration mode,
use the following command:
sms-auth expiration expiration
l expiration – Specifies the validity period. The range is 1 to 10 minutes. The default value is
10.
To restore the validity period to the default value, in the SSL VPN instance configuration mode,
use the following command:
no sms-auth expiration
To specify the length of the SMS verification code, in the SSL VPN instance configuration mode,
use the following command:
sms-auth verification-code-length length
l length – Specifies the length of the SMS verification code. The range is 4 to 8 characters.
The default value is 8.
In the SSL VPN instance configuration mode, use the following command to restore the default
value.
no sms-auth verification-code-length
To specify the SMS verification content, in the SSL VPN instance configuration mode, use the
following command:
sms-auth message-content content
l content – Specifies the SMS verification content. The input must contain "$VRFYCODE"
(This parameter is used to get the verification code). "$USERNAME" and "EXPIRATION"
are optional. The value range is 9 to 500 characters.
In the SSL VPN instance configuration mode, use the following command to restore the default
content.
no sms-auth message-content
You can specify the maximum number of SMS messages sent by the SMS modem per hour or per
day. If the modem is required to send more messages than the maximum number, it will reject and
record a log.
To configure the maximum SMS number, in the global configuration mode, use the following com-
mand:
sms mo dem { num-per-hour | num-per-day } number
If you do not limit the maximum number of SMS messages sent by the SMS modem per hour or
per day, in the global configuration mode, use the following command:
n o sms mo dem {n um-p er-h o ur | n um-p er-day}
To test if the device works properly, you can send a test message to a phone number.
To send a test message, in any mode, use the following command:
exec sms send test-message to phone-number
l phone-number – Specifies the phone number which receives the test message.
If the phone of the test number does not receive the test message, the system will record a log
with description about failure reason.
To view the configuration information of an SMS modem, in any mode, use the following com-
mand:
show sms modem
Hillstone device, through SMS gateway or other proxy server, can send a short message to users in
SMS after the username and password is entered. Before configuring the function, you need to ask
the supplier to provide the necessary information, such as the gateway address, device ID which
sends the short messages.
SMS gateway authentication configuration includes:
2. Bind the SP instance to a configured SSL VPN tunnel, and enable the SMS gateway authen-
tication function.
The types of SMS gateway protocol supported by the device include SGIP, UMS, ACC,
ALIYUNSMS, XUANWU, CAS, BEIKE and HTTP(S). SGIP indicates the SGIP protocol of
Chinaunicom. UMS indicates the enterprise information platform of Chinaunicom. ACC indicates
the ACC protocol of Chinatelecom. ALIYUNSMS indicates the SMS service platform of Alibaba
Cloud. XUANWU indicates the Xuanwu Technology SMS service platform. CAS indicates the
12302 SMS service platform. BEIKE indicates BEIKE SMS gateway. HTTP(S) indicates
HTTP/HTTPS protocol. To specify the default protocol type of SMS gateway, in the global con-
figuration mode, use the following command:
sms service-provider default-protocol {sgip | ums | acc | aliyunsms | xuanwu | cas | beike |
http(s) }
l sgip | ums | acc | aliyunsms | xuanwu | cas | beike | http(s) - Specifies the default protocol
type of SMS gateway that the SP instance is running. SGIP indicates the SGIP protocol of
Chinaunicom. UMS indicates the enterprise information platform of Chinaunicom. ACC indic-
ates the ACC protocol of Chinatelecom. ALIYUNSMS indicates the SMS service platform of
Alibaba Cloud. XUANWU indicates the Xuanwu Technology SMS service platform. CAS
indicates the 12302 SMS service platform. BEIKE indicates BEIKE SMS gateway. http(s)
indicates HTTP/HTTPS protocol.
In the global configuration mode, use the command no sms service-provider default-protocolto
cancel the specified default protocol type.
Creating an SP Instance
To create an SP instance, use the following command in the global configuration mode:
l protocol {sgip | ums | acc| aliyunsms | xuanwu | cas | beike | http(s)- Specifies the pro-
tocol of SMS gateway that the SP instance is running. System only supports SGIP of Chin-
aunicom. UMS indicates the enterprise information platform of Chinaunicom. ACC indicates
the ACC protocol of Telecom. ALIYUNSMS indicates the SMS service platform of Alibaba
Cloud. XUANWU indicates the Xuanwu Technology SMS service platform. CAS indicates
the 12302 SMS service platform. BEIKE indicates BEIKE SMS gateway. HTTP(S) indicates
HTTP/HTTPS protocol.
This command creates an SP instance and leads you into the SP instance configuration mode; if
the instance exists, you will enter the SP instance configuration mode directly. The system sup-
ports at most eight SP instances now.
In the global configuration mode, use the following command to delete the specified SP instance:
no sms service-provider sp-name
In the SP instance configuration mode, you can configure as follows:
The system supports multi-VR, and the default VR is trust-vr. To specify the VRouter which SP
belongs to, use the following command:
vro uter {trust-vr | vr-name }
In SP instance configuration mode, use the following command to restore the default VR:
n o vro uter {trust-vr | vr-name }
When the HTTP (S) protocol type is specified for the SP instance, you can specify the request
method of HTTP(S). The default request method is POST. To specify the request method, in the
SP instance configuration mode, use the following command:
request-type [get | post]
When the HTTP (S) protocol type is specified for the SP instance, you can specify the charset of
HTTP(S). The default charset is UTF-8. To specify the charset, in the SP instance configuration
mode, use the following command:
charset [utf-8 | gbk]
To specify the protocol of UMS, ACC , ALIYUNSMS, CAS or BEIKE, in the SP instance con-
figuration mode, use the following command:
p ro to co l {h ttp | h ttp s}
l http | https– Specifies the protocol type as HTTP or HTTPS. The default protocol of UMS,
CAS and BEIKE is HTTPS. The default protocol of ACC and ALIYUNSMS is HTTP.
In the SP instance configuration mode, use the following command to restore the default protocol
type:
no protocol
When the HTTP (S) protocol type is specified for the SP instance, you can specify the URL of
HTTP(S). You need to enter a complete access path. The system requests to communicate with
the SMS gateway based on the specified URL address. To specify the URL address, in the SP
instance configuration mode, use the following command:
url url string
l url string–Specifies the URL address of the SMS gateway, such as "http(s)://1.1.1.1". The
range is 1 to 255 characters.
When the HTTP (S) protocol type is specified for the SP instance, you can specify the success
code of HTTP(S). Success code is used to determine whether the SMS gateway successfully sent
an authentication message. The SMS gateway sends an authentication message to the mobile
phone, and when completed, it will send a message containing the status code to the system. If
the message contains the specified success code, the system will judge that the authentication
message has been sent successfully. For example, if an SMS gateway sent an authentication mes-
sage successfully, the status code returned is "OK: 325689", and if failed, the status number
returned is "ERROR: eUser". In this instance, you can specify the success code as "OK". When
l string–Specifies the success code. The range is 1 to 50 characters. Different SMS gateways
return different status code. Refer to the status code in the SMS gateway manual.
When the HTTP (S) protocol type is specified for the SP instance,you can configure attributes
to communicate with the SMS gateway. Attributes including the parameter name of the mobile
number field, the parameter name of the message content field, the password filed, and the user-
name filed, etc. You can configure up to 32 attributes. The parameter name of the mobile number
field and the parameter name of the message content field are default attributes and must be spe-
cified.
To specify the parameter name of the mobile number field and the parameter name of the message
content field, in SP instance configuration mode, use the following command:
default-attribute {phone-attr-name phone-attr-name | msg-content-attr-name msg-content-
name}
The system will obtain the parameter values of the mobile number field and the parameter values
of the message content field when SMS gateway and the system is communicating.
When the SMS gateway and the system communicate, the SMS gateway can obtain the parameter
values of the mobile number field and the parameter values of the message content field from the
system. To delete the parameter name of the specified mobile number field and the parameter
l user-name–Specifies the parameter name of the username, such as username. The range is
1 to 20 characters.
l user-value–Specifies the parameter value of the username, such as user1. The range is 2 to
255 characters.
To specify the gateway address and port number, in the SP instance configuration mode, use the
following command:
gateway {h o st hostname | ip ip-address } [ port port-number ]
l host hostname - Specifies the hostname of the gateway, the range is 1 to 31.
l port port-number - Specifies the port number of the gateway. If this parameter is not spe-
cified, the system will use 8801 as the port number of the gateway by default. When the
Execute this command for many times and the latest configuration takes effect.
In the SP instance configuration mode, use the following command to delete the gateway address
and port number:
n o gateway {h o st hostname | ip ip-address }
After enabling the SMS Authentication function, the system will send an Auth-message to the
mobile phone number. In the SP instance configuration mode, use the following command to set
number:
source-number phone-number
In the SP instance configuration mode, use the following command to cancel the specification of
user’s phone number:
no source-number
Before configuring the SMS gateway, you have to ask your supplier to provide the device ID of
SP, which sends the SMS messges. In the SP instance configuration mode, use the following com-
mand to specify device ID:
device-code code-number
In the SP instance configuration mode, use the following command to cancel the device ID spe-
cification:
no device-code
To specify the username and password, in the SP instance configuration mode, use the following
common:
user username password password
l username – Specifies the username to log in SMS gateway. The range is 1 to 64. When the
protocol type is specified as "UMS", "SGIP" or "CAS", the range is 1-31. When the protocol
type is specified as "XUANWU", the range is 1-6.
l password – Specifies the password for the user. The range is 1 to 64. When the protocol
type is specified as "UMS", "SGIP" or "CAS", the range is 1-31. When the protocol type is
specified as "XUANWU", the range is 1-6.
In SP instance configuration mode, use the following command to cancel the specificantion of
username and password:
no user username password password
To specify the template parameter of BEIKE SMS gateway, in the SP instance configuration
mode, use the following command:
template value
l value – Specifies the template parameter of BEIKE SMS gateway. The length is 1 to 64 char-
acters.
In SP instance configuration mode, use the following command to delete the template parameter
of BEIKE SMS gateway:
no template
You can specify the maximum number of SMS messages sent by the SMS gateway per hour or per
day. To configure the maximum SMS number, in the SP instance configuration mode, use the
l number – Specifies the maximum number of SMS messages per hour or per day. The value
range is 0 to 65535.
In the SP instance configuration mode, use the following command to cancel the maximum num-
ber:
n o {n um-p er-h o ur | n um-p er-day}
When this function is enabled, the ACC SMS gateway will add a sign code field when sending a
request to the ACC server, which will prevent the content of the SMS from being tampered with.
In the SP instance configuration mode, use the following command to enable the sending sign
code function:
sign enable
In the SP instance configuration mode, use the following command to disable the sending sign
code function:
no sign enable
To test if the device works properly, you can send a test message to a phone number. To send a
test message, in any mode, use the following command:
exec sms sp sp-name tunnel-name sendtest-message to phone-number [test-msg-con-
tent content ]
l content–Specifies the content of the test message. The default value is "This is a test mes-
sage, please don't feedback!". The range is 1 to 64 characters.
When the SP instance uses the UMS protocol type, users can specify the enterprise code
registered on the UMS platform, in the SP instance configuration mode, use the following com-
mand:
spcode spcode-number
In the SP instance configuration mode, use the following command to cancel the company code:
no spcode
If the protocol of SMS gateway that the SP instance is running is ALIYUNSMS, users must spe-
cify the AccessKeyId which will be used as the username for authentication between the device
and the SMS gateway of Alibaba Cloud . To specify the AccessKeyId, in the SP instance con-
figuration mode, use the following command:
accesskeyid word
l word - Specifies the AccessKeyId. The range is 1 to 64 characters. This parameter should be
the same with the template AccessKeyId applied in the SMS of Alibaba Cloud.
In the SP instance configuration mode, use the no accesskeyid command to cancel the specified
AccessKeyId.
If the protocol of SMS gateway that the SP instance is running is ALIYUNSMS, users must spe-
cify the AccessKeySecret which will be used as the password for authentication between the
device and the SMS gateway of Alibaba Cloud. To specify the AccessKeySecret, in the SP
instance configuration mode, use the following command:
accesskeysecret word
In the SP instance configuration mode, use the no accesskeysecret command to cancel the spe-
cified AccessKeySecret.
The SP instance needs to be bound to the SSL VPN tunnel to take effect. To specify the SMS
gateway instance, in the SSL VPN instance configuration mode, use the following command:
sms-auth enable servicer-provider sp-name
l sp-name – Specifies the name of the SP instance, which must be the created SP instance.
The value range is 1 to 31 characters.
The SP instance should be bound to SSL VPN tunnel so that it can take effect. By default, the
SMS gateway authentication is disabled. In the SSL VPN instance configuration mode, use the fol-
lowing command to enable the SMS gateway authentication function:
sms-auth enable sp-name
l sp-name – Specifies the SP instance name, which should be a created SP. The range is 1 to
31.
In the SSL VPN instance configuration mode, use the following command to disable the func-
tion:
sms-auth disable sp-name
If the protocol of the SP instance bound to SSL VPN tunnel is SGIP, USM or ACC, users can
specify a message sender name to display in the message content. If the protocol of the SP
instance bound to SSL VPN tunnel is ALIYUNSMS, users must specify the sign name applied in
the SMS of Alibaba Cloud to display in the message content. To specify the sender name or sign
name, in the SSL VPN instance configuration mode, use the following command:
l sender-name – Specifies the sender name. The range is 1 to 63 characters. The sign name
should be the same with the sign name applied in the SMS of Alibaba Cloud.
In the SP instance configuration mode, use the following command to cancel the specified sender
name or sign name:
no sms-auth sms-sender-name
Notes: Due to the limitation of UMS enterprise information platform, when the the
SMS gateway authentication is enabled, the sender name will be displayed on the
name of the UMS enterprise information platform.
If the protocol of the SP instance bound to SSL VPN tunnel is ALIYUNSMS, users must specify
the code of the SMS template applied in the SMS of Alibaba Cloud. To specify the template code,
in the SSL VPN instance configuration mode, use the following command:
sms-auth sms-msg-templatecode word
l word – Specifies the template code. The range is 1 to 30 characters. This parameter should
be the same with the template code applied in the SMS of Alibaba Cloud.
In the SP instance configuration mode, use the following command to cancel the specified tem-
plate code:
no sms-auth sms-msg-templatecode
To test if the device works properly, you can send a test message to a phone number. To send a
test message, in any mode, use the following command:
exec sms sp sp-name tunnel-name send test-message to phone-number
If the phone of the test number does not receive the test message, the system will record a log
with description about failure reason.
If the protocol of SMS gateway that the SP instance is running is CAS, you can ask the 12302
SMS service platform for the request type. To specify the request type, in the SP instance con-
figuration mode, use the following common:
post_type post_type
In the SP instance configuration mode, use the following command to cancel the request type:
no post_type
If the protocol of SMS gateway that the SP instance is running is CAS, you can ask the 12302
SMS service platform for the organization code. To specify the organization code, in the SP
instance configuration mode, use the following common:
orgcode orgcode
In the SP instance configuration mode, use the following command to cancel the organization
code:
no orgcode
If the protocol of SMS gateway that the SP instance is running is CAS, you can ask the 12302
SMS service platform for the SMS service type. To specify the SMS service type, in the SP
instance configuration mode, use the following common:
smstype smstype
In the SP instance configuration mode, use the following command to cancel the SMS service
type:
no smstype
If the protocol of SMS gateway that the SP instance is running is XUANWU, you must ask the
Xuanwu Technology SMS service platform for the trading code. To specify the trading code, in
the SP instance configuration mode, use the following common:
trading_code trading-code
In the SP instance configuration mode, use the following command to cancel the trading code:
no trading_code
If the protocol of SMS gateway that the SP instance is running is XUANWU, you must ask the
Xuanwu Technology SMS service platform for the channel. To specify the channel, in the SP
instance configuration mode, use the following common:
channel channel-value
In the SP instance configuration mode, use the following command to cancel the channel:
no channel
To view the SMS gateway configurations, use the following command in any mode:
show sms service-provider [sp-name]
l sp-name – Specifies the SP instance name. If not specified, the system will show all the SP
instance configurations that have already created.
To view the statistic information that indicates the SMS message is failed or succeed, use the fol-
lowing command in any mode:
show tunnel scvpn scvpn-name smsp-statistice [clear]
Email Authentication
Email Authentication means that when an SSL VPN user logs in by providing a "user-
name/password" or a "username/password+Digital Certificate", Hillstone device, through a mail
server, can automatically send a Email containing random verification code to the user after the
username and password is entered. The user must enter the random verification code received in
order to log into SSL VPN and access intranet resources.
Configurations of Email authentication on SSL VPN server include:
Users can receive the verification code via Email address configured on a local server or a Radius
server.
When receiving the verification code via Email address configured on a local server, to configure
the Email address, in the user configuration mode, use the following command:
email email-address
l email-address - Specifies the Email address used to receive the verification code. The range is
1 to 127 characters.
In the user configuration mode, use the no email command to cancel the specified Email address.
When receiving the verification code via Email address configured on a Radius server, users need
to configure the Email address on the Radius server. Take FreeRadius as an example:
Hillstone-user-admin-privilege=4294967295,
[email protected] ( Add the
attribute value of Hillstone-user-email in “etc/-
freeradius/users”.)
To specify the existing Email server which the Email address that used to send the verification
code is configured on, in the SSL VPN instance configuration mode, use the following command:
l smtp-server--name - Specifies the existing Email server which the Email address that used to
send the verification code is configured on,. The range is 1 to 31 characters.
In the SSL VPN instance configuration mode, use the no email-auth smtp-server command to can-
cel the specified Email server.
To specify the length of the Email verification code, in the SSL VPN instance configuration
mode, use the following command:
email-auth verification-code-length length
l length - Specifies the length of the Email verification code. The range is 4 to 8 characters. The
default value is 8.
In the SSL VPN instance configuration mode, use the no email-auth verification-code-length
command to restore the default value.
Each Email verification code has a period of validity. If the user neither types the code within the
period nor applies for a new code, SSL VPN server will disconnect the connection.
To the lifetime of the Email verification code, in the SSL VPN instance configuration mode, use
the following command:
email-auth expiration value
l value– Specifies the lifetime of the Email verification code. The range is 1 to 10 minutes.
The default value is 10.
In the SSL VPN instance configuration mode, use the no sms-auth expiration command to
restore the default value.
To specify a verification code sender name to display in the Email content, in the SSL VPN
instance configuration mode, use the following command:
email-auth sender-name name
l name - Specifies a verification code sender name to display in the Email content. The range is
1 to 63 characters. The default value is "hillstone". In order to prevent the mail from being
identified as spam, it's recommended that users to configure the sender name.
In the SSL VPN instance configuration mode, use the no email-auth sender-name command to
restore the default value.
To specify the Email verification content, in the SSL VPN instance configuration mode, use the
following command:
email-auth message-content content
l content - Specifies the Email verification content. The input must contain "$USERNAME"
(This parameter is used to get the username) and "$VRFYCODE" (This parameter is used to
get the verification code). The default content is "SCVPN user <$USERNAME> email veri-
fication code: $VRFYCODE. Do not reveal to anyone! If you did not request this, please
ignore it.".
In the SSL VPN instance configuration mode, use the no email-auth message-content command
to restore the default content.
Host Binding
Host binding is used to authenticate the hosts of SSL VPN clients. When you use the SSL VPN
client to log into the server, the client collects information about the PC running it, including
mainboard SN, hardware SN, CPU ID and BIOS SN, and uses MD5 algorithm to generate a 32-bit
l Candidate list: A table recording username and host ID as well as their mapping relationship.
l Binding list: A table of authorized host IDs and their usernames. You can add a pair of host
ID and its username to the table or allow login user to be added automatically. When a client
logs in, the SSL VPN server checks if the binding list has the host ID and matched username,
if so, the user passes authentication; if not, the SSL VPN communication will be dis-
connected.
Note: For hosts deployed on virtual platforms, the host ID might not be unique. Therefore, the
host binding function might not work properly.
By default, host binding is disabled. To enable host binding, in the SSL VPN instance con-
figuration mode, use the following command:
user-h o st-verify [allo w-multi-h o st] [allo w-sh ared-h o st] [auto -ap p ro ved-first-b in d]
l user-host-verify – Enables host binding. By default, a user is allowed to log into the server
using one single computer.
l auto-approved-first-bind – Specifies that the server automatically adds the username and
host ID to the binding list when the user logged in for the first time.
To disable host check, in the SSL VPN instance configuration mode, use the following command:
no user-host-verify
Approving a pair of host ID and user in the candidate list means to add it to the binding list. To
approve a candidate, in any mode, use the following command:
exec scvpn instance-name approve-binding user user-name host host-id
A super user can log into the server using any host. To change a user in candidate or binding list
to a super user, in any mode, use the following command:
exec scvp n instance-name no-host-binding-check user user-name
l user user-name – Specifies the name of user who will be changed to a super user. The length
is 1 to 95 characters.
If a host is considered as a shared host, users logging into the server from this host are not limited
by host binding authentication. To configure a host in candidate or binding list as a shared host, in
any mode, use the following command:
exec scvpn instance-name no-user-binding-check host host-id
l host host-id – Specifies the ID of the host which will be changed to a shared host. The host
must be in the candidate list or binding list.
Even when multi-host login is allowed for a user, by default, the system only records the first
login host-user pair into its binding list; other login pairs are in the candidate list. However, the
host-user binding pair number in the binding list can be changed.
To increase the pre-approved host-user binding pair number, in any mode, use the following com-
mands:
exec scvpn instance-name increase-host-binding user user-name number
l number – Specifies the number of pre-approved host-user binding pairs to be added to the
binding list for the user. The number ranges from 1 to 32. The total number of pre-approved
host-user binding pairs in a binding list ranges from 0 to 100.
To clear a binding list or an entry in the table, in any mode, use the following command:
exec scvpn instance-name clear-binding [{user user-name [host host-id] | host host-id }]
l user user-name – Specifies the name of user. If the next parameter is not defined, all hosts
bound to this user will be cleared.
l host host-id – Specifies the host ID of the host which will be cleared.
The binding list can be exported to (and imported from) an FTP server, TFTP server or USB
disk.
To export a binding list, in the execution mode, use the following command:
exp o rt scvp n user-h o st-b in din g to {ftp server ip-address [user user-name p asswo rd
password ] | tftp server ip-address | usb 0 | usb 1} [ file-name ]
l ftp server ip-address [user user-name password password] – Specifies that the table is expor-
ted to an FTP server. Type the IP address of FTP server. Type username and password if
needed; if the server supports anonymous login, skip user name and password.
l tftp server ip-address – Specifies that binding list is exported to a TFTP server. Type the IP
address of the TFTP server.
l usb0 | usb1 – Exports the binding list to the root directory of the USB disk.
To import a binding list, in the execution mode, use the following command:
imp o rt scvp n user-h o st-b in din g fro m {ftp server ip-address [user user-name p asswo rd pass-
word ] | tftp server ip-address | usb 0 | usb 1} [ file-name ]
l tftp server ip-address – Specifies that binding list is imported from a TFTP server. Type the
IP address of the TFTP server.
l usb0 | usb1 – Imports the binding list from the root directory of the USB disk.
Host Check
The host check function checks the security status of the hosts running SSL VPN clients, and
according to the checking result, the SSL VPN server will determine the security level for each
host and assign corresponding resource access permission based on their security level. The
checked factors are operating system, IE version, and the installation of some specific software.
Checked Factors
The factors to be checked by the SSL VPN server are displayed in the list below:
Factor Description
Operating system l Operating system, e.g., Windows 2000, Windows 2003, Windows
XP, Windows Vista, etc.
enabled
Other con- Whether the IE version and security level reach the specified requirements
figurations Whether the specified processes are running
Role Based Access Control (RBAC) means that the permission of the user is not determined by
his user name, but his role. The resources can be accessed by a user after the login is determined
by his corresponding role. So role is the bridge connecting the user and permission.
The SSL VPN host check function supports RBAC. And the concepts of primary role and guest
role are introduced in the host check procedure. The primary role determines which host check
profile (contains the host check contents and the security level,can be configured via WebUI) will
be applied to the user and what access permission can the user have if he passes the host check.
And the guest role determines the access permission for the users who failed in the host check.
For more information about role and host check, see the Table 7: Relationship between Host
Check Rule and Check Results.
The host check procedure is:
2. The SSL VPN server sends host check profile to the client.
3. The client checks the host security status according to the host check profile. If it failed in
the host check, the system will notify the check result.
5. If the host check succeeds, the server will assign access permissions based on the primary
role defined in the host check profiles; if the host check fails, the server will disconnect the
client and issue a prompt, or assign access permissions based on the guest role defined in
the host check profile.
The host check function also supports dynamic access permission control. On one side, when the
client's security status changes, the server will send a new host check profile to the client to make
it re-check; on the other side, the client can perform the security check periodically, e.g., if the
AV software is disabled and it is detected by the host check function, the assigned role to the cli-
ent may changed, and so does the access permission.
Host check profile defines the checking contents and security level. You can use WebUI or CLI
to create a host check profile, but the detailed settings of that profile can only be done in the
WebUI.
To create a host check profile, in the global configuration mode, use the following command:
scvpn host-check-profile hostcheck-profile-name
To delete a host check profile, in the global configuration mode, use the following command: no
scvpn host-check-profile hostcheck-profile-name.
To create a host check profile via WebUI, take the following steps:
2. On the Task tab in the right auxiliary pane, click Host Check to visit the Host Check page.
3. Click New.
l OS version: Specifies whether to check the OS version on the client host. Click one
of the following options:
l Must match - The OS version running on the client host must be the same as
the version specified here. Select the OS version and service pack version from
the drop-down lists respectively.
l At least - The OS version running on the client host should not be lower than
the version specified here. Select the OS version and service pack version from
the drop-down lists respectively.
l Patch X: Specifies the patch that must be installed on the client host. Type the patch
name into the box. Up to five patches can be specified.
l Lowest IE version: Specifies the lowest IE version in the Internet zone on the client
host. The IE version running on the client host should not be lower than the version
specified here.
l Lowest IE security level: Specifies the lowest IE security level on the client host. The
IE security level on the host should not be lower than the level specified here.
l Security center: Checks whether the security center is enabled on the client host.
l Auto update: Checks whether the Windows auto update function is enabled.
l Anti-Virus software: Checks if the client host has installed anti-virus software and oth-
ers, including:
l Monitor - The client host must enable the real-time monitor of the AV soft-
ware.
l Virus signature DB update - The client host must enable the signature database
online update function.
l Anti-Spyware software: Checks if the client host has installed anti-spyware and others,
including:
l Monitor - The client host must enable the real-time monitor of the anti-spy-
ware.
l Signature DB update - The client host must enable the signature database
online update function.
l Firewall: Checks if the client host has installed firewall and others, including:
l Installed - The client host must have the personal firewall installed.
l Monitor - The client host must enable the real-time monitor function of the per-
sonal firewall.
l Exist - The client host must have the key value. Type the value into the box.
l No exist - The client does not have the key value. Type the value into the box.
l File path name: File X: Checks whether the file exists. Up to five files can be con-
figured. The check types are:
l Exist - The client host must have the file. Type the file name into the box.
l No check - The client does not have the file. Type the file name into the box.
l Running process name: Process X: Checks whether the process is running. Up to five
processes can be configured. The check types are:
l Exist - The client host must have the process running. Type the process name
into the box.
l No exist - The client cannot have the process running. Type the process name
into the box.
l Installed service name: Checks whether the service is installed. Up to five services
can be configured. The check types are:
l Exist - The client host must have the service installed. Type the service name
into the box.
l Running service name: Checks whether the service is running. Up to five services can
be configured. The check types are:
l Exist - The client host must have the service running. Type the service name
into the box.
l No exist - The client host cannot have the service running. Type the service
name into the box.
To make the configured host check profile take effect, you must bind the profiles to the host
check rules. And then the host check function will work in the system.
To configure a host check rule, in the SSL VPN instance configuration mode, use the following
command:
host-check [ role role-name ] profile profile-name [ guest-role guestrole-name |redirect-
url url ] [ periodic-check period-time ]
l role role-name – Specifies a configured role in AAA server as the primary role for the user.
If this parameter is defined, the host check profile works for this role; if not, the profile is the
default profile and serves all users.
l profile profile-name – Specifies the name of the bound host check profile.
l guest-role guestrole-name – Specifies the guest role. If the client host fails in host
check, this parameter enables the user to own the privileges of this guest role; if this
l redirect-url url- Specifies the redirect URL. If the client host fails in host check, this
parameter enables the browser jump to the specified URL , and guide the user to down-
load the software required for host security detection and disconnect the client; if this
parameter is not defined, the client will be disconnected.
l periodic-check period-time – Specifies the auto-check period of the user. The value range is
5 to 1440 minutes. The default value is 30.
Repeat this command to add more host check rules. If a user matches multiple host check rules,
the server uses the first matched rule; in addition, if a user binds to multiple roles with matched
host check rules, the server uses the first matched rule.
Repeat this command to add more host check rules. If a user matches multiple host check rules,
the server uses the first matched rule; in addition, if a user binds to multiple roles with matched
host check rules, the server uses the first matched rule.
To cancel the host check rule setting, in the SSL VPN instance configuration mode, use the fol-
lowing command:no host-check [role role-name] profile profile-name [guest-role guestrole-
name|redirect-url url] [periodic-check period-time].
The table below lists the relationship between the policy rule and host check result.
Check Result
Rule Setting
Successful Failed
VPN networks with multiple ISPs (Internet Service Provider) can be greatly influenced by the
defects of narrow bandwidth and long delay in communication among different ISPs. To solve the
As shown in the figure above, SSL VPN client visits the egress interface of the server. Firstly, the
SSL VPN server needs to apply for different ISP services and enable interfaces for each of the
ISP services as the tunnel egress interfaces. When the SSL VPN clients with different ISP
accesses try to visit headquarters, the optimal path selection feature judges the ISP of the requir-
ing client, arranges the SSL VPN interfaces in the sequence of relevancy to the ISP, and then
provides the sequence of SSL VPN egress interface to the client for it to choose; if optimal path
detection on the client is enabled, the client selects a preferential link path by sending UDP probe
packets.
Repeat this command to specify more interfaces (up to two) as the tunnel egress interface.
To cancel the specified tunnel interface, in the SSL VPN instance configuration mode, use the fol-
lowing command:
no interface interface-name
l server-detect – Enables the optimal link detection of the device. When this parameter is not
configured, optimal link detection is enabled. By default, the client selects link spontaneously.
l A.B.C.D – Specifies the Internet interface IP address of DNAT device. The system allows
up to four IP addresses.
l https-port port-number – Specifies the HTTPS port number of the DNAT Internet inter-
face. The value range is 1 to 65535. The default value is 4433. To avoid collision with WebUI
HTTPS port number, you are not recommended to use port 443.
To cancel optimal link selection, in the SSL VPN instance configuration mode, use the command
no link-select.
SSL VPN optimal link selection also provides multi-link redundancy, which enables the server to
switch links when one link disconnects so as to guarantee the connection stability between server
and client (traffic flow may be interrupted during switching).
The system supports to redirect to the specified page to modify the password through the con-
figured URL through the client .
To configuring change password URL, in the SSL VPN instance configuration mode, use the fol-
lowing command:
change-password-urlurl
url – Specifies the URL address that needs to be redirected to modify the password. The ranges
is 1 to 255 characters.
To cancel the configuration,use the following command:
no change-password-url
The system supports tsupports to redirect to the specified page through the configured URL to
reset the password.
To configuring forgot password URL, in the SSL VPN instance configuration mode, use the fol-
lowing command:
forgot-password-urlurl
url – Specifies the URL address that needs to be redirected to reset the password. The ranges is
1 to 255 characters.
To cancel the configuration,use the following command:
no forgot-password-url
To avoid userinfo setting disoperation, you can export/import the user-list file from/to the SSL
VPN server. The system supports the import of user-list files in BOM-UTF-8 .txt format and in
BOM-UTF-8 .csv format. When the user-list file is imported, the system will carry out validity
test and complexity check of the user password. If the results turn out to be successful, the
Notes: Before importing the user-list file, please read carefully the annotations in
the above figures and fill in the user information according to the format.
To export a user-list file, in the execution configuration mode, use the following command:
export aaa user to {tftp server ip-address | ftp server ip-address [user user-name ]} file-name
To import a user-list file, in the execution configuration mode, use the following command:
import aaa user from {tftp server ip-address | ftp server ip-address [user user-name ]} file-name
l If a user in the imported user-list file already exists in the system, its user information in the
imported file will cover the original information in the system.
l If a user in the imported user-list file is new to the system, it and its user information will be
added to the system automatically.
Notes:
l In the imported user-list file, the "username" field should not contain slash/-
comma/double quotation marks/question mark/@; the "group" field should
not contain comma/double quotation marks/question mark.
l If the user-list is imported in the format of text file, special notice should be
given to the following points:
l If a parameter does not exist, use a half-width comma to replace it, etc.
"123123,,local".
l The sequence of the parameters in the first row is fixed and case-insens-
itive, etc. "Servername,userName,pAssWord".
l The file should not contain blank lines or gibberish lines, or it is not
able be imported successfully.
When you use the Radius authentication mode, you can set the access scope for the authenticated
users. For the authenticated users, the system obtains the information that regulates the access
scope of the users from the Radius server. Based on obtained information, the system will dynam-
ically create policy that is from the source address to the regulated access scope. For the users that
l user-name – Specifies the username of the user that you want to view.
To control the access by using the Radius server, you must define the following attributes in the
dictionary file:
After adding the attributes, specifying the values for the desired users, restarting the Radius
server, the system will then set the access scope for the users that are successfully authenticated
through the SSL VPN client. If you do not set the access scope for the users, they will not be lim-
ited.
General Configuration
The following configurations are shared by ZTNA and SSL VPN. The configurations take effect
on both ZTNA and SSL VPN.
To configure the SSL cipher suite, in the global configuration mode, use the following command:
secure-connect ssl-cipher-list string
To restore to the default SSL cipher suite list, in the global configuration mode, use the following
command:
no secure-connect ssl-cipher-list
By default, the local user is not allowed to change its password, but you can configure the device
to enable password changing right for local users if they pass SSL VPN or ZTNA authentication.
To enable/disable the right for local users to change the login password, in the password control
mode, use the following command:
l Enable: allow-pwd-change
l Disable: no allow-pwd-change
Tip: Secure Connect client of version 1.2.0.1106 and later allows the local users
to change password. Therefore, it's advised to use the latest Secure Connect cli-
ent.
When the server allows the client user to change password, the user can change login password
after passing SSL VPN or ZTNA authentication by the following steps:
2. Click Changing Password and type current password and new password into the cor-
responding boxes.
End users can download Secure Connect clients at the following addresses:
By default, the client download source on the device is the same with that on Hillstone Networks
Official Website. In the application scenario where you want end users to download and use spe-
cific Secure Connect clients, such as a client of the specified version or a customized client, you
can import the client into the system to overwrite the default download source on the device.
You can import Windows, macOS and Linux type clients.
To import the client file from a server, in the execution configuration mode, use the following
command:
import secure-connect client {windows | linux | macos} from { {ftp | ftps | sftp} server ip-
address [vrouter vrouter-name] [user user-name password password] | tftp server ip-address |
usb0 | usb1} file-name
l {ftp | ftps | sftp} server ip-address [vrouter vrouter-name] [user user-name password pass-
word] – Specifies that the client file is imported from an FTP/FTPS/SFTP server. Type the
IP address of the FTP/FTPS/SFTP server, virtual router name, username and password (skip
if the server can be logged in anonymously).
l tftp server ip-address - Specifies that the client file is imported from a TFTP server and spe-
cifies the TFTP server address.
l usb0 | usb1 - Specifies that the client file is imported from the USB disk plugged to USB0 or
USB1 port.
l file-name – Specifies the client file. The system will check the imported file. It is recom-
mended to import a client file downloaded from Hillstone Networks Official Website and
keep the file name unchanged. Otherwise, the import might fail.
You can delete the imported client file. After deletion, the download source will be restored to
the default source. In the execution configuration mode, use the following command to delete the
imported client file:
exec secure-connect client {windows | linux | macos} delete
In any mode, use the following command to view the information of Secure Connect clients
saved in the system:
show secure-connect client-info [windows | linux | macos]
You can customize the title and background of the download address on the device. The default
download page is shown as below:
To import the background picture from a server, in the execution configuration mode, use the fol-
lowing command:
import customize secure-connect download-webpage-background-picture from { {ftp | ftps |
sftp} server ip-address [vrouter vrouter-name] [user user-name password password] | tftp server
ip-address | usb0 | usb1} file-name
l {ftp | ftps | sftp} server ip-address [vrouter vrouter-name] [user user-name password pass-
word] – Specifies that the background picture is imported from an FTP/FTPS/SFTP server.
Type the IP address of the FTP/FTPS/SFTP server, virtual router name, username and pass-
word (skip if the server can be logged in anonymously).
l usb0 | usb1 - Specifies that the background picture is imported from the USB disk plugged to
USB0 or USB1 port.
l file-name – Specifies the picture name and picture format. The picture must be in PNG
format, the resolution is recommended at 1920x *1080x, and the picture size must be less
than 2MB.
To restore to the default background picture, in any mode, use the following command:
exec customize secure-connect download-webpage-background-picture default
The Windows type client checks and downloads the new version by using the configured upgrade
URL. The system has a default URL that links to the official upgrade server and this URL cannot
be deleted. To configure the upgrade URL, use the following command in the global con-
figuration mode:
no secure-connect update-url
l ip-address – To use the intranet server to check and download the new version, enter the
URL of the intranet server. You need to deploy the new version in this intranet server.
To use the default URL that links to the official upgrade server, use the following command in
the global configuration mode:
no secure-connect update-url
To view the default URL that links to the official upgrade server, use the following command in
any mode:
show secure-connect update-url
l When the client version is 1.4.4.1199 or below and the StoneOS version is
5.5R1 or above, it is recommended to uninstall the previous client and login
the Web page to re-install it.
l If you want the end users to download the Windows type client carried in the
system image, configure this command secure-connect update-url localhost.
l After you import a Windows type client file using the import secure-connect
client command, the secure-connect update-url configuration will not take
effect.
By default, the title of client download page is "Hilllstone Secure Connect". To customize the
title of client download page, in the global configuration mode, use the following command:
secure-connect download-web-page-title title
l title - Specifies the title of client download page. The length is 1 to 63 characters.
To delete the customized title of client download page, use the following command in the global
configuration mode. After the customized title is deleted, no title will be displayed on the client
download page.
no secure-connect download-web-page-title
To view the customized title of client download page, use the following command in any mode:
show secure-connect download-web-page-title
l Windows7/Windows8.1/Windows10/Windows11
l Windows server 2008 R2/Windows server 2012/Windows server 2012 R2/Windows server
2016/Windows server 2019/Windows server 2022
l Get interface and route information from the PC on which the client is running.
l Show the connecting status, statistics, interface information, and route information.
l Username/Password
l Username/Password + Digital Certificate (including USB Key certificate and file certificate)
l Digital Certificate (including USB Key certificate and file certificate) only
Take either of the following methods to download and install the Secure Connect Windows cli-
ent:
A virtual network adapter will be installed on your PC together with the Secure Connect Win-
dows client. It is used to transmit encrypted data between the device and the client.
After the Secure Connect Windows client is installed successfully, take the following steps to
start and log in the client:
1. Double-click the shortcut of Hillstone Secure Connect on your desktop, or from the Start
menu, choose All Programs > Hillstone Secure Connect > Hillstone Secure Connect. The
client main page is displayed.
Option Description
User name Enter the name of the login user. When Auth type is spe-
cified as "User name/Password" or "User name/Password
+ Digital certificate", the client user name and password
should be entered.
Remember After this option is enabled, you do not need to enter the
Password user's password at the next-time connection.
PIN Enter the PIN code of the USB Key when the authen-
tication type is "User name/Password + Digital cer-
tificate" or "Only Digital certificate".
Remember After this option is enabled, you do not need to enter the
PIN PIN at the next-time connection.
Stability Set whether to use TCP for data transmission. This func-
Optimization tion applies in the SSL VPN access scenario. It is dis-
abled by default. To use it, make sure the device side has
the TCP port configured. It is disabled by default.
3. After the connection information configuration is completed, click OK. The system will
save a login entry. If needed, you can repeat the previous steps to add more login entries.
4. On the client main page, the configured connection information has been saved as a login
entry. Click Connect. The client will attempt to establish a connection to the device.
5. If SMS authentication is enabled, type the authentication code into the box in the SMS
Auth dialog (as shown below) and click Verify. If you have not received the authentication
code within one minute, you can re-apply by clicking Resend.
6. If token authentication is enabled on the device side, the token Authentication dialog will
appear. You need to pass the token authentication.
l After passing the authentication, you have three chances to type the authentication
code. If you give incorrect authentication code three times in succession, the
l You have three chances to apply the authentication code, and the sending interval is
one minute. Re-applying authentication code will void the old code, thus you must
provide the latest code to pass the authentication.
7. If Email authentication is enabled on the device side, the Email Authentication dialog will
appear. You need to pass the Email authentication.
l After passing the authentication, you have three chances to type the authentication
code. If you give incorrect authentication code three times in succession, the con-
nection will be disconnected automatically.
l You have three chances to apply the authentication code, and the sending interval is
one minute. Re-applying authentication code will void the old code, thus you must
provide the latest code to pass the authentication.
Finishing the above steps, the client will connect to the server automatically. After the con-
nection has been established successfully, the icon ( ) will be displayed in the notification area.
And the encrypted communication between the client and server can be implemented now.
To edit or delete a login entry, place the cursor on the login entry. Click the icon to edit the
On the client main page, click the Statistics tab to view connection and statistics information.
Cipher suite The encryption algorithm and authentication algorithm used by SSL
VPN/ZTNA.
Connection Status
Status The current connecting state between the client and server.
IP Compress
Tunnel Packets
Tunnel Bytes
During
Compress rate
On the client main page, click the Interface tab to view interface information; click the Route tab
to view routing information.
Option Description
Interface name The name of the interface used to send encrypted data.
Interface type The type of the interface used to send encrypted data.
Interface status The status of the interface used to send encrypted data.
IP address type The IP address type of the interface used to send encrypted data.
IP address The IP address (allocated by the device) of the interface used to send
encrypted data.
Subnet mask The subnet mask of the interface used to send encrypted data.
Default Gateway The default gateway address of the interface used to send encrypted
data.
DNS Server The address of the DNS server used by the client.
address
WINS address The address of the WINS server used by the client.
On the client main page, click the Log tab to view log information.
Click and select "Log Level" to set the level of logs to be displayed.
Hillstone UKey certificate is the default certificate for the USB Key authentication. When authen-
ticating with Hillstone UKey certificate, the client will select the Hillstone UKey certificate auto-
matically and send it to the server, and the server will perform the authentication with the default
certificate. This authentication process is transparent to the authenticated clients, i.e., the client
need not to choose the certificate. If the third-party USB Key is used, you can set the third-party
3. Double click SelectUSBKey.exe, and the Select Default Certificate dialog is shown as
below:
Export: Exports the CSP Name of the USB Key in form of a registry file.
Update: Refreshes the certificate list.
Close: Closes the dialog.
4. Select the certificate you want from the certificate list, and then click Export.
Client Menu
Right-click the green icon of the client, the client menu appears. Descriptions of the menu items:
l Redirect URL: When the device end has a redirect URL configured, users can click this menu
to quickly jump to this URL address.
l Resource List: When accessing the SCVPN service, user can click this menu to open the
browser page displaying internal resources.
l Application Resource List: When a user successfully connects to a ZTNA service using the
Secure Connect client, this menu is displayed. After the user logs in, a ZTNA portal page will
be displayed. The user can click this menu to display the latest ZTNA portal page to view the
application resource access privilege after it is closed. The portal page displays the application
resources that the user is granted access and is not granted access. For those that the user is
not granted access, the user can attempt to acquire the access privilege by adjusting the access
terminal configurations. The application resources that the user is denied from accessing will
not be displayed on the portal page. If a user is denied from accessing any application
resources, the portal page displays a message indicating that no Web resources are available to
the user.
l Show Window: When Secure Connect client window is minimized, click this menu item to
display the client main page.
l Startup and automatic run: Enable this option to automatically run the client when the PC is
starting.
l Automatic reconnect: Enable this option to automatically reconnect to the SSL VPN/ZTNA
server when the connection is hung up.
l Automatic login: Enable this option to allow the specified user to login automatically when
the client is starting. Select the auto login user from the drop-down list.
l Minimize window: Enable this option to allow the client window to be minized.
To uninstall the client on your PC, from the Start menu, click All Programs > Hillstone Secure
Connect > Uninstall.
l CentOS 7.6/7.7/7.8/7.9/8.0/8.1/8.2/8.3/8.4/8.5
l Ubuntu 18.04/18.10/19.04/19.10/20.04/20.10/21.04
l Get interface and route information from the PC in which the client is running.
Take CentOS 7.6 as an example to introduce downloading and installing client, starting client and
establishing connection, upgrading and uninstalling client, the client GUI and menu. The client
configuration of other three Linux systems can refer to 64-bit Ubuntu Kylin16.04 desktop.
To download and install the Secure Connect Linux client, take the following steps:
2. After downloading the installation file, right-click the client icon and select Properties to go
to the properties page. In the properties page, click Permissions tab and check Allow execut-
ing files as program, then close it.
3. Double-click the client icon and follow the setup wizard to complete the installation.
After the Secure Connect Linux client is installed successfully, take the following steps to start
and log in the client:
Option Description
Remember After this option is enabled, you do not need to enter the
Password user's password at the next-time connection.
Stability Set whether to use TCP for data transmission. This func-
Optimization tion applies in the SSL VPN access scenario. It is dis-
abled by default. To use it, make sure the device side has
the TCP port configured. It is disabled by default.
Tips: If the password control function and the change password function are
enabled on the device, for example: the system will remind the user to change
the password before and after the password expires, and verify the historical
password to ensure that the new password is different from the previous pass-
word. For more information about password control function, refer to Con-
figuring a Local AAA Server.
3. After the connection information configuration is completed, click OK. The system will
save a login entry. If needed, you can repeat the previous steps to add more login entries.
4. On the client main page, the configured connection information has been saved as a login
entry. Click Connect. The client will attempt to establish a connection to the device.
5. If SMS authentication, email authentication or token authentication is enabled, enter the cor-
responding authentication code to complete the authentication.
To edit or delete a login entry, place the cursor on the login entry. Click the icon to edit the
On the client main page, click the Statistics tab to view connection and statistics information.
Cipher suite The encryption algorithm and authentication algorithm used by SSL
VPN/ZTNA.
Connection Status
Status The current connecting state between the client and server.
IP Compress
Tunnel Packets
Tunnel Bytes
During
Compress rate
On the client main page, click the Interface tab to view interface information; click the Route tab
to view routing information.
Interface name The name of the interface used to send encrypted data.
Interface type The type of the interface used to send encrypted data.
Interface status The status of the interface used to send encrypted data.
IP address type The IP address type of the interface used to send encrypted data.
IP address The IP address (allocated by the device) of the interface used to send
encrypted data.
Subnet mask The subnet mask of the interface used to send encrypted data.
Default Gateway The default gateway address of the interface used to send encrypted
data.
DNS Server The address of the DNS server used by the client.
address
WINS address The address of the WINS server used by the client.
On the client main page, click the Log tab to view log information.
Client Menu
Right-click the green icon of the client, the client menu appears. Descriptions of the menu items:
l Redirect URL: When the device end has a redirect URL configured, users can click this menu
to quickly jump to this URL address.
l Resource List: When accessing the SCVPN service, user can click this menu to open the
browser page displaying internal resources.
l Application Resource List: When a user successfully connects to a ZTNA service using the
Secure Connect client, this menu is displayed. After the user logs in, a ZTNA portal page will
be displayed. The user can click this menu to display the latest ZTNA portal page to view the
application resource access privilege after it is closed. The portal page displays the application
resources that the user is granted access and is not granted access. For those that the user is
not granted access, the user can attempt to acquire the access privilege by adjusting the access
terminal configurations. The application resources that the user is denied from accessing will
not be displayed on the portal page. If a user is denied from accessing any application
resources, the portal page displays a message indicating that no Web resources are available to
the user.
General Configuration
l Automatic reconnect: Enable this option to automatically reconnect to the SSL VPN/ZTNA
server when the connection is hung up.
l Automatic login: Enable this option to allow the specified user to login automatically when
the client is starting. Select the auto login user from the drop-down list.
l Minimize window: Enable this option to allow the client window to be minimized.
l Display the connection status with the device, traffic statistics, interface information, and rout-
ing information.
To download and install the Secure Connect Android client, take the following steps:
2. Use the Android device to scan the QR code of the Secure Connect Android client.
7. Click Install.
After installing the client successfully, the icon of the Secure Connect Android client appears in
the desktop as shown below.
After the Secure Connect Android client is installed successfully, take the following steps to start
and log in the client:
1. Double-click the Hillstone Secure Connect icon on the desktop and enter the client main
page.
2. In the "Home" tab, click "+" and enter the "Add Connection" page.
User name Enter the name of the login user. When authentication
method is specified as "User name/password" or "User
name/password + Digital Certificate", the client user
name and password should be entered.
PIN Enter the PIN code of the USB Key when the authen-
tication type is "User name/password + Digital cer-
tificate" or "Digital certificate".
Select Cer- Select the digital certificate that has been imported
Tips: If the password control function and the change password function are
enabled on the device, for example: the system will remind the user to change
the password before and after the password expires, and verify the historical
password to ensure that the new password is different from the previous pass-
3. After the connection information configuration is completed, click OK. The system will
save a login entry. If needed, you can repeat the previous steps to add more login entries.
4. On the client main page, the configured connection information has been saved as a login
entry. Select it and click Connection Status to start the connection.
After the client connects to the SSL VPN/ZTNA server, the encrypted communication between
the client and server can be implemented now.
Click "Information" tab on the client main page to view connection statistics, interface and rout-
ing information.
Option Description
Interface statistics:
Option Description
Interface Name The name of the interface used to send encrypted data.
Interface Type The type of the interface used to send encrypted data.
Interface State The status of the interface used to send encrypted data.
Physical Address The MAC address of the interface used to send encrypted data.
IP Address Type The IP address type of the interface used to send encrypted data.
Network The IP address (allocated by the device) of the interface used to send
Address encrypted data.
Subnet Mask The subnet mask of the interface used to send encrypted data.
Default Gateway The default gateway address of the interface used to send encrypted
data.
DNS Address The address of the DNS server used by the client.
l Simplify the tunnel creation process between the iOS device and the Hillstone device
l Display the connection status between the iOS device and the Hillstone device
You can take either of the following methods to download and install the Secure Connect iOS cli-
ent:
l Visit https://IP-Address:Port-Number on the device side. In the URL, IP-Address and Port-
Number refer to the IP address and HTTPS port number of the egress interface specified in
the SSL VPN/ZTNA instance
After the client is installed successfully, for the first time login, take the following steps to start
and log in the client:
2. In the "Home" tab, click "+" and enter the "Add Connection" page.
Enter the connection information.
Option Description
Tips: If the password control function and the change password function are
enabled on the device, for example: the system will remind the user to change
the password before and after the password expires, and verify the historical
password to ensure that the new password is different from the previous pass-
word. For more information about password control function, refer to Con-
figuring a Local AAA Server.
3. After the connection information configuration is completed, click OK. The system will
save a login entry. If needed, you can repeat the previous steps to add more login entries.
4. On the client main page, the configured connection information has been saved as a login
entry. Select it and click Connection Status to start the connection.
5. If SMS, token or email authentication is enabled, type the corresponding code to complete
the authentication.
6. After login, the iOS device will start the VPN configuration deployment automatically. In
the Would Like to Add VPN Configurations page, click Allow.
8. After the installation is complete, start Settings of the iOS device and navigate to VPN.
9. Select the configured connection name and click the Connect button.
10. After the client connects to the SSL VPN/ZTNA server, the encrypted communication
between the client and server can be implemented now.
Notes: For subsequent logins, you do not need to perform the VPN configuration
deployment steps. You can log in the client and start the connection directly.
Click "Information" tab on the client main page to view connection statistics, interface and rout-
ing information.
Option Description
Interface statistics:
Option Description
Interface Name The name of the interface used to send encrypted data.
Interface Type The type of the interface used to send encrypted data.
Interface State The status of the interface used to send encrypted data.
Physical Address The MAC address of the interface used to send encrypted data.
IP Address Type The IP address type of the interface used to send encrypted data.
Network The IP address (allocated by the device) of the interface used to send
Address encrypted data.
Subnet Mask The subnet mask of the interface used to send encrypted data.
Default Gateway The default gateway address of the interface used to send encrypted
data.
DNS Address The address of the DNS server used by the client.
To download and install the Secure Connect macOS client, take the following steps:
2. After downloading the installation file, double-click it. In the pop-up, drag the Secure Con-
nect macOS client to the Applications folder to perform the installation.
Notes: To open the installation file, you must have the administrator permission and
select Anywhere in System Preferences > Security & Privacy > General > Allow
apps downloaded from.
After the Secure Connect macOS client is installed successfully, take the following steps to start
and log in the client:
Remember After this option is selected, you do not need to enter the
Password user's password at the next-time connection.
Stability Set whether to use TCP for data transmission. This func-
Optimization tion applies in the SSL VPN access scenario. It is dis-
abled by default. To use it, make sure the device side has
the TCP port configured. It is disabled by default.
Tips: If the password control function and the change password function are
enabled on the device, for example: the system will remind the user to change
the password before and after the password expires, and verify the historical
password to ensure that the new password is different from the previous pass-
word. For more information about password control function, refer to Con-
figuring a Local AAA Server.
3. After the connection information configuration is completed, click OK. The system will
save a login entry. If needed, you can repeat the previous step to add more login entries.
4. On the client main page, the configured connection information has been saved as a login
entry. Click Connect. The client will attempt to establish a connection to the device.
Finishing the above steps, the client will connect to the server automatically.
To edit or delete a login entry, place the cursor on the login entry. Click the icon to edit the
On the client main page, click the Statistics tab to view connection and statistics information.
Cipher suite The encryption algorithm and authentication algorithm used by SSL
VPN/ZTNA.
Connection Status
Status The current connecting state between the client and server.
IP Compress
Tunnel Packets
Tunnel Bytes
During
Compress rate
On the client main page, click the Interface tab to view interface information; click the Route tab
to view routing information.
Interface name The name of the interface used to send encrypted data.
Interface type The type of the interface used to send encrypted data.
Interface status The status of the interface used to send encrypted data.
IP address type The IP address type of the interface used to send encrypted data.
IP address The IP address (allocated by the device) of the interface used to send
encrypted data.
Subnet mask The subnet mask of the interface used to send encrypted data.
Default Gateway The default gateway address of the interface used to send encrypted
data.
DNS Server The address of the DNS server used by the client.
address
WINS address The address of the WINS server used by the client.
On the client main page, click the Log tab to view log information.
Client Menu
Right-click the green icon of the client, the client menu appears. Descriptions of the menu items:
l Redirect URL: When the device end has a redirect URL configured, users can click this menu
to quickly jump to this URL address.
l Resource List: When accessing the SCVPN service, user can click this menu to open the
browser page displaying internal resources.
l Application Resource List: When a user successfully connects to a ZTNA service using the
Secure Connect client, this menu is displayed. After the user logs in, a ZTNA portal page will
be displayed. The user can click this menu to display the latest ZTNA portal page to view the
application resource access privilege after it is closed. The portal page displays the application
resources that the user is granted access and is not granted access. For those that the user is
not granted access, the user can attempt to acquire the access privilege by adjusting the access
terminal configurations. The application resources that the user is denied from accessing will
not be displayed on the portal page. If a user is denied from accessing any application
resources, the portal page displays a message indicating that no Web resources are available to
the user.
General Configuration
l Automatic reconnect: Enable this option to automatically reconnect to the SSL VPN/ZTNA
server when the connection is hung up.
l Automatic login: Enable this option to allow the specified user to login automatically when
the client is starting. Select the auto login user from the drop-down list.
l Minimize window: Enable this option to allow the client window to be minimized.
To uninstall the client, right-click the client icon and select Move to Trash from the drop-down-
list.
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config)# access-address-p o o l p o o l1
hostname(config-address-pool)# dn s 20.1.1.1
hostname(config-address-pool)# exit
Step 3: Configure URL redirect in an SSL VPN instance. To limit the access range of the remote
user, use the no split-tunnel-route 0.0.0.0/0 command
hostname(config-tunnel-scvpn)# access-address-p o o l p o o l1
hostname(config-tunnel-scvpn)# exit
hostname(config)#
Step 4: Create a tunnel interface and bind the SSL VPN instance to it (the tunnel interface and
SSL VPN address pool must be in the same network segment)
hostname(config)# zo n e VPN
hostname(config-zone-VPN)# exit
hostname(config-if-tun1)# zo n e VPN
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Step 6: In the web browser of PC1, visit https://6.6.6.1:4433, and in the login page, type test
and test into the Username and Password boxes respectively. After the authentication, download
and install Secure Connect.
Step 7: After logging in with Secure Connect, the page will be redirected to the OA system
authentication page
Requirement
l Requirement 2: The goal is to control the access by encrypting the data by SSL VPN with the
USB Key authentication method. As long as the UKey of the client supports standard Win-
dows SDK (Certificate Store Functions) and the stored certificate is valid, the client can log
in. Hillstone UKey is used as the example.
Example 1
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)#exit
hostname(config)# access-address-p o o l p o o l1
hostname(config-address-pool)# dn s 20.1.1.1
hostname(config)#
Step 3: Configure an SSL VPN instance. By default, the system adds the split-tunnel-route
0.0.0.0/0 route entry. To limit the access range of the remote user, use the no split-tunnel-route
0.0.0.0/0 command
hostname(config-tunnel-scvpn)# access-address-p o o l p o o l1
hostname(config-tunnel-scvpn)# exit
hostname(config)#
Step 4: Create a tunnel interface and bind the SSL VPN instance to it (the tunnel interface and
SSL VPN address pool should be in the same IP address segment)
hostname(config)# zo n e VPN
hostname(config-zone-VPN)#
hostname(config-if-tun1)# zo n e VPN
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Step 6: Type https://6.6.6.1:4433 in the Web browser to visit the login page. Enter username
user1 and password 123456. When you log in successfully, download the SSL VPN client Hill-
stone Secure Connect
Step 7: After logging in, PC1 can access resources in the trust zone through SSL VPN
Example 2
On the basis of Example 1, add USB Key authentication feature. This feature requires that
user’s UKey should support standard Windows SDK (Certificate Store Functions) with a legal
certificate in it. This example uses the Hillstone UKey.
Preparations
Configuration Steps
hostname(config-trust-domain)# exit
hostname(config)#
hostname(config-tunnel-scvpn)# exit
hostname(config)#
hostname# imp o rt p ki sto n e cacert fro m tftp server 192.168.1.2 certn ew.cer
3. In the SSL VPN client Login dialog, fill each option as below and click Login:
l Server: 6.6.6.1
l Port: 4433
l Username: user1
Requirements
The Hillstone device works as the SSL VPN server for an enterprise. The goal is to meet the fol-
lowing requirements:
l Resources in the software network segment (10.1.1.0/24) can be accessed by role sw only;
resources in the downloading network segment (10.1.2.0/24) can be accessed by role dl; and
resources in public network segment (10.1.3.0/24) can be accessed by all users.
l Perform host security check to the clients and control the resources access based on the
check results.
hostname(config-aaa-server)# user p c1
hostname(config-user)# exit
hostname(config-aaa-server)# user p c2
hostname(config-user)# exit
hostname(config-aaa-server)# user p c3
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config)# ro le sw
hostname(config)# ro le dl
hostname(config-role-mapping)# exit
hostname(config)#
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config-profile_scvpn)# exit
hostname(config)#
To configure a host check profile on WebUI interface, take the following steps:
1. On the Navigation pane, click Configure > Network > SSL VPN to visit the SSL VPN
page.
2. On the Task tab in the right auxiliary pane, click Host Check to visit the Host Check page.
3. Click New. In the Host Checking Configuration dialog, configure the options as below:
Basic
l Name: dl-security-check
l Patch 1: KB958215
Advanced
4. Click OK to save the settings and return to the SSL VPN page.
Basic
l Name: sw-security-check
l Patch 1: KB921883
Advanced
hostname(config)# access-address-p o o l p o o l1
hostname(config-address-pool)# dn s 10.1.1.1
hostname(config-address-pool)# exit
hostname(config)#
hostname(config-tunnel-scvpn)# access-address-p o o l p o o l1
hostname(config-tunnel-scvpn)# exit
hostname(config)#
Step 7: Create a tunnel interface and bind the SSL VPN instance to it (the tunnel interface and
SSL VPN address pool should be in the same IP address segment)
hostname(config)# zo n e VPN
hostname(config-zone-VPN)# exit
hostname(config-if-tun1)# zo n e VPN
hostname(config-if-tun1)# ip address11.1.1.1/24
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config-addr)# ip 10.1.1.0/24
hostname(config-addr)# exit
hostname(config)# address dl
hostname(config-addr)# ip 10.1.2.0/24
hostname(config-addr)# exit
hostname(config-addr)# ip 10.1.3.0/24
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr sw
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# ro le sw
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr dl
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# ro le dl
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
After finishing the above configurations, when the client connects the server, the server will
check the host based on the configured host check profile, and assign the corresponding access
right according to the check result. The following list shows the relationship between the host
check rule and the access right.
Requirement 1
A company uses a Hillstone device as the SSL VPN server which has two accesses to the Inter-
net, ISP1 (ethernet0/1, IP: 202.2.3.1/24) and ISP2 (ethernet0/3, IP: 196.1.2.3/24). The goal is
that the PC (IP: 64.2.3.1) can access the headquarters server (IP: 10.1.1.2) using optimal path
detection feature.
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/3)# zo n e un trust
hostname(config-if-eth0/3)# exit
hostname(config)#
hostname(config)# access-address-p o o l p o o l1
hostname(config-address-pool)# dn s 10.1.1.1
hostname(config-address-pool)# exit
hostname(config)#
Step 4: Configure an SSL VPN instance (with optimal path detection). To limit the access range
of the remote user, use the no split-tunnel-route 0.0.0.0/0 command
hostname(config-tunnel-scvpn)# access-address-p o o l p o o l1
hostname(config-tunnel-scvpn)# exit
hostname(config)#
Step 5: Create a tunnel interface and bind the SSL VPN instance to it (the tunnel interface and
SSL VPN address pool should be in the same IP address segment)
hostname(config-if-tun1)# zo n e un trust
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config-addr)# ip 10.1.1.0/24
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
hostname(config-isp)# exit
hostname(config)#
When the client PC initiates a connection request to SSL VPN server using ISP2, the server iden-
tifies that the IP addresses of SSL VPN egress interface ethernet0/1 and client PC both belong to
ISP1, so it assigns an IP of egress interface with higher priority to the client and the PC can access
the headquarters server using ISP1.
Configuration steps of using client to choose optimal path have slight differences with steps of
using the server in choosing optimal path, and the different steps are:
Step 4: Configure an SSL VPN instance (with optimal path detection feature)
……
……
A company uses a Hillstone device as the SSL VPN server in its headquarters and uses a DNAT
device with two Internet accesses (ISP1: 202.2.3.1/24 and ISP2: 196.1.2.3/24). The goal for the
client PC (64.2.3.1) is to access to the headquarters server (IP: 10.1.1.2) using optimal path detec-
tion feature.
You have two configuration methods to meet this requirement, which are:
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e dmz
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config)# access-address-p o o l p o o l1
hostname(config-address-pool)# dn s 10.1.1.1
hostname(config-address-pool)#win s 10.1.1.2
hostname(config-address-pool)# exit
hostname(config)#
hostname(config-tunnel-scvpn)# p o o l p o o l1
hostname(config-tunnel-scvpn)# exit
hostname(config)#
Step 5: Create a tunnel interface and bind the SSL VPN instance to it (the tunnel interface and
SSL VPN address pool should be in the same IP address segment)
hostname(config-if-tun1)# zo n e un trust
hostname(config-if-tun1)# exit
hostname(config)#
Step 6: Configure a policy rule (a rule from dmz zone to trust zone)
hostname(config-addr)# ip 10.1.1.0/24
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
hostname(config-isp)# exit
hostname(config)#
When the client PC initiates a connection request to SSL VPN server using ISP2, the DNAT
device translates the client address (196.1.2.3:3367) to SSL VPN server’s egress interface
address (192.168.1.2:4433). Then, the server identifies that the IP addresses of client PC and
DNAT Internet interface (202.2.3.1/24) belong to ISP1, so it assigns the IP of DNAT’s Inter-
net interface which has higher priority to the client and the PC can access the headquarters server
using ISP1.
Configuration steps of using client to choose optimal path have slight differences with steps of
using the server in choosing optimal path, and the different steps are:
Step 4: Configure an SSL VPN instance (with optimal path detection feature)
……
……
Overview
Dial-up VPN means the center device has only one VPN tunnel established to allow multiple
remote clients accessing to it through this VPN tunnel. The remote clients should be configured
with same IKE VPN settings with the center device for data protection. Meanwhile, the center
device uses pre-shared key or certificate to authenticate the clients and establishes VPN tunnel to
communicate with the clients.
l Policy-based VPN: When you use policy-based VPN, the VPN tunnel is introduced into a
policy rule so that traffic which conforms to the rule can be transferred through the VPN tun-
nel. Policy-based VPN supports accessing from branch to center, but does not support access-
ing from center to branch or hub-and-spoke.
l Route-based VPN: When you use route-based VPN, the VPN tunnel binds to a tunnel inter-
face and the next hop of static route is the tunnel interface.
l Configuring P1 proposal
l Configuring P2 proposal
l Configuring a tunnel
P1 proposal is an IKE security proposal applied to ISAKMP gateway in the SA Phase 1. Con-
figuring an IKE proposal includes settings of authentication, encryption algorithm, DH group and
SA lifetime.
Creating a P1 Proposal
To create a P1 proposal (IKE security proposal), in the global configuration mode, use the fol-
lowing command:
isakmp proposal p1-name
l p1-name – Type a name for the new P1 proposal. This command leads you into the P1 pro-
posal configuration mode in which you can configure the proposal.
To delete the specified P1 proposal, use the command no isakmp proposal p1-name.
Authentication defined here refers to IKE identity authentication which is used to confirm the
identities of the two communicating peers. Authentication can be performed in two ways: pre-
shared key authentication and digital certificate authentication. For pre-shared key authentication,
community is used to generate a private key as the input.
To specify the authentication method of IKE security proposal, in the P1 proposal configuration
mode, use the following command:
auth en ticatio n {p re-sh are | rsa-sig | dsa-sig | gm-de }
l pre-share – Specifies that the pre-shared key is used for authentication. This is the default
method.
The following five encryption algorithms are supported: 3DES, DES, 128-bit AES, 192-bit AES
and 256-bit AES.
To specify the encryption algorithm of IKE security proposal, in the P1 proposal configuration
mode, use the following command:
en cryp tio n {3des | des | aes | aes-192 | aes-256}
l 3des – Specifies to use 3DES encryption algorithm. The private key length is 192 bits. This
is the default encryption method.
l des – Specifies to use DES encryption algorithm. The private key length is 64 bits.
l aes – Specifies to use AES encryption algorithm. The private key length is 128 bits.
l aes-192 – Specifies to use 192-bit AES encryption algorithm. The private key length is 192
bits.
l aes-256 – Specifies to use 256-bit AES encryption algorithm. The private key length is 256
bits.
The following authentication algorithms are supported: MD5, SHA-1 and SHA-2 (including SHA-
256, SHA-384 and SHA-512).
To specify a Hash algorithm for IKE security proposal, in the P1 proposal configuration mode,
use the following command:
hash {md5 | sha | sha256 | sha384 | sha512}
l sha – Specifies to use SHA-1 for authentication. The hash value length is 160 bits. This is
the default value.
l sha256 – Specifies to use SHA-256 for authentication. The hash value length is 256 bits.
l sha384 – Specifies to use SHA-384 for authentication. The hash value length is 384 bits.
l sha512 – Specifies to use SHA-512 for authentication. The hash value length is 512 bits.
Selecting a DH Group
Diffie-Hellman (DH) is designed to establish a shared secret key. DH group determines the
length of the element generating keys for DH exchange. The strength of keys is partially decided
by the robustness of the DH group. The longer the key element is, the more secure the generated
key will be, and the more difficult it will be to decrypt it. The selection of DH group is important,
because the DH Group is only determined in the Phase 1 SA negotiation, and the Phase 2 nego-
tiation will not re-select a DH group. The two phases use the same DH group; therefore the selec-
tion of DH group will have an impact on the keys generated for all sessions. During negotiation,
the two ISAKMP gateways should select the same DH group, i.e., the length of key element
should be equal. If the DH groups do not match, the negotiation will fail.
To select a DH group, in the P1 proposal configuration mode, use the following command:
gro up {1 | 2 | 5 | 14 | 15 |16 | 19 | 20 | 21 | 24}
l 2 - Selects DH Group2. The key length is 1024 bits (MODP Group). This is the default
value.
l 24 - Selects DH Group24. The key length is 2048 bits (MODP Group with 256-bit Prime
Order Subgroup).
To restore the DH group to the default, in the P1 proposal configuration mode, use the command
no group.
Specifying a SA Lifetime
Phase 1 SA negotiation has a default lifetime. When ISAKMP SA lifetime is due, it sends an SA
P1 deleting message to the peer, and then initiates a new SA negotiation.
To specify a SA lifetime, in the P1 proposal configuration mode, use the following command:
lifetime time-value
l time-value – Specifies the lifetime of SA Phase 1. The value range is 300 to 86400 seconds.
The default value is 86400.
To create an ISAKMP gateway, in the global configuration mode, use the following command:
isakmp peer peer-name
This command leads you into ISAKMP gateway configuration mode in which you can configure
the parameters of the gateway.
To delete the specified ISAKMP gateway, in the global configuration mode, use the command no
isakmp peer peer-name.
l server-name – Specifies the name of AAA server. All types of AAA server can be ISAKMP
gateway, including local, Radius, AD, LDAP and TACACS+ server.
To delete the specified AAA server, in the ISAKMP gateway configuration mode, use the fol-
lowing command:
no aaa-server
To bind an interface to the ISAKMP gateway, in the ISAKMP gateway configuration mode, use
the following command:
interface interface-name
There are two IKE negotiation modes: Main and Aggressive. The main mode is the default mode.
The aggressive mode cannot protect identity. You have no choice but use the aggressive mode in
l main – The main mode can provide ID protection and it is the default mode.
To specify a type for the peer device, in the ISAKMP gateway configuration mode, use the fol-
lowing command:
type usergroup
To cancel the specified type of a peer device, in the ISAKMP gateway configuration mode, use
the following command:
no type
Specifying P1 Proposal
To specify P1 proposal for the ISAKMP gateway, in the ISAKMP gateway configuration mode,
use the following command:
isakmp -p ro p o sal p 1-p ro p o sal1[p 1-p ro p o sal2] [p 1-p ro p o sal3] [p 1-p ro p o sal4]
l p1-proposal1 – Specifies the name of P1 proposal. You are allowed to specify up to four P1
proposals for an ISAKMP gateway’s peer.
If you decide to use pre-shared key to authenticate, to specify a pre-shared key for ISAKMP gate-
way, in the ISAKMP gateway configuration mode, use the following command:
If digital certificate is used to authenticate, you need to specify a PKI trust domain for the cer-
tificate. To specify a PKI trust domain, in the ISAKMP gateway configuration mode, use the fol-
lowing command:
trust-domain string
To cancel the specified PKI trust domain, use the command no trust-domain.
Tip: For more information about PKI trust domain, see “PKI” in the “User
Authentication”
Configuring a Local ID
To specify the type of local identifier (FQDN and Asn1dn are supported), in the ISAKMP gate-
way configuration mode, use the following command:
lo cal-id {fqdn string | asn 1dn [ string ] | u-fqdn string }
l fqdn string – Specifies to use FQDN type ID. string is the identifier.
l asn1dn [string] – Specifies to use Asn1dn type ID, which can only be used in authentication
with certificate. string is the identifier which can me omitted because the system can get the
identifier from certificate.
l u-fqdn string – Specifies to use U-FQDN type ID (email address type, like user-
[email protected]).
To specify the connection type of the ISAKMP gateway, in the ISAKMP gateway configuration
mode, use the following command:
co n n ectio n -typ e {b idirectio n al | in itiato r-o n ly | resp o n der-o n ly}
l bidirectional – Specifies that the ISAKMP gateway serves as both initiation and responder.
This is the default value.
l initiator-only – Specifies that the ISAKMP gateway serves only as the initiator.
l responder-only – Specifies that the ISAKMP gateway serves only as the responder.
As dial-up VPN cannot be initiator, this parameter can only be set to bidirectional or
responder-only.
To restore to the default value, use the command no connection-type.
If an NAT device exists in an IPsec or IKE VPN tunnel and it translates VPN data, NAT tra-
versal function must be enabled. This function is disabled by default.
To enable NAT traversal, in the ISAKMP configuration mode, use the following command:
nat-traversal
To disable NAT traversal, use the command no nat-traversal.
Configuring DPD
DPD (Dead Peer Detection) is used to detect the status of peer device. When this function is
enabled, the responder initiates a DPD request if it cannot receive packets from the peer for a
long time. This function is disabled by default.
To enable DPD, in the ISAKMP gateway configuration mode, use the following command:
dpd
To configure DPD, in the ISAKMP gateway configuration mode, use the following command:
dp d [in terval seconds ] [retry times ]
l retry times – Specifies the times of sending DPD request to the peer. The device will
keep sending discovery requests to the peer until it reaches the specified times of DPD
retires. If the device does not receive response from the peer after the retry times, it will
determine that the peer ISAKMP gateway is down. The value range is 1 to 10 times. The
default value is 3.
Specifying Description
To add description for an ISAKMP gateway, in the ISAKMP gateway configuration mode, use the
following command:
description string
Configuring P2 Proposal
Phase 2 proposal is used during SA Phase 2 negotiation. This section describes how to configure
P2 proposal, including protocol type, encryption algorithm, hash algorithm and lifetime.
Creating P2 Proposal
To create P2 proposal (IPsec proposal), in the global configuration mode, use the following com-
mand:
ip sec p ro p o sal p2-name
l p2-name – Specifies a name for the P2 proposal. This command leads you into P2 proposal
configuration mode where you make all relative configurations.
To delete the specified IPsec proposal, use the command no ipsec proposal p2-name.
l 3des - Specifies to use 3DES encryption algorithm. The key size is 192 bits and it is the
default algorithm in the system.
l aes-192 - Specifies to use 192bit AES. The key size is 192 bits.
l aes-256 - Specifies to use 256bit AES. The key size is 256 bits.
l null - No encryption.
l md5 - Specifies to use MD5 for authentication. The hash value is 128 bits.
l sha - Specifies to use SHA-1 for authentication. The hash value is 160 bits. This is the default
value.
l sha256 - Specifies to use SHA-256 for authentication. The hash value is 256 bits.
l sha384 - Specifies to use SHA-384 for authentication. The hash value is 384 bits.
l sha512 - Specifies to use SHA-512 for authentication. The hash value is 512 bits.
Configuring PFS
PFS (Perfect Forward Secrecy) is used to ensure that the compromise of one private key in the
private key set will not result in the decryption of the entire set of private keys. When PFS is
enabled, a private key can be used once and the reference for generating it can only be used once.
In this way, when one private key is compromised and revealed, it will not affect the whole
encrypted communication.
To enable PFS, in the P2 proposal configuration mode, use the following command:
gro up {n o p fs | 1 | 2 | 5 | 14 | 15 |16| 19 | 20 | 21 | 24}
l 24 - Selects DH Group24. The key length is 2048 bits (MODP Group with 256-bit Prime
Order Subgroup).
Specifying a Lifetime/Lifesize
Lifetime of P2 proposal can be measured by time or by traffic volume. When SA reaches the spe-
cified traffic flow amount or runs out of time, this SA expires and new negotiation should be ini-
tiated.
To specify a lifetime of P2 proposal, in the P2 proposal configuration mode, use the following
commands:
lifetime seconds
l seconds – Specifies to use time period to measure lifetime. The default value is 28800
seconds.
lifesize kilobytes
n o lifesize
Configuring a Tunnel
This section describes how to configure an IPsec tunnel, including specifying a protocol type,
ISAKMP gateway, IKE proposal, ID, fragmentation and anti-replay.
To create an IKE tunnel, in the global configuration mode, use the following command:
tunnel ipsec tunnel-name auto
This command leads you into the IKE tunnel configuration mode where you configure all IKE
tunnel related configurations.
To delete the specified IKE tunnel, in the global configuration mode, use the command no tunnel
ipsec tunnel-name auto.
To specify the operation mode (tunnel mode) for the IKE tunnel, in the IKE tunnel con-
figuration mode, use the following command:
mode tunnel
To restore to the default mode, use the command no mode.
To specify an ISAKMP gateway, in the IKE tunnel configuration mode, use the following com-
mand:
Specifying P2 Proposal
To specify P2 proposal for the IKE tunnel, in the IKE tunnel configuration mode, use the fol-
lowing command:
ipsec-proposal p2-name
Specify a Phase 2 ID
To specify a Phase 2 ID of the IKE IPsec tunnel, in the IKE tunnel configuration mode, use the
following command:
id {auto | local ip-address/mask remote ip-address/mask service service-name}
l remote ip-address/mask – Specifies the Phase 2 ID of the peer device. As the dial-up VPN
initiator has no stable ID, the Phase 2 ID should be 0.0.0.0/0.
You can configure up to 256 phase 2 IDs and use them to establish multiple IKE tunnels. If the
center device has been configured with multiple phase 2 IDs, it can negotiate with a remote client
to create multiple IPSec SAs. After auto routing is enabled, a route entry whose destination IP
address is the local ID of the peer and next hop is the egress IP address of the remote client as a
gateway would be added to the routing table automatically once an IPSec SA had been created.
When an IPSec SA is deleted, the corresponding route entry will be deleted from the routing
table.
When the remote ID of phase 2 ID configured in the center device contains the local ID of phase
2 ID configured in the remote client, an IPSec SA can still be successfully created between the
center device and the remote client after this feature is configured. To enable this feature, in the
IKE tunnel configuration mode, use the following command:
dialup-control-id
To restore to the default setting, use the command no dialup-control-id.
A central device can negotiate with a remote client to create multiple IPSec SAs. At the same
time, encapsulated packets will be filtered when out-acrossing the IKE tunnel interface and be bal-
anced when in-acrossing the IKE tunnel interface. If a packet's source IP address, destination IP
address, and service type match a phase 2 ID, the packet will be processed by the central device;
otherwise, the packet will be discarded.
To configure IPSec balancing and filtering, in the IKE tunnel configuration mode, use the fol-
lowing command:
check-id
To restore to the default setting, use the command no check-id.
The device has two methods of establishing SA: auto and traffic intrigued.
l When it is auto, the device checks SA status every 60 seconds and initiates negotiation
request when SA is not established
l When it is traffic intrigued, the tunnel sends negotiation requests only when there is traffic
passing through the tunnel.
Notes: Auto connection works only when the peer IP is static and the local device
is initiator.
To allow IP packet fragmentation on the forwarding device, in the IKE configuration mode, use
the following command:
df-b it {co p y | clear | set}
l copy – Copies the IP packet DF options from the sender directly. This is the default value.
Configuring Anti-replay
Anti-replay is used to prevent hackers from attacking the device by resending the sniffed packets,
i.e., the receiver rejects the obsolete or repeated packets. By default, this function is disabled.
To configure anti-replay for IKE IPsec tunnel, in the IKE IPsec tunnel configuration mode, use
the following command:
anti-replay {32 | 64 | 128 | 256 | 512}
The commit bit function is used to avoid packet loss and time difference in the tunnel. Con-
figuring this function on this end makes the corresponding peer to use it. However, commit bit
may slow the responding speed.
To configure commit bit, in the IKE IPsec tunnel configuration mode, use the command: respon-
der-set-commit
To disallow the responder to set commit bit, use the command: no responder-set-commit
Idle time length is the longest time the tunnel can exist without traffic passing through. When the
time is over, SA will be cleared.
To configure the idle time, in the IKE IPsec tunnel configuration mode, use the following com-
mand:
idle-time time-value
l time-value – Specifies a time value. The value range is 120 to 3000 seconds.
To disable idle time, in the IKE IPsec tunnel configuration mode, use the following command:
no idle-time
Specifying Description
To give some description of an IKE tunnel, in the IKE tunnel configuration mode, use the fol-
lowing command:
description string
For route-based dial-up VPN or PnPVPN, the IP addresses of the branches are always changing,
causing operational inconvenience for the administrator if manual routing is used. The auto rout-
ing function allows the device to automatically add routing entries from center to branch to avoid
complexity of manual routing.
By default the auto routing is disabled. To enable it, in the ISAKMP gateway configuration mode,
use the following command:
gen erate-ro ute
For dial-up VPN, the Phase 2 local ID of auto generated route is its destination address and its
next hop is the peer IP address. For information about how to configure a Phase 2 ID, see Specify
a Phase 2 ID.
For PnPVPN, the destination address of auto generated route is the AND operation result of the
start IP and netmask of client DHCP address pool (dhcp-pool-addr-start & dhcp-pool-netmask),
and the next hop address is the peer IP address. For information about client DHCP address pool
and netmask, see Configuring a PnPVPN Server Using CLI.
To disable auto routing, use the command no generate-route.
Notes:
l When the branch office accesses the center, you can use the command no
reverse-route to disable reverse routing and return all the reverse data
from the original paths on the center device. The command line will show the
number of imported users.
This section describes how to create a dial-up user, including user account and pre-shared key.
To create a dial-up user account, in the global configuration mode, use the following command:
user user-name aaa-server local
This command leads you into the user configuration mode, where you can specify the user IKE
ID with the following command:
ike-id {fqdn string | asn 1dn string }
l fqdn string – Specifies to use IKE ID of FQDN type. string is the ID content.
l asn1dn string – Specifies to use ID of Asn1dn type, which only applies to authentication
with certificate.
To cancel the IKE ID setting, in the user configuration mode, use the following command:
no ike-id
The center device generates a pre-shared key using dial-up user’s username and IKE ID.
To generate a pre-shared key, in any mode, use the following command:
exec generate-user-key rootkey pre-share-key userid string
Requirement
Two dial-up clients (user1 and user 2) and the center device (2.2.2.1/24) consist of a dial-up
VPN. The goal is to allow two computers (PC1 and PC2) accessing the center device protected
server (Server1) using secured VPN tunnel.
hostname(config-zone-vpnzone)# exit
hostname(config-if-eth0/0)# zo n e vp n zo n e
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/5)# zo n e trust
hostname(config-if-eth0/5)# exit
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)# exit
userkey: tAFW+48HcAr15+NcISm6TZJZzGU =
hostname# co n figure
hostname(config)#
hostname(config-isakmp-proposal)# exit
hostname(config-ipsec-proposal)# exit
hostname(config-isakmp-peer)# mo de aggressive
hostname(config-isakmp-peer)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# dst-zo n e vp n zo n e
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-zo n e vp n zo n e
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
hostname(config-if-eth0/0)# zo n e un trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/5)# zo n e trust
hostname(config-if-eth0/5)# exit
hostname(config)#
hostname(config-isakmp-proposal)# exit
hostname(config-ipsec-proposal)# exit
hostname(config-isakmp-peer)# mo de aggressive
hostname(config-isakmp-peer)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
hostname(config-if-eth0/0)# zo n e un trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/5)# zo n e trust
hostname(config-if-eth0/5)# exit
hostname(config)#
hostname(config-isakmp-proposal)# exit
hostname(config-ipsec-proposal)#
hostname(config-isakmp-peer)# mo de aggressive
hostname(config-isakmp-peer)#
hostname(config-isakmp-peer)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Overview
IPsec VPN requires sophisticated operation skills and high maintenance cost. To relieve network
administrators from the heavy work, Hillstone provides an easy-to-use VPN technology -
PnPVPN (Plug-and-Play VPN). PnPVPN consists of two parts: PnPVPN Server and PnPVPN Cli-
ent.
l PnPVPN Client: Normally deployed in the branch offices and controlled remotely by
headquarters engineer. With simple configuration, such as client ID, password and server IP
settings, the PnPVPN Client can receive configuration commands (e.g. DNS, WINS, DHCP
address pool, etc.) from the PnPVPN Server.
Notes: The Hillstone device can serve as both a PnPVPN Server and a PnPVPN Cli-
ent. When working as a PnPVPN Server, the maximum number of VPN instances
and the supported client number of each device may vary from hardware platforms.
PnPVPN Workflow
The workflow for PnPVPN is as follows:
1. The client initiates a connection request and sends its own ID and password to the server.
2. The server validates the ID and password when it receives the client request. If the client
passes the authentication, the server issues configuration information including DHCP
4. The client PC automatically gains an IP address, IP mask, gateway address and other net-
work parameters and connects itself to the VPN.
Some of IPsec VPN commands also apply to PnPVPN configuration; in addition, PnPVPN has its
unique configuration commands. The commands below in this chapter cannot complete PnPVPN
command set alone; for complete PnPVPN settings, see Example of Configuring PnPVPN.
After the client successfully negotiates with the server, the server will distribute some network
setting parameters, including DNS server address, WINS server address, tunnel route, DHCP
address pool address/netmask and gateway address, to the client. These parameters are configured
in the corresponding user configuration modes, but some of them (settings of DNS, WINS and
tunnel route) can also be set in IKE tunnel configuration. When there is a conflict between the
two settings, configuration in the user configuration mode has higher priority over settings in the
IKE tunnel configuration mode.
To enter the local user configuration mode, use the following command:
aaa-server aaa-server-name type local (this command leads you to the local AAA server con-
figuration mode)
user user-name
The commands below complete a user’s network settings. Among these parameters, settings of
DHCP address pool, DHCP netmask and gateway are required while others are optional.
dns A.B.C.D [ A.B.C.D ] [ A.B.C.D ] [ A.B.C.D ]
l A.B.C.D – Specifies the IP address of DNS server. You can define one primary DNS
server and up to three alternative servers. To cancel the DNS server setting, use the command
no dns.
l A.B.C.D – Specifies the IP address of WINS server. You can define one primary DNS server
and one alternative WINS server. To cancel the WINS server setting, use the command no
wins.
split-tunnel-route A.B.C.D/Mask
l start-ipaddr end-ipaddr – Specifies the start IP address and end IP address of DHCP address
pool. To cancel the setting, use the command no dhcp-pool-address.
dhcp-pool-netmask A.B.C.D
l A.B.C.D – Specifies the network mask of DHCP address pool. To cancel the setting, use the
command no dhcp-pool-netmask.
dhcp-pool-gateway A.B.C.D
l A.B.C.D – Specifies the gateway address of DHCP address pool. This address is the Intranet
interface’s IP address of PnPVPN client and serves as the PC gateway address. As the IP
address of PC is defined by the DHCP address pool and subnet mask, the gateway address and
DHCP address pool should be in the same network segment. To cancel the setting, use the
command no dhcp-pool-gateway.
If all or most of the clients use unified DNS, WINS or tunnel route setting, you can configure
these parameters in the IKE tunnel mode to reduce workload of making settings in the user con-
figuration mode.
To enter the IKE tunnel configuration mode, use the following command:
tunnel ipsec tunnel-name auto
To configure the DNS, WINS and tunnel route, use the following commands:
dns A.B.C.D [ A.B.C.D ] [ A.B.C.D ] [ A.B.C.D ]
l A.B.C.D – Specifies the IP address of WINS server. You can define one primary WINS
server and one alternative server. To cancel the setting, use the command no wins.
split-tunnel-route A.B.C.D/Mask
l A.B.C.D/Mask – Specifies the tunnel route. A.B.C.D is the IP address prefix and Mask is
the digit of subnet mask. To clear the settings, use the command no split-tunnel-
route.
When PnPVPN Server uses Radius server to authenticate, you are required to configure the wild-
card of ISAKMP gateway’s peer. The wildcard is used to match username and determine the
PnPVPN Server of the accessed client (a Hillstone device can serve as multiple PnPVPN serv-
ers), so that the Radius server for user’s authentication can be identified.
To configure the wildcard of ISAKMP gateway’s peer, in the ISAKMP gateway configuration
mode, use the following command:
peer-id fqdn wildcard string
l wildcard string – Specifies the wildcard ID which is usually the client’s domain name, like
abc.com.
To allow the sub-networks in the branch office accessing the server, you can configure IP address
and enable SNAT rule for the client tunnel interface on the PnPVPN server end. If SR Series plat-
Notes: When this function is working, the PnPVPN server cannot access its clients.
To configure tunnel interface of PnPVPN client, in the local user configuration mode, use the fol-
lowing command:
tunnel-ip-address A.B.C.D [ snat ]
l A.B.C.D – Specifies the IP address of client tunnel interface, but it should not conflict
with the existing IP addresses in the client.
l snat – Enables SNAT rule. In default, the SNAT rule on tunnel interface is disabled.
To cancel tunnel interface of PnPVPN client, in the local user configuration mode, use the fol-
lowing command:
no tunnel-ip-address
This section describes how to configure PnPVPN server in the WebUI, including:
l Configuring a User
l Configuring a Policy
Notes: PnPVPN support two types of authentication server: Local and Radius.
Configuring a User
2. In the Local User dialog, select a local server from the Local server drop-down list. Click
New, and select User from the drop-down list.
3. On the Basic tab in the User Configuration dialog, type a name for the user into the Name
box.
4. Specify a password for the user in the Password box and confirm it in the Confirm password
box.
5. Click FQDN in the IKE ID section, and type the ID's content into the text box below. The
ID is used in authentication.
6. Click the PnPVPN tab and fill out options in the tab. If the user does not use configured
DNS, WINS or tunnel route of the tunnel, these options must be configured.
This section introduces how to configure IKE VPN, including how to configure P1 proposal, P2
proposal, VPN peer and tunnel.
To configure P1 proposal, take the following steps:
2. Click New. In the Phase1 Proposal Configuration dialog, finish the options as described
below:
3. You can fill out other options or leave them blank as needed.
1. On the Navigation pane, click Configure > Network > IPsec VPN to visit the IPsec VPN
page and click the Phase2 Proposal tab.
2. Click New.
3. In the Phase2 Proposal Configuration dialog, type the name of P2 proposal into the Pro-
posal name box.
4. Select a protocol, HASH algorithm, encryption algorithm and PFS group as needed.
5. You can fill out other options or use the default value as needed.
1. On the Navigation pane, click Configure > Network > IPsec VPN to visit the IPsec VPN
page. Click the VPN Peer List tab.
l Type: Select user group, and select the AAA server you need from the AAA server
drop-down list.
5. Click Generate. In the Generate user key dialog, type the IKE ID into the IKE ID box, and
then click Generate. The generated user key will be displayed in the Generate result box.
PnPVPN client uses this key as the password to authenticate the login users. Then, close
the dialog.
Notes: If Radius server works as the authentication server, wildcard must be con-
figured.
1. On the Navigation pane, click Configure > Network > IPsec VPN to visit the IPsec VPN
page.
l P2 proposal: Select a proposal you need from the drop down list.
5. Click the Advanced tab. In this tab, configure DNS, WINS and tunnel route (tunnel users
will use the DNS and WINS defined here).
Notes: If Radius server works as the authentication server, wildcard must be con-
figured.
1. On the Navigation pane, click Configure > Network > Network to visit the Network page.
2. Click New on the upper-left of the interface list, and select Tunnel Interface from the drop-
down list. Configure the following options:
l Zone: Select a zone for the interface from the drop-down list.
Configuring a Route
To allow hosts in the server network to access the client network, you need to add static routes.
To add a route, take the following steps:
1. On the Navigation pane, click Configure > Network > Routing to visit the Routing page.
3. In the Destination Route Configuration dialog, type the IP address for the route into the
Destination box.
4. Type the corresponding subnet mask into the Subnet mask box.
5. To specify the type of next hop, click Interface, and select the VPN tunnel interface from
the Interface drop-down list below, then type the gateway address for the tunnel's peer into
the optional box below.
Configuring a Policy
Policies are configured according to the network deployment (on the Navigation pane, click Con-
figure > Security > Policy to visit the Policy page).
This section describes how to configure a PnPVPN Client. To configure a PnPVPN, take the fol-
lowing steps:
2. On the Task tab in the right auxiliary pane, click PnPVPN Client.
l Server address 1: Type the IP address of PnPVPN Server into the box. This option is
required.
l Server address 2: Type the IP address of PnPVPN Server into the box. The server
address 1 and the server address 2 can be the same or different. It is optional.
l Auto save: Select Enable to auto save the DHCP and WINS information released by
PnPVPN Server.
l Outgoing IF 2: Specifies the interface connecting to the Internet. The IF1 and the
IF2 can be the same or different. It is optional.
Requirement
A company has its headquarters in Beijing and two branch offices in Shanghai and Guangzhou, all
three of which have Internet access. Its business demands that a VPN network should be estab-
lished. The goals of the network are:
l Employees in Guangzhou Branch and Shanghai Branch can access the headquarters database
via VPN;
l All the employees (including the Beijing headquarters and two branches) can share resources
via VPN.
PnPVPN is a practical and easy-to-use method to meet the requirements above. Take the fol-
lowing steps:
l The headquarters uses a next-genration firewall as the PnPVPN Server and chooses the local
authentication.
l Each of the two branches has a next-generation firewall, working as the PnPVPN Client and
accessing the headquarters VPN network.
l To share resource among all employees in the three places, you should configure policies and
routes.
l The headquarters LAN network segment is 192.168.1.0/24 and it uses ethernet0/0 of trust
zone to access the network.
l The headquarters server group network segment is 192.168.200.0/24 and it uses ethernet0/2
of trust zone to access the network.
l Shanghai Branch uses an interface with IP 61.170.6.208 to access the Internet, and Guang-
zhou Branch uses an interface with IP 59.42.6.208 to access the Internet.
l PnPVPN Server will allocate the network segment 192.168.2.0/2 to Shanghai Branch and
192.168.3.0/24 to Guangzhou Branch.
Configuration Steps
Take the steps below to configure the server end and client ends:
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-aaa-server)# user sh an gh ai
hostname(config-user)# exit
hostname(config)#
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-isakmp-proposal)# gro up 2
hostname(config-isakmp-proposal)# exit
hostname(config-ipsec-proposal)# gro up 2
hostname(config-ipsec-proposal)# exit
hostname(config-isakmp-peer)# mo de aggressive
hostname(config-isakmp-peer)# exit
hostname(config-tunnel-ipsec-auto)# mo de tun n el
hostname(config-tunnel-ipsec-auto)# id auto
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)#
userkey: kyZAKmLWCc5Nz75fseDiM2r+4Vg=
userkey: SdqhY4+dPThTtpipW2hs2OMB5Ps=
hostname(config)# zo n e VPN
hostname(config-zone-VPN)# exit
hostname(config-if-tun1)# zo n e VPN
hostname(config-if-tun1)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
1. On the Navigation pane, click Configure > Network > IPsec VPN to visit the IPsec VPN
page.
2. On the Task tab in the right auxiliary pane, click PnPVPN Client. In the PnPVPN Con-
figuration dialog, configure the options as below:
l ID: shanghai
l Password: kyZAKmLWCc5Nz75fseDiM2r+4Vg=
1. On the Navigation pane, click Configure > Network > IPsec VPN to visit the IPsec VPN
page.
2. On the Task tab in the right auxiliary pane, click PnPVPN Client. In the PnPVPN Con-
figuration dialog, configure the options as below:
l ID: guangzhou
Overview
Generic Routing Encapsulation (GRE) is a tunneling protocol that can encapsulate a wide variety
of network layer protocols inside virtual point-to-point links over an Internet Protocol inter-
network. StoneOS uses GRE over IPSEC feature to ensure the security of routing information
passing between networks.
Configuring GRE
This section introduces how to configure GRE, including:
Configurations for GRE tunnel should be performed in the GRE tunnel configuration mode.
To enter the GRE tunnel configuration mode, in the global configuration mode, use the following
command:
tunnel gre gre-tunnel-name
l gre-tunnel-name – Specifies the name of the new GRE tunnel. This command creates a new
GRE tunnel; if the tunnel with this name exists, you will enter its configuration mode dir-
ectly.
l Destination address
l Egress interface
l Verification key
To define a source interface for the GRE tunnel, in the GRE tunnel configuration mode, use the
following command:
source { interface interface-name [ ipv6 ] |{ ipv4-address | ipv6-address } }
l interface interface-name [ipv6] – Specifies the name of interface as the source interface of
the GRE tunnel.
To cancel source address setting, in the GRE tunnel configuration mode, use the following com-
mand:
no source
To specify a destination address for the GRE tunnel, in the GRE tunnel configuration mode, use
the following command:
destination{ipv4-address | ipv6-address}
l ipv4-address | ipv6-address– Specifies the destination address for the GRE tunnel.
To cancel the specified destination address, in the GRE tunnel configuration mode, use the fol-
lowing command:
no destination
To specify the egress interface for the GRE tunnel, in the GER tunnel configuration mode, use
the following command:
interface interface-name
To cancel the egress interface setting, in the GRE tunnel configuration mode, use the following
command:
no interface
When using GRE over IPsec function, you need to specify an IPsec VPN tunnel to encapsulate
the tunnel data.
To specify an IPsec VPN tunnel, in the GRE tunnel configuration mode, use the following com-
mand:
next-tunnel ipsec tunnel-name
To cancel the specified IPsec VPN tunnel, in the GRE tunnel configuration mode, use the fol-
lowing command:
no next-tunnel
By specifying a verification key, the system encapsulates and verifies the packets. When the key
carried by the packets is the same as the key configured in the receiver, the packets will be decryp-
ted. If the keys are not the same, the packets will be dropped. To specify the verification key, in
the GRE tunnel configuration mode, use the following command:
key key-value
l key-value – Specifies the verification key. The value ranges from 0 to 4294967295.
A well configured GRE tunnel needs to be bound to the tunnel interface so that it can work.
To bind the GRE tunnel to a tunnel interface, in the tunnel interface configuration mode, use the
following command:
tun n el gre gre-tunnel-name [gw ip-address ]
l gre-tunnel-name – Specifies the name of the well configured GRE tunnel which binds to the
interface.
l gw ip-address – This parameter is required when multiple tunnels bind to this interface. It
defines the next hop (the peer tunnel interface) IP address of GRE tunnel. The default value
is 0.0.0.0.
To cancel the binding of GRE tunnel to the tunnel interface, in the tunnel interface configuration
mode, use the following command:
no tunnel gre gre-tunnel-name
To view GRE tunnel setting information, in any mode, use the following command:
show tunnel gre [ gre-tunnel-name ]
The headquarters (Center) and the branch office (Branch1) are connected by the Internet using
OSPF protocol. The connection uses GRE over IPsec technique to ensure secure data trans-
mission between the center and the branch. The figure below is the topology of the network lay-
out.
Configuration Steps
Configurations for this requirement include settings on the headquarters device (Center) and on
the branch office device (Branch1).
The following commands are the necessary settings of IPsec VPN and OSPF.
Step 1: Configure the interface
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# exit
hostname(config)#exit
hostname(config-isakmp-proposal)# exit
hostname(config-ipsec-proposal)# exit
hostname(config-isakmp-peer)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)#
hostname(config-tunnel-gre)# exit
hostname(config)#
hostname(config-if-tun1)# zo n e trust
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config-vrouter)# ro uter o sp f
hostname(config-router)# exit
hostname(config-vrouter)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config-isakmp-proposal)# exit
hostname(config-ipsec-proposal)# exit
hostname(config-isakmp-peer)# exit
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)#
hostname(config-tunnel-gre)# exit
hostname(config-if-tun1)# zo n e trust
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config-vrouter)# ro uter o sp f
hostname(config-router)# exit
hostname(config-vrouter)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
Overview
L2TP (Layer Two Tunneling Protocol) is a VPDN technique that allows dial-up users to launch
VPN connection from L2TP clients or L2TP access concentrators (LAC), and connect to a L2TP
network server (LNS) via PPP. After the connection has been established successfully, LNS will
assign IP addresses to legal users and permit them to access the private network.
The device acts as a LNS or a LAC client in the L2TP tunnel network. When the device acts as a
LNS, the device accepts connections from L2TP clients or LACs, implements authentication and
authorization, and assigns IP addresses, DNS server addresses and WINS server addresses to legal
users. When the device acts as a LAC client, the device actively initiates PPP negotiation and
authentication. After the tunnel is established, the traffic will be transmitted to the opposite end
through the L2TP VPN tunnel.
Note: For more information about L2TP, see RFC2661.
The figure above shows the network topology where the L2TP client directly sends requests for
connection to the LNS, and attempts to establish a tunnel. Any PC installed with Windows
2000/2003/XP/Vista or Linux system can serve as the L2TP client.
1. Configure a L2TP client, and make sure IPsec encryption is enabled. For more information
about how to configure IPsec encryption on a client, see the user manual of your OS; for
the configuration on Windows XP, see Example of Configuring L2TP over IPsec.
When using the L2TP client on Windows systems, keep in mind that:
l The L2TP client on Windows systems only supports the IKE negotiation of the main mode;
therefore, you need to configure the IKE negotiation mode to main mode on LNS. For the
supported mode of the L2TP client on other systems, see related user manual.
Configuring LNS
The configurations of LNS include:
l Restarting a tunnel
LNS assigns the IP addresses in the address pool to users. After the client has established a con-
nection to LNS successfully, LNS will choose an IP address along with other related parameters
(such as DNS server address, WINS server address, etc) from the address pool, and assigns them
to the client. To create a L2TP address pool, in the global configuration mode, use the following
command:
l2tp pool pool-name
The above command creates the address pool with the specified name, and leads you to the L2TP
address pool configuration mode; if the specified name exists, the system will directly enter the
L2TP address pool configuration mode.
To delete the specified L2TP address pool, in the global configuration mode, use the following
command:
no l2tp pool pool-name
You can configure the following options in the L2TP address pool configuration mode:
l Reserved IP address
l IP binding rules
To configure an IP range of the address pool, in the L2TP address pool configuration mode, use
the following command:
address start-ip end-ip
Some IP addresses can be reserved in the reserved address pool, and they will not be allocated.
When allocating IP addresses in the address pool, LNS will reserve the addresses that are occu-
pied by other services (such as gateway, FTP server, etc.). To configure the reserved IP address,
in the L2TP address pool configuration mode, use the following command:
exclude-address start-ip end-ip
To delete the specified reserved IP address, in the L2TP address pool configuration mode, use
the following command:
no exclude address
L2TP provides fixed IP addresses by creating and implementing IP binding rules that consist of
static IP binding rule and role-IP binding rule. The static IP binding rule binds the client user to a
fixed IP address in the address pool. Once the client has established a connection successfully,
the system will assign the binding IP to the client. The rule-IP binding rule binds the role to a spe-
cific IP range in the address pool. Once the client has established a connection successfully, the
system will assign an IP address within the IP range to the client.
When LNS is allocating IP addresses in the address pool, the system will check the IP binding
rule and determine how to assign IP addresses for the client based on the specific checking order
below:
1. Check if the client is configured with any static IP binding rule. If so, assign the binding IP
address to the client; otherwise, further check other configurations. Note if the binding IP
address is in use, the user will be unable to log in when it is in use.
2. Check if the client is configured with any role-IP binding rule. If so, assign an IP address
within the binding IP range to the client; otherwise, the user will be unable to log in.
Notes: The IP addresses defined in the static IP binding rule and role-IP binding
rule should not be overlapped.
To configure a static IP binding rule, in the L2TP address pool configuration mode, use the fol-
lowing command:
ip-binding user user-name ip-address
l ip-address – Specifies the binding IP address which must be an available address in the
address pool.
To configure a role-IP binding rule, in the L2TP address pool configuration mode, use the fol-
lowing command:
ip-binding role role-name ip_range start-ip end-ip
l ip_range start-ip end-ip – Specifies the start IP and end IP of the binding IP range which
must be an available IP range in the address pool.
To cancel the specified role-IP binding rule, in the L2TP address pool configuration mode, use
the following command:
no ip-binding role role-name
One user can be bound to one or multiple roles, and different roles can be configured with dif-
ferent role-IP binding rules. For the user that is bound to multiple roles and the roles are also con-
figured with their corresponding role-IP binding rules, the system will query the role-IP binding
rules in turn, and assign an IP address based on the first matched rule. By default the system will
put the new rule at the bottom of all rules. You can move a role-IP binding rule to change its
matching sequence. To move a role-IP binding rule, in the L2TP address pool configuration
mode, use the following command:
move role-name1 { before role-name2 | after role-name2 | top | bottom }
l role –name1 – Specifies the name of the role-IP binding rule that will be moved.
l before role-name2 – Moves the role-IP binding rule before the rule named role-name2.
l after role-name2 – Moves the role-IP binding rule after the rule named role-name2.
l bottom – Moves the role-IP binding rule to the bottom of all the rules.
To create an L2TP instance, in the global configuration mode, use the following command:
tunnel l2tp tunnel-name
After executing the above command, the system will create the L2TP instance with the specified
name, and enter the L2TP instance configuration mode; if the specified name exists, the system
will directly enter the L2TP instance configuration mode.
To delete the specified L2TP instance, in the global configuration mode, use the following com-
mand:
no tunnel l2tp tunnel-name
You can configure the following options in the L2TP instance configuration mode:
l IP address assignment
l Address pool
l DNS server
l WINS server
l AAA server
l Hello interval
l Tunnel authentication
l AVP hidden
l Multi-Logon
LNS assigns IP addresses and DNS server address to users using the address pool or the local
AAA server. By default, LNS assigns IP addresses by address pool.
To specify the IP address assignment method for the L2TP instance, use the following command
in the L2TP instance configuration mode:
assign -clien t-ip fro m { p o o l | aaa-server }
l pool – Uses the address pool to assign IP addresses and DNS server address.
l aaa-server – Uses the AAA server to assign IP addresses and DNS server address.
To specify a L2TP address pool for the L2TP instance, in the L2TP instance configuration mode,
use the following command:
pool pool-name
To cancel the specified L2TP address pool, in the L2TP instance configuration mode, use the fol-
lowing command:
no pool
To configure a DNS server, in the L2TP instance configuration mode, use the following com-
mand:
dn s address1 [ address2 ]
l address1 – Specifies the IP address of the DNS server. You can configure up to two DNS
servers.
To cancel the specified DNS server, in the L2TP instance configuration mode, use the following
command:
no dns
To configure a WINS server, in the L2TP instance configuration mode, use the following com-
mand:
wins address1 [ address2 ]
l address1 – Specifies the IP address of the WINS server. You can configure up to two WINS
servers.
To cancel the specified WINS server, in the L2TP instance configuration mode, use the following
command:
no wins
To specify the egress interface of the tunnel, in the L2TP instance configuration mode, use the
following command:
To cancel the specified egress interface, in the L2TP instance configuration mode, use the fol-
lowing command:
no interface
The AAA server specified here is used by LNS for L2TP authentication. To specify an AAA
server, in the L2TP instance configuration mode, use the following command:
aaa-server aaa-server-name [ domain domain-name [ keep-domain-name ]]
l domain domain-name – Specifies the domain name of the AAA server to distinguish dif-
ferent AAA servers.
l keep-domain-name – After specifying this parameter, the AAA server uses the full name of
the user, including the username and the domain name, to perform the authentication.
To cancel the specified AAA server, in the L2TP instance configuration mode, use the following
command:
n o aaa-server aaa-server-name [do main domain-name ]
When establishing a connection with the client or LAC, the LNS can adopt either PAP or CHAP
for authentication during the PPP negotiation. To specify a PPP authentication protocol, in the
L2TP instance configuration mode, use the following command:
p p p -auth {p ap | ch ap | an y}
l chap – Uses CHAP for PPP authentication. This is the default option.
To restore to the default authentication configuration, in the L2TP instance configuration mode,
use the following command:
no ppp-auth
L2TP uses Hello packets to detect if the tunnel is connected. LNS sends Hello packets to the
L2TP client or LAC regularly, and will drop the connection to the tunnel if no response is
returned after the specified period. To specify the Hello interval, in the L2TP instance con-
figuration mode, use the following command:
keepalive time
l time – Specifies the Hello interval. The value range is 60 to 1800 seconds. The default value
is 60.
To restore to the default Hello interval, in the L2TP instance configuration mode, use the fol-
lowing command:
no keepalive
Before establishing a tunnel, you can enable tunnel authentication to assure the security of the
connection. The tunnel authentication can be launched by either LNS or LAC. The tunnel cannot
be established unless the both ends are authenticated, i.e., the secret strings of the two ends are
consistent. By default tunnel authentication is disabled. To enable the function, in the L2TP
instance configuration mode, use the following command:
tun n el-auth en ticatio n
To disable tunnel authentication, in the L2TP instance configuration mode, use the following
command:
no tunnel-authentication
To specify the secret string that is used for LNS tunnel authentication, in the L2TP instance con-
figuration mode, use the following command:
secret secret-string [ peer-name name ]
l secret-string – Specifies the secret string for the tunnel. The value range is 30 to 60 char-
acters.
l peer-name name – Specifies the host name of LAC. If multiple LACs are connected to LNS,
you can specify different secret strings for different LACs by this parameter. If this parameter
is not specified, the system will use the same secret string for all the LACs.
To cancel the specified secret string, in the L2TP instance configuration mode, use the following
command: no secret secret-string [peer-name name]
To specify the local name of LNS, in the L2TP instance configuration mode, use the following
command:
local-name name
l name – Specifies the name of the LNS tunnel. The value range is 6 to 30 characters. The
default name is LNS.
To restore to the default value, in the L2TP instance configuration mode, use the following com-
mand:
no local-name
L2TP uses AVP (attribute value pair) to transfer and negotiate some L2TP parameters and attrib-
utes. By default AVP is transferred in plain text. For data security consideration, you can encrypt
the data by the secret string to hide the AVP during the transmission. To enable or disable AVP
hidden, in the L2TP instance configuration mode, use the following commands:
Notes: To enable AVP hidden, you must configure the secret string for the tunnel.
To configure the window size for the data transmitted through the tunnel, in the L2TP instance
configuration mode, use the following command:
tunnel-receive-window window-size
l window-size – Specifies the window size. The value range is 4 to 800 packets. The default
value is 8.
To restore to the default value, in the L2TP instance configuration mode, use the following com-
mand:
no tunnel-receive-window
Configuring Multi-Logon
Multi-logon function allows a user to log on and be authenticated on different hosts sim-
ultaneously. This function is enabled by default. To enable or disable multi-logon, in the L2TP
instance configuration mode, use the following commands:
l Enable: allow-multi-logon
l Disable: no allow-multi-logon
By default the client IP is selected from the address pool, and allocated by LNS automatically. If
this function is enabled, you can specify an IP address. However, this IP address must belong to
the specified address pool, and be consistent with the username and role. If the specified IP is
already in use, the system will not allow the user to log on. To enable or disable user-specified cli-
ent IP, in the L2TP instance configuration mode, use the following commands:
l Disable: no accept-client-ip
L2TP uses two types of packets: control packets and data packets. The control packets are
responsible for establishing, maintaining and clearing the L2TP tunnel, while the data packets are
responsible for transmitting data. The transmission of data packets is not reliable. Even if data is
lost, the transmission will not be retried; while the transmission of control packets is reliable. If
no response is received from the peer after the specified retry times, the system will determine
the tunnel connection is disconnected. The interval of re-transmitting control packets starts from
1 second, and increases by the multiples of 2, i.e., 1 second, 2 seconds, 4 seconds, 8 seconds, 16
seconds…
To specify the retry times of control packets, in the L2TP instance configuration mode, use the
following command:
transmit-retry times
l times – Specifies the retry times of control packets. The value range is 1 to 10 times. The
default value is 5.
To restore to the default value, in the L2TP instance configuration mode, use the following com-
mand:
no transmit-retry
When configuring L2TP over IPsec, you need to combine an IPsec tunnel to the L2TP tunnel in
order to encrypt data. To reference an IPsec tunnel in the L2TP instance, in the L2TP instance
configuration mode, use the following command:
next-tunnel ipsec tunnel-name
l tunnel-name – Specifies the name of the IPsec VPN tunnel defined in the system.
After a remote dial-up user connects to the LAC, the LAC starts the L2TP VPN to the LNS and
establishes the tunnel. When the LNS authenticates the users, it can execute the LCP (Link Con-
trol Protocol) phase or not.
By default, the LNS does not execute the LCP phase with the L2TP client. Instead, it authen-
ticates the L2TP client based on the authentication type specified by the Proxy Authen Type
AVP in the ICCN (Incoming-Call-Connected) packets.
To configure the mandatory LCP phase between the LNS and the L2TP client, use the following
command in the L2TP instance configuration mode:
ppp-lcp-force
To disable the mandatory LCP phase, use the no ppp-lcp-force command.
When a remote dial-up user connects to the LNS directly, the ICCN packets will not carry the
Proxy Authen Type AVP. The LNS will always execute the LCP phase with the L2TP client.
System will calculate the checksum of UDP packet is disabled. If you need to improve the per-
formance of the device, you can disable this function. To enable/disable calculating the checksum
of UDP packet, in the L2TP instance configuration mode, use the following command:
The configured L2TP instance will not take effect until it is bound to a tunnel interface. When a
L2TP instance is only bound to a tunnel interface and you do not specify the domain name to the
l tunnel-name – Specifies the name of the L2TP instance defined in the system.
l bind-to-domain domain-name – Binds the domain name to the L2TP tunnel. If you bind the
domain name, usernames without the domain name cannot dial up successfully. If you do not
bind the domain name, LNS will omit the domain name of usernames when authenticating
users.
To cancel the binding and the specified domain name, in the tunnel interface configuration mode,
use the following command:
no tunnel l2tp tunnel-name
To cancel the specified domain name, in the tunnel interface configuration mode, user the fol-
lowing command:
no tunnel l2tp tunnel-name bind-to-domain domain-name
When establishing a connection with the client or LAC, you can specify whether the PPP data
message sent by the LNS contains the ACF field information (Address Control Field) when encap-
sulating the PPP data message, that is, the address and control field carried by PPP data message .
In the global configuration mode, use the following command:
l2tp-include-ppp-acf
To kick out a user from the LNS connection, in the execution mode, use the following command:
exec l2tp tunnel-name kickout user user-name
l user-name – Specifies the name of the user who will be kicked out.
Restarting a Tunnel
After the tunnel is restarted, all the connections to the tunnel will be cleared. To restart a tunnel,
in any mode, use the following command:
clear l2tp tunnel-name
To establish a L2TP tunnel between the L2TP client and LNS, you need to configure a L2TP cli-
ent. For more information about L2TP on Windows 2000/2003/XP/Vista, see the cor-
responding Windows 2000/2003/XP/Vista documents.
Notes: When establishing a dial-up connection to LNS from the L2TP client on
Windows system, make sure the system has not been not installed with Hillstone
Secure Defender.
To create an L2TP client instance, in the global configuration mode, use the following command:
tunnel l2tp-client tunnel-name
After executing the above command, the system will create the L2TP client instance with the spe-
cified name, and enter the L2TP client instance configuration mode; if the specified name exists,
the system will directly enter the L2TP client instance configuration mode.
To delete the specified L2TP client instance, in the global configuration mode, use the following
command:
no tunnel l2tp-clienttunnel-name
You can configure the following options in the L2TP client instance configuration mode:
To specify the tunnel interface used to bind to the L2TP VPN tunnel, tunnel interface transmits
traffic to/from L2TP VPN tunnel, in the L2TP client instance configuration mode, use the fol-
lowing command:
interfaceinterface-name
To cancel the specified tunnel interface in the L2TP client instance configuration mode, use the
following command:
To specify the IP address of the LNS server, in the L2TP client instance configuration mode, use
the following command:
lns ipip-address
To cancel the specified LNS server, in the L2TP client instance configuration mode, use the fol-
lowing command:
no lns ipip-address
To ensure normal communication between the LNS and L2TP client, the L2TP client periodically
sends Hello packets to check whether the LNS is properly connected. Keepalive indicates the
interval at which the L2TP client sends two Hello packets. The smaller the value, the quicker the
fault sensing; the larger the value, the lower the occupied bandwidths. To specify the Hello inter-
val, in the L2TP client instance configuration mode, use the following command:
keepalivetime
time – Specifies the Hello interval. The value range is 60 to 1800 seconds. The default value is
60.
To restore to the default Hello interval, in the L2TP client instance configuration mode, use the
following command:
no keepalive
After the auto connect function is enabled, the L2TP client and LNS can establish tunnels. Users
can access the intranet connected to the LNS, without performing the PPP dialup. In the L2TP
client instance configuration mode, use the following command:
l2tp-auto-client
When establishing a connection with the LNS, the L2TP client can adopt either PAP or CHAP
for authentication during the PPP negotiation. To specify a PPP authentication protocol, in the
L2TP client instance configuration mode, use the following command:
ppp-auth {pap | chap | any}
l chap – Uses CHAP for PPP authentication. This is the default option.
l any – Uses CHAP for PPP authentication by default. If CHAP is not supported, then uses
PAP.
To restore to the default authentication configuration, in the L2TP client instance configuration
mode, use the following command:
no ppp-auth
Specifies the interval and retry times for sending LCP Echo packets, in the L2TP client instance
configuration mode, use the following command:
ppp-lcp-echo intervaltimeretrytimes
l interval time – Specifies the interval at which LCP Echo packets are sent. The value range is
0 to 1000 seconds. The default value is 30.
l retrytimes - Specifies the retry times for sending LCP Echo packets. If L2TP client has not
received any response after the specified retry times, it will determine the connection is dis-
connected. The default value is 4.
The L2TP client uses the user name and password to initiate a request to the LNS for establishing
an L2TP VPN tunnel.
Specifies the name and password of the L2TP client, in the L2TP client instance configuration
mode, use the following command:
useruser-namepasswordpassword
l user-name - Specifies the name of the L2TPclient, The value range is 1 to 31 characters.
l password - Specifies the password of the L2TP client, The value range is 4 to 63 characters.
To specify the retry times of control packets, in the L2TP client instance configuration mode, use
the following command:
transmit-retrytimes
times – Specifies the retry times of control packets. The value range is 1 to 10 times. The
default value is 5.
To restore to the default value, in the L2TP client instance configuration mode, use the following
command:
no transmit-retry
To clear the connection of L2TP client, in any mode, use the following command:
clear l2tp-client [tunnel-name]
l interface-name - Specifies the name of the egress interface for L2TPv3 tunnel.
To delete the egrss interface for specified L2TPv3 tunnel, use the following command:
no interface
To configure local session-id and remote session-id for interoperation between the local and
remote devices of an L2TPv3 tunnel, in the L2TPv3 tunnel configuration mode, use the fol-
lowing command:
idlocal-session-id remote-session-id
All packets must match the configured cookie value or be discarded. Cookies are used in security
checks performed at the endpoints of a tunnel to prevent network spoofing and attacks.
The local and remote cookie values must be the same.
To configure the local cookie, in the L2TPv3 tunnel configuration mode, use the following com-
mand:
cookie local {4 lower-value | 8 lower-value high-value}
l 8 lower-value high-value - Specifies the four low-order bytes of an 8-byte local cookie value in
simple text.
l 8 lower-value high-value - Specifies the four low-order bytes of an 8-byte local cookie value in
simple text.
l filter ipv6 - Configure IPv6 packet filtering for the L2TPv3 tunnel.
To cancel the configuration of binding tunnel interface for L2TPv3 tunnel, use the following com-
mand:
no tunnel l2tpv3 tunnel-name
To view L2TPv3 tunnel information, in the tunnel interface configuration mode, use the fol-
lowing command:
show tunnel l2tpv3 tunnel-name
Requirement
A remote employee needs to visit the Intranet of the headquarters via L2TP VPN. The network
topology is shown as below:
Configurations on LNS
hostname(config-if-eth0/1)# zo n e un trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# zo n e trust
hostname(config)#
hostname(config-aaa-server)# user sh an gh ai
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)#
Step 3 : Configure the LNS address pool and specify the IP range
hostname(config)# l2tp p o o l p o o l1
hostname(config-l2tp-pool)# exit
hostname(config)#
hostname(config-tunnel-l2tp)# p o o l p o o l1
hostname(config-tunnel-l2tp)# p p p -auth an y
hostname(config-tunnel-l2tp)# exit
hostname(config)#
Step 5 : Create a tunnel interface and bind the L2TP instance named test to the interface
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
The following sections describe how to configure the client in a Windows XP system. The con-
figuration steps are:
2. Click Create a new connection > Connect to the network at my workplace, and click Next.
3. In the New Connection Wizard dialog, click Virtual Private Network Connection, and click
Next.
4. Type L2TP into the Company Name box, and click Next.
6. Type the LNS IP address 58.31.46.207 into the Host name or IP address box, and click
Next.
To modify the properties of the dial-up connection, take the following steps:
3. In the L2TP Properties dialog, click the Security tab, and click Advanced (custom settings).
Click Settings behind.
4. In the Advanced Security Settings dialog, select Optional encryption (connect even if no
encryption) from the Data encryption drop-down list, click Allow these protocols in the
Logon security box, and select Unencrypted password (PAP) and Challenge Handshake
Authentication Protocol (CHAP), as shown below:
By default Windows XP enables IPsec encryption on the L2TP connection. You can disable the
default action by modifying the Windows XP registry. If IPsec encryption is not disabled, the
L2TP client will be disconnected automatically during dialing up.
To modify the registry, take the following steps:
1. Click Start > Run, and type Regedt32 into the Open box.
4. Exit the registry editor and restart the system to make the modification take effect.
After the above LNS and client configuration, you can initiate a VPN connection to LNS and
establish a tunnel from the client.
In My Network Places, double click the dial-up connection named L2TP. In the Connect L2TP
dialog, type shanghai and 123456 into the User name and Password boxes respectively, and click
Connect, as shown below.
Requirement
An employee needs to visit the Web server in the Intranet via L2TP VPN. Data transmission
between the PC and LNS is encrypted by IPsec. The network topology is shown below.
Configurations on LNS
hostname(config-if-eth0/2)# zo n e trust
hostname(config-if-eth0/2)# exit
hostname(config-if-eth0/3)# zo n e un trust
hostname(config-if-eth0/3)# exit
hostname(config)#
hostname(config-isakmp-proposal)# h ash sh a
hostname(config-ipsec-proposal)# p ro to co l esp
hostname(config-ipsec-proposal)# h ash sh a
hostname(config-ipsec-proposal)# exit
hostname(config-isakmp-peer)# mo de main
hostname(config-tunnel-ipsec-auto)# mo de tran sp o rt
hostname(config-tunnel-ipsec-auto)# exit
hostname(config)#
hostname(config-aaa-server)# user sh an gh ai
hostname(config-user)# exit
hostname(config)#
Step 4: Configure the LNS address pool and specify the IP range
hostname(config)# l2tp p o o l p o o l2
hostname(config-l2tp-pool)#dn s 202.106.0.20
hostname(config-l2tp-pool)# exit
hostname(config)#
hostname(config-tunnel-l2tp)# p o o l p o o l2
hostname(config-tunnel-l2tp)# p p p -auth ch ap
hostname(config-tunnel-l2tp)# exit
hostname(config)#
Step 6: Create a tunnel interface and bind the L2TP instance named l2tp1 to the interface
hostname(config-if-tun1)# zo n e dmz
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
The following sections describe how to configure the client in a Windows XP system. The con-
figuration steps are:
2. Click Create a new connection > Connect to the network at my workplace, and click Next.
4. Type L2TP over IPsec into the Company Name box, and click Next.
6. Type the LNS IP address 192.168.1.1 into the Host name or IP address box, and click
Next.
To modify the properties of the dial-up connection, take the following steps:
1. In My Network Places, double click the connection named L2TP over IPsec.
• Security:
l Click Advanced (custom settings), and then click Settings behind. In the Advanced
Security Settings dialog, select Optional encryption (connect even if no encryption)
from the Data encryption drop-down list, click Allow these protocols in the Logon
security box, and select Unencrypted password (PAP) and Challenge Handshake
Authentication Protocol (CHAP). Click OK to save the settings.
l Click IPsec settings. In the IPsec Settings dialog, select Use pre-shared key for
authentication, and type hello1 into the Key box. Click OK to save the changes.
• Network:
l Select L2TP IPsec VPN from the Type of VPN drop-down list, and select Internet
Protocol (TCP/IP) in the This connection uses the following items box.
By default Windows XP enables IPsec encryption on the L2TP connection. If disabled, you can
re-enable the default action by modifying the Windows XP registry.
To modify the registry, take the following steps:
1. Click Start > Run, and type Regedt32 into the Open box.
3. Add a DWORD value for Parameters. Click Parameters, and right click any blank place in
the right pane. From the menu, click New > DWORD value. Specify the name as Pro-
hibitIPsec, type as REG_DWORD, and value as 0. Click OK to save the settings.
4. Exit the registry editor and restart the system to make the modification take effect.
After the above LNS and client configuration, you can initiate a VPN connection to LNS and
establish a tunnel from the client.
In My Network Places, double click the dial-up connection named L2TP over IPsec. In the Con-
nect L2TP over IPsec dialog, type shanghai and 123456 into the User name and Password boxes
respectively, and click Connect. After the dial-up connection has been established, the employee
in Shanghai can gain access to the Web server in the Intranet securely over L2TP.
VXLAN
Overview
Virtual extensible local area network (VXLAN) is a tunnel encapsulation technology for large layer
2 network expansion overe NOV3 that uses MAC-in-UDP encapsulation. VXLAN uses a 24-bit
network segment ID, called VXLAN network identifier (VNI), to identify users. This VNI is
l name - Specified the name of the VXLAN static tunnel that will be created.
To delete the specified VXLAN static tunnel, in the global configuration mode, use the
commandno tunnel vxlanname.
To configure the destination VETP IP address of the VXLAN static tunnel, in the VXLAN tun-
nel configuration mode, use the following command:
destinationipv4-address
l ipv4-address - Specified the destination VETP IP address of the VXLAN static tunnel.
To delete the destination VETP IP address of the VXLAN static tunnel, in the VXLAN tunnel
configuration mode, use the commandno destination .
To configure the ID (Global network identity) of the VXLAN static tunnel, in the VXLAN tun-
nel configuration mode, use the following command:
vniid
l id - Specified the ID (Global network identity) of the VXLAN static tunnel. The value range
is 1 to 16777215.
To delete the egress interface of the VXLAN static tunnel, in the VXLAN tunnel configuration
mode, use the commandno interface.
To bind the layer2 zone for the VXLAN static tunnel, in the tunnel interface configuration mode,
use the following command:
zone l2-zone
l2-zone - Specified the name of the layer2 zone for the VXLAN tunnel.
To delete the layer2 zone for the VXLAN static tunnel, in the tunnel interface configuration
mode, use the commandno zone l2-zone.
Introduction
Compared with the traditional VPN access mode, which allows an authorized user to access any
resources on the internal network, ZTNA (Zero Trust Network Access) starts with a default deny
posture of zero trust on any entities, whether outside or inside the enterprise network perimeter.
It grants controlled and least-privilege access to resources after assessment of user identity, device
identity and other context-aware attributes, such as access time. It allows users to securely access
private applications across clouds and data centers from any location and device.
Hillstone ZTNA solution supports management and control of user access based on dimensions
including user identity, device identity and access time and grants access only to specific applic-
ations based on adaptive and granular policies. By persistently monitoring the state change of
access endpoints, ZTNA solution flexibly adjusts the granted access range. ZTNA login process is
as follows:
1. ZTNA user enters the server address, port number, user name and password on the client to
request authentication and two-step verification, if any.
2. ZTNA server allocates private IP addresses to authenticated users and delivers the endpoint
information collection script.
3. ZTNA client executes the script to collect endpoint information, such as OS version, fire-
wall and anti-virus software installation information, IE security level, process running, etc.
and reports to the ZTNA server.
4. ZTNA server parses endpoint information to obtain the endpoint tag and sends the user
name appended with the endpoint tag to the authentication module.
5. Authentication module creates authenticated users, attends the endpoint tag and acquires
user group information.
7. ZTNA client receives the popped-up ZTNA portal, displaying the icons of application
resources that the client is granted and is not granted access. The icons will be displayed
with the application resource name and URL address.
l Other Configurations
l The logical relationship between criteria sets is Or. When a user's endpoint tag matches any cri-
teria set contained in an endpoint tag, the endpoint tag is considered to be matched.
l Configuring a Condition
l Configuring a Tip
To configure an endpoint tag and enter the endpoint tag configuration mode, in the global con-
figuration mode, use the following command:
endpoint-tag tag-name [id]
l tag-name - Specifies the endpoint tag name. The range is 1 to 95 characters. If the specified
name already exists, you will enter the configuration mode of this endpoint tag directly. Each
endpoint name should be unique in the VSYS it belongs to, while endpoint tags in different
VSYS can share the same name.
l id - Specifies the endpoint tag ID. The value ranges from 1 to 128. If the ID is not specified,
the system will automatically assign one. Each endpoint tag ID should be unique in the VSYS
it belongs to, while endpoint tags in different VSYS can share the same ID.
To delete the specified endpoint tag, in the global configuration mode, use the following com-
mand:
no endpoint-tag tag-name
To change the name of an endpoint tag, in the endpoint tag configuration mode, use the following
command:
l tag-name - Specifies the endpoint tag's new name. The length is 1 to 95 characters.
To add description to an endpoint tag, in the endpoint tag configuration mode, use the following
command:
description description
l description - Specifies the description of the endpoint tag. The length is 1 to 255 characters.
To delete the description of an endpoint tag, in the endpoint tag configuration mode, use the fol-
lowing command:
no description
To configure a criteria set for the endpoint tag and enter the criteria set configuration mode, in the
endpoint tag configuration mode, use the following command:
criteria-set [id]
l id - Specifies the criteria set ID. The value ranges from 1 to 16. If the ID is not specified, the
system will automatically assign one. If the specified ID exists, you will enter the con-
figuration mode of this criteria set directly.
To delete the specified criteria set, in the endpoint tag configuration mode, use the following com-
mand:
no criteria-set id
Configuring a Condition
l id - Specifies the condition ID. The value ranges from 1 to 16. If the ID is not specified, the
system will automatically assign one.
l os-type {windows | macOS | Linux | iOS | Android} - Specifies the OS type of the user
endpoint.
l key key-name operator key-value - Specifies the endpoint item to be matched and the cor-
responding value. key-name is the name of the endpoint item. operator is the relational oper-
ator. key-value is the value of the endpoint item. For more information about the value, refer
to Managing Endpoint Items.
To delete the specified condition of an endpoint tag, in the criteria set configuration mode, use
the following command:
no criteria id
Configuring a Tip
For application resources that an end user is not allowed to access because the endpoint device
does not match an endpoint tag, configure a tip to let the end user know the reason and update
the endpoint device to obtain the access privilege. By default, the tip for each endpoint tag is
"Access Failed Contact your administrator".
When a ZTNA policy binds multiple endpoint tags:
l If an end user matches any of the endpoint tags and is granted access to the application
resource, no tip will be displayed for the corresponding application resource on the ZTNA
portal.
To configure a tip to be displayed when an end user is not granted access because an endpoint tag
is not matched, in the endpoint tag configuration mode, use the following command:
tips message
l message - Specifies the tip to be displayed. The length is 1 to 511 characters. URL addresses
are supported and will be displayed as hyperlinks on the ZTNA portal.
To delete the tip, in the endpoint tag configuration mode, use the following command:
no tips
To view the configuration information of the specified endpoint tag and the ZTNA policy ref-
erence count, in any mode, use the following command:
show endpoint-tag name tag-name
To view the endpoint tag configuration information that matches the specified filter conditions
and the ZTNA policy reference count and hit count of the endpoint tag, in any mode, use the fol-
lowing command.
show endpoint-tag filter {name tag-name | description description}
l name tag-name - Shows the endpoint tag configuration information that matches the specified
endpoint tag name and the ZTNA policy reference count and hit count of the endpoint tag.
l description description - Shows the endpoint tag configuration information that matches the
specified description and the ZTNA policy reference count and hit count of the endpoint tag.
1. The client periodically collects endpoint information based on the collection script and
reports to the ZTNA server. By default, the client collects and reports collected endpoint
information at the interval of 60 minutes. The interval can be modified as required via the
ztna-endpoint-information-monitor command.
2. ZTNA server parses the received endpoint information and re-acquires the endpoint tag if
the endpoint state changes. Then the endpoint tag attended to the authorized user will be
updated, the ZTNA policy is re-matched and the resource access range granted to the user is
updated as well. For existing sessions of this user, the system will process them based on
the configuration of the session-rematch command.
Endpoint items include the predefined and custom ones. Configuration of predefined endpoint
items enables the ZTNA server to acquire more endpoint information for granular application
access control.
The system supports endpoint item management of the following operating systems:
The following table shows the types of predefined Windows endpoint items supported by the sys-
tem.
Endpoint
Item Name Description Operator Value
(key-name)
Endpoint
Item Name Description Operator Value
(key-name)
Endpoint
Item Name Description Operator Value
(key-name)
Endpoint
Item Name Description Operator Value
(key-name)
To configure custom Windows endpoint items, you need to enter the ztna-endpoint-information-
windows-profile configuration mode by using the following command in the global configuration
mode:
ztna-endpoint-information-windows-profile
You can configure the firewall to check whether the specified registry key exists in the Windows
endpoint.
To define the registry key item that needs to be checked, in the ztna-endpoint-information-win-
dows-profile configuration mode, use the following command:
registry-key alias alias-name value registry-key-name
l value registry-key-name - Specifies the actual name of registry key. The length is 1 to 255
characters.
You can configure the firewall to check whether the specified process is running in the Windows
endpoint.
To define the process item that needs to be checked, in the ztna-endpoint-information-windows-
profile configuration mode, use the following command:
process alias alias-name value process-name
l value process-name - Specifies the actual name of the process. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified service is running in the Windows
endpoint.
l value service-name - Specifies the actual name of the service. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified service is installed in the Windows
endpoint.
To define the service item that needs to be checked, in the ztna-endpoint-information-windows-
profile configuration mode, use the following command:
service-installed alias alias-name value service-name
l value service-name - Specifies the actual name of the service. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified file exists in the Windows end-
point.
To define the file item that needs to be checked, in the ztna-endpoint-information-windows-pro-
file configuration mode, use the following command:
file alias alias-name value file-name
l value file-name - Specifies the file's absolute path. The length is 1 to 255 characters.
You can configure the firewall to check whether the specified hot fix is installed in the Windows
endpoint.
To define the hot patch item that needs to be checked, in the ztna-endpoint-information-win-
dows-profile configuration mode, use the following command:
hotfix alias alias-name value hotfix-name
l alias alias-name - Specifies the hot fix's alias. The length is 1 to 31 characters.
l value hotfix-name - Specifies the actual name of the hot fix. The length is 1 to 255 characters.
To view all predefined and custom Windows endpoint items the system supports, in any mode,
use the following command:
show ztna-endpoint-information-windows-profile
To view the configuration information of the specified Windows endpoint item, in any mode, use
the following command:
show ztna-endpoint-information-windows-profile key-name
l key-name - Specifies the Windows endpoint item name. Both the predefined and the custom
ones are supported.
The following table shows the types of predefined macOS endpoint items supported by the sys-
tem.
Endpoint
Item Name
Description Operator Value
(key-
name)
Endpoint
Item Name
Description Operator Value
(key-
name)
enabled in
the m acOS
endpoint.
The following table shows the types of custom macOS endpoint items supported by the system.
Endpoint
Item Name Description Operator Value
(key-name)
Endpoint
Item Name Description Operator Value
(key-name)
To configure custom macOS endpoint items, you need to enter the ztna-endpoint-information-
macos-profile configuration mode by using the following command in the global configuration
mode:
ztna-endpoint-information-macos-profile
You can configure the firewall to check whether the macOS endpoint is using the specified AD
domain name.
To define the AD domain name item that needs to be checked, in the ztna-endpoint-information-
macOS-profile configuration mode, use the following command:
ad-domain alias alias-name value domain-name
l value domain-name - Specifies the actual name of the AD domain name. The length is 1 to
255 characters.
You can configure the firewall to check whether the specified process is running in the macOS
endpoint.
To define the process item that needs to be checked, in the ztna-endpoint-information-macos-pro-
file configuration mode, use the following command:
process alias alias-name value process-name
l value process-name - Specifies the actual name of the process. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified service is running in the macOS
endpoint.
l value service-name - Specifies the actual name of the service. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified service is installed in the macOS
endpoint.
To define the service item that needs to be checked, in the ztna-endpoint-information-macos-pro-
file configuration mode, use the following command:
service-installed alias alias-name value service-name
l value service-name - Specifies the actual name of the service. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified file exists in the macOS endpoint.
To define the file item that needs to be checked, in the ztna-endpoint-information-macos-profile
configuration mode, use the following command:
file alias alias-name value file-name
l value file-name - Specifies the file's absolute path. The length is 1 to 255 characters.
To view all predefined and custom macOS endpoint items the system supports, in any mode, use
the following command:
show ztna-endpoint-information-macos-profile
To view the configuration information of the specified macOS endpoint item, in any mode, use
the following command:
show ztna-endpoint-information-macos-profile key-name
l key-name - Specifies the macOS endpoint item name. Both the predefined and the custom
ones are supported.
The following table shows the types of predefined Linux endpoint items supported by the system.
End-
point
Item Descrip- Oper-
Value
Name tion ator
(key-
name)
The following table shows the types of custom Linux endpoint items supported by the system.
Endpoint
Item Name Description Operator Value
(key-name)
Endpoint
Item Name Description Operator Value
(key-name)
To configure custom Linux endpoint items, you need to enter the ztna-endpoint-information-
macos-profile configuration mode by using the following command in the global configuration
mode:
ztna-endpoint-information-linux-profile
You can configure the firewall to check whether the specified process is running in the Linux end-
point.
To define the process item that needs to be checked, in the ztna-endpoint-information-linux-pro-
file configuration mode, use the following command:
process alias alias-name value process-name
l value process-name - Specifies the actual name of the process. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified service is running in the Linux end-
point.
To define the service item that needs to be checked, in the ztna-endpoint-information-linux-pro-
file configuration mode, use the following command:
service-running alias alias-name value service-name
l value service-name - Specifies the actual name of the service. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified service is installed in the Linux end-
point.
l value service-name - Specifies the actual name of the service. The length is 1 to 255 char-
acters.
You can configure the firewall to check whether the specified file exists in the Linux endpoint.
To define the file item that needs to be checked, in the ztna-endpoint-information-macos-profile
configuration mode, use the following command:
file alias alias-name value file-name
l value file-name - Specifies the file's absolute path. The length is 1 to 255 characters.
To view all predefined and custom Linux endpoint items the system supports, in any mode, use
the following command:
l key-name - Specifies the Linux endpoint item name. Both the predefined and the custom ones
are supported.
The following table shows the types of predefined iOS endpoint items supported by the system.
Endpoint
Item Name Description Operator Value
(key-name)
The following table shows the types of custom iOS endpoint items supported by the system.
Endpoint
Item Name Description Operator Value
(key-name)
Endpoint
Item Name Description Operator Value
(key-name)
To configure custom iOS endpoint items, you need to enter the ztna-endpoint-information-ios-
profile configuration mode by using the following command in the global configuration mode:
ztna-endpoint-information-ios-profile
You can configure the firewall to check the device model of the iOS endpoint.
To define the device model that needs to be checked, in the ztna-endpoint-information-ios-pro-
file configuration mode, use the following command:
device-model alias alias-name value device-model-number
l alias alias-name - Specifies the iOS device model number's alias. The length is 1 to 31 char-
acters.
l value device-model-number - Specifies the iOS device model number. The length is 1 to 255
characters.
Repeat this command to add up to 5 iOS device model numbers as endpoint items.
To delete the endpoint item configuration of the specified device model number, in the ztna-end-
point-information-ios-profile configuration mode, use the following command:
You can configure the firewall to check the WiFi SSID that the iOS endpoint connects.
To define the WiFi SSID item that needs to be checked, in the ztna-endpoint-information-ios-pro-
file configuration mode, use the following command:
wifi-ssid alias alias-name value wifi-ssid
l alias alias-name - Specifies the WiFi SSID's alias. The length is 1 to 31 characters.
l value wifi-ssid - Specifies the WiFi SSID. The length is 1 to 255 characters.
You can configure the firewall to check the ZTNA client version of the iOS endpoint.
To define the ZTNA client version item that needs to be checked, in the ztna-endpoint-inform-
ation-ios-profile configuration mode, use the following command:
client-version alias-name value client-version
l client-version alias-name - Specifies the ZTNA client version's alias. The length is 1 to 31
characters.
l value client-version - Specifies the ZTNA client version. The length is 1 to 255 characters.
To view all predefined and custom iOS endpoint items the system supports, in any mode, use the
following command:
show ztna-endpoint-information-ios-profile
To view the configuration information of the specified iOS endpoint item, in any mode, use the
following command:
show ztna-endpoint-information-ios-profile key-name
l key-name - Specifies the iOS endpoint item name. Both the predefined and the custom ones
are supported.
The following table shows the types of predefined Android endpoint items supported by the sys-
tem.
Endpoint
Item Name Description Operator Value
(key-name)
The following table shows the types of custom Android endpoint items supported by the system.
Endpoint
Item Name Description Operator Value
(key-name)
To configure custom Android endpoint items, you need to enter the ztna-endpoint-information-
android-profile configuration mode by using the following command in the global configuration
mode:
ztna-endpoint-information-android-profile
You can configure the firewall to check the device model of the Android endpoint.
To define the device model that needs to be checked, in the ztna-endpoint-information-android-
profile configuration mode, use the following command:
device-model alias alias-name value device-model-number
l value device-model-number - Specifies the Android device model number. The length is 1 to
255 characters.
Repeat this command to add up to 5 Android device model numbers as endpoint items.
To delete the endpoint item configuration of the specified device model number, in the ztna-end-
point-information-android-profile configuration mode, use the following command:
no device-model alias alias-name
You can configure the firewall to check the WiFi SSID that the Android endpoint connects.
To define the WiFi SSID item that needs to be checked, in the ztna-endpoint-information-
android-profile configuration mode, use the following command:
wifi-ssid alias alias-name value wifi-ssid
l alias alias-name - Specifies the WiFi SSID's alias. The length is 1 to 31 characters.
l value wifi-ssid - Specifies the WiFi SSID. The length is 1 to 255 characters.
You can configure the firewall to check the ZTNA client version of the Android endpoint.
To define the ZTNA client version item that needs to be checked, in the ztna-endpoint-inform-
ation-android-profile configuration mode, use the following command:
client-version alias-name value client-version
l value client-version - Specifies the ZTNA client version. The length is 1 to 255 characters.
To view all predefined and custom Android endpoint items the system supports, in any mode, use
the following command:
show ztna-endpoint-information-android-profile
To view the configuration information of the specified Android endpoint item, in any mode, use
the following command:
show ztna-endpoint-information-android-profile key-name
l key-name - Specifies the Android endpoint item name. Both the predefined and the custom
ones are supported.
After a user logs in successfully, the system will continuously monitor the endpoint state and
adaptively adjust the resource access range granted to the user. The system supports configuration
of the endpoint monitoring period. If endpoint information collection fails within the specified
monitoring period and the number of consecutive failures reaches the specified threshold, the sys-
tem will clear the user's endpoint tag and rematch ZTNA policies.
To configure the endpoint monitoring period, in the global configuration mode, use the following
command:
ztna-endpoint-information-monitor { [intervalinterval-value] [threshold threshold-value] }
l threshold threshold-value - Specifies the threshold for the number of consecutive failures of
endpoint information report. The value ranges from 2 to 65535. The default value is 2.
To view endpoint monitoring configuration information, in any mode, use the following com-
mand:
show ztna-endpoint-information-monitor
To view endpoint information database, in any mode, use the following command:
show ztna-endpoint-information-database
Execution of this command will display the database version, supported endpoint OS and oper-
ators.
To create an application resource and enter the application resource configuration mode, in the
global configuration mode, use the following command:
application-resource application-resource-name [id id]
l id id - Specifies the application resource ID. The value ranges from 1 to 256. If the ID is not
specified, the system will automatically assign one.
To delete the specified application resource, in the global configuration mode, use the following
command:
no application-resource application-resource-name
To configure an application resource entry based on the IP address, in the application resource
configuration mode, use the following command:
ip ip-address protocol {tcp | udp} port port-number [timeout timeout-value | timeoutday
timeout-value]
l protocol {tcp | udp} - Specifies the transmission-layer protocol type of the application
resource, TCP or UDP.
l port port-number - Specifies the port number of the application resource. The value ranges
from 1 to 65535.
l timeout timeout-value | timeoutday timeout-value - Specifies the timeout value of ZTNA ses-
sions created when an application resource is accessed. When the ZTNA session times out, it
will be ended. timeouttimeout-value specifies the timeout value in seconds, which ranges
from 1 to 65535. timeoutday timeout-value specifies the timeout value in days, which ranges
from 1 to 1000. If the timeout/timeoutday parameter is not specified, the default lifetime of
TCP type ZTNA sessions is 1800s; the default lifetime of UDP type ZTNA sessions is 60s.
To delete an IP-based application resource entry, in the application resource configuration mode,
use the following command:
no ip ip-address protocol {tcp | udp} port port-number
To configure an application resource entry based on the IP range, in the application resource con-
figuration mode, use the following command:
range min-ip max-ip protocol {tcp | udp} port port-number [timeout timeout-value | timeoutday
timeout-value]
l range min-ip max-ip - Specifies the application resource's IP range. min-ip and max-ip specify
the start IP address and end IP address respectively. A maximum of 65535 IP addresses are
allowed in an IP range.
l protocol {tcp | udp} - Specifies the transmission-layer protocol type of the application
resource, TCP or UDP.
l port port-number - Specifies the port number of the application resource. The value ranges
from 1 to 65535.
l timeout timeout-value | timeoutday timeout-value - Specifies the timeout value of ZTNA ses-
sions created when an application resource is accessed. When the ZTNA session times out, it
will be ended. timeout timeout-value specifies the timeout value in seconds, which ranges
from 1 to 65535. timeoutday timeout-value specifies the timeout value in days, which ranges
from 1 to 1000. If the timeout/timeoutday parameter is not specified, the default lifetime of
TCP type ZTNA sessions is 1800s; the default lifetime of UDP type ZTNA sessions is 60s.
To configure an application resource entry based on the domain name, in the application resource
configuration mode, use the following command:
domain string protocol {http | https} port port-number [timeout timeout-value | timeoutday
timeout-value]
l domain string- Specifies the domain name of the application resource. The length is 1 to 255
characters, and the length between two periods (.) cannot exceed 63 characters. You can set
an exact domain name or a wildcard domain name beginning with "*".
l protocol {http | https} - Specifies the application-layer protocol type of the application
resource, HTTP or HTTPS.
l port port-number - Specifies the port number of the application resource. The value ranges
from 1 to 65535.
l timeout timeout-value | timeoutday timeout-value - Specifies the timeout value of ZTNA ses-
sions created when an application resource is accessed. When the ZTNA session times out, it
will be ended. timeouttimeout-value specifies the timeout value in seconds, which ranges
from 1 to 65535. timeoutday timeout-value specifies the timeout value in days, which ranges
from 1 to 1000. If the timeout/timeoutday parameter is not specified, the default lifetime of
TCP type ZTNA sessions is 1800s; the default lifetime of UDP type ZTNA sessions is 60s.
To delete a domain name-based application resource entry, in the application resource con-
figuration mode, use the following command:
no domain string protocol {http | https} port port-number
On the ZTNA portal displayed after a user logs in, the user can copy the hyperlink to access an
application resource in a browser if the application resource is configured with an hyperlink; or,
the user can directly click the application resource icon to access it (make sure the link work). An
application resource without a hyperlink configured will not be displayed on the ZTNA portal.
The portal page displays the application resources that the user is granted access and is not granted
access. For those that the user is not granted access, the user can attempt to acquire the access
privilege by adjusting the access terminal configurations. The application resources that the user is
denied from accessing will not be displayed on the portal page. If a user is denied from accessing
any application resources, the portal page displays a message indicating that no Web resources are
available to the user. After the portal page is closed, the user can click the "Application Resource
List" option in the Secure Connect client menu to display the latest ZTNA portal page.
To configure a hyperlink, in the application resource configuration mode, use the following com-
mand:
hyperlink hyperlink
l hyperlink - Specifies the hyperlink. The length is 1 to 2047 characters. If the specified hyper-
link does not contain a protocol type, the default HTTP protocol will be used.
To delete the hyperlink, in the application resource configuration mode, use the following com-
mand:
no hyperlink
To add description to an application resource, in the application resource configuration mode, use
the following command:
description description
To delete the application resource description, in the application resource configuration mode,
use the following command:
no description
To change the application resource name, in the application resource configuration mode, use the
following command:
rename application-resource-name
l application-resource-name - Specifies the new name of the application resource, which is case-
insensitive. The length is 1 to 95 characters.
Or, you can use the following command in the global configuration mode to rename an application
resource:
rename application-resource original-application-resource-name new-application-resource-name
To view the configuration information of the specified application resource, in any mode, use the
following command:
show application-resource {name application-resource-name | id id}
To view application resource configuration information that matches the specified filter con-
ditions, in any mode, use the following command:
show application-resource filter { [name application-resource-name] [ip ip-address] [domain
string] [protocol {udp | tcp | http | https} ] [port port-number] [description description] [hyper-
link hyperlink ] }
l ip ip-address - Shows the application resource configuration information matching the spe-
cified IP address. IPv4/IPv6 address, IPv4 address/netmask and IPv6 address/prefix length
are supported.
l domain string - Shows application resource configuration information matching the specified
domain name. Partial match and full match are supported.
l protocol {udp | tcp | http | https} - Shows the application resource configuration inform-
ation matching the specified protocol. When you filter for application resources defined based
on IP address, the supported protocol types are UDP and TCP; When you you filter for applic-
ation resources defined based on domain name, the supported protocol types are HTTP and
HTTPS.
l port port-number - Shows the application resource configuration information matching the
specified port number.
l hyperlink hyperlink - Shows the application resource configuration information matching the
specified hyperlink. Partial match and full match are supported.
User traffic hitting a ZTNA policy will be or not be granted access to the application resource ref-
erenced by the policy.
To view the reference information of the specified application resource, in any mode, use the fol-
lowing command:
show reference application-resource application-resource-name
l id id - Specifies the application resource group ID. The value ranges from 1 to 64. If the ID is
not specified, the system will automatically assign one.
To delete the specified application resource group, in the global configuration mode, use the fol-
lowing command:
no application-resource-group group-name
To delete the specified member from the application resource group, in the application resource
group configuration mode, use the following command:
no application-resource application-resource-name
To configure description for an application resource group, in the application resource group con-
figuration mode, use the following command:
description description
l description - Specifies the application resource group description. The length is 1 to 255 char-
acters. When the application resource group is already configured with description, it will be
overwritten by the new description.
To delete the application resource group description, in the application resource group con-
figuration mode, use the following command:
no description
To change the application resource group name, in the application resource group configuration
mode, use the following command:
rename application-resource-group-name
Or, you can use the following command in the global configuration mode to rename an application
resource group:
rename application-resource-group original-application-resource-group-name new-application-
resource-group-name
To view the configuration information of the specified application resource group, in any mode,
use the following command:
show application-resource-group {name application-resource-group-name | id id}
To view the configuration information of all application resource groups, in the global con-
figuration mode, use the following command:
show application-resource-group
User traffic hitting a ZTNA policy will be or not be granted access to the application resource
group referenced by the policy.
To view the reference information of the specified application resource group, in any mode, use
the following command:
show reference application-resource-group group-name
l User/User group: When a user/user group matches the one configured in the ZTNA policy,
this user/user group is considered to meet the matching condition.
l Endpoint tag: When the endpoint tag carried with an authenticated user matches the one con-
figured in the ZTNA policy, this endpoint tag is considered to meet the matching condition.
l Schedule: When the user access time matches the one configured in the ZTNA policy, the
access time is considered to meet the matching condition.
Each ZTNA policy can be configured with one or multiple matching conditions. For a ZTNA
policy configured with multiple matching conditions, the policy is considered to be hit and the
traffic will be processed based on the action specified in the policy only when all matching con-
ditions are met. When a matching condition is not configured in a ZTNA policy, all objects are
considered to meet this matching condition. The policy action includes two types (at least one
must be configured):
l deny: User traffic hitting a specified ZTNA policy will be denied access to resources con-
figured in the policy.
User traffic that does not hit any ZTNA policies will hit the ZTNA default policy and be pro-
cessed based on the default action.
This section describes the following ZTNA policy configurations:
l Configuring a Schedule
To create a ZTNA policy and enter the ZTNA policy configuration mode, in the global con-
figuration mode, use the following command:
ztna-rule [name rule-name | id id] [top | before {name rule-name | id} | after {name rule-name
| id} ]
l name rule-name - Specifies the ZTNA policy name. The length is 1 to 95 characters.
l id id - Specifies the ZTNA policy ID. The value ranges from 1 to 2000. If the specified ID
exists, you will enter the configuration mode of this ZTNA policy directly. If the ID is not
specified for a new ZTNA policy, the system all automatically assign one.
l top | before {name rule-name | id} | after {name rule-name | id} - Specifies the position of
the ZTNA policy. By default, the newly-created ZTNA policy is located at the end of all the
ZTNA polices.
l top - Specifies the location of the policy to the top of all policies.
l before {name rule-name | id} - Specifies the location of the policy before the specified policy
ID or name.
l after {name rule-name | id} - Specifies the location of the policy after the specified policy ID
or name.
To delete the specified ZTNA policy, in the global configuration mode, use the following com-
mand:
no ztna-rule {name rule-name | id id}
For an existing ZTNA policy, to specify or modify its name, in the ZTNA policy configuration
mode, use the following command:
name name
To delete the ZTNA policy name, in the ZTNA policy configuration mode, use the following
command:
no name
Each ZTNA policy can be bound with up to 10 application resources and 10 application resource
groups. The logical relationship among multiple application resources/application resource groups
is "Or". When a user accesses any of these application resources, the application resource dimen-
sion of the policy is considered to be hit. If a policy does not bind any application resources, all
application resources can be matched.
To bind the specified application resource with the ZTNA policy, in the ZTNA policy con-
figuration mode, use the following command:
application-resource application-resource-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no application-resource application-resource-name
To bind the specified application resource group with the ZTNA policy, in the ZTNA policy con-
figuration mode, use the following command:
application-resource-group group-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
Each ZTNA policy can be bound with up to 10 endpoint tags. The logical relationship among mul-
tiple endpoint tags is "Or". When a user matches any of these endpoint tags, the endpoint tag
dimension of the policy is considered to be hit. If a policy does not bind any endpoint tags, all
endpoint tags can be matched.
To bind the specified endpoint tag with the ZTNA policy, in the ZTNA policy configuration
mode, use the following command:
endpoint-tag tag-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no endpoint-tag tag-name
Each ZTNA policy can be bound with up to 8 users and 8 user groups. The logical relationship
among multiple user/user groups is "Or". When any of the users attempts to access, the user
dimension of the policy is considered to be hit. If a policy does not bind any users, all users can
be matched.
To bind the specified user with the ZTNA policy, in the ZTNA policy configuration mode, use
the following command:
user aaa-server-name user-name
l aaa-server-name - Specifies the name of the AAA server that the user belongs to.
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no user aaa-server-name user-name
To bind the specified user group with the ZTNA policy, in the ZTNA policy configuration mode,
use the following command:
user-group aaa-server-name user-group-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no user-group aaa-server-name user-group-name
Configuring a Schedule
By default, the configured ZTNA policy will take effect immediately. If you apply a schedule to
the ZTNA policy, it will only take effect in the specified time defined in the schedule. You can
configure up to 10 schedules for a ZTNA policy, and the effective time of the policy is the sum
of all time configured in the schedules. The logical relationship among multiple schedules is "Or".
When any of these schedules is matched, the schedule dimension of the policy is considered to be
hit. If a policy does not bind any schedules, all time can be matched. For information about how
to configure a schedule, refer to System Management > Configuring Schedule.
To configure the specified schedule for the ZTNA policy, in the ZTNA policy configuration
mode, use the following command:
schedule schedule-name
l schedule-name - Specifies the schedule name. To avoid possible unknown problems, you are
not recommended to use schedules with time overlapping.
To delete the specified schedule, in the ZTNA policy configuration mode, use the following com-
mand:
no schedule schedule-name
To specify the action to be performed on user traffic that hits the ZTNA policy, in the ZTNA
policy configuration mode, use the following command:
action {permit | deny}
By default, the configured ZTNA policy will take effect immediately. You can disable a ZTNA
policy to terminate its control over traffic. To enable or disable a ZTNA policy, in the ZTNA
policy configuration mode, use the following command:
l Disable: disable
l Enable: enable
To configure description for ZTNA policy, in the ZTNA policy configuration mode, use the fol-
lowing command:
description description
l description - Specifies the description of the ZTNA policy. The length is 1 to 255 characters.
When the policy is already configured with description, it will be overwritten by the new
description.
To delete the policy description, in the ZTNA policy configuration mode, use the following com-
mand:
no description
l For the ZTNA policies of action Deny, logs will be generated when the matched traffic is
denied.
Before using this function, make sure the log function for the traffic is enabled. In the global con-
figuration mode, use the command logging traffic session on. To configure the log management of
ZTNA policies, in the ZTNA policy configuration mode, use the following command:
log {policy-deny | session-start | session-end}
l policy-deny – Generates logs when the matched traffic is denied. This parameter is applic-
able to the ZTNA policies of action Deny.
l session-start – Generates logs when the matched traffic starts its session. This parameter is
applicable to the ZTNA policies of action Permit.
l session-end – Generates logs when the matched traffic ends its session. This parameter is
applicable to the ZTNA policies of action Permit.
To cancel the log management configuration, in the ZTNA policy configuration mode, use the fol-
lowing command:
no log {policy-deny | session-start | session-end}
When the system is installed with the anti-virus license, you can bind an anti-virus profile to a
ZTNA policy to achieve virus detection on traffic matching the ZTNA policy and process the
detected viruses based on the Anti-Virus Profile. For information about anti-virus, please refer to
Anti-Virus.
To bind an anti-virus profile, in the ZTNA policy configuration mode, use the following com-
mand:
av profile-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no av
When the system is installed with the sandbox license, you can bind a sandbox profiles to a
ZTNA policy to achieve sandbox detection on traffic matching the ZTNA policy. By using the
cloud sandbox and the local sandbox technology, the system analyzes the suspicious file and col-
lects the actions of the suspicious file, verifies the legality of the file, gives the analysis result to
the system and deals with the malicious file based on the actions set by system. For information
about sandbox, please refer to Sandbox.
To bind a sandbox profile, in the ZTNA policy configuration mode, use the following command:
sandbox profile-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no sandbox
When the system is installed with the IPS license, you can bind an IPS profile to a ZTNA policy
to detect network attacks in traffic matching the ZTNA policy and perform actions such as block-
ing on the attacks based on the IPS Profile. For information about IPS, please refer to IPS.
To bind an IPS profile, in the ZTNA policy configuration mode, use the following command:
ips profile-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no ips
After the ZTNA policy is bound with a file filter profile, the system will perform file detection on
traffic matching the ZTNA policy and perform control actions on the file matching the filter con-
ditions based on the file filter profile. For information about file filter, please refer to File Filter.
To bind a file filter profile, in the ZTNA policy configuration mode, use the following command:
dlp profile-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no dlp
After the ZTNA policy is bound with a file content filter profile, the system will perform file con-
tent detection on traffic matching the ZTNA policy and perform control actions such as blocking
or logging based on the file content filter profile. For information about file content filter, please
refer to File Content Filter.
To bind a file filter profile, in the ZTNA policy configuration mode, use the following command:
file-contentfilter profile-name
To cancel the binding, in the ZTNA policy configuration mode, use the following command:
no file-contentfilter
Some global configurations for the ZTNA policy should be completed in the global ZTNA policy
configuration mode. To enter the global ZTNA policy configuration mode, in the system global
configuration mode, use the following command:
ztna-policy-global
This section describes the following global ZTNA configurations:
You can specify the default action for the traffic that is not matched to any configured ZTNA
policy. The system will process the traffic according to the specified default action. By default,
the system will deny such traffic.
To configure the default action, in the global ZTNA policy configuration mode, use the following
command:
default-action {permit | deny}
l permit | deny - Specifies the default action, i.e. permitting or denying access to resources.
By default, ZTNA session rematch is enabled. When you add, modify or delete a ZTNA policy,
the matched ZTNA policies for existing ZTNA sessions might change. The system will dispose
sessions as follows:
l If ZTNA session rematch is enabled, the system will rematch ZTNA policies for existing ses-
sions and delete the sessions for which the matched policy has changed.
l If ZTNA session rematch is disabled, the system will not rematch ZTNA policies for existing
sessions. Related sessions will be kept until they time out.
Use the following command in the global ZTNA policy configuration mode to disable and enable
ZTNA session rematch:
For traffic hitting the ZTNA default policy, you can specify whether to generate logs. By default,
the system does not generate log for such kind of traffic. To generate log for such traffic, in the
global ZTNA policy configuration mode, use the following command:
log ztna-policy-default
To restore to the default value, in the global ZTNA policy configuration mode, use the following
command:
no log ztna-policy-default
To move a ZTNA policy, in the global ZTNA policy configuration mode, use the following com-
mand:
move {name rule-name | id} {top | bottom | before {name rule-name | id} | after {name rule-
name | id} }
l name rule-name | id id – Specifies the ZTNA policy ID or name that you want to move.
l before {name rule-name | id id} – Moves the ZTNA policy before the specified policy ID
or name.
l after {name rule-name | id id} – Moves the ZTNA policy after the specified policy ID or
name.
To view the configuration information of the specified ZTNA policy, in any mode, use the fol-
lowing command:
show ztna-policy {name rule-name | id id}
To view the ZTNA policy configuration information that matches the specified filter conditions,
in any mode, use the following command:
show ztna-policy filter { [application-resource application-resource-name] [application-resource-
group application-resource-group-name] [description description] [endpoint-tag tag-name]
[namerule-name] [user user-name] [user-group user-group-name] }
l description description - Shows ZTNA policy configuration information that matches the spe-
cified description.
l endpoint-tag tag-name - Shows ZTNA policy configuration information that matches the spe-
cified endpoint tag.
l namerule-name - Shows ZTNA policy configuration information that matches the specified
ZTNA policy name.
l user user-name - Shows ZTNA policy configuration information that matches the specified
user name.
To view the configuration information of all ZTNA policies, in any mode, use the following com-
mand:
show ztna-policy
To view the statistics information of ZTNA policies ranked in the top 10, top 20 and top 50 hit
counts, in any mode, use the following command:
show ztna-policy statistics-information top {10 | 20 | 50 | all}
l top {10 | 20 | 50 | all} - Shows the statistics information of ZTNA policies ranked in the
top 10, top 20 and top 50 hit counts. all means the statistics information of all ZTNA policies
will be shown in descending order of hit counts.
To clear the statistics information of the specified ZTNA policy, in any mode, use the following
command:
clear ztna-policy statistics-information {name rule-name | id id}
To clear the statistics information of all ZTNA policies, use the following command:
clear ztna-policy statistics-information all
To clear the statistics information of the ZTNA default policy, use the following command:
clear ztna-policy statistics-information default-action
Address pool is used to store IPv4 addresses allocated to clients. When a client connects to its
server, the server will take an IPv4 address from the address pool according to the client propriety
(like DNS server address or WIN server address) and give it to the client.
access-address-pool pool-name
l pool-name – Specifies a name for the address pool. The length is 1 to 31 characters.
This command creates a new address pool and leads you into the address pool configuration
mode; if the pool with this name exists, you will enter its configuration mode directly.
To delete an address pool, in the global configuration mode, use the following command:
no access-address-pool pool-name
The following sections explain how to configure address pools, including:
To configure the start ip, end ip and network mask of an address pool, in the IPv4 address pool
configuration mode, use the following command:
address start-ip end-ip netmask A.B.C.D
l netmask A.B.C.D – Specifies the network mask for this IPv4 address range.
To delete the IP range setting of an address pool, in the IPv4 address pool configuration mode,
use the following command:
no address
Some addresses in the address pool need to be reserved for other devices, like gateways, FTP serv-
ers, etc. These reserved IPv4 addresses are not allowed to allocate to clients.
To configure the start IP and end IP of reserved IP range, in the IPv4 address pool configuration
mode, use the following command:
exclude address start-ip end-ip
To delete the reserved address range, in the IPv4 address pool configuration mode, use the fol-
lowing command:
no exclude
If an IPv4 client needs static IPv4 address, IP-user binding rule can be applied to meet this
requirement. Binding the user of IPv4 client to an IPv4 address in the address pool can guarantee
that this IPv4 address is allocated to the client when it reaches the server. In addition, IPv4
address for an client can be defined to an address range by using IP-role binding which defines an
IP range for this role. When a client with the role connects to the server, it gets one address from
the IPv4 addresses bound to this role.
When an IPv4 server allocates IPv4 addresses, it follows the rules below:
2. Check whether the IP-role binding rule is configured for the client. If yes, get an IP from
the IP range and allocate to the client; if no, the server will select an IP which is not bound
or used from the address pool, then allocate it to the client.
Notes: IPv4 addresses in the IP-user binding rules and those in the IP-role binding
rules should not conflict with each other.
Binding an IP to a User
To bind an IP address to a user, in the IPv4 address pool configuration mode, use the following
command:
ip-binding user user-nameip ip-address
l ip ip-address – Specifies an available IPv4 address in the address pool which will be bound
to the user.
To cancel an IP-user binding, in the IPv4 address pool configuration mode, use the following
command:
no ip-binding useruser-name
Binding an IP to a Role
To bind an IP address to a role, in the IPv4 address pool configuration mode, use the following
command:
ip-binding role role-name ip_range start-ip end-ip
l ip_range start-ip end-ip – Specifies the available IP range (start IPv4 address and end IPv4
address) in the address pool.
To cancel a binding between an IP range and a role, in the IPv4 address pool configuration mode,
use the following command:
no ip-binding role role-name
Normally, if a user belongs to multiple roles which bind to different IPv4 addresses, the system
searches for the first rule which matches the user and applies the IPv4 address under this rule to
the user. By default, new rule is at the bottom of the rule list.
To move the position of an IP-role binding rule in the rule list, in the IPv4 address pool con-
figuration mode, use the following command:
move role-name1 {b efo re role-name2 | after role-name2 | to p | b o tto m}
l before role-name2 – Moves the binding rule before the IP-role binding specified here.
l after role-name2 – Moves the binding rule after the IP-role binding specified here.
l top – Moves the binding rule to the top of the IP-role binding rule list.
l bottom – Moves the binding rule to the bottom of the IP-role binding rule list.
To specify a DNS server, in the IPv4 address pool configuration mode, use the following com-
mand:
dns address1 [ address2 ] [ address3 ] [ address4 ]
l address1 – Specifies the IPv4 address of DNS servers. You can specify up to four addresses.
To specify a WINS server, in the IPv4 address pool configuration mode, use the following com-
mand:
wins address1 [ address2 ]
l address1 – Specifies the IPv4 address of WINS server. You can specify up to two WINS
servers.
To cancel the WINS server setting, in the IPv4 address pool configuration mode, use the fol-
lowing command:
no wins
To view information about an IPv4 address pool, in any mode, use the following command:
show access-address-pool [ pool-name ]
l pool-name – Specifies the name of IPv4 address pool to be shown. If this parameter is not
specified, you can view all IPv4 address pools.
Name: pool_test1
To view statistical information about an IPv4 address pool, in any mode, use the following com-
mand:
show access-address-pool pool-name statistics
l pool-name – Specifies the name of IPv4 address pool whose statistics you want to view.
IPv6 address pool is used to store IPv6 addresses allocated to clients. When a client connects to
its server, the server will take an IPv6 address from the address pool according to the client pro-
priety (like DNS server address or WIN server address) and give it to the client.
To creat an IPv6 address pool, in the global configuration mode, use the following command:
access-address-pool-ipv6 pool-name
l pool-name – Specifies a name for the address pool. The length is 1 to 31 characters.
To configure the start ip, end ip and network mask of an IPv6 address pool, in the IPv6 address
pool configuration mode, use the following command:
address start-ipv6-address end-ipv6-address prefix-len prefix-length
l prefix-len prefix-length – Specifies the prefix for this IPv6 address range. The range is 111 to
128.
To delete the IP range setting of an address pool, in the IPv6 address pool configuration mode,
use the following command:
no address
Some addresses in the address pool need to be reserved for other devices, like gateways, FTP serv-
ers, etc. These reserved IPv6 addresses are not allowed to allocate to clients.
To delete the reserved address range, in the IPv6 address pool configuration mode, use the fol-
lowing command:
no exclude
If an IPv6 client needs static IPv6 address, IP-user binding rule can be applied to meet this
requirement. Binding the user of IPv6 client to an IPv6 address in the address pool can guarantee
that this IPv6 address is allocated to the client when it reaches the server. In addition, IPv6
address for an client can be defined to an address range by using IP-role binding which defines an
IP range for this role. When a client with the role connects to the server, it gets one address from
the IPv6 addresses bound to this role.
When an IPv6 server allocates IPv6 addresses, it follows the rules below:
1. Check whether the IP-user binding rule is configured for the client. If yes, allocate the
bound IP to the client; if no, the server will select an IP which is not bound or used from
the address pool, then allocate it to the client.
2. Check whether the IP-role binding rule is configured for the client. If yes, get an IP from
the IP range and allocate to the client; if no, the server will select an IP which is not bound
or used from the address pool, then allocate it to the client.
Notes: IPv6 addresses in the IP-user binding rules and those in the IP-role binding
rules should not conflict with each other.
To bind an IP address to a user, in the IPv6 address pool configuration mode, use the following
command:
ip-binding user user-nameip ipv6-address
l ip ipv6-address – Specifies an available IPv6 address in the address pool which will be bound
to the user.
To cancel an IP-user binding, in the IPv6 address pool configuration mode, use the following
command:
no ip-binding useruser-name
Binding an IP to a Role
To bind an IP address to a role, in the IPv6 address pool configuration mode, use the following
command:
ip-binding role role-name ip-range start-ipv6-address end-ipv6-address
To cancel a binding between an IP range and a role, in the IPv6 address pool configuration mode,
use the following command:
no ip-binding role role-name
Normally, if a user belongs to multiple roles which bind to different IPv6 addresses, the system
searches for the first rule which matches the user and applies the IPv6 address under this rule to
the user. By default, new rule is at the bottom of the rule list.
l role –name1 – Specifies the role whose binding you want to move.
l before role-name2 – Moves the binding rule before the IP-role binding specified here.
l after role-name2 – Moves the binding rule after the IP-role binding specified here.
l top – Moves the binding rule to the top of the IP-role binding rule list.
l bottom – Moves the binding rule to the bottom of the IP-role binding rule list.
To specify a DNS server, in the IPv6 address pool configuration mode, use the following com-
mand:
dns ipv6-address1 [ ipv6-address2 ] [ ipv6-address3 ] [ ipv6-address4 ]
l ipv6-address1 – Specifies the IPv6 address of DNS servers. You can specify up to four
addresses.
To cancel the DNS setting, in the IPv6 address pool configuration mode, use the following com-
mand:
n o dn s
To view information about an IPv6 address pool, in any mode, use the following command:
show access-address-pool-ipv6 [ pool-name ]
l pool-name – Specifies the name of IPv6 address pool to be shown. If this parameter is not
specified, you can view all IPv6 address pools.
--------------------------------------------------------
1-ipv6-pool 1000:5678:2222~ - 1000:5678:2222~112
========================================================-
=======
hostname(config)# sh o w access-address-p o o l-ip v6 2-ip v6-p o o l
Name: 2-ipv6-pool
To view statistical information about an IPv6 address pool, in any mode, use the following com-
mand:
show access-address-pool-ipv6 pool-name statistics
l pool-name – Specifies the name of IPv6 address pool whose statistics you want to view.
l instance-name - Specifies a name for the ZTNA instance. The length is 1 to 31 characters.
This command creates a ZTNA instance and leads you into the ZTNA instance configuration
mode; if the instance exists, you will enter the ZTNA instance configuration mode directly.
To delete a ZTNA instance, in the ZTNA instance configuration mode, use the following com-
mand:
no tunnel ztna instance-name
This section describes how to configure a ZTNA instance, including:
l Configuring Anti-Replay
l Configuring Multi-logon
This command can only be configured when the version is IPv6. By default, the service type of
ZTNA instance is IPv4. To specify the service type of the ZTNA instance, including IPv4 or
IPv6, in the ZTNA instance configuration mode, use the following command:
service-type {ipv4 | ipv6}
l ipv4 | ipv6 – Specifies the service type of the ZTNA instance, including IPv4 or IPv6.
To specify an IPv4 address pool for the IPv4 ZTNA instance, in the ZTNA instance con-
figuration mode, use the following command:
access-address-pool pool-name
To cancel the IPv4 address pool, in the ZTNA instance configuration mode, use the following
command:
no access-address-pool
To specify an IPv6 address pool for the IPv6 ZTNA instance, in the ZTNA instance con-
figuration mode, use the following command:
To cancel the IPv6 ZTNA address pool, in the ZTNA instance configuration mode, use the fol-
lowing command:
no access-address-pool-ipv6
The client uses HTTPS protocol to access the device. Each ZTNA instance can be configured
with 8 interfaces. To specify the ZTNA interface of the device, in the ZTNA instance con-
figuration mode, use the following command:
interface interface-name
l interface-name – Specifies the name of the interface for the ZTNA client to connect.
To cancel the ZTNA interface, in the ZTNA instance configuration mode, use the following com-
mand:
no interface interface-name
To specify the SSL protocol version of the ZTNA instance, in the ZTNA instance configuration
mode, use the following command:
ssl-protocol { tlsv1 | tlsv1.2 | gmssl | any }
l gmssl – Uses GMSSLv1.0 protocol. After selecting this option, you're recommended to
select the trust domain that contains SM2 type key for the PKI trust domain and the encryp-
l any – Uses any of the following protocols: TLSv1, TLSv1.1 and TLSv1.2.
To restore to the default value, in the ZTNA instance configuration mode, use the following com-
mand:
no ssl-protocol
If tlsv1.2 or any is specified to the SSL protocol in ZTNA server, you need to convert the cer-
tificate that you are going to import to the browser or certificate in the USB Key to make it sup-
port the tlsv1.2 protocol before the digital certificate authentication via ZTNA client, so that the
ZTNA server can be connected successfully when the Username/Password + Digital Certificate
or Digital Certificate Only authentication method is selected. Prepare a PC with Windows or
Linux system which has been installed with OpenSSL 1.0.1 or later before processing the cer-
tificate.
We will take the certificate file named oldcert.pfx as an example, the procedure is as follows:
1. In the OpenSSL software interface, enter the following command to convert a certificate in
.pfx format to a certificate in .pem format: openssl pkcs12 –in oldcert.pfx –out cert.pem
2. Enter the following command to convert the certificate in .pem format to a .pfx format cer-
tificate that supports tlsv1.2 protocol: openssl pkcs12 –export –in cert.pem –out new-
cert.pfx –CSP "Microsoft Enhanced RSA and AES Cryptographic Provider"
3. Import the newly generated .pfx format certificate into your browser or USB Key.
To restore to the default value, in the ZTNA instance configuration mode, use the following com-
mand:
no trust-domain
Tips: For information on how to create a PKI trust domain, see PKI in User
Authentication.
To specify the encryption trust domain which is used for the GMSSL negotiation for ZTNA, in
the ZTNA configuration mode, use the following command:
trust-domain-enc trust-domain-name
l enc-cert – Specifies the predefined encryption trust domain for GMSSL negotiation.
To delete the configured encryption trust domain, in the ZTNA configuration mode, use the fol-
lowing command:
no trust-domain-enc
Tunnel cipher suite includes encryption algorithm, authentication algorithm and compression
algorithm.
To specify a cipher suite for the tunnel, in the ZTNA instance configuration mode, use the fol-
lowing command:
tun n el-cip h er en cryp tio n {n ull | des | 3des | aes | aes192 | aes256 | sm4} h ash {n ull | md5
| sh a | sh a256 | sh a384 | sh a512 | sm3} [co mp ressio n defl]
l null | md5 | sha | sha256 | sha384 | sha512| sm3 – Specifies an authentication algorithm.
The default value is MD5. Null means no authentication is specified. For more information
about authentication algorithms, see Hash Algorithm in VPN.
l compression defl – Specifies the compression algorithm DEFALTE. The default setting is
no compression. For more information on compression algorithms, see Compression
Algorithm in VPN.
To restore to the default cipher suite setting, in the ZTNA instance configuration mode, use the
following command:
no tunnel-cipher
AAA server in ZTNA is used for user authentication. To specify an AAA server, in the ZTNA
instance configuration mode, use the following command:
aaa-server aaa-server-name [domain domain-name] [keep-domain-name]
l aaa-server-name – Specifies the name of AAA server you want to use for authentication.
l domain domain-name – Specifies the domain for the AAA server so that it can be dis-
tinguished from other servers. The length is 1 to 31 characters.
l keep-domain-name – After specifying this parameter, the AAA server uses the full name of
the user, including the user name and the domain name, to perform the authentication.
To cancel the AAA server in an ZTNA, in the ZTNA instance configuration mode, use the fol-
lowing command:
no aaa-server aaa-server-name [domain domain-name]
l port-number – Specifies the SSL port number. The range is 1 to 65535. If multiple ZTNA
instances use the same interface, their SSL port numbers cannot be the same and should be dif-
ferent from other services' SSL port numbers.
To restore to the default value, in the ZTNA instance configuration mode, use the following com-
mand:
no ssl-port
The system supports ZTNA data transmission over TCP or UDP. The default protocol is UDP,
and the default port is 4433. To configure the transport protocol and port number, in the ZTNA
instance configuration mode, use the following command:
transport-service {tcp | udp} port-number
l port-number – Specifies the port number for data transmission. The range is 1 to 65535.
To delete the transport protocol and port number, in the ZTNA instance configuration mode, use
the following command:
no transport-service {tcp | udp}
To reach the destination IPv4/IPv6 network segment or destination domain name through the
ZTNA tunnel, you need to specify them by configuring the IPv4/IPv6 ZTNA tunnel route.
l The specified destination domain name will be distributed to the ZTNA client, and the client
will generate the route to the specified destination according to the resolving results from
DNS.
You can only specify the IPv4 ZTNA tunnel route for the IPv4 ZTNA instance. To reach the des-
tination IPv4 network segment through a ZTNA tunnel, in the ZTNA instance configuration
mode, use the following command:
split-tunnel-route ip-address/netmask [metric metric-number]
l ip-address/netmask – Specifies the IP address and network mask of the destination network
segment.
l metric metric-number – Specifies a metric value for the route. The value range is 1 to 9999.
The default value is 35.
You can only specify the IPv6 ZTNA tunnel route for the IPv6 ZTNA instance. To reach the des-
tination IPv6 network segment through a ZTNA tunnel, in the ZTNA instance configuration
mode, use the following command:
split-tunnel-route-ipv6 ipv6-address/prefix [metric metric-number]
l metric metric-number – Specifies a metric value for the route. The value range is 1 to 9999.
The default value is 35.
After specifying a ZTNA tunnel route to a domain name, the system will distribute the domain
name to the client. The client will generate the route to the specified destination according to the
resolving results from DNS. To configure a ZTNA tunnel route to the specified domain name, in
the ZTNA instance configuration mode, use the following command:
domain-route {disable | enable | max-entries value | url}
l disable – Does not distribute the specified domain name to the client. This is the default
option.
l max-entries value – Specifies the maximum number of routes that can be generated after
obtaining the resolved IP addresses of the domain name. The default value is 1000. The value
ranges from 1 to 10000.
l url – Specifies the URL of the domain name. You can add one each time and you can add up
to 64 domain names. The URL cannot exceed 63 characters and it cannot end with a dot (.).
Both wildcards and a single top level domain, e.g. com and .com are not supported.
To delete the specified domain name, use the following command in the ZTNA instance con-
figuration mode:
no domain-route url
Anti-Replay is used to prevent hackers from injecting the captured packets repeatedly by rejecting
the packets.
To enable Anti-Replay, in the ZTNA instance configuration mode, use the following command:
anti-replay {32 | 64 | 128 | 256 | 512}
l 32 – Specifies that the Anti-Replay window size is 32. This is the default value.
Bigger window size suits more in bad network conditions, such as serious packets disorder.
To restore the Anti-Replay window size to the default value, in the ZTNA instance configuration
mode, use the following command:
no anti-replay
l copy – Copies the DF value from the destination of the packet. This is the default value.
To restore to the default value, in the ZTNA configuration mode, use the following command:
Idle time defines the time length a client is allowed to connect to the device without any oper-
ation. When a client takes no action for the time period of idle time specified here, it is forced to
log out the device.
To specify the idle time, in the ZTNA instance configuration mode, use the following command:
idle-time time-value
l time-value – Specifies the idle time value. The value range is 1 to 1500 minutes. The default
value is 30.
To restore to the default value, in the ZTNA instance configuration mode, use the following com-
mand:
no idle-time
Configuring Multi-Logon
To allow multiple users to log in at multiple places with the same user name simultaneously, in
the ZTNA configuration mode, use the following command:
allow-multi-logon
This command enables the function and does not limit the login number. If you want to specify
the number of users logging in with the same user name simultaneously, in the ZTNA con-
figuration mode, use the following command:
allow-multi-logon number number
l number – Specifies the number of users who are allowed to log in with one user name. The
value range is 1 to 99999999.
To disable multi-logon, in the ZTNA instance configuration mode, use the following command:
no allow-multi-logon
ZTNA supports configuration of multiple backup gateways for clients to select which to connect.
When the ZTNA device is configured with backup gateways, ZTNA users can enable gateway
detection on clients to select the connected ZTNA gateway.
After gateway detection is enabled, ZTNA client will attempt to obtain the backup gateway list
from the gateway that the user is logging in, detect the link quality of all backup gateways and
then establish the ZTNA connection with the one that has the best link quality. After the con-
nection is established, ZTNA client will detect and update the link quality every 30 minutes.
When a connection or login failure occurs, ZTNA client will switch to connect the backup gate-
way that has the best link quality.
To configure a backup gateway, in the ZTNA instance configuration mode, use the following com-
mand:
gateway gateway-name {ipv4 ip-address | domain string}
l string - Specifies the domain name of the backup gateway. The range is 1 to 255 characters,
and the length between two dots (.) cannot exceed 63 characters.
URL redirection function in ZTNA server displays a specified URL page to the authenticated cli-
ent user. By default, this function is disabled.
To enable URL redirection, in the ZTNA instance configuration mode, use the following com-
mand:
redirect-url url title name
l url – Specifies the URL address of the page shown for the new authenticated client. The
value range is 1 to 255 characters. It can be an HTTP (http://) or an HTTPS (https://)
address.
l title name – Specifies a description for the redirect page. The value range is 1 to 31 char-
acters.
To cancel URL redirection, in the ZTNA instance configuration mode, use the following com-
mand:
no redirect-url
URL Format
With the browser download function, you're allowed to download the ZTNA client via the
browser WebUI. By default, the function is enabled. When this function is disabled, you can only
download the ZTNA client from www.hillstonenet.com.cn.
To enable the function , in the ZTNA instance configuration mode, use the following command:
client-download-page enable
To disable the function , in the ZTNA instance configuration mode, use the following command:
client-download-page disable
l instance-name – Specifies the name of the ZTNA instance you want to bind.
To cancel the binding of a ZTNA instance, in the tunnel interface configuration mode, use the fol-
lowing command:
no tunnel ztna instance-name
By default, this function is disabled. To enable the USB Key certificate authentication, in the
ZTNA instance configuration mode, use the following command:
client-cert-authentication [usbkey-only]
l usbkey-only – Specifies the USB Key authentication as USB Key only. If this parameter is
not specified, the authentication of Username/Password + USB Key will be used.
To disable the function, in the ZTNA instance configuration mode, use the following command:
no client-cert-authentication [usbkey-only]
CA certificates can be imported through various methods, including downloading from an FTP or
TFTP server and from USB disk. To import a certificate, in the execution mode, use the fol-
lowing command:
import pki trust-domain trust-domain-name cacert from {ftp server ip-address [user user-name
password password] | tftp server ip-address | usb0 | usb1} file-name
l ftp server ip-address [user user-name password password] – Specifies the IP address of FTP
server, user name and password to log in. If the server supports anonymous login, skip the
user name and password.
USB Key certificate authentication requires a trust domain for the CA certificate. When the cer-
tificate provided from client matches one of the trust domain certificates, it passes authentication.
To specify a trust domain, in the ZTNA instance configuration mode, use the following com-
mand:
client-auth-trust-domain trust-domain
Repeat this command to add more trust domains. The system supports up to 10 domains.
To cancel a PKI trust domain for a certificate, in the ZTNA instance configuration mode, use the
following command:
no client-auth-trust-domain trust-domain
Tips: For information on how to create PKI trust domain, see PKI in User Authentic-
ation.
The two-step verification function is disabled by default. To enable or disable the two-step veri-
fication function, in the ZTNA instance configuration mode, use the following command:
To specify the type of two-step verification, in the ZTNA instance configuration mode, use the
following command:
two-step verification type {token | sms modem | sms service-provider | email}
l sms modem - Specifies to send a short message through an SMS modem for two-step veri-
fication.
l sms service-provider - Specifies to send a short message through an SMS gateway for two-step
verification.
The system supports for authentication through the token password when logging in, and user-
defined prompt information for token authentication.
To configure the prompt message of the token authentication, in the ZTNA instance con-
figuration mode, use the following command:
token-auth prompt-message message
l prompt-message message- Specifies the prompt message. The range is 1 to 255 characters.
SMS Authentication
SMS authentication means that when a ZTNA user logs in by providing a user name and pass-
word, the Hillstone device, through an SMS modem or an SMS gateway, sends a dynamically gen-
erated random password to the mobile phone number of the user in SMS after the use rname and
password is entered. The user must enter the random password received in the mobile phone in
order to log in the ZTNA server and access intranet resources. This section describes how to con-
figure the global parameters for the SMS authentication function.
Modem Authentication
Hillstone device adopts an external GSM modem. Before configuring the SMS authentication
function, you need to prepare a SIM card and a GSM modem, and then connect the modem to the
device properly. To connect the modem to the device, first, you should insert the SIM card into
the GSM modem properly; then, connect the modem to the USB port of the device via a USB
cable.
The following models of SMS modem are recommended:
ZTNA local users and AD users, when assigned with a mobile phone number by the admin-
istrator, can use SMS password sent by the system to authenticate.
To configure the phone number for a local user, in the user configuration mode, use the following
command:
phone phone-number
To cancel a number, in the user configuration mode, use the following command:
no phone
For an AD user, configure the mobile phone number in the mobile propriety of AD server.
Each SMS authentication code has a period of validity. If the user neither types the authentication
code within the period nor applies for a new code, ZTNA server will disconnect the connection.
To configure the SMS authentication code validity period, in the ZTNA instance configuration
mode, use the following command:
sms-auth expiration expiration
l expiration – Specifies the validity period. The range is 1 to 10 minutes. The default value is
10.
To restore the validity period to the default value, in the ZTNA instance configuration mode, use
the following command:
no sms-auth expiration
To specify the length of the SMS authentication code, in the ZTNA instance configuration mode,
use the following command:
sms-auth verification-code-length length
l length – Specifies the length of the SMS authentication code. The range is 4 to 8 characters.
The default value is 8.
In the ZTNA. instance configuration mode, use the following command to restore the code
length to the default value.
no sms-auth verification-code-length
To specify the SMS authentication code content, in the ZTNA instance configuration mode, use
the following command:
sms-auth message-content content
In the ZTNA instance configuration mode, use the following command to restore the code con-
tent to the default value.
no sms-auth message-content
You can specify the maximum number of SMS messages sent by the SMS modem per hour or per
day. If the modem is required to send more messages than the maximum number, it will reject and
record a log.
To configure the maximum SMS number, in the global configuration mode, use the following com-
mand:
sms modem {num-per-hour | num-per-day} number
If you do not limit the maximum number of SMS messages sent by the SMS modem per hour or
per day, in the global configuration mode, use the following command:
no sms modem {num-per-hour | num-per-day}
To test if the device works properly, you can send a test message to a phone number.
To send a test message, in any mode, use the following command:
exec sms send test-message to phone-number
l phone-number – Specifies the phone number which receives the test message. The length is
6 to 16 characters.
To view the configuration information of an SMS modem, in any mode, use the following com-
mand:
show sms modem
Hillstone device, through SMS gateway or other proxy server, can send a short message to users in
SMS after the user name and password is entered. Before configuring the function, you need to
ask the supplier to provide the necessary information, such as the gateway address, device ID
which sends the short messages.
SMS gateway authentication configuration includes:
2. Bind the SP instance to a configured ZTNA instance, and enable the SMS gateway authen-
tication function.
The types of SMS gateway protocol supported by the device include SGIP, UMS, ACC,
ALIYUNSMS, XUANWU, CAS, BEIKE and HTTP(S). SGIP indicates the SGIP protocol of
Chinaunicom. UMS indicates the enterprise information platform of Chinaunicom. ACC indicates
the ACC protocol of Chinatelecom. ALIYUNSMS indicates the SMS service platform of Alibaba
Cloud. XUANWU indicates the Xuanwu Technology SMS service platform. CAS indicates the
12302 SMS service platform. BEIKE indicates BEIKE SMS gateway. HTTP(S) indicates
HTTP/HTTP(S) protocol. To specify the default protocol type of SMS gateway, in the global con-
figuration mode, use the following command:
sms service-provider default-protocol {sgip | ums | acc | aliyunsms| xuanwu | cas | beike |
http(s)}
In the global configuration mode, use the command no sms service-provider default-protocolto
cancel the specified default protocol type.
Creating an SP Instance
To create an SP instance, use the following command in the global configuration mode:
sms service-provider sp-name [protocol {sgip | ums | acc | aliyunsms| xuanwu | cas | beike |
http(s)} ]
l protocol {sgip | ums | acc | aliyunsms | xuanwu | cas | beike | http(s)} - Specifies the pro-
tocol of SMS gateway that the SP instance is running. System only supports SGIP of Chin-
aunicom. UMS indicates the enterprise information platform of Chinaunicom. ACC indicates
the ACC protocol of Telecom. ALIYUNSMS indicates the SMS service platform of Alibaba
Cloud. XUANWU indicates the Xuanwu Technology SMS service platform. CAS indicates
the 12302 SMS service platform. BEIKE indicates the BEIKE SMS gateway. http(s) indicates
HTTP/HTTPS protocol.
This command creates an SP instance and leads you into the SP instance configuration mode; if
the instance exists, you will enter the SP instance configuration mode directly. The system sup-
ports at most eight SP instances now.
In the global configuration mode, use the following command to delete the specified SP instance:
no sms service-provider sp-name
The system supports multi-Vrouter, and the default VRouter is trust-vr. To specify the VRouter
which SP belongs to, use the following command in the SP instance configuration mode:
vro uter {trust-vr | vr-name }
In the SP instance configuration mode, use the following command to restore the default
VRouter:
n o vro uter
When the HTTP (S) protocol type is specified for the SP instance, you can specify the request
method of HTTP(S). The default request method is POST. To specify the request method, in the
SP instance configuration mode, use the following command:
request-type [get | post]
When the HTTP (S) protocol type is specified for the SP instance, you can specify the charset of
HTTP(S). The default charset is UTF-8. To specify the charset, in the SP instance configuration
mode, use the following command:
charset [utf-8 | gbk]
To specify the protocol of UMS, ACC , ALIYUNSMS, BEIKE or CAS, in the SP instance con-
figuration mode, use the following command:
p ro to co l {h ttp | h ttp s}
l http | https– Specifies the protocol type as HTTP or HTTPS. The default protocol of UMS
and BEIKE is HTTPS. The default protocol of UMS and CAS is HTTPS. The default pro-
tocol of ACC and ALIYUNSMS is HTTP.
In the SP instance configuration mode, use the following command to restore the default protocol
type:
no protocol
When the HTTP (S) protocol type is specified for the SP instance, you can specify the URL of
HTTP(S). You need to enter a complete access path. The system requests to communicate with
l url string–Specifies the URL address of the SMS gateway, such as "http(s)://1.1.1.1". The
range is 1 to 255 characters.
When the HTTP (S) protocol type is specified for the SP instance, you can specify the success
code of HTTP(S). Success code is used to determine whether the SMS gateway successfully sent
an authentication message. The SMS gateway sends an authentication message to the mobile
phone, and when completed, it will send a message containing the status code to the system. If
the message contains the specified success code, the system will judge that the authentication
message has been sent successfully. For example, if an SMS gateway sent an authentication mes-
sage successfully, the status code returned is "OK: 325689", and if failed, the status number
returned is "ERROR: eUser". In this instance, you can specify the success code as "OK". When
the system receives a message sent by the SMS gateway, it determines whether the message con-
tains "OK". If the message contains the specified success code, it means that the SMS gateway
has sent message successfully. To specify the success code, in the SP instance configuration
mode, use the following command:
success-code string
l string–Specifies the success code. The range is 1 to 50 characters. Different SMS gateways
return different status code. Refer to the status code in the SMS gateway manual.
When the HTTP (S) protocol type is specified for the SP instance,you can configure attributes
to communicate with the SMS gateway. Attributes including the parameter name of the mobile
number field, the parameter name of the message content field, the password filed, and the user-
name filed, etc. You can configure up to 32 attributes. The parameter name of the mobile number
The system will obtain the parameter values of the mobile number field and the parameter values
of the message content field when SMS gateway and the system is communicating.
When the SMS gateway and the system communicate, the SMS gateway can obtain the parameter
values of the mobile number field and the parameter values of the message content field from the
system. To delete the parameter name of the specified mobile number field and the parameter
name of the message content field, use the command no default-attribute {phone-attr-name |
msg-content-attr-name}.
To specify the parameters of password to log in SMS gateway, which is an optional attribute, in SP
instance configuration mode, use the following command:
password-attribute password-name password-value
l user-value–Specifies the parameter value of the username, such as user1. The range is 2 to
255 characters.
To specify the gateway address and port number, in the SP instance configuration mode, use the
following command:
gateway {h o st hostname | ip ip-address } [ port port-number ]
l host hostname - Specifies the host name of the gateway. The range is 1 to 31 characters.
l port port-number - Specifies the port number of the gateway. When the protocol type is spe-
cified as "SGIP", the default port number is 8801; When the protocol type is specified as
"ACC", the default port number is 80. When the protocol type is specified as "UMS", the
default port number is 9600. When the protocol type is specified as "XUANWU" or "CAS",
the default port number is 8080.
Execute this command for many times and the latest configuration takes effect.
In the SP instance configuration mode, use the following command to delete the gateway address
and restore to the default port number:
n o gateway {h o st | ip }
To specify the template parameter of BEIKE SMS gateway, in the SP instance configuration
mode, use the following command:
template value
In SP instance configuration mode, use the following command to delete the template parameter
of BEIKE SMS gateway:
no template
When this function is enabled, the ACC SMS gateway will add a sign code field when sending a
request to the ACC server, which will prevent the content of the SMS from being tampered with.
In the SP instance configuration mode, use the following command to enable the sending sign
code function:
sign enable
In the SP instance configuration mode, use the following command to disable the sending sign
code function:
no sign enable
When the SP instance uses the SGIP type SMS gateway, after enabling the SMS Authentication
function, the system will send an Auth-message to the mobile phone number. In the SP instance
configuration mode, use the following command to set the number:
source-number phone-number
In the SP instance configuration mode, use the following command to cancel the specification of
user's phone number:
no source-number
When the SP instance uses the SGIP type SMS gateway, you have to ask your supplier to provide
the device ID of SP, which sends the SMS messages. In the SP instance configuration mode, use
the following command to specify the device ID:
device-code code-number
In the SP instance configuration mode, use the following command to cancel the device ID spe-
cification:
no device-code
To specify the user name/user ID and password, in the SP instance configuration mode, use the
following command:
user {username | userid} password password
l username | userid – Specifies the user name or user ID to log in SMS gateway. When the pro-
tocol type is specified as "UMS", "SGIP" or "CAS", the range is 1 to 64 characters. When the
protocol type is specified as "XUANWU", the range is 1 to 6 characters.
l password – Specifies the password for the user. When the protocol type is specified as
"UMS", "SGIP" or "CAS", the range is 1 to 64 characters. When the protocol type is specified
as "XUANWU", the range is 1 to 6 characters.
In SP instance configuration mode, use the following command to cancel the specification of user
name/user ID and password:
no user
When the SP instance uses the SGIP or UMS type SMS gateway, you can specify the maximum
number of SMS messages sent by the SMS gateway per hour or per day. To configure the max-
imum SMS number, in the SP instance configuration mode, use the following command:
{n um-p er-h o ur | n um-p er-day} number
l number – Specifies the maximum number of SMS messages per hour or per day. The value
range is 0 to 65535.
In the SP instance configuration mode, use the following command to cancel the maximum num-
ber:
n o {n um-p er-h o ur | n um-p er-day}
When the SP instance uses the UMS protocol type, users can specify the enterprise code
registered on the UMS platform, in the SP instance configuration mode, use the following com-
mand:
spcodespcode-number
In the SP instance configuration mode, use the following command to cancel the company code:
no spcode
If the protocol of SMS gateway that the SP instance is running is ALIYUNSMS, users must spe-
cify the AccessKeyId which will be used as the user name for authentication between the device
and the SMS gateway of Alibaba Cloud . To specify the AccessKeyId, in the SP instance con-
figuration mode, use the following command:
accesskeyidword
In the SP instance configuration mode, use the no accesskeyid command to cancel the specified
AccessKeyId.
If the protocol of SMS gateway that the SP instance is running is ALIYUNSMS, users must spe-
cify the AccessKeySecret which will be used as the password for authentication between the
device and the SMS gateway of Alibaba Cloud. To specify the AccessKeySecret, in the SP
instance configuration mode, use the following command:
accesskeysecret word
l word - Specifies the AccessKeySecret. The range is 1 to 31 characters. This parameter should
be the same with the template AccessKeySecret applied in the SMS of Alibaba Cloud.
In the SP instance configuration mode, use the no accesskeysecret command to cancel the spe-
cified AccessKeySecret.
The SP instance needs to be bound to the ZTNA tunnel to take effect. To specify the SMS gate-
way instance, in the ZTNA instance configuration mode, use the following command:
sms-auth service-provider sp-name
l sp-name – Specifies the name of the SP instance, which must be the created SP instance.
The value range is 1 to 31 characters.
If the protocol of the SP instance bound to ZTNA tunnel is SGIP, USM or ACC, users can spe-
cify a message sender name to display in the message content. If the protocol of the SP instance
bound to ZTNA tunnel is ALIYUNSMS, users must specify the sign name applied in the SMS of
l sender-name – Specifies the sender name. The range is 1 to 63 characters. The sign name
should be the same with the sign name applied in the SMS of Alibaba Cloud.
In the ZTNA instance configuration mode, use the following command to cancel the specified
sender name or sign name:
no sms-auth sms-sender-name
Notes: Due to the limitation of UMS enterprise information platform, when the the
SMS gateway authentication is enabled, the sender name will be displayed on the
name of the UMS enterprise information platform.
If the protocol of the SP instance bound to ZTNA tunnel is ALIYUNSMS, users must specify
the code of the SMS template applied in the SMS of Alibaba Cloud. To specify the template code,
in the ZTNA instance configuration mode, use the following command:
sms-auth sms-msg-templatecode word
l word – Specifies the template code. The range is 1 to 30 characters. This parameter should
be the same with the template code applied in the SMS of Alibaba Cloud.
In the ZTNA instance configuration mode, use the following command to cancel the specified
template code:
no sms-auth sms-msg-templatecode
If the protocol of SMS gateway that the SP instance is running is CAS, you can ask the 12302
SMS service platform for the request type. To specify the request type, in the SP instance con-
figuration mode, use the following common:
In the SP instance configuration mode, use the following command to cancel the request type:
no post-type
If the protocol of SMS gateway that the SP instance is running is CAS, you can ask the 12302
SMS service platform for the organization code. To specify the organization code, in the SP
instance configuration mode, use the following common:
orgcode orgcode
In the SP instance configuration mode, use the following command to cancel the organization
code:
no orgcode
If the protocol of SMS gateway that the SP instance is running is CAS, you can ask the 12302
SMS service platform for the SMS service type. To specify the SMS service type, in the SP
instance configuration mode, use the following common:
smstype smstype
In the SP instance configuration mode, use the following command to cancel the SMS service
type:
no smstype
If the protocol of SMS gateway that the SP instance is running is XUANWU, you must ask the
Xuanwu Technology SMS service platform for the trading code. To specify the trading code, in
the SP instance configuration mode, use the following common:
trading-code trading-code
In the SP instance configuration mode, use the following command to cancel the trading code:
no trading-code
If the protocol of SMS gateway that the SP instance is running is XUANWU, you must ask the
Xuanwu Technology SMS service platform for the channel. To specify the channel, in the SP
instance configuration mode, use the following common:
channel channel-value
In the SP instance configuration mode, use the following command to cancel the channel:
no channel
To test if the device works properly, you can send a test message to a phone number. To send a
test message, in any mode, use the following command:
exec sms sp sp-name send test-message to phone-number [test-msg-content content]
If the phone of the test number does not receive the test message, the system will record a log
with description about failure reason.
To view the SMS gateway configurations, use the following command in any mode:
show sms service-provider [sp-name]
l sp-name – Specifies the SP instance name. If not specified, the system will show all the SP
instance configurations that have already created.
To view the statistic information that indicates the SMS message is failed or succeed, use the fol-
lowing command in any mode:
show tunnel ztna ztna-name smsp-statistice [clear]
Email Authentication
Email Authentication means that when a ZTNA user logs in by providing a "username/password"
or a "username/password+Digital Certificate", Hillstone device, through a mail server, can auto-
matically send a Email containing random verification code to the user after the user name and
password is entered. The user must enter the random verification code received in order to log in
the ZTNA server and access intranet resources.
Configurations of Email authentication on ZTNA server include:
Users can receive the verification code via Email address configured on a local server or a Radius
server.
When receiving the verification code via Email address configured on a local server, to configure
the Email address, in the user configuration mode, use the following command:
email email-address
l email-address - Specifies the Email address used to receive the verification code. The range is
1 to 127 characters.
In the user configuration mode, use the no email command to cancel the specified Email address.
When receiving the verification code via Email address configured on a Radius server, users need
to configure the Email address on the Radius server. Take FreeRadius as an example:
To specify the existing Email server which the Email address that used to send the verification
code is configured on, in the ZTNA instance configuration mode, use the following command:
email-auth smtp-server smtp-server-name
In the ZTNA instance configuration mode, use the no email-auth smtp-server command to cancel
the specified Email server.
To specify the length of the Email verification code, in the ZTNA instance configuration mode,
use the following command:
email-auth verification-code-lengthlength
l length - Specifies the length of the Email verification code. The range is 4 to 8 characters. The
default value is 8.
In the ZTNA instance configuration mode, use the no email-auth verification-code-length com-
mand to restore the default value.
Each Email verification code has a period of validity. If the user neither types the code within the
period nor applies for a new code, ZTNA server will disconnect the connection.
To configure the lifetime of the Email verification code, in the ZTNA instance configuration
mode, use the following command:
email-auth expirationvalue
l value– Specifies the lifetime of the Email verification code. The range is 1 to 10 minutes.
The default value is 10.
To specify a verification code sender name to display in the Email content, in the ZTNA instance
configuration mode, use the following command:
email-auth sender-namename
l name - Specifies a verification code sender name to display in the Email content. The range is
1 to 63 characters. In order to prevent the mail from being identified as spam, it's recom-
mended to configure the sender name.
In the ZTNA instance configuration mode, use the no email-auth sender-name command to
restore the default value.
To specify the Email verification content, in the ZTNA instance configuration mode, use the fol-
lowing command:
email-auth message-contentcontent
l content - Specifies the Email verification content. The input must contain "$USERNAME"
(This parameter is used to get the user name) and "$VRFYCODE" (This parameter is used to
get the verification code). The range is 18 to 128 characters. The default content is "ZTNA
user <$USERNAME> email verification code: $VRFYCODE. Do not reveal to anyone! If
you did not request this, please ignore it.".
In the ZTNA instance configuration mode, use the no email-auth message-content command to
restore the default content.
1. ZTNA client sends knock packets to ZTNA device with the knock port number being the
destination port number.
2. ZTNA device checks the destination IP address of the knock packets. If the destination IP
address is not a configured hidden IP address, it will be discarded. If it is a configured hid-
den IP address, ZTNA device will verify it and generate a permit entry with the destination
IP address, destination port number and source IP address.
4. ZTNA device checks the requested IP address and port number. If they are hidden IP
address and port number, ZTNA device will search for the matched permit entry. If a
matched permit entry is found, the connection request is accepted. Otherwise, the request
will be discarded.
Enabling/Disabling SPA
Local knock port is where the ZTNA device listens for knock packets. The default knock port is
60001.
To configure the local knock port number, in the global configuration mode, use the following
command:
spa knock-port port-number
l port-number - Specifies the local knock port number. The value range is 1025 to 65535. The
default value is 600001.
In the global configuration mode, use the following command to restore the local knock port num-
ber.
no spa knock-port
The SPA function takes effect when it is enabled and configured with the hidden IP address and
port number. When SPA is disabled or enabled but no configured with a hidden IP and port num-
ber, the ZTNA device will not perform single packet authorization on clients no matter whether
the clients have SPA enabled.
To configure the hidden IP address and port number, in the global configuration mode, use the
following command:
spa hide service-ip ip-address port port-number vrouter vrouter-name [description description]
Repeat this command to add more pieces of hidden IP addresses and port numbers.
To delete the specified hidden IP address and port number, in the global configuration mode, use
the following command:
no spa hide service-ip ip-address port port-number vrouter vrouter-name
To view SPA configuration information, in any mode, use the following command:
show spa
To view SPA permit entries, in any mode, use the following command:
show spa-entry
To clear endpoint tags, in the global configuration mode, used the following command:
clear logging endpoint-tag
After the endpoint tag logging function is enabled, the system will send the endpoint tag logs to
the memory buffer by default. You can configure the system to send them to other destinations as
required. You can configure multiple destinations.
To configure the system to send endpoint tag logs to the specified destination, in the global con-
figuration mode, use the following command:
logging endpoint-tag to {console | syslog | localdb | buffer [size buffer-size] }
l syslog - Sends the endpoint tag logs to the syslog server. For configuration information about
the syslog server, refer to Configuring a Syslog Server.
l size buffer-size - Specifies the memory buffer size for storing the endpoint tag logs, in bytes.
The range is 4096 to 2097152. The default value is 2097152.
To disable the system from sending endpoint tag logs to the specified destination, in the global
configuration mode, use the following command:
no logging endpoint-tag to {console | syslog | localdb | buffer}
When configuring the system to send endpoint tag logs to the hard disk, you can configure a
threshold for the space size occupied by the sent logs. In the global configuration mode, use the
following command:
storage threshold log endpoint-tag percent
l percent - Specifies the threshold for the disk space size occupied by the sent logs. The range
is 0.01 to 90, in percent. The default value is 1. When the disk space occupied by endpoint
tag logs exceeds the specified threshold, the system will override the earliest logs or stopping
sending new logs to the disk based on the configuration of the storage threshold percentcom-
mand.
After configuring to send endpoint tag logs to the memory buffer, you can specify the reserved
buffer quota and maximum buffer quota for endpoint tag logs in a VSYS by creating a VSYS pro-
file. Reserved quota refers to the memory buffer value reserved for the endpoint logs; maximum
quota refers to the maximum memory buffer value available to the endpoint tag logs. The root
administrator has the permission to create VSYS profiles. If the logs' capacity in a VSYS exceeds
its maximum quota, the new logs will override the earliest logs in the buffer.
l max max-num reserve reserve-num – Specifies the maximum quota (max max-num) and
reserved quota (reserve reserve-num) of endpoint tag logs in a VSYS.The range of reserved
quota or maximum quota varies from different platforms. The reserved quota should not
exceed the maximum quota.
For information about VSYS profile configuration information, refer to Creating a VSYS Profile.
To view endpoint tag logs, in any mode, use the following command:
show logging endpoint-tag
l When the user's authentication information and endpoint tag match the ZTNA policy whose
action is Permit, the user is granted access to the application resources bound with this policy.
l When the user's authentication information matches teh ZTNA policy but the endpoint tag
does not match the ZTNA policy, the user is not granted access to the application resource
bound with this policy.
For an application resource to which a user is granted access, the user can click the application
resource icon on the ZTNA Portal page to switch to the desired URL address. Or, the user can
copy the URL address to a browser to access the application resource. For an application resource
to which a user is not granted access, the user can view the reason.
The ZTNA portal page does not display the following application resources:
l Application resources that the user is allowed to access, but no hyperlink is specified when
the application resource is defined
After the ZTNA Portal page is closed, the user can select "Application Resource List" from the
ZTNA client menu to obtain the ZTNA Portal page again.
To kick out all ZTNA users, in any mode, use the following command:
exec ztna instance-name kickout-all-user
The system supports to redirect to the specified page to modify the password through the con-
figured URL on the client .
To configure the change password URL, in the ZTNA instance configuration mode, use the fol-
lowing command:
change-password-url url
l url – Specifies the URL address that needs to be redirected to modify the password. The
ranges is 1 to 255 characters.
The system supports to redirect to the specified page through the configured URL to reset the
password.
To configure the forgot password URL, in the ZTNA instance configuration mode, use the fol-
lowing command:
forgot-password-url url
l url – Specifies the URL address that needs to be redirected to reset the password. The ranges
is 1 to 255 characters.
The system supports to configure the client to automatically reconnect when the connection ter-
minates.
To configure client auto-connection, in the ZTNA instance configuration mode, use the fol-
lowing command:
client-auto-connect count {number | unlimited}
l number | unlimited - Specifies the number of reconnection times. number specifies a value in
the range 0 to 1024. unlimited means the client does not automatically reconnect. The default
value is "unlimited".
To restore to the default value, in the ZTNA instance configuration mode, use the following com-
mand:
no client-auto-connect
The following configurations are shared by ZTNA and SSL VPN. The configurations take effect
on both ZTNA and SSL VPN.
To configure the SSL cipher suite, in the global configuration mode, use the following command:
secure-connect ssl-cipher-list string
To restore to the default SSL cipher suite list, in the global configuration mode, use the following
command:
no secure-connect ssl-cipher-list
By default, the local user is not allowed to change its password, but you can configure the device
to enable password changing right for local users if they pass SSL VPN or ZTNA authentication.
To enable/disable the right for local users to change the login password, in the password control
mode, use the following command:
l Disable: no allow-pwd-change
Tip: Secure Connect client of version 1.2.0.1106 and later allows the local users
to change password. Therefore, it's advised to use the latest Secure Connect cli-
ent.
When the server allows the client user to change password, the user can change login password
after passing SSL VPN or ZTNA authentication by the following steps:
1. Right-click the client icon in notification area of the task bar on the right-bottom corner and
a menu appears.
2. Click Changing Password and type current password and new password into the cor-
responding boxes.
End users can download Secure Connect clients at the following addresses:
By default, the client download source on the device is the same with that on Hillstone Networks
Official Website. In the application scenario where you want end users to download and use spe-
cific Secure Connect clients, such as a client of the specified version or a customized client, you
can import the client into the system to overwrite the default download source on the device.
You can import Windows, macOS and Linux type clients.
To import the client file from a server, in the execution configuration mode, use the following
command:
import secure-connect client {windows | linux | macos} from { {ftp | ftps | sftp} server ip-
address [vrouter vrouter-name] [user user-name password password] | tftp server ip-address |
usb0 | usb1} file-name
l tftp server ip-address - Specifies that the client file is imported from a TFTP server and spe-
cifies the TFTP server address.
l usb0 | usb1 - Specifies that the client file is imported from the USB disk plugged to USB0 or
USB1 port.
l file-name – Specifies the client file. The system will check the imported file. It is recom-
mended to import a client file downloaded from Hillstone Networks Official Website and
keep the file name unchanged. Otherwise, the import might fail.
You can delete the imported client file. After deletion, the download source will be restored to
the default source. In the execution configuration mode, use the following command to delete the
imported client file:
exec secure-connect client {windows | linux | macos} delete
In any mode, use the following command to view the information of Secure Connect clients
saved in the system:
show secure-connect client-info [windows | linux | macos]
l {ftp | ftps | sftp} server ip-address [vrouter vrouter-name] [user user-name password pass-
word] – Specifies that the background picture is imported from an FTP/FTPS/SFTP server.
Type the IP address of the FTP/FTPS/SFTP server, virtual router name, username and pass-
word (skip if the server can be logged in anonymously).
l tftp server ip-address - Specifies that background picture is imported from a TFTP server and
specifies the TFTP server address.
l usb0 | usb1 - Specifies that the background picture is imported from the USB disk plugged to
USB0 or USB1 port.
l file-name – Specifies the picture name and picture format. The picture must be in PNG
format, the resolution is recommended at 1920x *1080x, and the picture size must be less
than 2MB.
To restore to the default background picture, in any mode, use the following command:
exec customize secure-connect download-webpage-background-picture default
The Windows type client checks and downloads the new version by using the configured upgrade
URL. The system has a default URL that links to the official upgrade server and this URL cannot
be deleted. To configure the upgrade URL, use the following command in the global con-
figuration mode:
no secure-connect update-url
l ip-address – To use the intranet server to check and download the new version, enter the
URL of the intranet server. You need to deploy the new version in this intranet server.
To use the default URL that links to the official upgrade server, use the following command in
the global configuration mode:
no secure-connect update-url
To view the default URL that links to the official upgrade server, use the following command in
any mode:
show secure-connect update-url
Notes:
l When the client version is 1.4.4.1199 or below and the StoneOS version is
5.5R1 or above, it is recommended to uninstall the previous client and login
the Web page to re-install it.
l If you want the end users to download the Windows type client carried in the
system image, configure this command secure-connect update-url localhost.
l After you import a Windows type client file using the import secure-connect
client command, the secure-connect update-url configuration will not take
effect.
By default, the title of client download page is "Hilllstone Secure Connect". To customize the
title of client download page, in the global configuration mode, use the following command:
secure-connect download-web-page-title title
l title - Specifies the title of client download page. The length is 1 to 63 characters.
To delete the customized title of client download page, use the following command in the global
configuration mode. After the customized title is deleted, no title will be displayed on the client
download page.
no secure-connect download-web-page-title
To view the customized title of client download page, use the following command in any mode:
show secure-connect download-web-page-title
l Endpoint state of PC1: Windows10 OS with firewall and anti-virus software installed
l Endoint state of PC2: WindowsXP OS without firewall and anti-virus software installed
Requirements:
l User user1 is not granted access to Application1 and Application2 via PC2 because the ter-
minal device state does not meet requirements.
Configuration Steps
Step 1: Create a local user
hostname(config-user)# exit
hostname(config)#exit
hostname(config-address-pool)# exit
hostname(config)#
hostname(config-tunnel-ztna)# access-address-p o o l p o o l1
hostname(config-tunnel-ztna)# exit
hostname(config)#
Step 4: Create a tunnel interface and bind the ZTNA instance to it (the tunnel interface and
address pool should be in the same IP address segment)
hostname(config-if-tun1)# exit
hostname(config)#
hostname(config-endpoint-tag)# criteria-set 1
hostname(config-endpoint-tag-criteria-set)# exit
hostname(config-endpoint-tag)# exit
hostname(config)#
hostname(config-ztna-policy-rule)# en ab le
hostname(config-ztna-policy-rule)# exit
hostname(config)#
Step 8: User user1 accesses https://172.16.16.5:5588 in the browser of PC1 and PC2 and then
downloads and installs the client for Windows on the displayed page.
l iQoS
l QoS
l Load Balancing
l Session Limit
Before version 5.5, and QoS function is After upgrading, the system uses the iQoS func-
not configured tion by default.
Before version 5.5, and QoS function has After upgrading, the QoS function is still
already been configured enabled. But iQoS is recommended to use. For
switching to iQoS, see Swichting iQoS/QoS.
Swichting iQoS/QoS
If you have not configured the QoS function before upgrading to version 5.5, the system will
enable the iQoS function by default. You can configure iQoS function via WebUI or CLI and the
QoS function will not take effect.
If you have configured QoS before upgrading the system to verion 5.5, the QoS function will still
take effect. You can configure QoS function only via CLI. We recommend you to use iQoS func-
tion to control bandwidth. To switch from QoS to iQoS, in any mode, use the following com-
mand:
exec iqo s en ab le
To switch from iQoS to QoS, in any mode, use the following command:
exec iqo s disab le
iQoS
The system provides intelligent quality of service (iQoS) which guarantees the customer's net-
work performance, manages and optimizes the key bandwidth for critical business traffic, and
helps the customer greatly in fully utilizing their bandwidth resources.
iQoS Implement
The packets are classified and marked after entering the system from the ingress interface. For the
classified and marked traffic, the system will smoothly forward the traffic through shaping mech-
anism, or drop the traffic through policing mechanism. If selecting shaping mechanism to forward
the traffic, the congestion management and congestion avoidance mechanisms give different pri-
orities to different types of packets so that the packets of higher priority can pass the gateway
earlier to avoid network congestion.
In general, implementing iQoS includes:
l Classification and marking mechanism: Classification and marking is the process of identifying
the priority of each packet. This is the first step of iQos.
l Policing and shaping mechanisms: Policing and shaping mechanisms are used to identify traffic
violation and make responses. The policing mechanism checks traffic in real time, and takes
immediate actions according to the settings when it discovers violation. The shaping mech-
anism works together with queuing mechanism. It makes sure that the traffic will never
exceed the defined flow rate so that the traffic can go through that interface smoothly.
By configuring pipes, the devices implement iQos. Pipe, which is a virtual concept, represents the
bandwidth of transmission path. The system classifies the traffic by using the pipe as the unit, and
control the traffic crossing the pipes according to the actions defined for the pipes. For all traffic
crossing the device, they will flow into virtual pipes according to the traffic matching conditions
they match. If the traffic does not match any condition, they will flow into the default pipe pre-
defined by the system.
Pipes, except the default pipe, include two parts of configurations: traffic matching conditions and
traffic management actions:
l Traffic matching conditions: Defines the traffic matching conditions to classify the traffic
crossing the device into matched pipes. The system will limit the bandwidth to the traffic that
matches the traffic matching conditions. You can define multiple traffic matching conditions
to a pipe. The logical relation between each condition is OR. When the traffic matches a
traffic matching condition of a pipe, it will enter this pipe.
l Traffic management actions: Defines the actions adopted to the traffic that has been classified
to a pipe. The data stream control includes the forward control and the backward control. For-
ward control controls the traffic that flows from the source to the destination; backward con-
trol controls the traffic flows from the destination to the source.
Multiple-level Pipes
To provide flexible configurations, the system supports the multiple-level pipes. Configuring mul-
tiple-level pipes can limit the bandwidth of different applications of different users. This can
ensure the bandwidth for the key services and users. Pipes can be nested to at most four levels.
Sub pipes cannot be nested to the default pipe. The logical relation between pipes is shown as
below:
l For the sub pipes at the same level, the total of their minimum bandwidth cannot exceed the
minimum bandwidth of their upper-level parent pipe, and the total of their maximum band-
width cannot exceed the maximum bandwidth of their upper-level parent pipe.
l If you have configured the forward or backward traffic management actions for the root pipe,
all sub pipes that belongs to this root pipe will inherit the configurations of the traffic dir-
ection set on the root pipe.
l The root pipe that is only configured the backward traffic management actions cannot work.
The following chart illustrates the application of multiple-level pipes in a company. The admin-
istrator can create the following pipes to limit the traffic:
1. Create a root pipe to limit the traffic of the office located in Beijing.
3. Create a sub pipe to limit the traffic of the specified applications so that each application has
its own bandwidth.
Process of iQos
The system supports two-level traffic control: level-1 control and level-2 control. In each level,
the traffic control is implemented by pipes. Traffic that is dealt with by level-1 control flows into
the level-2 control, and then the system performs the further management and control according
to the pipe configurations of level-2 control. After the traffic flows into the device, the process of
iQos is shown as below:
According to the chart above, the process of traffic control is described below:
2. According to the traffic management actions configured for the pipes, the system manages
and controls the traffic that matches the traffic matching conditions.
3. The traffic dealt with by level-1 control flows into the level-2 control. The system manages
and controls the traffic in level-2 control. The principle of traffic matching, management and
control are the same as the one of the level-1 control.
Notes:
l For SG-6000-X7180, when there is no QSM module installed, you can install
the IOM module to get the iQoS function (make sure that the device has
installed iQoS license). In this case, the iQoS doesn't support the shaping
mode.
l For SG-6000-X8180, when there is no QSM installed, you can install the
SIOM to process QoS (make sure that the device has installed iQoS license).
In this case, the QoS is the same as the QoS function by installing the QSM
module.
Configuring iQoS
By using pipes, devices implement QoS. Using pipes includes the following sections:
1. Create the traffic matching conditions, which are used to control the traffic that matches
these conditions. If configuring multiple traffic matching conditions for a pipe, the logical
relation between each condition is OR.
2. Create a white list according to your requirements. The system will not control the traffic in
the white list. Only root pipe and the default pipe support the white list.
3. Specify the traffic management actions, which are used to deal with the traffic that is clas-
sified into a pipe.
Specify which traffic control level you want to enter, first-leve traffic control or second-level
traffic control and enter the traffic control mode. You can create pipes to manage the traffic. In
the global configuration mode, use the following command:
qo s-en gin e {first | seco n d}
l second – Enter the traffic control mode of the second-level traffic control.
To enable/disable the traffic control level, in the traffic control mode of the specified level, use
the following command:
To enable/disable the root pipe, in the root pipe configuration mode of the specified root pipe,
use the following command:
To enable/disable the sub pipe, in the sub pipe configuration mode of the specified sub pipe, use
the following command:
Notes: The disabled levels or pipes will not take effect during the iQoS process.
The unavailable pipes will not take effect as well.
You can enable the NAT IP matching function in the traffic control mode of the specified level as
needed.After it is enabled, system will use the IP addresses between the source NAT and the des-
tination NAT as the matching items. If the matching is successful, system will limit the speed of
these IP addresses. To enable the NAT IP matching, in the traffic control mode of the specified
level, use the following command:
match -n at-ip en ab le
Notes: Before enabling NAT IP matching, you must config the NAT rules. Other-
wise, the configuration will not take effect.
In the traffic control mode, use the following command to create a root pipe and enter the root
pipe configuration mode. If the name of the root pipe already exists, the system will enter the root
pipe configuration mode directly.
ro o t-p ip e {p ip e-n ame | default}
In the traffic control mode, use the following command to delete a root pipe:
n o ro o t-p ip e p ip e-n ame
Notes:
After entering the root pipe configuration mode, you can configure the following configurations:
To create a sub pipe and enter the sub pipe configuration mode, use the following command in
the pipe configuration mode. If the sub pipe name already exists, the system will enter the sub
pipe configuration mode directly.
p ip e pipe-name
In the pipe configuration mode, use the following command to delete the created sub pipe:
n o p ip e pipe-name
Notes:
l To delete the sub pipe, you need to execute the command no pipe pipe-name
in the pipe configuration mode of its parent pipe.
In the sub pipe configuration mode, you can configure the following options:
Before configuring a traffic matching condition, you need to first create a traffic matching con-
dition and then enter the traffic maching condition configuration mode. If the ID already exists,
the system will enter the traffic matching condition configuration mode directly. Without the ID
specified, the system will create a traffic matching condition and enter its configuration mode. To
create a traffic matching condition and enter its configuration mode, use the following command
in the pipe configuration mode:
p ip e-map [ id ]
Use the no pipe-map [id] command to delete the specified traffic matching condition.
After entering the traffic matching condition configuration mode, use the following command to
configure the traffic matching condition:
l Specify the source IP address (IPv4 or IPv6) of the traffic: src-ip {ip/netmask | ip-address
netmask | ipv6-address/prefix }
l Delete the source IP address (IPv4 or IPv6) of the traffic: no src-ip {ip/netmask | ip-address
netmask | ipv6-address/prefix }
l Delete the destination IP address (IPv4 or IPv6) of the traffic: no dst-ip {ip/netmask | ip-
address netmask | ipv6-address/prefix }
l Specify the source IP address range (IPv4 or IPv6)of the traffic: src-rangemin-ip[max-ip]
l Delete the source IP address range (IPv4 or IPv6)of the traffic: no src-rangemin-ip [max-ip]
l Specify the destination IP address range (IPv4 or IPv6)of the traffic: dst-rangemin-ip [max-ip]
l Delete the destination IP address range (IPv4 or IPv6)of the traffic: no dst-rangemin-ip [max-
ip]
l Specify the source address entry (IPv4 or IPv6)of the traffic: src-addraddress-book
l Delete the source address entry (IPv4 or IPv6)of the traffic: no src-addraddress-book
l Specify the destination address entry (IPv4 or IPv6)of the traffic: dst-addraddress-book
l Delete the destination address entry (IPv4 or IPv6)of the traffic: no dst-addraddress-book
l Specify the user group and its AAA server: user-groupAAA-server usergroup-name
l Delete the application or application group, including pre-defined application and user-defined
application: no applicationapp-name
Notes: When configuring traffic matching conditions for partial device models,
including SG-6000-X6150, SG-6000-X6180, and SG-6000-X7180, the system
does not support the configurations of specifying the name of the service groups or
services.
After configuring a traffic white list, the system will not manage the traffic in the white list. You
can specify a whit list for the root pipe or the default pipe.
Before configuring a white list, you need to first create a whilte list and then enter the white list
configuration mode. If the specified ID already exists, the system will directly enter the white list
Use the no exception-map [id] command to delete the specified white list.
After entering the white list configuration mode, use the following command to configure the
white list:
l Specify the source IP address of the traffic: src-ip {ip/netmask | ip-address netmask }
l Delete the source IP address of the traffic: no src-ip {ip/netmask | ip-address netmask }
l Specify the destination IP address of the traffic: dst-ip {ip/netmask | ip-address netmask }
l Delete the destination IP address of the traffic: no dst-ip {ip/netmask | ip-address netmask }
l Specify the user and its AAA server: user AAA-server user-name
l Delete the users and its AAA server: no user AAA-server user-name
l Delete the users group and its AAA server: no user-group AAA-server usergroup-name
l Specify the application or application group, including pre-defined application and user-
defined application: application app-name
l Delete the application or application group, including pre-defined application and user-defined
application: no application app-name
Notes: When configuring white list for partial device models, including SG-6000-
X6150, SG-6000-X6180, SG-6000-X7180 and SG-6000-X10800, the system does
not support the configurations of specifying the name of the service groups or ser-
vices.
Configure the upper and lower thresholds of the bandwidth utilization for a root pipe. When a
root pipe’s bandwidth utilization is lower than the lower threshold, the maximum bandwidth of
sub pipes is the configured maximum floating bandwidth. If a root pipe’s bandwidth utilization
is higher than the upper threshold, sub pipes apply the configured maximum bandwidth of each
l low-water-mark value –Specifies the lower threshold of the bandwidth utilization for a
root pipe. The range is 20%-75%. The default lower threshold is 40%.
l high-water-mark value –Specifies the upper threshold of the bandwidth utilization for a
root pipe. The range is 76%-90%. The default upper threshold is 80%.
In the root pipe configuration mode, use no flex-qos command to restore to the default value.
To configure traffic management actions for a root pipe, in the root pipe configuration mode, use
the following actions:
p ip e-rule {fo rward | b ackward} b an dwidth {Kb p s | Mb p s | Gb p s} bandwidth-value [p er-
ip -min min-value ] [p er-ip -max max-value [delay delay-time ] [flex-p er-max {Kb p s | Mb p s}
value ]] [p er-ip -usin g {src-ip | dst-ip }] [to s-markin g tos-value ] [traffic-markin g traffic-class-
value ] [mo de aggressive [stren gth -level level-value ]] [p rio rity value ]
l forward – Specify the traffic control actions to the traffic that matches the traffic matching
conditions and whose direction is from the source to the destination.
l backward -Specify the traffic control actions to the traffic that matches the traffic matching
conditions and whose direction is from the destination to the source.
l per-ip-min min-value - Specify the minimum bandwidth of each IP. The value ranges from
32Kbps to 1,000,000Kbps.
l per-ip-max max-value - Specify the maximum bandwidth of each IP. The value ranges from
32Kbps to 1,000,000Kbps.
l per-user-min min-value - Specify the minimum bandwidth of each user. When selecting Kbps,
the value ranges from 32Kbps to 10,000,000Kbps. When selecting Mbps, the value ranges
from 1Mbps to 10,000Mbps.
l per-user-max max-value - Specify the maximum bandwidth of each user. When selecting
Kbps, the value ranges from 32Kbps to 10,000,000Kbps. When selecting Mbps, the value
ranges from 1Mbps to 10,000Mbps.
l delay delay-time – Specify the delay time, whose value ranges from 1 second to 3600
seconds. The maximum bandwidth limit of each IP/ user is not effective within the delay
time range.
l traffic-marking traffic-class-value ] - Specifies the value of the TrafficClass field for IPv6
traffic, ranging from 0-255. The TrafficClass field value of IPv6 traffic matched is set to the
specified value.
l mode aggressive [strength-level level-value] - Enable the peer quench function. By default,
this function is disabled. According to the distributed bandwidth by the user, the peer quench
function makes the traffic that arrives at the device be the same as the distributed bandwidth
as possible as it can, which reduces the missed packets of the device.When the peer quench
function is enabled,the default value of strength-level is 1,whose value ranges from 1 to 8. A
bigger value represents a higher strength-level and a lesser lost of packets.
l priority value - Specify the priority of the pipe. The value ranges from 0 to 7. The default
value is 7. A smaller value represents a higher priority and the system will first arrange the
traffic in a a pipe with a higher priority and will first borrow the idle bandwidth from other
pipes with a lower priority.
l average-using {src-ip | dst-ip | user} - Allocate the bandwidth equally to each source IP
address or each destination IP address in the pipe.
Use the no form of the above command to delete the traffic management actions of a specified dir-
ection.
Notes:
l You cannot limit the bandwidth to each user and each IP address at the same
time.
l You cannot enable the peer quench function in the positive and negative
traffic management direction at the same time. The peer quench function
only be supported in a end-pipe.
To configure traffic management actions for a sub pipe, in the root pipe configuration mode, use
the following actions:
p ip e-rule {fo rward | b ackward} {min | reserve-b an dwidth } {p ercen t | Kb p s | Mb p s |
Gb p s} value max {p ercen t | Kb p s | Mb p s | Gb p s} max-value [p er-ip -min min-value ] [p er-
ip -max max-value [delay delay-time ]] [flex-p er-max {Kb p s | Mb p s} value ] [p er-ip -usin g
{src-ip | dst-ip }] [to s-markin g tos-value ] [ traffic-marking traffic-class-value ] [mo de
aggressive [stren gth -level level-value ]] [p rio rity value ]
l forward – Specify the traffic control actions to the traffic that matches the traffic matching
conditions and whose direction is from the source to the destination.
l backward - Specify the traffic control actions to the traffic that matches the traffic matching
conditions and whose direction is from the destination to the source.
l {min | reserve-bandwidth} {percent | Kbps | Mbps | Gbps} value - Specify the min-
imum bandwidth of the pipe, or set the reserved bandwidth of the pipe. min represents
the minimum bandwidth and reserve-bandwidth represents the reserved bandwidth. When
configuring the minimum bandwidth or the reserved bandwidth, percentrepresents that the
minimum percentage of the parent pipe bandwidth. The value ranges from 1 to 100. When
selecting Kbps, the value ranges from 32Kbps to 100,000,000Kbps. When selecting Mbps
the value ranges from 1Mbps to 100,000Mbps. When selecting Gbps, the value ranges from
1Gbps to 100Gbps.
l max {percent | Kbps | Mbps | Gbps} max-value - Specify the maximum bandwidth of the
pipe or the maximum percentage of its parent pipe. percentrepresents that the maximum
percentage of the parent pipe bandwidth. The value ranges from 1 to 100. When selecting
Kbps, the value ranges from 32Kbps to 100,000,000Kbps. When selecting Mbps, the value
l per-ip-min min-value - Specify the minimum bandwidth of each IP address. When selecting
Kbps, the values ranges from 32Kbps to 10,000,000Kbps. When selecting Mbps, the value
ranges from 1Mbps to 10,000Mbps.
l per-ip-max max-value - Specify the maximum bandwidth of each IP address. When selecting
Kbps, the values ranges from 32Kbps to 10,000,000Kbps. When selecting Mbps, the value
ranges from 1Mbps to 10,000Mbps.
l per-user-min min-value - Specify the minimum bandwidth of each user. The values ranges
from 32Kbps to 1,000,000Kbps.
l per-user-max max-value - Specify the maximum bandwidth of each user. The values ranges
from 32Kbps to 1,000,000Kbps.
l delay delay-time – Specify the delay time, whose value ranges from 1 second to 3600
seconds. The maximum bandwidth limit of each IP/ user is not effective within the delay
time range.
l mode aggressive [strength-level level-value] - Enable the peer quench function. By default,
this function is disabled. According to the distributed bandwidth by the user, the peer quench
function makes the traffic that arrives at the device be the same as the distributed bandwidth
as possible as it can, which reduces the missed packets of the device. When the peer quench
function is enabled,the default value of strength-level is 1,which value ranges from 1 to 8. A
bigger value represents a higher strength-level and a lesser lost of packets.
l priority value - Specify the priority of the pipe. The value ranges from 0 to 7. The default
value is 7. A smaller value represents a higher priority and the system will first arrange the
traffic in a a pipe with a higher priority and will first borrow the idle bandwidth from other
pipes with a lower priority.
Notes:
l You cannot limit the bandwidth to each user and each IP address at the same
time.
l You cannot enable the peer quench function in the positive and negative
traffic management direction at the same time. The peer quench function
only be supported in a end-pipe.
l Shaping mode: After configuring this mode, the system can limit the data transmission rate
and smoothly forward the traffic. This mode supports the bandwidth borrowing and priority
l Policing mode: After configuring this mode, the system will drop the traffic that exceeds the
bandwidth limit. This mode does not support the bandwidth borrowing and priority schedule,
and cannot guarantee the minimum bandwidth.
l Monitoring mode: After configuring this mode, the system will monitor the matched traffic,
generate the statistics, and will not control the traffic.
Bandwidth borrowing: All sub pipes in a root pipe can lend the idle bandwidth to the pipes that
are lack of bandwidth. The prerequisite is the bandwidth of themselves are enough to forward
their traffic.
Priority schedule: When there is traffic congestion, the system will arrange the traffic to enter the
waiting queue. You can set the traffic to have higher priority and the system will deal with the
traffic in order of precedence.
By default, a root pipe uses the policing mode. To configure the traffic control mode of a root
pipe, use the following command in the root pipe configuration mode:
qo s-mo de {p o lice | sh ap e | stat}
You can specify a schedule entry for a root pipe and this root pipe will take effect within the spe-
cified time. To specify a schedule for a root pipe, in the root pipe configuration mode, use the fol-
lowing command:
schedule schedule-name
You can specify a schedule entry for a sub pipe and this sub pipe will take effect within the spe-
cified time. To specify a schedule for a sub pipe, in the sub pipe configuration mode, use the fol-
lowing command:
sch edule schedule-name
l number – Specify the slot number where the QSM module locates.
To view the configurations of traffic control levels and pipes, use the following command in any
mode:
show qos-engine {first | second} [root-pipe pipe-name]
The system supports to configure threshold alarm of the pipeline utilization. After the function is
enabled and the alarm threshold is specified, when the pipeline usage reaches or exceeds the spe-
cified alarm threshold, the system will record a warning level event log. For the same pipeline, the
system records the event log at an interval of 10 seconds.
By default, threshold alarm is enabled. To enabling/disabling threshold alarm, in the global con-
figuration mode, use the following commands:
qos-threshold-switch {on | off}
To specify the alarm threshold, n the global configuration mode, use the following command:
qos-threshold threshold
l threshold - Specify the alarm threshold. The unit is percent. The range is from 50 to 100. The
default value is 80.
To show the status of threshold alarm, in any mode, use the following command:
show qos-threshold
Overview
QoS (Quality of Service) is used to provide different priorities to different traffic, in order to con-
trol the delay and flapping, and decrease the packet loss rate. QoS can assure the normal trans-
mission of critical business traffic when the network is overloaded or congested.
QoS is an assembly of techniques for controlling bandwidth, delay, flapping, and packet loss in a
network. All QoS mechanisms are designed to affect at least one or even all the above features.
QoS Implementation
Classification and marking is the process of identifying the priority of each packet. This is the first
step of QoS control, and should be done near the source hosts.
Classification
The packets are generally classified by their packet headers. The packet headers are examined
closely by the rules specified in the figure below. The figure below shows the classification fields,
and the table below lists the criteria of classification:
Layer Description
Layer 2 MAC address, 802.1Q/p classification of service (CoS) bit string and
VLAN mark
802.1Q/p
Ethernet frames are marked with 802.1p user priority (CoS) of 802.1Q header. The Layer 2 Eth-
ernet frame has only 8 types of services (from 0 to 7), as shown in the table below:
7 Reserved
6 Reserved
5 Voice
4 Video Conference
3 Call Signaling
2 High-priority Data
1 Medium-priority Data
0 Best-effort Data
Similar to CoS, IP precedence can be marked with 8 types of services (0 to 7). See the table
above.
DSCP (DiffServ Code Point) provides a 6-bit field for QoS marking, among which 3 bits are the
same as IP precedence, and the other 3 bits are ToS fields. Thus, the DSCP value range is 0 to 63.
The figure below shows the DSCP and IP precedence bits:
QoS policing and shaping mechanisms are used to identify traffic violation and make responses.
Policing and shaping adopts the same algorithms for identifying traffic violation, but they make dif-
ferent responses.
The policing mechanism checks traffic in real time, and takes immediate actions according to the
settings when it discovers violation. For example, the policing mechanism can identify if the
traffic payload exceeds the defined traffic flow rate, and then decide to re-mark or drop the excess-
ive parts. It can control the traffic of both inbound and outbound directions.
The shaping mechanism works together with queuing mechanism. It sends all traffic to one inter-
face and make sure that the traffic will never exceed the defined flow rate so that the traffic can go
through that interface smoothly. The shaping mechanism is typically applied to the outbound dir-
ection.
The differences between policing and shaping are listed in the table below.
Policing Shaping
TCP re-connection due to packets Typically traffic delay, but seldom TCP re-connection
being dropped
Inflexible and unadaptable The queuing mechanism can reduce network con-
gestion
Hillstone devices use token bucket algorithm to determine if the network traffic has violated
rules. Token bucket is an abstract container that holds tokens. The system puts tokens into the
bucket at a defined rate. When the bucket is full, the tokens will overflow it and the number of
tokens in the bucket will not change. The token bucket uses its tokens to transmit packets. When
the bucket has enough tokens to transmit the packets, the bucket is known as conforming to the
rule, otherwise it excesses the rule. The parameters in traffic evaluation include:
l CIR (Committed Information Rate): The rate of placing tokens, i.e. the average rate of data
transmission.
l CBS (Committed Burst Size): The size of the first token bucket, i.e. the maximum traffic
volume allowed in each burst. This value must be larger than the length of the largest packet.
This token bucket is abbreviated as C-bucket.
l EBS (Excess Burst Size): The size of the second token bucket, i.e. the maximum value of
exceeded traffic allowed. This token bucket is abbreviated as E-bucket.
When evaluating traffic, the control operations may vary from different situations which include:
1) C-bucket has enough tokens; 2) C-bucket tokens are insufficient but E-bucket is sufficient; 3)
both C-bucket and E-bucket do not have enough tokens. The figure below illustrates the double
token buckets algorithm:
Congestion Management
Congestion management mechanism is one of the most important tools in QoS control. It uses
queuing theory to solve problems in the congested interfaces. As the data rate can be different
among different networks, congestion may happen to both wide area network (WAN) and local
area network (LAN). Only when an interface is congested will the queuing theory begin to work.
Hillstone devices support class-based weighted fair queuing (CBWFQ) and low latency queuing
(LLQ).
l LLQ: The algorithm combination of PQ, CQ and WFQ. LLQ is usually used in voice and
interactive video. During configuration, all the applications of LLQ type can occupy no more
than 33% of the total bandwidth.
Congestion Avoidance
Congestion avoidance mechanism is a supplement to the queuing algorithm, and it also relies on
the queuing algorithm. The congestion avoidance mechanism is designed to process TCP-based
traffic. On Hillstone devices, the congestion avoidance mechanism is implemented by the WRED
algorithm.
Configuring QoS
To implement QoS on the Hillstone device, first you need to configure a QoS profile, and then
apply the QoS profile to an interface. You can apply multiple QoS profiles to a single interface. To
configure QoS, take the following steps:
1. Configure a class. The process of identifying and classifying traffic. The class defines the
traffic that will be matched on the device, so that the device can classify the traffic.
2. Configure a QoS profile. The QoS profile defined actions for the matched traffic, including
policing, shaping, congestion management, and congestion avoidance.
3. Binding the QoS profile to an interface. Only after the configured QoS profile is bound to
an interface can QoS functions on the device.
Configuring a Class
l Applicaion
l DSCP
l IP range
l Address entry
l QoS tag
l IP precedence
l Ingress interface
l Role
The traffic matching conditions can only be configured in the class configuration mode. To enter
the class configuration mode, in the global configuration mode, use the following command:
class-map class-name
l class-name – Specifies the name of class. After executing the command, the system will cre-
ate a class and enter the class configuration mode; if the specified name exists, the system will
directly enter the class configuration mode.
The system provides a default class named class-default. During QoS, all the unmatched traffic
will be diverted to class-default. The minimum bandwidth of class-default is the interface band-
width minus all the reserved bandwidth. You are recommended to reserve 25% bandwidth for
class-default. This proportion has proven to be the best reservation. You can configure up to 10
matching conditions for each class.
To cancel the specified class, in the global configuration mode, use the command no class-map
clas-name.
Hillstone devices support over 100 applications, such as FTP, SMTP, OSPF, etc. To configure an
application matching condition, in the class configuration mode, use the following command:
match ap p licatio n app-name
Tip: For detailed information about service, see “Service and Application” in
the “Firewall”.
To configure a DSCP matching condition, in the class configuration mode, use the following com-
mand:
match dscp dscp-value1 [ dscp-value2 ] [ dscp-value3 ] [ dscp-value4 ]
l dscp-value – Specifies the DSCP as the matching condition. The DSCP can be either an
integer (0 to 63) or a keyword (such as af11, cs2). You can specify up to 4 DSCP values in
one command, and the logical relationship among them is OR.
Repeat the command to configure more DSCP matching conditions. To delete the specified
DSCP matching condition, in the class configuration mode, use the command:
n o match dscp dscp-value1 [ dscp-value2 ] [ dscp-value3 ] [ dscp-value4 ]
To configure a CoS matching condition, in the class configuration mode, use the following com-
mand:
match cos cos-value1 [cos-value2 ] [cos-value3 ] [cos-value4 ]
The IP range matching condition is used to configure IP QoS. To configure an IP range matching
condition, in the class configuration mode, use the following command:
match ip-range start-ip end-ip
To configure an address entry matching condition, in the class configuration mode, use the fol-
lowing command:
match address address-entry
To configure a QoS tag matching condition, in the class configuration mode, use the following
command:
match policy-qos-tag tag-value
l tag-value– Specifies the value of QoS tag. The value range is 1 to 1024. You can configure a
QoS tag when creating a policy rule or P2P Profile.
Tip: For more information about how to create a policy rule and how to configure
a QoS tag, see the “Policy”.
To configure an IP precedence matching condition, in the class configuration mode, use the fol-
lowing command:
match precedence precedence-value1 [precedence-value2 ] [precedence-value3 ] [precedence-
value4 ]
l precedence-value – Specifies the value of IP precedence. The value range is 0 to 7. You can
specify up to 4 IP precedence values in one command, and the logical relationship among
them is OR.
To configure an ingress interface matching condition, in the class configuration mode, use the fol-
lowing command:
match input-interface interface-name
To configure a role/user/user group matching condition, in the class configuration mode, use the
following command:
match {role role-name| user aaa-server-name user-name | user-group aaa-server-name user-group-
name}
To view the class information, in any mode, use the following command:
show class-map [class-name]
QoS profile is used to implement QoS on the matched traffic. Besides, you can also control the
valid time of QoS profile via a schedule. Hillstone devices support application QoS, IP QoS and
role QoS. You need to configure the profile for them as needed.
The QoS profile needs to be configured in the QoS profile configuration mode. To enter the QoS
profile configuration mode, in the global configuration mode, use the following command:
qos-profile qos-profile-name
l qos-profile-name – Specifies the name of the QoS profile. After executing the command, the
system will create a QoS profile with the specified name, and enter the QoS profile con-
figuration mode; if the specified name exists, the system will directly enter the QoS profile
configuration mode.
To delete the specified QoS Profile, in the global configuration mode, use the command no qos-
profile qos-profile-name.
To specify a schedule for the QoS profile, in the QoS profile configuration mode, use the fol-
lowing command:
schedule schedule-name
Repeat the command to specify more schedules for the QoS profile. You can specify up to 10
schedules for each QoS profile. To avoid possible unknown problems, you are not recommended
to use schedules with time overlapping.
To cancel the specified schedule, in the QoS profile configuration mode, use the following com-
mand:
no schedule schedule-name
To implement QoS on the matched traffic, you need to specify a class for the QoS profile in the
QoS profile configuration mode, and then specify an action for the traffic that matches the class.
You can specify up to 64 classes (including the default class class-default) for each QoS profile.
The application QoS supports all the matching conditions, while IP QoS only supports the IP
range (start IP, end IP and address entry) matching condition, and role QoS only supports the role
matching condition.
To specify a class for the QoS profile, in the QoS profile configuration mode, use the following
command:
class class-name
l class-name – Specifies the name of the class. After executing the command, the system will
enter the QoS profile class configuration mode.
To delete the specified class, in the QoS profile configuration mode, use the command no class
class-name.
You can specify the QoS options for the matched traffic in the QoS profile class configuration
mode, including:
l Configuring policing
l Configuring shaping
l Configuring LLQ
l Configuring CoS
l Configuring IP precedence
To specify the minimum bandwidth for the class of QoS profile, in the QoS profile class con-
figuration mode, use the following command:
bandwidth {bandwidth-value | percent percentage} [schedule schedule-name]
l bandwidth-value – Specifies the minimum bandwidth for the class. This value is also the
weight for CBWFQ calculation. The value range is 32 to 1000000 kbps.
l percent percentage – Specifies the minimum bandwidth percentage of class in the interface's
total bandwidth. The value range is 1 to 100.
l schedule-name – Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
To cancel the specified minimum bandwidth, in the QoS profile class configuration mode, use the
command no bandwidth.
Configuring Policing
Traffic policing is used to control the traffic and apply the specified actions to conform and
exceed traffic. To configure policing for a class, in the QoS profile class configuration mode, use
the following command:
l cir-value – Specifies the committed information rate (for putting tokens into the token
bucket), i.e., the average rate of the permitted traffic, and also the maximum bandwidth of the
class. The value must be smaller than the actual bandwidth value of the interface. The value
range is 32 to 1000000 Kbps.
l cbs-value – Specifies the committed burst size (the size of the first token bucket), i.e. the
maximum traffic for each burst. The value must be larger than the size of the longest packet,
and smaller than the actual bandwidth value of the interface. The value range is 2048 to
51200000 bytes.
l ebs-value – Specifies the excess burst size (the size of the second token bucket), i.e., the
maximum traffic for the excess burst. The value must be smaller than the actual bandwidth
value of the interface. The value range is 2048 to 51200000 bytes.
l conform-action – Specifies the action for the packets that conform with the specifications.
Select one of the actions below:
l exceed-action - Specifies the action for the packets that exceed the excess burst size. The
options are the same with those of the above conform-action.
l schedule-name – Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
To cancel the specified policing, in the QoS profile class configuration mode, use the command
no police.
Configuirng Shaping
Traffic shaping working on egress interfaces is used to smooth the egress traffic according to the
rate configuration. To configure shaping for a class, in the QoS profile class configuration mode,
use the following command:
shape cir-value [cbs-value] [ebs-value] [schedule schedule-name]
l cir-value – Specifies the committed information rate (for putting tokens into the token
bucket), i.e., the average rate of the permitted traffic, and also the maximum bandwidth of the
class. The value must be smaller than the actual bandwidth value of the interface. The value
range is 32 to 1000000 Kbps.
l cbs-value – Specifies the committed burst size (the size of the first token bucket), i.e. the
maximum traffic for each burst. The value must be larger than the size of the longest packet,
and smaller than the actual bandwidth value of the interface. The value range is 2048 to
51200000 bytes.
l ebs-value – Specifies the excess burst size (the size of the second token bucket), i.e., the
maximum traffic for the excess burst. The value must be smaller than the actual bandwidth
value of the interface. The value range is 2048 to 51200000 bytes.
To cancel the specified shaping, in the QoS profile class configuration mode, use the command
no shape.
IP-based QoS, i.e., IP QoS, is used to control the maximum or reserved bandwidth for each IP
within the LAN. The perquisite for implementing IP QoS is that the class in the QoS profile must
contain the IP range (start IP, end IP or address entry) matching condition. IP QoS should not be
used with other types of QoS simultaneously, i.e., if only one class in the QoS profile is con-
figured with IP QoS, all the other classes in the QoS profile must also be configured with IP QoS.
To configure IP QoS, in the QoS profile class configuration mode, use the following command:
ip-qos {shared-bandwidth | per-ip} {max-bandwidth bandwidth | reserve-bandwidth bandwidth
[max-bandwidth bandwidth]} [schedule schedule-name]
l max-bandwidth bandwidth – Specifies the maximum bandwidth, i.e., the maximum band-
width shared by all the IPs (shared-bandwidth) or available to each IP (per-ip) within the IP
range. The value range is 32 to 1000000 kbps. When configuring reserve-bandwidth, the
default value of max-bandwidth is 100000.
l schedule-name – Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
To cancel the specified IP QoS, in the QoS profile class configuration mode, use the command
no ip-qos {shared-bandwidth | per-ip} {max-bandwidth bandwidth | reserve-bandwidth band-
width [max-bandwidth bandwidth]} [schedule schedule-name].
Allocation Principle of Reserved Bandwidth
The allocation of reserved bandwidth for IP addresses should following the principles below:
l Only when traffic is passing through the matched IP addresses will the system reserve the spe-
cified bandwidth; when the traffic terminates, the reserved bandwidth will be freed.
l If the sum of the reserved bandwidth is larger than the interface bandwidth, and the interface
bandwidth is occupied by the IP addresses, then the traffic passing through the newly
matched IP addresses will be diverted to class-default; if the bandwidth of class-default is 0,
the traffic will be dropped.
Here is an example of configuring IP QoS. The reserved bandwidth per IP for IP1 - IP20 is 1M,
and the maximum bandwidth per IP for IP21 - IP40 is 1M. The interface bandwidth is 10M.
When traffic is passing through IP1 - IP9 and IP21 - IP40, IP1 - IP9 will be allocated with the
reserved bandwidth of 1M each; the traffic that exceeds 1M reserved bandwidth of IP1 - IP9 and
the traffic passing through IP21 - IP40 will compete for the left 1M bandwidth. In such a case, if
there is any traffic passing through IP10, the left 1M bandwidth will be reserved for IP10. Thus,
IP1 - IP10 are allocated with 1M reserved bandwidth per IP, while all the exceeded traffic of IP1
- IP10 and all the traffic passing through IP21 - IP40 will be diverted to class-default. However,
Sometimes the maximum bandwidth available to a user is restricted. In such a case if the user is
trying to download large files via Thunder or other P2P software, he will find it's rather slow to
open WebPages or receive responses from game servers. To solve the problem, Hillstone devices
introduce an IP QoS priority mechanism. The traffic for each IP is assigned with a priority, spe-
cifically depending on the type of the application. The traffic with higher priority has the priority
in processing. The IP QoS priority should be used in combination with IP QoS to realize the fol-
lowing effect: the bandwidth is restricted, at the same time important bandwidth is allocated with
higher priority. The QoS profile with IP QoS priority configured can only be applied to the
ingress interfaces.
StoneOS supports 5 IP QoS priorities (1 to 5) among which 1 is the highest priority, and 3 is the
default priority. The IP QoS priority is only valid within the device. Once the packets leave the
Hillstone device, the marked IP QoS priority will be void.
To make the IP QoS priority take effect, you should take the following steps on the device:
1. Configure an IP QoS priority for the ingress interface, specifically depending on the type of
the application.
2. Configure an IP-based QoS profile on the egress interface, and apply the configured IP QoS
priority to the profile.
To configure an IP QoS priority, in the QoS profile class configuration mode, use the following
command:
set ip-qos-priority number
l number – Specifies the IP QoS priority. The value range is 1 to 5. The default value is 3.
To restore to the default IP QoS priority, in the QoS profile class configuration mode, use the
command no set ip-qos-priority.
Low Latency Queuing (LLQ) is a comprehensive algorithm of Priority Queuing (PQ), Custom
Queuing (CQ) and Weighted Fair Queuing (WFQ). LLQ is usually used for voice and interactive
video stream. The total bandwidth configured for LLQ should not be more than 33% of total
application bandwidth. To configure LLQ for the class, in the QoS profile class configuration
mode, use the following command:
priority {bandwidth-value | percent percentage} [burst-size] [schedule schedule-name]
l percent percentage – Specifies the reserved bandwidth percentage in the interface's total
bandwidth. The value range is 1 to 100.
l burst-size – Specifies the burst size. The value range is 2048 to 51200000 bytes.
l schedule-name – Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
more schedules (up to 8). To avoid possible unknown problems, you are not recommended to
use schedules with time overlapping.
To cancel the specified LLQ, in the QoS profile class configuration mode, use the command no
priority.
The congestion avoidance on Hillstone devices is implemented by the Weighted Random Early
Detection (WRED) mechanism. With WRED enabled, the system will drop packets at random in
case of congestion, in order to avoid TCP global synchronization and improve line utilization.
WRED is disabled by default. To configure WRED, in the QoS profile class configuration mode,
use the following command:
random-detect [dscp-based | prec-based]
l prec-based – WRED calculates the possibility of dropping the packets based on IP pre-
cedence. This is the default options.
To cancel the specified WRED, in the QoS profile class configuration mode, use the command no
random-detect.
Configuring CoS
You can configure a Layer 2 CoS value for the outbound packets, and in combination of the com-
mand match cos, enable the device to implement QoS on packets based on the marked CoS value.
The QoS profile with CoS configured can only be bound to the ingress interfaces. To configure
CoS for the class, in the QoS profile class configuration mode, use the following command:
set cos cos-value
To cancel the specified CoS, in the QoS profile class configuration mode, use the command no
set cos .
Configuring DSCP
You can mark DSCP values for different packets, so that all the other QoS functions can operate
on the packets based on the configured DSCP values. The QoS profile with DSCP configured can
only be bound to the ingress interface. One single packet should not be configured with DSCP
and IP precedence simultaneously. You can only select one of them. To configure DSCP for the
class, in the QoS profile class configuration mode, use the following command:
set dscp dscp-value
To cancel the specified DSCP, in the QoS profile class configuration mode, use the command no
set dscp.
You can mark IP precedence values for different packets, so that all the other QoS functions can
operate on the packets based on the configured IP precedence values. The QoS profile with IP
precedence configured can only be bound to the ingress interface. One single packet should not
be configured with DSCP and IP precedence simultaneously. You can only select one of them.
To configure IP precedence for the class, in the QoS profile class configuration mode, use the fol-
lowing command:
set precedence precedence-value
To cancel the specified IP precedence, in the QoS profile class configuration mode, use the com-
mand no set precedence.
Sometimes the traffic might be matched to multiple classes in the QoS profile. In such a case the
system will select a class based on the matching priority of the classes. To configure a matching
priority, in the QoS profile class configuration mode, use the following command:
match-priority priority-number
• priority-number – Specifies the priority for the class. The value range is 1 to 256. 1 is the
highest priority. Except for class-default, the default priority of all the other classes is 255. The
classes without any priority configured will be matching based on their creation sequence in the
QoS profile. The priority of class-default is 256, i.e., the lowest priority by default.
To cancel the specified matching priority, in the QoS profile class configuration mode, use the
command no match-priority.
Hillstone devices support exception policies. With this function configured, the system will not
implement QoS on the specified traffic. To configure an exception policy, in the QoS profile con-
figuration mode, use the following command:
exception-list {ip-range A.B.C.D A.B.C.D | address address-entry}
l address-entry – Specifies the address entry. The traffic in this range will not be controlled by
QoS.
To delete the specified exception policy, in the QoS profile configuration mode, use the com-
mand no exception-list.
Example: The maximum bandwidth available to each user for Internet access is restricted to 1000
K, but access to the DMZ segment should not be restricted. The IP range for the Intranet users is
10.101.1.0 to 10.101.1.150; the internal servers (such as Web servers, FTP server, etc.) are loc-
ated in the DMZ segment with the IP range of 10.100.6.10 to 10.100.6.20. Use the following
commands:
hostname(config-class-map)# exit
hostname(config-if-eth0/2)# exit
hostname(config)#
Role-based QoS, i.e., role QoS, is used to control the maximum or reserved bandwidth for each
user within the role. The perquisite for implementing role QoS is that the class in the QoS profile
must contain the role matching condition. Role QoS should not be used with other types of QoS
simultaneously, i.e., if only one class in the QoS profile is configured with role QoS, all the other
classes in the QoS profile must also be configured with role QoS.
To configure role QoS, in the QoS profile class configuration mode, use the following command:
ro le-qo s {sh are | p er-user} {max-b an dwidth bandwidth | reserve-b an dwidth bandwidth
[max-b an dwidth bandwidth ]} [sch edule schedule-name ]
l max-bandwidth bandwidth – Specifies the maximum bandwidth, i.e., the maximum band-
width shared by all the users (share) or available to each user (per-user) within the role. The
value range is 32 to 1000000 Kpbs. When configuring reserve-bandwidth, the default value of
max-bandwidth is 100000.
l reserve-bandwidth bandwidth – Specifies the reserved bandwidth, i.e., the reserved band-
width shared by all the users (shared-bandwidth) or available to each user (per-ip) within the
role. The value range is 32 to 1000000 Kpbs. This value must be smaller than the actual band-
width value of the interface.
l schedule-name – Specifies the name of the schedule defined in the system. The con-
figuration will only take effect during the specified period. Repeat the command to specify
If one user matches multiple roles, and all the roles are configured with role QoS in the QoS pro-
file, then only the first matched role QoS will work on the users. Therefore, when one user
matches multiple roles, you should pay special attention to the order of role QoS rules.
To cancel the specified role QoS, in the QoS profile class configuration mode, use the command
no role-qos {share | per-user} {max-bandwidth bandwidth | reserve-bandwidth bandwidth [max-
bandwidth bandwidth]} [schedule schedule-name].
The traffic without any role configured will be diverted to the default class class-default. By
default the system will not control the bandwidth of class-default.
Allocation Principle of Reserved Bandwidth
The allocation of reserved bandwidth for roles should following the principles below:
l Only when traffic is available to the matched users will the system reserve the specified band-
width; when the traffic terminates, the reserved bandwidth will be freed.
l If the sum of the reserved bandwidth is larger than the interface bandwidth, and the interface
bandwidth is occupied by the users, then the traffic available to the newly matched users will
be diverted to class-default; if the bandwidth of class-default is 0, the traffic will be dropped.
Here is a role-based QoS example. The the reserved bandwidth per user for role1 - role20 is 1M,
and the maximum bandwidth per user for role21 - role40 is 1M. The interface bandwidth is 10M.
role1 - role40 correspond to user1 - user40 respectively.
When there is traffic available to user1 - user9 and user21 - user40, user1 - user9 will be allocated
with the reserved bandwidth of 1M each; the traffic that exceeds 1M reserved bandwidth of user1
- user9 and the traffic available to user21 - user40 will compete for the left 1M bandwidth. In
such a case, if there is any traffic available to user10, the left 1M bandwidth will be reserved for
user10. Thus, user1 - user10 are allocated with 1M reserved bandwidth per user, while all the
exceeded traffic of user1 - user10 and all the traffic passing through user21-user40 will be diver-
ted to class-default. However, the bandwidth of class-default is 0 (all the interface bandwidth is
reserved), so the above traffic will be dropped.
Nesting a QoS profile is the process of binding the class of a QoS profile to another QoS profile,
so that you can reasonably allocate application bandwidth to different IPs/roles/users. To con-
figure a nest QoS profile, in the QoS profile class configuration mode, use the following com-
mand:
qos-profile qos-profile-name
l qos-profile-name – Specifies the name of QoS profile which should be an existing QoS pro-
file name in the system.
To cancel the specified nest QoS profile, in the QoS profile class configuration mode, use the
command no qos-profile.
Notes: When using the nest QoS profile, you should keep in mind:
l The application QoS can nest an IP QoS profile or role QoS profile, but can-
not nest an application QoS profile.
l The bandwidth of the nested IP QoS profile and role QoS profile must be
shared, and these profiles can only contain up to sixteen classes (including the
default class).
l The nested application QoS profile can only contain up to sixteen classes
(including the default class); the bandwidth and priority parameters of the nes-
ted application QoS profile must be configured in form of percentage.
You can specify a QoS operation for the egress interface, including policing and shaping. This
function only applies to IP QoS and role QoS. By default the system will perform policing on the
Disabling a Class
By default all the classes in the QoS profile are enabled. To disable a specific class in the QoS pro-
file, in the QoS profile class configuration mode, use the following command:
disable
To restore to the default status, in the QoS profile class configuration mode, use the command
no disable.
Notes: The disabled classes still exist in the QoS profile. To delete the specified
class from the QoS profile, use the command no class class-name.
Binding to an Interface
The configured QoS profiles will not take effect until being bound to an interface. To bind a QoS
profile to an interface, in the interface configuration mode, use the following command:
qos-profile [1st-level | 2nd-level] {input | output} qos-profile-name
l 1st-level | 2nd-level – Applicable to multi-level QoS. 1st-level indicates the first level, and
2nd-level indicates the second level. If this parameter is not specified, the profile will be
bound to the second level.
l input | output – Specifies the interface direction (either input or output) the QoS profile
will be bound to.
l qos-profile-name – Specifies the name of the QoS profile that will be bound.
Notes: IP QoS profile and role QoS profile should not be bound to the different
levels of one single interface.
After configuring QoS for the interface, to view the QoS configuration and statistics, use the fol-
lowing command:
show qos interface interface-name [1st-level-input | 1st-level-output | 2nd-level-input | 2nd-
level-output] [detail]
l 1st-level-input – Only shows the QoS statistics of the first level of the input interface.
l 1st-level-output - Only shows the QoS statistics of the first level of the output interface.
l 2st-level-input – Only shows the QoS statistics of the second level of the input interface.
l 2st-level-output - Only shows the QoS statistics of the second level of the output interface.
l detail – Shows the statistics and the corresponding QoS configuration information.
To view the QoS profile configuration, in any mode, use the following command:
show qos-profile [qos-profile-name]
l qos-profile-name – Shows the configuration of the specified QoS profile. If this parameter is
not specifies, the command will show the configurations of all the QoS profiles.
FlexQoS is applicable to IP-based QoS and role-based QoS. If the system is configured with QoS,
the maximum bandwidth available to different IP addresses is typically restricted to a specified
range. In such a case, even if the interface has some free bandwidth available, the restricted IP can-
not make use of it, leading to resource waste. To solve this problem, StoneOS provide FlexQoS
to make full use of bandwidth resources. The configuration of FlexQoS includes global FlexQoS
and Class Flex QoS which can implement specific FlexQoS control over different IP queues and
roles. The global FlexQoS is disabled by default. In such a case, no matter whether the Class
FlexQoS is enabled, both the global and Class FlexQoS are disabled. The Class FlexQoS is only
valid when both the global and Class FlexQoS are enabled.
You can set a lower threshold and upper threshold for the global FlexQoS. The default lower
threshold is 75, and the default upper threshold is 85. If FlexQoS is enabled with the default val-
ues, when the utilization of output bandwidth is less than 75%, the available bandwidth will
increase linearly (you can specify the flex factor); when the utilization reaches 85%, the available
bandwidth will decrease exponentially to the specified lower threshold; when the utilization is
between the upper and lower threshold, the FlexQoS is stable, i.e., the available bandwidth will
neither increase nor decrease.
To configure global FlexQoS, in the global configuration mode, use the following command:
flex-qos low-water-mark value high-water-mark value
l low-water-mark value – Specifies the upper threshold. The value range is 50 to 80. The
default value is 75.
l high-water-mark value – Specifies the lower threshold. The value range is 81 to 90. The
default value is 85.
To disable global FlexQoS, in the global configuration mode, use the command no flex-qos.
When global FlexQoS is enabled, if the bandwidth utilization of the egress interface is lower than
the upper threshold, the available bandwidth will increase. To configure the flex factor, in the
global configuration mode, use the following command:
flex-qos-up-rate rate
To restore to the default flex factor, in the global configuration mode, use the following com-
mand:
no flex-qos-up-rate
By default the FlexQoS for class is enabled. To enable or disable this function for a class, in the
QoS profile class configuration mode, use the following commands:
l Enable: flex-qos
l Disable: no flex-qos
After enabling FlexQoS for a class, to specify the maximum FlexQoS bandwidth for each IP of
the class, in the QoS profile class configuration mode, use the following command:
flex-qos max-bandwidth bandwidth
l bandwidth – Specifies the maximum FlexQoS bandwidth. The value range is 64 to 1000000
kbps. The default value is 100 times of the IP bandwidth.
To cancel the specified maximum FlexQoS bandwidth, in the QoS profile class configuration
mode, use the following command:
no flex-qos max-bandwidth bandwidth
Multi-level QoS
The application QoS and IP QoS are two independent data stream control mechanisms. The
application QoS is a global control that is used to re-organize the data stream passing through the
device, and provide faster and better service for the data with higher priority; while the IP QoS
focuses on each individual IP, and controls the bandwidth available to each IP. The combination
l Example 5:CBWFQ
l Example 6: LLQ
The QoS profile of Profile1 contains two classes: class1 and class2. The matching condition for
class1 is HTTP service, and the matching condition for class2 is QoS tag 2. Take the following
steps:
Step 1: Configure class1 and class2
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
hostname(config-if-eth0/3)# exit
hostname(config)#
After the above configurations, for the traffic that is destined to the device on ethernet0/3, the
DSCP of the traffic whose application type is HTTP and Policy QoS tag is 2 will be marked 20
instead of 35. Since the priority of class1 is higher than that of class2, the traffic is matched to
class1.
The ingress interface is bound with a QoS profile. Mark the DSCP of af11 to the HTTP traffic,
mark the DSCP of cs7 to the packets with QoS tag 1 (the QoS tag is configured during the cre-
ation of policy rules and P2P profile), and mark the DSCP of ef to the FTP packets. The system
and Internet will process the DSCP values of af11, cs7 and ef according the RFC standards.
Step 1: Configure classes named http, ftp and trash to classify the traffic
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config)#
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)#
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
Step 3: Bind the QoS profile to ethernet0/0 to classify the traffic on ethernet0/0 according to the
QoS profile
hostname(config-if-eth0/0)# exit
hostname(config)#
This example shapes the HTTP traffic to 12.8M, and regulates the P2P traffic to 6.4M. In
Example 2, the HTTP traffic is marked af11, and the P2P traffic is marked cs7. This example is
based on the classification and marking in Example 2.
Step 1: Configure classes named af11 and cs7
hostname(config-class-map)# exit
hostname(config-class-map)# exit
Step 2:Configure a QoS profile to police and shape the HTTP and P2P traffic
hostname(config-qos-prof-cmap)# sh ap e 12800
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
Step 3: Bind the QoS profile to ethernet0/1 to control the outbound HTTP and P2P traffic on
ethernet0/1 according to the QoS profile
hostname(config-if-eth0/1)# exit
hostname(config)#
This section describes an application QoS configuration example. The requirement is: restricting
the P2P traffic transmitting on ethernet0/0 to 1M/sec. In Example 2, the P2P traffic is marked
cs7. This example is based on the classification and marking in Example 2.
Step 1: Configure a class named cs7
hostname(config-class-map)# exit
Step 2: Configure a profile named p2p, and control the traffic that is matched to cs7 (P2P). The
maximum bandwidth is restricted to 1000 kbps, and the Exceed action is Drop
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
Step 3: Bind the QoS profile to ethernet0/0 to control the outbound P2P traffic on ethernet0/0
hostname(config-if-eth0/0)# exit
hostname(config)#
Example 5: CBWFQ
This example illustrates how to assure the bandwidth available to different classes in the QoS pro-
file based on CBWFQ. In Example 2, the HTTP traffic is marked af11, and the P2P traffic is
marked cs7. This example is based on the classification and marking in Example 2.
Step 1: Configure classes named af11 and cs7
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config)#
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
Step 3: Configure the upstream bandwidth for ethernet0/2, and bind policy1 to ethernet0/2
hostname(config-if-eth0/2)# exit
hostname(config)#
After the configuration, if the upstream bandwidth of ethernet0/2 is 10M, the available band-
width to class-default will be 2.5M (10-5-2.5), and the default queue is CBWFQ.
When processing traffic based on the above configuration, if the available bandwidth for class1 is
20M, the available bandwidth for class2 is 15M, and the available bandwidth for class-default is 0,
the device will allocate the 2.5M bandwidth of class-default to class1 and class2 proportionally.
The goal for this example is to reserve 3M bandwidth for VoIP traffic, set the minimum band-
width for HTTP traffic to 4M, police the bandwidth for P2P traffic to 6.4M, and drop the
exceeded P2P traffic. In Example 2, the VoIP traffic is marked ef, the HTTP traffic is marked
hostname(config)# class-map ef
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config)#
Step 2: Create a QoS profile named llq and configure the bandwidth for ef, af11 and cs7
hostname(config-qos-profile)# class ef
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
Step 3: Configure the upstream bandwidth of ethernet0/3, and bind the QoS profile to eth-
ernet0/3 to control the outbound bandwidth on ethernet0/3
hostname(config-if-eth0/3)# exit
hostname(config)#
In the example, the bandwidth of ethernet0/3 is 10M. Class cs7 is policed, so its bandwidth will
not be calculated. Therefore, the bandwidth available to class-default is 3M (10-3-4). When there
is no traffic for class-default, the bandwidth available to class cf11 will be 7M (5+2). The band-
width available to class ef will always be 3M.
The goal is to set maximum bandwidth available for each IP in Class ip-range1 to 2M and set the
maximum bandwidth shared by all the IPs in class ip-range2 to 10M.
Step 1: Configure a class
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config)#
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
hostname(config-if-eth0/2)# exit
hostname(config)#
The available bandwidth shared by all the IPs in class ip-range1 is 2M, while the bandwidth avail-
able to each IP should not exceed 800 KB.
The device is connected to the Internet on ethernet0/1, and ethernet0/0 is connected to the
Intranet. The requirement is: the IP segment of 1.1.1.1 to 1.1.1.255 in the Intranet share 2M
bandwidth, while the bandwidth available to each IP should not exceed 800 KB. You can imple-
ment the requirement by two approaches:
Solution 1
This solution reaches the goal by configuring two IP QoS profiles. Take the following steps:
hostname(config-class-map)# exit
hostname(config)#
Step 2: Create a QoS profile named ipq-share and allow all the IPs within the range to share 2M
bandwidth
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
Step 3: Bind the QoS profiles to an interface (first restrict the individual bandwidth, and then
restrict the total bandwidth)
Output bandwidth:
hostname(config)# in terface eth ern et0/0
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# exit
hostname(config)#
Input bandwidth:
hostname(config)# in terface eth ern et0/0
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# exit
hostname(config)#
Solution 2
Configure an application QoS profile and an IP QoS profile. Take the following steps:
Step 1: Create a class named ip-range
hostname(config-class-map)# exit
hostname(config)#
Step 2: Create a QoS profile named appq, and allow all the IPs within the range to share 2M band-
width
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
Step 3: Create a QoS profile named ipq-per, and restrict the bandwidth available to each IP within
the range to 800 KB
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
Step 4: Bind the QoS profiles to an interface (first restrict the individual bandwidth, and then
restrict the total bandwidth)
Output bandwidth:
hostname(config)# in terface eth ern et0/0
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# exit
hostname(config)#
Input bandwidth:
hostname(config)# in terface eth ern et0/0
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# exit
There are 200 IP segments: ip-range1 (1.1.1.1 to 1.1.1.10), ip-range2 (2.1.1.1 to 2.1.1.10) … ip-
range200 (200.1.1.1 to 200.1.1.10). The requirement is: restricting the maximum bandwidth avail-
able to each IP segment to a specified value (such as 1M, 4M, 10M…) by IP QoS.
One QoS profile can only support up to 64 classes, so in order to restrict bandwidth for 200 IP
segments, you need to combine multi-VR to the IP QoS, as shown the figure below:
As shown above, there are two VRs: trust-vr and VR1. SNAT is implemented in VR1, so the 200
IP segments can be translated to individual IPs, i.e., translating ip-range1, ip-range2 … ip-
range200 to IP1, IP2 … IP200 respectively; then classify the 200 IPs according to the band-
width, and in trust-vr restrict the bandwidth available to the IPs, specifically depending on the IP
QoS configuration.
Step 1: Enable multi-VR on the device
hostname(config-vrouter)# exit
hostname(config)#
hostname(config)# zo n e trust
hostname(config-zone-trust)# exit
hostname(config)#
Step 4: Create 200 address ranges that contain the above 200 segments respectively
hostname(config-addr)# exit
hostname(config-addr)# exit
……
hostname(config-addr)# exit
hostname(config)#
Step 5: Create 200 address entries that contain the above 200 IPs respectively
hostname(config)# address ip 1
hostname(config-addr)# ip 1.1.1.100/32
hostname(config)# address ip 2
hostname(config-addr)# ip 2.1.1.100/32
hostname(config-addr)# exit
……
hostname(config-addr)# ip 200.1.1.100/32
hostname(config-addr)# exit
hostname(config)#
Step 6: Create 200 SNAT rules in VR1 to translate the 200 segments to 200 IPs respectively
……
hostname(config-vrouter)# exit
hostname(config)#
Step 7: After SNAT, classify the 200 IPs according to the bandwidth; create address entries, each
entry contains IPs of the equal bandwidth
hostname(config)# address 1m
hostname(config-addr)# memb er ip 1
hostname(config-addr)# memb er ip 5
hostname(config-addr)# memb er ip 6
……
hostname(config)# address 4m
hostname(config-addr)# memb er ip 15
……
hostname(config-addr)# exit
……
hostname(config)#
Step 8: Create classes, and configure each class with an address entry matching condition
hostname(config)# class-map 1m
hostname(config-class-map)#
hostname(config-class-map)# exit
hostname(config)# class-map 4m
hostname(config-class-map)# exit
……
hostname(config)#
hostname(config-qos-profile)# class 1m
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# class 4m
hostname(config-qos-prof-cmap)# exit
……
hostname(config-if-eth0/2)# exit
hostname(config)#
The goal of this example is to assure that the webpage browsing and webgame have the highest pri-
ority. The device is connected to the Internet on ethernet0/0 (176.133.13.8); PC1 (10.200.2.2)
and PC2 (10.200.1.2) are connected to ethernet0/1 (10.200.2.1) and ethernet0/2 (10.200.1.1)
respectively.
Step 1: Configure classes
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# exit
hostname(config-if-eth0/0)# exit
hostname(config)#
The requirement is: The maximum bandwidth available to each user (user11 and user12) cor-
responding to role1 is 1M, and maximum bandwidth shared by all the users (user21, user 22 and
user23) corresponding to role2 is 4M. The maximum bandwidth available to each user of class-
default is 200 KB.
Step 1: Configure roles and users
hostname(config)# ro le ro le1
hostname(config)# ro le ro le2
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config-role-mapping)# exit
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config)#
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
hostname(config-if-eth0/2)# exit
hostname(config)#
Configure a nest QoS profile based on Example 10 to implement the following QoS controls:
l For the users that can be matched to a role, guarantee the HTTP and FTP application band-
width, but restrict the P2P application bandwidth;
l For the users that cannot be matched any role, do not implement QoS control.
For more information about how to configure a role, user, role-related class, and how to bind the
QoS profile to an interface, see Example 10: IP QoS Priority.
Step 1: Configure application classes
hostname(config-svc-group)# ap p licatio n b t
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config)# class-map p 2p
hostname(config-class-map)# exit
hostname(config)#
hostname(config)# ro le ro le1
hostname(config)# ro le ro le2
hostname(config)# ro le ro le3
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config-role-mapping)# exit
hostname(config-aaa-server)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
l When the bandwidth utilization reaches 85%, restrict the maximum bandwidth available to
each user to 100 KB; when the network link is free, cancel the restriction. Besides, the band-
width occupied by P2P traffic should not exceed 200 MB.
The first-level application QoS restricts the bandwidth for P2P traffic to 200M.
Step 1: In the policy rule, mark the P2P traffic with QoS tag 16
hostname(config)# servgro up p 2p
hostname(config-svc-group)# service b t*
hostname(config-svc-group)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service p 2p
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config-policy)# exit
hostname(config)#
hostname(config-class-map)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
Step 3: Bind the P2P QoS profile to the ingress interface of WAN
hostname(config-if-eth0/0)# exit
hostname(config)#
Step 1: Configure an IP QoS priority. The priority of HTTP should be higher than that of P2P
hostname(config-class-map)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# exit
hostname(config-if-eth0/3)# exit
hostname(config)#
hostname(config-class-map)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config-if-eth0/0)# exit
hostname(config)#
This section describes a comprehensive QoS application example. The goal is to control all the
applications in the system, and restrict the total bandwidth and application bandwidth available to
different users and applications.
Requirement
The total bandwidth available to users is 600M. The requirement for QoS is:
l Control the application bandwidth: the VoIP bandwidth ≥ 15%, key business bandwidth ≥
30%, webpage browsing bandwidth ≥ 20%; the P2P bandwidth should be 20M to 300M, spe-
cifically depending on the schedule.
l Control the bandwidth available to each user in the Intranet: the maximum bandwidth avail-
able to each user in Group1 is 1M; to each user in Group2 is 1.5M; to each user in Group3 is
2M.
l Implement fine-grained control on the bandwidth available to each user in the Intranet: the
VoIP bandwidth = 15%, key business bandwidth = 30%, webpage browsing bandwidth =
20%, P2P bandwidth = 10%.
Configuration Steps
hostname(config-if-eth0/0)# zo n e un trust
hostname(config-if-eth0/0)# exit
hostname(config-if-eth0/1)# zo n e trust
hostname(config-if-eth0/1)# exit
hostname(config-if-eth0/2)# exit
hostname(config-if-eth0/3)# zo n e trust
hostname(config-if-eth0/3)# exit
hostname(config)# zo n e trust
hostname(config-zone-trust)# exit
hostname(config)#
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-user)# exit
hostname(config-user-group)# exit
hostname(config-user-group)# exit
hostname(config-user-group)# exit
hostname(config-aaa-server)# exit
hostname(config)# ro le ro le1
hostname(config)# ro le ro le2
hostname(config)# ro le ro le3
hostname(config-role-mapping)# exit
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-vrouter)# exit
hostname(config)#
hostname(config-addr)# ip 10.200.0.0/16
hostname(config-addr)# exit
hostname(config-addr)# ip 10.200.1.0/24
hostname(config-addr)# exit
hostname(config-addr)# ip 10.200.2.0/24
hostname(config-addr)# exit
hostname(config-addr)# ip 10.200.3.0/24
hostname(config-addr)# exit
hostname(config-webauth)# en ab le
hostname(config-webauth)# exit
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# ro le un kn o wn
hostname(config-policy-rule)# exit
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# ro le ro le1
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# ro le ro le2
hostname(config-policy-rule)# exit
hostname(config-policy)# rule
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# ro le ro le3
hostname(config-policy)# exit
hostname(config)#
hostname(config-schedule)# exit
hostname(config-schedule)# exit
hostname(config-schedule)# exit
hostname(config)#
Step 6: Configure QoS classes (The key businsess may vary from different environments. This sec-
tion takes POP3 as the example)
hostname(config)# class-map vo ip
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config-class-map)# exit
hostname(config)#
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config-qos-profile)# class vo ip
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# class p 2p
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
hostname(config-qos-profile)# class vo ip
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# class p 2p
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-prof-cmap)# exit
hostname(config-qos-profile)# exit
hostname(config)#
hostname(config)# zo n e un trust
hostname(config-zone-untrust)# exit
hostname(config-zone-trust)# exit
hostname(config)#
Configuration Recommandations
The table below recommends different QoS configurations for different types of applcations to
help you better understanduse the QoS function.
Important real-time applications that SNMP, Telnet Guarantee the minumun bandwidth
occupy a little bandwidth by the command bandwidth.
Non-important real-time applications Email, file trans- Guarantee the minumun bandwidth
that occupy most bandwidth fer by using the command bandwidth,
and also allow using the free band-
width.
Applications that occupy some band- webgame Important: Guarantee the minumun
width, but the importance may vary bandwidth by using the command
depending on different situations. bandwidth. Non-important: Restrict
the maximum bandwidth by using
the command police.
Load Balancing
This chapter introduces the following topics:
l Distribute the traffic to the specified port of each intranet server. This is applicable to the
scenario that different intranet servers meanwhile and individually provide the same service
via specified port.
l Distribute the traffic to different ports of an intranet server. This is applicable to the scenario
that an intranet server provides the same service by running the same process at different
ports.
A glocal SLB server pool is a database which stores the internal server IP ranges and the server
names. The mapping between a server IP and the server name is called an SLB server pool entry.
The gobal SLB server pool includes SLB server pool entries. To add an entry into the global SLB
server pool, under configuraiotn mode, use the following command:
slb-server-pool pool-name [ipv6]
Notes: Before deleting an entry, make sure this entry has not binding with any other
items.
Parameters of an SLB Server Pool Entry includes IP range, port, weight, and maximum con-
nections. There are two types of IP range in SLB server pool
To add members and configure detailed parameters for an SLB server pool entry of IPv4, under
SLB server pool configuration mode, use the following command. You can add up to 256 mem-
bers.
server {ip ip/netmask | ip-range min-ip [max-ip]} [port port-num ]{weight-per-server weight-
num} [max-connection-per-server max-num]
l ip-range start-ip [max-ip] – Specify IPv4 address range, start-ip is start IP address and end-ip
is end IP address.
l weight-per-server weight-num – Specify the weight in load balance. The range is from 1 to
255.
To delete an entry in SLB server pool of IPv4, use the following command:
no server {ip ip/netmask | ip-range min-ip [max-ip]} [port port-num ]{weight-per-serverweight-
num} [max-connection-per-server max-num]
To delete an entry in SLB server pool of IPv6, use the following command:
no server {ipv6 ipv6-address/Mask | ipv6-rangemin-ipv6-address [max-ipv6-address]} [portport-
num ]
The system supports three types of SLB algorithms: weighted hash algorithm, weighted round
robin, and weighted least connection. By default, weight hash algorithm is used.
To apply an algorithm, in the SLB server pool configuration mode, use the following command:
load-balance-algorithm {weighted-hash | weighted-round-robin [sticky] | weighted-least-con-
nection [sticky]}
l sticky– If you use sticky, all sessions from the same source IP will be mapped to one
server.timeoutvalueSpecify the keepalive time of the session mapping, that is, during the spe-
cified time, sticky is effective.
To add a track rule for SLB, under SLB server pool configuration mode, use the following com-
mand:
monitor{track-ping | {track-tcp |track-udp }[port port-num]} [src-interfaceinterface_name] inter-
val interval-value threshold number weight weight-num
l port port-num - Specify the track port number. The range is from 0 to 65535.
l When the members in the SLB server pool have the same IP address and different
ports, you don’t need to specify the port when configuring the track rule. The system
will track each IP address and its port in the SLB server pool.
l When there is a member whose port is not configured exists in the SLB sever pool, you
must specify the port when configuring the track rule. The system will track the spe-
cified port of the IP addresses in the SLB server pool.
l When the members in the SLB server pool are all configured with IP addresses and
ports and these configured IP addresses are different from each other, you can select
whether to specify the port when configuring the track rule. If specified, the system
will track the specified port of these IP addresses. If not, the system will track the con-
figured ports of the IP addresses of the members.
l interval interval-value - Specify the interval of track packets. The range is 1 to 255.
l threshold number - Specify the threshold which determines if track object failes or not. If
the system cannot get respond within the threshold packet number, the track object will be
deemed as failure, i.e. the object cannot be reached. The range of threshold is 1 to 255. The
default number is 3.
l weight weight-num - Specify the weight of the current track object. The weight determines
if the whole track is failed or not when this object fails. The weight range is 1 to 255.
When the weight sum of all track objects exceed the threshold, the server is deemed as failed. To
specify the threshold, under SLB server pool configuration mode, use the following command:
monitor threshold number
SLB server pool entry can be bound to DNAT rule to achieve server load balancing.
To bind an SLB server pool entry to a DNAT rule, under VRouter configuration mode, use the
following command:
l slb-server-pool pool-name – Specify the name of SLB server pool entry, you can refer to the
IPv4 or IPv6 type SLB server pool entry.
Tip: For information about how to set up DNAT rules, see “Creating a DNAT
Rule” in the “Firewall”
To view SLB server pool entry and track rule, under any mode, use the following command:
show slb-server-pool pool-name
To view SLB server, under any mode, use the following command:
show load-balance server
To view SLB DNAT:
show load-balance slb-server-pool pool-name
To view SLB DNAT rule, under any mode, use the following command:
show load-balance rule
Load Balancing
This chapter introduces the following topics:
After enabling LLB for inbound traffic, the system will resolve domains to different IPs based on
the sources of DNS requests, and return IPs for different ISPs to the corresponding users who ini-
tiate the requests, thus reducing accesses across ISPs. Such a resolution method is known as
SmartDNS.
You can enable inbound LLB by the following steps:
1. Enable SmartDNS. This is the prerequisite for the implementation of inbound LLB.
2. Configure a SmartDNS rule table. The smart domain-to-IP resolution is implemented based
on the rule table.
Enabling SmartDNS
SmartDNS is enabled by default. To disable or enable the function, in the global configuration
mode, use the following command:
llb in b o un d smartdn s {disab le | en ab le}
The configuration of SmartDNS rule table includes creating a rule table, specifying the domain
name, return IP and matching rule. The system resolves domains names into IPs of different ISP
links based on the matching rule.
To create a SmartDNS rule table, in the global configuration mode, use the following command:
llb inbound smartdns name
To delete the specified SmartDNS rule table, in the global configuration mode, use the following
command:
no llb inbound smartdns name
To specify the domain name that will be resolved smartly, in the SmartDNS rule table con-
figuration mode, use the following command:
domain domain-name
l domain-name – Specifies the domain name that will be resolved smartly. The length is 1 to
255 characters.
Repeat the above command to add multiple domain names to the SmartDNS rule table. Each rule
table supports up to 64 domain names (case insensitive).
To delete the specified domain name, in the SmartDNS rule table configuration mode, use the fol-
lowing command:
no domain domain-name
You can specify different return IPs for requests originating from different ISP links. The system
determines the request sources based on the addresses in the ISP route (ISP static address). If the
address of request source matches any entry of the above addresses, then the system will return
the specified IP. In the SmartDNS rule table configuration mode, use the following command:
ip ip-address isp isp-name [in terface interface-name ] [weigh t value ]
l isp isp-name – Specifies the ISP to which the request source address will be matched. If the
source address matches any address entry of the ISP, the system will return the specified IP
(ip ip-address). isp-name should be a predefined or user-defined ISP profile in the sys-
tem. Each ISP can correspond to up to 16 IPs.
l interface interface-name – Specifies the inbound interface for the return IP address. System
will judge whether the return IP address is valid according to the track result or the protocol
status of the inbound interface. Only the valid IP address will be returned to the request
source. When there’s track object configured on the inbound interface, if the track status is
successful, the return IP address is valid. Otherwise the IP address is invalid. When there’s
no track object configured on inbound interface, if the protocol state of the interface is UP,
the return IP address is valid. Otherwise the IP address is invalid. If you don’t specify the
inbound interface for the return IP address, the return IP address is always valid.
l weight value – Specifies the weight of the return IP. The value range is 1 to 100. The default
value is 1. In the SmartDNS rule table, one domain name might correspond to multiple IPs.
The system will sort the IPs based on the weight and then return to the users.
To delete the specified return IP address, in the SmartDNS rule table configuration mode, use the
following command:
no ip ip-address
Notes:
l The ISP route being referenced by the SmartDNS rule table cannot be
deleted. For more information about ISP route, see “ISP Route” in the
“Route”.
l Before completing the configuration of domain name, return IP, etc., the new
SmartDNS rule table will be disabled.
By monitoring the delay, jitter, packet loss rate and bandwidth utilization of each link in real-time,
the system can intelligently route and dynamically adjust the traffic load of each link.You can con-
figure a flexible LLB profile to bind to the route (the current system only supports DBR and
PBR), forming LLB rules to implement outbound dynamic link load balancing, and thus make effi-
cient use of network bandwidth.
The LLB profile contains the parameters of the load balancing algorithm, such as bandwidth util-
ization threshold, probe switch, probe mode, and equalization direction.
To create or configure an LLB profile, use the following command in the global configuration
mode:
llb profile llb-profile-name[ipv6]
l llb-profile-name – Specifies the name of the LLB profile. After you execute this command,
the system creates an LLB profile with the specified name and enters the LLB profile con-
figuration mode. If the specified name already exists, the system will directly enter the LLB
profile configuration mode.
l ipv6–Specifies the type of the LLB Profile as IPv6. If not specified, the type of the LLB Pro-
file is IPv4.
To delete the specified LLB profile, in the global configuration mode, use the command: no llb
profile llb-profile-name.
Notes: The LLB Profile name in the IPv4 should be different from that in IPv6.
In LLB profile configuration mode, the detect function is enabled by default. To enable or disable
it, use the following command:
detect {disab le | en ab le}
l enable –Enables the detect function. When the detect function is enabled, the system
detects the network link status according to the parameters configured by the user and then
selects the optimal route. The priority is as follows:
1. When the link bandwidth occupancy rate is lower than the specified bandwidth
threshold specified, the system will only calculate the link quality based on delay,
packet loss and jitter, and select the link with high quality first.
2. When the link bandwidth occupation rate is higher than the specified bandwidth
threshold, the system will combine delay, packet loss, jitter and bandwidth occu-
pation rate to calculate the link quality, and select the link with high quality first.
When the type of the LLB Profile is specified as IPv4, , you can configure the related parameters
as required. In LLB profile configuration mode, use the following command:
detect { netmask {A.B.C.D | num} | thresholdvalue | max-entry-numbernum | weight-update-
intervalinterval | weight-factorsdelay-factorjitter-factorloss-rate-factorbw-rate-factor}
l netmask {A.B.C.D | num} - Specifies the detection subnet. The system will monitor the
traffic in real time based on the subnet. The traffic of the same subnet will choose the same
link. The system supports two formats, A.B.C.D or num. The value of A.B.C.D ranges from
255.0.0.0 to 255.255.255.255, and the default value is 255.255.240.0; num ranges from 8 to
32 and defaults to 28.
l threshold value – Specifies the bandwidth utilization threshold of the interface. When the
rate does not exceed the threshold by the interface bandwidth, the system will only analysis
delay, jitter and packet loss rate to dynamically adjust the routing link; when the rate exceeds
the threshold by the interface bandwidth, system will analysis of each link bandwidth util-
ization rate of the parameters at the same time to adjust the routing method. Value ranges
from 0 to 100 (0% to 100%) and defaults to 60.
l weight-update-intervalinterval - Specifies the update cycle for the subnet entry weight, which
ranges from 1 to 300 seconds, with a default of 10 seconds.
To restore the default values of the related parameters, use the command nodetect { netmask |
threshold | max-entry-number | weight-update-interval | weight-factors }.
When the type of the LLB Profile is specified as IPv6, you can configure the related parameters as
required. In LLB Profile configuration mode, use the following commands:
detect { prefixprefix-len | thresholdvalue | max-entry-numbernum | weight-update-intervalinter-
val | weight-factorsdelay-factorjitter-factorloss-rate-factorbw-rate-factor}
l prefixprefix-len–Specifies prefix length. The system will monitor the traffic in real time
based on the prefix length. The traffic with the same prefix length will choose the same link.
The value range of prefix len is 64 to 96, and the default value is 64.
l thresholdvalue – Specifies the bandwidth utilization threshold of the interface. When the
rate does not exceed the threshold by the interface bandwidth, the system will only analysis
delay, jitter and packet loss rate to dynamically adjust the routing link; when the rate exceeds
the threshold by the interface bandwidth, system will analysis of each link bandwidth util-
ization rate of the parameters at the same time to adjust the routing method. Value ranges
from 0 to 100 (0% to 100%) and defaults to 60.
l weight-update-intervalinterval - Specifies the update cycle for the subnet entry weight, which
ranges from 1 to 300 seconds, with a default of 10 seconds.
To restore the default values of the related parameters, use the command nodetect { prefix |
threshold | max-entry-number | weight-update-interval | weight-factors }.
When the bandwidth utilization of the link exceeds the specified limit, the system will record the
logs. To record the logs, use the following command:
log enable [utilization-limitutilization-limit]
l bidirection – The system will compare the maximum bandwidth utilization ratio with the
bandwidth utilization threshold in the two directions of data flow into and out, and then
adjust the routing method.
l downstream – The system will compare the bandwidth utilization of the data stream into the
bandwidth utilization threshold, and then adjust the routing method.
To restore the default mode of the load balancing direction, use the command no bandwidth-bal-
ance-direction.
To configure the load balancing mode, use the following command:
mode {compatibility [upper-limitupper-limit-valuelower-limitlower-limit-value]| performance}
l compatibility – Configure the load balancing mode to work in high compatibility mode.
When the link load changes, the system does not switch the link frequently, but ensures that
the service is as far as possible on the previous link, such as banking services.
l performance – Configure the load balancing mode for high-performance. In this mode, the
system adjusts link to keep the link balance as fast as possible.
To restore the default mode of the load balancing mode, use the command no mode.
For more information about configuring load balancing, use the following command:
descriptiondescription
To restore the default value of the link detection interval, use the following command:
no host-detect interval
To view the link detection result for a specified domain name, in any mode, use the following
command:
sh o w llb rule [ rule-name ] spec-host task { all | host-name } [ slot slot-number ]
l spec-host task { all | host-name} - View the link detection result for a specified domain name
l all- View link detection results of all domain names in the LLB rule.
l host-name- Specify the domain name and view the link detection result of this domain
name.
l slotslot-number - Specify the slot number of the module card. View the link detection result
of all domain names (all) or the specified domain name (host-name) on the module card. This
parameter is only supported on X-Series devices.
LLB Profile and the route is bound to the formation of LLB rules, it can really take effect, cur-
rently support binding destination routing (DBR) and policy-based routing (PBR). To configure
LLB rules, use the following command in global mode:
llb rulerule-name[ipv6] {pbrpbr-nameidmatch-id | dbr [vroutervr-name] {{X:X:X:X::X/M} |
{A.B.C.D/M | A.B.C.D A.B.C.D }} {profileprofile-name} [host host-book-name]
l ipv6–Specifies the type of the LLB Rule as IPv6. If not specified, the type of the LLB Rule
is IPv4.
l idmatch-id – Specify the match id of PBR. The IP type of PBR rule should be the same as
the LLB Rule. If the IP tyoe of LLB Rule is IPv6, the IP type of PBR rule should be IPv6 as
well.
l profileprofile-name – Specifies the bound LLB profile. The IP type of the LLB Profile
should be the same as the LLB Rule.
To delete the specified LLB rule,in the global configuration mode, use the command:no llb
rulellb-rule-name.
Notes: The LLB Rule name in the IPv4 should be different from that in IPv6.
To view the outbound LLB configuration, in any mode, use the following command:
sh o w llb {p ro file [ profile-name ]| rule [ rule-name ]}
To view the configuration of inbound or the specified SmartDNS rule table, in any mode, use the
following command:
show llb inbound [ smartdns name ]
For example, to view the configuration of SmartDNS rule table named test, use the command
show llb inbound smartdnstest. Below is a return example:
====================================================-
=====================
-------------------------------------------------------------------------
domain count: 1
rule count: 1
domains: www.test.com;
ip addresses:
-------------------------------------------------------------------------
l For more information about the track object under TRACK, see “Configuring a Track
Object” in the “System Management”
l The rule status displayed under S can be active or inactive, specifically relying on the con-
figured interface and track object on the interface:
Requirement
Ethernet0/6 and ethernet0/7 are connected to telecom and netcom links respectively. With
inbound LLB enabled, the device will return the IP address defined in the ISP static address
named telecom after receiving a DNS request from netcom users, and will return the IP address
Configuration Steps
Configurations of interfaces are omitted. Only the configurations of ISP information and inbound
LLB are provided.
Step 1: Configure ISP information
hostname(config-isp)# 101.1.1.0/24
hostname(config-isp)# exit
hostname(config-isp)# 201.1.1.0/24
hostname(config-isp)# exit
hostname(config-llb-smartdns)# exit
Step 3: Confirm the above configurations have taken effect by command show
Binding to nexthop: 0
Subnet(IP/Netmask): 1
101.1.1.0/24
Binding to nexthop: 0
Subnet(IP/Netmask): 1
201.1.1.0/24
I: inactive
===================================================-
===============
-------------------------------------------------------------------------
name: test
domain count: 1
rule count: 2
status: enable
domains: www.test.com;
ip addresses:
===================================================-
================
When PC1 requests www.test.com, the device will return the IP address for telecom link
(100.1.1.2); when PC2 requests www.test.com, the device will return the IP address for netcom
link (200.1.1.2).
l src-ip address-entry – Limits the session number of the source IP address in the security
zone. address-entry is the IP range of src-ip. This parameter should be an address entry
defined in the address book.
l dst-ip address-entry – Limits the session number of the destination IP address in the security
zone. address-entry is the IP range of dst-ip. This parameter should be an address entry
defined in the address book.
l ip address-entry – Limits the session number of the specified IP address in the security zone.
address-entry is the IP range of ip. This parameter should be an address entry defined in the
address book.
l protocol protocol-id – Limits the session numbers of the specified protocol in the security
zone.
l role role-name – Limits the session number of the specified role in the security zone.
l user aaa-server-name user-name – Limits the session number of the specified user in the
security zone. aaa-server-name is the AAA server the user belongs to.
l session {unlimit | max number [per-srcip | per-dstip | per-ip] | per-user} – Specifies the
maximum session number for the IP address or role. unlimit indicates no session limit. session
max number specifies the maximum session number for all the IP addresses defined in the
address entry or all the users defined in the role; if per-srcip, per-dstip, per-ip or per-user is
used, session max number specifies the maximum session number for each IP address or each
user defined in the role. per-srcip, per-dstip, per-ip and per-user should be correspond to src-
ip, dst-ip, ip and role respectively. For example, only when src-ip is specified can you choose
per-srcip.
l ramp-rate max number – Specifies the maximum new sessions that can be established every
5 seconds for the IP address or role.
l schedule schedule-name – Specifies an schedule during which the session limit rule will take
effect.
Notes: Session limit function support IPv4 address and IPv6 address. If the IPv6
function for interface is enabled, you can configure the address of IPv6 type. The
type of the source address entry and the destination address entry must keep same.
l id id – The session limit rule ID of the security zone. To view the rule ID, use the command
show session-limit.
With session limit configured, StoneOS will drop the sessions that exceeds the maximum session
number. To view the statistics on the dropped sessions, use the command show session-
limit. To clear the statistics on the dropped sessions in the specified session limit rule, in any
mode, use the following command:
clear session-limit id id statistics
l id id – Specifies the rule ID. The statistics on the dropped session in the specified session
limit rule will be cleared.
Notes: After Full-cone NAT is enabled on the device, the destination IP address in
the session limit refers to the IP address before DNAT translation. For more inform-
ation about Full-cone NAT, see “Full-cone NAT” in the “Firewall”
l low-water-mask value - Specify the low water level threshold for pre-discarding packets.
When the packets processed by system is bigger than the specified value, system will pre-dis-
card some packets to reduce networking delay; when the processed packets is smaller than the
specified value, system will not discard the packets, preventing system from discarding pack-
ets by mistake when the traffic is very low. The range of Value is 0 to 500000, and the default
value is 8192.
l interval time - The default is 100 ms. Specify the interval for calculating the number of pack-
ets processed by system. The unit of time is milliseconds, ranging from 100 to 1000 mil-
liseconds. The default value is 100 ms.
To disable the pre-discarding packets of receive queue, under global configuration mode, use the
following command no head-drop-packet.
Traffic Quota
System supports the traffic quota function, which can limit and control the allowable flow quota
of users/user groups per day or per month. When the user traffic reaches the daily or monthly
quota defined by the traffic quota profile, the system will block the user traffic.
l Configure the traffic quota profile and specify the daily quota and monthly quota of user
traffic in the traffic quota profile.
l Create a user/user group traffic quota rule, specify the restricted user/user group in the user-
/user group traffic quota rule, and bind the specified traffic quota profile to the traffic quota
rule.
To create a traffic quota profile, in the global configuration mode, use the following command:
user-quota profileprofile-name
l profile-name - Specifies the traffic quota profile name and enters the traffic quota profile con-
figuration mode. If the specified name exists, then the system will directly enter the traffic
quota profile configuration mode.
To delete the specified traffic quota profile, in the global configuration mode, use the command
no user-quota profileprofile-name.
To specify the daily quota, in the traffic quota profile configuration mode, use the following com-
mand:
daily daily-value un it {KB |MB | GB | TB}
l unit {KB |MB | GB | TB}– Specifies the unit of the daily quota.
l unit {KB |MB | GB | TB}– Specifies the unit of the monthly quota.
To delete the specified monthly quota, in the traffic quota profile configuration mode, use the
command no monthly .
To create a user traffic quota rule, in the global configuration mode, use the following command:
user-quota user-rulerule-name
l rule-name - Specifies the user traffic quota rule name and enters the user traffic quota rule con-
figuration mode. If the specified name exists, then the system will directly enter the user
traffic quota rule configuration mode.
To delete the specified user traffic quota rule, in the global configuration mode, use the command
no user-quota user-rulerule-name.
To specify the user of the user traffic quota rule, in the user traffic quota rule configuration mode,
use the following command:
useraaa-server-nameuser-name
l aaa-server-name– Specifies the name of the AAA server already configured in the system.
To delete the specified user, in the user traffic quota rule configuration mode, use the following
command:
To bind the specified traffic quota profile to a user traffic quota rule, in the user traffic quota rule
configuration mode, use the following command:
profileprofile-name
l profile-name - Specifies the name of the traffic quota profile that will be bound to the user
traffic quota rule.
To cancel the binding, in the user traffic quota rule configuration mode, use the following com-
mand:
no profile
To create a user group traffic quota rule, in the global configuration mode, use the following com-
mand:
user-quota group-rulegroup-name
l group-name - Specifies the name of the user group traffic quota rule and enters the user group
traffic quota rule configuration mode. If the specified name exists, then the system will dir-
ectly enter the user group traffic quota rule configuration mode.
To delete the specified user group traffic quota rule, in the global configuration mode, use the
command no user-quota group-rulegroup-name.
To specify the user group of the user group traffic quota rule, in the user group traffic quota rule
configuration mode, use the following command:
user-groupaaa-server-name group-name
To delete the specified user group, in the user group traffic quota rule configuration mode, use
the following command:
no user-groupaaa-server-name group-name
To bind the specified traffic quota profile to a user group traffic quota rule, in the user traffic
quota rule configuration mode, use the following command:
profileprofile-name
l profile-name - Specifies the name of the traffic quota profile that will be bound to the user
group traffic quota rule.
To cancel the binding, in the user group traffic quota rule configuration mode, use the following
command:
no profile
To adjust the user traffic quota rule priority, in the global configuration mode, use the following
command:
user-quo ta user-rule rule-name [ mo ve] { b efo re n ame rule-name | after n ame rule-name | to p
| b o tto m }
l rule-name – Specifies the name of the user traffic quota rule that you want to adjust.
l before namerule-name – Adjust the priority of the user traffic quota rule before the specified
rule.
l after namerule-name – Adjust the priority of the user traffic quota rule after the specified
rule.
l bottom – Adjust the priority of the user traffic quota rule to the bottom of all rules.
To adjust the user group traffic quota rule priority, in the global configuration mode, use the fol-
lowing command:
user-quo ta gro up -rule group-name [ mo ve] { b efo re n ame group-name | after n ame group-
name | to p | b o tto m }
l group-name – Specifies the name of user group traffic quota rule that you want to adjust.
l before namegroup-name – Adjust the priority of user group traffic quota rule before the spe-
cified rule.
l after namegroup-name – Adjust the priority of user group traffic quota rule after the spe-
cified rule.
l top – Adjust the priority of user group traffic quota rule to the top of all rules.
l bottom – Adjust the priority of user group traffic quota rule to the bottom of all rules.
To enable or disable the traffic quota function in the specified zone, in the zone configuration
mode, use the following command:
You can reset the user used traffic as needed, in the global configuration mode, use the following
command:
user-quo ta reset [ user-name ]{ daily | monthly | all }
l "Host Defense" on Page 1812 explains how to configure the host defense function to protect
the proxy host from ARP attacks.
l "Attack Defense" on Page 1827 describes the common network attack concepts, how to con-
figure Attack Defense, and examples of Attack Defense.
l "Sandbox" on Page 1881 describes sandbox protection function and how to configure sandbox
protection rules and how to update the domain name whitelist used by the sandbox.
l "IPS" on Page 1896 explains how to detect and protect mainstream application layer protocols
(DNS, FTP, POP3, SMTP, TELNET, MYSQL, MSSQL, ORACLE, NETBIOS), against
web-based attacks and common Trojan attacks.
l "Abnormal Behavior Detection" on Page 2000 describes how to configure the zone-based
abnormal behavior detection function to determine the abnormal behavior of the detection
object and how to update the abnormal behavior model database.
l "Advanced Threat Detection" on Page 2005 describes how to intelligently analyze host-based
suspicious traffic to determine whether it is malware and how to update the malware behavior
model database.
l "Perimeter Traffic Filtering" on Page 2009 describes how to filter the perimeter traffic based
on known IP of black/white list, take block action on the malicious traffic that hits the black-
list, and how to update the IP reputation database.
l "Mitigation" on Page 2026 describes how to configure the mitigation rules to identify the
potential risks and network attacks dynamically, and take action on the risk , and how to
update the mitigation rule database.
l "Critical Assets" on Page 2031 describes how to configure the critical assets.
l "Geolocation Information Database" on Page 2035 describes how to update the geolocation
information database.
l "Botnet Prevention" on Page 2040describes how to configure the botnet prevention function
based on security zones or policies.
l Encrypted Traffic Detection describes how to configure the encrypted traffic detection func-
tion to detect encrypted attack traffic.
l "Antispam" on Page 2056 describes how to filter the mails transmitted by SMTP and POP3
protocol through the cloud server, and discover the mail threats.
l "End Point Protection" on Page 2062: Obtain the endpoint data monitored by the endpoint
security control center by interacting with it, and then specify the corresponding processing
action according to the security status of endpoint, so as to control the endpoint network
behavior.
l "IoT" on Page 2070: Identify the network video monitoring devices, like IPC (IP Camera)
and NVR (Network Video Recorder) via the flowing traffic, then monitor the identified
devices and block illegal behaviors according to the configurations.
l ip ip-address – Specifies the IP address of the host that uses the device as a proxy.
l mac mac-address – Specifies the MAC address of the host that uses the device as a proxy.
l switch-interface interface-name – Specifies the interface that sends gratuitous ARP packets.
It can be either a VSwitch or BGroup interface.
l except-interface interface-name – Specifies the excluded port, i.e., the port that does not
send gratuitous ARP packets. Typically it is the port connected to the host that uses the
device as a proxy.
l raterate-value - Specifies a gratuitous ARP packet send rate. The value range is 1 to 10 pack-
ets/sec. The default value is 1.
Repeat the command to configure the gratuitous ARP packets for more hosts. You can configure
the Hillstone device to send gratuitous ARP packets for up to 16 hosts.
To disable the function, in the global configuration mode, use the following command:
n o gratuito us-arp -sen d ip ip-address switch -in terface interface-name
Host Blacklist
The host blacklist function of the Hillstone devices is designed to prevent users from accessing
the network during the specified period. To enable the function, you need to add the MAC or IP
address of the host to the blacklist, and then bind a schedule.
To add the host to the blacklist, in the global configuration mode, use the following command:
h o st-b lacklist {mac mac-address | ip fro m ip-address to ip-address vro uter vrouter-name }
[sch edule schedule-name ] [en ab le | disab le]
l mac-address - Specifies the MAC address of the host that will be added to the blacklist.
l ip-address - Specifies the IP address of the host to be added to the blacklist. Overlapped IP
address range is not allowed.
l schedule-name - Specifies the schedule that has been configured in the system. If this para-
meter is specified, the system will block the host from accessing the network during the spe-
cified period; if this parameter is not specified, the system will permanently block the host
from accessing the network. For more information about how to create a schedule, see Creat-
ing a Schedule.
l enable | disable – Enables or disables the host blacklist entry. By default, all the entries in
the host blacklist are enabled.
For example, to add the host with the MAC address of 001c.f096.f1ea to the blacklist and bind
the schedule named night to the blacklist so that the host cannot access the network during night,
use the following commands:
hostname(config-schedule)# exit
To modify the schedule for the specified host blacklist entry, in the global configuration mode,
use the following command:
h o st-b lacklist {mac mac-address | ip fro m ip-address to ip-address vro uter vrouter-name }
sch edule new-schedule-name
For example, to modify the schedule for the host blacklist entry with MAC address
001c.f096.f1ea, and replace its existing schedule named schedule1 with the new schedule named
schedule2, use the following commands:
hostname(config-schedule)# exit
hostname(config-schedule)# exit
The created host blacklist entries can be identified by the MAC addresses or IDs. To enable or dis-
able the specified host blacklist entry, in the global configuration mode, use the following com-
mand:
h o st-b lacklist mac { mac-address | id id-number }{en ab le | disab le}
The created host blacklist entries can be identified by the IP addresses or IDs. To enable or dis-
able the specified host blacklist entry, in the global configuration mode, use the following com-
mand:
For example, to disable the host blacklist entry identified by MAC address with the ID of 1, use
the following command:
After disabling the entry, the entry is not deleted, and still exists in the blacklist. To enable the
entry again, use the following command:
System supports logging when the traffic hit the blacklist. By default, system does not record
blacklist logs. To enable or disable blacklist logs, in the global configuration mode, use the fol-
lowing command:
blacklist log { enable | disable }
l enable - Enable the blacklist logs. System will record logs when the traffic hit the blacklist.
l disable - Disable the blacklist logs. System will not record logs of blacklist.
To view the host blacklist content, in any mode, use the following commands:
l Show all the host blacklist entries identified by MAC address: show host-blacklist mac
l Show all the host blacklist entries identified by IP address: show host-blacklist ip
To delete the host blacklist entry identified by MAC address, in global configuration mode, use
the following command:
n o h o st-b lacklist mac { mac-address | id id-number | all}
l id id-number – Deletes the host blacklist entry identified the specified ID number.
l all – Deletes all the host blacklist entries identified by all the MAC addresses.
To delete the host blacklist entry identified by IP address, in the global configuration mode, use
the following command:
n o h o st-b lacklist ip {fro m ip-address to ip-address vro uter vrouter-name | id id-number |
vro uter vr-name }
l from ip-address to ip-address vrouter vr-name – Deletes the host blacklist entry by identified
by the IP address range of the specified VRouter.
l vrouter vrouter-name – Deletes all the host blacklist entries identified by all the IP addresses
of the specified VRouter.
Notes: When you delete the VRouter by the command no ip vrouter vrouter-name ,
you'll also delete all the records related to this VRouter from the IP blacklist.
IP-MAC Binding
Hillstone devices support IP-MAC binding, MAC-port binding and IP-MAC-port binding to rein-
force network security control. The bindings obtained from ARP/MAC learning and ARP scan
are known as dynamic bindings, and those manually configured are known as static bindings.
Besides, the Hillstone devices are also designed with the ARP inspection function.
Static Binding
You can add static IP-MAC bindings and MAC-port bindings; you can also prevent the hosts that
are enabled with dynamic ARP learning from accessing the Internet, and only allow the hosts with
static IP-MAC bindings to access the Internet.
To add a static IP-MAC binding, in the global configuration mode, use the following command:
arp ip-address mac-address [in co mp atib le-auth -arp ] [vro uter vrouter-name ]
l vrouter vrouter-name – Adds the static IP-MAC binding to the specified VR. Parameter
vrouter-name is used to specify the name of the VR. If the parameter is not specified, the
static IP-MAC binding configured will belong to the default VR trust-vr.
To delete a static IP-MAC binding, in the global configuration mode, use the following command:
n o arp {all | ip-address } [vro uter vrouter-name ]
l ip-address – Deletes the static IP-MAC binding for the specified IP address in the system.
l vrouter vrouter-name – Deletes the static IP-MAC binding for the specified VR. Parameter
vrouter-nameis used to specify the name of the VR. If the parameter is not specified, the sys-
tem will delete all the static IP-MAC bindings configured in the default VR or for the spe-
cified IP address.
To add a static IP-port binding, in the global configuration mode, use the following command:
mac-address-static mac-address in terface interface-name
l Delete all the static MAC-port bindings for the specified interface:
no mac-address-static interface interface-name
Only Allowing Hosts with Static IP-MAC Binding Accessing the Internet
By default, the system allows hosts with dynamic ARP learning enabled to access the Internet. To
only allow the hosts with IP-MAC binding enabled to access the Internet, in the interface con-
figuration mode, use the following command:
arp -disab le-dyn amic-en try
To disable the function, in the interface configuration mode, use the following command:
n o arp -disab le-dyn amic-en try
l ARP learning
l MAC learning
ARP Learning
Devices can obtain IP-MAC bindings in an Intranet from ARP learning, and add them to the ARP
list. By default this function is enabled. Hillstone devices will always keep ARP learning on, and
add the learned IP-MAC bindings to the ARP list. If any IP or MAC address changes during the
learning process, Hillstone devices will add the updated IP-MAC binding to the ARP list. If this
function is disabled, only IP addresses in the ARP list can access Internet.
After the ARP learning function is enabled, when a user host that connects to the interface ini-
tiates ARP attacks, ARP entry resources may be exhausted, making other interfaces unable to per-
form ARP learning. To avoid this issue, the system allows you to enable ARP learning limit and
specify the maximum number of ARP entries that can be learned on the interface. After a limit is
specified, the interface can no longer perform ARP learning when the maximum number of ARP
entries is reached.
To enable the ARP learning limit function and specify the limit, in interface configuration mode,
use the following command:
arp-learning-limit number
l number - Specifies the maximum number of IP-MAC bindings that can be learned on the inter-
face. Valid values: 1 to capacity. The capacity varies based on device platforms.
In interface configuration mode, use the no arp-learning-limit command to disable the ARP learn-
ing limit function.
MAC Learning
Devices can obtain MAC-port bindings in an Intranet from MAC learning, and add them to the
MAC list. By default this function is enabled. Devices will always keep MAC learning on, and add
the learned MAC-port bindings to the MAC list. If any MAC address or port changes during the
learning process, devices will add the updated MAC-port binding to the MAC list.
To configure the MAC learning function, in the VSwitch or BGroup interface configuration
mode, use the following commands:
To view the IP-MAC binding information (static and dynamic) and the MAC-port binding inform-
ation (static and dynamic) in the system, use the following commands:
To clear the ARP binding information (dynamic), use the following command:
clear arp [in terface interface-name [ A.B.C.D ] | vro uter vrouter-name ]
l interface interface-name – Clears the ARP binding information of the specified interface.
Parameter interface-name is used to specify the interface name.
l A.B.C.D - Clears the ARP binding information of the specified IP address of the interface.
l vrouter vrouter-name – Clears the ARP binding information of the specified VRouter. Para-
meter vrouter-nameis used to specify the VRouter name. If this parameter is not specified, the
system will clear the ARP binding information of the default VRouter trust-vr.
You can force to bind the dynamic MAC-Port binding information learned from the MAC learning
function. To force to bind dynamic MAC-port binding, in any mode, use the following command:
exec mac-address dyn amic-to -static
The BGroup interface, VSwitch interface and VLAN interface of StoneOS all support DHCP
snooping. By default, this function is disabled. To enable DHCP snooping for the BGroup inter-
face or VSwitch interface, in the VSwitch interface or BGroup interface configuration mode, use
the following command:
dh cp -sn o o p in g
To disable the function, in the VSwitch interface or BGroup interface configuration mode, use
the following command:
n o dh cp -sn o o p in g
To enable DHCP snooping for the VLAN interface, in the global configuration mode, use the fol-
lowing command:
dh cp -sn o o p in g vlan vlan-list
To disable the function, in the global configuration mode, use the following command:
n o dh cp -sn o o p in g vlan vlan-list
You can configure the DHCP snooping function on the device, including the processing methods
of DHCP request and response packets, and the validity check. By default, all the DHCP request
and response packets are permitted, and the validity check is disabled. To enable the DHCP
snooping function, in the Ethernet interface (physical interface of the BGroup, VSwitch or
VLAN interface) configuration mode, use the following command:
dh cp -sn o o p in g {den y-request | den y-resp o n se | validity-ch eck}
l deny-request – Drops all the request packets sent by the client to the server.
l deny-response – Drops all the response packets returned by the server to the client.
l validity-check – Checks if the client's MAC address of the DHCP packet is the same with
the source MAC address of the Ethernet packet. If not, the packet will be dropped.
To disable the function, in the Ethernet interface configuration mode, use the following com-
mand:
n o dh cp -sn o o p in g {den y-request | den y-resp o n se | validity-ch eck}
To configure the DHCP packet rate limit, in the Ethernet interface (physical interface of the
BGroup, VSwitch or VLAN interface) configuration mode, use the following command:
dh cp -sn o o p in g rate-limit number
To cancel the DHCP packet rate limit, in the Ethernet interface configuration mode, use the fol-
lowing command:
n o dh cp -sn o o p in g rate-limit
To view the DHCP snooping configuration information, in any mode, use the following com-
mand:
sh o w dh cp -sn o o p in g co n figuratio n
With DHCP Snooping enabled, StoneOS will inspect all the DHCP packets passing through the
interface, and create and maintain a DHCP Snooping list that contains IP-MAC binding inform-
ation during the process of inspection. Besides, if the VSwitch, VLAN interface or any other
Layer 3 physical interface is configured as a DHCP server, StoneOS will create IP-MAC binding
information automatically and add it to the DHCP Snooping list even if DHCP Snooping is not
enabled. The bindings in the list contain information like legal users' MAC addresses, IPs, inter-
faces, ports, lease time, etc. To view the DHCP snooping list, in any mode, use the following
command:
sh o w dh cp -sn o o p in g b in din g
To clear all or the specified DHCP snooping list entry, in any mode, use the following command:
clear dh cp -sn o o p in g b in din g [in terface interface-name [ A.B.C.D ] | vlan vlan-id [ A.B.C.D ]]
l clear dhcp-snooping binding – Deletes all bindings in the DHCP snooping list.
l interface interface-name – Specifies the interface name to delete the bindings of the inter-
face.
l vlan vlan-id – Specifies the VLAN ID to delete the bindings of the VLAN.
l vlan vlan-id [A.B.C.D] –Specifies the IP address under a VLAN to remove the bindings of
the IP address.
ARP Inspection
Devices support ARP Inspection for interfaces. With this function enabled, System will inspect
all the ARP packets passing through the specified interfaces, and compare the IP addresses of the
ARP packets with the static IP-MAC bindings in the ARP list and IP-MAC bindings in the
DHCP Snooping list:
l If the IP address is in the ARP list and the MAC address is matched, the ARP packet will be
forwarded;
l If the IP address is in the ARP list but the MAC address is not matched, the ARP packet will
be dropped;
l If the IP address is not in the ARP list, continue to check if the IP address is in the DHCP
snooping list;
l If the IP address is in the DHCP Snooping list and the MAC address is also matched, the
ARP packet will be forwarded;
l If the IP address is in the DHCP snooping list but the MAC address is not matched, the ARP
packet will be dropped;
l If the IP address is not in the DHCP snooping, the ARP packet will be dropped or forwarded
according to the specific configuration.
The BGroup, VSwitch and VLAN interface of StoneOS all support ARP inspection. By default,
the function is disabled. To enable the function for BGroup or VSwitch interface, in the VSwitch
or BGroup interface configuration mode, use the following command:
arp -in sp ectio n {dro p | fo rward}
l drop – Drops the ARP packets whose IP address is not in the ARP table.
l forward – Forwards the ARP packets whose IP address is not in the ARP table.
To disable the function, in the VSwitch or BGroup interface configuration mode, use the fol-
lowing command:
n o arp -in sp ectio n
To enable ARP Inspection for the VLAN interface, in the global configuration mode, use the fol-
lowing command:
arp -in sp ectio n vlan vlan-list {dro p | fo rward}
l vlan-list – Specifies the VLAN ID that will be enabled with ARP Inspection. The value
range is 1 to 4094, such as 1, 2-4, or 1, 2, 5. StoneOS reserves 32 VLAN IDs (from
VLAN224 to VLAN255) for BGroup.
To disable the function, in the global configuration mode, use the following command:
n o arp -in sp ectio n vlan vlan-list
You can configure a device interface (physical interface of the BGroup, VSwitch or VLAN inter-
face) as the trusted interface. The packets passing through the trusted interface will not be
checked by ARP inspection. By default, none of the device interfaces is the trusted interface. To
configure a device interface as the trust interface, in the interface configuration mode, use the fol-
lowing command:
arp -in sp ectio n trust
To configure the ARP rate, in the interface configuration mode, use the following command:
arp -in sp ectio n rate-limit number
l number –Specifies the number of ARP packets received per second on the interface. If the
number exceeds the specified value, system will drop the excessive ARP packets. The value
range is 0 to 10000. The default value is 0, i.e., no rate limit.
To cancel the ARP rate, in the interface configuration mode, use the following command:
n o arp -in sp ectio n rate-limit
Notes: You can only configure ARP rate on physical interfaces that are bound to
Layer 2 zones.
ARP Defense
Powered by the ARP learning, MAC learning, authenticated ARP and ARP inspection functions,
system is capable of providing defense against ARP spoofing attacks. Besides, system can also
gather statistics on the ARP spoofing attacks. To view the ARP spoofing attacks statistics, in any
mode, use the following command:
sh o w arp -sp o o fin g-statistics [ number ]
To clear the ARP spoofing attacks statistics, in the execution mode, use the following command:
clear arp -sp o o fin g-statistics
IP Address Spoofing
ARP Spoofing
LAN transmission network traffic based on MAC addresses. ARP spoofing attack is by filling in
the wrong MAC address and IP address , to make a wrong corresponding relationship of the target
host's ARP cache table. Follow-up will lead to the wrong destination host IP packets , and packet
network unreasonable target resources are stolen.
Land Attack
In a land attack, the attacker carefully crafts a packet and sets its source and destination address to
the address of the server that will be attacked. In such a condition the victim server will send a
message to its own address, and this address will also return a response and establish a Null
Smurf Attack
Smurf attacks consist of two types: basic attack and advanced attack. A basic Smurf attack is used
to attack a network by setting the destination address of ICMP ECHO packets to the broadcast
address of the attacked network. In such a condition all the hosts within the network will send
their own response to the ICMP request, leading to network congestion. An advanced Smurf
attack is mainly used to attack a target host by setting the source address of ICMP ECHO packets
to the address of the attacked host, eventually leading to host crash. Theoretically, the more hosts
in a network, the better the attacking effect will be.
Fraggle Attack
A fraggle attack is quite similar to a Smurf attack. The only difference is the attacking vector of
fraggle is UDP packets.
Teardrop Attack
Teardrop attack is a denial of service attack. Is based on the method of attack morbid fragmented
UDP packets, which works by sending multiple fragmented IP packets to the attacker is (IP frag-
mented packets include the fragmented packets belong to which the packet and the packet the loc-
ation and other information ) , some operating systems contain overlapping offset when received
fragmented packets will forge a system crash , reboot and so on.
WinNuke Attack
A WinNuke attack sends OOB (out-of-band) packets to the NetBIOS port (139) of a Windows
system, leading to NetBIOS fragment overlap and host crash. Another attacking vector is ICMP
fragment. Generally an ICMP packet will not be fragmented; therefore many systems cannot prop-
erly process ICMP fragments. If your system receives any ICMP fragment, it's almost certain that
the system is under attack.
Due to resource limitations, a server will only permit a certain number of TCP connections. SYN
Flood just makes use of this weakness. During the attack an attacker will craft a SYN packet, set
its source address to a forged or non-existing address, and initiate a connection to a server. Typ-
ically the server should reply the SYN packet with SYN-ACK, while for such a carefully crafted
SYN packet, the client will not send any ACK for the SYN-ACK packet, leading to a half-open
connection. The attacker can send large amount of such packets to the attacked host and establish
equally large number of half-open connections until timeout. As a result, resources will be
exhausted and normal accesses will be blocked. In the environment of unlimited connections,
SYN Flood will exhaust all the available memory and other resources of the system.
An ICMP Flood/UDP Flood attack sends huge amount of ICMP messages (such as ping)/UDP
packets to a target within a short period and requests for response. Due to the heavy load, the
attacked target cannot complete its normal transmission task.
An ICMP redirect message is an out-of-band message that is designed to inform a host of a more
optimal route through a network, but possibly used maliciously for attacks that redirect traffic to a
specific system. In this type of an attack, the hacker, posing as a router, sends an ICMP redirect
message to a host, which indicates that all future traffic must be directed to a specific system as
the more optimal route for the destination.
This kind of attack makes a reconnaissance of the destination address and port via scanners, and
determines the existence from the response. By IP address sweep or port scan, an attacker can
determine which systems are alive and connected to the target network, and which ports are used
by the hosts to provide services.
Ping of Death is designed to attack systems by some over-sized ICMP packets. The field length
of an IP packet is 16 bits, which means the max length of an IP packet is 65535 bytes. For an
ICMP response packet, if the data length is larger than 65507 bytes, the total length of ICMP
data, IP header (20 bytes) and ICMP header (8 bytes) will be larger than 65535 bytes. Some
routers or systems cannot properly process such a packet, and might result in crash, system down
or reboot.
IP Fragment Attack
An attacker sends the victim an IP datagram with an offset smaller than 5 but greater than 0,
which causes the victim to malfunction or crash.
IP Option Attack
An attacker sends IP datagrams in which the IP options are abnormal. This attack intends to
probe the network topology. The target system will break down if it is incapable of processing
error packets.
An attacker sends large ICMP packets to crash the victim. Large ICMP packets can cause memory
allocation error and crash the protocol stack.
An attacker sends packets with defective TCP flags to probe the operating system of the target
host. Different operating systems process unconventional TCP flags differently. The target system
will break down if it processes this type of packets incorrectly.
The DNS server processes and replies all DNS queries that it receives. A DNS flood attacker
sends a large number of forged DNS queries. This attack consumes the bandwidth and resources
of the DNS server, which prevents the server from processing and replying legal DNS queries.
When the DNS server receives the reply message, it will process the message regardless whether
it is valid. DNS reply flood is that the attacker sends a large number of DNS reply message to the
DNS cache server, causing the cache server to run out of resources by processing these reply mes-
sages.
When a client establishes TCP connection with a malicious TCP server, the TCP server responses
with a fake SYN package and uses this fake one to initialize the TCP connection with the client.
After establishing the TCP connection, the malicious TCP server switches its role and becomes
the client side of the TCP connection. Thus, the malicious traffic might enter into the intranet.
SIP Flood
SIP (Session Initiation Protocol) is an application-layer signaling control protocol. It is used to ini-
tiate, modify and terminate interactive multimedia sessions, such as multimedia meetings and
Internet telephone. The attacker of the SIP flood attack sends a large number of INVITE mes-
sages to the target SIP server in a short time. Therefore, the target SIP server exhausts its
resources and fails to respond to the call requests from valid users.
To disable all the attack defense functions in the security zone, in the security zone configuration
mode, use the command no ad all.
You can configure the parameters of the above attack defense functions as needed. The attack
defense configurations of Hillstone devices include:
l Configuring SYN-Proxy
l Configuring AD Whitelist
l Viewing the attack defense configurations of the security zone and statistics
You can individually enable or disable IP address sweep attack defense for each security zone and
configure the time threshold and action for IP address sweep attacks. To configure the IP sweep
scan attack defense for the specified security zone, in the security zone configuration mode, use
the following command:
ad ip-sweep [ threshold value | action { alarm | drop } | tcp ]
l ad ip-sweep – Enables IP address sweep attack defense for the security zone. To disable the
function, in the security zone configuration mode, use the command no ad ip-sweep.
l threshold value – Specifies the time threshold for IP address sweep. If over 10 ICMP pack-
ets from one single source IP address are sent to different hosts within the period specified by
l action {alarm | drop} – Specifies the action for IP address sweep attacks. alarm– Gives an
alarm but still allows the packets to pass through; drop – Only permits 10 IMCP/TCP pack-
ets originating from one single source IP address while destined to different hosts to pass
through during the specified period (threshold value), and also give an alarm. All the excessive
packets of the same type will be dropped during this period. The default action is drop. To
restore to the default action, use the command no ad ip-sweep action.
l tcp- Specifies the device to detect TCP packets. If over 10 TCP packets from one single
source IP address are sent to different hosts within the period specified by the threshold (
thresholdvalue), system will identify them as an IP address sweep attack. Disable the detec-
tion function for TCP packets, use the command no ad ip-sweep tcp.
You can individually enable or disable ICMP redirect attack defense for each security zone and
configure the action for ICMP redirect attacks. To configure the ICMP redirect attack defense for
a security zone, in security zone configuration mode, use the following command:
ad icmp-redirect [action {alarm | drop}]
l ad icmp-redirect– Enables ICMP redirect attack defense for the security zone. To disable the
function, in security zone configuration mode, use the command no ad icmp-redirect. By
default, the function is disabled.
l action {alarm | drop}– Specifies the action for ICMP redirect attacks. alarm– Gives an
alarm but still allows the packets to pass through; drop – Gives an alarm and drops the pack-
ets. The default action is drop. To restore to the default action, use the command no ad icmp-
redirect action.
You can individually enable or disable IP protocol scan attack defense for each security zone and
configure the time threshold and action for IP protocol scan attacks. To configure the IP protocol
scan attack defense for the specified security zone, in the security zone configuration mode, use
the following command:
ad ip-proto-scan [thresholdvalue | action {alarm | drop}]
l ad ip-proto-scan – Enable the IP protocol scan attack defense. To disable this function, use
the command no ad ip-proto-scan.
l thresholdvalue – Specifies the time threshold for IP Protocol scan. If packets of over 10 dif-
ferent IP protocols from the same source IP address are sent to the same host within the spe-
cified time threshold, StoneOS will identify them as an IP protocol scan attack. The value
range is 1 to 1,800,000 milliseconds. The default value is 10. To restore to the default
threshold, use the command no ad ip-proto-scan threshold.
l action {alarm | drop} – Specifies an action for IP protocol scan attacks. alarm – Gives an
alarm but still allows the packets to pass through;drop – During the specified period
(thresholdvalue), StoneOS only permits packets of 10 different IP protocols (from the same
source IP address) destined to the same host to pass through and drop other IP protocol pack-
ets, and also generates an alarm. The default action is Drop. To restore to the default action,
use the command no ad ip-sweep action.
You can individually enable or disable TCP port scan attack defense for each security zone and
configure the time threshold and action for the TCP port scan attacks. To configure the TCP port
scan attack defense for the specified security zone, in the security zone configuration mode, use
the following command:
ad p o rt-scan [th resh o ld value | actio n {alarm | dro p }]
l threshold value – Specifies the time threshold for TCP port scan. If over 10 TCP SYN pack-
ets are sent to different ports within the period specified by the threshold, system will identify
them as a port scan attack. The value range is 1 to 1,800,000 milliseconds. The default value
is 1. To restore to the default value, in the security zone configuration mode, use the com-
mand no ad port-scan threshold.
l action {alarm | drop} – Specifies the action for TCP port scan attacks. alarm– Gives an
alarm but still allows the packets to pass through; drop– Only permits 10 TCP SYN packets
destined to different ports to pass through and drops the other packets of the same type dur-
ing the specified period (threshold value), and also gives an alarm. The default action is Drop.
To restore to the default action, use the command no ad port-scan action.
You can individually enable or disable UDP port scan attack defense for each security zone and
configure the time threshold and action for UDP port scan attacks. To configure the UDP port
scan attack defense for the specified security zone, in the security zone configuration mode, use
the following command:
ad udp-port-scan [ threshold value | action { alarm | drop }]
l ad udp-port-scan – Enable the UDP port scan attack defense. To disable this function, use
the command no ad udp-port-scan.
l thresholdvalue – Specifies an action for UDP port scan attacks. If over 10 UDP packets
from the same source IP address are sent to different ports within the specified time
threshold, StoneOS will identify them as a UDP port scan attack. The value range is 1 to
1,800,000 milliseconds. The default value is 5. To restore to the default threshold, use the
command no ad udp-port-scan threshold.
System can defend against Layer 3 IP address spoofing attacks. After enabling the Layer 3 IP
address spoofing attack defense function, when a packet is passing through the device, system
will trace out the source IP address, and take different actions based on the traceout results,
including:
l If the security zone of the packet destined to the device (with this IP as its source address) is
the same as the security zone of the packet originating from the device (with this IP as the des-
tination address), then system will permit the packet to pass through. You can identify secur-
ity zone of the packet originating from the device based on the traceout results.
l Vice versa, system will identify the packet as an abnormal packet, and give an alarm and drop
the packet.
To enable Layer 3 IP address spoofing attack defense for a security zone, in the Layer 3 security
zone configuration mode, use the following command:
ad ip-spoofing
To disable Layer 3 IP address spoofing attack defense for a security zone, in the Layer 3 security
zone configuration mode, use the command no ad ip-spoofing.
You can enable or disable SYN flood attack defense for each security zone individually, and con-
figure the packet number threshold and actions for the SYN flood attacks. To configure SYN
l ad syn-flood – Enables SYN flood attack defense for the security zone. To disable the func-
tion, in the security zone configuration mode, use the command no ad syn-flood.
l source-threshold number – Specifies a threshold for outbound SYN packets (ignoring the
destination IP address and port number). If the number of outbound SYN packets originating
from one single source IP address per second exceeds the threshold, system will identify the
traffic as a SYN flood. The value range is 0 to 50000. The default value is 1500. The value of
0 indicates the source threshold is void. To restore to the default value, use the command no
ad syn-flood source-threshold.
Configuring SYN-Proxy
SYN-Proxy is designed to defend against SYN flood attacks in combination with ad syn-flood.
When both ad syn-flood and SYN proxy are enabled, SYN proxy will act on the packets that have
already passed the detections of ad syn-flood.
The Hillstone devices support SYN-Cookie, a stateless SYN-Proxy mechanism.
To configure the SYN-Proxy and the SYN-Cookie functions for the specified security zone, in
the security zone configuration mode, use the following command:
ad syn -p ro xy [min -p ro xy-rate number | max-p ro xy-rate number | p ro xy-timeo ut number |
cookie]
l ad syn-proxy – Enables SYN-Proxy for a security zone to defend against SYN Flood attacks.
To disable the function, in the security zone configuration mode, use the command no ad
syn-proxy.
l min-proxy-rate number – Specifies the minimum number for SYN packets that will trigger
SYN proxy or SYN-Cookie (if enabled by cookie). If the number of inbound SYN packets
destined to one single port of one single destination IP address per second exceeds the spe-
cified value, system will trigger SYN proxy or SYN-Cookie. The value range is 0 to 50000.
The default value is 1000. To restore to the default value, use the commandno ad syn-proxy
min-proxy-rate.
l proxy-timeout number – Specifies the timeout for half-open connections. The half-open con-
nections will be dropped after timeout. The value range is 1 to 180 seconds. The default value
is 30. To restore to the default value, use the command no ad syn-proxy proxy-timeout.
You can enable or disable SIP flood attack defense for each security zone individually, and con-
figure the packet number threshold and actions for the SIP flood attacks. To configure SIP Flood
attack defense of the specified security zone, in the security zone configuration mode, use the fol-
lowing command:
ad sip -flo o d [destin atio n -th resh o ld number | actio n {alarm | dro p }]
l ad sip-flood - Enables SIP Flood attack defense for the security zone. To disable the function,
in the security zone configuration mode, use the command no ad sip-flood.
l threshold number - Specifies the threshold of the number of the SIP INVITE messages with
the same destination IP to be received by the device. That is to say, the device determines
l action {alarm | drop} - Specifies the action of the system when it is attacked by the SIP
flood attack. When the system detects the attack, it inspects whether there is a real SIP client
behind the subsequent source IP address. If yes, the system bypasses the subsequent SIP
INVITE messages sent by this source IP. Otherwise, the system will perform the configured
action for the SIP INVITE messages sent by this source IP in three seconds. There are two
system actions: drop - Means dropping the INVITE messages. It is the default action. alarm -
Means that the system sends an alarm but still bypasses the INVITE messages. To restore to
the default action, use the command no ad sip-flood action.
You can enable or disable ICMP flood attack defense for each security zone individually, and con-
figure the packet number threshold and actions for the ICMP flood attacks. To configure ICMP
Flood attack defense of the specified security zone, in the security zone configuration mode, use
the following command:
ad icmp -flo o d [th resh o ld number | actio n {alarm | dro p }]
l ad icmp-flood – Enables ICMP Flood attack defense for the security zone. To disable the
function, in the security zone configuration mode, use the command no ad icmp-flood.
l threshold number – Specifies a threshold for inbound ICMP packets. If the number of
inbound ICMP packets destined to one single IP address per second exceeds the threshold,
system will identify the traffic as an ICMP flood and take the specified action. The value range
is 1 to 50000. The default value is 1500. To restore to the default value, use the command no
ad icmp-flood threshold.
You can enable or disable UDP flood attack defense for each security zone individually, and con-
figure the packet number threshold and actions for the UDP Flood attacks. To configure UDP
Flood attack defense of the specified security zone, in the security zone configuration mode, use
the following command:
ad udp -flo o d [sessio n -state-ch eck] [so urce-th resh o ld number | destin atio n -th resh o ld number
| actio n {alarm | dro p }]
l ad udp-flood – nables UDP Flood attack defense for the security zone. To disable the func-
tion, in the security zone configuration mode, use the command no ad udp-flood.
l session-state-check – Enables the function of session state check. After the function is
enabled, system will not check whether there is UDP Flood attack in the backward traffic of
UDP packet of the identified sessions. To disable this function, use the command no ad udp-
flood session-state-check.
l source-threshold number – Specifies a threshold for outbound UDP packets. If the number
of outbound UDP packets originating from one single source IP address per second exceeds
the threshold, system will identify the traffic as a UDP flood and take the specified action.
The value range is 0 to 300000. The default value is 1500. To restore to the default value, use
the command no ad udp-flood source-threshold.
l action {alarm | drop} – Specifies an action for UDP flood attacks.alarm– Gives an alarm
but still allows the packets to pass through; drop– Only permits the specified number
(source-threshold number | destination-threshold number) of UDP packets to pass through
during the current and the next second, and also gives an alarm. All the excessive packets of
the same type will be dropped during this period. The default action is drop. To restore to the
default action, use the command no ad udp-flood action.
For flood attacks, the system supports the Flood Protection Threshold Learning function. Flood
protection threshold learning collects statistics on the maximum rate of traffic that passes through
a normal network environment. Then, this function provides a proper reference value for the
attack detection threshold. To configure this function, you need to configure flood protection
threshold learning parameters and enable flood protection threshold learning.
To configure flood protection threshold learning parameters, use the following command in secur-
ity zone mode:
ad threshold-learning {duration {day | hour | minute} number | learn-mode {one-time | peri-
odic {day | hour | minute} number} apply-mode {manual | auto} coefficient {default | loose |
strict | userdefinenumber}}
l duration {day | hour | minute} number– Specifies the duration of flood protection
threshold learning. The unit can be day, hour, or minute. To restore to the default learning dur-
ation, use the no ad threshold-learning duration command.
l hour– Sets the time unit to hour. Valid values: 1 to 8760 hours. Default value: 1 hour.
l minute– Sets the time unit to minute. Valid values: 10 to 525600 minutes. Default
value: 1440 minutes.
l learn-mode {one-time | periodic {day | hour | minute} number– Specifies the type of
flood protection threshold learning. The type can be one-time or periodic. By default, one-
time is used. To restore to the default learning type, use the no ad threshold-learning learn-
mode command.
l one-time– Runs the learning task only once, which will be automatically stopped after
completion.
l periodic {day | hour | minute} number– Runs the learning task periodically based on
the interval. You need to manually stop the learning task. If you set the learning type to
periodic, you also need to specify the periodic interval, which indicates the interval
between the last time when the learning task ends and the next time when the learning
task starts. The unit can be day, hour, or minute.
l day– If the time unit is set to days, valid values of the interval are 1 to 365 days
and the default value is 7 days.
l hour– If the time unit is set to hours, valid values of the interval are 1 to 8760
hours and the default value is 1 hour.
l minute– If the time unit is set to minute, valid values of the interval are 10 to
525600 minutes and the default value is 1440 minutes.
l apply-mode {manual | auto}– Specifies the mode of applying the flood protection threshold
learning result. The mode can be manual or auto. By default, manual is used. To restore to the
default mode, use the no ad threshold-learning apply-mode command.
l auto– The threshold configuration of all enabled flood attack defense items will be
automatically configured with the threshold learning result and these threshold con-
figurations will be automatically applied.
To start/stop flood protection threshold learning and apply the flood protection threshold learn-
ing result, use the following command in global mode:
exec ad-threshold-learning { apply { syn-flood | dns-query-flood | dns-query-recur-
sion-flood | dns-reply-flood | udp-flood | icmp-flood | sip-flood } | start | stop }
zone zone-name
l {apply {SYN flood | DNS Query flood | DNS Recursisve Query flood | DNS Reply flood |
UDP flood | ICMP flood | SIP flood} – Applies the flood protection threshold learning res-
ult to a specified flood attack defense item, including SYN flood attack item, DNS Query
flood attack item, DNS Recursive Query flood attack item, DNS Reply flood attack item,
UDP flood attack item, ICMP flood attack item, and SIP flood attack item.
l zone zone-name – Specifies the name of zone that has Flood Attack Defense enabled.
You can enable or disable large ICMP packet attack defense for each security zone individually,
and configure the packet size threshold and actions for large ICMP packet attacks. To configure
large ICMP packet attack defense for the specified security zone, in the security zone con-
figuration mode, use the following command:
ad h uge-icmp -p ak [th resh o ld number | actio n {alarm | dro p }]
l ad huge-icmp-pak – Enables large ICMP packet attack defense for the security zone. To dis-
able the function, in the security zone configuration mode, use the command no ad huge-
icmp-pak.
l threshold number – Specifies the size threshold for ICMP packets. If the size of any
inbound ICMP packet is larger than the threshold, system will identify it as a large ICMP
packet and take the specified action. The value range is 1 to 50000 bytes. The default value is
1024. To restore to the default value, use the command no ad huge-icmp-pak threshold.
l action {alarm | drop} – Specifies the action for large ICMP packet attacks. alarm– Gives
an alarm but still allows the packet to pass through; drop– Gives an alarm and drop the
packet. The default action is drop. To restore to the default action, use the command no ad
udp-flood action.
With WinNuke attack defense enabled, system will drop the packets and give an alarm if any
WinNuke attack has been detected. To enable WinNuke attack defense for the specified security
zone, in the security zone configuration mode, use the following command:
ad win n uke
With Ping of Death attack defense enabled, system will drop the packets and give an alarm if any
Ping of Death attack has been detected. To enable Ping of Death attack defense for the specified
security zone, in the security zone configuration mode, use the following command:
ad p in g-o f-death
To disable the function, in the security zone configuration mode, use the command no ad ping-
of-death.
With Teardrop attack defense enabled, system will drop the packets and give an alarm if any
Teardrop attack has been detected. To enable Teardrop attack defense for the specified security
zone, in the security zone configuration mode, use the following command:
ad tear-dro p
To disable the function, in the security zone configuration mode, use the command no ad tear-
drop.
With IP Option attack defense enabled, system will drop the packets and give an alarm if any IP
option attack has been detected. You can change the action for the attacks as needed. system will
defend against the following types of IP options: Security, Loose Source Route, Record Route,
Stream ID, Strict Source Route and Timestamp. To enable IP Option attack defense for the spe-
cified security zone, in the security zone configuration mode, use the following command:
ad ip -o p tio n [actio n {alarm | dro p }]
l ad ip-option – Enables IP Option attack defense for the specified security zone. To disable
the function, in the security zone configuration mode, use the command no ad ip-option.
With TCP option anomaly attack defense enabled, system will drop the packets and give an alarm
if any TCP option anomaly attack has been detected. You can change the action for the attacks as
needed. system identifies the following conditions as TCP option anomaly attack:
l TCP packets are set with both FIN and RST flag
l TCP packets are set with both SYN and URG flag
l TCP packets are set with both SYN and RST flag
l TCP packets are set with both SYN and FIN flag
To enable TCP option anomaly attack defense for the specified security zone, in the security zone
configuration mode, use the following command:
ad tcp -an o maly [actio n {alarm | dro p }]
l ad tcp-anomaly – Enables TCP option anomaly attack defense for the security zone. To dis-
able the function, in the security zone configuration mode, use the command no ad tcp-anom-
aly.
l action {alarm | drop} – Specifies the action for TCP option anomaly attacks. alarm– Gives
an alarm but still allows the packets to pass through; drop– Gives an alarm and drops the
With Land attack defense enabled, system will drop the packets and give an alarm if any Land
attack has been detected. You can change the action for the attacks as needed. To enable Land
attack defense for the specified security zone, in the security zone configuration mode, use the fol-
lowing command:
ad lan d-attack [actio n {alarm | dro p }]
l ad land-attack – Enables Land attack defense for the security zone. To disable the function,
in the security zone configuration mode, use the command no ad land-attack.
l action {alarm | drop} – Specifies the action for the Land attacks.alarm– Gives an alarm but
still allows the packets to pass through; drop– Gives an alarm and drops the packets. The
default action is drop. To restore to the default action, use the command no ad land-attack
action.
When being transmitted among different networks, sometimes the packets need to be fragmented
according to the MTU value. Attackers can modify the IP fragments and launch attacks by exploit-
ing the vulnerabilities occurring during reassembling. The modified IP fragments destined to the
victims might lead to improper reassembling, or even complete system crash.
system will drop the packets and give an alarm if any IP fragment attack has been detected. You
can change the action for the attacks as needed. To enable IP fragment attack defense for the spe-
cified security zone, in the security zone configuration mode, use the following command:
ad ip -fragmen t [actio n {alarm | dro p }]
l action {alarm | drop} – Specifies the action for IP fragment attacks. alarm– Gives an alarm
but still allows the packets to pass through; drop– Gives an alarm and drops the packets. The
default action is drop. To restore to the default action, use the command no ad ip-fragment
action.
With Smurf and Fraggle attack defense enabled, system will drop the packets and give an alarm if
any Smurf or Fraggle attack has been detected. You can change the action for the attacks as
needed. To enable Smurf and Fraggle attack defense for the specified security zone, in the secur-
ity zone configuration mode, use the following command:
ad ip -directed-b ro adcast [actio n {alarm | dro p }]
l ad ip-directed-broadcast – Enables Smurf and Fraggle attack defense for the security zone.
To disable the function, in the security zone configuration mode, use the command no ad ip-
directed-broadcast.
l action {alarm | drop} – Specifies the action for the Smurf and Fraggle attacks. alarm–
Gives an alarm but still allows the packets to pass through; drop– Gives an alarm and drops
all the packets. The default action is drop. To restore to the default action, use the command
no ad ip-directed-broadcast action.
ARP spoofing attack defense can protect the Intranet against ARP spoofing attacks. To configure
ARP spoofing attack defense of the specified security zone, in the security zone configuration
mode, use the following command:
ad arp -sp o o fin g {reverse-query | ip -n umb er-p er-mac number [actio n [dro p | alarm]] | gra-
tuito us-arp -sen d-rate number }
l ip-number-per-mac number – Specifies whether system will check the IP number per MAC
in ARP table. If the parameter is set to 0 (the default value), system will not check the IP
number; if set to a value other than 0, system will check the IP number, and if the IP number
per MAC is larger than the parameter value, system will take the action specified by action
[drop | alarm]. The available actions includedrop(give an alarm and drop the ARP packets)
andalarm(give an alarm but still allow the packets to pass through). The value range is 0 to
1024. To restore to the default value, use the command no ad arp-spoofing ip-number-per-
mac.
DNS (Domain Name System) is used to convert a domain name to an IP address, and resolve an
IP address to a domain name. DNS is an application layer protocol, so it can be based on TCP or
UDP. DNS Query Flood attacks are based on UDP.
The DNS Query Flood attacks are launched by sending a large number of domain name resolution
requests to the target DNS server. Typically the requested domain name is randomly generated, or
does not exist at all. When the DNS server being attacked receives the resolution requests, it will
first look for the corresponding cache. If the cache is not found and the domain name can not be
resolved directly by the server, the DNS server will send a recursive query request to its upper
l ad dns-query-flood – Enables DNS Query Flood attack defense for the security zone. To dis-
able the function, in the security zone configuration mode, use the command no ad dns-
query-flood.
l recursion – Only limits recursive DNS query packets. If this parameter is not specified, sys-
tem will limit all the DNS query packets.
l source-threshold number – Specifies a threshold for outbound DNS query packets or recurs-
ive DNS query packets. If the number of outbound DNS query packets originating from one
single IP address per second exceeds the threshold, system will identify the traffic as a DNS
query flood and take the specified action. The value range is 0 to 300000. The default value is
1500. To restore to the default value, use the command no ad dns-query-flood source-
threshold.
Notes: DNS Query Flood attack defense is only applicable to UDP DNS query
packets.
Hillstone devices support DNS Reply Flood attacks defense. You can enable or disable DNS
Reply Flood attack defense for each security zone individually, and configure the packet number
threshold and the actions for DNS Reply Flood attacks. To enable DNS Reply Flood defense, in
the security zone configuration mode, use the following command:
ad dn s-rep ly-flo o d [so urce-th resh o ld number ] [destin atio n -th resh o ld number | actio n {alarm
| dro p }]
l ad dns-reply-flood – Enables DNS Reply Flood attack defense for the security zone. To dis-
able the function, in the security zone configuration mode, use the command no ad dns-reply-
flood.
l action {alarm | drop} – Specifies the action for DNS Reply Flood attacks. alarm–Gives an
alarm but still allows the packets to pass through; drop– Only permits the specified number
(thresholdnumber) of recursive DNS reply packets to pass through during the current and
next second, and also give an alarm. All the excessive packets of the same type will be
dropped during this period. The default action is drop. To restore to the default action, use
the command no ad dns-flood action.
Notes: DNS Reply Flood attack defense is only applicable to UDP DNS reply pack-
ets.
After enabling the TCP split handshake attack defense and this attack is detected, the device will
drop the packet and give an alarm by default. You can change the defaul action. To configure the
TCP split handshake attack defense, use the following command in the security zone con-
figuration mode:
ad tcp -sp lit-h an dsh ake [actio n {alarm | dro p }]
l ad tcp-split-handshake – Enable the TCP split handshake attack defense for the security
zone. To disable it, use the command no ad tcp-split-handshake.
l action {alarm | drop} – Specifies the action for the TCP split handshake attacks. alarm-
Gives an alarm but still allows the packets to pass through; drop- Gives an alarm and drops all
With attack defense enabled, the system will check all the traffic in the zone. In practical scenario,
possibly you do not want to check the traffic originating from certain hosts for test purpose. To
solve this problem, you can add the addresses (source address or destination address ) to an attack
defense whitelist, so that the addresses can be exempted from the attack defense check.
To configure an attack defense whitelist, in the zone configuration mode, use the following com-
mand:
ad wh itelist [id id ] { source-ip | destination-ip } { IPv4-address/M | IPv6-address/prefix |
address-entry }
l id – Specifies an ID for the whitelist rule. The value differs according to different models. If
not specified, the system will assign an ID automatically for the rule.
l source-ip | destination-ip- Specifies the address type in the whitelist: source address(source-
ip) or destination address (destination-ip).
l IPv4-address/M– Specifies the IPv4 address and network that will be added to the whitelist
rule.
l IPv6-address/prefix - Specifies the IPv6 address and prefix length(value: 120-128) that will
be added to the whitelist rule.
l address-entry– Specifies the address entry that will be added to the whitelist rule.
To delete the specified whitelist rule, in the zone configuration mode, use the following com-
mand:
n o ad wh itelist [id id ] { source-ip | destination-ip } { IPv4-address/M | IPv6-address/prefix
| address-entry }
To view the attack defense configuration and statistics of the specified security zone, in any
mode, use the following command:
sh o w ad zo n e zone-name {statistics | co n figuratio n | wh itelist | threshold-clearning { con-
figuration | status | result }}
l statistics – Shows the attack defense statistics of the specified security zone.
l configuration – Shows the attack defense configurations of the specified security zone.
l whitelist – Shows the attack defense whitelist configurations of the specified security zone.
Requirement
Device's ethernet 0/0 is bound to the trust zone, ethernet 0/2 is bound to the untrust zone, and
ethernet 0/1 is bound to the DMZ zone. The goal is to protect the server in the DMZ zone
against Land attacks. The network topology is shown below.
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config)#
hostname(config-if-eth0/2)# zo n e un trust
hostname(config-if-eth0/2)# exit
hostname(config)#
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)#
hostname(config)# zo n e un trust
hostname(config-if)# exit
hostname(config)#
Step 6: Test the Land attack defense configured for the server. Craft a packet with identical
source and destination IP address, and send it to 10.110.1.1. The Hillstone device will detect a
Land attack, and then give an alarm and drop the packet.
Device's ethernet 0/0 is bound to the trust zone, ethernet 0/2 is bound to the untrust zone, and
ethernet 0/1 is bound to the DMZ zone. The goal is to protect the server in the DMZ zone
against SYN Flood attacks.
Configuration Steps
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config)#
hostname(config-if-eth0/2)# zo n e un trust
hostname(config-if-eth0/2)# exit
hostname(config)#
hostname(config-if-eth0/1)# zo n e dmz
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# exit
hostname(config)#
Step 5: Enable SYN Flood attack defense for the untrust zone:
hostname(config)# zo n e un trust
hostname(config-if)# exit
hostname(config)#
Step 6: Test the SYN Flood attack defense configured for the server. Send over 1500 packets per
second to 10.110.1.1. The Hillstone device will detect a SYN Flood attack, and then give an
alarm and drop the packets.
Requirement
Device's ethernet 0/0 is bound to the trust zone, ethernet 0/2 is bound to the untrust zone, and
ethernet 0/1 is bound to the DMZ zone. The goal is to protect the server in the DMZ zone
against IP address sweep attacks.
Configuration Steps
hostname(config-if-eth0/0)# zo n e trust
hostname(config-if-eth0/0)# exit
hostname(config)#
hostname(config-if-eth0/2)# zo n e un trust
hostname(config-if-eth0/2)# exit
hostname(config)#
hostname(config-if-eth0/1)# zo n e dmz
hostname(config-if-eth0/1)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config)#
Step 5: Enable IP address sweep attack defense for the untrust zone:
hostname(config)# zo n e un trust
hostname(config-zone)# ad ip -sweep
hostname(config-if)# exit
hostname(config)#
Step 6: Test the IP address sweep attack defense configured for the server. Craft packets via
smartbits and launch an IP address sweep attack against ethernet0/2. Send over 10 packets per
millisecond to 202.1.0.1. The device will detect an IP address sweep attack, and then give an
alarm and drop the packets.
Configuring Anti-Virus
To enable the anti-virus function on system, take the following steps:
1. Define an AV profile, and specify the file types, protocol types, the actions for the viruses,
and the e-mail label function in the profile.
2. Bind the AV profile to an appropriate policy rule or security zone. To perform the Anti-
Virus function on the HTTPS traffic, see Binding an AV Profile to a Policy Rule.
The system also supports binding the anti-virus profile to a ZTNA policy to perform virus detec-
tion and processing on the traffic matching the ZTNA policy. For configuration information, refer
to Configuring ZTNA Policy.
After installing the anti-virus license and rebooting the device, the anti-virus function will be
enabled on the system. To view the status of anti-virus, use the command show version. To
enable or disable Anti-Virus, in any mode, use the following command:
exec av {en ab le | disab le}
After executing the above commands, you need to reboot the system to make the modification
take effect. After rebooting, system's max concurrent sessions might decrease if the function is
enabled, or restore to normal if the function is disabled. For more information about the max-
imum concurrent sessions, see "The Maximum Concurrent Sessions" on Page 698.
The system can merge anti-virus logs of the same source and destination IP based on the specified
time granularity. This way, logs are reduced to prevent the log server from receiving redundant
logs. To configure log aggregation and aggregation time granularity, in the global configuration
mode, use the following command:
av agg-log enable [aggregation-timevalue]
l value - Specifies the time granularity of log aggregation. With this parameter specified, at the
same time granularity, the system stores anti-virus logs of the same merging type in the data-
base only once. Value ranges from 10 to 600 seconds. The default value is 10 seconds.
In the global configuration mode, use the command no av agg-log enable to specify the log aggreg-
ation type as Do Not Merge. This way, the system stores each anti-virus log in the database and
does not merge any logs.
The AV profile specifies the file types, protocol types and the actions for viruses. To create an
AV Profile, in the global configuration mode, use the following command:
av-p ro file av-profile-name
l av-profile-name - Specifies the AV profile name and enters the AV profile configuration
mode. If the specified name exists, then the system will directly enter the AV profile con-
figuration mode. To delete the specified AV profile, in the global configuration mode, use the
commandno av-profile av-profile-name.
To control the scan accurately, in the AV profile configuration mode, specify the protocol types,
actions and file types. Among the above options, the protocol types must be specified, while the
file types can be configured as needed. If only the protocol types are configured, but the file types
are not configured, the system will only scan the text files transferred over specified protocol; if
the scan object is the specified file type transferred over the specified protocol type (for example,
a HTML document transferred over the HTTP protocol), you need to specify the HTTP protocol
type and HTML file type in the AV profile.
System provides the malicious website detection function to protect against attacks from mali-
cious websites if you click maliciously URLs accidentally. With this function enabled, System will
detect Trojans, phishing and other malicious behaviors when you are trying to visit URLs, and pro-
cess malicious URLs according to the actions specified by system.
The Malicious Website Detection is enabled by default. To enable the function, in the global con-
figuration mode, use the following command:
an ti-malicio us-sites
To disable the function, in the global configuration mode, use the following command:
n o an ti-malicio us-sites
To specify the action for Malicious Website Detection, in the AV profile configuration mode, use
the following command:
an ti-malicio us-sites [actio n { lo g-o n ly | reset-co n n | warn in g}| p acp ]
l action {log-only | reset-conn | warning} – Specifies the action for the Malicious Website
Detection
l reset-conn – If virus has been detected, system will reset connections to the files.
l warning – Pops up a warning page to prompt that a virus has been detected. This
option is only effective to the messages transferred over HTTP.
To view the reason for the block, click Why blocks this website, and you will be redir-
ected to the Google Safe Browsing page. To ignore the page and continue to visit the
website, click Ignore. In the following hour, you will not be prompted anymore if you
visit the website again.
To cancel the the action for Malicious Website Detection, in the AV profile configuration mode,
use the following command:
n o an ti-malicio us-sites [actio n { lo g-o n ly | reset-co n n | warn in g}| p acp ]
Notes: In 5.5R9, only A200, K6280, K2680, K2380, and K3280 support PCAP
function.
To specify a protocol type, in the AV profile configuration mode, use the following command:
protocol-type {{ftp | imap 4 | p o p 3 | smtp } [p cap | actio n {fill-magic | lo g-o n ly | reset-
co n n } ] | h ttp [p cap |actio n {fill-magic | lo g-o n ly | reset-co n n | warn in g}]|smb [p cap |
actio n {lo g-o n ly | reset-co n n }] }
l action {fill-magic | log-only | reset-conn | warning} – Specifies the action for the viruses.
l fill-magic – Processes the virus file by filling magic words, i.e., fills the file with the
magic words (Virus is found, cleaned) from the beginning to the ending part of the infec-
ted section.
l log-only – Generates logs. This is the default action for FTP, IMAP4, POP3 ,SMTP
and SMB.
l warning – Pops up a warning page to prompt that a virus or malicious website down-
load has been detected. There are two kinds of pages: the virus warning page , and mali-
cious website warning page (the malicious website detection is enabled), as shown
below. This option is only effective to the messages transferred over HTTP, and is also
To ignore the page and continue to visit the website, click Ignore. In the following one
hour, you will not be prompted anymore if you visit the website again.
To ignore the page and continue to visit the website, click Ignore. In the following
hour, you will not be prompted anymore if you visit the website again.
SMTP, POP3 and IMAP4 are all mail transfer protocols that are used to send Email files. To scan
Emails, you must configure to scan SMTP, POP3 or IMAP4 protocol, and also configure the file
types that will be scanned; besides, as the body of the message and attachments are embedded in
the mail file, you also need to configure the file types for the attachment.
To specify a file type, in the AV Profile configuration mode, use the following command:
file-typ e {b zip 2 | gzip | h tml | jp eg | mail | p e | rar | riff | tar | zip | elf | p df | o ffice |
raw-data | o th ers }
l riff – Scans RIFF files. RIFF (Resource Interchange File Format) is a class of multimedia file
formats designed by Microsoft for Windows, mainly consisting of WAV and AVI types.
l others– Scans the other file, including GIF, BMP, PNG, JPEG, FWS, CWS, RTF, MPEG,
Ogg, MP3, wma, WMV, ASF, RM, etc.
Label Email
If an Email transferred over SMTP is scanned, you can enable label Email to scan the Email and
its attachment(s). The scanning results will be included in the mail body, and sent with the Email.
If no virus has been detected, the message of "No virus found" will be labeled, as shown below:
Body
No virus found.
Otherwise information related to the virus will be displayed in the Email, including the filename,
path, result and action, as shown below:
Body
Notes: The Email will display the scan information of up to 3 virus file (including
the message body and attachments). You can view all the scan information in the
log.
By default the label Email function is disabled. To enable the function, in the AV Profile con-
figuration mode, use the following command:
lab el-mail
To disable the function, in the AV Profile configuration mode, use the following command:
no label-mail
After enabling the label Email function, you can customize your own Email signature. By default,
the signature of the labeled Email is "Checked by Hillstone AntiVirus". To configure an Email sig-
nature, in the AV profile configuration mode, use the following command:
mail-sig signature-string
To restore to the default value, in the AV profile configuration mode, use the following com-
mand:
no mail-sig
If the AV profile is bound to a security zone, the system will perform detection on the traffic that
is matched to the binding zone specified in the rule, and then do according to what you specified.
If the policy rule is bound with an AV Profile, and the destination zone of the policy rule is also
bound with an AV profile, then the AV profile bound to the policy rule will be valid, while the
AV profile bound to the security zone will be void.
To bind the AV profile to a security zone, in the security zone configuration mode, use the fol-
lowing command:
av en ab le av-profile-name
To cancel the binding, in the security zone configuration mode, use the following command:
no av enable
To view the binding between the security zones and AV Profiles, use the command show av
zone-binding.
If the AV profile is bound to a policy rule, the system will detect the traffic matched to the spe-
cified policy rule based on the profile configuration. To bind the AV profile to a policy rule, in
the policy rule configuration mode, use the following command:
av { av-profile-name | n o -av}
l av-profile-name – Specifies the name of the AV profile that will be bound to the policy rule.
l no-av – Specifies the predefined AV profile named no-av, which means the anti-virus is dis-
abled. If this profile is bound to any policy rule, even if there are other matched AV profiles,
the system still will not detect the traffic.
To cancel the binding, in the policy rule configuration mode, use the following command:no av
To perform the Anti-Virus function on the HTTPS traffic, you need to enable the SSL proxy func-
tion for the above specified security policy rule. The system will decrypt the HTTPS traffic
according to the SSL proxy profile and then perform the Anti-Virus function on the decrypted
traffic. According to the various configurations of the security policy rule, the system will perform
the following actions:
SSL proxy The system decrypts the HTTPS traffic according to the SSL proxy pro-
enabled file but it does not perform the Anti-Virus function on the decrypted
Anti-Virus dis- traffic.
abled
SSL proxy The system decrypts the HTTPS traffic according to the SSL proxy pro-
enabled file and performs the Anti-Virus function on the decrypted traffic.
Anti-Virus
enabled
SSL proxy dis- The system performs the Anti-Virus function on the HTTP traffic
abled according to the Anti-Virus profile. The HTTPS traffic will not be
Anti-Virus decrypted and the system will transfer it.
enabled
If the destination zone or the source zone specified in the security policy rule are configured with
Anti-Virus as well, the system will perform the following actions:
SSL proxy Anti-Virus The system decrypts the HTTPS traffic according to
enabled enabled the SSL proxy profile and performs the Anti-Virus
Anti-Virus dis- function on the decrypted traffic according to the
abled
Anti-Virus rule of the zone.
SSL proxy Anti-Virus The system decrypts the HTTPS traffic according to
enabled enabled the SSL proxy profile and performs the Anti-Virus
Anti-Virus function on the decrypted traffic according to the
enabled
Anti-Virus rule of the policy rule.
SSL proxy dis- Anti-Virus The system performs the Anti-Virus function on the
abled enabled HTTP traffic according to the Anti-Virus rule of the
Anti-Virus policy rule. The HTTPS traffic will not be decrypted
enabled
and the system will transfer it.
To view the AV profile information, in any mode, use the following command:
show av-profile
After configuring the decompression control function, StoneOS can decompress the transmitted
compressed files, and can handle the files that exceed the max decompression layer as well as the
encrypted compressed files in accordance with the specified actions. This function supports to
decompress the files in type of RAR, ZIP, TAR, GZIP, and BZIP2. For configuration commands
of the decompression global parameters, refer to Configuring Decompression Control Function.
By default system updates the AV signature database everyday automatically. You can change the
update configuration as needed. The configurations of updating AV signature database include:
l Updating Now
System supports both manual and automatic update modes. To configure an AV signature update
mode, in the global configuration mode, use the following command:
av sign ature up date mo de {auto | man ual}
l auto – Specifies the automatic AV signature update mode. This is the default mode.
To restore to the default mode, in the global configuration mode, use the following command:
no av signature update mode
The system supports to update the signature database through HTTP and HTTPS, and the default
protocol is HTTPS. To configuring the update protocol as HTTP, in the global configuration
mode, use the following command:
av signature update protocol HTTP
In the global configuration mode, use the command no av signature update protocol HTTP to
restore the default value.
l ip-address | domain-name – Specifies the name of the update server. It can be an ip-
addressor a domain-name, for example, update1.hillstonenet.com.
To cancel the specified update the server, in the global configuration mode, use the following
command:
n o av sign ature up date {server1 | server2 | server3}
When the device accesses the Internet through a HTTP proxy server, you need to specify the IP
address and the port number of the HTTP proxy server. With the HTTP proxy server specified,
various signature database can update automatically and normally.
To specify the HTTP proxy server for the Antivirus signature database updating, use the fol-
lowing command in the global configuration mode:
av sign ature up date p ro xy-server {main | b ackup } ip-address port-number
l main | backup – Use the main parameter to specify the main proxy server and use the
backup parameter to specify the backup proxy server.
l ip-address port-number – Specify the IP address and the port number of the proxy server.
To cancel the proxy server configurations, use the no av signature update proxy-server {main |
backup}.
By default, system automatically updates the AV signature database every day. To reduce the
update server’s workload, the time of daily update is random. To specify the schedule and spe-
cific time for the update, in the global configuration mode, use the following command:
l weekly {mon | tue | wed | thu | fri | sat | sun} – Updates the database every week. Para-
meter mon | tue | wed | thu | fri | sat | sunis used to specify the specific date in a week.
l monthly date - Updates the database every month. Parameter date is used to specify the spe-
cific date in a month., the range is 1 to 31. If a month does not contain the specified date (eg,
there is no 30th in February), the database will not be automatically upgraded this month.
Updating Now
For both manual and automatic update modes, you can update the AV signature database imme-
diately as needed. To update the AV signature database now, in any mode, use the following com-
mand:
exec av signature update
l exec av signature update – Only updates the incremental part between the current AV sig-
nature database and the latest AV signature database released by the update server.
In some cases, your device may be unable to connect to the update server to update the AV sig-
nature database. To solve this problem, system provides the AV signature file import function,
i.e., importing the AV signature files to the device from an FTP, TFTP server or USB disk, so
that the device can update the AV signature database locally. To import the AV signature file, in
the execution mode, use the following command:
imp o rt av sign ature fro m {ftp server ip-address [user user-name p asswo rd password ] | tftp
server ip-address } [vro uter vr-name ] file-name
l user user-name password password – Specifies the username and password of the FTP
server.
You can view the AV signature database information of the device as needed, including the AV
signature database version, release dates, and the number of the AV signatures. To view AV sig-
nature database information, in any mode, use the following command:
show av signature info [slotslot-number]
l slotslot-number - Specifies the slot number,this parameter only support for Hillstone SX
series devices.
You can view the AV signature update information of the device as needed, including the update
server information, update mode, update frequency and time, as well as the status of the AV sig-
nature database update. To view the AV signature update information, in any mode, use the fol-
lowing command:
show av signature update
l Scan compressed files. RAR-compressed files contain .jpeg files, and all the compressed files
are transferred over FTP.
Configuration Steps
Step 1: Configure the AV profile, and specify the protocol types and file types:
hostname(config-av-profile)# file-typ e p e
hostname(config-av-profile)# file-typ e jp eg
hostname(config-av-profile)# exit
hostname(config)#
Step 2: Create a policy rule, and reference the AV Profile to the rule:
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule
hostname(config-policy-rule)# src-addr an y
hostname(config-policy-rule)# dst-addr an y
hostname(config-policy-rule)# service an y
hostname(config-policy-rule)# av email-scan
hostname(config-policy-rule)# exit
hostname(config)#
Step 3: View the anti-virus status by command show version. If the function is disabled, use fol-
lowing command to enable it and reboot the system to make it take effect:
hostname(config)# exec av en ab le
l Collect and upload the suspicious file: The Sandbox function parses the traffic, and extracts
the suspicious file from the traffic.
l If there are no analyze result about this file in the local database, system will upload
this file to the local sandbox or to the Hillstone cloud service platform, and the local
sandbox will analyze the file or the cloud service platform will upload the suspicious
file to the cloud sandbox for analysis. For how to connect to the Hillstone cloud ser-
vice platform, refer to Connecting to Hillsotne Cloud Service Platform.
l If this file has been identified as an illegal file in the local database of the Sandbox
function, system will generate corresponding threat logs and cloud sandbox logs.
Additionally, you can specify the criteria of the suspicious files by configuring a sandbox
profile.
l Check the analysis result and take actions: The Sandbox function checks the analysis results
of the suspicious file returned from the cloud sandbox or the local sandbox, verifies the leg-
ality of the file, saves the result to the local database. If this suspicious file is identified as
an illegal file, you need to deal with the file according to the actions (reset the connection
or report logs) set by system. If it's the first time to find malicious file by the cloud sandbox
or the local sandbox, system will record threat logs and cloud sandbox logs and cannot stop
l Maintain the local database of the Sandbox function: Record the information of the
uploaded files, including uploaded time and analysis result. This part is completed by the
Sandbox function automatically.
Notes: The cloud sandbox function is controlled by license. To use the cloud sand-
box function, install the cloud sandbox license.
2. The current device is registered to the Hillstone cloud service platform. For how to connect
to the Hillstone cloud service platform, refer to Connecting to Hillsotne Cloud Service Plat-
form.
3. Import the cloud sandbox license and reboot. The cloud sandbox function will be enabled
after rebooting.
Notes: After the Sandbox function is enabled, system's max concurrent sessions
might decrease. For more information about the maximum concurrent sessions, see
"The Maximum Concurrent Sessions" on Page 698.
Configuring Sandbox
The System supports the zone-based and policy-based Sandbox:
l If a policy rule is configured with the Sandbox filtering function, system will perform sand-
box detection on the traffic that is destined to the policy rule you specified.
l The sandbox configurations in a policy rule are superior to that in a zone rule if they are spe-
cified at the same time, and the sandbox configurations in a destination zone are superior to
that in a source zone if they are specified at the same time.
The system also supports binding the sandbox profile to a ZTNA policy to perform sandbox detec-
tion and processing on the traffic matching the ZTNA policy. For configuration information, refer
to Configuring ZTNA Policy.
To realize the policy-based or the zone-based Sandbox, take the following steps:
2. Define a sandbox profile, and configure white list settings and file filter settings.
A sandbox profile contains the files types that device scanned, the protocols types that device
scanned, and the white list settings.
l File Type: Support to detect PE, APK, JAR, MS-Office, PDF, SWF, RAR, ZIP, ELFand
Script file.
l Protocol Type: Support to detect HTTP, FTP, POP3, SMTP, IMAP4 and SMB protocol.
l White list: A white list includes domain names that are safe. When a file extracted from the
traffic is from a domain name in the white list, this file will not be marked as a suspicious file
and it will not be upload to the cloud sandbox or the local sandbox.
There are five built-in sandbox rules with the files and protocols type configured, white list
enabled and file filter configured. The three default sandbox rules includes predef_low, predef_
middle, predef_high, predef_peand and no_sandbox.
l predef_high -- A strict sandbox detection rule, whose file types are PE/APK/JAR/MS-
Office/PDF/SWF/RAR/ZIP/ELF/Script and protocol types are
HTTP/FTP/POP3/SMTP/IMAP4/SMB, with white list and file filter enabled.
l predef_pe: A sandbox detection rule, whose file type is only PE and protocol types
areHTTP/FTP/POP3/SMTP/IMAP4, with white list and file filter enabled.
l no_sandbox: With this detection rule, the system does not perform any sandbox detection.
To enable or disable the cloud sandbox or the local sandbox, in the global configuration mode, use
the following command:
sandbox {cloud-server-check | local-server-check} enable
To disable the cloud sandbox or the local sandbox, in the global configuration mode, use the com-
mand no sandbox {cloud-server-check | local-server-check} enable.
To configure parameters of the local sandbox, in the global configuration mode, use the following
command:
sandbox local-server addressip-addressvroutervr-name [port port]
l port port- Specifies the port of the local sandbox, the default value is 443.
To delete the specified parameters, in the global configuration mode, use the command no sand-
box local-server address .
To create a sandbox Profile, in the global configuration mode, use the following command:
san db o x-p ro file sandbox-profile-name
l sandbox-profile-name - Specifies the sandbox profile name and enters the sandbox profile con-
figuration mode. If the specified name exists, then the system will directly enter the sandbox
profile configuration mode.
To delete the specified sandbox profile, in the global configuration mode, use the command no
sandbox-profile sandbox-profile-name.
The white list includes domain names that are safe. When a file extracted from the HTTP traffic is
from a domain name in the white list, this file will not be marked as a suspicious file and it will
not be upload to the cloud sandbox or the local sandbox. To enable the white list function, in the
sandbox profile configuration mode, use the following command:
whitelist enable
To disable this function, use no whitelist enable.
System supports to enable the verification for the trusted certification. After enabling, system will
not detect the PE file whose certification is trusted.
The file filter marks the file as a suspicious file if it satisfies the criteria configured in the file filter
settings. The analyze result from the cloud sandbox or form the local sandbox determines whether
this suspicious file is legal or not.
You can set the following criteria:
Mark the file of the specified file type as a suspicious file. The system can mark the PE, APK,
JAR, MS-Office, PDF, SWF, RAR, ZIP, Script, and Others file as a suspicious file now. Use the
following command in the sandbox profile to specify the file type:
file-typ e {p e | ap k | jar | swf | ms-o ffice | p df | rar | zip | elf | script | other } [ use-
server [ cloud-server | local-server ]
l other - Mark the file of all types other than the types above as a suspicious file.
To cancel the file type setting, use no file-type {pe | apk | jar | swf | ms-office | pdf | rar | zip
| elf | script | other}.If no file type is specified, the Sandbox function will mark no file as a sus-
picious one.
Specifies the protocol to scan and directions of the detection. The system can scan the HTTP,
FTP, POP3, SMTP, IMAP4 and SMB traffic now. If SMB protocol type is used, the system sup-
ports the filtering and blocking of files in break-point resumption scenarios. Use the following
command in the sandbox profile to specify the protocol:
p ro to co l {h ttp | ftp | imap 4 | p o p 3 | smtp | smb } directio n {do wn lo ad | up lo ad | b o th }
l http | ftp | imap4 | pop3 | smtp | smb - Specifies the protocol to scan.
l download | upload | both - Specifies the direction of the detection. Upload means direction
from client to server. Download means direction from server to client.
If no protocol is specified, the Sandbox function will not scan the network traffic.
In the sandbox profile, use no protocol {http | ftp | imap4 | pop3 | smtp | smb}to delete the
protocol specifications.
When system identifies the suspicious files as malicious files, it will deal with them with set
actions. To specify the actions, in the Sandbox Profile configuration mode, use the following com-
mand:
actio n {reset | lo g-o n ly}
l reset - Specifies the actions as resetting connections. After detecting the malicious files, sys-
tem will reset connection of malicious link and record threat logs and cloud sandbox logs.
l log-only – Specifies the actions as recording logs. After detecting the malicious files, system
will release traffic and record logs (threat logs and cloud sandbox logs) only.
By default, the file will be uploaded to the cloud sandbox when it marks it is classified as sus-
picious. You can disable the function of suspicious file uploading, which will prevent the sus-
picious file from being uploaded to the cloud sandbox. In the sandbox profile configuration mode,
use the following command:
file-upload-disable
In the global configuration mode, use no file-upload-disable command to restore the function of
suspicious file uploading.
If the sandbox profile is bound to a policy rule, the system will detect the traffic matched to the
specified policy rule based on the profile configuration. To bind the sandbox profile to a policy
rule, in the policy rule configuration mode, use the following command:
san db o x { sandbox-profile-name | p redef_lo w | p redef_middle | p redef_h igh }
l sandbox-profile-name – Specifies the name of the sandbox profile that will be bound to the
policy rule.
To cancel the binding, in the policy rule configuration mode, use the following command: no
sandbox
If you enable the Benign File function, system will record cloudsandbox logs of the file when it
marks it as a benign file. By default, system will not record logs for the benign files.
To enable the Benign File function, in the global configuration mode, use the following com-
mand:
sandbox benign-file report enable
If you enable Greyware File function, system will record cloudsandbox logs of the file when it
marks it as a greyware file. A greyware file is the one system cannot judge it is a benign file or a
malicious file. By default, system will not record logs for the greyware files.
To enable the Greyware File function, in the global configuration mode, use the following com-
mand:
sandbox greyware report enable
In the global configuration mode, use no sandbox greyware report enablecommand to disable the
Greyware File function.
The file that is smaller than the specified file size will be marked as a suspicious file. To specify
the file size limit, in the global configuration mode, use the following command:
sandbox file-type{pe|apk|jar|swf|ms-office|pdf|rar|zip|elf|script| other} max-file-size size
l other - Mark the file of all types other than the types above as a detection object.
l max-file-sizesize - Specify the file size. Mark the file that is small than the specified file size
as a detection object.
To cancel the file size limit setting, use the command no sandbox file-type {pe | apk | jar | swf
| ms-office | pdf | rar | zip | elf | script | other} max-file-size size.
The threat list means the list of threat items in the Hillstone device. There are three sources of
the threat items:
l The Hillstone device finds suspicious file and upload this file to the local sandbox or to the
cloud sandbox. After verifying the file is malicious, the cloud sandbox or the local sandbox
will send the analysis results and MD5 to the device, and the threat item will be listed in the
threat list.
l The Hillstone device finds suspicious file and successfully queries MD5 of the threat in the
cloud sandbox or the local sandbox, the threat item will be listed in the threat list.
l The Hillstone device receives the synchronous threat MD5 from the Hillstone cloud service
platform and matches the threat, the threat item will be listed in the threat list.
You can add the sandbox threat items to the trust list. Once the item in the trust list is matched,
the corresponding traffic will be released and not controlled by the actions of sandbox rule.
To add or remove a sandbox threat item, in any mode, use the following command:
exec san db o x-th reat value {trust | un trust}
l untrust – Remove the sandbox threat item from the trust list.
To view the sandbox profile information, in any mode, use the following command:
sh o w san db o x-p ro file [ sandbox-profile-name ]
To view the sandbox status and statistic information, in any mode, use the following command:
show sandbox status
To view the sandbox threat items in the treat list, in any mode, use the following command:
show sandbox threat-entry info
To view the sandbox global configuration information, including , in any mode, use the following
command:
show sandbox configuration
System supports both manual and automatic update modes. To configure a sandbox whitelist
update mode, in the global configuration mode, use the following command:
san db o x wh itelist up date mo de {auto | man ual}
l auto – Specifies the automatic sandbox whitelist update mode. This is the default mode.
To restore to the default mode, in the global configuration mode, use the following command:
no sandbox whitelist update mode
The system supports to update the signature database through HTTP and HTTPS, and the default
protocol is HTTPS. To configuring the update protocol as HTTP, in the global configuration
mode, use the following command:
sandbox whitelist update protocol HTTP
In the global configuration mode, use the command no sandbox whitelist update protocol HTTP
to restore the default value.
l server1 | server2 | server3 – Specifies the update server you want to configure. The IPv4
and IPv6 address are supported for configuring the update server address. The default value of
server1is update1.hillstonenet.com, and the default value of server2is update2.hill-
stonenet.com.
l ip-address | domain-name – Specifies the name of the update server. It can be an ip-address,
or a domain-name, for example, update1.hillstonenet.com.
To cancel the specified update the server, in the global configuration mode, use the following
command:
n o san db o x wh itelist up date {server1 | server2 | server3}
When the device accesses the Internet through a HTTP proxy server, you need to specify the IP
address and the port number of the HTTP proxy server. With the HTTP proxy server specified,
various signature database can update automatically and normally.
To specify the HTTP proxy server for the sandbox whitelist signature database updating, use the
following command in the global configuration mode:
san db o x wh itelist up date p ro xy-server {main | b ackup } ip-address port-number
l main | backup – Use the main parameter to specify the main proxy server and use the
backup parameter to specify the backup proxy server.
l ip-address port-number – Specify the IP address and the port number of the proxy server.
To cancel the proxy server configurations, use the no sandbox whitelist update proxy-server
{main | backup}command.
By default, system automatically updates the sandbox whitelist database every day. To reduce the
update server’s workload, the time of daily update is random. To specify the schedule and spe-
cific time for the update, in the global configuration mode, use the following command:
san db o x wh itelist up date sch edule {daily | weekly {mo n | tue | wed | th u | fri | sat | sun } |
mo n th ly date } [ HH:MM ]
l weekly {mon | tue | wed | thu | fri | sat | sun} – Updates the database every week. Para-
meter mon | tue | wed | thu | fri | sat | sunis used to specify the specific date in a week.
l monthly date - Updates the database every month. Parameter date is used to specify the spe-
cific date in a month., the range is 1 to 31. If a month does not contain the specified date (eg,
there is no 30th in February), the database will not be automatically upgraded this month.
Updating Now
For both manual and automatic update modes, you can update the sandbox whitelist database
immediately as needed. To update the sandbox whitelist database now, in any mode, use the fol-
lowing command:
exec sandbox whitelist update
l exec sandbox whitelist update – Only updates the incremental part between the current
sandbox whitelist database and the latest sandbox whitelist database released by the update
server.
In some cases, your device may be unable to connect to the update server to update the sandbox
whitelist database. To solve this problem, StoneOS provides the sandbox whitelist file import
function, i.e., importing the sandbox whitelist files to the device from an FTP, TFTP server or
USB disk, so that the device can update the sandbox whitelist database locally. To import the
sandbox whitelist file, in the execution mode, use the following command:
import sandbox whitelist from { ftp server ip-address [ user user-name password pass-
word ] | tftp server ip-address } [vro uter vr-name ] file-name
l user user-name password password – Specifies the username and password of the FTP
server.
l file-name – Specifies the name of the sandbox whitelist file that be imported.
You can view the sandbox whitelist database information of the device as needed, including the
sandbox whitelist database version, and release dates. To view sandbox whitelist database inform-
ation, in any mode, use the following command:
show sandbox whitelist info
You can view the sandbox whitelist update information of the device as needed, including the
update server information, update mode, update frequency and time, as well as the status of the
sandbox whitelist database update. To view the sandbox whitelist update information, in any
mode, use the following command:
show sandbox whitelist update
l Protocol parsing: IPS analyzes the protocol part of the traffic. If the analyze results shows the
protocol part contains abnormal contents, the system will process the traffic according to the
action configuration. And it can generate logs for the administrator if any anomaly has been
detected. Each Threat log contains "Threat ID", the signature ID in the signature database.
You can view detailed information in Threat log details.
l Signature matching: IPS abstracts the interested protocol elements of the traffic for signature
matching. If the elements are matched to the items in the signature database, the system will
process the traffic according to the action configuration and it can generate logs for the admin-
istrator. Each Threat log contains "Threat ID", the signature ID in the signature database. You
can view detailed information about the error according to the ID.
Signatures
The IPS signatures are categorized by protocols, and identified by a unique signature ID. The sig-
nature ID consists of two parts: protocol ID (1st bit or 1st and 2nd bit) and attacking signature
ID (the last 5 bits). For example, in ID 605001, "6" identifies a Telnet protocol, and "00120" is
In the above table, other-TCP identifies all the TCP protocols other than the standard TCP pro-
tocols listed in the table, and other-UDP identifies all the UDP protocols other than the standard
UDP protocols listed in the table.
Configuration CLI
update mode l Specifying the update mode: ips signature update mode {auto |
(auto by default) manual}
update protocol l Specifying the update protocol: ips signature update protocol
(HTTPS by HTTP
default)
l Restoring to the default: no ips signature update protocol HTTP
To configure an In the global configuration mode, use the following command. The
update server IPv4 and IPv6 address are supported for configuring the update
server address.
update schedule make the IPS signature database update daily or weekly:
ips signature update schedule {daily | weekly {mon | tue | wed |
thu | fri | sat | sun} | monthly date} [HH:MM]
In the global configuration mode, use the following command to
make the IPS signature database update hourly:
ips signature update schedule hourly minute
ally import ips signature from {ftp server ip-address [user user-name
password password | vrouter vr-name] | tftp server ip-address
[vrouter vr-name]} file-name
When the device accesses the Internet through a HTTP proxy server, you need to specify the IP
address and the port number of the HTTP proxy server. With the HTTP proxy server specified,
various signature database can update automatically and normally.
To specify the HTTP proxy server for the IPS signature database updating, use the following com-
mand in the global configuration mode:
ip s sign ature up date p ro xy-server {main | b ackup } ip-address port-number
l main | backup – Use the main parameter to specify the main proxy server and use the
backup parameter to specify the backup proxy server.
l ip-address port-number – Specify the IP address and the port number of the proxy server.
To cancel the proxy server configurations, use the command no ips signature update proxy-server
{main | backup}.
2. Import an IPS license or TP license and reboot. The IPS will be enabled after the rebooting.
l Signature set configurations: IPS abstracts the interested protocol elements of the traffic for
signature matching. If the elements are matched to the items in the signature database, the sys-
tem will process the traffic according to the action configuration.
l Protocol configurations: IPS abstracts the interested protocol elements of the traffic for sig-
nature matching. If the elements are matched to the items in the signature database, the sys-
tem will process the traffic according to the action configuration.
l IPS profile: contains signature set configurations, protocol configurations, and packet capture
configurations. You can bind an IPS profile to different directions of the security zone
(inbound, outbound, bi-direction) to apply the IPS function to the specified direction, or bind
an IPS profile to a policy rule to apply the IPS function to the traffic that matches the spe-
cified policy rule.
If a policy rule is bound with an IPS profile and the source and destination security zone are also
bound with an IPS Profile, the priority of the IPS detection will be: IPS profile for the policy rule
> IPS profile for the destination zone > IPS profile for the source zone.
The system also supports binding the IPS profile to a ZTNA policy to perform IPS detection and
processing on the traffic matching the ZTNA policy. For configuration information, refer to Con-
figuring ZTNA Policy.
With IPS configured, StoneOS will generate an Threat log if any intrusion has been detected.
Each Threat log contains a signature ID. You can view detailed information about the signature
Configuration Suggestions
All the IPS rules configured for different attacks and intrusions will eventually affect the final
actions. When determining the final action, the system will follow the principles below:
l The IPS working mode has the highest priority. When the working mode is set to log only, no
matter what action is specified in other related configurations, the final action will always be
log only.
l If you create several signature sets and some of them contain a particular signature. If the
actions of these signature sets are different and the attack matches this particular signature ,
the system will adopt the following rules:
l Always perform the stricter action on the attack. The signature set with stricter action
will be matched. The strict level is: Block IP > Block Service > Rest > Log Only. If
one signature set is Block IP with 15s and the other is Block Service with 30s, the final
action will be Block IP with 30s
l If one signature set is configured with Capture Packet, the system will capture the pack-
ets.
l The action of the signature set created by Search Condition has high priority than the
action of the signature set created by Filter.
l For the IPS Profile that is bound to a security zone or policy rule, you can modify the sig-
nature sets for the IPS Profile, or a specific signature and its corresponding action. If any IPS
profile has been modified, the system will process the related sessions following the principles
below:
l If the signature set of the referenced IPS profile has been changed, the modification will
take effect on the existing sessions immediately.
To perform the IPS detection on the HTTPS traffic, you need to enable the SSL proxy function
for the security policy rule that the HTTPS traffic is matched. The system will decrypt the
HTTPS traffic that matches the security policy rule according to the SSL proxy profile and then
perform the IPS detection on the decrypted traffic.
According to the various configurations of the security policy rule, the system will perform the fol-
lowing actions:
SSL proxy The system decrypts the HTTPS traffic according to the SSL proxy pro-
enabled file but it does not perform the IPS detection on the decrypted traffic.
IPS disabled
SSL proxy The system decrypts the HTTPS traffic according to the SSL proxy pro-
enabled file and performs the IPS detection on the decrypted traffic.
IPS enabled
SSL proxy dis- The system performs the IPS detection on the HTTP traffic according
abled to the IPS profile. The HTTPS traffic will not be decrypted and the
IPS enabled system will transfer it.
If the destination zone or the source zone specified in the security policy rule are configured with
IPS as well, the system will perform the following actions:
SSL proxy enabled IPS enabled The system decrypts the HTTPS
IPS disabled traffic according to the SSL proxy
profile and performs the IPS detec-
tion on the decrypted traffic
according to the IPS profile of the
zone.
SSL proxy enabled IPS enabled The system decrypts the HTTPS
IPS enabled traffic according to the SSL proxy
profile and performs the IPS detec-
tion on the decrypted traffic
according to the IPS profile of the
policy rule.
SSL proxy disabled IPS enabled The system performs the IPS
IPS enabled detection on the HTTP traffic
according to the IPS profile of the
policy rule. The HTTPS traffic will
not be decrypted and the system
will transfer it.
Tip: For more information about SSL proxy, see the SSL Proxy chapter.
action
When the traffic matches the signatures configured by filter rule and/or search rule, specify the
corresponding actions.
Command:
action {block-ip {permanent | second timeout | hour timeout |day timeout}| block-service
{permanent |second timeout | hour timeout | day timeout}| log-only | reset | default}
Description:
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies that when the sig-
nature is hit, the system blocks the IP address of the attacker, and also specifies the block time.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the attacker IP. The value range is 60 to 3,600 seconds/ 1 to 24 hours/ 1 to 15
days.
hostname(config-ips-profile)# filter-class 1
affected-software
Configure the affected-software parameter to include signatures, related to the specified software,
in the filter rule.
Command:
affected-so ftware {Ap ach e | IE | Firefo x | …}
Description:
Apache | IE | Firefox | … – Enter the name of the software. You can press the Tab key after
theaffected-softwareparameter to see the entire software list.
Default values:
None
Mode:
Filter rule configuration mode;
Guidance:
None
hostname(config-ips-profile)# filter-class 1
attack-type
Configure the attack-type parameter to include signatures, related to the specified attack type, in
the filter rule.
Command:
attack-typ e {Access-Co n tro l | SPAM | Mail | …}
Description:
Access-Control | SPAM | Mail | … - Enter the name of the attack type. You can press the Tab
key after the attack-typeparameter to see the entire attack type list.
Default values:
None
Mode:
Filter rule configuration mode;
Guidance:
None
Example:
hostname(config)# ip s p ro file test
hostname(config-ips-profile)# filter-class 1
banner-protect enable
Enable the function that protects the banner information of FTP/Web/POP3/SMTP servers and
set the new banner information to replace the original one. Use the no form of the command to
brute-force
Enter the brute-force configuration mode, where you can make configurations to block brute-
force attacks on FTP/MSRPC/POP3/SMTP/SUNRPC/Tel-
net/IMAP/SSH/LDAP/SMB/VNC/RDP protocol.
Command:
brute-force
{ftp | imap | ldap | msrpc | pop3 | rdp | smb | smtp | ssh | sunrpc | telnet | vnc} timesblock
{ip | service}{permanent | second timeout | hourtimeout | daytimeout}
Description:
ftp | imap | ldap | msrpc | pop3 | rdp | smb | smtp | ssh | sunrpc | telnet | vnc - Specifies
the name of the protocol on which the system blocks brute-force attacks.
hostname(config-ips-profile)# brute-force
brute-force lookup
Enable the brute lookup function and configure the corresponding settings. Use the no form to
disable this function.
Command:
b rute-fo rce lo o kup times b lo ck {ip | service} timeout
no brute-force lookup
Description:
bulletin-board
Configure the bulletion-board parameter to include signatures, related to the specified bulletin
board, in the filter rule.
Command:
b ulletin -b o ard {CVE | BID | O SVDB | …}
Description:
CVE | BID | OSVDB | … Enter the name of the bulletin board. You can press the Tab key
after the bulletin-boardparameter to see the entire bulletion board list.
Default values:
None
Mode:
Filter rule configuration mode;
hostname(config-ips-profile)# filter-class 1
command-injection-check
Enable the function of detecting the HTTP protocol command injection attack. Use the no form
to disable this function.
Command:
command-injection-check enable
no command-injection-check enable
Description:
None
Default values:
None
Mode:
protocol configuration mode
Guidance:
None.
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
confidence
Configure the confidence parameter to include signatures, related to the specified confidence
level, in the filter rule.
Description:
low | medium | high – Enter the level of the confidence.
Default values:
None
Mode:
Filter rule configuration mode;
Guidance:
None
Example:
hostname(config)# ips profile test
hostname(config-ips-profile)# filter-class 1
cc-url
Configure the URL path for the CC URL constraint. After the configuration, the system will make
statistics on the frequency of the HTTP requests that access the path. If the frequency exceeds
the threshold, the system will block the source IP of the request and the IP will not be able to
access the Web server. Use the no form to delete the url configuration.
Command:
cc-url url_string
no cc-url url_string
Description:
url_string - Specifies the URL path of CC URL constraint. System will check the frequency of the
HTTP requests that access the specified paths, includingthe whole or part of the paths. For
example, if the configuration is /home/ab, system will check and calculate the HTTP requests
cc-url-limit
Configure t threshold value of visiting frequency of URL path and the time to block IP for the CC
URL constraint. After the configuration, the system will make statistics on the frequency of the
HTTP requests that access the path. If the frequency exceeds the threshold, the system will block
the source IP of the request and the IP will not be able to access the Web server. The system will
release the blocked IP and the IP can revisit the Web server after the blocking time.Use the no
form to delete the domain name configuration.
Command:
cc-url-limit th resh o ld value actio n b lo ck-ip { permanent | second timeout | hour timeout |
day timeout }
no cc-url-limit
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the attacker IP. The value range is 60 to 3,600 seconds/ 1 to 24 hours/ 1 to 15
days.
Default values:
value – 1 times per minute.
block-ip_time – 60 seconds
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset test_h ttp temp late h ttp
check-weakpassword
When configuring an IPS rule, with the Weak Password Detection function, the system checks
the strength of the plaintext password which is set under the FTP/Telnet/POP3/IMAP/SMTP
hostname(config-ips-profile-weakpass)#
Add a specified weak password to the weak password dictionary of the Weak Password Detection
function. If a password matches the specified weak password, the system will consider it as a
weak one. You can specify up to 100 weak passwords.
Command
custom-password add weakpassword
Description
weakpassword - Specifies the weak password to be added into the weak password dictionary.
Default values:
None
Mode:
Weak Password Detection configuration mode
Guidance:
None
Examples:
hostname(config)# ip s p ro file test
hostname(config-ips-profile-weakpass)# en ab le
custom-password delete
Delete a specified weak password from the weak password dictionary of the Weak Password
Detection function.
Command:
custom-password delete weakpassword
Description:
weakpassword - Specifies the weak password to be deleted from the weak password dictionary.
hostname(config-ips-profile-weakpass)# en ab le
deny-method
Specify the HTTP method that is refused by the system. Use the no form to allow the specified
HTTP method.
Command:
den y-meth o d {co n n ect | delete | get | h ead | o p tio n s | p o st | p ut | trace | web dav|
others }
n o den y-meth o d {co n n ect | delete | get | h ead | o p tio n s | p o st | p ut | trace | web dav| oth-
ers }
Description:
connect | delete | get | head | options | post | put | trace | webdav | others- Specifies the
refused/allowed HTTP method.
Default values:
All methods are allowed by default.
Mode:
protocol configuration mode
Guidance:
disable
hostname(config-ips-profile-weakpass)# disab le
disable protocol-anomaly
Disable a signature rule in a profile. Use the no form to re-enable this signature rule.
Command:
disable protocol-anomaly id
no disable protocol-anomaly id
disable signature
Disable a certain signature in a profile. Use the no form to re-enable this signature.
Command:
disable signature id
no disable signature id
Description:
id - Specifies the ID of the enabled/disabled signature.
Default values:
None
Mode:
IPS profile configuration mode
Guidance:
Example:
hostname(config)# ip s p ro file test
Configure the domain name for the Web server. Use the no form to delete the domain name con-
figuration.
Command:
domain domain_name
no domain domain_name
Description:
domain_name -Specifies the domain name of the Web server. You can specify up to 255 char-
acters.
Default values:
None
Mode:
Web server configuration mode
Guidance:
Cannot configure the domain name for the default Web server.
You can configure up to 5 domain names for each Web server.
The domain name of the Web server follows the longest match principle as shown below:
hostname(config-http-sigset)# web -server web _server1
hostname(config-web-server)# exit
With the above configurations, the traffic that accesses the news.abc.com will be matched to the
web_server1, the traffic that accesses the www.email.abc.com will be matched to the web_
server2, and the traffic that accesses the www.abc.com.cn will be matched to the default Web
server.
Example:
dst-ip
Configure the destination IP address for the IPS white list. Use the no form to delete the IP
address.
Command:
dst-ip A.B.C.D | A.B.C.D/M
no dst-ip
Description:
A.B.C.D | A.B.C.D/M-Specifies the destination address IP address for the IPS white list to
match.
Default values:
None
Mode:
IPS white list configuration mode
Guidance:
None
Example:
hostname(config)# ips whitelist white1
enable
Enable the Web server. Use the no form to disable the Web server.
Command:
enable
no enable
hostname(config-web-server)# en ab le
enable
hostname(config-ips-profile-weakpass)# en ab le
equal-username-check
Enable/disable the weak password detection function of User Name Equals Password. With this
function enabled, the password that equals the user name will be detected as a weak password.
Commands:
Enable: equal-username-check enable
Disableequal-username-check disable
Description:
None
Default values:
None
Mode:
Weak Password Detection configuration mode
Guidance:
By default, User Name Equals Password function is enabled.
Examples
hostname(config)# ip s p ro file test
hostname(config-ips-profile-weakpass)# en ab le
Description:
Delete the IP address that are blocked from the blocked IP list.
Command:
exec b lo ck-ip remo ve {all | ip v4 ipv4-address |ip v6 ipv6-address } [vro uter vr-name ]}
Description:
all - Deletes all blocked IP addresses.
ipv4 ipv4-address|ipv6 ipv6-address - Deletes the specified blocked IP address.
vr-name - Specifies the VR where the IP address locates.
Default values:
vr-name – trust-vr
Mode:
execution mode
Guidance:
Description:
src-ipv4 src-ipv4-address - Specifies the source IPv4 address of the service.
dst-ipv4 dst- ipv4-address - Specifies the destination IPv4 address of the service.
src-ipv6 src-ipv6-address - Specifies the source IPv6 address of the service.
dst-ipv6 dst-ipv6-address - Specifies the destination IPv6 address of the service.
vrouter vr-name - Specifies the name of the VRouter.
dst-port port-number - Specifies the destination port of the service. The value ranges from 1
to65535.
proto protocol - Specifies the protocol of the service. The value ranges from 1 to 255.
Default values:
vr-name – trust-vr
Mode:
execution mode
Guidance:
Non-root VSYS does not support this command.
Example:
hostname# exec b lo ck-service add src-ip v4 100.10.10.1 dst-ip v4 100.20.10.4 dst-p o rt 1025
p ro to 23
Description:
all - Deletes all blocked services.
src-ipv4 src-ipv4-address dst- ipv4 dst- ipv4-address - Specifies the source IPv4 address and des-
tination IPv4 address of the service.
src-ipv6 src-ipv6-address dst-ipv6 dst-ipv6-address - Specifies the source IPv6 address of the ser-
vice.
vrouter vr-name - Specifies the name of the VRouter.
dst-port port-number - Specifies the destination port of the service. The value ranges from 1
to65535.
proto protocol - Specifies the protocol of the service. The value ranges from 1 to 255.
Default values:
vr-name – trust-vr
Mode:
execution mode
Guidance:
Non-root VSYS does not support this command.
Example:
hostname# exec b lo ck-service remo ve all
exec ips
l This command is valid for the platforms with the IPS license installed.
l After executing the exec ips enablecommand or theexec ips disablecommand, you must
restart the device to enable or disable the IPS function. After restarting, system's max con-
current sessions might decrease if the function is enabled, or restore to normal if the function
is disabled. For more information about the maximum concurrent sessions, see "The Max-
imum Concurrent Sessions" on Page 698.
Example:
hostname# exec ip s en ab le
external-link
Configure the URL of external link. The URL must be an absolute path, which indicates that you
must enter the protocol, i.e. http://, https:// or ftp://. For example, http://www.-
abc.com/script represents that all files located under this path can be referenced by the Web
server. Use the no form to delete the specified URL of the external link.
Command:
external-link url
no external-link url
external-link-check
Enable the function of external link check to control the referenced actions performed by the
Web server. Use the no form to disable this function.
Command:
extern al-lin k-ch eck en ab le actio n {reset | lo g}
no external-link-check enable
Description:
reset | log - Specifies the actions performed to the behavior of Web site external link.
l reset - If discovering the behavior of Web site external link, reset the connection (TCP) or
send the packets (UDP) to notify the unreachable destination and generate the logs.
l log - If discovering the behavior of Web site external link, only generate the logs.
Default values:
None
Mode:
filter-class
When configuring a signature set, you can create a filter rule. And in this filter rule, you can spe-
cify the desired signatures by using filter conditions. Use the following command to create a filter
rule and enter into the filter rule configuration mode. Use the no form to delete this rule.
Command:
filter-class id [n ame name ]
n o filter-class id
Description:
id - Specifies the ID of the filter rule.
name name- Specifies the name of the filter rule.
Default values:
None
Mode:
IPS Profile configuration mode.
Guidance:
None
Example:
hostname(config)# ips profile test
Enable / disable FTP Anonymous Login Detection. When you log in anonymously through FTP,
the system identifies your password as a weak password.
Commands:
Enable: ftp-anonymous-login-check enable
Disable: ftp-anonymous-login-check disable
Description:
None
Default values:
None
Mode:
Weak Password Detection configuration mode
Guidance:
By default, FTP Anonymous Login Detection is disabled.
Examples:
hostname(config)# ip s p ro file test
hostname(config-ips-profile-weakpass)# en ab le
http-request-flood auth
Configure the authentication method for the HTTP request flood protection. The system judge
whether the source IP address of the HTTP request is valid or not by authentication, thus identi-
fying the attack traffic and executing the protection. If it is failed to authenticate a certain source
IP address, the system will block the HTTP request generated by the source IP address. Use the
no form to cancel the configurations.
Command:
no http-request-flood auth
Description:
auto-js-cookie | auto-redirect | manual-CAPTCHA | manual-confirm
Specifies the authentication method:
l manual-confirm– Manual (Verification code). When using this authentication method, the
user that initiates the requests must enter the verification code to complete the authen-
tication.
crawlers-friendly - With this parameter entered, the system will not authenticate the crawlers.
Default values:
None
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
http-request-flood enable
Enable the HTTP request flood protection function and set the request threshold. When the
HTTP request rate reaches the configured threshold, the system concludes that the HTTP
request flood happens and it enable the HTTP request flood protection function. Use the no form
to disable the function.
Command:
http-request-flood enable [th resh o ld request value ]
no http-request-flood enable
Description:
threshold request value - Specifies the request threshold. The value ranges from 0 to 1000000 per
second.
Default values:
The default value is 1500 per second.
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
http-request-flood proxy-limit
Configure the proxy rate limit. After configuring the proxy rate limit, the system checks whether
each source IP belongs to the proxy server. If it belongs to the server, the system limits the proxy
rate based on the proxy rate limit. Use the no form to cancel the proxy rate limit.
Command:
l second timeout |hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the attacker IP. The value range is 60 to 3,600 seconds/ 1 to 24 hours/ 1 to 15
days.
Default values:
None
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ips sigset http1 template http
Configure the access rate limit. After configuring the access rate limit, the system limits the access
rate for each source IP address. Use the no form to cancel the access rate limit.
Command:
h ttp -request-flo o d request-limit th resh o ld value {b lo ckip timeo ut{ permanent | second
timeout | hour timeout | day timeout }| reset} [n o lo g]
no http-request-flood request-limit
Description:
threshold value - Specifies the threshold for the access rate. If the received request rate exceeds
the configured threshold and the http request flood protection is enabled, the system will perform
the corresponding limitations. The value ranges from 0 to 1000000.
blockip timeout{permanent|second timeout |hour timeout | day timeout}| reset - Specifies the
limitations that the system is to perform when the request rate exceeds the configured threshold.
l permanent - Specifies that the IP address or service of the attacker is blocked permanently.
l second timeout |hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP or service of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
http-request-flood statistics
Enable the URL request statistics function. Use the no form to cancel the URL request statistics
function.
Command:
http-request-flood statistics enable
no http-request-flood statistics enable
Description:
None
Default values:
None
Mode:
Web server configuration mode
Guidance:
Only after executing the http-request-flood statistics enablecommand, the show ips sigset sigset-
name web-server server-name http-request-flood req-stat topcommand can take effect.
Example:
hostname(config)# ips sigset http1 template http
http-request-flood white-list
Configure the white list for the HTTP request flood protection function. The system will not
check the source IP addresses that are added to the white list. Use the no form to cancel the
l If the traffic of the source IP addresses in the white list exceeds the request threshold, the
HTTP request flood protection function will be enabled
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
http-request-flood x-forward-for
Configure the value of the x-forward-for field of HTTP for HTTP request flood protection. After
the configuration, the system will make a statistics of the access frequency of the above field.
When the number of HTTP connecting request per second towards this URL reaches the
threshold and this lasts 20 seconds, the system will treat it as a HTTP request flood attack.Use
the no form to cancel the value configuration of the x-forward-for field.
Command:
http-request-flood x-forward-for { first | last | all}
http-request-flood x-real-ip
Enable the x-real-for field statistics for HTTP request flood protection. When enabled, the system
calculates the value of the x-real-for field.Use the no form to cancel the configuration.
Command:
http-request-flood x-real-ip enable
no http-request-flood x-real-ip
Description:
None
Default values:
None
Mode:
Web server configuration mode
iframe-check
Enable the function of hides iframe check and configure the function. Through the iframe check,
the system recognizes whether there is a hidden iframe HTML page, so as to log or reset the con-
nection. Use the no form to disable this function.
Command:
iframe-check enable action {log | reset}
no iframe-check enable
Description:
reset | log - Specify the action for the HTTP request that hides iframe behavior.
l reset– If discovering the behavior of hides iframe, reset the connection (TCP) or send the
packets (UDP) to notify the unreachable destination and generate the logs.
l log– If discovering the behavior of hides iframe, only generate the logs.
Default values:
None
Mode:
Web server configuration mode
Guidance:
None.
Example:
hostname(config)# ip s sigset test_h ttp temp late h ttp
iframe width
Configure the limits of height and width for the iframe check function. Then System will check
the iframe of HTML page according to the given height and width.When one value of the height
or width in HTML page is less than or equal to the given value, system will identify the happening
of hidden iframe attack. and then log or reset the connection. Use the no form to cancel the con-
figurations.
Command:
iframe width width_value h eigh t height_value
no iframe
Description:
width width_value - Specifies the height value for the iframe, range from 0 to 4096.
height height_value - Specifies the width value of the iframe, range from 0 to 4096.
Default values:
None
Mode:
Web server configuration mode
Guidance:
None.
Example:
hostname(config)# ip s sigset test_h ttp temp late h ttp
For threats detected by the Intrusion Prevention System, the system can capture the threat data
and you can view how the threats occur in threat logs. By default, the function is disabled. After
this function is enabled, you can click Download next to the Threat Data option to download the
threat data on the threat log details page of the WebUI.
Command:
ip s b uffer-cap ture en ab le
n o ip s b uffer-cap ture en ab le
Description:
None
Default values:
Disabled
Mode:
global configuration mode
Guidance:
None
Example:
hostname(config)# ip s b uffer-cap ture en ab le
hostname(config)#
ips enable
Enable the IPS function for a certain security zone and specify the IPS Profile to be used. Use the
no form to disable the IPS function.
Command:
ips enable {n o -ip s | p redef_default | p redef_lo o se | predef_critical | profile-name }
{egress | in gress | b idirectio n al}
no ips enable
Description:
l If the policy rule has been bound with an IPS Profile and the source and destination security
zones have been bound with an IPS Profile simultaneously, the system will perform the IPS
check according to the following order of priority: IPS Profile bound to the policy rule, IPS
Profile bound to the destination security zone, IPS Profile bound to the source security zone.
l For each security zone, you can only bind one IPS Profile with it.
Example:
hostname(config)# zo n e trust
System can merge IPS logs which have the same protocol ID, the same VSYS ID, the same Sig-
nature ID, the same log ID, and the same merging type.Thus it can help reduce logs and avoid to
receive redundant logs.
Command:
ips log aggregation { by-src | by-dst | by-src-dst }
Description:
by-src - Merge the IPS logs with the same Source IP.
by-dst - Merge the IPS logs with the same Destination IP.
by-src-dst - Merge the IPS logs with the same Source IP and the same Destination IP.
Default values:
Disabled
Mode:
global configuration mode
Guidance:
Example:
hostname(config)# ips log aggregation by-src
System will only record the IP address of the HTTP proxy and not the real IP address of the
threat source in threat log. After disabled, system will parse the HTTP header to obtain the real IP
address of the threat source, and display the real IP address of the threat source in threat log.
Command:
ips log http-proxy-ip { enable | disable }
Description:
ips mode
Specify the IPS work mode. The system supports the IPS online emulation mode and IPS mode.
Command:
ip s mo de {ip s | ip s-lo go n ly}
Description:
ips - Uses the IPS mode. Besides providing the warnings and logs for the abnormal protocols and
network attacks, the system can perform the block or reset operation to the discovered attacks.
ips-logonly - Uses the IPS online emulation mode. The system provides the warnings and logs for
the abnormal protocols and network attacks, and cannot perform the block or reset operation to
the discovered attacks.
Default values:
IPS mode
Mode:
global configuration mode
Guidance:
Non-root VSYS does not support this command.
Example:
hostname(config)# ip s mo de ip s-lo go n ly
Create an IPS profile and enter the IPS Profile configuration mode. If the specified name already
exists, the system will enter the IPS Profile configuration mode directly. Use the no form to
delete the specified IPS Profile.
Command:
ip s p ro file {n o -ip s | p redef_default | p redef_lo o se | predef_critical | profile-name }
n o ip s p ro file profile-name
Description:
no-ips - Use the predefined IPS profile named no ips. Theno ips includes no IDS signatures
predef_default - Use the predefined IPS profile named predef_default. The predef_default rule is
configured with IPS signatures of medium and high confidence levels, this rule can be used to
detect threats and perform the default rule action.
predef_loose - Use the predefined IPS profile named predef_loose. Thepredef_loose rule is con-
figured with all the IPS signatures and its default action is log only.
predef_critical - Use the predefined IPS profile named predef_critical. The predef_critical rule is
configured with IPS signatures of the latest high-risk attacks and its default action is reset.
profile-name - Specifies the name of the IPS Profile. The system supports up to 64 user-defined
IPS rules and each non-root VSYS supports up to 4 user-defined IPS rules.
Default values:
None
Mode:
global configuration mode
Guidance:
Non-root VSYS also supports predefined IPS Profiles.
Example:
hostname(config)# ip s p ro file test
hostname(config-ips-profile)#
l When a certain signature is disabled, it is the disabled status in the signature set as well.
Example:
hostname(config)# ip s sign ature 160009 disab le
ips sigset
Use the existing pre-defined protocol as a template and create a user-defined protocol based on
this template. Enter the protocol configuration mode. If the specified name already exists, the sys-
tem will enter the protocol configuration mode directly. Use the no form to delete the specified
protocol.
Command:
ip s sigset sigset-name [temp late {dh cp | dn s | fin ger | ftp | h ttp | imap | ldap | msrp c |
mssql | mysql | n etb io s | n n tp | o racle | o th er-tcp | o th er-udp | p o p 3 | smtp | sn mp | sun -
rp c | teln et | tftp | vo ip }]
l The user-defined protocol cannot have the same name as the predefined protocol.
l Protocols of the same type cannot be added to one IPS Profile. For example, two protocols
created based on the HTTP template cannot be added to one IPS Profile.
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
hostname(config-http-sigset)#
Create the UA whitelist entry for the Suspicious UA Detection function. When a whitelist entry
is created, the system will not perform suspicious UA detection for traffic matching the UA string
in the whitelist. You can add both predefined and user-defined UA strings to the UA whitelist.
Use the no form of the command to delete specified UA whitelist entry.
Commands:
ips suspicious-ua-detection whitelist string
no ips suspicious-ua-detection whitelist string
Description:
Add the customized User-Agent string for the Suspicious UA Detection function. When a user-
defined UA string is added, the system checks for the added UA string and applies corresponding
action if it is detected as suspicious. You can add up to 16 pieces user-defined UAs. Use the no
form of the command to delete specified user-defined UA string.
Commands:
ips suspicious-ua-detection user-define string
no ips suspicious-ua-detection user-define string
Description:
string - Specifies the customized UA string. The value range is 1-31 characters.
Default values:
None
Mode:
global configuration mode
Guidance:
None
Example:
hostname(config)# ips suspicious-ua-detection user-define abc
Configure the white list for IPS. The system will release data packets that match the IPS whitelist,
no longer detect and defend, thereby reducing the rate of false reports of threats. IPS whitelist
matching criteria include source address, destination address, signature ID, and VRouter. The user
needs to configure at least one condition; when the user configure multiple conditions, the data
packets need to meet all the conditions and then the system will release. Use the no form to
delete the specified white list.
Command:
ips whitelist list-name
no ips whitelist list-name
Description:
list-name- Specifies the name of IPS whitelist.The length of it ranges from 1 to 255.
Default values:
None
Mode:
global configuration mode
Guidance:
None
Example:
hostname(config)# ip s wh itelist wh ite1
hostname(config-ips-whitelist)#
issue-date
Configure the issue-date parameter to include signatures, issued in the specified year, in the filter
rule.
Command:
issue-date year
no issue-date year
hostname(config-ips-profile)# filter-class 1
length
Specify the length criterion of the password. If a password is shorter than the length criterion, it
will be detected as a weak password.
Command:
lengthnumber
Description:
number - Specify the length criterion of the password. The range of length criterion is from 6 to
50 characters.
Default values:
number - 6 characters
Mode:
Weak Password Detection configuration mode
Guidance:
None
hostname(config-ips-profile-weakpass)# en ab le
max-arg-length
Specify the maximum length for the POP3 client command parameters and the action performed
when discovering this kind of anomaly. Use the no form to restore the length setting to the
default value.
Command:
max-arg-len gth length action { block-ip { permanent | second timeout | hour timeout
| day timeout }| block-service { permanent | second timeout | hour timeout | day
timeout }| log-only | reset }
no max-arg-length (Restore the length to the default value)
Description:
length - Specifies the maximum length for the POP3 client command parameters (in byte).
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies the protection
action is to block the IP address of the attacker, and specifies the block duration.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-bind-length
Specify the allowed maximum length for the MSRPC binding packet and the action performed
when discovering this kind of anomaly . Use the no form to restore the length setting to the
default value.
Command:
max-bind-length length action { block-ip { permanent | second timeout | hour timeout
| day timeout }| block-service { permanent | second timeout | hour timeout | day
timeout }| log-only | reset }
no max-bind-length- Restore the length to the default value.
Description:
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-black-list
Specify the maximum number of URLs that a Web server black list can contain. When a user
accesses a statistic page, the system will add the URL of this page to the black list if the system
discovers that the contents in this page violate the external link check and the uploading path
check. When a user accesses this statistic page again, the URL will hit the black list, thus, improv-
ing the processing speed of the system. Use the no form to cancel the above setting.
Command:
max-black-list size
no max-black-list
Description:
size - Specifies the maximum length of URLs that a Web server black list can contain.
Default values:
0
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
max-cmd-line-length
Specify the maximum length of the FTP command line/POP3 client command line/SMTP client
command line and the action performed when discovering this kind of anomaly . When calculating
the length, both the line feed and carriage return are calculated. Use the no form to restore the
length setting to the default value.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-content-filename-length
Specify the allowed maximum length of the attachment name of SMTP emails and the action per-
formed when discovering this kind of anomaly. Use the no form to restore the length setting to
the default value.
Command:
max-content-filename-length length action { block-ip { permanent | second timeout |
hour timeout | day timeout }| block-service { permanent | second timeout | hour
timeout | day timeout }| log-only | reset }
no max-content-filename-length- Restore the length to the default value.
Description:
length - Specifies the maximum length of the attachment name of SMTP emails (in byte). The
value ranges from 64 to 1024.
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies the protection
action is to block the IP address of the attacker, and specifies the block duration.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
log-onlyRecord a log.
resetReset connections (TCP) or sends destination unreachable packets (UDP) and also generates
logs.
Default values:
length - 128 bytes
Mode:
protocol configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset smtp -cus temp late smtp
max-content-type-length
Specify the allowed maximum length of the SMTP Content-Type value and the action performed
when discovering this kind of anomaly. Use the no form to restore the length setting to the
default value.
Command:
max-co n ten t-typ e-len gth length action { block-ip { permanent | second timeout | hour
timeout | day timeout }| block-service { permanent | second timeout | hour timeout |
day timeout }| log-only | reset }
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-failure
For each POP3/SMTP session, specify the allowed maximum number of times of errors returned
from POP3/SMTP server and the action performed when discovering this kind of anomaly. Use
the no form to restore the setting to the default value.
Command:
max-failure times action { block-ip { permanent | second timeout | hour timeout | day
timeout }| block-service { permanent | second timeout | hour timeout | day timeout }|
log-only | reset }
no max-failure- Restore the number of times to the default value.
Description:
times - For each POP3 session, specifies the allowed maximum number of times of errors
returned from the POP3 server. The value ranges from 0 to 512.
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies the protection
action is to block the IP address of the attacker, and specifies the block duration.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-input-length
Specify the allowed maximum length of Telnet username and the action performed when dis-
covering this kind of anomaly. Use the no form to restore the setting to the default value.
Command:
max-in p ut-len gth length action { block-ip { permanent | second timeout | hour timeout
| day timeout }| block-service { permanent | second timeout | hour timeout | day
timeout }| log-only | reset }
no max-input-length- Restore the number of times to the default value
Description:
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-path-length
Specify the allowed maximum length of two SMTP client commands, i.e. reverse-path and for-
ward path and the action performed when discovering this kind of anomaly. Use the no form to
restore the setting to the default value.
Command:
max-p ath -len gth length action { block-ip { permanent | second timeout | hour timeout
| day timeout }| block-service { permanent | second timeout | hour timeout | day
timeout }| log-only | reset }
no max-path-length- Restore the length setting to the default value
Description:
length - Specifies the maximum length of two SMTP client commands, i.e. reverse-path and for-
ward path (in byte). The value ranges from 16 to 512, including punctuation marks.
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies the protection
action is to block the IP address of the attacker, and specifies the block duration.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-reply-line-length
Specify the allowed maximum length of SMTP server responses and the action performed when
discovering this kind of anomaly. When calculating the length, both the carriage return and line
feed are calculated. Use the no form to restore the setting to the default value.
Command:
max-rep ly-lin e-len gth length action { block-ip { permanent | second timeout | hour
timeout | day timeout }| block-service { permanent | second timeout | hour timeout |
day timeout }| log-only | reset }
no max-reply-line-length- Restore the length setting to the default value
Description:
length - Specifies the maximum length of SMTP server responses (in byte). The value ranges from
64 to 1024.
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies the protection
action is to block the IP address of the attacker, and specifies the block duration.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
Specify the allowed maximum length of MSRPC request packets and the action performed when
discovering this kind of anomaly. Use the no form to restore the setting to the default value.
Command:
max-request-len gth length action { block-ip { permanent | second timeout | hour timeout
| day timeout }| block-service { permanent | second timeout | hour timeout | day
timeout }| log-only | reset }
no max-request-length- Restore the length setting to the default value
Description:
length - Specifies the maximum length of MSRPC request packets (in byte). The value ranges
from 16 to 65535.
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies the protection
action is to block the IP address of the attacker, and specifies the block duration.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-rsp-line-length
Specify the allowed maximum length of FTP responses and the action performed when dis-
covering this kind of anomaly. Use the no form to restore the setting to the default value.
Command:
max-rsp-line-length lengthaction {block-ip {permanent | second timeout | hour timeout |day
timeout}| block-service {permanent |second timeout | hour timeout | day timeout}| log-only |
reset}
no max-rsp-line-length- Restore the length setting to the default value.
Description:
length - Specifies the maximum length of FTP responses (in byte). The value ranges from 5 to
1024.
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies the protection
action is to block the IP address of the attacker, and specifies the block duration.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
Specify the maximum length of scanning. Use the no form to restore the setting to the default
value.
Command:
max-scan-bytes length
no max-scan-bytes
Description:
length - Specifies the maximum length of scanning (in byte).
Default values:
length – 4096
Mode:
protocol configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset test1 temp late o th er-tcp
max-text-line-length
Specify the allowed maximum length of the email text in SMTP client and the action performed
when discovering this kind of anomaly. When calculating the length, both the carriage return and
line feed are calculated. Use the no form to restore the setting to the default value.
Command:
max-text-lin e-len gth length action { block-ip { permanent | second timeout | hour
timeout | day timeout }| block-service { permanent | second timeout | hour timeout |
day timeout }| log-only | reset }
no max-text-line-length- Restore the length setting to the default value
Description:
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-uri-length
Specify the allowed maximum length of the HTTP URL and the action performed when dis-
covering this kind of anomaly. Use the no form to restore the setting to the default value.
Command:
max-uri-len gth length action { block-ip { permanent | second timeout | hour timeout
| day timeout }| block-service { permanent | second timeout | hour timeout | day
timeout }| log-only | reset }
no max-uri-length- Restore the length setting to the default value
Description:
length - Specifies the allowed maximum length of URL (in byte). The value ranges from 64 to
4096.
block-ip {permanent|second timeout |hour timeout | day timeout} - Specifies the protection
action is to block the IP address of the attacker, and specifies the block duration.
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
max-white-list
Specify the maximum number of URLs that a Web server white list can contain. When a user
accesses a statistic page, the system will add the URL of this page to the white list if the system
discovers that the contents in this page do not violate the external link check and the uploading
path check. When a user accesses this statistic page again, the URL will hit the white list, thus,
improving the processing speed of the system. Use the no form to cancel the above setting.
Command:
max-white-list size
no max- white-list
Description:
length- Specify the maximum number of URLs that a Web server white list can contain. The value
ranges from 0 to 4096.
Default values:
0
Mode:
Web server configuration mode
min-character-type
Specify how many character types should be covered in the password. If the character types
covered in a password are less than the specified number, the password will be detected as a weak
password.
Command:
min-character-typenumber
Description:
number - Specify how many character types should be covered in the password. Value range is
from 1 to 4 types.
Default values:
number - 2 types
Mode:
Weak Password Detection configuration mode
Guidance:
None
Examples:
hostname(config)# ip s p ro file test
hostname(config-ips-profile-weakpass)# en ab le
When the traffic matches the signatures configured in a filter rule or a search rule, the system will
capture the packets of the traffic.
Command:
pcap enable
pcap disable
Description:
enable - Capture the abnormal packets. You can view them in the threat log.
disable -Do not capture the abnormal packets.
Default values:
disable。
Mode:
Filter rule configuration mode;
search rule configuration mode.
Guidance:
None
Example:
hostname(config)# ip s p ro file test
hostname(config-ips-profile)# p cap en ab le
protocol-check
Enable the protocol legality check for the signature set and configure the strictness level for the
protocol legality check.
Command:
protocol-check disable
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
protocol
Configure the protocol parameter to include signatures, related to the specified protocol, in the fil-
ter rule.
Command:
p ro to co l {DNS | FTP | HTTP | …}
Description:
DNS | FTP | HTTP | … - Enter the protocol name. You can press the Tab key after the pro-
tocolparameter to see the entire protocol list.
Default values:
None
Mode:
Filter rule configuration mode;
Guidance:
None
Example:
hostname(config)# ip s p ro file test
hostname(config-ips-profile)# filter-class 1
hostname(config-ips-filter-class)# p ro to co l Teln et
Configure the exception URL for the Web server. Once configured, the URL can refer to the Web
site, and the other unadded cannot reference the Web site. Use the no form to delete the URL.
Command:
referrer-white-list url_string
no referrer-white-list url_string
Description:
url_string - Specifies tht exception URL for Web server. The length of URL is in the range of 1-
255 characters.
Default values:
None
Mode:
Web server configuration mode
Guidance:
You can configure up to 32 URL paths.
Example:
hostname(config)# ips sigset test_http template http
referer-white-list-check
Enable the referer checking function and configure it. After the configuration, the system can
reset the connection or record log for the HTTP Request of the hotlinking and CSRF (Cross Site
Request Forgery) attack.Use the no form to disable the function.
Command:
referrer-white-list-check enable action {log | reset}
no referrer-white-list-check enable
l reset: If discovering the hotlinking and CSRF attack, the system resets the connection (TCP)
or sends the packets (UDP) to notify the unreachable destination and generate the logs.
l log: If discovering the hotlinking and CSRF attack, the system only generates the logs.
Default values:
None
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset test_h ttp temp late h ttp
response-bypass
reverse-shell
Enable the rebound shell detection function. With this function enabled, the system detects and
defends against rebound shell attacks. If a rebound shell attack is detected, the system will defend
it based on user-defined actions. Use the no form of this command to disable the rebound shell
detection function.
Command:
reverse-shell enable
no reverse-shell enable
Description:
None
Default values:
By default, this function is disabled.
Mode:
IPS Profile configuration mode
Guidance:
None
Examples:
hostname(config)# ips profile test
Specifies the defend action against the rebound shell attacks. With the rebound shell detection
function enabled, the system detects and defends against rebound shell attacks. If a rebound shell
attack is detected, the system will defend it based on user-defined actions.
Command:
reverse-shellaction {log-only | reset | block-ip {permanent | secondtimeout | hourtimeout |
daytimeout}}
Description:
action {log-only | reset | block-ip {permanent | secondtimeout | hourtimeout | daytimeout}}-
Specifies the defend action against the rebound shell attacks.
l log-only - With this parameter specified, the system only generate logs when it detects the
rebound shell attacks.
l reset - With this parameter specified, when a rebound shell attack is detected, the system
resets connection (TCP) or sends destination unreachable packets (UDP), and then generates
logs.
Default values:
log-only
Mode:
IPS Profile configuration mode
Guidance:
reverse-shell level
Specifies the defend mode for the rebound shell attacks. With the rebound shell detection func-
tion enabled, the system scans to detect keywords of the rebound shell attack and you need to spe-
cify the defend mode for the rebound shell attacks.
Command:
reverse-shelllevel {high | low}
Description:
level {high | low}- Specifies the defend mode for the rebound shell attacks.
l high - With this parameter specified, when the system scans to detect keywords of the
rebound shell attack, logs are reported when the keywords are hit more than twice. This mode
can be used in scenarios with high requirements for attack detection.
l low - With this parameter specified, when the system scans to detect keywords of the
rebound shell attack, logs are reported only when the keywords are hit more than four time.
This mode can be used in scenarios where high system performance is required.
Default values:
low
Mode:
IPS Profile configuration mode
Guidance:
search-class
When configuring a signature set, you can create a search rule. And in this search rule, you can spe-
cify the desired signatures by using search conditions. Use the following command to create a
search rule and enter into the search rule configuration mode. Use the no form to delete this rule.
Command:
search-class id name name
no search-class id
Description:
id -Specifies the ID of the search rule.
name name -Specifies the name of the search rule.
Default values:
None
Mode:
IPS Profile configuration mode.
Guidance:
None
Example:
hostname(config)# ip s p ro file test
When using a search condtion to search signatures, you can specify the information of the sig-
nature. The system will perform the fuzzy searching among the following fields: signature ID, sig-
nature name, CVE-ID, and signature description:
Command:
search-condition description
no search-condition description
Description:
description - Enter the information of the desired signatures.
Default values:
None
Mode:
Search rule configuration mode.
Guidance:
None
Example:
hostname(config)# ip s p ro file test
sensitive-file-scan action
Specify the protection action against the Sensitive File Scan attacks on Web servers. If an attacker
attempts to scan sensitive files on the Web server, the Web server returns a large number of
response packets with the status code "404". In this case, the system counts the number of 404
responses returned by the Web server per minute and conduct corresponding protection actions.
Command:
sensitive-file-scan action {block-ip{permanent|second timeout|hourtimeout|daytimeout} |
block-service{permanent|secondtimeout|hourtimeout| daytimeout} | log-only | reset}
log-only - Only generate logs when the signature of Sensitive File Scan is matched.
reset - When the signature of Sensitive File Scan is matched, reset the connection (TCP) or send
unreachable destination packets, and then generate logs.
Default value:
log-only。
Mode:
Web server configuration mode
Guidance:
If the Sensitive File Scan function for Web servers is enabled following the configurations made
with this command, the configuration still takes effect. However, if the Sensitive File Scan func-
tion for Web servers is disabled, you can make configurations with this command but the con-
figuration does not take effect.
Examples:
hostname(config)# ips sigset http1 template http
sensitive-file-scan enable
Enable the Sensitive File Scan function for Web servers. In Sensitive File Scan attacks, an
attacker traverses the sites in the Web server by using a file scanning tool. This way, the attacker
can obtain sensitive information of the Web server, such as the directory structure, background
files, and backup files. Use the no form of this command to disable the Sensitive File Scan func-
tion for Web servers.
Commands:
sensitive-file-scan enable
no sensitive-file-scan enable
Description:
None
Default values:
The Sensitive File Scan function for Web servers is disabled by default.
Mode:
Web server configuration mode
Guidance:
None
Examples:
hostname(config)# ips sigset http1 template http
hostname(config-http-sigset)# web-server www.abc.com
hostname(config-web-server)# sensitive-file-scan enable
sensitive-file-scan warning-value
Specifies the threshold for the system to defend against sensitive file scanning attacks. If the num-
ber of times that URL paths match sensitive file dictionaries per minute exceeds the threshold,
the system performs the user-specified protection actions.
serial-character-check
Enable /disable Continuous Character Detection. After this detection is enabled, a password that
has less than 10 characters, among which at least 8 characters are the same or in consecutive
sequence, will be detected as a weak password, such as 1aaaaaaaa, 1abcdefgh, a87654321.
Commands:
Enable: serial-character-check enable
Disable: serial-character-check disable
Description:
None
hostname(config-ips-profile-weakpass)# en ab le
severity
Configure the severity parameter to include signatures, related to the specified severity, in the fil-
ter rule.
Command:
severity {L o w | Medium | High }
Description:
Low | Medium | High - Enter the severity.
Default values:
None
Mode:
Filter rule configuration mode;
Guidance:
None
Example:
hostname(config-ips-profile)# filter-class 1
hostname(config-ips-filter-class)# severity L o w
signature id
Configure the signature id parameter to include signatures, related to the specified id, in the
search rule.
Command:
signature id id
no signature id id
Description:
id - Enter the signature ID.
Default values:
None
Mode:
search rule configuration mode
Guidance:
None
Example:
hostname(config)# ip s p ro file test
signature-id
Configure the signature ID for the IPS white list. Use the no form to delete the signature ID.
Command:
signature-id id
no signature-id id
sigset
Add the protocol configurations to the IPS Profile. Use the no form to delete the protocol congur-
ations from the IPS Profile.
Command:
sigset user-defined-profile
no sigset user-defined-profile
Description:
user-defined-profile - Adds the user-defined signature set to the IPS Profile.
Default values:
None
Mode:
IPS Profile configuration mode
Guidance:
None
Example:
sql-injection
Disable the SQL injection check. Use the no form to enable the SQL injection check.
Command:
sql-in jectio n {co o kie | p o st | referer | uri} disab le
Description:
{cookie | post | referer | uri} disable - Disables the specified SQL injection check, namely
HTTP Cookie, HTTP Post, HTTP Refer, or HTTP URI.
Default values:
None
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
sql-injection-check
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
log-only - Only generate logs when the signature of SQL injection is matched.
reset - When the signature of SQL injection is matched, reset the connection (TCP) or send
unreachable destination packets, and then generate logs.
Default values:
By default, the sensitivity level is low.
Mode:
Web server configuration mode
Guidance:
The severity level of the SQL injection attack is critical. Without configuring actions, the system
will only generate logs when discovering SQL injection attack.
Example:
src-ip
Configure the source IP address for the IPS white list. Use the no form to delete the IP address.
Command:
src-ip A.B.C.D | A.B.C.D/M
no src-ip
Description:
A.B.C.D | A.B.C.D/M - Specifies the source IP address for the IPS white list to match.
Default values:
None
Mode:
IPS white list configuration mode
Guidance:
None
Example:
hostname(config)# ips whitelist white1
suspicious-ua-detection
Enable /disable Suspicious UA Detection function. With this function enabled, the system can
detect suspicious information by identifying the User-Agent string in the HTTP packet.
Commands:
Enable: suspicious-ua-detection enable
Disable: suspicious-ua-detection disable
Description:
suspicious-ua-detection action
With the Suspicious UA Detection function enabled, use this command to specify corresponding
actions when the User-Agent string in the HTTP packet is detected as suspicious.
Command:
suspicious-ua-detection action {block-ip {permanent | secondtimeout | hourtimeout |
daytimeout} |block-service {permanent | secondtimeout | hourtimeout | daytimeout} | log-
only | reset}
Description:
block-ip - Specifies the protection action is to block the IP address of the attacker.
block-service - Specifies the protection action is to block the service of the attacker.
permanent - Specifies that the IP address or service of the attacker is blocked permanently.
secondtimeout | hourtimeout | daytimeout - Specifies the duration (by second/hour/day) for
blocking the IP address or service of the attacker. The value range is 60 to 3,600 seconds/ 1 to
24 hours/ 1 to 15 days.
log-only - Record a log.
reset - Reset connections (TCP) or sends destination unreachable packets (UDP) and also gen-
erates logs.
system
Configure the system parameter to include signatures, related to the specified system, in the filter
rule.
Command:
system {Windows | Linux | FreeBSD | …}
no system { Windows | Linux | FreeBSD | …}
Description:
Windows | Linux | FreeBSD | … - Enter the OS name. You can press the Tab key after the sys-
temparameter to see the entire system list.
Default values:
None
Mode:
Filter rule configuration mode;
Guidance:
None
Example:
hostname(config-ips-profile)# filter-class 1
hostname(config-ips-filter-class)# system L in ux
vr
Configure the VRouter for the IPS white list. Use the no form to delete the IP address.
Command:
vr vr-name
no vr
Description:
vr-name - Specifies the VRouter for the IPS white list to match.
Default values:
None
Mode:
IPS white list configuration mode
Guidance:
None
Example:
hostname(config)# ips whitelist white1
hostname(config-ips-whitelist)# vr trust-vr
web-acl
Configure the Web site path and specify the attributes. Use the no form to disable the function.
Command:
web-acl url {static | deny}
no web-acl url
Description:
l static- With this attribute specified, the resources in this Web site path can only be accessed
as static resources (pictures and text). Otherwise, the system will perform the actions based
on the configurations of the uploading path check function (web-acl-check enable action
{reset | log}).
l deny- With this attribute specified, the resources in this Web site path cannot be accessed.
Default values:
None
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ips sigset http1 template http
web-acl-check
Enable the uploading path check function to prevent the attacker from uploading malicious codes
to the Web server. Use the no form to disable the function.
Command:
web-acl-check enable action {reset | log}
no web-acl-check enable
Description:
reset | log - Specifies the control action for the Web site uploading behavior:
l log– If discovering the Web site uploading behavior, the system only generates the logs.
Default values:
None
Mode:
Web server configuration mode
Guidance:
The severity level of the Web site uploading behavior is warnings.
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
web-server
Create a Web server and enters the Web server configuration mode. If the name already exists, the
system will enter the Web server configuration mode directly. Use the no form to delete the Web
server.
Command:
web-server {default | server_name}
no web-server server_name
Description:
default - Configure the default Web server. When creating a HTTP signature set, the system will
create a default Web server.
server_name - Specifies the name for the created Web server. You can specify up to 21 characters.
Default values:
None
l You can configure up to 32 Web servers (excluding the default Web server) for each signature
set.
Example:
hostname(config)# ip s sigset test_h ttp temp late h ttp
hostname(config-web-server)#
xss-injection
Disable the XSS injection check. Use the no form to enable the XSS injection check.
Command:
xss-ch eck {co o kie | p o st | referer | uri} disab le
Description:
{cookie | post | referer | uri} disable - Disables the specified XSS injection check, namely
HTTP Cookie, HTTP Post, HTTP Refer, or HTTP URI.
Default values:
None
Mode:
Web server configuration mode
Guidance:
None
Example:
hostname(config)# ip s sigset h ttp 1 temp late h ttp
xss-check enable
l second timeout | hour timeout | day timeout - Specifies the duration (by second/hour/day)
for blocking the IP address of the attacker. The value range is 60 to 3,600 seconds/ 1 to 24
hours/ 1 to 15 days.
show ips
Total count: 53
=======================================================-
=====
Default actions:
test
-----------------------------------------------------------
Overview
There are various threat attacks in networks, such as Web server attacks ,DoS Flood attacks,
application layer attacks , Port/Server scan attacks , Amplification attacks, SSL attacks etc. These
threats have demonstrated a wide variety of abnormal behaviors. System provide an abnormal beha-
vior detection function based on security zones. This function inspects the sessions of the detec-
ted object in multiple factors. When one detected object has multiple abnormal parameters,
system will analyze the relationship among the abnormal parameters to see whether an abnormal
behavior formed. If there is an abnormal behavior, system will send the alarm message and gen-
erate the threat log(s).
The followings are the concept description of the Abnormal Behavior Detection:
l Detected object: The protected objects configured in the Host Defender in this chapter and
the protected objects configured in critical assets.
l Parameter: The basic statistical factor of a session, for example, the received bytes of inbound
sessions per second. The statistical values of the parameters are used by the system to judge
whether the detected object is abnormal or not.
l Baseline: The baseline is the benchmark for the parameters. Value of the baseline is calculated
by the system according to the historical data.
l Abnormal behavior model database: The abnormal behavior model database includes the abnor-
mal information of the traffic, which are detecting rules, description of the abnormalities, the
reason for the abnormalities, and the suggestions. The information in the database helps you
analyze and resolve the abnormal problems. By default, System will update the database at the
certain time everyday, and you can modify the update the updating settings according to your
own requirements. For more information about how to update, see Updating Abnormal Beha-
vior Model Database. To assure a proper connection to the default update server, you need to
configure a DNS server for system before updating
2. Import a StoneShield license and reboot. The abnormal behavior detection will be enabled
after the rebooting.
To enable the zone-based abnormal behavior detection function, in the zone configuration mode,
use the following command. By default, the abnormal behavior detection function will detect the
entire network covered by this security zone.
anomaly-detection [ host-enable [ advanced-protection ] [ ddos-protection ]] | [ forensic ]
l host-enable – Enable the Host Defender function for the specific zone, for each host which
is identified host name, establish a data model for each host which is identified host name, ana-
lyze the network behavior of host, and define the corresponding signature dimension for dif-
ferent network behavior, and then detect the abnormal behavior of the host based on the
signature dimension, to find the more hidden threat attack. When enabling the Host Defender
function, both the DDoS protection function and the abnormal behavior detection of the
HTTP factor are not enabled by default. To enable the abnormal behavior detection of the
HTTP factor, use the advanced-protection parameter. To enable the DDoS protection, use
the ddos-protection parameter, currently, you can defend against the following types of DDoS
attacks: Zip of Death, SSL DDoS, DDoS Flood, DDoS Sockstress, DDoS Reflect, Applic-
ation DDoS, and DNS Query Flood.
l forensic – Capture packets. If this parameter is specified, the system will save the evidence
messages.
To disable the function, in the zone configuration mode, use the following command:
n o an o maly-detectio n [h o st-en ab le [advan ced-p ro tectio n | ddo s-p ro tectio n ]][fo ren sic]
DNS as the domain name resolution protocol,is designed to resolve fixed domain names to IP
addresses.Due to the use of domain name is convenient, and is widely used, so the attacker will
take different means to use the domain name to generate attack. For example, A IP address can
correspond to multiple domain name, the server according to the Host field of HTTP packet to
find the Goal URL, the malware will use this feature by modifying the Host field to disguise the
domain name, and generate the abnormal behavior. DGA, is the domain generation algorithm, this
algorithm will generate a large number of pseudo random domain name, and will be used by mal-
ware. ISP DNS hijack, add some of the malicious domain name used by the malicious software to
its blacklist.
To solve these problem, DNS domain name analysis can be used as an important basis to determ-
ine the malicious behavior. System will monitor the DNS response packets after the abnormal
behavior detection function function is enabled, and establish the DNS mapping list, The DNS
mapping list is used to store domain names and IP addresses, the pseudo random domain name
generated by DGA algorithm, and the black and white domain name updated from the cloud. The
device can detect the malware and abnormal behavior attack according the DNS mapping, and gen-
erate the threat logs.
To view the number of domain name entries in DNS mapping, in any mode,use the following
commands:
show dns-mapping
To view the detection status of DOS attacks, in any mode,use the following commands:
show anomaly-detection ddos status
By default system updates the abnormal behavior model database everyday automatically. You can
change the update configuration as needed. The configurations of updating abnormal behavior
l Updating now
System supports both manual and automatic (periodicity) update modes. To configure an abnor-
mal behavior model update mode, in the global configuration mode, use the following command:
on mode {1 | 2}
To specify an automatic update period, in the global configuration mode, use the following com-
mand:
cloud abnormal-behavior-detection period period
l period - Specifies the automatic update period, the range is 600 to 86400 seconds.
Updating Now
For both manual and automatic update modes, you can update the abnormal behavior model data-
base immediately as needed. To update the abnormal behavior model database now, in any mode,
use the following command:
exec cloud abnormal-behavior-detection update
In some cases, your device may be unable to connect to the update server to update the abnormal
behavior model database. To solve this problem, system provides the abnormal behavior model
file import function, i.e., importing the abnormal behavior model files to the device from an FTP,
TFTP server or USB disk, so that the device can update the Abnormal Behavior model database
locally. To import the abnormal behavior model file, in the execution mode, use the following
command:
import cloud abnormal-behavior-detection from { ftp server ip-address [ user user-
name password password ] | tftp server ip-address } [ vrouter vr-name ] file-name
l user user-name password password – Specifies the username and password of the FTP
server.
l vrouter vr-name – Specifies the username and password of the FTP server.
l file-name – Specifies the name of the abnormal behavior model file that be imported.
To view the abnormal behavior model update information, in any mode, use the following com-
mand:
show cloud abnormal-behavior-detection update
Overview
Advanced Threat Detection , is on the basis of learning advanced threat detection signatures, to
analysis the suspicious traffic of host, detect malicious behavior to identify APT (Advanced Per-
sistent Threat) attack and generate the threat logs.
You need to update the malware behavior model database before enabling the function for the
first time. For more information about how to update, see Updating Malware Behavior Model
Database.
2. Import a StoneShield license and reboot. The advance threat detection will be enabled after
the rebooting.
To configure the advance threat detection based on zone, in zone configuration mode, use the fol-
lowing command:
malware-detection [ forensic ]
l forensic – Capture packets. If this parameter is specified , the system will save the evidence
messages, and support to download it.
To disable the function, in the zone configuration mode, use the following command:
no malware-detection [ forensic ]
l Updating now
System supports both manual and automatic (periodicity) update modes. To configure a malware
behavior model update mode, in the global configuration mode, use the following command:
cloud advanced-threat-detection mode {1 | 2}
To specify an automatic update period, in the global configuration mode, use the following com-
mand
cloud advanced-threat -detection period period
l period - Specifies the automatic update period, the range is 600 to 86400 seconds.
For both manual and automatic update modes, you can update the malware behavior model data-
base immediately as needed. To update the malware behavior model database now, in any mode,
use the following command:
exec cloud advanced-threat -detection update
l exec cloud advanced-threat-detection update – Only updates the incremental part between
the current malware behavior model database and the latest malware behavior model database
released by the update server.
In some cases, your device may be unable to connect to the update server to update the malware
behavior model database. To solve this problem, system provides the malware behavior model file
import function, i.e., importing the malware behavior model files to the device from an FTP,
TFTP server or USB disk, so that the device can update the malware behavior model database loc-
ally. To import the malware behavior model file, in the execution mode, use the following com-
mand:
imp o rt clo ud advan ced-th reat -detectio n fro m {ftp server ip-address [user user-name p ass-
wo rd password ] | tftp server ip-address } [vro uter vr-name ] file-name
l user user-name password password – Specifies the username and password of the FTP
server.
l vrouter vr-name – Specifies the username and password of the FTP server.
l file-name – Specifies the name of the malware behavior model file that be imported.
To view the malware behavior model update information, in any mode, use the following com-
mand:
show cloud advanced-threat -detection update
Overview
Perimeter Traffic Filtering can filter the perimeter traffic based on known risk IP, MAC or Service
list, and take logging/block action on the malicious traffic that hits the risk IP, MAC or Service
list.
The risk IP list includes the following three types:
l IP Blacklist: The system supports Static IP Blacklist, Blacklist Library, Dynamic IP Blacklist,
Real IP Blacklist, and Hit Statistics.
l Service Blacklist: After adding the services to the service blacklist, system will perform the
block action to the service until the block duration ends.
l MAC Blacklist: After adding the MAC of the host to the blacklist to prevent users from
accessing the network during the specified period.
l IP Reputation list: Retrieve the risk IP (such as Botnet, Spam, Tor nodes, Compromised,
Brute-forcer, and so on.) list from the Perimeter Traffic Filtering signature database.
l Configuration: Blacklist global configuration, including Blacklist Log and Session Rematch.
You need to update the IP reputation database before enabling the IP Reputation function for the
first time. For more information about how to update, see Updating IP Reputation Database.
To enable the perimeter traffic filtering and enter the perimeter traffic filtering configuration
mode, in config configuration mode, use the following command:
The static IP blacklist will block specified IP address or prevent hosts from accessing the net-
work during the specified period.
To configure the static IP blacklist, in the perimeter traffic filtering configuration mode, use the
following command:
blacklist ip id id{ address { address-book address-book | start-ip end-ip |ip-prefix/mask } |user
[ user | user-group | role ] server-nameuser-name } [vrouter vrouter-name] | [zone zone-name]
[schedule schedule-name] [enable | disable]
l address-book address-book - Specify the reference address book name of the static IP black-
list.
l start-ip end-ip - Specify the IPv4/IPv6 address range of the static IP blacklist.
l ip-prefix/mask - Specifies the IP address and the netmask of the static IP blacklist.
l user [ user | user-group | role ]- Specifies the user type of the static IP blacklist, include user,
user group or role.
l server-name- Specifies the AAA server name that the user belongs to.
l schedule schedule-name - Specifies the schedule that has been configured in the system. If
this parameter is specified, the system will block the host from accessing the network during
the specified period; if this parameter is not specified, the system will permanently block the
l enable | disable – Enables or disables the static IP blacklist. By default, all the entries in the
static IP blacklist are enabled.
To delete the static IP blacklist entry, in the perimeter traffic filtering configuration mode, use the
following command:
no blacklist ip id id
To view the static IP blacklist information, in any mode, use the following command:
show perimeter-traffic-filtering blacklist ip
The system supports to check the conflicts among blacklists. You can check whether the black-
lists overshadow each other.
To configure redundancy check ofthe static IP blacklist, in any mode,use the following command:
exec perimeter-traffic-filtering blacklist-ip redundancy-check start
To stop redundancy check of the static IP blacklist, in any mode, use the following command:
exec perimeter-traffic-filtering blacklist-ip redundancy-check stop
To view the result of redundancy check, in any mode, use the following command:
show perimeter-traffic-filtering blacklist-ip redundancy
To clear the the result of redundancy check, in any mode, use the following command:
exec perimeter-traffic-filtering blacklist-ip redundancy-check clear
After adding the MAC of the host to the blacklist to prevent users from accessing the network dur-
ing the specified period.
l address address - Specifies the MAC address of the host that will be added to the blacklist.
l schedule schedule-name - Specifies the schedule that has been configured in the system. If
this parameter is specified, the system will block the host from accessing the network during
the specified period; if this parameter is not specified, the system will permanently block the
host from accessing the network. For more information about how to create a schedule, see
“Creating a Schedule” of “System Management”.
l enable | disable – Enables or disables the MAC blacklist. By default, all the entries in the
MAC blacklist are enabled.
To delete the blacklist entry, in the perimeter traffic filtering configuration mode, use the fol-
lowing command:
no blacklist macidid
To view the MAC blacklist information, in any mode, use the following command:
show perimeter-traffic-filtering blacklist ip
The system support to import/export the blacklist library file or update the blacklist from the spe-
cified server, and specify the rule of the blacklist library.
To configure the blacklist library, in the perimeter traffic filtering configuration mode, use the fol-
lowing command:
blacklist lib [vroutervrouter-name] | [zonezone-name] [enable | disable]
l enable | disable – Enables or disables the blacklist library. By default, the blacklist library are
enabled.
To import the blacklist library file , in the perimeter traffic filtering configuration mode, use the
following command:
import blacklist lib {add | cover} from {ftp server ip-address [user user-namepassword password]
| tftp server ip-address} [vrouter vrouter-name] file-name
l add | cover - Specify the update mode of blacklist library, add means Incremental Import,
cover means Overwrite Import.
l vrouter vrouter-name] - Specifies the VRouter of the FTP and TFTP server.
l file-name – Specifies the name of the blacklist library file that will be imported by using the
FTP or TFTP server.
l http | https – Specifies to use the HTTP or HTTPS server to update the blacklist library.
l url url– Specifies the URL of the HTTP or HTTPS server. The URL needs to be 1 to 255
characters in length. The URL of the HTTP server needs to start with "http://" and the URL
of the HTTPS server needs to start with "https://".
l vrouter vrouter-name - Specifies the VRouter to which the HTTP or HTTPS server belongs.
To export the blacklist library file , in the perimeter traffic filtering configuration mode, use the
following command:
export blacklist lib to {ftp server ip-address [user user-namepassword password] | tftp server ip-
address} [vrouter vrouter-name] file-name
l vrouter vrouter-name] - Specifies the VRouter of the FTP and TFTP server.
l file-name – Specifies the name of the blacklist library file that will be exported.
To configure an blacklist library auto update mode, in the perimeter traffic filtering configuration
mode, use the following command:
blacklist lib update {add | cover} from {ftp serverip-address [useruser-namepasswordpassword]
| tftp serverip-address} [vrouter vrouter-name] file-name
l vrouter vrouter-name] - Specifies the VRouter of the FTP and TFTP server.
l file-name – Specifies the name of the blacklist library file that will be imported.
To configure the frequency and time of auto update of the blacklist library, in the perimeter traffic
filtering configuration mode, use the following command:
blacklist lib update schedule {daily [HH:MM] | weekly {mon | tue | wed | thu | fri | sat | sun}
[HH:MM] | interval time-value}
l weekly {mon | tue | wed | thu | fri | sat | sun}– Updates the blacklist library every week.
Parameter mon | tue | wed | thu | fri | sat | sun is used to specify the specific date in a
week.
To clear the current blacklist library file and the current VSYS blacklist library loaded in memory,
in any mode, use the following command:
clear perimeter-traffic-filtering blacklist lib
To view the blacklist library information, in any mode, use the following command:
show perimeter-traffic-filtering blacklist lib
After adding the IP addresses to the global blacklist, system will perform the block action to the
IP address and service until the block duration ends.
To configure the dynamic IP blacklist, in the perimeter traffic filtering configuration mode, use
the following command:
exec block-ip add {{ip | ipv6} ip-address| user [ user | user-group | role ] server-name user-
name} [vrouter vrouter-name] [timeout timeout-value]
l {ip | ipv6} ip-address - Specifies the IP address to be blocked. Both IPv4 and IPv6 addresses
are supported.
l user [ user | user-group | role ] user-name - Specifies the user type to be blocked, including
user, user group, or role.
l server-name- Specifies the AAA server name to which the user belongs.
l timeouttimeout-value - Specifies the duration during which the IP address will be blocked.
The value ranges from 60 to 1,296,000 seconds. If block duration is not configured, by
default, the IP address will be blocked permanently.
To delete the blacklist entry, in the perimeter traffic filtering configuration mode, use the fol-
lowing command:
exec block-ip remove {ip | ipv6} ip-address [vroutervrouter-name]
To view the dynamic IP blacklist information, in any mode, use the following command:
show block-ip {ip | ipv6} ip-address
Generally, you can determine the IP address of the client by checking the HTTP packet.
However, if the proxy is configured on the client, the source IP contained in the HTTP packet
will be the IP address of the proxy server, rather than the real client IP address. In this case, when
an attack is detected, the system blocks the IP address of the proxy server, making all services
unavailable. To solve this problem, you can determine the real IP address of the client by parsing
the X-Forwarded-For and X-Real-IP fields in the HTTP packet. The X-Forwarded-For field is
used to record the real IP address of the client and the IP addresses of the proxy servers of dif-
ferent levels. The X-Real-IP field is only used to record the real IP address of the client.
After adding the real IP address of the client to the Real IP Blacklist, the system will perform the
block action to that IP address until the block duration ends.
To configure the real IP blacklist, in the global configuration mode, use the following command:
exec block-real-ip add {ip | ipv6} ip-address [vroutervrouter-name] [timeouttimeout-value]
l {ip | ipv6} ip-address - Specifies the IP address to be blocked. Both IPv4 and IPv6 addresses
are supported, but the IPv6 address can be specified only when the system version is IPv6.
l timeouttimeout-value - Specifies the duration during which the IP address will be blocked.
The value ranges from 60 to 1,296,000 seconds. If block duration is not configured, by
default, the IP address will be blocked permanently.
To delete the real IP blacklist entry, in the global configuration mode, use the following com-
mand:
exec block-real-ip remove {ip | ipv6} ip-address [vroutervrouter-name]
To view information about the real IP blacklist, in the global configuration mode, use the fol-
lowing command:
show block-real-ip [{ip | ipv6} ip-address]
After adding the services to the service blacklist, system will perform the block action to the ser-
vice until the block duration ends.
To configure the service blacklist, in the perimeter traffic filtering configuration mode, use the fol-
lowing command:
exec block-service add [src-ipsrc-ip | src-ipv6 src-ipv6 ] [dst-ipdst-ip | dst-ipv6 dst-ipv6 ]
[vroutervrouter-name] drt-portport-numberprotoprotocol[timeouttimeout-value]
l src-ipsrc-ip | src-ipv6 src-ipv6 - Specify the source IP address of the blocked service.
l dst-ipdst-ip | dst-ipv6 dst-ipv6 - Specify the destination IP address of the blocked service.
l vroutervrouter-name - Specify the virtual router that the IP address belongs to.
l drt-portport-number - Specify the port number of the blocked service. range is 1 to 65535.
l timeouttimeout-value - Specify the blocking duration of the blacklist. The value range is 60 to
1296000 seconds. When the duration is not configured, the default is permanent.
To delete the service blacklist, in the perimeter traffic filtering configuration mode, use the fol-
lowing command:
exec block-service remove [src-ipsrc-ip | src-ipv6 src-ipv6 ] [dst-ipdst-ip | dst-ipv6 dst-ipv6 ]
[vroutervrouter-name] drt-portport-numberprotoprotocol
To view the service blacklist information, in any mode, use the following command:
show block-servicevroutervrouter-name
To enable log of blacklist, in the perimeter traffic filtering configuration mode, use the following
command:
When you add, modify or delete the blacklist, the session will match the optimal blacklist again.
To configure session rematch of blacklist, in the perimeter traffic filtering configuration mode,
use the following command:
To view the hit count statistics information of blacklist, in any mode, use the following com-
mand:
show perimeter-traffic-filtering blacklist hit-info {all | ip ip-address [vroutervrouter-name |
zonezone-name]}
To clear the hit count statistics information of blacklist, in any mode, use the following command:
clear perimeter-traffic-filtering blacklist hit-info {all | ip ip-address [vroutervrouter-name |
zonezone-name]}
To view the blacklist log information, in any mode, use the following command:
show perimeter-traffic-filtering blacklist log
After the IP BlackList TCP Reset function is enabled, the system will send a TCP-RST packet to
the IP address of TCP traffic that hits the blacklist, thus blocking the IP address
To enable the IP BlackList TCP Reset function, in the perimeter traffic filtering configuration
mode, use the following command:
blacklist ip tcp-reset enable
To disable the IP BlackList TCP Reset function, in the perimeter traffic filtering configuration
mode, use the following command:
no blacklist ip tcp-reset enable
To view the status of the IP BlackList TCP Reset function, in any mode, use the following com-
mand:
show perimeter-traffic-filtering blacklist ip tcp-reset
By default StoneOS updates the IP reputation database everyday automatically. You can change
the update configuration as needed. The configurations of updating IP reputation database
include:
l Updating now
Notes: To upgrade the IP reputation database, install the IP reputation license and
reboot. The IP reputation database upgrade function is available only after the
device is reboot.
To enable the IP reputation filtering and enter the IP reputation filtering configuration mode, in
the perimeter traffic filtering configuration mode, use the following command:
ip-reputation
To enable the IP reputation filtering function and specifies an action for the malicious traffic that
hits the blacklist. In the IP reputation filtering configuration mode, use the following command:
category {bot | brute-forcer | compromised | ddos-attacker | proxy | scanner | spam |
tornode} action [drop | log-only | block-iptimeout}
l drop – Drop packets if the malicious traffic hits the IP Reputation list.
l log-only– Only generates logs if the malicious traffic hits the IP Reputation list.
To disable IP reputation filtering function, in the IP reputation filtering configuration mode,, use
the following command:
no category {bot | brute-forcer | compromised | ddos-attacker | proxy | scanner | spam |
tornode}
System supports both manual and automatic update modes. To configure an IP reputation update
mode, in the global configuration mode, use the following command:
ip-reputation update mode { auto | manual }
l auto – Specifies the automatic IP reputation update mode. This is the default mode.
To restore to the default mode, in the global configuration mode, use the following command:
no ip-reputation update mode
The system supports to update the signature database through HTTP and HTTPS, and the default
protocol is HTTPS. To configuring the update protocol as HTTP, in the global configuration
mode, use the following command:
geolocation-IP-signature update protocol HTTP
In the global configuration mode, use the command no geolocation-IP-signature update protocol
HTTP to restore the default value.
l server1 | server2 | server3 – Specifies the update server you want to configure. The IPv4
and IPv6 address are supported for configuring the update server address. The default value of
server1is update1.hillstonenet.com, and the default value of server2is update2.hill-
stonenet.com.
l ip-address | domain-name –Specifies the name of the update server. It can be an ip-addresss,
or a domain-name, for example, update1.hillstonenet.com.
To cancel the specified update the server, in the global configuration mode, use the following
command:
n o ip -rep utatio n sign ature up date {server1 | server2 | server3}
When the device accesses the Internet through a HTTP proxy server, you need to specify the IP
address and the port number of the HTTP proxy server. With the HTTP proxy server specified,
various signature database can update automatically and normally.
To specify the HTTP proxy server for the IP reputation signature database updating, use the fol-
lowing command in the global configuration mode:
ip -rep utatio n up date p ro xy-server {main | b ackup } ip-address port-number
l main | backup – Use the main parameter to specify the main proxy server and use the
backup parameter to specify the backup proxy server.
l ip-address port-number – Specify the IP address and the port number of the proxy server.
To cancel the proxy server configurations, use the no perimeter-traffic-filter update proxy-server
{main | backup}command.
By default, system automatically updates the IP reputation database every day. To reduce the
update server's workload, the time of daily update is random. To specify the schedule and specific
time for the update, in the global configuration mode, use the following command:
l weekly {mon | tue | wed | thu | fri | sat | sun} – Updates the database every week. Para-
meter mon | tue | wed | thu | fri | sat | sunis used to specify the specific date in a week.
l hourly minute – Updates the database every three hours. This option is the default update
schedule minuteis used to specify the specific minute in one hour.
l monthly date - Updates the database every month. Parameter date is used to specify the spe-
cific date in a month., the range is 1 to 31. If a month does not contain the specified date (eg,
there is no 30th in February), the database will not be automatically upgraded this month.
In some cases, your device may be unable to connect to the update server to update the IP repu-
tation database. To solve this problem, system provides the IP reputation file import function,
i.e., importing the IP reputation files to the device from an FTP, TFTP server or USB disk, so
that the device can update the IP reputation database locally. To import the IP reputation file, in
the execution mode, use the following command:
imp o rt ip -rep utatio n fro m {ftp server ip-address [user user-name p asswo rd password ] | tftp
server ip-address } [vro uter vr-name ] file-name
l user user-name password password – Specifies the username and password of the FTP
server.
You can view the IP reputation database information of the device as needed, including the IP
reputation database version, release dates, and the number of the IP reputation. To view IP repu-
tation database information, in any mode, use the following command:
show ip-reputation info
You can view the IP reputation update information of the device as needed, including the update
server information, update mode, update frequency and time, as well as the status of the IP repu-
tation database update. To view the IP reputation update information, in any mode, use the fol-
lowing command:
show ip-reputation update
Overview
The system can identify the potential risks and network attacks dynamically, and take action on
the risk that hits the mitigation rules.
Mitigation Rule
Tack auto mitigation action on the risk that hits the mitigation rules.
Mitigation rules includes the following two types:
l Predefined rule: this rule is retrieved from the Mitigation signature database. The predefined
rules may vary by different mitigation signature databases. About updating the signature data-
base, see Updating Mitigation Rule Database.
l User-defined rule: According to user needs, specify the trigger condition and action.
Notes:
l Mitigation rules only for the threat types of Scan,Dos and Spam
After enabling auto mitigation , mitigation rules (user-defined rule and predefined rule) to be able
to take effect.
Only supports to use WebUI to configuring the mitigation rule, see StoneOS_WebUI_User_
Guide.
To view the status of auto mitigation, in any mode, use the following command:
show mitigation-status
l Updating now
System supports both manual and automatic (periodicity) update modes. To configure a mitigation
rule update mode, in the global configuration mode, use the following command:
clo ud mitigatio n mo de {1 | 2}
To specify an automatic update period, in the global configuration mode, use the following com-
mand:
cloud mitigation period period
l period - Specifies the automatic update period, the range is 600 to 86400 seconds.
Updating Now
For both manual and automatic update modes, you can update the mitigation rule database imme-
diately as needed. To update the mitigation rule database now, in any mode, use the following
command:
exec cloud mitigation update
l exec cloud mitigation update – Only updates the incremental part between the current mit-
igation rule database and the latest mitigation rule database released by the update server.
In some cases, your device may be unable to connect to the update server to update the mit-
igation rule database. To solve this problem, StoneOS provides the malware behavior model file
import function, i.e., importing the mitigation rule files to the device from an FTP, TFTP server
l user user-name password password – Specifies the username and password of the FTP
server.
l vrouter vr-name – Specifies the username and password of the FTP server.
l file-name – Specifies the name of the mitigation rule file that be imported.
To view the mitigation rule update information, in any mode, use the following command:
show cloud mitigation update
l name – Specify the critical asset name and enter into the critical asset object configuration
mode. If the name already exists, the system will enter into the critical asset object con-
figuration mode directly.
l zone-name – Specify the security zone where the critical asset locates. The system will auto-
matically enable the advanced threat detection and abnormal behavior detection functions of
this security zone.
l Web Vulnerability Scan: A web vulnerability scanner is a program which communicates with a
web application through the web front-end in order to identify potential security vul-
nerabilities in the web application and architectural weaknesses.
l Http-based DoS Attack: Denial of service (DoS) usually refers to an attack that attempts to
make a computer resource unavailable to its intended users by flooding a network or server
l Web Spider : A Web spider is an internet bot that systematically browses the World Wide
Web, typically for the purpose of Web indexing. Web search engines and some other sites use
web spider to update their web content or indexes of others sites' web content. Web spider s
can copy all the pages they visit for later processing by a search engine that indexes the down-
loaded pages so that users can search them much more quickly.
To enable the function, in the critical asset object configuration mode, use the following com-
mand:
mark-webserver
To disable the function, in the critical asset object configuration mode, use the following com-
mand:
no mark-webserver
To disable the Hot Threat Intelligence Pushing , in the global configuration mode, use the fol-
lowing commands:
Overview
System can display the incoming threat map via WebUI. You can view the selected threat or risky
host region. You need to update the geolocation information database before use this function for
the first time.
Notes: Only support to update the geolocation information database via CLI cur-
rently.
l Updating now
System supports both manual and automatic update modes. To configure a geolocation inform-
ation database update mode, in the global configuration mode, use the following command:
geolocation-IP-signature update mode { auto | manual }
l auto – Specifies the automatic geolocation information database update mode. This is the
default mode.
To restore to the default mode, in the global configuration mode, use the following command:
no geolocation-IP-signature update mode
The system supports to update the signature database through HTTP and HTTPS, and the default
protocol is HTTPS. To configuring the update protocol as HTTP, in the global configuration
mode, use the following command:
geolocation-IP-signature update protocol HTTP
In the global configuration mode, use the command no geolocation-IP-signature update protocol
HTTP to restore the default value.
l ip-address | domain-name – Specifies the name of the update server. It can be an ip-address,
or a domain-name, for example, update1.hillstonenet.com.
To cancel the specified update the server, in the global configuration mode, use the following
command:
no geolocation-IP-signature update { server1 | server2 | server3 }
When the device accesses the Internet through a HTTP proxy server, you need to specify the IP
address and the port number of the HTTP proxy server. With the HTTP proxy server specified,
various signature database can update automatically and normally.
To specify the HTTP proxy server for the geolocation information database updating, use the fol-
lowing command in the global configuration mode:
geolocation-ip-signature update proxy-server { main | backup } ip-address port-num-
ber
l main | backup – Use the main parameter to specify the main proxy server and use the
backup parameter to specify the backup proxy server.
l ip-address port-number – Specify the IP address and the port number of the proxy server.
To cancel the proxy server configurations, use the no geolocation-ip-signature update proxy-
server {main | backup} command.
By default, system automatically updates the geolocation information database every day. To
reduce the update server’s workload, the time of daily update is random. To specify the
l weekly {mon | tue | wed | thu | fri | sat | sun} – Updates the database every week. Para-
meter mon | tue | wed | thu | fri | sat | sunis used to specify the specific date in a week.
l monthly date - Updates the database every month. Parameter date is used to specify the spe-
cific date in a month., the range is 1 to 31. If a month does not contain the specified date (eg,
there is no 30th in February), the database will not be automatically upgraded this month.
Updating Now
For both manual and automatic update modes, you can update the geolocation information data-
base immediately as needed. To update the geolocation information database now, in any mode,
use the following command:
exec geolocation-IP-signature update [full]
l exec geolocation-IP-signature update – Only updates the incremental part between the cur-
rent geolocation information database and the latest geolocation information database released
by the update server.
In some cases, your device may be unable to connect to the update server to update the geo-
location information database. To solve this problem, StoneOS provides the geolocation inform-
ation database file import function, i.e., importing the geolocation information database files to
l user user-name password password – Specifies the username and password of the FTP
server.
l file-name – Specifies the name of the geolocation information database file that be imported.
You can view the geolocation information database information of the device as needed, including
the geolocation information database version, release dates, and the number of the geolocation
informations. To view geolocation information database information, in any mode, use the fol-
lowing command:
show geolocation-IP-signature info
You can view the geolocation information database update information of the device as needed,
including the update server information, update mode, update frequency and time, as well as the
status of the geolocation information database update. To view the geolocation information data-
base update information, in any mode, use the following command:
show geolocation-IP-signature update
Notes: The botnet prevention function is controlled by license. To use the botnet
prevention function, install the Botnet C&C Prevention license.
Preparing
Before enabling botnet prevention, make the following preparations:
2. Import a botnet C&C prevention license and reboot. The botnet prevention will be enabled
after the rebooting.
To view the status of the botnet prevention function, use the command show version. To enable
or disable the botnet prevention function, in any mode, use the following command:
exec botnet-c2-prevention { enable | disable }
2. Define a botnet prevention profile, and specify the protocol types, the actions for the bot-
net in the profile.
3. Bind the botnet prevention profile to an appropriate policy rule or security zone.
Notes: You need to update the botnet prevention signature database before enabling
the function for the first time. For more information about how to update, see
Updating Botnet Prevention Signature Database. To assure a proper connection to
the default update server, you need to configure a DNS server for system before
updating.
The botnet prevention profile specifies the protocol types and the actions for botnet. To create a
botnet prevention Profile, in the global configuration mode, use the following command:
botnet-c2-prevention profile profile-name
l profile-name - Specifies the botnet prevention profile name and enters the botnet prevention
profile configuration mode. If the specified name exists, then the system will directly enter
the botnet prevention profile configuration mode.
To delete the specified botnet prevention profile, in the global configuration mode, use the com-
mand no botnet-c2-prevention profile-name.
To specify a protocol type, in the botnet prevention profile configuration mode, use the following
command:
l sinkhole-replace - When the protocol type is DNS, you can specify the processing
action as "Sinkhole Address Replacement". After the threat is discovered, the system
will replace the IP address in the DNS response packet with the Sinkhole IP address.
To cancel the specified protocol type, in the botnet prevention profile configuration mode, use
the following command:
n o b o tn et-c2-p reven tio n p ro to co l {tcp | h ttp | dn s }
DNS as the domain name resolution protocol, is designed to resolve fixed domain names to IP
addresses. Due to the use of domain name is convenient, and is widely used, so the attacker will
take different means to use the domain name to generate attack. For example, A IP address can
correspond to multiple domain name, the server according to the endpoint field of HTTP packet
to find the Goal URL, the malware will use this feature by modifying the endpoint field to dis-
guise the domain name, and generate the abnormal behavior. DGA, is the domain generation
algorithm, this algorithm will generate a large number of pseudo random domain name, and will be
used by malware.
To solve these problem, system supports to enable DGA detection function to detect DNS
response messages and detect whether the device is attacked by DGA domain name. If a DGA
domain name is detected, the system will perform the specified processing actions on the
l action { reset | log-only} – Specifies the action for the DGA domain name.
l reset – Resets the connection if any DGA domain name has been detected.
l log-only – Generates logs if any DGA domain name has been detected.
To disable the DGA detection, in the botnet prevention profile configuration mode, use the fol-
lowing command:
dga-detect disable
Notes: DGA detection function only supports X series devices, A series devices
and K9180 devices.
DNS tunnel is a kind of covert channel, which establishes communication by encapsulating other
protocols in DNS protocol for transmission. However, most firewalls and detection devices
release DNS traffic, and DNS tunnel attacks formally use the features of the release to implement
operations such as remote control and file transfer, which cause harm to users' network security
and data security. Therefore, the detection, warning, and processing of DNS tunnels are par-
ticularly important.
System provides the DNS tunnel detection function. Through the detection of DNS request mes-
sages and the monitoring of DNS traffic, the feature extraction and comprehensive analysis of the
DNS tunnel can be realized. At the same time, the specified processing action can be performed
on the detected DNS tunnel ( Record the relevant threat log or reset the connection) to prevent
the threat brought by the DNS tunnel.
l action { reset | log-only} – Specifies the action for the DNS tunnel.
l reset – Resets the connection if any DNS tunnel has been detected.
To disable DNS tunnel detection function, in the botnet prevention profile configuration mode,
use the following command:
dns-tunnel-detect disable
The system can merge botnet prevention logs of the same merging type based on the specified
time granularity. This way, logs are reduced to prevent the log server from receiving redundant
logs. To configure log aggregation and aggregation time granularity, in the global configuration
mode, use the following command:
botnet-c2-prevention agg-log enable { by-src | by-dst | by-src-dst | by-src-ioc | by-
dst-ioc | by-src-dst-ioc } [ aggregation-time value ]
l by-src-dst - Merges botnet prevention logs of the same source and destination IP.
l by-src-ioc - Merges botnet prevention logs of the same source IP and IOC. IOC indicates
threat intelligence, that is to say, the malicious domain name, IP address, or URL detected by
the botnet prevention function.
l by-src-dst-ioc - Merges botnet prevention logs of the same source IP, destination IP, and
IOC. IOC indicates threat intelligence, that is to say, the malicious domain name, IP address,
or URL detected by the botnet prevention function.
l value - Specifies the time granularity of log aggregation. With this parameter specified, at the
same time granularity, the system stores botnet prevention logs of the same merging type in
the database only once. Value ranges from 10 to 600 seconds. The default value is 10
seconds.
In the global configuration mode, use the command no botnet-c2-prevention agg-log enable to
specify the log aggregation type as Do Not Merge. This way, the system stores each botnet-pre-
vention log in the database and does not merge any logs.
To specify the minimum time interval for logging after the system detects the DNS tunnel, in the
global configuration mode, use the following command:
dns-tunnel-detect log-intervaltime-interval
l time-interval - Specifies the minimum time interval for logging after the system detects the
DNS tunnel. The range is 1 to 3600 seconds, the default value is 60 seconds.
To restore the default value, in the global configuration mode, use the following command:
no dns-tunnel-detect log-interval
Notes: DNS tunnel detection function only supports X series devices, A series
devices and K9180 device.
The address library includes a predefined address library and a custom address library, each of
which contains a block list and an exclude list, which are described as follows:
l Predefined exclude list: It contains domains automatically obtained through the botnet pre-
vention signature database. When the traffic matches to the domain name in the list, system
will not control the traffic with botnet prevention function.
l Custom exclude list: It contains IPs, domains and URLs manually added by the user. When
the traffic matches to the IP address, domain name or URL in the list, system will not control
the traffic with botnet prevention function.
l Predefined block list: It contains IPs, domains and URLs automatically obtained through the
botnet prevention signature database. When the traffic matches to the IP address, domain
name or URL in the list, system will control the traffic with botnet prevention function.
l Custom block list: It contains IPs, domains and URLs manually added by the user. When the
traffic matches to the IP address, domain name or URL in the list, system will control the
traffic with botnet prevention function.
The traffic matching sequence will be: Custom exclude list > Custom block list > Predefined
exclude list > Predefined block list.
To configure a custom blocklist entry, in the global configuration mode, use the following com-
mand:
botnet-c2-prevention signature {ipip-address [portport-number | domaindomain-name [wildcard]
| urlurl}
l domaindomain-name [wildcard] - Specifies the domain name of the custom blocklist entry.
wildcard means the domain is a wildcard domain.
To delete the custom blocklist entry, in the global configuration mode, use the following com-
mand:
no bot net-c2-prevention signature {ipip-address [portport-number | domaindomain-name [wild-
card] | urlurl}
To configure a custom exclude list entry, in the global configuration mode, use the following com-
mand:
botnet-c2-prevention whitelist {ipip-address [portport-number | domaindomain-name [wildcard]
| urlurl}
l ipip-address [portport-number - Specifies the IP address of the custom exclude list entry.If
not specified the port,it will be any port.
l domaindomain-name [wildcard] - Specifies the domain name of the custom exclude list entry.
wildcard means the domain is a wildcard domain.
To delete the custom exclude list entry, in the global configuration mode, use the following com-
mand:
no bot net-c2-prevention whitelist {ipip-address [portport-number | domaindomain-name [wild-
card] | urlurl}
To view the custom blocklist entry, in any mode, use the following command:
show botnet-c2-prevention blacklist [ip ip-address [p o rt port-number ]| do main domain-
name [ wildcard ] | url url ]
l type: Indicates the type of the blacklist. 1 indicates IP, 2 indicates the exact domain name, 3
indicates the wildcard domain name, 4 indicates IP+Port, and 5 indicates the URL.
l define_type: Indicates in which type the blacklist is defined. 1 indicates the predefined black-
list and 2 indicates the user-defined blacklist.
l tag: Indicates the Botnet tag related to the Botnet C&C IOC Blacklist. If there are multiple
tags, only the first 5 tags are displayed.
l malware_family: Indicates the name of the APT group associated with the IOC blacklist.
l APT_group: Indicates the name of the APT group associated with the IOC blacklist.
Example
Total num: 0
==========================================
entry type define type tag malware family APT group
--------------------------------------------------------
----------------------------
==========================================
To view the custom exclude list entry, in any mode, use the following command:
show botnet-c2-prevention whitelist [ip ip-address [p o rt port-number ]| do main domain-
name [ wildcard ] | url url ]
You can select the system's predefined Sinkhole IP address or specify a user-defined Sinkhole IP
address to replace the IP address in the DNS response message
To configure the Sinkhole IP address, in the global configuration mode, use the following com-
mand:
botnet-c2-prevention sinkhole {ipv4 IPv4-address | ipv6 IPv6-address | predefined-sinkhole}
l ipv4 IPv4-address - Specifies a custom IPv4 address. If only the IPv4 address is configured,
the system will automatically map the configured IPv4 address to the corresponding IPv6
address when the DNS server communicates by using the IPv6 protocol.
If the botnet prevention profile is bound to a security zone, the system will detect the traffic
destined to the specified security zone based on the profile configuration. If the policy rule is
bound with a botnet prevention Profile, and the destination zone of the policy rule is also bound
with a botnet prevention profile, then the botnet prevention profile bound to the policy rule will
be valid, while the botnet prevention profile bound to the security zone will be void.
To bind the botnet prevention profile to a security zone, in the security zone configuration mode,
use the following command:
botnet-c2-prevention enable profile-name
l profile-name – Specifies the name of the botnet prevention profile that will be bound to the
security zone. One security zone can only be bound with one botnet prevention profile.
To cancel the binding, in the security zone configuration mode, use the following command:
no botnet-c2-prevention enable
If the botnet prevention profile is bound to a policy rule, the system will detect the traffic
matched to the specified policy rule based on the profile configuration. To bind the botnet pre-
vention profile to a policy rule, in the policy rule configuration mode, use the following com-
mand:
botnet-c2-prevention profile-name
l profile-name – Specifies the name of the botnet prevention profile that will be bound to the
policy rule.
To cancel the binding, in the policy rule configuration mode, use the following command: no bot-
net-c2-prevention
To view the botnet prevention profile information, in any mode, use the following command:
show botnet-c2-prevention-profile profile-name
To view the botnet prevention status, in any mode, use the following command:
show botnet-c2-prevention status
l Updating now
System supports both manual and automatic update modes. To configure a botnet prevention sig-
nature update mode, in the global configuration mode, use the following command:
b o tn et-c2-p reven tio n sign ature up date mo de {auto | man ual}
l auto – Specifies the automatic botnet prevention signature update mode. This is the default
mode.
To restore to the default mode, in the global configuration mode, use the following command:
no botnet-c2-prevention signature update mode
The system supports to update the signature database through HTTP and HTTPS, and the default
protocol is HTTPS. To configuring the update protocol as HTTP, in the global configuration
mode, use the following command:
botnet-c2-prevention signature update protocol HTTP
l server1 | server2 | server3 – Specifies the update server you want to configure. The IPv4
and IPv6 address are supported for configuring the update server address. The default value of
server1is update1.hillstonenet.com, and the default value of server2is update2.hill-
stonenet.com.
l ip-address | domain-name – Specifies the name of the update server. It can be an ip-address,
or a domain-name, for example, update1.hillstonenet.com.
To cancel the specified update the server, in the global configuration mode, use the following
command:
no botnet-c2-prevention signature update { server1 | server2 | server3 }
When the device accesses the Internet through a HTTP proxy server, you need to specify the IP
address and the port number of the HTTP proxy server. With the HTTP proxy server specified,
various signature database can update automatically and normally.
To specify the HTTP proxy server for the botnet prevention signature database updating, use the
following command in the global configuration mode:
botnet-c2-prevention signature update proxy-server { main | backup } ip-address
port-number
l ip-address port-number – Specify the IP address and the port number of the proxy server.
To cancel the proxy server configurations, use the command no botnet-c2-prevention signature
update proxy-server {main | backup}.
By default, system automatically updates the botnet prevention signature database every day. To
reduce the update server’s workload, the time of daily update is random. To specify the sched-
ule and specific time for the update, in the global configuration mode, use the following com-
mand:
b o tn et-c2-p reven tio n sign ature up date sch edule { {daily | weekly {mo n | tue | wed | th u |
fri | sat | sun } | mo n th ly date } [ HH:MM ] | h o urly MM }
l weekly {mon | tue | wed | thu | fri | sat | sun} – Updates the database every week. Para-
meter mon | tue | wed | thu | fri | sat | sunis used to specify the specific date in a week.
l monthly date - Updates the database every month. Parameter date is used to specify the spe-
cific date in a month., the range is 1 to 31. If a month does not contain the specified date (eg,
there is no 30th in February), the database will not be automatically upgraded this month.
l hourly MM– Updates the database every three hours. Minute is used to specify the specific
minute in one hour.
Updating Now
For both manual and automatic update modes, you can update the botnet prevention signature
database immediately as needed. To update the botnet prevention signature database now, in any
l exec botnet-c2-prevention signature update – Only updates the incremental part between
the current botnet prevention signature database and the latest botnet prevention signature
database released by the update server.
In some cases, your device may be unable to connect to the update server to update the botnet
prevention signature database. To solve this problem, system provides the botnet prevention sig-
nature file import function, i.e., importing the botnet prevention signature files to the device from
an FTP, TFTP server or USB disk, so that the device can update the botnet prevention signature
database locally. To import the botnet prevention signature file, in the execution mode, use the
following command:
imp o rt b o tn et-c2-p reven tio n sign ature fro m {ftp server ip-address [user user-name p ass-
wo rd password ] | tftp server ip-address | usb 0 | usb 1 } [vro uter vr-name ] file-name
l user user-name password password – Specifies the username and password of the FTP
server.
l file-name – Specifies the name of the botnet prevention signature file that be imported.
To view botnet prevention signature database information, in any mode, use the following com-
mand:
show botnet-c2-prevention signature info
You can view the botnet prevention signature update information of the device as needed, includ-
ing the update server information, update mode, update frequency and time, as well as the status
of the botnet prevention signature database update. To view the botnet prevention signature
update information, in any mode, use the following command:
show botnet-c2-prevention signature update
Overview
The system is designed with an Antispam function, which enables user to identify and filter mails
transmitted by SMTP and POP3 protocol through the cloud server, timely discover the mail
threats, such as spam, phishing and worm mail, and then process the found spam according to the
configuration, so as to protect the user's mail client or mail server.
The Antispam function will not work unless an antispam license has been installed on a system
that supports Antispam.
Notes:
l SG-6000-A200 and SG-6000-A200W do not support Antispam function.
Configuring Antispam
The Antispam configurations are based on security zones or policies.
To configure antispam via CLI, take the following steps:
1. Create an Antispam profile, and specify the mail protocol, spam category, action and black-
list /whitelist of sender in the profile.
You need to specify the mail protocol, spam category, action and exempt domain of sender of the
Antispam profile. To create an Antispam profile, in the global configuration mode, use the fol-
lowing command:
antispam-profile antispam-profile-name
To delete the specified Antispam profile, in the global configuration mode, use the commandno
antispam-profile antispam-profile-name.
To specify a protocol type and enter the protocol configuration mode, in the Antispam profile con-
figuration mode, use the following command:
p ro to co l {p o p 3 | smtp }
To cancel the specified protocol type, in the Antispam profile configuration mode, use the fol-
lowing command:
n o p ro to co l{ p o p 3 | smtp }
To specify the spam category and action, in the protocol configuration mode, use the
following command:
sp am-class {b ulk | co n firmed | susp ected | validb ulk} actio n { lo g-o n ly | reset }
l log-only – Generates logs. This is the default action. The spams transferred over POP3 only
supports generate logs action.
To cancel the specified spam category, in the protocol configuration mode, use the following com-
mand:
n o sp am-class {b ulk | co n firmed | susp ected | validb ulk}
The whitelist of sender is used to specify the mail domains or email that will not be filtered by
antispam. Each antispam profile can specify up to 16 exempt domains of sender.
To specify the whitelist of sender, in the Antispam profile configuration mode, use the following
command:
sender-whitelist {domain domain-name | mailbox email-address }
l domain-name – Specifies the domain name. The length is 1 to 255 characters, but the max-
imum length between the two periods (.) is only 63 characters.
To delete the specified whitelist of sender, in the Antispam profile configuration mode, use the
following command:
no sender-whitelist {domain domain-name | mailbox email-address}
You can add the sender's domain name or email address to the User-defined Blacklist. When Anti-
Spam User-defined Blacklist function is enabled, system will directly identify the email from the
User-defined Blacklist as spam, and reset the link or record to the threat log.
To enable or disable user-defined blacklist spam, in the Antispam profile configuration mode, use
the following command:
To add the user-defined blacklist spam, in the Antispam profile configuration mode, use the fol-
lowing command:
exec antispam user-defined-blacklist add {domain domain-name | mailbox email-address}
To delete the user-defined blacklist spam, in the Antispam profile configuration mode, use the fol-
lowing command:
exec antispam user-defined-blacklist delete {domain domain-name | mailbox email-address}
l domain-name – Specifies the domain name. The length is 1 to 255 characters, but the max-
imum length between the two periods (.) is only 63 characters.
If the Antispam profile is bound to a security zone, the system will detect the traffic destined to
the specified security zone based on the profile configuration. If the policy rule is bound with an
antispam Profile, and the destination zone of the policy rule is also bound with an Antispam pro-
file, then the Antispam profile bound to the policy rule will be valid, while the Antispam profile
bound to the security zone will be void.
To bind the Antispam profile to a security zone, in the security zone configuration mode, use the
following command:
antispam antispam-profile-name
To cancel the binding, in the security zone configuration mode, use the following command:
no antispam
If the Antispam profile is bound to a policy rule, the system will detect the traffic matched to the
specified policy rule based on the profile configuration. To bind the Antispam profile to a policy
rule, in the policy rule configuration mode, use the following command:
antispam antispam-profile-name
l antispam-profile-name – Specifies the name of the Antispam profile that will be bound to the
policy rule.
To cancel the binding, in the policy rule configuration mode, use the following command: no anti-
spam
To configure the mail scan maximum limit, in the global configuration mode, use the following
command:
antispam max-mail-size max-mail-size-value
l max-mail-size-value – Specifies the mail scan maximum limit. The range is 512 Kb to 2048
Kb, the default value is 1024 Kb.
To restore to the default value, in the global configuration mode, use the following command:no
antispam max-mail-size
To view the Antispam profile information, in any mode, use the following command:
show antispam-profile [ antispam-profile-name ]
To view the Antispam status information, in any mode, use the following command:
show antispam status
To view the global configuration of Antispam, in any mode, use the following command:
show antispam configuration
Notes:
l At present, end point protection function only supports linkage with
"JIANGMIN" endpoint security control center.
To configure the end point protection function, take the following steps:
2. Define an end point protection profile, and specify the protection action corresponding to
the endpoint status in the profile.
3. Bind the end point protection profile to an appropriate policy rule or security zone.
To specify the name of endpoint security control center server and enters the endpoint security
control center server configuration mode, in the global configuration mode, use the following
l server -name - Specifies the the name of endpoint security control center server and enters
the endpoint security control center server configuration mode. If the specified name exists,
then the system will directly enter the endpoint security control center server configuration
mode. System only allows 1 endpoint security control center server to be configured.
To delete the specified endpoint security control center server, in the global configuration mode,
use the command no epp server.
To specify the address of the endpoint security control center server, in the endpoint security con-
trol center server configuration mode, use the following command:
hosthostname
l hostname - Specifies the address or domain name of the endpoint security control center
server. The range is 1 to 255 characters.
To delete the specified address, in the endpoint security control center server configuration
mode, use the command no host.
To specify the the port of the endpoint security control center server, in the endpoint security
control center server configuration mode, use the following command:
portport-number
To delete the specified port number, in the endpoint security control center server configuration
mode, use the command no port.
To specify the synchronization period of endpoint data information, in the endpoint security con-
trol center server configuration mode, use the following command:
syncsync-cycle
l sync-cycle - Specifies the synchronization period. The range is 1 to 60 minutes. The default
value is 10 minutes.
To restore the default value, in the endpoint security control center server configuration mode,
use the command no sync.
By default, when the endpoint security control center is disconnected, the endpoint data inform-
ation that the system has synchronized will be invalid, and the synchronized endpoint data inform-
ation will be cleared. To enable/disable the timeout entry, in the global configuration mode, use
the following command:
The end point protection profile specifies the the protection action corresponding to the end-
point status. To create an end point protection profile, in the global configuration mode, use the
following command:
epp-profileprofile-name
l profile-name - Specifies the end point protection profile name and enters the end point pro-
tection profile configuration mode. If the specified name exists, then the system will directly
enter the end point protection profile configuration mode.
To delete the specified end point protection profile, in the global configuration mode, use the
command no epp-profileprofile-name.
To specify the protection action for the endpoint which doesn’t install an anti-virus client. In
the end point protection profile configuration mode, use the following command:
status uninstall { log-only | redirect url | block [ block-interval ]}
l block [block-interval] – Block the endpoint connection, and specifies the block interval
block-interval.
To cancel the protection action for the endpoint which doesn’t install an anti-virus client, in the
end point protection profile configuration configuration mode, use the following command:
no status uninstall
Specifies the protection action for the unhealthy endpoint, infected endpoint and abnormal end-
point. In the end point protection profile configuration mode, use the following command:
status { un h ealth y | in fected | ab n o rmal } { lo g-o n ly | b lo ck [ block-interval ]}
l block [block-interval] – Block the endpoint connection, and specifies the block interval
block-interval. The value range is 60 to 65535 seconds. The default value is 60.
To cancel the protection action for the unhealthy endpoint, infected endpoint and abnormal end-
point, in the end point protection profile configuration configuration mode, use the following
command:
n o status { un h ealth y | in fected | ab n o rmal }
The exception address is not controlled by the end point protection rule. To specify the excep-
tion address, in the end point protection profile configuration configuration mode, use the fol-
lowing command:
addressaddress-name
To cancel the specified exception address, in the end point protection profile configuration con-
figuration mode, use the following command:
no address
Notes: Before selecting the exception address, you need to add the exception end-
point address to the address book. For configuration, see Configuring an Address
Book.
If the end point protection profile is bound to a security zone, the system will detect the traffic
destined to the specified security zone based on the profile configuration.
To bind the end point protection profile to a security zone, in the security zone configuration
mode, use the following command:
epp enableprofile-name
l profile-name – Specifies the name of the end point protection profile that will be bound to
the security zone. One security zone can only be bound with one end point protection profile.
To cancel the binding, in the security zone configuration mode, use the following command:
no epp enable
If the end point protection profile is bound to a policy rule, the system will detect the traffic
matched to the specified policy rule based on the profile configuration. To bind the end point pro-
tection profile to a policy rule, in the policy rule configuration mode, use the following command:
eppprofile-name
l profile-name – Specifies the name of the end point protection profile that will be bound to
the policy rule.
To cancel the binding, in the policy rule configuration mode, use the following command: no epp.
To synchronize the endpoint data information manually, in any mode, use the following com-
mand:
exec epp server-flush
To view the end point protection profile information, in any mode, use the following command:
sh o w ep p -p ro file [ profile-name ]
To view the end point status, in any mode, use the following command:
show epp ep-status
To view the synchronization status of endpoint, in any mode, use the following command:
show epp sync-status
Notes:
l Only the IPC and NVR devices of Hikvision, Dahua and Uniview are sup-
ported currently.
l The IoT Policy function is available only when the IoT license is installed on
the system.
l The network video monitoring devices in the NAT scenario cannot be iden-
tified with the IoT policy.
Configuring IoT
Preparations
Before configuring the IoT, ensure the following conditions have been met.
2. The IoT license has been installed and you log in to the device again.
Configuring IoT
For the traffic flowing through the zone bound with the IoT policy profile, systems supports to
control it by configuring the admittance list of the IP, MAC and IP/MAC types, that is, only the
traffic matches the type in the admittance list is allowed to pass. By default, all the traffic flowing
through the zone bound with the IoT policy profile is allowed to pass.
When the admittance lists of the IP/MAC, IP and MAC types are all configured, traffic matches
the admittance lists in the sequence of IP/MAC > IP > MAC. Traffic can pass in the following
conditions.
l Traffic first matches the admittance list of IP/MAC type, and both the IP and MAC types are
matched.
l Traffic first matches the admittance list of IP/MAC type, while only the IP type is matched.
Then traffic tries to match the admittance list of IP and MAC type in order, and both the IP
and MAC types are matched.
Notes: The maximum number of admittance lists that can be configured / imported
is different for different platforms. At the same time, the number of IP / Mac, IP
and MAC type addresses that can be added to the admittance list is also different.
Please refer to the actual situation. For example, the current device allows up to
1500 admittance lists to be configured/imported, and the ratio of IP/MAC, IP, and
MAC type addresses that can be added to the admittance list at most is 2:1:2, that
is, the IP/MAC type is up to 600, the IP type is up to 300, and the MAC type is up
to 600.
To create an admittance list and enter the configuration mode of the IoT admittance list, in the
global configuration mode, use the following command:
io t-mo n ito r admittan ce-list list-name
l list-name - Specifies the name of the admittance list and enter the configuration mode of
admittance list. If the specified name already exists, enter the configuration mode directly.
In the global configuration mode, use the command no iot-monitor admittance-list list-name to
delete the specified list.
Notes: For the admittance list bound to the IoT Profile, it cannot be deleted unless
it's unbound.
To add the IPv4 address, MAC address, username and password of network video monitor
devices into the admittance list, in the IoT admittance list configuration mode, use the following
command:
ip -mac ipv4-address mac-address [o n vifusern ame username o n vifp asswo rd password ]
l ipv4-address - Specifies the IPv4 address of the network video monitor device.
l username - Specifies the user name of the network video monitor device.
In the IoT admittance list configuration mode, use the command no ip-macipv4-address mac-
address to remove the IPv4 address and MAC address of the specified network video monitor
device from the admittance list.
l ipv6-address - Specifies the IPv6 address of the network video monitor device.
l username - Specifies the user name of the network video monitor device.
In the IoT admittance list configuration mode, use the command no ipv6-mac ipv6-address mac-
address to remove the IPv6 address and MAC address of the specified network video monitor
device from the admittance list.
Specifying IP
To add the IPv4 address, user name and password of the network video monitor device to the
admittance listt, in the IoT admittance list configuration mode, use the following command:
ip n etwo rk { ip-prefix/mask | ip-address mask } [o n vifusern ame username o n vifp asswo rd
password ]
l username - Specifies the user name of the network video monitor device.
l ipv6-prefix/prefix-length - Specifies the IPv6 prefix and prefix length, the range is 1 to 128.
l username - Specifies the user name of the network video monitor device.
In the IoT admittance list configuration mode, use the command no ip prefix ipv6-prefix / prefix-
length to delete the IPv6 address of the network video monitor device from the admittance list.
Notes: When the specified IP already exists, system will pop up an error.
Specifying IP Range
To add the IPv4 address range, user name and password of the network video monitor device to
the admittance listt, in the IoT admittance list configuration mode, use the following command:
ip ran ge start-ip end-ip [o n vifusern ame username o n vifp asswo rd password ]
l username - Specifies the user name of the network video monitor device.
In the IoT admittance list configuration mode, use the command no ip network start-ip end-ip to
delete the IP range of network video monitor device from the admittance list.
l username - Specifies the user name of the network video monitor device.
In the IoT admittance list configuration mode, use the command no ipv6 range min-ipv6-address
max-ipv6-address to delete the IPv6 address range of network video monitor device from the
admittance list.
Notes: When the specified IP range already exists, system will pop up an error.
To add the MAC address of the network video monitor device to the admittance listt, in the IoT
admittance list configuration mode, use the following command:
mac mac-address
In the IoT admittance list configuration mode, use the command no mac mac-address to
delete the MAC address of the network video monitor device from the admittance list.
You can import the admittance list via the FTP or TFTP server. To import the admittance list, in
the execution mode, use the following commands:
l user user-name password password - Specifies the user name and password of the FTP server.
l vrouter-name - Specifies the VRouter that the admittance list will be import to. If the para-
meter is not specified, VRouter will be specified as trust-vr.
l file-name - Specifies the name of the admittance list on the FTP or the TFTP server.
To create the IoT monitor profile and enter the configuration mode of IoT monitor profile, in the
global configuration mode, use the following command:
io t-mo n ito r p ro file profile-name
l Profile-name - Specifies the name of the IoT monitor profile and enter the configuration
mode of IoT monitor profile. If the specified name already exists, enter the configuration
mode directly.
In the global configuration mode, use the command no iot-monitor profile profile-name to delete
the specified IoT monitor profile.
Notes: If the IoT monitor profile is bound to the zone, it cannot be deleted unless
it is unbound.
To bind the created admittance list to the IoT monitor profile, in the configuration mode of IoT
monitor profile, use the following command:
io t-admittan ce-list list-name
l list-name - Specifies the name of the admittance list bound to the IoT monitor profile. Each
IoT monitor profile can only be bound with one admittance list.
In the configuration mode of IoT monitor profile, use the command no iot-admittance-list list-
name to unbind the admittance list.
By default, the end-point identification is enabled. When the function is enabled, system will
probe the end-point IP in the IoT monitor list actively, and identify the information of man-
ufacturer and model of the network video monitoring devices according to the returned packets.
Then the information will be displayed in the IoT monitor list.
The end-point identification will be triggered
l when the network video monitoring device has been online, and the function will be triggered
every 5 minutes.
To disable the end-point identification, in the configuration mode of IoT monitor profile, use the
following command:
ip c-mo n ito r io t-iden tify disab le
To restore the end-point identification, in the configuration mode of IoT monitor profile, use the
following command:
no ipc-monitor iot-identify disable
When the function is enabled, system can check whether the devices behaviors are illegal. If
illegal behaviors are detected, system can block or record logs of abnormal traffic. By default, the
function is enabled and system can block abnormal traffic.
To disable the end-point behavior monitor, in the configuration mode of IoT monitor profile, use
the following command:
ip c-mo n ito r ab n o rmal-b eh avio r-mo n ito r disab le
To enable the end-point behavior monitor, and block or record logs of abnormal traffic, in the con-
figuration mode of IoT monitor profile, use the following command:
ip c-mo n ito r ab n o rmal-b eh avio r-mo n ito r en ab le actio n [lo g-o n ly | b lo ck-ip ]
l log-only - System will let the traffic flowing through the end-point device pass and record
logs.
l block-ip - System will block the traffic flowing through the end-point device.
To restore the function, in the configuration mode of IoT monitor profile, use the following com-
mand:
n o ip c-mo n ito r ab n o rmal-b eh avio r-mo n ito r disab le
After the IoT monitor profile is bound to the zone, the traffic flowing through zone will be oper-
ated as the configurations of the IoT monitor profile. To bind the IoT monitor profile to the
zone, you need to enter the zone configuration mode first.
In the global configuration mode, use the following command to enter the zone configuration
mode:
zo n e zone-name
After entering the zone configuration mode, use the following command to bind the IoT monitor
profile to the zone:
io t-mo n ito r en ab le profile-name
In the zone configuration mode, use the following command to unbind the IoT monitor profile:
n o io t-mo n ito r en ab le
To delete the whole or the specified IoT monitor list entries, in any mode, use the following com-
mand:
exec io t-mo n ito r delete io t-mo n ito r-list [ip ip-address | ip v6 ipv6-address ] [vro uter vr-name
| vswitch vs-name ] [man ufacturer {h ikiviso n | dah ua | un iview | o th er}] [typ e {n vr | ip c |
o th er}] [status {o n lin e | o fflin e}] [trust {y | n }]
l ip-address - Delete the IoT monitor list entries of the specified IP address.
l ipv6 ipv6-address - Delete the IoT monitor list entries of the specified IPv6 address.
l vr-name - Delete the IoT monitor list entries of the specified VRouter.
l vs-name - Delete the IoT monitor list entries of the specified VSwitch.
l manufacturer {hikivison | dahua | uniview | other} - Delete the IoT monitor list entries of
the specified manufacturers, including hikivison, dahua, uniview and other.
l type {nvr | ipc | other} - Delete the IoT monitor list entries of the specified device type,
including nvr, ipc and other.
l status {online | offline} - Delete the IoT monitor list entries of the specified status, includ-
ing online and offline.
l trust {y | n} - Delete the IoT monitor list entries of the specified trust status. y means trus-
ted and n means untrusted.
To modify the IoT Monitor list entries, in any mode, use the following command:
exec io t-mo n ito r mo dify io t-mo n ito r-list {ip ip-address | ip v6 ipv6-address }{vro uter vr-
name | vswitch vs-name } [man ufacturer {h ikiviso n | dah ua | un iview | o th er}] [typ e {n vr |
ip c | o th er}] [mo del model-name ] [trust {y | n }]
l ip-address - Modify the IoT monitor list entries of the specified IP address.
l ipv6 ipv6-address - Modify the IoT monitor list entries of the specified IPv6 address.
l manufacturer {hikivison | dahua | uniview | other} - Modify the manufacturers of the IoT
monitor list entry of the specified IP address, including hikivison, dahua, uniview and other.
l type {nvr | ipc | other} - Modify the device type of the IoT monitor list entry of the spe-
cified IP address, including nvr, ipc and other.
l model-name - Modify the device model of the IoT monitor list entry of the specified IP
address.
l trust {y | n} - Modify the trust status of the IoT monitor list entry of the specified IP
address. ymeans trusted and n means untrusted.
To view the admittance list information, in any mode, use the following command:
sh o w io t-mo n ito r admittan ce-list list-name [ip -en try | ip -mac-en trty | mac-en try]
To view the IoT monitor profile information, in any mode, use the following command:
sh o w io t-mo n ito r p ro file profile-name
l profile-name - Displays the information of the specified IoT monitor profile. If the parameter
is not specified, all information related to IoT monitor profiles will be displayed.
To view the whole or the specified IoT monitor list information, in any mode, use the following
command:
sh o w io t-mo n ito r-list [ip ip-address | ip v6 ipv6-address ] [vro uter vr-name | vswitch vs-
name ] [man ufacturer {h ikiviso n | dah ua | un iview | o th er}] [typ e {n vr | ip c | o th er}]
[status {o n lin e | o fflin e}] [trust {y | n }]
l ip-address - Displays the IoT monitor list information of the specified IP address.
l ipv6 ipv6-address - Displays the IoT monitor list information of the specified IPv6 address.
l vr-name - Displays the IoT monitor list information of the specified VRouter.
l vs-name - Displays the IoT monitor list information of the specified VSwitch.
l manufacturer {hikivison | dahua | uniview | other} - Displays the IoT monitor list inform-
ation of the specified manufacturers, including hikivison, dahua, uniview and other.
l type {nvr | ipc | other} - Displays the IoT monitor list information of the specified device
type, including nvr, ipc and other.
l trust {y | n} - Displays the IoT monitor list information of the specified trust status. ymeans
trusted and n means untrusted.
To view the manufacturers and types distribution of network video monitoring devices, as well as
the detailed statistics, such as device number, IP address, MAC address, up/downstream traffic,
IoT profile and device status. In any mode, use the following command:
sh o w io t-mo n ito r-list statistic
l "Data Security" on Page 2084 describes the data security functions included in the system,
including content filtering, file filtering, online behavior auditing, and log management.
l "Object Configuration" on Page 2133 describes the public Data Security configurations that
are used for configuring Data Security rules.
l "URL Filtering" on Page 2147 explains how to configure the URL filtering function to control
the access to some websites.
l "SSL Proxy" on Page 2156 describes how to configure the SSL proxy function in two typical
scenarios to decrypt HTTPS traffic.
Overview
The booming and popularization of Internet bring significant convenience to people’s work and
life. However, problems caused by access to Internet, like bandwidth misuse, low efficiency,
information leakage, legal risks, security potentials, etc., are also becoming increasingly prominent.
For example, in some enterprises, online chatting and Internet forum browsing during the office
hours, or disclose some confidential information to the public in emails; in some public places
like net bar, netizens randomly visit illegal websites, post irresponsible topics, or even get
involved in illegal network movement.
To solve the above problems, system provides the Data Securityfunction to control and audit net-
work behaviors, and check the transmitted files,effectively optimizing the utilization of Internet
resources.
l Content filter
l Web Content
l Web posting
l Email filter
l IM
l File filter
l Log management
Function Description
Content Filter File Content Fil- Detect sensitive keywords carried in the file content
ter of the specified protocol type and file type, and can
log or block them.
Network Beha- IM Audits the QQ, wechat and sinaweibo user beha-
vior Record viors.
l Web Content
l Web posting
l Email filter
If IPv6 is enabled, Content Filter function supports content detection and behavior control based
on IPv6. For more information about how to enable IPv6, see IPv6.
The file content filtering function can detect sensitive keywords carried in the file content of the
specified protocol type and file type, and can log or block them. For example, the content of doc-
type files downloaded through the HTTP protocol is detected, and the log information is recor-
ded for the files containing the keyword content of the mobile phone number.
The file content filter function is mainly implemented by binding a profile to a policy rule. Once
the Web content profile is bound to a policy rule, the system will process the traffic that is
matched to the rule according to the profile configuration. The system also supports binding the
file content filter profile to a ZTNA policy to perform file content detection and processing on
the traffic matching the ZTNA policy. For configuration information, refer to Configuring ZTNA
Policy.
To configure Web content via CLI, take the following steps:
2. Bind the file content filter profile to an appropriate policy rule or a zone.
You need to specify the file type, protocol type, direction, keyword category and action in the
Web content profile. To create a file content filter profile, in the global configuration mode, use
the following command:
file-contentfilter-profile profile-name
l profile-name - Specifies the name of the file content filter profile, and enter the configuration
mode of the file content filter profile. If the specified name exists, the system will directly
enter the file content filter profile configuration mode. To delete the specified file content fil-
ter profile, in the global configuration mode, use the command no file-contentfilter-profile pro-
file-name.
To specify the file type that will be filtered, in the file content filter profile configuration mode,
use the following command:
file-type {txt | doc | docx | ppt | pptx | xls | xlsx}
l txt | doc | docx | ppt | pptx | xls | xlsx - Specifies the file type that will be filtered. Cur-
rently supported file types are: txt, doc, docx, ppt, pptx, xls, xlsx.
To specify the keyword category that will be filtered and the corresponding action, in the file con-
tent filter profile configuration mode, use the following command:
keywo rd-catego ry keyword-category-name actio n { block | log-only }
l keyword-category-name - Specifies the keyword category that will be filtered. It can be a cus-
tom keyword category or a predefined keyword category. For more information about
keyword category, see Keyword Category.
l block – Blocks the transmission of files containing the content of the corresponding
keywords and log records.
l log – Logs the behavior of transferring files containing corresponding keyword content.
To specify the protocol type and direction, in the file content filter profile configuration mode,
use the following command:
protocol-type {ftp | http | imap4 | pop3 | smb | smtp } direction {both | download | upload}
l ftp | http | imap4 | pop3 | smb | smtp - Specifies the protocol type.
l direction {both | download | upload}- Specifies the direction, include bidirectional both,
download downloadand uploadupload. HTTP, FTP, and SMB protocols support Download,
Upload, and Bidirectional; SMTP protocol only supports select Upload; POP3 and IMAP pro-
tocols only support Download.
To cancel the specified the protocol type and direction, in the file content filter profile con-
figuration mode, use the commandno protocol-type.
After binding the file content filter profile to a policy rule, the system will process the traffic that
is matched to the rule according to the profile configuration. To bind the file content filter profile
to a policy rule, enter the policy rule configuration mode in two steps. First, in the global con-
figuration mode, use the following command to enter the policy configuration mode:
policy-global
Then, in the policy configuration mode, use the following command to enter the policy rule con-
figuration mode:
rule [ id id-number ]
To bind the file content filter profile to a policy rule, in the policy rule configuration mode, use
the following command:
file-contentfilter profile-name
l profile-name - Specifies the name of file content filter profile that will be bound.
If the file content filter profile is bound to a security zone, the system will detect the traffic
destined to the specified security zone based on the profile configuration. If the policy rule is
bound with a file content filter profile, and the destination zone of the policy rule is also bound
with a file content filter profile, then the file content filter profile bound to the policy rule will be
valid.
To bind the file content filter profile to a security zone, in the security zone configuration mode,
use the following command:
file-contentfilter enable profile-name
l profile-name – Specifies the name of the file content filter profile that will be bound to the
security zone. One security zone can only be bound with one file content filter profile.
To cancel the binding settings, in the security zone configuration mode, use the following com-
mand:
no file-contentfilter enable
To view the file content filter profile information, in any mode, use the following command:
show file-contentfilter-profile [ profile-name ]
l profile-name – Shows the specified file content filter profile information. If this parameter is
not specified, the command will show the information of all the file content filter profiles.
Web Content
The web content function is designed to control the network behavior of visiting the webpages
that contain certain keywords, and log the actions. For example, you can configure to block the
access to webpage that contains the keyword "gamble", and record the access action and content
in the log.
The Web content function is mainly implemented by binding a profile to a policy rule. Once the
Web content profile is bound to a policy rule, the system will process the traffic that is matched
to the rule according to the profile configuration.
To configure Web content via CLI, take the following steps:
1. Create a Web content profile, and specify the keyword category, action and control range in
the profile. You can also configure to exclude HTML tags from the Web content.
You need to specify the keyword category, action and control range in the Web content profile.
To create a Web content profile, in the global configuration mode, use the following command:
contentfilter-profile profile-name
l profile-name - Specifies the name of the Web content profile, and enter the configuration
mode of the Web content profile. If the specified name exists, the system will directly enter
To specify the keyword category that will be filtered and the corresponding action, in the Web
content profile configuration mode, use the following command:
keywo rd-catego ry keyword-category-name { [ block ] [ log ] }
l keyword-category-name - Specifies the keyword category that will be filtered. It can be a cus-
tom keyword category or a predefined keyword category. For more information about
keyword category, see Keyword Category.
l block – Blocks access to the website that contains the specified keyword.
l log – Logs access to the website that contains the specified keyword.
The system will only control the keyword within the specified websites. To specify the control
range, in the Web content profile configuration mode, use the following command:
url-category { all | url-category-name }
l all | url-category-name – Specifies the URL category that will be controlled. It can be all the
URL categories (all) or a specific URL category (url-category-name). For more information
about how to create a URL category, see Specifying a HTTP Proxy Server.
By default the system with Web content enabled will not only filter the content displayed in the
webpage, but also filter the codes in the HTML tag. To exclude the HTML tags from the filtering,
in the Web content profile configuration mode, use the following command:
exclude-html-tag
To restore to the default value, in the Web content profile configuration mode, use the following
command:
no exclude-html-tag
Notes: This function only takes effect when the HTML content type is set to tex-
t/html, i.e., content="text/html".
After binding the Web content profile to a policy rule, the system will process the traffic that is
matched to the rule according to the profile configuration. To bind the Web content profile to a
policy rule, enter the policy rule configuration mode in two steps. First, in the global con-
figuration mode, use the following command to enter the policy configuration mode:
policy-global
Then, in the policy configuration mode, use the following command to enter the policy rule con-
figuration mode:
rule [ id id-number ]
To bind the Web content profile to a policy rule, in the policy rule configuration mode, use the
following command:
contentfilter profile-name
l profile-name - Specifies the name of Web content profile that will be bound.
If the Web content profile is bound to a security zone, the system will detect the traffic destined
to the specified security zone based on the profile configuration. If the policy rule is bound with a
Web content profile, and the destination zone of the policy rule is also bound with a Web content
profile, then the Web content profile bound to the policy rule will be valid.
To bind the Web content profile to a security zone, in the security zone configuration mode, use
the following command:
contentfilter enable profile-name
l profile-name – Specifies the name of the Web content profile that will be bound to the secur-
ity zone. One security zone can only be bound with one Web content profile.
To cancel the binding settings, in the security zone configuration mode, use the following com-
mand:
no contentfilter enable
To view the Web content profile information, in any mode, use the following command:
show contentfilter-profile [ profile-name ]
l profile-name – Shows the specified Web content profile information. If this parameter is not
specified, the command will show the information of all the Web content profiles.
Web Posting
The web posting function is designed to control the network behavior of posting on websites and
posting specific keywords, and can log the posting action and posted content. For example, forbid
the users to post information containing the keyword X, and record the action log.
The Web posting can be configured via CLI by binding a profile to a policy rule. Once the Web
posting profile is bound to a policy rule, the system will process the matching traffic according to
1. Create a Web posting profile, and specify the control type, action and control range in the
profile.
You need to specify control type, action and control range in the Web posting profile. To create a
Web posting profile, in the global configuration mode, use the following command:
webpost-profile profile-name
l profile-name - Specifies the name of the Web posting profile, and enter the configuration
mode of the Web posting profile. If the specified name exists, the system will directly enter
the Web posting profile configuration mode.
You can control all the posting information, or only control the posting information with specific
keyword.
To control all the posting information and specify the action, in the Web posting profile con-
figuration mode, use the following command:
web p o st all [b lo ck] [lo g]
To cancel the specified control type, in the Web posting profile configuration mode, use the com-
mand no webpost all.
To control the posting information with specific keyword and specify the action, in the Web post-
ing profile configuration mode, use the following command:
keywo rd-catego ry keyword-category-name { [ block ] [ log ] }
The system will only control the postings within the specified websites. To specify the control
range, in the Web posting profile configuration mode, use the following command:
url-category { all | url-category-name }
l all | url-category-name – Specifies the URL category that will be controlled. It can be all the
URL categories (all) or a specific URL category (url-category-name. For more information
about how to create a URL category, see Specifying a HTTP Proxy Server.
After binding the Web posting profile to a policy rule, the system will process the traffic that is
matched to the rule according to the profile configuration. To bind the Web posting profile to a
policy rule, enter the policy rule configuration mode in two steps. First, in the global con-
figuration mode, use the following command to enter the policy configuration mode:
policy-global
l profile-name - Specifies the name of Web posting profile that will be bound.
If the Web posting profile is bound to a security zone, the system will detect the traffic destined
to the specified security zone based on the profile configuration. If the policy rule is bound with a
Web posting profile, and the destination zone of the policy rule is also bound with a Web posting
profile, then the Web posting profile bound to the policy rule will be valid.
To bind the Web posting profile to a security zone, in the security zone configuration mode, use
the following command:
webpost enable profile-name
l profile-name – Specifies the name of the Web posting profile that will be bound to the secur-
ity zone. One security zone can only be bound with one Web posting profile.
To cancel the binding settings, in the security zone configuration mode, use the following com-
mand:
no webpost enable
To view the Web posting profile information, in any mode, use the following command:
show webpost-profile [profile-name]
l profile-name – Shows the specified Web posting profile information. If this parameter is not
specified, the command will show the information of all the Web posting profiles.
The email filter function is designed to control the emails and record logs according to the sender,
receiver, email content and attachment when sending emails via SMTP, and control the receiving
actions according to the email content when receiving emails via POP3 and IMAP.
The email filter can be configured via CLI by binding a profile to a policy rule. Once the email fil-
ter profile is bound to a policy rule, the system will process the traffic that is matched to the rule
according to the profile configuration.
To configure email filter via CLI, take the following steps:
1. Create an email filter profile, and specify the control type, action, controlled mailbox and
mailbox exception in the profile.
You need to specify control type, action, controlled mailbox and mailbox exception in the email
filter profile. To create an email filter profile, in the global configuration mode, use the following
command:
mail-profile profile-name
l profile-name - Specifies the name of the email filter profile, and enter the configuration mode
of the email filter profile. If the specified name exists, the system will directly enter the email
filter profile configuration mode.
To delete the specified email filter profile, in the global configuration mode, use the command no
mail-profile profile-name.
By default the email filter rule is applied to all the supported mailboxes. To specify the control
type, in the email filter profile configuration mode, use the following command:
mail control {smtp | pop3 | imap}
l smtp - Specifies the email type that will be controlled as SMTP mails.
l pop3- Specifies the email type that will be controlled as POP3 mails.
l imap- Specifies the eamil type that will be controlled as IMAP mails.
To cancel the specified control type, in the email filter profile configuration mode, use the com-
mand no mail control {smtp | pop3 | imap}.
To control all the emails and specify the action, in the email filter profile configuration mode, use
the following command:
mail any [log]
To cancel the specified action, in the email filter profile configuration mode, use the command no
mail any.
To specify the sender/recipient that will be controlled and the corresponding action, in the email
filter profile configuration mode, use the following command:
mail {sen der | recip ien t} email-address [b lo ck] [lo g]
l log – Logs the behaviors of sending emails that contain the specified sender or recipient.
Repeat the command to specify more senders/recipients and the corresponding actions.
To cancel the specified sender/recipient and action, in the email filter profile configuration mode,
use the command no {sender | recipient} email-address.
To control the email that contains the specified keyword category and the corresponding action,
in the email filter profile configuration mode, use the following command:
keywo rd-catego ry keyword-category-name { [ block ] [ log ] }
l keyword-category-name - Specifies the keyword category that will be filtered. It can be a cus-
tom keyword category or a predefined keyword category. For more information about
keyword category, see Keyword Category.
l log – Logs the behaviors of sending emails that contain the specified keyword(s).
To specify the control type, in the email filter profile configuration mode, use the following com-
mand:
mail en ab le {sen der | recip ien t | attach | keywo rd-catego ry}
Other emails refer to the emails that do not match any of the specified conditions (including
sender, recipient, keyword category and attachment). To specify the action for other emails, in the
email filter profile configuration mode, use the following command:
mail o th ers [b lo ck] [lo g]
To cancel the specified action for other emails, in the email filter profile configuration mode, use
the command no mail others.
The account exception, either a sender or a recipient account, is not controlled by the email filter
rule. To specify an account exception, in the email filter profile configuration mode, use the fol-
lowing command:
mail whitelist mail-address
After binding the email filter profile to a policy rule, the system will process the traffic that is
matched to the rule according to the profile configuration. To bind the email filter profile to a
policy rule, enter the policy rule configuration mode in two steps. First, in the global con-
figuration mode, use the following command to enter the policy configuration mode:
policy-global
l profile-name - Specifies the name of email filter profile that will be bound.
If the email filter profile is bound to a security zone, the system will detect the traffic destined to
the specified security zone based on the profile configuration. If the policy rule is bound with a
email filter profile, and the destination zone of the policy rule is also bound with a email filter pro-
file, then the email filter profile bound to the policy rule will be valid.
To bind the email filter profile to a security zone, in the security zone configuration mode, use
the following command:
mail enable profile-name
l profile-name – Specifies the name of the email filter profile that will be bound to the security
zone. One security zone can only be bound with one email filter profile.
To cancel the binding settings, in the security zone configuration mode, use the following com-
mand:
no mail enable
To view the email filter profile information, in any mode, use the following command:
show mail-profile [ profile-name ]
l profile-name – Shows the specified email filter profile information. If this parameter is not
specified, the command will show the information of all the email filter profiles.
l mail-profile profile-name – Shows the control type information of the specified email filter
profile. If this parameter is not specified, the command will show all the control type inform-
ation.
The app behavior control function is designed to control and audit (record log messages) the
actions of HTTP, TELNET and FTP applications, including:
l Control and audit the FTP contents and methods, including Login, Get, and Put;
l Control and audit the HTTP methods, including Connect, Get, Put, Head, Options, Post, and
Trace;
l Control and audit the request content initiated by the TELNET client.
The application behavior control function is mainly implemented by binding a profile to a policy
rule. Once the application behavior control profile is bound to a policy rule, the system will pro-
cess the traffic that is matched to the rule according to the profile configuration.
To configure the application behavior control via CLI, take the following steps:
1. Create an application behavior control profile, and specify the FTP, HTTP and TELNET
applications that will be controlled and action in the profile.
2. Bind the application behavior control profile to an appropriate policy rule or a zone.
You need to specify the FTP, HTTP and TELNET applications that will be controlled and action
in the application behavior profile. To create an application behavior control profile, in the global
l profile-name - Specifies the name of the application behavior control profile, and enter the
configuration mode of the profile. If the specified name exists, the system will directly enter
the application behavior control profile configuration mode.
To delete the specified application behavior control profile, in the global configuration mode, use
the command no behavior-profile profile-name.
To configure the action for the FTP method, in the application behavior control profile con-
figuration mode, use the following command:
ftp {lo gin [ user-name ] | get [ file-name ] | p ut [ file-name ]} {b lo ck | p ermit} [lo g]
l login [user-name] – Controls FTP login method. To control the login method of the spe-
cified user, use parameter user-name.
l get [file-name] – Controls FTP Get method. To control the Get method to the specified file,
use parameter file-name.
l put [file-name] – Controls FTP Put method. To control the Put method to the specified file,
use parameter file-name.
To cancel the specified action for the FTP method, in the application behavior control profile con-
figuration mode, use the following command:
n o ftp {lo gin [ user-name ] | get [ file-name ] | p ut [ file-name ]}
To configure the action for the HTTP method, in the application behavior control profile con-
figuration mode, use the following command:
h ttp {co n n ect | delete [ host ] | get [ host ] | h ead [ host ] | options [ host ] | post [ host ] | put
[ host ] | trace [ host ]} { block | permit } [ log ]
l connect | delete [host] | get [host] | head [host] | options [host] | post [host] | put [host] |
trace [host] – Controls the specified HTTP method. To control the HTTP method to the
specified host, use parameter host.
To cancel the specified action for the HTTP method, in the application behavior control profile
configuration mode, use the following command:
n o h ttp {co n n ect | delete [ host ] | get [ host ] | h ead [ host ] | o p tio n s [ host ] | p o st [ host ] | p ut
[ host ] | trace [ host ]}
To control the request initiated by the TELNET client, in the application behavior control profile
configuration mode, use the following command:
teln et keywo rd-catego ry keyword-category-name { [ block ] [ log ] }
l keyword-category-name - Specifies the keyword category that will be filtered. It can be a cus-
tom keyword category or a predefined keyword category. For more information about
keyword category, see Keyword Category.
l block – System will block the content which matches the specifies keyword category.
l log – System will record logs when the content matches the specifies keyword category.
After binding the application behavior control profile to a policy rule, the system will process the
traffic that is matched to the rule according to the profile configuration. To bind the application
behavior control profile to a policy rule, enter the policy rule configuration mode in two steps.
First, in the global configuration mode, use the following command to enter the policy con-
figuration mode:
policy-global
Then, in the policy configuration mode, use the following command to enter the policy rule con-
figuration mode:
rule [id id-number ]
To bind the application behavior control profile to a policy rule, in the policy rule configuration
mode, use the following command:
behavior profile-name
l profile-name - Specifies the name of application behavior control profile that will be bound.
If the application behavior control profile is bound to a security zone, the system will detect the
traffic destined to the specified security zone based on the profile configuration. If the policy rule
is bound with a application behavior control profile and the destination zone of the policy rule is
also bound with a application behavior control profile, then the application behavior control pro-
file bound to the policy rule will be valid.
To bind the application behavior control profile to a security zone, in the security zone con-
figuration mode, use the following command:
behavior enable profile-name
To cancel the binding settings, in the security zone configuration mode, use the following com-
mand:
no behavior enable
To view the application behavior control profile information, in any mode, use the following com-
mand:
show behavior-profile [ profile-name ]
l profile-name – Shows the specified application behavior control profile information. If this
parameter is not specified, the command will show the information of all the application beha-
vior control profiles.
To view the object information in the application behavior control profile, in any mode, use the
following command:
sh o w b eh avio r-o b ject [b eh avio r-p ro file profile-name ]
l Be able to check and control the files transported through GET and POST methods of
HTTP, FTP, SMTP, IMAP, POP3 and SMB. If SMB protocol type is used, the system sup-
ports the detection and controlling of files in break-point resumption scenarios.
l Support file size, file type, and file name filter conditions.
If IPv6 is enabled, File Filter function supports file detection and behavior control based on
IPv6. For more information about how to enable IPv6, see IPv6.
The filter conditions supported by each protocol area shown below:
HTTP
FTP SMTP POP3
GET POST
File size √ √ √ √ √
File type √ √ √ √ √
File name √ √ √ √ √
After bind the file filter profile to a policy rule, the system will process the traffic that matches
the rule according to the profile. The system also supports binding the file filter profile to a
ZTNA policy to perform file detection and processing on the traffic matching the ZTNA policy.
For configuration information, refer to Configuring ZTNA Policy.
To configure file filter via CLI, take the following steps:
l Specify the protocol to be checked, the filter condition, and the actions in the file filter rule.
To create a file filter profile, in the global configuration mode, use the following command:
dlp-profile profile-name
l profile-name - Specifies the name of the file filter profile, and enter the configuration mode of
the file filter profile. If the specified name exists, the system will directly enter the file filter
profile configuration mode.
To delete the file filter profile, use the no dlp-profile profile-name command.
Use the file filter rule to specify the protocol that you want to check, the filter conditions, and the
actions. To create a filter rule, in the file filter profile configuration mode, use the following com-
mand:
filter id id-number
l id id-number – Specifies the ID of the created file filter rule, and enter the configuration
mode of the file filter rule. If the specified ID exists, the system will directly enter the file fil-
ter rule configuration mode. The ID value ranges from 1 to 8, you can specify up to 8 file fil-
ter rules.
The file must match all filter conditions in a file filter rule, and the system will perform cor-
responding control actions.
Use the no filter id id-number to delete the specified filter id.
When the size of the transported file reaches the specied file size, the system will trigger the
actions. To specify the file size, in the file filter rule configuration mode, use the following com-
mand:
file-size-threshold size-value
l size-value – Specify the file size. The value ranges from 1 to 512,000. The unit KB.
When the name of the transported file matches the specified file name, the system will trigger the
actions. To specify the file name, in the file filter rule configuration mode, use the following com-
mand:
file-namename
l name – Specify the file name. The value ranges from 1 to 255 characters. You can specify up
to 32 file names. If there is no wildcard in this specified name, then the transported file whose
name is the same as the specfied name will trigger the actions. If the asterisk (*) appears in
this specified name, then the transported file whose name contains the part that followes the
asterisk will trigger the actions.
To add the description to a file filter profile, in the file filter profile configuration mode, use the
following command:
description description
The file filter function will check the files transpored through the protocols you specified. To spe-
cify the protocol, in the file filter rule, use the following command:
protocol-type { all | h ttp -get | h ttp -p o st | ftp | smtp | imap | pop3 }
l all | http-get | http-post | ftp | smtp | pop3 – Specifies the protocols. allrepresents to
check the files transported through the GET and POST methods of HTTP, FTP, SMTP ,
POP3. http-getrepresents to check the files transported through the GET method of HTTP.
http-postrepresents to check the files transported through the POST method of HTTP. ftprep-
resents to check the files transported through FTP. smtprepresents to check the files trans-
ported through SMTP. imaprepresents to check the files transported through IMAP.
pop3represents to check the files transported through POP3.
When the transmitted file is a particular type, the system will trigger the actions. The file filter
function can identify the following file types:
7Z, AI, APK, ASF, AVI, BAT, BMP, CAB, CATPART, CDR, CIN, CLASS, CMD, CPL, DLL,
DOC, DOCX, DPX, DSN, DWF, DWG, DXF, EDIT, EMF, EPS, EPUB, EXE, EXR, FLA,
FLV, GDS, GIF, GZ, HLP, HTA, HTML, IFF, ISO, JAR, JPG, KEY, LNK, LZH, MA, MB,
MDB, MDI, MIF, MKV, MOV, MP3, MP4, MPEG, MPKG, MSI, NUMBERS, OCX, PAGES,
PBM, PCL, PDF, PGP, PIF, PL, PNG, PPT, PPTX, PSD, RAR, REG, RLA, RMVB, RPF, RTF,
SGI, SH, SHK, STP, SVG, SWF, TAR, TDB, TIF, TORRENT, TXT, VBE, WAV, WEBM,
WMA, WMF, WMV, WRI, WSF, XLS, XLSX, XML, XPM, ZIP, BZIP2, UNKNOWN
To specify the file type, in the file filter rule configuration mode, use the following command:
file-type type
Specify the action to control the files that matches the filter conditions. To specify the action, in
the file filter rule configuration mode, use the following command:
action { log | block }
l block – block represents to block the uploading or downloading of the file that matches the
filter conditions.
l log –Permit the transporting of the file that matches the filter conditions with logs.
After binding the file filter profile to a policy rule, the system will process the traffic that matches
the rule according to the profile. To bind the file filter profile to a policy rule, enter the policy
rule configuration mode in two steps.
In the global configuration mode, use the following command to enter the policy configuration
mode:
policy-global
Then, in the policy configuration mode, use the following command to enter the policy rule con-
figuration mode:
rule [ id id-number ]
To bind the file filter profile to a policy rule, in the policy rule configuration mode, use the fol-
lowing command:
dlp-profile profile-name
To view the file filter profile, in any mode, use the following command:
show dlp-profile profile-name
After configuring the decompression control function, StoneOS can decompress the transmitted
compressed files, and can handle the files that exceed the max decompression layer as well as the
encrypted compressed files in accordance with the specified actions. This function supports to
decompress the files in type of RAR, ZIP, TAR, GZIP, and BZIP2.
Tips: The decompression control function are effective for both the file filter func-
tion and the Anti-Virus function. For the Anti-Virus function, refer to "Anti-Virus"
on Page 1863.
StoneOS can decompress the transmitted compressed files. The decompression function is
enabled by default. To enable or disable the decompression function, in the global configuration
mode, use the following command:
decompression {enable | disable}
By default, StoneOS can check the files of up to 5 decompression layers. To configure the max-
imum decompression layers and the actions for the compressed files that exceed the max decom-
pression layer, in the global configuration mode, use the following command:
decompression max-recursion number exceed-actio n {lo g-o n ly | reset-co n n }
l number - Specifies the decompression layer. The value range is 1 to 5. The default value is 1.
l log-only | reset-conn - Specifies the action for the compressed files that exceed the max-
imum decompression layer. The available options include (log-only) and (reset-conn). The
default action is log-only.
To restore to the default value, in the global configuration mode, use the following command:
n o deco mp ressio n max-recursio n
Notes: For compressed files containing docx, pptx, xlsx, jar, and apk formats, when
action is specified as reset-conn, the maximum compression layers should be added
one more layer to prevent download failure.
To specify an action for encrypted compressed files, in the global configuration mode, use the fol-
lowing command:
decompression encryption-file action {lo g-o n ly | reset-co n n }
l log-only | reset-conn – Specifies the action for the encrypted compressed files. The available
options include (log-only) and (reset-conn).
To view the decompression control configuration information, in any mode, use the following
command:
If IPv6 is enabled, Network behavior record function supports IM application behavior auditing
and behavior control based on IPv6. For more information about how to enable IPv6, see IPv6.
The Network behavior record can be configured via CLI by binding a profile to a policy rule.
Once the Network behavior record profile is bound to a policy rule, the system will process the
matching traffic according to the profile configuration.
To configure Network behavior record via CLI, take the following steps:
1. Create a Network behavior record profile, and specify the IM application type, timeout and
record log messages for the access actions in the profile.
2. Bind the Network behavior record profile to an appropriate policy rule or a zone.
You need to specify the the IM application type, timeout and record log messages for the access
actions in the network behavior record profile. To create a NBR profile, in the global con-
figuration mode, use the following command:
nbr-profile profile-name
l profile-name - Specifies the name of the NBR profile, and enter the configuration mode of the
NBR profile. If the specified name exists, the system will directly enter the NBR profile con-
figuration mode.
IM Audit
The system can identify the UID (unique identification) from the IM applications traffic, as well
as the related IP address, MAC address, and occurred time. Then it records the corresponding
logs in IM logs.
To enable this function, in the NBR configuration mode, use the following command:
im {qq | wech at | sin aweib o } lo g en ab le
To disable this function, in the NBR configuration mode, user the no im {qq | wechat | sina-
weibo} log enablecommand.
Notes: To configuring the IM auditing function, you need to use the application-
identifycommand to enable the application identification function of the zone
bound by the rule.
During the timeout period, the IM user traffic of the same UID will not trigger the new logs and
after the timeout reaches, it will trigger new logs. To configure the timeout value, in the NBR con-
figuration mode, use the command below:
im {qq | wech at | sin aweib o } timeout value
l value – Specifies the timeout value. The unit is minute. The default value is 20.
In the NBR profile configuration mode, you can use the following command to enable the system
to record the web surfing log:
web -surfin g-reco rd meth o d [get | get-p o st [p o st-co n ten t] | p o st [p o st-co n ten t]]
l get - Records the web surfing log using the GET method.
l get-post - Records the web surfing log using the GET and POST methods.
l post - Records the web surfing log using the POST method.
After binding the NBR profile to a policy rule, the system will process the traffic that is matched
to the rule according to the profile configuration. To bind the NBR profile to a policy rule, enter
the policy rule configuration mode in two steps. First, in the global configuration mode, use the
following command to enter the policy configuration mode:
policy-global
Then, in the policy configuration mode, use the following command to enter the policy rule con-
figuration mode:
rule [id id-number ]
To bind the NBR profile to a policy rule, in the policy rule configuration mode, use the following
command:
n b r profile-name
After the binding, you need to modify the priority of the policy rule to assure the traffic matching
to this rule is prioritized. After then, you need to specify the user, destination zone and schedule
of the rule. You can also enable or disable the rule. For more information, see the“Policy”.
If the NBR profile is bound to a security zone, the system will detect the traffic destined to the
specified security zone based on the profile configuration. If the policy rule is bound with a NBR
profile, and the destination zone of the policy rule is also bound with a NBR profile, then the
NBR profile bound to the policy rule will be valid.
To bind the NBR profile to a security zone, in the security zone configuration mode, use the fol-
lowing command:
n b r en ab le profile-name
l profile-name – Specifies the name of the NBR profile that will be bound to the security
zone. One security zone can only be bound with one NBR profile.
To cancel the binding settings, in the security zone configuration mode, use the following com-
mand:
no nbr enable
To view the NBR profile information, in any mode, use the following command:
show nbr-profile [ profile-name ]
l profile-name – Shows the specified NBR profile information. If this parameter is not spe-
cified, the command will show the information of all the NBR control profiles.
Output Destinations
Log files can be sent to the following destinations. You can specify one of them at your own
choice:
Configuring Log
The configurations of Data Security logs include enabling/disabling Data Security log, specifying
the output destination, exporting and clearing logs. For more information about the con-
figurations, see the table below.
To enable/disable the log In the global configuration mode, use the following com-
function mand:
To record the login/- In the NBR profile configuration mode, use the following
To specify the output des- In the global configuration mode, use the following com-
tination mand:
The network topology is shown in the figure below. Hillstone device works as the gateway of an
enterprise. Ethernet0/0 connects to Internet and belongs to the untrust zone; ethernet0/1 con-
nects to the Intranet of R&D Department and belongs to the trust zone; ethernet0/3 connects to
the Intranet of Marketing Department and belongs to the trust1 zone.
l For more information about how to configure the interface, security zone
and log, see other related chapters. This section only describes Data secur-
ity configuration.
The goal is to configure a URL filter rule that forbids the members in the R&D department (the
network segment is 10.100.0.0/16) to access the news websites (except for www.abc.com) and
an entertainment websites www.bcd.com during office hours (09:00 to 18:00, Monday to Friday),
also forbids searching the keyword ef, and logs the access and search attempts.
Preparations
Before configuring the URL filter function, finish the following preparations first:
hostname(config-schedule)# exit
hostname(config)#
Step 2: Configure the user-defined URL category named bcd that contains www.bcd.com:
hostname(config-url-profile)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule id 1
hostname(config-policy-rule)# exit
hostname(config)#
hostname(config)# address ab c
hostname(config-addr)# exit
hostname(config)# p o licy-glo b al
hostname(config)#
After the configuration, modify the priority of the policy rule to assure the traffic matching to the
configured rule is prioritized. When the rule takes effect, during the office hours, the member in
the R&D department cannot access the news websites (except for www.abc.com) and www.b-
cd.com, and cannot search the keyword ef. The system will log the access and search attempts.
The goal of Exmaple 2 is to configure a Web content rule that forbids the members in the R&D
department to access the web pages containing the keywords X and Y (except for the member a.
The network segment of the R&D department is 10.100.0.0/16), and logs the access attempts.
Preparations
Before configuring the Web content function, finish the following preparations first:
hostname(config-contentfilter)# exit
hostname(config)#
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule id 2
hostname(config-policy-rule)# exit
hostname(config)#
Step 4: Set the user exception that excludes member a from control:
hostname(config-aaa-server)# user a
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)# p o licy-glo b al
Rule id 3 is created
hostname(config-policy)# rule id 3
hostname(config-policy-rule)# exit
hostname(config)#
After the configuration, modify the priority of the policy rule to assure the traffic matching to the
configured rule is prioritized. When the rule takes effect, the members in the R&D department
cannot access web pages containing the keyword X or Y. And also, the system will log the access
attempts.
The goal is to configure a Web posting rule that logs the actions of posting information with
keyword X on the website www.abc.com.
Preparations
Before configuring the Web posting function, finish the following preparations first:
hostname(config-contentfilter)# exit
hostname(config)#
Step 2: Configure the use-defined URL category named abc that contains www.abc.com:
hostname(config)# url-catego ry ab c
hostname(config-webpost-profile)# url-catego ry ab c
hostname(config-webpost-profile)# exit
hostname(config)#
hostname(config-policy)# rule id 3
hostname(config-policy-rule)# exit
hostname(config)#
After the configuration, modify the priority of the policy rule to assure the traffic matching to the
configured rule is prioritized. When the rule takes effect, the system will record log messages
when someone is posting information with keyword X in the website www.abc.com.
The goal is to forbid the employees to send emails through QQ mailbox, and record log messages
when any is sending emails through other mailboxes.
hostname(config-mail-profile)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule id 4
hostname(config)#
After the configuration, modify the priority of the policy rule to assure the traffic matching to the
configured rule is prioritized. When the rule takes effect, the employees cannot send emails
through QQ mailbox, and all the sending actions through other mailboxes will be logged.
The goal is to configure a network behavior record rule that records the WeChat login/logout log
messages of the Marketing department members (the role is marketing).
Step 1: Configure the user, role, and role mapping rule (take user1 as the example):
hostname(config-user-group)# exit
hostname(config-user)# exit
hostname(config-aaa-server)# exit
hostname(config)# ro le marketin g
hostname(config-role-mapping)# exit
hostname(config)#
Step 2: Configure the role mapping rule for the local AAA server:
hostname(config-aaa-server)# exit
hostname(config)#
hostname(config-if-eth0/3)# zo n e trust1
hostname(config-if-eth0/3)# exit
hostname(config-if-eth0/0)# zo n e un trust
hostname(config-if-eth0/0)# exit
hostname(config)#
hostname(config-webauth)# en ab le
hostname(config-webauth)# exit
hostname(config)# p o licy-glo b al
Rule id 1 is created
hostname(config-policy)# rule id 1
hostname(config-policy-rule)# ro le un kn o wn
Rule id 2 is created
hostname(config-policy)# rule id 2
hostname(config-policy-rule)# exit
hostname(config)#
Rule id 3 is created
hostname(config-policy)# rule id 3
hostname(config-policy-rule)# ro le marketin g
hostname(config-policy-rule)# exit
hostname(config)#
hostname(config-nbr-profile)# im wech at lo g en ab le
hostname(config-nbr-profile)# exit
hostname(config)#
hostname(config)# p o licy-glo b al
hostname(config-policy)# rule id 4
hostname(config-policy-rule)# im marketim
hostname(config-policy-rule)# ro le marketin g
hostname(config-policy-rule)# exit
hostname(config)#
After the configuration, modify the priority of the policy rule to assure the traffic matching to the
configured rule is prioritized. When the rule takes effect, the system will log the WeChat login/-
logout actions of the Marketing department members.
l URL lookup
l Keyword category
l Warning page
l Bypass domain
l User exception
By default, the system updates the predefined URL database every day. You can change the
update parameters according to your own requirements. Hillstone provides two default URL data-
base update servers: update1.hillstonenet.com and update2.hillstonenet.com. You can update
your URL database online or manually. For more information about how to configure the pre-
defined URL database, see the following table:
Specifying the update In the global configuration mode, use the following com-
mode mand:
url-db update mode {auto | manual}
To configure an update In the global configuration mode, use the following com-
Configuring the update In the global configuration mode, use the following com-
server mand:
url-db update {server1 | server2 | server3} {ip-address |
domain-name} [vrouter vrouter-name]
Specifying the update In the global configuration mode, use the following com-
schedule mand:
url-db update schedule {daily | weekly {mon | tue | wed
| thu | fri | sat | sun} | monthly date} [HH:MM]
When the device accesses the Internet through a HTTP proxy server, you need to specify the IP
address and the port number of the HTTP proxy server. With the HTTP proxy server specified,
various signature database can update automatically and normally.
To specify the HTTP proxy server for the URL category signature database updating, use the fol-
lowing command in the global configuration mode:
url-db up date p ro xy-server {main | b ackup } ip-address port-number
l main | backup – Use the mainparameter to specify the main proxy server and use the
backupparameter to specify the backup proxy server.
l ip-address port-number – Specify the IP address and the port number of the proxy server.
To cancel the proxy server configurations, use theno url-db update proxy-server {main |
backup}command.
Configuration CLI
To create a URL category In the global configuration mode, use the following com-
mand:
url-category category-name
To add a URL entry In the global configuration mode, use the following com-
mand:
url url url-catego ry category-name
Enable/Disable the To enable this function, use the following command in the
function that the user- global configuration mode:
defined url-db-https-enable
URL database supports To disable this function, use the following command in the
the domain name of global configuration mode:
the HTTPS protocol
no url-db-https-enable
URL Lookup
You can inquire a URL to view the details by URL lookup, including the URL category and the
category type. For more information about how to inquire a URL, see the table below:
Configuration CLI
URL inquiry server can classify an uncategorized URL (an uncatergorized URL is an address that
is neither in predefined URL database nor in user-defined URL database) you have accessed, and
then add it to the URL database during database updating. Hillstone provides two default URL
inquiry servers: url1.hillstonenet.com and url2.hillstonenet.com. By default, the URL inquiry serv-
ers are enabled. For more information about how to configure the URL inquiry server, see the
table below:
Configuration CLI
To enable/disable a URL Enable: in the global configuration mode, use the following
To configure a URL In the global configuration mode, use the following com-
Keyword Category
Keyword categories include predefined keyword categories and custom keyword categories,
which are used in the URL filtering/File Content Filter/Web Content/Web Posting/Email fil-
ter/HTTP/FTP Control function. You can use predefined keyword categories or customize the
keyword category as needed. System provides four predefined keyword categories, which are pre-
def_bank_card (keyword for bank card number), predef_email_address (keyword for email
address), predef_cellphone_number (keyword for mobile phone number), and predef_mainland_
id_card (keyword for ID number), which cannot be edited or deleted.
For more information about how to customize a keyword category, see the table below:
Configuration CLI
To create a keyword cat- In the global configuration mode, use the following com-
egory mand:
category category-name
To add a keyword entry In the global configuration mode, use the following com-
mand:
To commit the changes In the execution mode, use the following command:
System will scan traffic according to the configured keywords and calculate the trust value for the
hit keywords. The calculating method is: adding up the results of times * trust value of each
keyword that belongs to the category. The system will perform the following actions according to
the added up value:
l If the sum is larger than or equal to the category threshold (100), the configured category
action will be triggered;
l If more than one category action can be triggered and there is a block action configured, the
final action is to block;
l If more than one category action can be triggered and all the configured actions are permit, the
final action is to permit.
For example, a web content rule contains two keyword categories C1 with action block and C2
with action permit. Both of C1 and C2 contain the same keywords K1 and K2. Trust values of
K1 and K2 in C1 are 20 and 40. Trust values of K1 and K2 in C2 are 30 and 80.
Tip:
l The keyword category threshold is 100.
Warning Page
The warning page shows the user block information and user audit information.
If the network behavior is blocked by the Data Security function (URL filter, web content, web
post, email filter, HTTP/FTP control), the access to the Internet will be denied. The information
of Access Denied will be displayed in your browser, and some web surfing rules will be shown to
you on the warning page at the same time. You can also define the displayed information by your-
l Posting information to a certain type of website or posting a certain type of keywords; HTTP
actions of Connect, Get, Put, Head, Options, Post, and Trace; downloading HTTP binary
files, such as .bat, .com; downloading ActiveX and Java Applets.
By default the block warning function is enabled. For more information about the con-
figuration of the function, see the table below:
Configuration CLI
Customize the block To customize the block warning information, use the
block warning
After enabling the audit warning function, when your network behavior matches the configured
Data Security rule, your HTTP request will be redirected to a warning page, on which the audit
and privacy protection information is displayed. For example, if a keyword rule is configured to
monitor HTTPS access to websites that contain the specified keyword, then after enabling the
audit warning function, when you’re accessing a website that contains the keyword over
HTTPS, a warning page will be displayed in your Web browser, as shown in the figure below:
Configuration CLI
To enable/disable audit Enable: In the global configuration mode, use the following
warning command:
nbc-user-notification
Disable: In the global configuration mode, use the fol-
lowing command:
no nbc-user-notification
Customize the audit warn- To customize the audit warning information, use the fol-
ation to default To restore the audit warning information to default, use the
following command in the global configuration mode:
no customize-audit-notification
audit warning information l If you have customized your own audit warning inform-
ation, the customized information will be displayed.
After enabling audit warning, if your network behavior originating from one single source IP is
matched to any configured network behavior control rule, you will be prompted with the audit
warning page every 24 hours when visiting the web page.
1. Select Object > Data Security >Content Filter > Web Content/Web Posting/Email Fil-
ter/HTTP/FTP Control.
2. At the top-right corner, Select Configuration > Bypass Domain. The Bypass Domain dialog
appears.
3. Click Add. The domain name will be added to the system and displayed in the bypass
domain list. Repeat Step 3 to add more bypass domains.
Notes:
l Bypass domains must be precisely matched
User Exception
The user exception function is used to specify the users who will not be controlled by Data Secur-
ity, including URL filter, Web content, Web posting control, email filter, IM control, and
HTTP/FTP control. The system supports the following types of user exception: IP, IP range,
role, user, user group, and address entry.
To configure user exception via WebUI, take the following steps:
1. Select Object > Data Security > Content Filter > Web Content/Web Posting/Email Fil-
ter/HTTP/FTP Control.
3. Select the type of the user from the Type drop-down list.
5. Click Add. The user will be added to the system and displayed in the user exception list.
To specify the waiting time of query, in the global configuration mode, use the following com-
mand:
url-match-pending hold-time time
l time - Specifies the waiting time of query. The range is 0 to 5000 ms, and the default value is
0 ms.
Use the command no url-match-pending hold-timetime to restore the default value, which means
there is no wait time limit.
To enable the block action when waiting times out, in global configuration mode, use the fol-
lowing command:
url-match-pending timeout-action block
Use the command no url-match-pending timeout-action block to disable the block action when
waiting times out. After the waiting time of query is exceeded, system will continue to perform
URL filtering according to the configuration of URL filtering profile.
To view configurations of first access of uncategorized URL and the number of blocked times, in
any mode, use the following command:
show url-match-pending
l Access control to certain category of websites, such as gambling and pornographic websites;
l Access control to certain category of websites during the specified period. For example, for-
bid to access IM websites during the office hours;
l Access control to the website whose URL contains the specified keywords. For example, for-
bid to access the URL that contains the keyword of game.
1. Create a URL filtering profile, and specify the URL category, URL keyword category and
action in the profile.
You need to specify the control type of the URL filtering profile. The control types are URL cat-
egory, URL keyword category, and Web surfing record. URL category controls the access to some
certain category of website; URL keyword category controls the access to the website who's URL
contains the specific keywords; Web surfing record logs the GET and POST methods of HTTP,
and the posted content. You can select only one control type for each URL filtering profile. There
is a default URL filtering profile named no-url. It can not be edited and deleted. After you bind it
to a policy, URL filtering is disabled. To create a URL filtering profile, in the global configuration
mode, use the following command:
url-profile profile-name
To delete the specified URL filtering profile, in the global configuration mode, use the command
no url-profile profile-name.
To specify the URL category that will be filtered and the corresponding action, in the URL fil-
tering profile configuration mode, use the following command:
url-category { all | url-category-name } [ block ] [ log ]
l all | url-category-name – Specifies the URL category that will be filtered. It can be all the
URL categories (all) or a specific URL category (url-category-name)). You can not specify
URL category of other VSYSs. For more information about how to create a URL category, see
Specifying a HTTP Proxy Server.
Repeat the command to specify more URL categories and the corresponding actions.
To cancel the specified URL category and action, in the URL filtering profile configuration mode,
use the command no url-category {all | url-category-name}.
For HTTPS traffic, the system can acquire the domain name of the site which you want to access
from the SSL negotiation packets after this feature is configured. Then, the system will perform
URL filtering in accordance with the domain name. This feature is only applicable to the URL fil-
tering profile whose control type is URL category. If SSL proxy is configured at the same time,
SSL negotiation packets inspection method will be preferred for URL filtering. To configure the
To specify the URL keyword that will be filtered and the corresponding action, in the URL fil-
tering profile configuration mode, use the following command:
keywo rd-catego ry { keyword-category-name | o th er} [b lo ck] [lo g]
l keyword-category-name | other – Specifies the URL keyword that will be filtered. The URL
keyword can be a specific keyword category (keyword-category-name) or all the other URL
keyword categories that are not listed (other). For more information about how to create a
keyword category, see Keyword Category.
l block – Blocks the access to the website whose URL contains the specified keyword.
l log – Logs the access to the website whose URL contains the specified keyword.
Repeat the command to specify more URL keywords and the corresponding actions.
To cancel the specified URL keyword and action, in the URL filtering profile configuration mode,
use the command no keyword-category {keyword-category-name | other}.
Many search engines, such as Google, Bing, Yahoo!, Yandex, and YouTube, all have a
"SafeSearch" setting, which can filter adult content, and then return search results at different
levels based on the setting. The system supports the safe search function in the URL filtering Pro-
file to detect the “SafeSearch" setting of search engine and perform corresponding control
actions.
To enable the safe search function and specify the control action, in the URL filter profile con-
figuration mode, use the following command:
safe-search {b lo ck | en fo rce}
l enforce – Specifies the action as execute. When the "SafeSearch" setting of search engine is
not set, system will force to set it at the “strict” level.
To disable the safe search function, in the URL filter profile configuration mode, use the no safe-
search command.
Notes:
l The safe search function only can be used in the following search engines cur-
rently: Google, Bing, Yahoo!, Yandex, and YouTube.
l The safe search function only can be used in combination with the SSL proxy
function because the search engine uses the HTTPS protocol. Therefore,
when the “SafeSearch” is enabled, enable the SSL proxy function for the
policy rule which is bound with URL filter profile.
If the URL filtering profile is bound to a security zone, the system will detect the traffic destined
to the specified security zone based on the profile configuration. If the policy rule is bound with
an URL filtering Profile, and the destination zone of the policy rule is also bound with an URL fil-
tering profile, then the URL filtering profile bound to the policy rule will be valid.
To bind the URL filtering profile to a security zone, in the security zone configuration mode, use
the following command:
url enable url-profile-name
To cancel the binding settings, in the security zone configuration mode, use the following com-
mand:
no url enable
After binding the URL filtering profile to a policy rule, the system will process the traffic that is
matched to the rule according to the profile configuration. To bind the URL filtering profile to a
policy rule, enter the policy rule configuration mode in two steps. First, in the global con-
figuration mode, use the following command to enter the policy configuration mode:
policy-global
Then, in the policy configuration mode, use the following command to enter the policy rule con-
figuration mode:
rule [id id-number]
To bind the URL filtering profile to a policy rule, in the policy rule configuration mode, use the
following command:
url profile-name
l profile-name - Specifies the name of URL filtering profile that will be bound.
Notes: Only after cancelling the binding can you delete the URL filtering profile.
After the binding, you need to modify the priority of the policy rule to assure the traffic matching
to this rule is prioritized. Then, you need to specify the user, destination zone and schedule of the
rule. You can also enable or disable the rule.
To perform the URL filtering function on the HTTPS traffic, you need to enable the SSL proxy
function for the above specified security policy rule. The system will decrypt the HTTPS traffic
according to the SSL proxy profile and then perform the URL filtering function on the decrypted
SSL proxy enabled The system decrypts the HTTPS traffic according to the SSL
URL filtering disabled proxy profile but it does not perform the URL filtering func-
tion on the decrypted traffic.
SSL proxy enabled The system decrypts the HTTPS traffic according to the SSL
URL filtering enabled proxy profile and performs the URL filtering function on the
decrypted traffic.
SSL proxy disabled The system performs the URL filtering function on the HTTP
URL filtering enabled traffic according to the URL filtering profile. The HTTPS
traffic will not be decrypted and the system will transfer it.
If the SSL proxy and URL filtering functions are enabled on a security policy rule but the control
type of the selected URL filtering profile is the Web surfing record, the system will not record the
GET and POST methods and the posted contents via HTTPS.
If the zone which the security policy rule binds with is also configured with URL filtering, the sys-
tem will perform the following actions:
SSL proxy enabled URL filtering The system decrypts the HTTPS traffic
URL filtering disabled enabled according to the SSL proxy profile and per-
forms the URL filtering function on the
decrypted traffic according to the URL fil-
tering rule of the zone.
SSL proxy enabled URL filtering The system decrypts the HTTPS traffic
URL filtering enabled enabled according to the SSL proxy profile and per-
SSL proxy disabled URL filtering The system performs the URL filtering func-
URL filtering enabled enabled tion on the HTTP traffic according to the
URL filtering rule of the policy rule. The
HTTPS traffic will not be decrypted and
the system will transfer it.
To view the URL filtering profile information, in any mode, use the following command:
sh o w url-p ro file [ profile-name ]
l profile-name – Shows the specified URL filtering profile information. If this parameter is not
specified, the command will show the information of all the URL filtering profiles.
URL Blacklist/Whitelist
You can further control the access to some websites by configuring URL blacklist/whitelist.
l After the URL blacklist is configured, when you send an access request to the specified URL
in the blacklist, the system will block the request.
l After the URL whitelist is configured, when you send an access request to the specified URL
in the whitelist, system will not perform URL filtering for the access request and let the
request pass.
Notes:
l An URL category can only be referenced by an object (URL blacklist, URL
whitelist or URL filtering profile). For example, when the URL category
"Advertisement" has been added to the URL blacklist, this URL category can-
not be added to the URL whitelist, and it will not be referenced in the URL
filtering profile.
l Non-root VSYS does not support the URL blacklist\whitelist function, and
the URL blacklist/whitelist configuration under root VSYS does not take
effect and has no effect on non-root VSYS.
The URL blacklist is used to filter URL access requests that are not allowed. After the URL cat-
egory is added to the URL blacklist, the HTTP/HTTPS traffic that hits the blacklist of the URL
is blocked.
To configure the URL blacklist, you need to enter the URL blacklist configuration mode. Enter
the URL blacklist configuration mode. In global configuration mode, use the following command:
url-blacklist
To add the URL category to the URL blacklist, in the URL blacklist configuration mode, use the
following command:
url-category url-category-name
To delete the URL category from the URL blacklist, in the URL blacklist configuration mode, use
the following command:
The URL whitelist is used to filter the allowed URL access requests. After the URL category is
added to the URL whitelist, the HTTP/HTTPS traffic hitting the URL whitelist is processed and
not controlled by the URL filtering profile.
To configure the URL whitelist, you need to enter the URL whitelist configuration mode. Enter
the URL whitelist configuration mode. In global configuration mode, use the following command:
url-whitelist
To add the URL category to the URL whitelist, in the URL whitelist configuration mode, use the
following command:
url-category url-category-name
url-category-name- Specifies the URL category to add to the URL whitelist.
To delete the URL category from the URL whitelist, in the URL whitelist configuration mode,
use the following command:
no url-category url-category-name
To view URL blacklist information, in any mode, use the following command:
show url-blacklist
To view URL whitelist information, in any mode, use the following command:
show url-whitelist
The second scenario, the device works as the gateway of Web servers. The device with SSL proxy
enabled can work as the SSL server, use the certificate of the Web server to establish the SSL con-
nection with Web clients (Web browsers), and send the decrypted traffic to the internal Web
server.
Work Mode
There are three work modes. For the first scenario, the SSL proxy function can work in the "Cli-
ent Inspection - Proxy" mode ; for the second scenario, the SSL proxy function can work in the
"Server Inspection - Offload" mode and "Server Inspection - Proxy" mode.
When the SSL proxy function works in the "Client Inspection - Proxy" mode, it can perform the
SSL proxy on specified websites.
For the websites that do not need SSL proxy, it dynamically adds the IP address and port of the
websites to a bypass list, and the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic will be
bypassed.
The device will decrypte the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic that are not
blocked or bypassed.
When the SSL proxy function works in the "Server Inspection - Offload" mode, it will proxy the
SSL connections initialized by Web clients, decrypt the HTTPS traffic, and send the HTTPS
traffic as plaintext to the Web server.
When the SSL proxy function works in the "Server Inspection - Proxy" mode, it will proxy the
SSL connections initialized by Web clients, decrypt the HTTPS traffic, and re-encrypt the traffic
and send it to the Web server.
You can integrate SSL proxy function with the followings:
l Integrate with the application identification function. Devices can decrypte the
HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic encrypted using SSL by the applic-
ations and identify the application. After the application identification, you can configure the
policy rule, QoS, session limit, policy-based route.
l Integrate with the Web content function, Web post function, and email filter function.
Devices can audit the actions that access the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS
website.
1. Configure the corresponding parameters of SSL negotiation, including the following items:
specify the PKI trust domain of the device certificates, obtain the CN value of the subject
field from the website certificate and import a device certificate to the Web browser.
2. Configure an SSL proxy profile, including the following items: choose the work mode, con-
figure the actions to the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic when its
SSL negotiation matches the item in the checklist, enable the aduit warning page, and so on.
3. Bind an SSL proxy profile to a proper policy rule. The device will decrypt the
HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic that matches the policy rule and is
not blocked or bypassed by the device.
By default, the device will use the PKI trust domain of trust_domain_ssl_proxy_2048 to re-sign
the Web server certificate, i.e. SSL proxy certificate. You can change the PKI trust domain by
using the following command in the global configuration mode:
sslproxy trust-domain trust-domain-name
To restore the trust domain settings to the default one, use the no sslproxy trust-domain.
To get the CN value in the Subject field of the website certificate, take the following steps (take
www.gmail.com as the example):
4. In the Details tab, click Subject. You can view the CN value in the text box.
In the proxy process, the SSL proxy certificate will be used to replace the website certificate.
However, there is no SSL proxy certificate's root certificate in the client browser, and the client
cannot visit the proxy website properly. To address this problem, you have to import the root cer-
tificate (certificate of the device) to the browser. To import a device to the client browser, take
the following steps:
1. Export the device certificate to your local PC. Use the following command:
CLI:
export pkitrust-domain-name {cacert | cert | pkcs12 password | pkcs12-
derpassword} to {ftp serverip-address [useruser-namepasswordpassword] |
tftp server ip-address | usb0 | usb1} [file-name]
Example:
hostname# exp o rt p ki trust_do main _ssl_p ro xy cacert to tftp server
10.10.10.1
hostname#
2. Import the certificate (before importing the certificate, change the extension name of the
certificate to .crt) to the web browser (take Internet Explore as the example). Start IE, from
the toolbar, select Tools > Internet Options. On the Content tab, click Certificates. In the
Certificates dialog, click the Trusted Root Certification Authorities tab, and then click
Import, as shown in the figure below. Import the certificate as prompted by the Certificate
Import Wizard.
Configuring an SSL proxy profile includes the following items: configure the session reuse func-
tion, choose the work mode, set the website list (use the CN value of the Subject field of the web-
site certificate), configure the actions to the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS
traffic when its SSL negotiation matches the item in the checklist, enable the aduite warning page,
and so on. The system supports up to 32 SSL proxy profiles. To create an SSL proxy profile, use
the following command in the global configuration mode:
sslproxy-profile profile-name
With the Session Reuse function enabled, when the client initiates an SSL connection request to
the server, the server checks whether the request connection has been created, and if so, the pre-
vious SSL connection is resumed without the need for a complete TLS handshake, thereby redu-
cing the time consumption during the handshake process.
The system supports the following two session reuse methods:
l Ticket: Select the check box to enable the session reuse based on session ticket. In this
method, when an SSL connection is established between a client and a server for the first
time, the server encapsulates the symmetric key and other status information generated in the
TLS handshake into a session ticket which is encrypted, and then forwards the session ticket
to the client, which is stored in the cache of the client. When the client initiates the SSL con-
nection again (or initiates the connection request again after disconnection), the session ticket
will first be sent to the server for decryption. If the server successfully decrypts and verifies
the ticket, the first SSL connection will be resumed.
l ID: Select the check box to enable the session reuse based on session ID. In this method,
when an SSL connection is established between a client and a server for the first time, the ses-
sion ID, symmetric key and other status information generated during the TLS handshake will
be stored both in the cache of the client and the server. When the client initiates the SSL con-
nection request again (or initiates the connection request again after disconnection), the server
compares the session ID in the new request with the cached one and, if consistent, the first
SSL connection will be resumed.
l If session reuse based on session ticket and based on session ID are both con-
figured, session reuse based on session ticket will be prioritized.
l id | ticket - Specifies to enable (enable) or disable (disable) the session reuse function based
on session ID (id) or based on session ticket (ticket).
l value - Specifies the size of the session caches stored in the system during session reuse based
on session ticket or during session reuse based on session ID.
Default value
Model Range (Unit: piece)
(Unit: piece)
E series;
SG-6000-VM01 of CloudEdge
To cancel the specified size, in the SSL proxy profile configuration mode, use the command of no
session reuse cache-size.
Configuring the Session Timeout
To configure the timeout value of the session caches stored in the system during session reuse
based on session ticket or during session reuse based on session ID, in the SSL proxy profile con-
figuration mode, use the following command:
session reuse timeout value
l value - Specifies the timeout value of the session caches stored in the system during session
reuse based on session ticket or during session reuse based on session ID. If this timeout
To cancel the specified value, in the SSL proxy profile configuration mode, use the command of
no session reuse timeout.
Clearing the Session Caches
To clear the session caches stored in the system during session reuse based on session ticket or
during session reuse based on session ID, in any mode, use the following command:
clear sslproxy {session-ticket | session-id} cache
l session-ticket | session-id - Specifies to clear the session caches stored in the system during
session reuse based on session ticket (session-ticket) or during session reuse based on session
ID (session-id).
l session-ticket | session-id - Specifies to view the session caches stored in the system during
session reuse based on session ticket (session-ticket) or during session reuse based on session
ID (session-id).
When the device works as the gateway of Web clients, the SSL proxy function can work in the Cli-
ent Inspection - Proxy mode.
In the SSL Profile configuration mode, use the following command to choose the work mode:
mo de client-inspection proxy
If the SSL proxy function works in the client-inspection proxy mode, you can specify an applic-
ation to be proxied by the function. By default, only the HTTPS traffic passing through the
default port will be proxied, but you can specify additional applications as needed, such as
IMAPS, POP3S, SMTPS, RDPS and FTPS. Besides, you can configure user-defined ports for the
applications to be proxied. For specific configurations, refer to Configuring Rules in User-defined
Application Signature Configuration Mode in Firewall > Service and Application > Userdefined
Application.
To specify an application to be proxied by the SSL proxy function, in the SSL proxy profile con-
figuration mode, use the following command:
inspect-app {https | imaps| pop3s | smtps | rdps | ftps }
When the SSL proxy is in the Client Inspection - Proxy mode, you can specify URL categories
(predefined URL categories or user-defined URL categories) as needed, set the URL websites that
will not be proxied by the SSL proxy function. By default, the predefined URL categories "Health
& Medicine" and "Finance" have been added to the URL whitelist.
To set the URL whitelist, in the SSL proxy profile configuration mode, use the following com-
mand:
url-category category-name
To delete a URL category from the URL whitelist, use the no url-category category-namecom-
mand.
Notes: To ensure that the URL whitelist works, please upgrade the predefined URL
database before configuring this function.
Before performing the SSL proxy process, the device will chek the parameters of the SSL nego-
tiation. When a parameter matches an item in the checklist, the corresponding
HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic can be blocked or bypassed according to
the action you specified.
The device will decrypt the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic that are not
blocked or bypassed.
Notice the following items during the configurations:
l When the parameters match multiple items in the checklist and you configure difference
actions to different items, the Block action will take effect. The corresponding
HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic will be blocked.
Check the SSL protocol version used by the server. When the version of the SSL protocol used
by the SSL server meets the minimum and maximum requirements, the system can proxy its
When SSL negotiation fails and the cause of the failure can't be confirmed, you need to configure
the action for HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic, in the SSL proxy profile
configuration mode, use the following command:
unknown-ssl-failure {bypass | block}
When the SSL server uses the encryption algorithm which is not supported in system, configure
the action for HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS, in the SSL proxy profile con-
figuration mode, use the following command:
unsupported-cipher {bypass | block}
Check whether the SSL server certificate is overdue. When the SSL server certificate is overdue,
the system can decrypt, block or bypass the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS
traffic according to your configuration. To configure the action for
HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic when the SSL server certificate is over-
due, in the SSL proxy profile configuration mode, use the following command:
exp ired-cert {decryp t | b lo ck | b yp ass}
Check whether the SSL server verifies the client certificate. When the server verifies the client
certificate, the system can block or bypass the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS
traffic. By default, the system bypass the HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS traffic
and the traffic will not be decrypted. To configure the action for
HTTPS/POP3S/SMTPS/IMAPS/RDPS/FTPS when the SSL server verifies the client cer-
tificate, in the SSL proxy profile configuration mode, use the following command:
verify-client {bypass | block}
To add the description to an SSL proxy profile, in the SSL proxy profile configuration mode, use
the following command:
description description
When the device works as both the gateway of Web clients and an SSL server, to ensure the per-
formance of the SSL proxy function, the high-intensity encryption algorithm will be used by
default when the device receives the cipher suite from the SSL client. If you need to weaken the
encryption of the SSL proxy function, you can specify that the SSL server prefers the low-intens-
ity encryption algorithm. In the SSL proxy Profile configuration mode, use the following com-
mand:
downstream-cipher-mode low-intensity-first
To ensure that the root certificates stored on your device are sufficient and up-to-date, and to
reduce errors occurred during server certificate verification, you need to update the trusted root
certificate database timely. You can change the update configurations of the trusted root cer-
tificate database as needed. The update configurations include:
l Updating now
To configure the update mode of the trusted root certificate database, in the global configuration
mode, use the following command:
trusted-ro o t-ca-sto re up date [mo de {auto | man ual} | p ro xy-server {main | b ackup } proxy-
ip proxy-port | sch edule {daily | weekly {sun | mo n | tue | wed | th u | fri | sat} | mo n th ly
date } [ HH:MM ] | server1 { domain | ip } [vro uter vrouter-name ] | server2 { domain | ip }
[vro uter vrouter-name ] | server3 { domain | ip } [vro uter vrouter-name ] | protocol HTTP ]
l mode {auto | manual} – Specifies the update mode of the trusted root certificate database.
System supports automatic and manual update modes. The default mode is automatic update.
l proxy-server {main | backup} proxy-ip proxy-port– Specifies the proxy server for updating
the trusted root certificate database.
l server1 {domain | ip} [vrouter vrouter-name] – Specifies the domain, IP address and
VRouter of update server 1.
l server2 {domain | ip} [vrouter vrouter-name] – Specifies the domain, IP address and
VRouter of update server 2.
l server3 {domain | ip} [vrouter vrouter-name] – Specifies the domain, IP address and
VRouter of update server 3.
l protocol HTTP - Specifies the update protocol as HTTP, and the default protocol is HTTPS.
To update the trusted root certificate database immediately, in the execution mode, use the fol-
lowing command:
exec trusted-ro o t-ca-sto re up date
In some cases, your device may be unable to connect to the update server to update the trusted
root certificate database. To solve this problem, StoneOS provides the function for importing a
trusted root certificate database file, i.e., importing a trusted root certificate database file to the
device from an FTP or TFTP server, so that the device can update the trusted root certificate data-
base locally. To import a trusted root certificate database file, in the execution mode, use the fol-
lowing command:
imp o rt trusted-ro o t-ca-sto re fro m {ftp server { A.B.C.D | X:X:X:X::X } [vro uter vrouter-
name ] [user username p asswo rd string ] | tftp server { A.B.C.D | X:X:X:X::X }[vro uter
vrouter-name ]} file-name
l tftp server { A.B.C.D | X:X:X:X::X } [vrouter vrouter-name]– Specifies the IP address and
VRouter of the TFTP server to import a trusted root certificate database file.
l file-name – Specifies the name of the trusted root certificate database file to be imported.
To view update information of the trusted root certificate database, in any mode, use the fol-
lowing command:
show trusted-root-ca-store update
To view information of the trusted root certificate database, in any mode, use the following com-
mand:
show trusted-root-ca-store info
1. Configure an SSL proxy profile, including the following items: choose the work mode, spe-
cify the trust domain of the Web server certificate and the HTTP port number of the Web
server.
2. Bind an SSL proxy profile to a proper policy rule. The device will decrypte the HTTPS
traffic that matches the policy rule.
Configuring an SSL proxy profile includes the following items: configure the session reuse func-
tion, choose the work mode, specify the trust domain of the Web server certificate and the HTTP
port number of the Web server.
To create an SSL proxy profile, use the following command in the global configuration mode:
sslproxy-profile profile-name
l profile-name - Specifies the name of the SSL proxy profile and enter the SSL proxy profile con-
figuration mode. If the name already exists, the system will enter the SSL proxy profile con-
figuration mode directly.
With the Session Reuse function enabled, when the client initiates an SSL connection request to
the server, the server checks whether the request connection has been created, and if so, the pre-
vious SSL connection is resumed without the need for a complete TLS handshake, thereby redu-
cing the time consumption during the handshake process.
The system supports the following two session reuse methods:
l Ticket: Select the check box to enable the session reuse based on session ticket. In this
method, when an SSL connection is established between a client and a server for the first
time, the server encapsulates the symmetric key and other status information generated in the
TLS handshake into a session ticket which is encrypted, and then forwards the session ticket
to the client, which is stored in the cache of the client. When the client initiates the SSL con-
nection again (or initiates the connection request again after disconnection), the session ticket
will first be sent to the server for decryption. If the server successfully decrypts and verifies
the ticket, the first SSL connection will be resumed.
Notes:
l When the device works as the gateway of Web servers, the Web clients need
to support the session reuse function.
l If session reuse based on session ticket and based on session ID are both con-
figured, session reuse based on session ticket will be prioritized.
l id | ticket - Specifies to enable (enable) or disable (disable) the session reuse function based
on session ID (id) or based on session ticket (ticket).
Default value
Model Range (Unit: piece)
(Unit: piece)
To cancel the specified size, in the SSL proxy profile configuration mode, use the command of no
session reuse cache-size.
Configuring the Session Timeout
l value - Specifies the timeout value of the session caches stored in the system during session
reuse based on session ticket or during session reuse based on session ID. If this timeout
expires, the session caches will be deleted, and when the client establishes a SSL connection
with the server, it needs a complete TLS handshake. The value range is 1800 to 72000
seconds. The default value is 3600 seconds.
To cancel the specified value, in the SSL proxy profile configuration mode, use the command of
no session reuse timeout.
Clearing the Session Caches
To clear the session caches stored in the system during session reuse based on session ticket or
during session reuse based on session ID, in any mode, use the following command:
clear sslproxy {session-ticket | session-id} cache
l session-ticket | session-id - Specifies to clear the session caches stored in the system during
session reuse based on session ticket (session-ticket) or during session reuse based on session
ID (session-id).
l session-ticket | session-id - Specifies to view the session caches stored in the system during
session reuse based on session ticket (session-ticket) or during session reuse based on session
ID (session-id).
When the device works as the gatetway of Web servers, the SSL proxy function can work in the
"Server Inspection - Offload" mode or "Server Inspection - Proxy" mode.
l When the SSL proxy function works in the "Server Inspection - Offload" mode, it will proxy
the SSL connections initialized by Web clients, decrypt the HTTPS traffic, and send the
HTTPS traffic as plaintext to the Web server.
l When the SSL proxy function works in the "Server Inspection - Proxy" mode, it will proxy
the SSL connections initialized by Web clients, decrypt the HTTPS traffic, and re-encrypt the
traffic and send it to the Web server.
In in the SSL Profile configuration mode, use the following command to specify the work mode:
mode server-inspection { offload | proxy}
l offload - Specifies the SSL proxy working mode as "Server Inspection - Offload" mode.
l proxy - Specifies the SSL proxy working mode as "Server Inspection - Proxy" mode.
Since the device will work as the SSL server and use the certificate of the Web server to establish
the SSL connection with Web clients (Web browsers), you need to import the certificate and the
key pair into a trust domain in the device. For more information about importing the certificate
and the key pair, see the PKI chapter in StoneOS_CLI_User_Guide_User_Authentication.
After you complete the importing, specify the trust domain used by this SSL Profile. In the SSL
Profile configuration mode, use the following command to specify the trust domain:
ssl-offload server-trust-domain trust-domain-name
l trust-domain-name – Specifies the trust domain name that will be used by this SSL Profile.
To specify the HTTP port number of the Web server, in the SSL Profile configuration mode, use
the following command:
When the HTTPS traffic is decrypted by the SSL proxy function, the request to a HTTPS website
will be redirected to a warning page of SSL proxy. In this page, the system notifies the users that
their accesses to HTTPS websites are being monitored and asks the uses to protect their privacy.
In the SSL proxy profile configuration mode, use the following command to enable/disable the
warning page:
Enable the warning page: no ssl-notification-disable
Disable the warning page: ssl-notification-disable
After enabling the warning page, if your HTTPS access behavior originating from one single
source IP is matched to any configured policy rule and SSL proxy profile, you will be prompted
with the warning page every 30 minutes when visiting the website over HTTPS.
You can clear the SSL proxy warning history. After that, even that you have received the warning
page before, you will be prompted immediately when you visit the website over HTTPS again. To
clear the SSL proxy audit warning history, in any mode, use the following command:
clear sslproxy notification
To add the description to an SSL proxy profile, in the SSL proxy profile configuration mode, use
the following command:
description description
l profile-name - Specifies the name of profile that is bound to the SSL proxy.
After the binding, you need to modify the priority of the policy rule to assure the traffic matching
to this rule is prioritized. After then, you need to specify the user, destination zone and schedule
of the rule. You can also enable or disable the rule. For more information, see the “Policy”.
To add the SSL proxy filter rule, in any mode, use the following command:
exec sslproxy-filter add src-ip {A.B.C.D|A.B.C.D/M} [ dst-ip A.B.C.D dst-port port-number ]
l dst-ip A.B.C.D dst-port port-number - Specifies the destination IP address and destination
port number of which the proxy HTTPS traffic needs to be filtered.
To delete the SSL proxy filter rule, in any mode, use the following command:
exec sslproxy-filter del
To view the SSL proxy filter rule information, in any mode, use the following command:
show sslproxy-filter
To view the status of the QAT engine, in any mode, use the following command:
To view the module currently using the QAT engine, in any mode, use the following command:
To view the current request/response count of the QAT engine, in any mode, use the following
command:
sh o w sslp ro xy qat-en gin e co un ter
To view the statistic information of SSL Proxy asynchronous function, in any mode, use the fol-
lowing command:
sh o w sslp ro xy asyn c statistic
If you choose not to decrypt a site out of service concerns, privacy concerns, or other voluntary
reasons, you can add it to the domain white list. The device will not perform the SSL proxy func-
tion for the sites on the white list. To configure a user-defined domain white list, in the global
configuration mode, use the following command:
sslproxy exempt-domain domain-name description reason {enable | disable}
l domain-name–Enters the domain of the user-defined domain white list. You can enter 1
to 63 characters and the domain is case sensitive. You can use the wildcard "*" in the
domain. The wildcard "*" can only be used once and should be placed at the beginning of
the domain, such as "*.hillstonenet.com".
The device will not perform the SSL proxy function for the traffic from the IP address on the IP
whitelist. You can create a static IP on the whitelist as needed and the static IPs on the whitelist
never expire. To create a static IP on the whitelist, in the global configuration mode, use the fol-
lowing command:
sslproxy exempt-ip {ipv4 | ipv6} addressport port_id
l ipv4 | ipv6–Specifies the IP type of the static IP listed on the whitelist entry as IPv4 or
IPv6.
l port port_id–Specifies the TCP port of the static IP listed on the whitelist.
To delete the static IP listed on the whitelist, use the no sslproxy exempt-ip {ipv4 | ipv6}
address port port_id command.
When the device works as the gateway of Web clients, the system automatically adds the IP
address to the dynamic IP whitelist in the following conditions: The traffic from this IP cannot be
SSL proxied by the system and the action for the traffic is to bypass. In this scenario, the system
will not perform SSL proxy function for the traffic from the IPs listed on the IP whitelist in the
future. For more information on the configuration of the SSL proxy profile, see Configuring an
SSL Proxy Profile. The traffic of the IP, which is added to the dynamic IP whitelist because its
traffic cannot be proxied by the device, will be re-proxied again after the validity time is due. You
l num–Specifies the validity time of the dynamic IPs on the whitelist. The unit is by day.
The range of the validity time is from 1 to 30 days. The default validity time is 15 days.
Notes: After you modify the SSL Profile policy or change the validity time of the
dynamic IPs on the whitelist, the system deletes all IPs on the current lists.
Notes: The total number of IPs that can be listed on the whitelist varies on dif-
ferent platforms. When the number of IP addresses that can be listed on the whitel-
ist exceeds its upper limit, the system generates event logs to remind you of clearing
IPs on the whitelist.
l exempt-domain–Views the information of the domain white list, including the number
of total sites on the domain white list, and the domain, type, description, status of each
site on the white list.
l View the SSL proxy state, including the SSL proxy work mode, statistics, and the PKI domain
of the SSL proxy certificate, number of bypassed sessions, number of dropped new sessions,
value of real-time proxy HTTPS traffic, times of certificate verification failures:
l View the SSL profile information, including the work mode, policy rules bound to the SSL
proxy, configuration of inspection conditions, the status of alarms, URL whitelist: show
sslproxy-profile [profile-name]
l "Monitor" on Page 2189 describes how to configure all monitoring statistics function for the
system.
l "Alarm" on Page 2251 describes how to configure an alarm rule to analyze and collect alarm
information.
l "Logs" on Page 2271 introduces all the log functions of the system and how to output various
log information of the device.
l "NetFlow" on Page 2328describes how to configure the NetFlow function to perform stat-
istics and analysis on network traffic.
Overview
Monitor include:
l User Monitor: Monitor based on user, Gathers statistics on the data and traffic passing through
user, usergroup, address Book.
l Application Monitor: Monitor based on application, Gathers statistics on the data and traffic
passing through application, application-group.
l Device Monitor: Monitor based on devices. Gathers statistics on the total traffic, interface
traffic, zone , Online IP , new/concurrent sessions, NATand hardware status.
l URL Hit: Monitor based on URL. Gathers statistics on user/IPs, URLs and URL categories.
l Keyword Block: Gathers statistics on the Web keyword, Web keywords, email keywords,
posting keywords and users/IPs.
l User-defined Monitor: Gathers statistics on the data passing through the Hillstone device.
User Monitor
Gathers statistics on the data and traffic passing through user, usergroup, address Book. If IPv6 is
enabled, system will support to monitor both IPv4 and IPv6 address.
The monitor address is a database that stores the user's address which is used for the statistics. In
the global configuration mode, use the following command:
statistics address address-entry-name
To disable address-based statistics, in the global configuration mode, use the following command:
no statistics address address-entry-name
To view the statistical information on the traffic from or to the specified address, in any mode,
use the following command:
sh o w statistics address [ address-entry-name ] [curren t | lasth o ur | lastday | lastmo n th ]
l address-entry-name – Specifies the name of the address entry. If this parameter is not spe-
cified, the command will show traffic statistics of all the address entries being referenced by
the statistics function (by command statistics address address-entry-name).
l current – Shows the real-time traffic statistics of the specified address entry
l lastday – Shows the traffic statistics of the specified address entry per 10 minutes for the last
24 hours.
The system will match the traffic which is sent from the Internet to Subnet according to the spe-
cified address. If matched, the traffic will be counted to the Subnet side. To configure the subnet
monitor address book, in the global configuration mode, use the following command:
statistics-filter {address | ipv6-address} address-entry-name
To disable subnet monitor address book, in the global configuration mode, use the following com-
mand:
no statistics-filter {address | ipv6-address} address-entry-name
To view the predefined stat-set information for user monitor, see Viewing Stat-set Information.
Tip: Non-root VSYS also supports user monitor, but does not support address
book statistics.
Application Monitor
Application-based statistics allows you to gather statistics on the traffic of the specified applic-
ation in real time, or per 30 seconds, per 10 minutes and per 24 hours in the last 60 minutes, 24
hours and 30 days respectively. If IPv6 is enabled, system will support to monitor both IPv4 and
IPv6 address.
To configure the monitor application group, in the global configuration mode, use the following
command:
statistics application-group application-group-name
To delete monitor application group, in the global configuration mode, use the following com-
mand:
no statistics application-group application-group-name
To view the statistical information on the traffic of the specified application, in any mode, use the
following command:
sh o w statistics ap p licatio n -gro up [ application-group-name ] [curren t | lasth o ur | lastday | last-
mo n th ]
l current – Shows the real-time traffic statistics of the specified application group.
l lasthour – Shows the traffic statistics of the specified application group per 30 seconds for
the last 60 minutes.
l lastday – Shows the traffic statistics of the specified application group per 10 minutes for the
last 24 hours.
l lastmonth – Shows the traffic statistics of the specified application group per 24 hours for
the last 30 days.
To view the predefined stat-set information for application monitor,see Viewing Viewing Stat-set
Information.
Tip: Non-root VSYS also supports application monitor, but does not support to
monitor application group.
Non-root VSYS also supports threat monitor in T Series platforms. The predefined stat-set for
threat monitor includes:
To view the predefined stat-set information for threat monitor, see Viewing Stat-set Information.
QoS Monitor
Only supports to use WebUI to viewing the QoS monitor information, see StoneOS_WebUI_
User_Guide.
host…type dns
Create a service node, type is DNS. Use the no form to delete the node.
Command:
host [ test-only ] [ id node-id ] name node-name { ip-address | host-name } type dns
domain domain-name [ port port ] source-interface interface-name [ probe-interval inter-
val ] [ parent parent-id ] [ desc description ] group group-name
no host id node-id
Description:
test-only -If this parameter is specified, the system will show the results of detection.
node-id - Specifies the service/network node ID.
host…type ftp
Create a service node, type is FTP. Use the no form to delete the node.
Command:
no host id node-id
Description:
test-only -If this parameter is specified, the system will show the results of detection.
node-id -Specifies the service/network node ID.
node-name -Specifies the name of service/network node.
ip-address -Specifies the node IP address.
host-name -Specifies the host name of node.
user username -Specifies the user name of server.
password password -Specifies the password of server.
uri uri -Specifies the name of file saved on server.
port -Specifies the port of server, the value range is 1 to 65535.
interface-name -Specifies the interface name of egress interface.
probe-interval interval -Specifies the probe interval, the value range is 15 to 120 seconds.
parent-id -Specifies the parent node ID. If this parameter is not specified, the parent node is root
node as default.
description -Specifies the description.
Default values:
port: 21
probe-interval interval: 30s
parent-id: 0
Mode:
Monitor configuration mode.
Guidance:
None
host…type http
Create a service node, type is HTTP. Use the no form to delete the node.
Command:
h o st [test-o n ly] [id node-id ] n ame node-name { ip-address | host-name } typ e h ttp url url-
address [p o rt port ] source-interface interface-name [p ro b e-in terval interval ] [p aren t parent-
id ] [desc description ]
n o h o st id node-id
Description:
test-only -If this parameter is specified, the system will show the results of detection.
node-id -Specifies the service/network node ID.
node-name -Specifies the name of service/network node.
ip-address -Specifies the node IP address.
host-name -Specifies the host name of node.
url-address-Specifies the name of file saved on server.
port -Specifies the port of server, the value range is 1 to 65535.
interface-name -Specifies the interface name of egress interface.
probe-interval interval -Specifies the probe interval, the value range is 15 to 120 seconds.
parent-id -Specifies the parent node ID. If this parameter is not specified, the parent node is root
node as default.
description -Specifies the description.
Default values:
port:80
probe-interval interval:30s
parent-id:0
host…type icmp
Create a service node, type is ICMP. Use the no form to delete the node.
Command:
h o st [test-o n ly] [id node-id ] n ame node-name { ip-address | host-name } typ e icmp so urce-
in terface interface-name [p ro b e-in terval interval ] [p aren t parent-id ] [desc description ]
n o h o st id node-id
Description:
test-only -If this parameter is specified, the system will show the results of detection.
node-id -Specifies the service/network node ID.
node-name -Specifies the name of service/network node.
ip-address -Specifies the node IP address.
host-name -Specifies the host name of node.
interface-name -Specifies the interface name of egress interface.
probe-interval interval -Specifies the probe interval, the value range is 15 to 120 seconds.
parent-id -Specifies the parent node ID. If this parameter is not specified, the parent node is root
node as default.
description -Specifies the description.
Default values:
probe-interval interval: 30s
host…type imap4
Create a service node, type is IMP4. Use the no form to delete the node.
Command:
h o st [test-o n ly] [id node-id ] n ame node-name { ip-address | host-name } typ e imap 4 [p o rt port ]
so urce-in terface interface-name [p ro b e-in terval interval ] [p aren t parent-id ] [desc description ]
no host id node-id
Description:
test-only -If this parameter is specified, the system will show the results of detection.
node-id -Specifies the service/network node ID.
node-name -Specifies the name of service/network node.
ip-address -Specifies the node IP address.
host-name -Specifies the host name of node.
port -Specifies the port of server, the value range is 1 to 65535.
interface-name -Specifies the interface name of egress interface.
probe-interval interval -Specifies the probe interval, the value range is 15 to 120 seconds.
parent-id -Specifies the parent node ID. If this parameter is not specified, the parent node is root
node as default.
description -Specifies the description.
host…type ldap
Create a service node, type is LDAP. Use the no form to delete the node.
Command:
h o st [test-o n ly] [id node-id ] n ame node-name { ip-address | host-name } typ e ldap [[p o rt port ]
| user username p asswo rd password uri uri [p o rt port ]] so urce-in terface interface-name
[p ro b e-in terval interval ] [p aren t parent-id ] [desc description ]
n o h o st id node-id
Description:
test-only -If this parameter is specified, the system will show the results of detection.
node-id -Specifies the service/network node ID.
node-name -Specifies the name of service/network node.
ip-address -Specifies the node IP address.
host-name -Specifies the host name of node.
user username -Specifies the user name of server.
password password -Specifies the password of server.
host…type pop3
Create a service node, type is POP3. Use the no form to delete the node.
Command:
h o st [test-o n ly] [id node-id ] n ame node-name { ip-address | host-name } typ e p o p 3 [p o rt port ]
so urce-in terface interface-name [p ro b e-in terval interval ] [p aren t parent-id ] [desc description ]
n o h o st id node-id
Description:
test-only -If this parameter is specified, the system will show the results of detection.
node-id -Specifies the service/network node ID.
node-name -Specifies the name of service/network node.
host…type smtp
Create a service node, type is SMTP. Use the no form to delete the node.
Command:
h o st [test-o n ly] [id node-id ] n ame node-name { ip-address | host-name } typ e smtp [p o rt
port ] source-interface interface-name [p ro b e-in terval interval ] [p aren t parent-id ] [desc
description ]
n o h o st id node-id
Description:
no host id node-id
Description:
test-only -If this parameter is specified, the system will show the results of detection.
node-id -Specifies the service/network node ID.
node-name -Specifies the name of service/network node.
ip-address -Specifies the node IP address.
host-name -Specifies the host name of node.
port -Specifies the port of server, the value range is 1 to 65535.
interface-name -Specifies the interface name of egress interface.
probe-interval interval -Specifies the probe interval, the value range is 15 to 120 seconds.
parent-id -Specifies the parent node ID. If this parameter is not specified, the parent node is root
node as default.
description -Specifies the description.
Default values:
probe-interval interval:30s
parent-id:0
Mode:
Monitor configuration mode.
Guidance:
None
Example:
hostname(config-monitor)# host name test 1.1.1.1 type tcp port 4455 source-interface
ethernet0/3
Device Monitor
Non-root VSYS also supports device monitor, but doesn’t support hardware status. If IPv6 is
enabled, system will support to monitor both IPv4 and IPv6 address. The commands of device
monitor:
To view the statistical information on the traffic passing through the specified interface, in any
command mode, use the following command:
sh o w statistics in terface-co un ter in terface interface-name {seco n d | min ute | hour | day}[
IPv4 | IPv6 | n o ip ]
l second – Shows the traffic statistics of the specified interface per second for the last 60
seconds.
l minute – Shows the traffic statistics of the specified interface per minute for the last 60
minutes.
l hour – Shows the traffic statistics of the specified interface per hour for the last 24 hours.
l day – Shows the traffic statistics of the specified interface for the last 30 days.
l IPv4 | IPv6 | noip - Shows the traffic statistics of of IPv4, IPv6 address type, or non IP pack-
ets. If this parameter is not specified, all traffic information will be displayed by default.
To view the predefined stat-set information for device monitor, see Viewing Stat-set Information.
The virtual hard disk of CloudEdge device is divided into system partition and data partition. The
system partition is used to store system files, while the data partition is used to store logs and
reports. To view the utilization of the virtual hard disk of CloudEdge device, in any mode, use
the following command:
show disk
Example:
hostname# sh o w disk
Displays the utilization of data partition of the virtual hard disk of CloudEdge device
hostname#
In any mode, use the following command to view the usage of the system memory:
show memory
In any mode, use the following command to view the system memory size occupied by file sys-
tems:
show memory filesys
URL Hit
The predefined stat-set for URL hit includes:
If IPv6 is enabled, system will support to monitor both IPv4 and IPv6 address.
To view the predefined stat-set information for URL hit, see Viewing Stat-set Information.
Tip: Non-root VSYS also supports URL hit in E and X series platforms.
To enable the link user experience monitor, first enter the link monitor configuration mode, and
then specify the binding interface. In the global configuration mode, use the following command
to specify the binding interface:
link-perf-monitor interface interface-name
After enabling the application switch, you can see details of the specific application in this inter-
face. By default, the application switch is disabled. To enable the application switch, in the link
monitor configuration mode, use the following command:
application on
To disable this function for the specified interface, use the no application oncommand in the link
state monitor configuration mode.
To specify the description for the binding interface, in the link monitor configuration mode, use
the following command:
description string
To delete the description, use the no description in the link monitor configuration mode.
To view link state monitor configuration information, in any mode, use the following command:
show link-perf-monitor information
To view statistics information of link user experience, in any mode, use the following command:
l interface interface-name – View the link user experience monitoring statistics according to
the specified interface.
l application application-name – View the link user experience monitoring statistics according
to the specified application. If not specified, the system will display the statistics information
according to the specified interface.
l ipv4 | ipv6–View the link user experience monitoring statistics according to the specified IP
type. If not specified, system will display the statistics information including IPv4 and IPv6
by default.
System supports for link detection to calculate the traffic information of the specific destination
IP address in the link, including latency, and jitter.
To configure the detection destination, first enter the link detection monitor configuration mode,
and then specify the destination IP address. In the global configuration mode, use the following
command to specify the destination IP address:
lin k-detect-o b ject
To configure the link detection destination of IPv4, in the link detection monitor configuration
mode, use the following command:
ipA.B.C.D protocol {tcp [port port-number] | icmp} [interval value] [description description]
l tcp [port port-number]- Specify the protocol type as TCP and specify the port number.
To delete the detection destination, use the no ip A.B.C.D in the link detection monitor con-
figuration mode.
To configure the link detection destination of IPv6, in the link detection monitor configuration
mode, use the following command:
ipv6 X:X:X:X::X protocol {tcp [port port-number] | icmpv6} [interval value] [description descrip-
tion]
l tcp [port port-number]- Specify the protocol type as TCP and specify the port number.
l interval value- Specifies the interval time of the detection packet. The value range is 1 to 5
seconds, the default value is 1.
To delete the detection destination, use the no ipv6 X:X:X:X::X in the link detection monitor
configuration mode.
To view link detection monitor configuration information, in any mode, use the following com-
mand:
sh o w lin k-detect-o b ject {all | A.B.C.D | X:X:X:X::X }
l all – Display the link detection monitor configuration information of all the destination IP
address.
Application Block
The predefined stat-set for Application Block includes:
If IPv6 is enabled, system will support to monitor both IPv4 and IPv6 address.
To view the predefined stat-set information for Application Block, see Viewing Stat-set Inform-
ation.
Tip: Non-root VSYS also supports application block in E and X series platforms.
Keyword Block
The predefined stat-set for Keyword Block includes:
To view the predefined stat-set information for Keyword Block, see Viewing Stat-set
Information.
Tip: Non-root VSYS also supports keyword block in E and X series platforms.
Authentication User
The commands of authentication User:
show auth-user
Description:
username user-name -View the online user of specific username information .
web-auth -View the online WebAuth user information.
scvpn -View online users of all SCVPN instances.
Default values:
None
Mode:
Any mode
Guidance:
This command also displays the groups associated with an online user. If an online user is asso-
ciated with more than 256 groups, it will display only the firstly configured 256 groups.
Example:
View the information about online authenticated users in a specific user group.
Command:
show auth-user groupname group_name
Description:
groupname group_name -Specifies the name of the user group.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname#show auth-user groupname group1
show dp-auth-user
Description:
username user-name -View the online user information with the specific username.
interface interface-name - Specifies the interface name.
vrouter vrouter-name - Specifies the VRouter name.
Default values:
None
show pseudo-group
Description:
interface interface-name -Specifies the interface name.
vrouter vrouter-name -Specifies the interface VRouter name.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# sh o w auth -user do t1x
View the online users information that use specific interface as authentication ingress interface.
Command:
show auth-user interface interface-name
Description:
interface-name -Specifies the interface name.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# sh o w auth -user in terface eth ern et1/1
show auth-user ip
Description:
interface interface-name -Specifies the interface name.
vrouter vrouter-name -Specifies the interface VRouter name.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# show auth-user l2tp interface ethernet0/1
Description:
mac-address -Specifies the MAC address.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# sh o w auth -user mac 0050.569d.0b 7e
Description:
interface interface-name - Specifies the interface name.
vrouter vrouter-name - Specifies the interface VRouter name.
slot slot-no - Specifies the number.
Default values:
None
Mode:
Any mode
Guidance:
Description:
mac mac-address -Specifies the MAC address for binding.
ip ip-address -Specifies the IP address for binding.
interface interface-name -Specifies the interface name.
vrouter vrouter-name - Specifies the VRouter name.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# sh o w auth -user static
Description:
interface interface-name - Specifies the interface name.
vrouter vrouter-name - Specifies the interface VRouter name.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# show auth-user ad-polling
Description:
interface interface-name - Specifies the interface name.
vrouter vrouter-name- Specifies the interface VRouter name.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# show auth-user sso-radius
Description:
interface interface-name- Specifies the interface name.
vrouter vrouter-name - Specifies the interface VRouter name.
Default values:
None
Mode:
Description:
interface interface-name - Specifies the interface name.
vrouter vrouter-name - Specifies the interface VRouter name.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# sh o w auth -user web auth -n tlm
Description:
Description:
interface interface-name - Specifies the interface name.
vrouter vrouter-name - Specifies the interface VRouter name.
Default values:
None
Mode:
Any mode
Guidance:
None
Example:
hostname# sh o w auth -user web auth
User-defined Monitor
The stat-set of StoneOS allows you to gather statistics on the data passing through the device.
With this function configured, you can view the real-time or periodical statistical information
based on data types or grouping methods. All the statistical information can be filtered as needed
to help you have a more detailed and accurate understanding of the resource allocation and net-
work security status of system.
If IPv6 is enabled, system will support to monitor both IPv4 and IPv6 address.
User-defined monitor statistics include:
l Creating a stat-set
l Configure a filter
Creating a Stat-set
To create a stat-set, in the global configuration mode, use the following command:
statistics-set name
After executing the above command, the system will create a stat-set with the specified name, and
enter the configuration mode; if the name of the stat-set exists, the system will directly enter the
stat-set configuration mode.
To delete the specified stat-set, in the global configuration mode, use the following command:
no statistics-set name
The type of statistical data of stat-sets includes bandwidth, session, new session ramp-up rate,
attack rate, virus number, intrusion count, URL hit, keyword block and application block. To con-
figure the type of statistical data, in the stat-set configuration mode, use the following command:
target-data {b an dwidth | sessio n | ramp up -rate | url-h it | ap p licatio n -b lo ck| attack-rate }
[reco rd-h isto ry] [ro o t-vsys-o n ly]
l root-vsys-only – Just monitors data of root VSYS. If this parameter is not configured, data of
all VSYSs will be statistical.
l The URL hit statistics are only available to users who have a URL license.
l Non-root VSYS only supports types including bandwidth, session, new ses-
sion ramp-up rate and URL hit
The data grouping methods of statistical set include IP, interface, security zone, application, user,
URL, URL category and VSYS type. The actual options may vary from different date types. Non-
root VSYS also supports grouping methods including IP, interface, security zone, application,
user, URL and URL category.
To configure a data grouping method, in the stat-set configuration mode, use the following com-
mand:
gro up -b y {[ip [directio n al] [in itiato r | resp o n der | b elo n g-to -zo n e zone-name | n o t-b elo n g-
to -zo n e zone-name | b elo n g-to -in terface interface-name | n o t-b elo n g-to -in terface inter-
face-name ]] | in terface [directio n al] | zo n e [directio n al] | ap p licatio n | user [directio n al] |
url | url-catego ry | vsys}
l ip – Specifies IP address as the data grouping method for the stat-set. You can use initiator |
responder | belong-to-zone zone-name | not-belong-to-zone zone-name | belong-to-inter-
face interface-name | not-belong-to-interface interface-nameparameters to specify the IP
range for the statistics. It can be the IP that initiates the session ( initiator), the IP that
receives the session (responder), the IP that belongs to a specific security zone (belong-to-
l directional – Specifies the statistical results for both directions, i.e., when the data is
grouped by IP, interface or security zone, the inbound and outbound traffic, the number of
received and sent sessions, the ramp-up rate of new received and sent sessions will be
gathered for the statistics respectively; if this option is not configured, the default statistics
result is non-directional, i.e., when the data is grouped by IP, interface or security zone, all the
traffic, sessions and ramp-up rate of news sessions will be gathered for the statistics.
l interface – Specifies interface as the data grouping method for the stat-set.
l zone – Specifies security zone as the data grouping method for the stat-set.
l application – Specifies application as the data grouping method for the stat-set. In such a
case the type of statistical data should not be AD attack rate, URL hit count and keyword
block count.
l user – Specifies user as the data grouping method for the stat-set.
l url – Specifies URL as the data grouping method for the stat-set.
l url-category – Specifies URL category as the data grouping method for the stat-set.
l vsys – Specifies VSYS as the data grouping method for the stat-set.
To cancel of the configurations that specify the data grouping method of the stat-set, in the stat-
set configuration mode, use the following command:
no group-by
The following table lists statistical information based on IP type:
Key- Applic-
Condi-
Direction Ramp-up URL hit word ation
tion Traffic Session
rate count block block
count count
Statistics Statistics
Statistics
on the ses- on the
on the
sion num- new ses-
Initiator traffic of
ber of the sions of
the ini-
initiator's the ini-
tiator's IP
IP tiator's IP
Key- Applic-
Condi-
Direction Ramp-up URL hit word ation
tion Traffic Session
rate count block block
count count
zone zone
Key- Applic-
Condi-
Direction Ramp-up URL hit word ation
tion Traffic Session
rate count block block
count count
Statistics Statistics
Statistics
on the ses- on the
on the
sion num- new ses-
traffic of
ber of an sions of
Not an IP that
IP that an IP that
belong to does not
does not does not
zone belong to
belong to belong to
a specific
a specific a specific
security
security security
zone
zone zone
Statistics Statistics
Statistics
on the ses- on the
on the
sion num- new ses-
traffic of
Belong to ber of an sions of
an IP that
interface IP that an IP that
belongs to
belongs to belongs to
a specific
a specific a specific
interface
interface interface
Key- Applic-
Condi-
Direction Ramp-up URL hit word ation
tion Traffic Session
rate count block block
count count
ber of an sions of
an IP that
IP that an IP that
does not
does not does not
belong to
belong to belong to
a specific
a specific a specific
interface
interface interface
Key- Applic-
Condi-
Direction Ramp-up URL hit word ation
tion Traffic Session
rate count block block
count count
Statistics Statistics
Statistics
on the on the
on the
number of new
inbound
received received
and out-
and sent and sent
bound
Belong to sessions sessions
traffic of
zone of an IP of an IP
an IP that
that that
belongs to
belongs to belongs to
a specific
a specific a specific
security
security security
zone
zone zone
Key- Applic-
Condi-
Direction Ramp-up URL hit word ation
tion Traffic Session
rate count block block
count count
Statistics Statistics
Statistics
on the on the
on the
number of new
inbound
received received
and out-
and sent and sent
Belong to bound
sessions sessions
interface traffic of
of an IP of an IP
an IP that
that that
belongs to
belongs to belongs to
a specific
a specific a specific
interface
interface interface
Key- Applic-
Condi-
Direction Ramp-up URL hit word ation
tion Traffic Session
rate count block block
count count
The interface, zone, user, application, URL, URL category, VSYS type-based statistical inform-
ation table.
Data type
Key- Applic-
Dir-
Group by Ramp-up URL hit word ation
ection Traffic Session
rate count block block
count count
Key- Applic-
Dir-
Group by Ramp-up URL hit word ation
ection Traffic Session
rate count block block
count count
security
zones zones
zones
Statistics
Statistics Statistics Stat-
on the
on the on the ses- istics on
new ses-
No dir- traffic of sion num- the URL
sions of
ection the spe- ber of the hit
the spe-
Interface cified specified count of N/A N/A
cified
interfaces interfaces the spe-
interfaces
cified
Key- Applic-
Dir-
Group by Ramp-up URL hit word ation
ection Traffic Session
rate count block block
count count
Statistics Statistics
Statistics Statistics
on the on the
on the on the ses-
new ses- block
traffic of sion num-
Applic- sions of count of
N/A the spe- ber of the N/A N/A
ation the spe- the spe-
cified specified
cified cified
applic- applic-
applic- applic-
ations ations
ations ations
Key- Applic-
Dir-
Group by Ramp-up URL hit word ation
ection Traffic Session
rate count block block
count count
Statistics
on the
inbound
of the
and out- the spe-
Bi-dir- cified spe-
bound users cified
ectional users cified
traffic of users
users
the spe-
cified
users
Stat-
istics on
the hit
URL N/A N/A N/A N/A count of N/A N/A
the spe-
cified
URLs
Stat-
istics on
URL Cat-
N/A N/A N/A N/A the hit N/A N/A
egory
count of
the spe-
Key- Applic-
Dir-
Group by Ramp-up URL hit word ation
ection Traffic Session
rate count block block
count count
cified
URL cat-
egories
Stat-
Statistics
Statistics Statistics istics on
on the
on the on the ses- the URL
new ses-
traffic of sion num- hit
VSYS N/A sions of N/A N/A
the spe- ber of the count of
the spe-
cified specified the spe-
cified
VSYSs VSYSs cified
VSYSs
VSYSs
Configuring a Filter
You can configure a filtering condition for the stat-set to gather statistics on the specified con-
dition, such as statistics on the session number of the specified security zone, or the traffic of the
specified IP.
Type Description
To configure a filter, in the stat-set configuration mode, use the following command:
filter {ip { A.B.C.D/M | address-entry } [so urce | destin atio n ] | in terface name [in gress |
egress] | zo n e name [in gress | egress] | ap p licatio n name | user user-name aaa-server-name |
user-gro up user-group-name aaa-server-name | ro le role-name | service service-name }
Repeat the command to configure multiple filters. The system supports up to 32 filters for each
stat-set, among which the number of filters for each type of the user, user group and role filters
cannot exceed 8. If multiple filters configured for the same stat-set belong to the same type, then
the logical relationship among these conditions will be OR; if they belong to different types, the
logical relationship among these conditions will be AND.
To delete the specified type of filters, in the stat-set configuration mode, use the following com-
mand:
n o filter {ip { A.B.C.D/M | address-entry } [so urce | destin atio n ] | in terface name [in gress |
egress] | zo n e name [in gress | egress] | ap p licatio n name | user user-name aaa-server-name |
user-gro up user-group-name aaa-server-name | ro le role-name | service service-name }
To delete all types of filters, in the stat-set configuration mode, use the following command:
no filter all
By default all the predefined stat-set for user monitor, application monitor, device monitor are dis-
abled except for the stat-set of bandwidth.
To enable or disable a stat-set, in the stat-set configuration mode, use the following commands.
l Enable: active
l Disable: no active
Tip: After the above command is executed in the root VSYS, specified pre-
defined stat-set of all VSYSs will be enabled or disabled(except that the non-
root VSYS does not support this predefined stat-set). You can not enable or dis-
able their own predefined stat-set in non-root VSYSs.
To view the configuration information of the predefined and user-defined stat-set, in any mode,
use the following command:
sh o w statistics-set name [{curren t | h isto ry | h isto ry-max}[ IPv4 | IPv6 ] [so rt-b y {up |
do wn | item}]]
l show statistics-set – Shows the configuration information of all the stat-sets in the system.
l name – Specifies the name of the stat-set to show the configuration information of the stat-
set.
l current | history | history-max – Shows specific statistics of the specified stat-set, including:
l history – Shows historic statistics of the specified stat-set. The system samples data
every five minutes.
l sort-by {up | down | item} – Specifies the sorting method for the statistics of the specified
stat-set (in a descending order of the file size).
l down – Sorted by inbound data (only when the Group by is configured with Bi-dir-
ectional parameters).
Diagnostic Center
The system supports the Diagnostic Center function. This function can be used to collect stat-
istics of packet loss of different functional modules, which helps you identify issues. The detailed
function is described as follows.
l Supports statistics on packet loss of functional modules. The packet loss statistics are dis-
played in lists, bar charts, or line charts.
l Allows you to view detailed packet loss statistics of functional modules, including the time of
packet loss, 5-tuple (source IP, source port, destination IP, destination port, and protocol
type), and module of packet loss.
l Allows you to manually enable the collection of 5-tuple statistics of packet loss or set the
threshold to trigger packet loss statistics collection.
l Supports the storage of packet loss statistics to device disks. You can set limits on the size of
the statistics storage space. For more information, see Storage Management.
You can enable the function of always collecting 5-tuple statistics of packet loss. This way, the
system will always collect the 5-tuple statistics of packet loss of all functional modules (source IP,
source port, destination IP, destination port, and protocol type). To enable this function, run the
following command in the global configuration mode:
module-drop-counter force-cap-packet enable
In the global configuration mode, run the no module-drop-counter force-cap-packet enablecom-
mand to disable the function of always collecting 5-tuple statistics of packet loss.
Notes: After the function of always collecting 5-tuple statistics of packet loss is
enabled, the packet loss threshold of functional modules and packet loss growth
rate threshold do not take effect.
You can configure a packet loss threshold for functional modules. If the packet loss count of a func-
tional module exceeds the threshold, it is determined the packet loss is abnormal and the 5-tuple of
abnormal packet loss is recorded. To configure a packet loss threshold, run the following command
in the global configuration mode:
l number - Specifies the packet loss threshold. Valid values: 0 to 20000. Default value: 0,
which indicates that no threshold is specified and the 5-tuple statistics of packet loss are
always collected.
You can configure a packet loss growth rate threshold for functional modules. If the packet loss
growth rate of a functional module exceeds the threshold, it is determined the packet loss is abnor-
mal and the 5-tuple of abnormal packet loss is recorded. To configure a packet loss growth rate
threshold, run the following command in the global configuration mode:
module-drop-counter growth-rate number
l number - Specifies the packet loss growth rate threshold. Valid values: 0 to 100. Default
value: 0, which indicates that no threshold is specified and the 5-tuple statistics of packet loss
are always collected.
In the global configuration mode, run the no module-drop-counter growth-rate command to reset
the packet loss growth rate threshold to the default value.
Long-term Monitor
The system supports the long-term monitor function. This function can be used to continuously
monitor and collect statistics on device traffic and sessions and then store these statistics, which
meets your requirements for network monitoring and diagnostics. The detailed function is
described as follows.
l Supports the storage of statistics for device traffic and sessions over the last 180 days to the
device disks. You are allowed to set limits on the size of the statistics storage space.
l Supports query by IP or application type. You can query data from a maximum of 31 con-
secutive days within the last 180 days.
l Supports the display of statistics in lists, bar charts, and line charts.
By default, the Long-term Monitor function is disabled. To enable/disable this function, run the
following command in the global configuration mode:
statistics-long-term {enable | disable}
Overview
The alarm feature can actively detect protected network to locate suspicious issues and send out
alarming messages. The rule that defines what behavior should be alerted is called alarm rule.
The system can analyze alarm messages and display the analysis results in the form of chart and
time line. In addition, alarm messages can also be sent to system administrators by sending emails
or sms text. In this way, the administrator can receive alerts in the first place and respond to the
alarms.
Alarm Commands
action
alarm
hostname<config># alarm
hostname<config-alarm>#
alarm-expiration-time
alarm-receiver
Description:
name name -Specifies the recipient's name.
desc description -Specifies the recipient's description.
mail mail -Specifies the email address for receiving warning emails.
sms sms -Specifies the mobile phone number for receiving warning messages.
Default values:
None
Mode:
alarm configuration mode
Guidance:
None
Example:
alarm-rule (application)
Create an alarm rule(application), and enter the alarm rule configuration mode.If this rule is already
exists, the system will directly enter the alarm rule configuration mode.
Command:
alarm-rule [id id ] n ame name [desc description ] typ e ap p licatio n b an dwidth | co n curren t-ses-
sio n s | p acket-fo rward-rate | ramp up
Description:
id id -Specifies the alarm rule ID.
name name -Specifies the name of alarm rule.
desc description -Specifies the description for alarm rule.
bandwidth -Send a warning for each application bandwidth.
concurrent-sessions -Send a warning for each application concurrent-sessions.
packet-forward-rate -Send a warning for each application packet-forward-rate.
rampup -Send a warning for each application new sessions.
Default values:
None
Mode:
alarm configuration mode
Guidance:
This rule use the default parameters, if you want to modify the parameters, see other commands.
Example:
hostname# co n fig
hostname<config># alarm
hostname<config-alarm-app>#
alarm-rule (network)
Create an alarm rule(network), and enter the alarm rule configuration mode.If this rule is already
exists, the system will directly enter the alarm rule configuration mode.
Command:
alarm-rule [id id ] n ame name [desc description ] typ e n etwo rk h o st id id
Description:
id id -Specifies the alarm rule ID.
name name -Specifies the name of alarm rule.
desc description -Specifies the description for alarm rule
host id id- Specifies the host ID.
Default values:
None
Mode:
Global configuration mode
Guidance:
None
Example:
hostname# co n fig
hostname<config># alarm
hostname<config-alarm-network>#
Create an alarm rule(resource), and enter the alarm rule configuration mode.If this rule is already
exists, the system will directly enter the alarm rule configuration mode.
Command:
alarm-rule [id id ] n ame name [desc description ] typ e reso urce {ch assis-temp erature | co n -
curren t-sessio n s | cp u-temp erature | cp u-usage | in terface-b an dwidth interface |memo ry |
ramp up | sto rage}
Description:
id id -Specifies the alarm rule ID.
name name -Specifies the name of alarm rule.
desc description -Specifies the description for alarm rule.
chassis-temperature -Send a warning for chassis-temperature.
concurrent-sessions- Send a warning for concurrent-sessions.
cpu-temperature -Send a warning for cpu temperature.
cpu-usage -Send a warning for cpu usage.
interface-bandwidth interface -Send a warning for interface bandwidth.
memory -Send a warning for memory.
rampup -Send a warning for rampup.
storage -Send a warning for storage.
Default values:
None
Mode:
alarm configuration mode
Guidance:
This rule use the default parameters, if you want to modify the parameters, see other commands.
hostname<config># alarm
hostname<config-alarm-resource>#
alarm-rule (service)
Create an alarm rule(service), and enter the alarm rule configuration mode.If this rule is already
exists, the system will directly enter the alarm rule configuration mode.
Command:
alarm-rule [id id ] n ame name [desc description ] typ e service h o st id id
Description:
id id -Specifies the alarm rule ID.
name name -Specifies the name of alarm rule.
desc description -Specifies the description for alarm rule.
host id id -Specifies the host ID.
Default values:
None
Mode:
Global configuration mode
Guidance:
None
Example:
hostname# config
hostname<config># alarm
hostname<config-alarm-service>#
app-name
hostname<config># alarm
disable
enable
Description:
critical -Specifies the alarm level is critical.
warning -Specifies the alarm level is warning.
info -Specifies the alarm level is critical.
Default values:
None
Mode:
alarm configuration mode
Guidance:
None
Example:
hostname<config-alarm-app># level critical
receiver
Description:
mail -Specifies send alarm via Email.
sms -Specifies send alarm via SMS.
sendobject-name -Specifies the recipient's name. This name must already exists.
schedule
warning
Description:
sustain -Configure the filter for sustain period.
threshhold- Configure the filter for threshold.
delay -Specifies the delay time. this parameter only for alarm rule(network).
loss-rate -Specifies the loss rate. this parameter only for alarm rule(network).
time time -Specifies the sustain period.
higher-than |lower-than threshhold1 在time time-Specifies the threshold in the specific sustain
period.
higher-than | lower-than threshhold2 -Specifies the threshold for some event.
on | off -Enable or disable the alarm rule.
Default values:
Range and default values:
Mode:
alarm configuration mode
Guidance:
None
Example:
hostname<config-alarm-app># warning sustain time 10 higher-than 80 on
resource bandwidth
hostname(config-monitor)# reso urce b an dwidth in terface eth ern et0/0 in gress 100000 egress
100000 en ab le
resource concurrent-sessions
To configure the detection rule for concurrent-sessions. By default, it is enabled. Use the no form
to restore to the default value.
Command:
reso urce co n curren t-sessio n s p ro b e-in terval interval
Description:
probe-interval interval -Specify the concurrent sessions detect interval. The range is from 5s to
30s
resource cpu
To configure the detection rule for CPU. By default, it is enabled. Use the no form to restore to
the default value.
Command:
resource cpu probe-interval interval
no resource cpu probe-interval
Description:
probe-interval interval -Specify the CPU detect interval. The range is from 5s to 30s. The default
value is 10s.
Default values:
probe-interval interval:10s
Mode:
Monitor configuration mode.
Guidance:
None
Example:
hostname(config)# mo n ito r
resource memory
To configure the detection rule for memory. By default, it is enabled. Use the no form to restore
to the default value.
Command:
resource memory probe-interval interval
no resource memory probe-interval
Description:
probe-interval interval -Specify the memory detect interval. The range is from 30s to 300s. The
default value is 30s.
Default values:
probe-interval interval:60s
Mode:
Monitor configuration mode.
Guidance:
None
Example:
hostname(config)# mo n ito r
resource rampup
To configure the detection rule for new sessions. By default, it is enabled. Use the no form to
restore to the default value.
Command:
resource rampup probe-interval interval
no resource rampup probe-interval
resource storage
To configure the detection rule for storage. By default, it is enabled. Use the no form to restore to
the default value.
Command:
resource storage probe-interval interval
no resource storage probe-interval
Description:
probe-interval interval -Specify the disk detect interval. The range is from 1 minute to 15
minutes. The default value is 5 minutes.
Default values:
probe-interval interval:5 minutes
Mode:
Monitor configuration mode.
Guidance:
resource temperature
To configure the detection rule for CPU/chassis temperature. By default, it is enabled. Use the no
form to restore to the default value.
Command:
resource temperature probe-interval interval
no resource temperature probe-interval
Description:
probe-interval interval -Specify the CPU/chassis temperature detect interval. The range is from
30s to 300s. The default value is 60s.
Default values:
probe-interval interval:60s
Mode:
Monitor configuration mode.
Guidance:
None
Example:
hostname(config)# monitor
show alarm-rule
show alarm-receiver
Overview
Devices are designed with the log function. System records and outputs various system logs,
including event logs, threat logs, configuration logs, operation logs, network logs, data security
logs (file filter logs, content filter logs, network behavior record logs), traffic logs and debug logs.
l Event logs - Event logs are divided into eight severity levels: errors, warnings, notification,
informational, emergencies, alerts, critical and debugging. For more information about log
severity, see Log Severity.
l Configuration logs - Configuration logs describe the changes of configurations, e.g. con-
figurations on interfaces.
l Operation logs - Logs related with clear command, exec command and some corresponding
WebUI operations, such as the delete operation of NBT cache.
l Network logs - Network logs record operations of network services, e.g. PPPoE and DDNS.
l Threat logs - Threat logs related to behaviors threatening the protected system, e.g. attack
defense and application security.
l Content filter logs – Logs related with content filter function, e.g. file content filter, Web
content filter, Web posting, Email fileter and HTTP/FTP control.
l Network behavior record logs – Logs related with network behavior record function, e.g. IM
behavior, aetc.
l Session logs - Session logs, e.g. session protocols, source and destination IP addresses
and ports.
l NAT logs - NAT logs, including NAT type, source and destination IP addresses and
ports.
l URL logs - logs about network surfing, e.g. Internet visiting time, web pages visiting
history, URL filteringing logs.
The log function of StoneOS is a tool to show device operation status, providing evidence for
you to analyze the network and protect against network attacks.
l The non-root VSYS doesn’t support data security logs and debug logs.
Log Severity
Event logs categorize system events by severities. The eight severities are described as follows:
Log Output
Log messages can be sent to the following destinations. You can specify one of them at your own
choice:
l Console - The console port of the device. You can close this destination via CLI.
l File - By default, StoneOS creates a file to record log messages. You can also specify a file in a
USB destination to output log messages.
l SMS - Sends logs to the specifies mobile phone in form of a SMS message.
Event logs can be sent to all the above destinations except for Localdb; threat logs can be sent to
all the above destinations except for SMS and Localdb; traffic logs can be sent to console, buffer,
Log Format
To facilitate the access and analysis of the system logs, StoneOS logs follow a fixed pattern of
information layout, i.e. date/time, severity level@module: descriptions. See the example below:
2018-02-05 01:51:21, WARNING@LOGIN: Admin user "hillstone" logged in through console
from localhost.
l Sending data security logs (file filter logs, content filter logs, network behavior record logs)
l Specifying a facility
l Viewing logs
l Exporting logs
l Clearing logs
By default, the traffic logs are disabled (enabling the above logs will affect system performance).
To enable or disable a system log, in the global configuration mode, use the following command:
You can specify the output destination for the event logs as needed, and filter the output logs
based on the severity.
To send event logs to the console, remote terminal, syslog server, mobile phone, hard-disk card
or enable email notification, and filter the output logs, in the global configuration mode, use the
following command:
lo ggin g even t to {co n so le | remo te | syslo g| sms | email | localdb [ location storage-
name ][ storage { automatically-overwrite | stop-overwrite }} [ severity severity-level ]
l sms – Sends the event logs whose severity is Critical or is higher than Critical to the mobile
phone by using SMS.
l localdb –Sends the logs to the local database(hard-disk card). Only several platforms support
the parameters.
l severity severity-level – Specifies the severity of the output event logs to filter the logs.
Only the logs of the specified severity or higher severities will be sent, i.e., the number
should be equal to or smaller than the specified number. For example, if the specified severity
is Notifications, then system will only send event logs of Notifications, Warnings and Errors
severities.
To disable the function, in the global configuration mode, use the following command:
n o lo ggin g even t to {co n so le | remo te | syslo g | sms |email | lo caldb }
To send the event logs to the memory buffer and filter the logs, in the global configuration mode,
use the following command:
logging event to buffer [ severity severity-level ] [ size buffer-size ]
l size buffer-size –Specifies the buffer size. The value range is 4096 to 10485764 bytes. The
default value is 1048576.
To disable the function, in the global configuration mode, use the command no logging event to
buffer.
To write the event logs to a file and filter the logs, in the global configuration mode, use the fol-
lowing command:
lo ggin g even t to file [ severity severity-level ] [ name [ usb0 | usb1 ] file-name ] [ size file-
size ]
l severity severity-level – Specifies the severity of the output event logs to filter the logs.
Only the logs of the specified severity or higher severities will be sent, i.e., the number
should be equal to or smaller than the specified number. For example, if the specified severity
is Notifications, then system will only write event logs of Notifications, Warnings and Errors
severities.
l name [usb0 | usb1] file-name –Specifies the USB disk and file that are used to save the logs.
l size file-size – Specifies the size of the file (on the USB disk or Flash disk) to which the logs
are written to. The value range is 4096 to 10485764 bytes. The default value is 1048576.
To disable the function, in the global configuration mode, use the command no logging event to
file.
You can specify to send event logs whose severity is Critical or is higher than Critical to the spe-
cified mobile phone in form of SMS. To specifies the mobile phone number that is used to
l phone-number – Specifies the phone number that is used to receive event logs.
To cancel the specified phone number, in the global configuration mode, use the command no log-
ging sms phone-number.
You can specify the output destination for the threat logs as needed. To send threat logs to the
console, remote terminal, syslog server, hard-disk or enable email notification, in the global con-
figuration mode, use the following command:
logging threat to { console | remote | syslog [ custom-format [ distributed [ round-
robin | src-ip-hash ]]]| email | localdb [ size size ][ location storage-name ][ storage { auto-
matically-overwrite | stop-overwrite }}
l custom-format – Sends the log messages in plaintext. By default, the system sends the log
messages in plaintext.
l distributed – Sends the log messages to multiple syslog servers in the distribution mode.
l localdb – Sends the logs to the local database(hard-disk card). Only several platforms support
the parameters.
l severityseverity-level – Specifies the severity of the output threat logs to filter the logs. Only
the logs of the specified severity or higher severities will be sent, i.e., the number should be
equal to or smaller than the specified number. For example, if the specified severity is Noti-
fications, then system will only write event logs of Notifications, Warnings and Errors sever-
ities.
To disable the function, in the global configuration mode, use the following command:
n o lo ggin g th reat to {co n so le | remo te | syslo g [ custo m-fo rmat [ distributed [ round-robin
| src-ip-hash ]]] | email | localdb } [ severity severity-level ]
To send the threat logs to the memory buffer, in the global configuration mode, use the following
command:
logging threat to buffer [ severity severity-level ] [ size buffer-size ]
l severity severity-level – Specifies the severity of the output threat logs to filter the logs.
Only the logs of the specified severity or higher severities will be sent, i.e., the number
should be equal to or smaller than the specified number. For example, if the specified severity
is Notifications, then system will only send event logs of Notifications, Warnings and Errors
severities.
l size buffer-size – Specifies the buffer size. The value range is 4096 to 1048576 bytes. The
default value is 1048576.
l severity severity-level – Specifies the severity of the output threat logs to filter the logs.
Only the logs of the specified severity or higher severities will be sent, i.e., the number
should be equal to or smaller than the specified number. For example, if the specified severity
is Notifications, then system will only send event logs of Notifications, Warnings and Errors
severities.
l name [usb0 | usb1] file-name –Specifies the USB disk and file that are used to save the logs.
l size file-size – Specifies the size of the file (on the USB disk or Flash disk) to which the logs
are written to. The value range is 4096 to 1048576 bytes. The default value is 1048576.
To disable the function, in the global configuration mode, use the command no logging threat to
file.
You can specify the output destination for the configuration, debug and network logs as needed.
To send configuration, operation, debug or network logs to the console, syslog server, memory
buffer , file or local database, in the global configuration mode, use the following command:
lo ggin g {co n figuratio n | n etwo rk} to {co n so le | syslo g | lo caldb [size size ][lo catio n stor-
age-name ][ storage { automatically-overwrite | stop-overwrite }}
l configuration | network – Specifies the type of the logs that will be sent. The available
options include configuration and network.
l size – Enter a number as the percentage of a storage the logs will take. Value range is 1
to 30, and the default is 10. For example, if you enter 30, the event logs will take at
most 30% of the total disk size.
l location –Specifies the location that stores the configuration and network logs.
To disable the function, in the global configuration mode, use the command no logging {con-
figuration| operation | debug | network} to {console | syslog | localdb}
To write the configuration , operation or network logs to a file, in the global configuration mode,
use the following command:
lo ggin g {co n figuratio n | o p eratio n | n etwo rk} to file [n ame [usb 0 | usb 1] file-name ] [size
file-size ]
l name [usb0 | usb1] file-name –Specifies the USB disk and file that are used to save the logs.
l size file-size – Specifies the size of the file (on the USB disk or Flash disk) to which the logs
are written to. The value range is 4096 to 1048576bytes. The default value is 1048576.
To disable the function, in the global configuration mode, use the command no logging {con-
figuration | operation | network} to file.
l configuration | operation | debug | network – Specifies the type of the logs that will be
sent. The available options include configuration, debug and network.
l size buffer-size - Specifies the buffer size. The value range is 4096 to 524288 bytes. The
default value is 1048576.
To disable the function, in the global configuration mode, use the command no logging {con-
figuration | operation | traffic | debug | network} to buffer.
You can send the debug logs to a file and then export the file for local use via the export log
debug command. By default, the system will not send the debug logs to a file. To enable the sys-
tem to send the debug files to a file, in the global configuration mode, use the following com-
mand:
logging debug to file
To specify the size of the file to which the debug logs will be sent, in the global configuration
mode, use the following command:
logging debug to file size file-size
l size file-size – Specifies the size of the file to which the debug logs will be sent. The size
range and default value vary by device models.
In the global configuration mode, use the no logging debug to file command to disable the system
from sending debug logs to a file.
In any mode, use the show logging debug file command to view the content of the debug log file
that the system has sent.
When the debug function is enabled, the CPU usage might increase and affect service forwarding.
You can configure the work priority of the debug function and service forwarding as required. By
default, the debug function's priority is higher than service forwarding.
To make service forwarding take precedence over the debug function, in the global configuration
mode, use the following command:
log debug-limit cpu-threshold value
l value - Specifies the threshold for the CPU usage, in percent. The value range is 0 to 99.
When 0 is specified, the debug function takes precedence over service forwarding. When
other value is specified, service forwarding takes precedence over the debug function. In the
scenario where service forwarding take precedence over the debug function, if the system has
multiple CPUs, when the usage of any CPU reaches the specified threshold, the system will
considers that the debug function has affected service forwarding and therefore disables it.
To make the debug function take precedence over service forwarding, in the global configuration
mode, use the no log debug-limit cpu-threshold or log debug-limit cpu-threshold 0 command.
When enabling the debug function, you can configure a timer to control the execution time length
allowed for the debug function. When the timer elapses, the debug function will be disabled. In
the global configuration mode, use the following command:
log debug-limit time value
l value - Specifies the execution time length of the debug function. The value range is 1 to 60s.
To cancel the execution time length configuration of the debug function, use the no log debug-
limit time command in the global configuration mode.
Note: When both service first and execution timer are configured, the debug function will be dis-
abled when any of the conditions is met.
Traffic logs consist of session logs, NAT logs, and web surfing logs. You can send traffic logs to
the console, syslog server, memory buffer and local SSD (Web surfing logs cannot be sent to
SSD). You can select the output destination according to your requirements.
To send the traffic logs to the console , buffer or syslog server, use the following command in the
global configuration mode:
lo ggin g traffic {sessio n | n at | urlfilter} to {co n so le | syslo g | b uffer [size buffer-size ] }
To send session logs and NAT logs to the local SSD, in the global configuration mode, use the fol-
lowing command:
logging traffic {session | nat} to localdb}
l session | nat | urlfilter – Specifies the log type that you want to output.
l console | syslog | buffer – Specifies the output destination. You can output the logs to the
console ,buffer or syslog server.
l localdb – Specifies the output destination of session logs and NAT logs as the SSD on the
device. Web surfing logs cannot be sent to the local SSD. Only SSD-equipped A-series and
K-series devices support this function.
l size buffer-size - Specifies the buffer size. The value range is 4096 to 524288 bytes. The
default value is 1048576.
In the global configuration mode, use the following command to disable the output function: no
logging traffic {session | nat | urlfilter} to {console | syslog | buffer }or no logging traffic {ses-
sion | nat} to localdb.
You can specify the output destination for the data security logs (file filter logs, content filter
logs, network behavior record logs) as needed. To send data security logs (file filter logs, content
filter logs, network behavior record logs)to the console, remote terminal, syslog server, local
l custom-format – Sends the logs in plaintext. By default, the system sends the logs in plain-
text.
To disable the function, in the global configuration mode, use the following command:
n o lo ggin g data-security [dlp | cf | n b r] to {co n so le | syslo g }
To send the data security logs (file filter logs, content filter logs, network behavior record logs) to
the memory buffer, in the global configuration mode, use the following command:
lo ggin g data-security [dlp | cf | n b r] to b uffer [size buffer-size ]
l size buffer-size –Specifies the buffer size. The value range is 4096 to 524288 bytes. The
default value is 524288.
To disable the function, in the global configuration mode, use the command no logging data-secur-
ity [dlp | cf | nbr] to buffer.
You can specify the output destination for the Cloudsandbox logs as needed. To send Cloud-
sandbox logs to the console, buffer, syslog server, and file. Before you send cloudsandbox logs,
you need to enable the Sandbox function in the global configuration mode:
logging sandbox on
In the global configuration mode, useno logging sandbox on command to disable Sandbox func-
tion.
To specify the output destination for the Cloudsandbox logs, in the global configuration mode,
use the following command:
lo ggin g san db o x to {co n so le | syslo g | b uffer [size buffer-size ] | file file-name [ size file-
size ]}
l buffer [size buffer-size] - Sends the cloudsandbox logs to buffer and specify the buffer size.
The value range is 4096 to 524288 bytes. The default value is 524288.
l file file-name [size file-size] - Specifies the name or size of the file (on the USB disk or Flash
disk) to which the logs are written to. The value range is 4096 to 1048576bytes. The default
value is 1048576.
In the global configuration mode, use no logging sandbox to {console | syslog | buffer |
file}command to disable the function.
You can specify the output destination for the EPP logs as needed. To send EPP logs to the con-
sole, buffer, syslog server, file, remote terminal and Email. Before you send EPP logs, you need to
enable the EPP logs function in the global configuration mode:
logging epp on
l buffer [sizebuffer-size] - Sends the EPP logs to buffer and specify the buffer size. The value
range is 4096 to 524288 bytes. The default value is 524288.
l file file-name [sizefile-size] - Specifies the name or size of the file (on the USB disk or Flash
disk) to which the logs are written to. The value range is 4096 to 1048576bytes. The default
value is 1048576.
In the global configuration mode, use no logging epp to {console | syslog | buffer | file| remote
| email } command to disable the function.
IoT logs can be sent to the console, buffer and syslog server. You can specify the output des-
tination for IoT logs as needed. Before you specify the output destination, in the global con-
figuration mode, you need to enable the IoT logs function with the following commands:
lo ggin g io t-mo n ito r o n
In the global configuration mode, use no logging iot-monitor on to disable the IoT logs function.
To send IoT logs to console, buffer and syslog server, in the global configuration mode, use the
following command:
l syslog – Sends IoT logs to the specified syslog server. For how to configure the syslog
server, refer to Configuring Syslog Server.
l custom-format – Sends IoT logs in the plain text. By default, system sends logs in the plain
text.
l distributed – Distributes IoT logs in the plain text to several syslog servers.
In the global configuration mode, use the following command to disable the function.
n o lo ggin g io t-mo n ito r to {co n so le | b uffer | syslo g}
StoneOS logs follow a fixed pattern of information layout. By default, the logs sent to the Syslog
Server does not display the year, the hostname and the log severity, i.e. <Device Number*8+log
severity> date/timeSN( VSYS name) log ID HillstoneNetworks#log type@module: descrip-
tions
You can configure the output log format as needed. In the the global configuration mode, use the
following command:
To cancel the displaying of four digit year /hostname/ log severity, in the the global configuration
mode, use the following command:
l Cancel display the hostname and the log severity: no logging syslog additional-information
Optimizing the Function of Exporting Session Logs and NAT Logs to the Local
Disk
Typically, the system's log processing process (LOGD) and database storage process (MYSQLD)
work on Core0 of the CPU. When session logs and NAT logs are exported to the local disk,
Core0 can be overloaded with a large amount of high speed log data storage operations, potentially
affecting the normal operation of other functional modules. To solve this problem, when session
logs and NAT logs are exported to the local disk, you can move log processing process and data-
base storage process from Core0 to Core MAX and limit the speed at which logs are sent to the
log processing process. Core MAX is the CPU core with the largest number. For example, if the
system has 12 CPU cores in total, which are numbered as Core0 to Core11, Core11 is the Core
MAX.
It is recommended that when exporting session logs and NAT logs to the local disk, if the per-
formance consumption of Core0 is too high or you need to increase the speed at which logs are
sent to the log processing process, you can move log processing process and database storage pro-
cess from Core0 to Core MAX, and then configure the speed at which logs are sent to the log pro-
cessing process.
Binding the Log Processing Process and Database Storage Process to Core MAX
To bind the log processing process and database storage process to Core MAX, use the following
command in the global configuration mode:
cp-multi-cores logd
Notes:
l The function of binding the log processing process and database storage pro-
cess to Core MAX is only supported by SG-6000-A2700 and later models.
l After bind the log processing process and database storage process to Core
MAX or clear the binding, restart the device to make the configuration take
effect.
l Before binding the log processing process and database storage process to
Core MAX, you should use the command flow-core-num number in the
global configuration mode to specify the number of CPU cores occupied
by the system data. number is recommended to be max_core_number-1.
max_core_number is the number of total CPU cores of the system. For
example, if the system has 12 CPU cores in total, the command is flow-
core-num 11. Restart the device to make the configuration take effect.
Configuring the Speed at Which Logs are Sent to Log Processing Process
To configure the speed at which logs are sent to log processing process, use the following com-
mand in the global configuration mode:
logging speed-limit to local value
l value - Specifies the speed at which logs are sent to log processing process. For details, refer
to the following table.
In the global configuration mode, use command no logging speed-limit to restore to the default
speed at which logs are sent to log processing process.
The function of configuring the speed at which logs are sent to log processing process is only sup-
ported by SG-6000 A series devices.
To view configuration of the speed at which logs are sent to log processing process, use the fol-
lowing command in any mode:
show logging speed-limit
To send logs to a Syslog Server, you need to configure the IP address or host name of the Syslog
Server, or configure the VRouter and UDP/TCP port number of the Syslog Server as needed. To
configure a Syslog Server, in the global configuration mode, use the following command:
lo ggin g syslo g { ip-address | hostname } {tcp port-number | udp port-number | secure-tcp
port-number [server-cert-ch eck-disab le]| vro uter vr-name {tcp port-number | udp port-num-
ber | secure-tcp port-number [server-cert-ch eck-disab le]} | format-type { CUCC [ default
] | SGCC-S5000 | SGCC-S6000 ] so urce-in terface interface-name {tcp port-number |
udp port-number | secure-tcp port-number [server-cert-ch eck-disab le]} [typ e log-type ]
l source-interface interface-name - Specifies the source interface on which logs are sent. The
system will use the IP address of the interface as the source IP and send logs to the syslog
server. If this interface is configured with a management IP address, the management IP
address will be priorized.
l CUCC [ default ] - Specifies the format type in which the log information is sent.
CUCC means to sending NAT444 logs in the format specified by China Unicom.
default means to sending other logs in the default format.
l SGCC-S5000- Syslog Server log Server can only receive SGCC-S5000 log format,
such as the log Server's of State Grid Corporation of China.
l SGCC-S6000- Syslog Server log Server can only receive SGCC- 6000 log format,
such as the monitoring Server's of State Grid Corporation of China.
l type log-type – Specifies the log type. If this parameter is configured, only the specified log
type will be sent to the syslog server.
To delete the Syslog Server configuration, in the global configuration mode, use the following
command:
The system supports to specify the sending sourceport number used to send log messages to the
Syslog Server. When the sending sourceport number is specified, the system will use the specified
sending sourceport to send log messages to the Syslog Server. If the sending sourceport number
is not specified, the system will use the random sourceport to send log messages to the Syslog
Server by default.
To specify the sending sourceport number, in the global configuration mode, use the following
command:
logging syslog {src-port port-number}
l src-portport-number - Specify the sending sourceport number used to send log messages to
the Syslog Server. The range is from 1024 to 65535.
To cancel the specification of the sending sourceport number and use random sourceport by
default, in the global configuration mode, use the negative form of the above command as fol-
lows:
no logging syslog {src-portport-number}
Notes:
l The client can only check the specified sending sourceport number by
WebUI.
l When SNAT is enabled, the system will randomly select port as the sending
sourceport according to the port resources of network addresses translated by
NAT.
Specifying a Facility
To send the log information to a UNIX Syslog Server, you need to specify a facility for the Syslog
Server. To specify a facility, in global configuration mode, use the following command:
logging facility localx
l localx – Specifies the facility. The value range of x is 0 to 7. The default value is 7.
To restore to the default value, in the global configuration mode, use the command no logging
facility.
Traffic logs consist of session logs, NAT logs, and web surfing logs. By default the hostname and
username are not displayed in the traffic logs. To display the hostname or username in the traffic
logs, in the global configuration mode, use the following command:
l Display the hostname of the session logs, NAT logs, and web surfing logs: logging content
hostname
l Display the username of the session logs: logging session content username
After executing the above commands, the hostname and username will be displayed in the traffic
logs.
To cancel the displaying of hostname/username, in the global configuration mode, use the fol-
lowing commands:
By default the username are not displayed in the threat logs. To display the username in the threat
logs, in the global configuration mode, use the following command:
logging threat content username
To cancel the displaying of username, in the global configuration mode, use the following com-
mands:
no logging threat content username
Logs can be sent to the specified Email address. You need to configure the Email address to
receive log messages and the SMTP server instance.
To configure the Email address to receive the log messages, in the global configuration mode, use
the following command:
logging email to email-address smtp smtp-instance
l smtp smtp-instance – Specifies the name of the SMTP server instance used to send the mail
(must be a valid SMTP server instance in the system).
To delete the configuration of email address, in the global configuration mode, use the following
command:
no logging email to email-address
To configure a SMTP server instance, in global configuration mode, use the following command:
smtp n ame smtp-name server { ip-address | hostname } {fro m email-addr | vro uter vr-
name fro m email-addr }[usern ame user-name p asswo rd password ] [ mode { plain | starttls |
ssl }] [ port server-port ]
l mode { plain | starttls | ssl}- Specifies the transmission mode of the email.
l plain- Specifies that the mail is sent in plain text and is not encrypted. This mode is the
default transmission mode.
l portserver-port - Specifies the port number of the SMTP server. The range is 1 to 65535. The
default port number is different for different transmission modes, PLAIN: 25, STARTTLS:
25, SSL: 465.
To delete the specified SMTP server instance, in the global configuration mode, use the com-
mand no smtp namesmtp-name.
After you enable PBR log, the system will generate PBR logs once PBR policy rule is matched by
traffic.
You can enable PBR log function basing on PBR policy rules. By default, this feature is disabled.
To enable or disable PBR log function, in the PBR policy rule configuration mode, use the fol-
lowing command:
To display the PBR logs in output destination, in the global configuration mode, use the following
command:
logging traffic pbr on
In the global configuration mode, use the no logging traffic pbr oncommand
to cancel the settings.
You can send PBR traffic logs to the console, syslog server and memory buffer. You can select
the output destination according to your requirements.
To send PBR traffic logs to the console, syslog server or memory buffer, in the global con-
figuration mode, use the following command:
lo ggin g traffic p b r to {co n so le | syslo g | b uffer [size buffer-size ]}
l console | syslog | buffer – Specify the output destination. You can output the logs to the
console, syslog server or buffer.
l size buffer-size - Specify the buffer size. The value range is 4096 to 2097152 bytes. The
default value is 1048576.
In the global configuration mode, use the no logging traffic pbr to {console | syslog |
buffer}command to disable the corresponding output function.
By default, the hostname and username are not displayed in the PBR traffic logs. To display the
hostname or username in PBR logs, in the global configuration mode, use the following com-
mand:
lo ggin g p b r co n ten t {h o stn ame | usern ame}
To view all the PBR logs, in any mode, use the following commands:
show logging traffic pbr
The system supports to modify parameter of the event log, network log, and configuration log,
including the description, level of the log, and enabling/disabling the log generation.
To disabling the generation of the specified log ID, in the global configuration mode, use the fol-
lowing command:
logging logid log-idoff [descriptiondescription]
In the global configuration mode, use the no logging logid log-idoff command to enabe the gen-
eration of the specified log ID.
To configure the log level, in the global configuration mode, use the following command:
logging logid logidseverityseverity-level [descriptiondescription]
l severityseverity-level - Specified the log level, including EMERG, ALERT, ALERT, ERR,
WARNING, NOTICE, INFO.
You can enable or disable the Record User Information function for Threat Log. With this func-
tion enabled, threat logs will record information about the authenticated user, including AAA
server, username, and hostname. By default, this function is disabled. To enable the Record User
Information function for Threat Log, in the global configuration mode, use the following com-
mand:
logging threat content username
In the global configuration mode, use the no logging threat content username command to disable
the Record User Information function for Threat Log.
To view the log entries for configuring log parameters, in global configuration mode, use the fol-
lowing commands:
show logging logid config
To view the log configurations, in any mode, use the following commands:
l Show if the hostname and username are displayed : show logging content
Viewing Logs
To view the specified type of logs, in any mode, use the following commands:
l Show the data security logs (file filter logs, content filter logs, network behavior record logs):
show logging data-security [dlp | cf | nbr]
Exporting Logs
You can export the debug logs, event logs and threat logs to the specified FTP/FTPS/SFTP
server, TFTP server or USB disk.
To export the debug logs, event logs or threat logs to the specified FTP/FTPS/SFTP server, in
the execution mode, use the following command:
exp o rt lo g { debug | even t | th reat } to {ftp | ftps | sftp } server ip-address vro uter
vrouter-name user user-name p asswo rd password [ file-name ]
l debug | event | threat - Specifies the log type that will be exported.
l user user-name password password - Specifies the username and password of the FTP server.
l file-name - Specifies the name of the file to which the logs will be exported.
To export the debug logs, event logs or threat logs to the specified TFTP server, in the execution
mode, use the following command:
exp o rt lo g { debug | {even t | th reat } to tftp server ip-address [ file-name ]
To export the debug logs, event logs or threat logs to the specified USB disk, in the execution
mode, use the following command:
exp o rt lo g { debug | even t | th reat } to { usb0 | usb1 } [ file-name ]
To clear the specified logs in the system, in the execution mode, use the following command:
clear logging { co n figuratio n | o p eratio n | deb ug | even t | n etwo rk | th reat | traffic {ses-
sio n | n at | urlfilter} | data-security [dlp | cf | n b r]| io t-mo n ito r}
l traffic {session | nat | urlfilter}– Clears the specified traffic logs information in the system.
l data-security [dlp | cf | nbr] – Clears all the data security logs information in the system. File
filter logs (dlp), Content filter logs (cf), Network behavior record logs (nbr) .
Notes: This command cannot clear the following important event log information:
l SCM HA.
l traffic {session | nat | urlfilter}| data-security [dlp | cf | nbr] – Specifies the log type that
will be sent.
l distributed – Sends the traffic logs to multiple Syslog servers according to the algorithm spe-
cified.
l src-ip-hash | round-robin – Specifies the algorithm used to choose Syslog servers. src-ip-
hash, choose the Syslog server according to the source IP address; round-robin, choose the
Syslog server by the round-robin algorithm, and this is the default algorithm used by the sys-
tem.
l custom-format – Sends logs in the plaintext format. By default, the system will send the
traffic logs in the plaintext format.
To remove the traffic log sending configuration, in the global configuration mode, use the fol-
lowing command:
n o lo ggin g {traffic {sessio n | n at | urlfilter} | data-security [dlp | cf | n b r]} to syslo g
l custom-format – Sends the logs in the plaintext format. By default, the system sends the logs
in the plaintext format.
l distributed – Sends the logs to the syslog server in the distributed way.
In the global configuration mode, use the following command to cancel the output of the threat
logs:
no logging threat to syslog
hostname# co n figure
Step 2: Send the event logs to the console; set the severity to Debugging:
Step 1: Enable the event log function. The workstation with IP address of 202.38.1.10 is used as
the Syslog Server of UDP type; set the severity to Informational:
Step 1:Configure a track object. Track the syslog server whose IP address is 202.38.1.10.
hostname(config)# track ab c
hostname(config-trackip)# th resh o ld 3
Step 2: Enable the function of sending traffic logs to the syslog server. The IP address of the sys-
log server is 202.38.1.10. The name of the VRouter is trust-vr, the type is UDP, the port number
is 514, and the log type is traffic (NAT logs).
hostname(config)# lo ggin g syslo g 202.38.1.10 vro uter "trust-vr" udp 514 typ e traffic
n at
Step 5: Enable the track function for the syslog server and set the maximum rate of sending traffic
logs to a file as 600 entries per second.
Introduction
System supports the following diagnostic methods:
l Packet Capture Tool: Users can capture packets in the system by Packets Capture Tools.
After capturing the packets, you can export them to your local disk and then analyze them by
third-party tools.
l Packet Path Detection: Based on the packet process flow, the packet path detection function
detects the packets and shows the detection processes and results to users by chart and
description. This function can detect the following packet sources: emulation packet, online
packet, and imported packet (system provides the Packet Capture Tool for you that can help
you capture the packets).
The detectable packets from different packet sources have different detection measures. The sys-
tem supports the following measures:
l Emulation packet detection: Emulate a packet and detects the process flow in the system of
this packet.
l Online packet detection: Perform a real-time detection of the process flow of the packets in
the system.
l Imported packet detection: Import the existing packets and detects the process flow in the
system of the packets.
This feature may not be available on all platforms. Please check your system's actual page to see if
your device delivers this feature.
Using WebUI to configure the diagnostic tool is strongly recommended.
Including configuration capture tasks, capture rules, start/stop capture, export capture files, clear
capture files.
packet-capture task
Create an online packet capture task and enter the packet capture task configuration mode. Use
the no form of the command to delete the specified online packet capture task.
Command:
p acket-cap ture task task-name
Configure the interface used for the online packet capture task. Use the no form of the command
to delete the specified interface.
Command:
in terface interface-name
n o in terface
Description:
interface-name - Specifies the name of the interface used for the online packet capture task, which
cannot capture packets based on the tunnel interface and management interface.
Default values:
None
Mode:
Packet capture task configuration mode
Guidance:
None
Example:
hostname(config-pkt-task)# interface ethernet0/0
direction
Configure the traffic direction of the interface. Use the no form of the command to delete the spe-
cified traffic direction.
Command:
directio n {in | o ut}
no direction
Description:
task-info
no task-info
Description:
pacp-timetime-value - Specifies the effective duration of the capture task, the range is 1 to 720
minutes, the default value is 30 minutes.
descriptiondescription - Specifies the description information of the packet capture task. The
range is 1 to 255 characters
Default values:
pacp-timetime-value - 30 minutes
filter-rule
no filter-rule id id
Description:
filter-rule id id -Specifies the ID of packet capture rule. The range is 1-8.
src-ipipv4-address/mask - Specifies the source IPv4 address and its mask of the packet.
src-ipv6 ipv6-address/prefix - Specifies the source IPv6 address and its range of the packet.
src-ip-minmin-ipv4 src-ip-maxmax-ipv4 - Specifies the source IPv4 range of the packet.
src-ipv6-minmin-ipv6 src-ipv6-maxmax-ipv6 - Specifies the source IPv6 range of the packet.
useraaa-serveruser-name - Specifies the user of the packet.
user-groupaaa-serveruser-name - Specifies the user group of the packet.
src-port port-num -Specifies the source port number of the packet.
dst-ipipv4-address/mask - Specifies the destination IPv4 address and its mask of the packet.
dst-ipv6 ipv6-address/prefix - Specifies the destination IPv6 address and its range of the packet.
exec packet-capture
export packet-capture-file
Description:
slotslot-number |all - Export the data package file of the specified slot number to the FTP server-
/TFTP server. Support for some devices (X series devices and K9180).
tartask-name | filetask-name file-name- Export all file compressed packages of the packet capture
task or a specified file.
ftp serverip-address [useruser-namepassword password] -Export the specified file to FTP server.
l user user-namepasswordpassword – Specifies the username and password for the FTP user.
If not specified, system will use anonymous to login.
The global configuration items of packet capture vary according to the type of device:
l For devices with hard disks, you can configure the percentage of the packet capture files to
the total hard disk size.
l For devices without hard disks, you can configure the packet capture file save percent and the
packet capture file save time.
packet-capture save-mem
Configure the maximum percentage of packet capture files in remaining memory (devices without
hard disk) or total size of hard disk (devices with hard disk).
Command:
p acket-cap ture save-mem mem-percent
no packet-capture save-mem
Description:
mem-percent -Specifies the maximum percentage of packet capture files in remaining memory
(devices without hard disk) or total size of hard disk (devices with hard disk), the range is 5%-
50%.
Default values:
10%
Mode:
Global configuration mode
Guidance:
None
Example:
hostname(config)# p acket-cap ture save-mem 20
no packet-capture save-time
Description:
save-time-value -Specifies the length of time the packet capture file is saved, the unit is minutes,
the range is 1-440 minutes.
Default values:
30 minutes.
Mode:
Global configuration mode
Guidance:
This command is supported only on no hard disk devices.
Example:
hostname(config)# p acket-cap ture save-time 60
Show Commands
Description:
task task-name -Display the status information of the packet capture task with the specified name.
Description:
None.
Default values:
None.
Mode:
Any mode
Guidance:
None.
Example:
hostname(config)# sh o w p acket-cap ture task
Emulation Packet
tro ub lesh o o tin g p acket-trace emulatio n -temp late name typ e icmp src-ip ip-address dst-ip ip-
address typ e type-value co de code-value in gress-in terface interface-name [descrip tio n descrip-
tion ]
Description:
emulation-template name -Specifies the name of the emulation packet.
type {tcp | udp} /type icmp -Specifies the protocol type of the emulation packet.
src-ip ip-address -Specifies the source IP address of the emulation packet.
dst-ip ip-address- Specifies the source port of the emulation packet, only when the protocol type
is specified as TCP/UDP.
src-port port-num -Specifies the destination port of the emulation packet, only when the pro-
tocol type is specified as TCP/UDP.
dst-port port-num -Specifies the destination IP address of the emulation packet.
type type-value code code-value -Specifies the ICMP type value and code value only when the
protocol type is specified as ICMP.
ingress-interface interface-name -Specifies the ingress interface of the emulation packet.
description description -Specifies the description.
Default values:
Description:
ftp server ip-address [user user-name password password] -Export the specified file to FTP server.
l user user-name password password – Specifies the username and password for the FTP user.
If not specified, system will use anonymous to login.
Online Packet
Description:
ftp server ip-address [user user-name password password] -Export the specified file to FTP server.
l user user-name password password – Specifies the username and password for the FTP user.
If not specified, system will use anonymous to login.
Imported Packet
Description:
ftp server ip-address [user user-name password password] -Import the specified file from FTP
server.
l user user-name password password – Specifies the username and password for the FTP user.
If not specified, system will use anonymous to login.
tftp server ip-address -Import the specified file from TFTP server.
vrouter vr-name -Specifies the VR name.
file-name -Specifies the file name you imported.
Default values:
vrouter vr-name - trust-vr。
Mode:
Executive mode
Guidance:
This command is only supported in T series devices and E series devices with hard disks.
Example:
hostname# import troubleshooting packet-trace replay-file from ftp server 10.1.1.1
user user1 password password1 test.pcap
Overview
NetFlow is a data exchange method, which records the source /destination address and port num-
bers of data packets in the network. It is an important method for network traffic statistics and
analysis.
Hillstone NetFlow supports the NetFlow Version 9. With this function configured, the device
can collect user's ingress traffic according to the NetFlow profile, and send it to the server with
NetFlow data analysis tool, so as to detect, monitor and charge traffic.
Configuring NetFlow
The NetFlow configurations are based on interfaces.
To configure the interface-based NetFlow, take the following steps:
2. Create a NetFlow profile, and then specify the active timeout value, template refresh rate
and configure the NetFlow server in the profile.
Enabling NetFlow
To enable the NetFlow function, in the global configuration mode, use the following command:
netflow enable
To disable the NetFlow function, in the global configuration mode, use the following command:
no netflow enable.
NetFlow profile configurations contains the active timeout value, the template refresh rate, and
the NetFlow server settings.
l netflow-profile-name - Specifies the NetFlow profile name and enters the NetFlow profile
configuration mode. If the specified name exists, system will directly enter the NetFlow pro-
file configuration mode.
To delete the specified NetFlow profile, in the global configuration mode, use the command no
netflow-profile netflow-profile-name.
You can configure the NetFlow template refresh rate by time or number of packets, after which
system will refreshes the NetFlow profile. In the NetFlow profile configuration mode, use the fol-
lowing command:
The active timeout value is the time after which the device will send the collected NetFlow
traffic information to the specified server once. In the NetFlow profile configuration mode, use
the following command:
active-timeout timeout-value
l timeout-value – Specifies the active timeout value. The range is 1 to 60 minutes. The default
value is 5 minutes.
To configure the NetFlow server for data analysis, in the NetFlow profile configuration mode, use
the following command:
server name [ip ip-address | p o rt port-number ]
l port port-number – Specifies the port number of NetFlow server.The range is 1 to 65535.
The default value is 9996.
To delete the specified server, in the NetFlow profile configuration mode, use the following com-
mand: no server name.
You can specify whether the collected NetFlow traffic information contains the enterprise field.
To specify that the collected NetFlow traffic contains enterprise field, in the NetFlow profile con-
figuration mode, use the following command:
export-enterprise-fields
To specify that the collected NetFlow traffic does not contains enterprise field, in the NetFlow
profile configuration mode, use the following command: no export-enterprise-fields.
To specify the source interface for sending NetFlow traffic information, in the NetFlow profile
configuration mode, use the following command:
so urce in terface interface-name address interface-address
l interface-address – After specifying the source interface, the system will automatically
acquire and display the management IP address or the secondary IP address of the source inter-
face.
To delete the source interface configurations, in the NetFlow profile configuration mode, use the
following command: no source.
If the NetFlow profile is bound to an interface, the device will collect user's ingress traffic inform-
ation according to the NetFlow profile. To bind a NetFlow profile to an interface, in the interface
configuration mode, use the following command:
n etflo w-p ro file netflow-profile-name
l netflow-profile-name – Specifies the name of the NetFlow profile that will be bound to the
interface.
To remove the binding, in the interface configuration mode, use the following command: no net-
flow-profile
To view the configurations of NetFlow profile, in any mode, use the following command:
sh o w n etflo w-p ro file [ netflow-profile-name ]
To view the NetFlow statistic information, in any mode, use the following command:
sh o w n etflo w [gen eric] | [slo t slot-no ]
l slot slot-no –Shows the NetFlow statistic information of the specified slot.