Fortigate OS Command Line Interface
Fortigate OS Command Line Interface
FortiGate CLI
Version 3.0 MR6
Preliminary version: This version of the FortiGate CLI Reference was
completed shortly before the FortiOS v3.0 MR6 GA release. Consult the
most recent FortiOS 3.0 MR6 release notes and the Upgrade Guide for
FortiOS v3.0 MR6 for up-to-date information about all new MR6 features.
Fortinet Tech Docs will publish an updated version of the FortiGate CLI
Reference before the end of March 2008. Contact [email protected]
if you have any questions or comments about this preliminary version of
the FortiGate CLI Reference.
Note: This version of the FortiGate CLI Reference also contains CLI
commands for FortiOS Carrier 3.0 MR3
Visit http://support.fortinet.com to register your FortiGate CLI product. By registering you can receive product
updates, technical support, and FortiGuard services.
www.fortinet.com
FortiGate CLI Reference
Version 3.0 MR6
5 February 2008
01-30006-0015-20080205
Trademarks
Dynamic Threat Prevention System (DTPS), APSecure, FortiASIC,
FortiBIOS, FortiBridge, FortiClient, FortiGate, FortiGate Unified Threat
Management System, FortiGuard, FortiGuard Antispam, FortiGuard
Antivirus, FortiGuard Intrusion Prevention, FortiGuard Web Filtering,
FortiLog, FortiAnalyzer, FortiManager, Fortinet, FortiOS, FortiPartner,
FortiProtect, FortiReporter, FortiResponse, FortiShield, FortiVoIP, and
FortiWiFi are trademarks of Fortinet, Inc. in the United States and/or other
countries. The names of actual companies and products mentioned
herein may be the trademarks of their respective owners.
Contents
Contents
Introduction ....................................................................................... 15
About the FortiGate Unified Threat Management System ............................ 15
About this document........................................................................................ 15
FortiGate documentation ................................................................................. 16
Related documentation .................................................................................... 18
FortiManager documentation ....................................................................... 18
FortiClient documentation ............................................................................ 18
FortiMail documentation ............................................................................... 18
FortiAnalyzer documentation ....................................................................... 18
Fortinet Tools and Documentation CD ......................................................... 19
Fortinet Knowledge Center .......................................................................... 19
Comments on Fortinet technical documentation .......................................... 19
Customer service and technical support ....................................................... 19
Register your Fortinet product........................................................................ 19
alertemail ........................................................................................... 63
setting................................................................................................................ 64
antivirus ............................................................................................. 69
filepattern .......................................................................................................... 70
grayware............................................................................................................ 72
heuristic............................................................................................................. 74
quarantine ......................................................................................................... 75
quarfilepattern .................................................................................................. 78
service ............................................................................................................... 79
firewall................................................................................................ 81
address, address6 ............................................................................................ 82
addrgrp, addrgrp6............................................................................................. 84
dnstranslation ................................................................................................... 85
gtp (FortiOS Carrier)......................................................................................... 87
ipmacbinding setting........................................................................................ 95
ipmacbinding table ........................................................................................... 97
ippool ................................................................................................................. 99
ldb-monitor...................................................................................................... 100
multicast-policy .............................................................................................. 102
policy, policy6 ................................................................................................. 104
profile............................................................................................................... 114
schedule onetime ........................................................................................... 149
schedule recurring ......................................................................................... 150
service custom................................................................................................ 152
service group .................................................................................................. 154
vip..................................................................................................................... 155
vipgrp............................................................................................................... 164
gui..................................................................................................... 165
console ............................................................................................................ 166
topology........................................................................................................... 167
imp2p................................................................................................ 169
aim-user........................................................................................................... 170
icq-user............................................................................................................ 171
msn-user.......................................................................................................... 172
old-version ...................................................................................................... 173
policy ............................................................................................................... 174
yahoo-user ...................................................................................................... 175
log..................................................................................................... 189
custom-field .................................................................................................... 190
{disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter.... 191
disk setting...................................................................................................... 196
fortianalyzer setting ....................................................................................... 199
fortiguard setting............................................................................................ 201
memory setting............................................................................................... 202
memory global setting ................................................................................... 203
report customization ...................................................................................... 204
report definition .............................................................................................. 205
report filter ...................................................................................................... 206
report output ................................................................................................... 207
report period ................................................................................................... 209
report schedule............................................................................................... 210
report scope.................................................................................................... 211
report selection............................................................................................... 213
report summary-layout .................................................................................. 214
syslogd setting ............................................................................................... 216
trafficfilter........................................................................................................ 218
config rule .................................................................................................. 218
webtrends setting........................................................................................... 220
router................................................................................................ 223
access-list ....................................................................................................... 224
aspath-list........................................................................................................ 226
auth-path ......................................................................................................... 228
bgp ................................................................................................................... 229
config router bgp ........................................................................................ 231
config admin-distance ................................................................................ 234
config aggregate-address .......................................................................... 235
config neighbor .......................................................................................... 235
config network............................................................................................ 239
config redistribute....................................................................................... 240
community-list ................................................................................................ 242
key-chain ......................................................................................................... 245
system.............................................................................................. 311
accprofile......................................................................................................... 312
admin ............................................................................................................... 316
alertemail......................................................................................................... 321
arp-table .......................................................................................................... 322
auto-install ...................................................................................................... 323
autoupdate clientoverride.............................................................................. 324
autoupdate override ....................................................................................... 325
autoupdate push-update................................................................................ 326
autoupdate schedule...................................................................................... 328
autoupdate tunneling ..................................................................................... 330
aux ................................................................................................................... 332
bug-report ....................................................................................................... 333
console ............................................................................................................ 334
dhcp reserved-address .................................................................................. 335
dhcp server ..................................................................................................... 336
dns ................................................................................................................... 339
fortianalyzer, fortianalyzer2, fortianalyzer3 ................................................. 340
fortiguard......................................................................................................... 342
fortiguard-log .................................................................................................. 346
fortimanager.................................................................................................... 347
gi-gk (FortiOS Carrier).................................................................................... 349
global ............................................................................................................... 350
gre-tunnel ........................................................................................................ 358
ha ..................................................................................................................... 360
interface........................................................................................................... 373
ipv6-tunnel ...................................................................................................... 389
mac-address-table.......................................................................................... 390
management-tunnel ....................................................................................... 391
modem............................................................................................................. 393
npu ................................................................................................................... 396
proxy-arp ......................................................................................................... 397
replacemsg admin .......................................................................................... 398
replacemsg alertmail...................................................................................... 399
replacemsg auth ............................................................................................. 401
replacemsg fortiguard-wf .............................................................................. 404
user................................................................................................... 457
Configuring users for authentication ........................................................... 458
Configuring users for password authentication .......................................... 458
Configuring peers for certificate authentication .......................................... 458
adgrp................................................................................................................ 459
dynamic-profile (FortiOS Carrier).................................................................. 460
msisdn-bwl (FortiOS Carrier)......................................................................... 462
msisdn-ip-filter (FortiOS Carrier) .................................................................. 464
msisdn-translation (FortiOS Carrier) ............................................................ 465
vpn.................................................................................................... 487
certificate ca.................................................................................................... 488
certificate crl ................................................................................................... 489
certificate local ............................................................................................... 491
certificate ocsp ............................................................................................... 492
certificate remote............................................................................................ 493
ipsec concentrator ......................................................................................... 494
ipsec forticlient ............................................................................................... 495
ipsec manualkey............................................................................................. 496
ipsec manualkey-interface............................................................................. 499
ipsec phase1 ................................................................................................... 502
ipsec phase1-interface................................................................................... 510
ipsec phase2 ................................................................................................... 519
ipsec phase2-interface................................................................................... 526
l2tp ................................................................................................................... 533
pptp.................................................................................................................. 535
ssl monitor ...................................................................................................... 537
ssl settings...................................................................................................... 538
ssl web bookmarks ........................................................................................ 541
ssl web bookmarks-group ............................................................................. 543
ssl web favorite............................................................................................... 544
execute............................................................................................. 561
backup ............................................................................................................. 562
batch ................................................................................................................ 564
central-mgmt ................................................................................................... 565
cfg reload......................................................................................................... 566
cfg save ........................................................................................................... 567
clear system arp table .................................................................................... 568
cli status-msg-only ......................................................................................... 569
cli check-template-status............................................................................... 570
date .................................................................................................................. 571
deploy .............................................................................................................. 572
dhcp lease-clear.............................................................................................. 573
dhcp lease-list................................................................................................. 574
disconnect-admin-session ............................................................................ 575
factoryreset ..................................................................................................... 576
formatlogdisk .................................................................................................. 577
fortiguard-log update ..................................................................................... 578
fsae refresh ..................................................................................................... 579
ha disconnect.................................................................................................. 580
ha manage ....................................................................................................... 581
ha synchronize................................................................................................ 583
interface dhcpclient-renew ............................................................................ 585
interface pppoe-reconnect............................................................................. 586
log delete-all.................................................................................................... 587
log delete-filtered............................................................................................ 588
log delete-rolled .............................................................................................. 589
log display ....................................................................................................... 590
log filter............................................................................................................ 591
log fortianalzyer test-connectivity ................................................................ 593
log list .............................................................................................................. 594
log roll.............................................................................................................. 595
modem dial...................................................................................................... 596
modem hangup ............................................................................................... 597
get..................................................................................................... 631
chassis status................................................................................................. 632
firewall service predefined ............................................................................ 635
gui console status .......................................................................................... 636
gui topology status ........................................................................................ 637
hardware status .............................................................................................. 638
ips decoder ..................................................................................................... 639
ips rule............................................................................................................. 640
Index................................................................................................. 675
Introduction
This chapter introduces you to the FortiGate Unified Threat Management System
and the following topics:
• About the FortiGate Unified Threat Management System
• About this document
• FortiGate documentation
• Related documentation
• Customer service and technical support
• Register your Fortinet product
Note: Diagnose commands are also available from the FortiGate CLI. These commands
are used to display system information and for debugging. Diagnose commands are
intended for advanced users only, and they are not covered in this document. Contact
Fortinet technical support before using these commands.
FortiGate documentation
Information about FortiGate products is available from the following guides:
• FortiGate QuickStart Guide
Provides basic information about connecting and installing a FortiGate unit.
• FortiGate Installation Guide
Describes how to install a FortiGate unit. Includes a hardware reference,
default configuration information, installation procedures, connection
procedures, and basic configuration procedures. Choose the guide for your
product model number.
Related documentation
Additional information about Fortinet products is available from the following
related documentation.
FortiManager documentation
• FortiManager QuickStart Guide
Explains how to install the FortiManager Console, set up the FortiManager
Server, and configure basic settings.
• FortiManager System Administration Guide
Describes how to use the FortiManager System to manage FortiGate devices.
• FortiManager System online help
Provides a searchable version of the Administration Guide in HTML format.
You can access online help from the FortiManager Console as you work.
FortiClient documentation
• FortiClient Host Security User Guide
Describes how to use FortiClient Host Security software to set up a VPN
connection from your computer to remote networks, scan your computer for
viruses, and restrict access to your computer and applications by setting up
firewall policies.
• FortiClient Host Security online help
Provides information and procedures for using and configuring the FortiClient
software.
FortiMail documentation
• FortiMail Administration Guide
Describes how to install, configure, and manage a FortiMail unit in gateway
mode and server mode, including how to configure the unit; create profiles and
policies; configure antispam and antivirus filters; create user accounts; and set
up logging and reporting.
• FortiMail online help
Provides a searchable version of the Administration Guide in HTML format.
You can access online help from the web-based manager as you work.
• FortiMail Web Mail Online Help
Describes how to use the FortiMail web-based email client, including how to
send and receive email; how to add, import, and export addresses; and how to
configure message display preferences.
FortiAnalyzer documentation
• FortiAnalyzer Administration Guide
Describes how to install and configure a FortiAnalyzer unit to collect FortiGate
and FortiMail log files. It also describes how to view FortiGate and FortiMail log
files, generate and view log reports, and use the FortiAnalyzer unit as a NAS
server.
• FortiAnalyzer online help
Provides a searchable version of the Administration Guide in HTML format.
You can access online help from the web-based manager as you work.
What’s new
The table below lists commands which have changed since the previous release, MR5.
Command Change
config firewall ldb-monitor New command. Configures health check settings which
can be used when enabling health checks for load
balanced real servers associated with a virtual IP.
config firewall policy, policy6
edit <index_int>
set auth-path New keyword. Enables authentication-based routing.
set auth-redirect-addr New keyword. Specifies address used in URL when
performing HTTP-to-HTTPS redirects for policy
authentication.
set custom-log-fields New keyword. Selects custom log fields to append to
the policy’s log message.
set sslvpn-auth tacacs+ New SSL VPN client authentication option. Selects
TACACS+ authentication method when the firewall
policy action is set to ssl-vpn.
config firewall profile Removed filetype option for all protocol variables
(smtp, pop3, etc.). Instead, the block option is now
used in conjunction with file-pat-table.
edit <profile_str>
set aim block-long-chat New option. Blocks oversize chat messages.
set ftgd-wf-options redir-block New option redir-block. Blocks HTTP redirects.
set ftgd-wf-ovrd-group Keyword removed.
set ftp scanextended New option scanextended. Scans for viruses and
worms using the extended database of virus definitions.
set http scanextended New option scanextended. Scans for viruses and
worms using the extended database of virus definitions.
set icq archive-full Option archive-full renamed from
content-full.
set icq archive-summary Option archive-summary renamed from
content-meta.
set ips-anomaly Keyword removed. IPS sensors, formerly signatures,
are now configured by selecting a sensor name.
set icq content-full Option content-full renamed to archive-full.
set icq content-meta Option content-meta renamed to
archive-summary.
set ips-log Keyword renamed to log-ips.
set ips-signature Keyword removed. Denial of service (DoS) sensors,
formerly anomalies, are no longer configured in
protection profiles.
set ips-sensor New keyword. Selects the IPS sensor name.
set ips-sensor-status New keyword. Enables use of IPS sensors.
set log-ips Keyword renamed from ips-log.
Command Change
config firewall profile (continued)
set msn archive-full Option archive-full renamed from
content-full.
set msn archive-summary Option archive-summary renamed from
content-meta.
set msn content-full Option content-full renamed to archive-full.
set msn content-meta Option content-meta renamed to
archive-summary.
set yahoo archive-full Option archive-full renamed from
content-full.
set yahoo archive-summary Option archive-summary renamed from
content-meta.
set yahoo content-full Option content-full renamed to archive-full.
set yahoo content-meta Option content-meta renamed to
archive-summary.
config firewall vip
edit <name_str>
set http New keyword. Enables multiplexing of port forwarded
HTTP connections into a few connections to the
destination.
set http-ip-header New keyword. Preserves the original client’s IP address
in the X-Forwarded-For HTTP header line when
using HTTP multiplexing.
set max-embryonic-connections New keyword. Specifies the maximum number of
partially established SSL or HTTP connections when
the virtual IP is performing HTTP multiplexing or SSL
offloading.
set ssl New keywords. These keywords configure SSL
acceleration that offloads SSL operations from the
set ssl-certificate destination to the FortiGate unit.
set ssl-client-session-state-max
set ssl-client-session-state-timeout
set ssl-client-session-state-type
set ssl-dh-bits
set ssl-http-location-conversion
set ssl-http-match-host
set ssl-max-version
set ssl-min-version
set ssl-send-empty-frags
set ssl-server-session-state-max
set ssl-server-session-state-timeout
set ssl-server-session-state-type
config realservers
edit <table_int>
set healthcheck New keyword. Enables check of server responsiveness
before forwarding traffic. You must also configure
monitor.
set monitor New keyword. Sets name(s) of healthcheck monitor
settings to use.
Command Change
config fortianalyzer Removed.
config global
config system session-sync New command is global in scope.
execute vpn sslvpn del-tunnel Command is now per-VDOM.
execute vpn sslvpn del-web Command is now per-VDOM.
config ips anomaly Command renamed to config ips DoS and
extensively revised.
config ips decoder New command. Modifies ports on which IPS expects
particular traffic types.
config ips DoS Command renamed from config ips anomaly and
extensively revised. Anomalies are now defined in DoS
sensors.
config ips global
set ip-protocol Keyword removed.
config ips group Command removed.
config ips rule New command. Displays IPS settings for each
signature.
config ips sensor New command. Configures IPS sensors to detect
attacks. IPS sensors are made up of filters that specify
signature attributes and rules to override individual
sensors.
config log custom-field New command. Customizes the log fields with a name
and/or value that appears in log messages.
config log disk setting
set full-first-warning threshold New keywords. Define percentage thresholds for
warnings as the available disk space for logs fills up.
set full-second-warning threshold
set full-final-warning threshold
config log memory setting
set diskfull overwrite The nolog and blocktraffic options are removed.
config log memory global setting New command. Configures percentage thresholds for
warnings as memory allocated to logs fills up. Also
configures maximum number of lines in memory buffer
log.
config router auth-path New command. Configures authentication-based
routing.
config system accprofile
edit <profile-name>
set <access-group> <access-level> New option for <access-group>: imp2pgrp
config system admin
edit <name_str>
set schedule New keyword. Selects schedule that determines when
an administrator can log in.
set radius-auth Keyword renamed to remote-auth.
set radius-group Keyword renamed to remote-group.
set remote-auth Keyword renamed from radius-auth.
set remote-group Keyword renamed from radius-group.
config dashboard New subcommand. Configures web-based manager
dashboard for this administrator.
Command Change
config dhcp server
set ipsec-lease-hold New keyword. Sets time to wait before expiring DHCP-
over-IPSec lease after IPSec tunnel goes down.
config system fm Command replaced by config system
fortimanager.
config system fortimanager New command. Replaces config system fm.
Configures central management on the FortiGate unit.
config system global
set auth-secure-http Keyword moved to config user settings.
set auth-type Keyword moved to config user settings.
set authtimeout Keyword moved to config user settings.
set fds-statistics-period New keyword. Sets the number of minutes in the FDS
report period when fds-statistics is enabled.
set local-anomaly Keyword removed.
config system interface
edit <interface name>
set gateway_address Keyword renamed to gwaddr.
set gwaddr Keyword renamed from gwaddr.
set ha-priority New keyword. Sets the HA priority to assign to the ping
servers configured on an interface when the interface is
added to an HA remote IP monitoring configuration.
set l2tp-client Keyword removed.
set lcp-max-echo-failures Keyword renamed to lcp-max-echo-fail.
set lcp-max-echo-fail Keyword renamed from lcp-max-echo-failures.
set pptp-client New keyword. Enables PPTP client on interface.
set pptp-user New keyword. Sets the name of the PPTP user.
set pptp-password New keyword. Sets the password for the PPTP user.
set pptp-server-ip New keyword. Sets the IP address of the PPTP server.
set pptp-auth-type New keyword. Sets the authentication type for the
PPTP user.
set pptp-timeout New keyword. Sets the PPTP idle timeout in minutes.
config l2tp-client Subcommand and all of its variables removed.
config system management-tunnel New command. Configures the remote management
tunnel and permitted remote management actions from
either the FortiManager unit or FortiGuard Management
Service.
config system session-sync New command. Configures TCP session
synchronization with another FortiGate unit.
config system settings
set p2p-rate-limit New keyword. Sets whether P2P bandwidth limit is
per-profile or per-policy.
set sip-nat-trace New keyword. Enables recording the original IP
address of the phone.
set status New keyword. Enables or disables this VDOM.
set utf8-spam-tagging New keyword. Enable conversion of spam tags to UTF8
for better non-ascii character support.
config system switch-interface New command. Groups interfaces as a virtual switch.
Command Change
config user fsae
edit <server_name>
set ldap_server New keyword. Sets the name of the LDAP server used
to access Windows AD user and group information.
config user radius
edit <server_name>
set auth-type New keyword. Set authentication type to CHAP, PAP,
MS-CHAP, MS-CHAPv2 or Auto.
set radius-port New keyword. Changes RADIUS port for this server.
config user settings New command. Replaces system global keywords
authtimeout, auth-type, and auth-secure-
http.
config user tacacs+ New command. Configures TACACS+ authentication.
config vpn certificate local
edit <cert_name>
set comments New keyword. Enters descriptive comment about the
certificate.
config vpn ipsec phase1-interface
set default-gw New keyword. Configures a default route for this IPSec
interface.
set default-gw-priority New keyword. Sets priority of default route defined with
set default-gw.
config vpn ssl settings
set auth-timeout You can set a value of 0 for no timeout.
set idle-timeout You can set a value of 0 for no timeout.
execute cli check-template-status New command. Reports the status of the SCP script
template.
execute fortiguard-log delete Command removed.
execute log list Removed category ids.
execute log stats display Command removed.
execute log stats reset Command removed.
execute send-fds-statistics New command. Sends an FDS statistics report
immediately.
firewall service predefined New command. Retrieves information about predefined
services.
get ips anomaly status Command removed. Replaced by get ips rule
status.
get ips custom status Command removed.
get ips decoder status New command.
get ips group status Command removed.
get ips rule status New command. Replaces get ips anomaly
status.
get system session list Command now applies per-VDOM.
get system session status New command. Returns the number of active sessions
in this VDOM. If VDOMs are not enabled, returns
number of active sessions on FortiGate unit.
• A space to separate options that can be entered in any combination and must
be separated by spaces.
For example:
set allowaccess {ping https ssh snmp http telnet}
You can enter any of the following:
set allowaccess ping
set allowaccess ping https ssh
set allowaccess https ping ssh
set allowaccess snmp
In most cases to make changes to lists that contain options separated by
spaces, you need to retype the whole list including all the options you want to
apply and excluding all the options you want to remove.
Administrator access
The access profile you are assigned in your administrator account controls which
CLI commands you can access. You need read access to view configurations and
write access to make changes. Access control in access profiles is divided into
groups, as follows:
Table 1: Access profile control of access to CLI commands
Note: The following procedure describes how to connect to the FortiGate CLI using
Windows HyperTerminal software. You can use any terminal emulation program.
Note: Remember to press Enter at the end of each line in the command example. Also,
type end and press Enter to commit the changes to the FortiGate configuration.
3 To confirm that you have configured SSH or Telnet access correctly, enter the
following command to view the access settings for the interface:
get system interface <name_str>
The CLI displays the settings, including allowaccess, for the named interface.
Caution: Telnet is not a secure access method. SSH should be used to access the
! FortiGate CLI from the Internet or any other unprotected network.
CLI objects
The FortiGate CLI is based on configurable objects. The top-level objects are the
basic components of FortiGate functionality.
There is a chapter in this manual for each of these top-level objects. Each of these
objects contains more specific lower level objects. For example, the firewall object
contains objects for addresses, address groups, policies and protection profiles.
config branch
The config commands configure CLI objects, such as the firewall, the router,
antivirus protection, and so on. For more information about CLI objects, see “CLI
objects” on page 33.
Top-level objects are containers for more specific lower level objects that are each
in the form of a table. For example, the firewall object contains tables of
addresses, address groups, policies and protection profiles. You can add, delete
or edit the entries in the table. Table entries consist of keywords that you can set
to particular values.
To configure an object, you use the config command to navigate to the object’s
command “shell”. For example, to configure administrators, you enter the
command
config system admin
The command prompt changes to show that you are now in the admin shell.
(admin)#
This is a table shell. You can use any of the following commands:
delete Remove an entry from the FortiGate configuration. For example in the
config system admin shell, type delete newadmin and press
Enter to delete the administrator account named newadmin.
edit Add an entry to the FortiGate configuration or edit an existing entry. For
example in the config system admin shell:
• type edit admin and press Enter to edit the settings for the default
admin administrator account.
• type edit newadmin and press Enter to create a new administrator
account with the name newadmin and to edit the default settings for
the new administrator account.
end Save the changes you have made in the current shell and leave the
shell. Every config command must be paired with an end command.
You return to the root FortiGate CLI prompt.
The end command is also used to save set command changes and
leave the shell.
get List the configuration. In a table shell, get lists the table members. In an
edit shell, get lists the keywords and their values.
move Change the position of an entry in an ordered table. For example in the
config firewall policy shell:
• type move 3 after 1 and press Enter to move the policy in the third
position in the table to the second position in the table.
• type move 3 before 1 and press Enter to move the policy in the
third position in the table to the first position in the table.
purge Remove all entries configured in the current shell. For example in the
config user local shell:
• type get to see the list of user names added to the FortiGate
configuration,
• type purge and then y to confirm that you want to purge all the user
names,
• type get again to confirm that no user names are displayed.
rename Rename a table entry. For example, in the config system admin
shell, you could rename “admin3” to “fwadmin” like this:
rename admin3 to fwadmin
show Show changes to the default configuration in the form of configuration
commands.
If you enter the get command, you see a list of the entries in the table of
administrators. To add a new administrator, you enter the edit command with a
new administrator name:
edit admin_1
The FortiGate unit acknowledges the new table entry and changes the command
prompt to show that you are now editing the new entry:
new entry 'admin_1' added
(admin_1)#
From this prompt, you can use any of the following commands:
The config branch is organized into configuration shells. You can complete and
save the configuration within each shell for that shell, or you can leave the shell
without saving the configuration. You can only use the configuration commands
for the shell that you are working in. To use the configuration commands for
another shell you must leave the shell you are working in and enter the other
shell.
get branch
Use get to display system status information. For information about these
commands, see “get” on page 631.
You can also use get within a config shell to display the settings for that shell,
or you can use get with a full path to display the settings for a particular object.
To use get from the root prompt, you must include a path to a shell. The root
prompt is the FortiGate host name followed by a #.
Example
The command get hardware status provides information about various
physical components of the FortiGate unit.
# get hardware status
Model name: Fortigate-300
ASIC version: CP
SRAM: 64M
CPU: Pentium III (Coppermine)
RAM: 250 MB
Compact Flash: 122 MB /dev/hda
Hard disk: 38154 MB /dev/hdc
Network Card chipset: Intel(R) 8255x-based Ethernet Adapter
(rev.0x0009)
Note: Interface names vary for different FortiGate models. The following examples use the
interface names for a FortiGate-300 unit.
Example
When you type get in the config system interface shell, information about
all of the interfaces is displayed.
At the (interface)# prompt, type:
get
The screen displays:
== [ internal ]
name: internal mode: static ip: 192.168.20.200
255.255.255.0 status: up netbios-forward:
disable type: physical ip6-address: ::/0 ip6-send-adv:
disable
== [ external ]
name: external mode: static ip: 192.168.100.99
255.255.255.0 status: up netbios-forward:
disable type: physical ip6-address: ::/0 ip6-send-adv:
disable
...
Example
When you type get in the internal interface shell, the configuration values for
the internal interface are displayed.
edit internal
At the (internal)# prompt, type:
get
The screen displays:
name : internal
allowaccess : ping https ssh
arpforword : enable
cli_conn_status : 0
detectserver : (null)
gwdetect : disable
ip : 192.168.20.200 255.255.255.0
and so on.
Example
You are working in the config system global shell and want to see
information about the FortiGate interfaces.
At the (global)# prompt, type:
get system interface
The screen displays:
== [ internal ]
name: internal mode: static ip: 192.168.20.200
255.255.255.0 status: up netbios-forward:
disable type: physical ip6-address: ::/0 ip6-send-adv:
disable
== [ external ]
name: external mode: static ip: 192.168.100.99
255.255.255.0 status: up netbios-forward:
disable type: physical ip6-address: ::/0 ip6-send-adv:
disable
...
Example
You want to confirm the IP address and netmask of the internal interface from the
root prompt.
At the # prompt, type:
get system interface internal
show branch
Use show to display the FortiGate unit configuration. By default, only changes to
the default configuration are displayed. Use show full-configuration to
display the complete configuration.
You can use show within a config shell to display the configuration of that shell,
or you can use show with a full path to display the configuration of the specified
object.
To display the configuration of all objects, you can use show from the root prompt.
The root prompt is the FortiGate host or model name followed by a #.
Example
When you type show and press Enter within the internal interface shell, the
changes to the default internal interface configuration are displayed.
At the (internal)# prompt, type:
show
The screen displays:
config system interface
edit internal
set allowaccess ssh ping https
set ip 192.168.20.200 255.255.255.0
next
end
Example
You are working in the internal interface shell and want to see the system
global configuration. At the (internal)# prompt, type:
show system global
execute branch
Use execute to run static commands, to reset the FortiGate unit to factory
defaults, to back up or restore FortiGate configuration files. The execute
commands are available only from the root prompt.
The root prompt is the FortiGate host or model name followed by a #.
Example
At the root prompt, type:
execute reboot
and press Enter to restart the FortiGate unit.
diagnose branch
Commands in the diagnose branch are used for debugging the operation of the
FortiGate unit and to set parameters for displaying different levels of diagnostic
information. The diagnose commands are not documented in this CLI Reference
Guide.
Caution: Diagnose commands are intended for advanced users only. Contact Fortinet
! technical support before using these commands.
Note: Interface names vary for different FortiGate models. The following examples use the
interface names for a FortiGate_300 unit.
CLI basics
This section includes:
• Command help
• Command completion
• Recalling commands
• Editing commands
• Line continuation
• Command abbreviation
• Environment variables
• Encrypted password support
• Entering spaces in strings
• Entering quotation marks in strings
• Entering a question mark (?) in a string
• International characters
• Special characters
• IP address formats
• Editing the configuration file
• Setting screen paging
• Changing the baud rate
• Using Perl regular expressions
Command help
You can press the question mark (?) key to display command help.
• Press the question mark (?) key at the command prompt to display a list of the
commands available and a description of each command.
• Type a command followed by a space and press the question mark (?) key to
display a list of the options available for that command and a description of
each option.
• Type a command followed by an option and press the question mark (?) key to
display a list of additional options available for that command option
combination and a description of each option.
Command completion
You can use the tab key or the question mark (?) key to complete commands.
• You can press the tab key at any prompt to scroll through the options available
for that prompt.
• You can type the first characters of any command and press the tab key or the
question mark (?) key to complete the command or to scroll through the
options that are available at the current cursor position.
• After completing the first word of a command, you can press the space bar and
then the tab key to scroll through the options available at the current cursor
position.
Recalling commands
You can recall previously entered commands by using the Up and Down arrow
keys to scroll through commands you have entered.
Editing commands
Use the Left and Right arrow keys to move the cursor back and forth in a recalled
command. You can also use the Backspace and Delete keys and the control keys
listed in Table 3 to edit the command.
Line continuation
To break a long command over multiple lines, use a \ at the end of each line.
Command abbreviation
You can abbreviate commands and command options to the smallest number of
non-ambiguous characters. For example, the command get system status
can be abbreviated to g sy st.
Environment variables
The FortiGate CLI supports the following environment variables.
$USERFROM The management access type (SSH, Telnet and so on) and the IP
address of the logged in administrator.
$USERNAME The user account name of the logged in administrator.
$SerialNum The serial number of the FortiGate unit.
Variable names are case sensitive. In the following example, the unit hostname is
set to the serial number.
config system global
set hostname $SerialNum
end
International characters
The CLI supports international characters in strings.The web-based manager
dashboard CLI Console applet supports the appropriate character set for the
current administration language. If you want to enter strings that contain Asian
characters, configure the CLI Console to use the external command input box.
International character support with external applications such as SSH clients
depends on the capabilities and settings of the application.
Special characters
The characters <, >, (, ), #, ’, and ” are not permitted in most CLI fields. The
exceptions are:
• passwords
• replacemsg buffer
• firewall policy comments
• ips custom signature
• antivirus filepattern
• antivirus exemptfilepattern
• webfilter bword
• spamfilter bword pattern
• system interface username (PPPoE mode)
• system modem phone numbers or account user names
• firewall profile comment
• spamfilter mheader fieldbody
• spamfilter mheader fieldbody
• spamfilter emailbwl email_pattern
• router info bgp regular expressions
• router aspath-list rule regular expressions
IP address formats
You can enter an IP address and subnet using either dotted decimal or slash-bit
format. For example you can type either:
set ip 192.168.1.1 255.255.255.0
or
set ip 192.168.1.1/24
The IP address is displayed in the configuration file in dotted decimal format.
Note: Changing the default baud rate is available for FortiGate units with BIOS 3.03 and
higher and FortiOS version 2.50 and higher.
Word boundary
In Perl regular expressions, the pattern does not have an implicit word boundary.
For example, the regular expression “test” not only matches the word “test” but
also matches any word that contains the word “test” such as “atest”, “mytest”,
“testimony”, “atestb”. The notation “\b” specifies the word boundary. To match
exactly the word “test”, the expression should be \btest\b.
Case sensitivity
Regular expression pattern matching is case sensitive in the Web and Spam
filters. To make a word or phrase case insensitive, use the regular expression /i.
For example, /bad language/i will block all instances of “bad language”
regardless of case.
Expression Matches
abc abc (that exact character sequence, but anywhere in the string)
^abc abc at the beginning of the string
abc$ abc at the end of the string
a|b either of a and b
^abc|abc$ the string abc at the beginning or at the end of the string
ab{2,4}c an a followed by two, three or four b's followed by a c
Creating a VDOM
You create a new VDOM using the config vdom command. For example, to create a new VDOM
called vdomain2, you enter the following:
config vdom
edit vdomain2
end
This creates a new VDOM operating in NAT/Route mode. You can have up to 10 VDOMs on your
FortiGate unit by default.
For this VDOM to be useful, you need to assign interfaces or VLAN subinterfaces to it.
To remove the vdom-link, delete the vdom-link. You will not be able to delete the ends of the vdom-link
by themselves. To delete the above set up, enter:
config global
config system vdom-link
delete v12_link
end
Note: In an HA setup with virtual clusters, inter-VDOM routing must be entirely within one cluster. You
cannot create links between virtual clusters, and you cannot move a VDOM that is linked into another
virtual cluster. In HA mode, with multiple vclusters when you create the vdom-link in system vdom-link
there is an option to set which vcluster the link will be in.
Before inter-VDOM routing, VDOMs were completely separate entities. Now, many new configurations
are available such as a service provider configuration (a number of VDOMS that go through one main
VDOM to access the internet) or a mesh configuration (where some or all VDOMs are connected to
some or all other VDOMs). These configurations are discussed in-depth in the FortiGate VLANs and
VDOMs Guide.
Forward-domain solution
You may run into problems using the multiple VDOMs solution. It is possible that you have more
VLANs than licensed VDOMs, not enough physical interfaces or your configuration may work better by
grouping some VLANs together. In these situations the separate VDOMs solution may not work for
you.
In these cases, the solution is to use the forward-domain <collision_group_number> command. This
command tags VLAN traffic as belonging to a particular forward-domain collision group, and only
VLANs tagged as part of that collision group receive that traffic. By default ports and VLANs are part of
forward-domain collision group 0. For more information, see the FortiGate VLANs and VDOMs Guide.
There are many benefits for this solution from reduced administration, to using fewer physical
interfaces to being able to allowing you more flexible network solutions.
In the following example, forward-domain collision group 340 includes VLAN 340 traffic on Port1 and
untagged traffic on Port2. Forward-domain collision group 341 includes VLAN 341 traffic on Port1 and
untagged traffic on Port3. All other ports are part of forward-domain collision group 0 by default.
These are the CLI commands to accomplish this setup.
config system interface
edit “port1”
next
edit "port2"
set forward_domain 340
next
edit “port3”
set forward_domain 341
next
edit "port1-340"
set forward_domain 340
set interface "port1"
set vlanid 340
next
edit "port1-341"
set forward_domain 341
set interface "port1"
set vlanid 341
next
end
There is a more detailed discussion of this issue in the Asymmetric Routing and Other FortiGate Layer-
2 Installation Issues technical note.
global
From the super_admin accounts, use this command to configure features that apply to all virtual
domains. Virtual domain configuration (vdom-admin) must be enabled. See “system global” on
page 350.
Syntax
This command syntax shows how you access the commands within config global. For information on
these commands, refer to the relevant sections in this Reference.
config global
config antivirus ...
config firewall service
config gui console
config imp2p ...
config ips ...
config log fortianalyzer setting
config log report definition
config log report filter
config log report output
config log report period
config log report schedule
config log report scope
config log report selection
config log syslogd setting
config log webtrends setting
config spamfilter ...
config system accprofile
config system admin
config system alertemail
config system auto-install
config system autoupdate clientoverride
config system autoupdate override
config system autoupdate override
config system autoupdate push-update
config system autoupdate schedule
config system autoupdate tunneling
config system bug-report
config system console
config system dns
config system fortiguard
config system fortianalyzer, fortianalyzer2, fortianalyzer3
config system fortiguard
config system gi-gk (FortiOS Carrier)
config system global
config system ha
config system interface
config system replacemsg admin
config system replacemsg alertmail
config system replacemsg auth
config system replacemsg fortiguard-wf
config system replacemsg ftp
config system replacemsg http
History
FortiOS v3.0 New.
FortiOS v3.0 MR1 Added vdom-link, vpn, webfilter, execute backup, batch, dhcp lease-client, dhcp lease-
list, fsae refresh, restore, telnet, and traceroute.
FortiOS v3.0 MR5 Added config firewall service, gui console, system console, system fortiguard, system
replacemsg admin/alertemail/auth/nntp, vpn certificate crl/local/remote, execute
central-mgmt, execute cfg ..., execute update-ips, and execute update-now.
FortiOS v3.0 MR6 Added config system session-sync, expanded command to vpn
certificate ... .Removed vpn sslvpn.
Related topics
• vdom
vdom
From the super admin account, use this command to add and configure virtual domains. The number
of virtual domains you can add is dependent on the FortiGate model. Virtual domain configuration
(vdom-admin) must be enabled. See “system global” on page 350.
Once you add a virtual domain you can configure it by adding zones, firewall policies, routing settings,
and VPN settings. You can also move physical interfaces from the root virtual domain to other virtual
domains and move VLAN subinterfaces from one virtual domain to another.
By default all physical interfaces are in the root virtual domain. You cannot remove an interface from a
virtual domain if the interface is part of any of the following configurations:
• routing
• proxy arp
• DHCP server
• zone
• firewall policy
• IP pool
• redundant pair
• link aggregate (802.3ad) group
Delete these items or modify them to remove the interface first.
You cannot delete the default root virtual domain and you cannot delete a virtual domain that is used
for system management.
Syntax
This command syntax shows how you access the commands within config global. Refer to the relevant
sections in this Reference for information on these commands.
config vdom
edit <vdom_name>
config antivirus
config firewall address, address6
config firewall addrgrp, addrgrp6
config firewall dnstranslation
config firewall ipmacbinding setting
config firewall ipmacbinding table
config firewall ippool
config firewall multicast-policy
config firewall policy, policy6
config firewall schedule onetime
config firewall schedule recurring
config firewall service custom
config firewall service group
config firewall vip
config gui
config log {disk | fortianalyzer | memory | syslogd | webtrends |
fortiguard} filter
config log fortianalyzer setting
config log memory setting
config log trafficfilter
config router ...
config system admin
end
Variable Description Default
edit <vdom_name> Enter a new name to create a new VDOM. Enter an existing
VDOM name to configure that VDOM.
The VDOM you enter becomes the current VDOM.
A VDOM cannot have the same name as a VLAN.
A VDOM name cannot exceed 11 characters in length.
Note: The VDOM names vsys_ha and vsys_fgfm are in use by the FortiGate unit. If you attempt to
name a new VDOM vsys_ha or vsys_fgfm it will generate an error.
Note: Use config system settings set opmode {nat | transparent} to set the operation
mode for this VDOM to nat (NAT/Route) or transparent.
Example
This example shows how to add a virtual domain called Test1.
config system vdom
edit Test1
end
History
FortiOS v3.0 New.
FortiOS v3.0 MR1 Added system admin, interface, ipv6-tunnel commands.
Added batch, date, reboot, execute router clear ospf process
commands.
Removed log fortianalyzer, log syslogd, log webtrends, router
graceful-restart commands.
FortiOS v3.0 MR1 Added system setting multicast-forward and multicast-ttl-notchange.
FortiOS v3.0 MR5 Removed config alertemail, and execute batch.
Added config gui, system arp-table, system proxy-arp, all of system settings.
Related topics
• global
alertemail
Use alertemail commands to configure the FortiGate unit to monitor logs for log messages with
certain severity levels. If the message appears in the logs, the FortiGate unit sends an email to a
predefined recipient(s) of the log message encountered. Alert emails provide immediate notification of
issues occurring on the FortiGate unit, such as system failures or network attacks.
By default, the alertemail commands do not appear if no SMTP server is configured. An SMTP
server is configured using the system alertemail commands. See “system alertemail” on page 321 for
more information.
When configuring an alert email, you must configure at least one DNS server. The FortiGate unit uses
the SMTP server name to connect to the mail server and must look up this name on your DNS server.
See “dns” on page 339 for more information about configuring DNS servers.
This chapter contains the following section:
setting
setting
Use this command to configure the FortiGate unit to send an alert email to up to three recipients. This
command can also be configured to send an alert email a certain number of days before the FDS
license expires and/or when the disk usage exceeds a certain threshold amount. You need to configure
an SMTP server before configuring alert email settings. See “system alertemail” on page 321 for more
information.
Note: The FortiGate unit must be able to look up the SMTP server name on your DNS server because the
FortiGate unit uses the SMTP server to connect to the mail server. See “system dns” on page 339 for more
information.
Syntax
config alertemail setting
set username <user-name-str>
set mailto1 <email-address-str>
set mailto2 <email-address-str>
set mailto3 <email-address-str>
set filter-mode <category> <threshold>
set email-interval <minutes-integer>
set severity {alert | critical | debug | emergency | error |
information | notification | warning}
set emergency-interval <minutes-integer>
set alert-interval <minutes-integer>
set critical-interval <minutes-integer>
set error-interval <minutes-integer>
set warning-interval <minutes-integer>
set notification-interval <minutes-integer>
set information-interval <minutes-integer>
set debug-interval <minutes-integer>
set IPS-logs {disable | enable}
set firewall-authentication-failure-logs {disable | enable}
set HA-logs {enable | disable}
set IPsec-error-logs {disable | enable}
set FDS-update-logs {disable | enable}
set PPP-errors-logs {disable | enable}
set sslvpn-authentication-errors-logs {disable | enable}
set antivirus-logs {disable | enable}
set webfilter-logs {disable | enable}
set configuration-changes-logs {disable | enable}
set violation-traffic-logs {disable | enable}
set admin-login-logs {disable | enable}
set local-disk-usage-warning {disable | enable}
set FDS-license-expiring-warning {disable | enable}
set FDS-license-expiring-days <integer>
set local-disk-usage <percentage>
set fortiguard-log-quota-warning
end
FDS-license-expiring- Enable or disable to receive an email notification of the expire date disable
warning of the FDS license.
{disable | enable}
FDS-license-expiring- Enter the number of days to be notified by email when the FDS 15
days license expires. For example, if you want notification five days in
<integer> advance, enter 5.
Examples
This example shows how to configure the user name, add three email addresses for sending alerts to,
and what type of emails will contain which log messages, such as HA and antivirus.
config alertemail setting
set username [email protected]
set mail1 [email protected]
set mail2 [email protected]
set mail3 [email protected]
set filter-mode category
set HA-logs enable
set FDS-update-logs enable
set antivirus-logs enable
set webfilter-logs enable
set admin-login-logs enable
set violation-traffic-logs enable
end
History
Related topics
• system alertemail
• system dns
antivirus
Use antivirus commands to configure antivirus scanning for services, quarantine options, and to
enable or disable grayware and heuristic scanning.
This chapter contains the following sections:
filepattern
grayware
heuristic
quarantine
quarfilepattern
service
filepattern
Use this command to add, edit or delete the file patterns used for virus blocking and to set which
protocols to check for files to block.
If you need to add configuration via CLI that requires ? as part of config, you need to input CTRL-V
first. If you enter the question mark (?) without first using CTRL-V, the question mark has a different
meaning in CLI: it will show available command options in that section.
For example, if you enter ? without CTRL-V:
edit "*.xe
token line: Unmatched double quote.
If you enter ? with CTRL-V:
edit "*.xe?"
new entry '*.xe?' added
Syntax
config antivirus filepattern
edit <filepattern_list_integer>
set name <filepattern_list>
set comment <filepattern_list_comment>
config entries
edit <filepattern_string>
set action <allow | block | intercept>
set active {ftp http im imap mm1 mm3 mm4 mm7 nntp pop3 smtp}
set file-type {unknown | ignored | activemime | arj | aspack |
base64 | bat | binhex | bzip | bzip2 | cab | com | elf | exe |
fsg | genscript | gzip | hlp | hta | html | javascript | lzh |
mime | msc | msoffice | perlscript | petite | rar | shellscript
| sis | tar | upx | uue | vbs | zip} (FortiOS Carrier)
set filter-type {pattern | type} (FortiOS Carrier)
end
Keywords and variables Description Default
<filepattern_list_integer> A unique number to identify the file pattern list.
<filepattern_list> The name of the file pattern header list.
<filepattern_list_comment> The comment attached to the file pattern header list.
<filepattern_string> The name of the file pattern being configured. This can be any
character string.
action <allow | block | The action taken when a matching file is being transferred via a block
intercept> set active protocol.
• Select allow to have the FortiGate unit allow matching files.
• Select block to have the FortiGate unit block matching files.
• Select intercept to allow matching files, with a copy sent to
a quarantine. Note that the store-intercepted command
in config antivirus quarantine must also be
configured to quarantine intercepted files.
The intercept action is supported in FortiOS Carrier.
active The action specified will affect the file pattern in the selected Varies.
{ftp http im imap mm1 mm3 protocols.
mm4 mm7 nntp pop3 smtp} NNTP support for this keyword will be added in the future.
MM1, MM3, MM4, and MM7 traffic types supported in FortiOS
Carrier.
History
Related topics
• antivirus heuristic
• antivirus grayware
• antivirus quarantine
• antivirus quarfilepattern
• antivirus service
grayware
Use this command to enable or disable grayware scanning for the specified category.
Grayware programs are unsolicited commercial software programs that get installed on computers,
often without the user’s consent or knowledge. Grayware programs are generally considered an
annoyance, but these programs can cause system performance problems or be used for malicious
purposes.
The FortiGate unit scans for known grayware executable programs in each category enabled. The
category list and contents are added or updated whenever the FortiGate unit receives a virus update
package. New categories may be added at any time and are loaded with virus updates. By default, all
new categories are disabled.
Syntax
config antivirus grayware <category_name_str>
set status {enable | disable}
end
Note: The FortiGate CLI is case sensitive and the first letter of all grayware category names is uppercase.
Example
This example shows how to enable grayware scanning for Adware programs.
config antivirus grayware Adware
set status enable
end
History
Related topics
• antivirus filepattern
• antivirus heuristic
• antivirus quarantine
• antivirus quarfilepattern
• antivirus service
• system autoupdate schedule
• execute update-av
heuristic
Use this command to configure heuristic scanning for viruses in binary files.
Syntax
config antivirus heuristic
set mode {pass | block | disable}
end
Keywords and variables Description Default
mode Enter pass to enable heuristics but pass detected files to the pass
{pass | block | disable} recipient. Suspicious files are quarantined if quarantine is
enabled.
Enter block to enable heuristics and block detected files. A
replacement message is forwarded to the recipient. Blocked files
are quarantined if quarantine is enabled.
Enter disable to disable heuristics.
Example
This example shows how to disable heuristic scanning.
config antivirus heuristic
set mode disable
end
History
Related topics
• antivirus filepattern
• antivirus quarantine
• antivirus quarfilepattern
• antivirus service
quarantine
Use this command to set file quarantine options.
FortiGate units with a local disk can quarantine blocked and infected files. The quarantined files are
removed from the content stream and stored on the FortiGate local disk. Users receive a message
informing them that the removed files have been quarantined.
FortiGate units that do not have a local disk can quarantine blocked and infected files to a
FortiAnalyzer unit.
View the file names and status information about the file in the quarantined file list. Submit specific files
and add file patterns to the autoupload list so they are automatically uploaded to Fortinet for analysis.
Syntax
config antivirus quarantine
set agelimit <hours_integer>
set drop-blocked {ftp http im imap mm1 mm3 mm4 mm7 nntp pop3 smtp}
set drop-heuristic {ftp http im imap mm1 mm3 mm4 mm7 nntp pop3 smtp}
set drop-infected {ftp http im imap mm1 mm3 mm4 mm7 nntp pop3 smtp}
set drop-intercepted {ftp http imap mm1 mm3 mm4 mm7 pop3 smtp} (FortiOS
Carrier)
set lowspace {drop-new | ovrw-old}
set maxfilesize <MB_integer>
set quar-to-fortianalyzer {enable | disable}
set store-blocked {ftp http im imap mm1 mm3 mm4 mm7 nntp pop3 smtp}
set store-heuristic {ftp http im imap mm1 mm3 mm4 mm7 nntp pop3 smtp}
set store-infected {ftp http im imap mm1 mm3 mm4 mm7 nntp pop3 smtp}
set store-intercepted {ftp http imap mm1 mm3 mm4 mm7 pop3 smtp}
(FortiOS Carrier)
end
Keywords and variables Description Default
agelimit <hours_integer> Specify how long files are kept in quarantine to a maximum of 479 0
hours. The age limit is used to formulate the value in the TTL
column of the quarantined files list. When the limit is reached the
TTL column displays EXP and the file is deleted (although a
record is maintained in the quarantined files list). Entering an age
limit of 0 (zero) means files are stored on disk indefinitely
depending on low disk space action.
drop-blocked Do not quarantine blocked files found in traffic for the specified imap
{ftp http im imap mm1 mm3 protocols. The files are deleted. nntp
mm4 mm7 nntp pop3 smtp} NNTP support for this keyword will be added in the future.
HTTP, FTP, MM1, MM3, MM4, and MM7 traffic types supported in
FortiOS Carrier.
drop-heuristic Do not quarantine files found by heuristic scanning in traffic for the http
{ftp http im imap mm1 mm3 specified protocols. im
mm4 mm7 nntp pop3 smtp} NNTP support for this keyword will be added in the future. imap
MM1, MM3, MM4, and MM7 traffic types supported in FortiOS nntp
Carrier. pop3
smtp
drop-infected Do not quarantine virus infected files found in traffic for the im
{ftp http im imap mm1 mm3 specified protocols. imap
mm4 mm7 nntp pop3 smtp} NNTP support for this keyword will be added in the future. nntp
MM1, MM3, MM4, and MM7 traffic types supported in FortiOS
Carrier.
Example
This example shows how to set the quarantine age limit to 100 hours, not quarantine blocked files
from SMTP and POP3 traffic, not quarantine heuristic tagged files from SMTP and POP3 traffic,
set the quarantine to drop new files if the memory is full, set the maximum file size to quarantine
at 2 MB, quarantine files from IMAP traffic with blocked status, quarantine files with heuristic
status in IMAP, HTTP, and FTP traffic.config antivirus quarantine
set agelimit 100
set drop-blocked smtp pop3
set drop-heuristic smtp pop3
set lowspace drop-new
set maxfilesize 2
set store-blocked imap
set store-heuristic imap http ftp
end
History
Related topics
• antivirus filepattern
• antivirus heuristic
• antivirus quarfilepattern
• antivirus service
quarfilepattern
Use this command to configure the file patterns used by automatic file uploading. This command is
only available on FortiGate units with a hard drive.
Configure the FortiGate unit to upload suspicious files automatically to Fortinet for analysis. Add file
patterns to be uploaded to the autoupload list using the * wildcard character. File patterns are applied
for autoupload regardless of file blocking settings.
Also upload files to Fortinet based on status (blocked or heuristics) or submit individual files directly
from the quarantined files list. For more information, see antivirus quarantine.
Syntax
config antivirus quarfilepattern
edit pattern_str
set status {enable | disable}
end
Example
Use the following commands to enable automatic upload of *.bat files.
config antivirus quarfilepattern
edit *.bat
set status enable
end
History
Related topics
• antivirus filepattern
• antivirus heuristic
• antivirus quarantine
• antivirus service
service
Use this command to configure how the FortiGate unit handles antivirus scanning of large files in
HTTP, HTTPS, FTP, POP3, IMAP, and SMTP traffic and what ports the FortiGate unit scans for these
services.
For HTTPS, you can only configure the ports.
Syntax
config antivirus service <service_str>
set port <port_integer>
set scan-bzip2 {enable | disable}
set uncompnestlimit <depth_integer>
set uncompsizelimit <MB_integer>
end
Keywords and variables Description Default
<service_str> The service being configured: HTTP, HTTPS, FTP, IM, IMAP,
NNTP, POP3, SMTP.
port <port_integer> Configure antivirus scanning on a nonstandard port number or HTTP: 80
multiple port numbers for the service. Use ports from the HTTPS: 443
range 1-65535. Add up to 20 ports. FTP: 21
IMAP: 143
NNTP: 119
POP3: 110
SMTP: 25
scan-bzip2 {enable | Enable to allow the antivirus engine to scan the contents of disable
disable} bzip2 compressed files. Requires antivirus engine 1.90 for full
functionality. Bzip2 scanning is extemely CPU intensive.
Unless this feature is required, leave scan-bzip2 disabled.
uncompnestlimit Set the maximum number of archives in depth the AV engine 12
<depth_integer> will scan with nested archives. The limit is from 2 to 100. The
supported compression formats are arj, bzip2, cab, gzip, lha,
lzh, msc, rar, tar, and zip. Bzip2 support is disabled by default.
uncompsizelimit Set the maximum uncompressed file size that can be buffered 10 (MB)
<MB_integer> to memory for virus scanning. Enter a value in megabytes
between 1 and the maximum oversize threshold. Enter “?” to
display the range for your FortiGate unit. Enter 0 for no limit
(not recommended).
Note: If the file in uncompnestlimit has more levels than the limit you set, or if the file in
uncompsizelimit is larger than the limit you set, the file will pass through without being virus scanned.
Example
This example shows how to set the maximum uncompressed file size that can be buffered to memory
for scanning at 15 MB, and how to enable antivirus scanning on ports 70, 80, and 443 for HTTP traffic.
config antivirus service http
set uncompsizelimit 15
set port 70
set port 80
set port 443
end
History
Related topics
• antivirus filepattern
• antivirus heuristic
• antivirus quarantine
• antivirus quarfilepattern
firewall
Use firewall commands to configure firewall policies and the data they use, including protection
profiles, IP addresses and virtual IP addresses, schedules, and services. You can also configure DNS
translation, IP/MAC binding, and multicast policies.
This chapter contains the following sections:
address, address6
addrgrp, addrgrp6
dnstranslation
gtp (FortiOS Carrier)
ipmacbinding setting
ipmacbinding table
ippool
ldb-monitor
multicast-policy
policy, policy6
profile
schedule onetime
schedule recurring
service custom
service group
vip
vipgrp
address, address6
Use this command to configure firewall addresses used in firewall policies. An IPv4 firewall address is
a set of one or more IP addresses, represented as a domain name, an IP address and a subnet mask,
or an IP address range. An IPv6 firewall address is an IPv6 6-to-4 address prefix.
By default, FortiGate units have the firewall address All, which represents any IP address.
Addresses, address groups, and virtual IPs must have unique names to avoid confusion in firewall
policies. If an address is selected in a policy, it cannot be deleted until it is deselected from the policy.
Syntax
config firewall address
edit <name_str>
set associated-interface <interface_str>
set end-ip <address_ipv4>
set fqdn <domainname_str>
set start-ip <address_ipv4>
set subnet <address_ipv4mask>
set type {ipmask | iprange | fqdn}
end
config firewall address6
edit <name_str>
set ip6 <address_ipv6prefix>
end
Keywords and variables Description Default
The following commands are for config firewall address.
<name_str> Enter the name of the address. No default.
associated-interface Enter the name of the associated interface. No default.
<interface_str> If not configured, the firewall address is bound to an interface
during firewall policy configuration.
end-ip <address_ipv4> If type is iprange, enter the last IP address in the range. 0.0.0.0
fqdn <domainname_str> If type is fqdn, enter the fully qualified domain name (FQDN). No default.
start-ip <address_ipv4> If type is iprange, enter the first IP address in the range. 0.0.0.0
subnet <address_ipv4mask> If type is ipmask, enter an IP address then its subnet mask, in 0.0.0.0
dotted decimal format and separated by a space, or in CIDR 0.0.0.0
format with no separation. For example, you could enter either:
• 172.168.2.5/32
• 172.168.2.5 255.255.255.255
The IP address can be for a single computer or a subnetwork.
The subnet mask corresponds to the class of the IP address
being added.
• A single computer’s subnet mask is 255.255.255.255 or
/32.
• A class A subnet mask is 255.0.0.0 or /8.
• A class B subnet mask is 255.255.0.0 or /26.
• A class C subnet mask is 255.255.255.0 or /24.
type {ipmask | iprange | Select whether this firewall address is a subnet address, an ipmask
fqdn} address range, or fully qualified domain name.
The following command is for config firewall address6.
<name_str> Enter the name of the IPv6 address prefix. No default.
ip6 <address_ipv6prefix> If the IP address is IPv6, enter an IPv6 IP address prefix. ::/0
Example
This example shows how to add one IPv4 address of each type: ipmask, iprange, and fqdn. It also
shows how to configure an IPv6 address prefix.
config firewall address
edit Example_Subnet
set type ipmask
set subnet 192.168.1.0 255.255.255.0
next
edit Example_Range
set type iprange
set start-ip 10.10.1.10
set end-ip 10.10.1.30
next
edit Example_Domain
set type fqdn
set fqdn www.example.com
end
config firewall address6
edit Example_ipv6_Prefix
set ip6 2002:CF8E:83CA::/48
end
History
FortiOS v2.80 Substantially revised. IP address range option added. Requiring that an address be added
to an interface removed.
FortiOS v3.0 Added fqdn.
FortiOS v3.0 MR4 Added option associated-interface.
Related topics
• firewall addrgrp, addrgrp6
• firewall policy, policy6
addrgrp, addrgrp6
Use this command to configure firewall address groups used in firewall policies.
You can organize related firewall addresses into firewall address groups to simplify firewall policy
configuration. For example, rather than creating three separate firewall policies for three firewall
addresses, you could create a firewall address group consisting of the three firewall addresses, then
create one firewall policy using that firewall address group.
Addresses, address groups, and virtual IPs must all have unique names to avoid confusion in firewall
policies. If an address group is selected in a policy, it cannot be deleted unless it is first deselected in
the policy.
Syntax
config firewall addrgrp, addrgrp6
edit <name_str>
set member <name_str>
end
Example
This example shows how to add two firewall addresses to a firewall address group.
config firewall addrgrp
edit Group1
set Example_Subnet Example_Range
end
History
Related topics
• firewall address, address6
• firewall policy, policy6
dnstranslation
Use this command to add, edit or delete a DNS translation entry.
If DNS translation is configured, the FortiGate unit rewrites the payload of outbound DNS query replies
from internal DNS servers, replacing the resolved names’ internal network IP addresses with external
network IP address equivalents, such as a virtual IP address on a FortiGate unit’s external network
interface. This allows external network hosts to use an internal network DNS server for domain name
resolution of hosts located on the internal network.
For example, if a virtual IP provided network address translation (NAT) between a public network, such
as the Internet, and a private network containing a web server, hosts on the public network could
access the web server by using its virtual IP address. However, if hosts attempted to access the web
server by domain name, and the DNS server performing name resolution for that domain name was
also located on the private network, the DNS query reply would contain a private network IP address,
which is not routable from the external network. To solve this, you might configure DNS translation,
and substitute the web server’s private network IP address with the virtual IP address in DNS query
replies to the public network.
DNS translation mappings between src and dst must be one-to-one; you cannot create one-to-many
or many-to-one mappings. For example, if src is a single IP address, it cannot be DNS translated into
a dst subnet; dst must be a single IP address, like src. If src is a subnet, dst must also be a
subnet.
Syntax
config firewall dnstranslation
edit <index_int>
set dst <destination_ipv4>
set netmask <address_ipv4mask>
set src <source_ipv4>
end
Example
This example shows how to translate the resolved addresses in DNS query replies, from an internal
(source) subnet to an external (destination) subnet.
config firewall dnstranslation
edit 1
set src 192.168.100.12
set dst 172.16.200.190
set netmask 255.255.255.0
end
History
FortiOS v2.80 Revised.
Related topics
• firewall vip
Syntax
config firewall gtp
edit <name_str>
config apn
edit index_int
set action {allow | deny}
set selection-mode {ms net vrf}
set value <networkid_str>
end
config ie-remove-policy
edit <index_int>
set remove-ies {apn-restriction rat-type rai uli imei}
set sgsn-addr <addr/group_str>
end
config imsi
edit <index_int>
set action {allow | deny}
set apn <networkid_str>
set mcc-mnc <mccmnc_str>
set selection-mode {ms net vrf}
end
config ip-policy
edit <index_int>
set action {allow | deny}
set dstaddr <address_str>
set srcaddr <address_str>
end
config noip-policy
edit <index_int>
set action {allow | deny}
set start <protocol_int>
set end <protocol_int>
set type {etsi | ietf}
end
config policy
edit <index_int>
set action {allow | deny}
set apn <apn_str>
set imei <imei_str>
set imsi <imsi_str>
set max-apn-restriction {all | private-1 | private-2 | public-1 |
public-2}
set messages {create-req create-res update-req update-res}
set rai <rai_str>
set rat-type {any geran utran wlan}
set uli <uli_str>
end
set addr-notify <Gi_ipv4>
set apn-filter {enable | disable}
History
FortiOS v3.00 Revised.
Related topics
• firewall vip
ipmacbinding setting
Use this command to configure IP to MAC address binding settings.
IP/MAC binding protects the FortiGate unit and/or the network from IP address spoofing attacks. IP
spoofing attacks attempt to use the IP address of a trusted computer to connect to, or through, the
FortiGate unit from a different computer. It is simple to change a computer’s IP address to mimic that of
a trusted host, but MAC addresses are often added to Ethernet cards at the factory, and are more
difficult to change. By requiring that traffic from trusted hosts reflect both the IP address and MAC
address known for that host, fraudulent connections are more difficult to construct.
To configure the table of IP addresses and the MAC addresses bound to them, see “ipmacbinding
table” on page 97. To enable or disable IP/MAC binding for an individual FortiGate unit network
interface, see ipmac in “system interface” on page 373.
Note: If IP/MAC binding is enabled, and the IP address of a host with an IP or MAC address in the IP/MAC table is
changed, or a new computer is added to the network, update the IP/MAC table. If you do not update the IP/MAC
binding list, the new or changed hosts will not have access to or through the FortiGate unit. For details on updating
the IP/MAC binding table, see “ipmacbinding table” on page 97.
Caution: If a client receives an IP address from the FortiGate unit’s DHCP server, the client’s MAC
! address is automatically registered in the IP/MAC binding table. This can simplify IP/MAC binding
configuration, but can also neutralize protection offered by IP/MAC binding if untrusted hosts are
allowed to access the DHCP server. Use caution when enabling and providing access to the DHCP
server.
Syntax
config firewall ipmacbinding setting
set bindthroughfw {enable | disable}
set bindtofw {enable | disable}
set undefinedhost {allow | block}
end
Keywords and variables Description Default
bindthroughfw Select to use IP/MAC binding to filter packets that a firewall policy disable
{enable | disable} would normally allow through the FortiGate unit.
bindtofw Select to use IP/MAC binding to filter packets that would normally disable
{enable | disable} connect to the FortiGate unit.
undefinedhost Select how IP/MAC binding handles packets with IP and MAC block
{allow | block} addresses that are not defined in the IP/MAC list for traffic going
through or to the FortiGate unit.
• allow: Allow packets with IP and MAC address pairs that are not in
the IP/MAC binding list.
• block: Block packets with IP and MAC address pairs that are not in
the IP/MAC binding list.
This option is available only when either or both bindthroughfw and
bindtofw are enable.
Example
This example shows how to enable IP/MAC binding for traffic both going to and through the FortiGate
unit, and block undefined hosts (IP/MAC address pairs).
config firewall ipmacbinding setting
set bindthroughfw enable
set bindtofw enable
set undefinedhost block
end
History
Related topics
• firewall ipmacbinding table
ipmacbinding table
Use this command to configure IP and MAC address pairs in the IP/MAC binding table. You can bind
multiple IP addresses to the same MAC address, but you cannot bind multiple MAC addresses to the
same IP address.
To configure the IP/MAC binding settings, see “ipmacbinding setting” on page 95. To enable or disable
IP/MAC binding for an individual FortiGate unit network interface, see ipmac in “system interface” on
page 373.
Note: If IP/MAC binding is enabled, and the IP address of a host with an IP or MAC address in the IP/MAC table is
changed, or a new computer is added to the network, update the IP/MAC table. If you do not update the IP/MAC
binding list, the new or changed hosts will not have access to or through the FortiGate unit.
Caution: If a client receives an IP address from the FortiGate unit’s DHCP server, the client’s MAC
! address is automatically registered in the IP/MAC binding table. This can simplify IP/MAC binding
configuration, but can also neutralize protection offered by IP/MAC binding if untrusted hosts are
allowed to access the DHCP server. Use caution when enabling and providing access to the DHCP
server.
Syntax
config firewall ipmacbinding table
edit <index_int>
set ip <address_ipv4>
set mac <address_hex>
set name <name_str>
set status {enable | disable}
end
Example
This example shows how to add and enable an IP/MAC entry to the IP/MAC binding table.
config firewall ipmacbinding table
edit 1
set ip 172.16.44.55
set mac 00:10:F3:04:7A:4C
set name RemoteAdmin
set status enable
end
History
Related topics
• firewall ipmacbinding setting
ippool
Use this command to configure IP address pools that you can use to configure NAT mode firewall
policies. An IP pool, also called a dynamic IP pool, is a range of IP addresses added to a firewall
interface. You can enable Dynamic IP Pool in a firewall policy to translate the source address to an
address randomly selected from the IP pool. To use IP pools, the IP pool interface must be the same
as the firewall policy destination interface.
Add an IP pool if in order to add NAT mode policies that translate source addresses to addresses
randomly selected from the IP pool rather than being limited to the IP address of the destination
interface. IP pools are only available in NAT/Route mode. Add multiple IP pools to any interface and
configure the firewall policy to select the IP pool to use for that firewall policy.
Syntax
config firewall ippool
edit <index_int>
set endip <address_ipv4>
set interface <name_str>
set startip <address_ipv4>
end
Example
You might use the following commands to add an IP pool to the internal network interface. The IP pool
would then be available when configuring firewall policies.
config firewall ippool
edit 1
set startip 192.168.1.100
set endip 192.168.1.200
set interface internal
end
History
FortiOS v2.80 Revised.
Related topics
• firewall policy, policy6
ldb-monitor
Use this command to configure health check settings.
Health check settings can be used by load balancing VIPs to determine if a real server is currently
responsive before forwarding traffic. One health check is sent per interval using the specified protocol,
port and HTTP-GET, where applicable to the protocol. If the server does not respond during the
timeout period, the health check fails and, if retries are configured, another health check is performed.
If all health checks fail, the server is deemed unavailable, and another real server is selected to receive
the traffic according to the selected load balancing algorithm.
Health check settings can be re-used by multiple real servers. For details on enabling health checking
and using configured health check settings, see “firewall vip” on page 155.
Syntax
config firewall ldb-monitor
edit <name_str>
set http-get <httprequest_str>
set http-match <contentmatch_str>
set interval <seconds_int>
set port <port_int>
set retry <retries_int>
set timeout <seconds_int>
set type {http | ping | tcp}
end
Example
You might configure a health check for a server using the HTTP protocol to retrieve a web page. To
ensure that a web page reply containing an error message, such as an HTTP 404 page, does not
inadvertently cause the health check to succeed, you might search the reply for text that does not
occur in any web server error page, such as unique text on a main page.
History
FortiOS v3.0 MR6 New command. Configures health check settings which can be used when enabling
health checks for load balanced real servers associated with a virtual IP. This extends and
replaces deprecated commands in config realserver for health check by ICMP
ECHO (ping).
Related topics
• firewall vip
multicast-policy
Use this command to configure a source NAT IP. This command can also be used in Transparent
mode to enable multicast forwarding by adding a multicast policy.
The matched forwarded (outgoing) IP multicast source IP address is translated to the configured IP
address.
Syntax
config firewall multicast-policy
edit <index_int>
set action {accept | deny}
set dnat <address_ipv4>
set dstaddr <address_ipv4mask>
set dstintf <name_str>
set nat <address_ipv4>
set srcaddr <address_ipv4mask>
set srcintf <name_str>
set protocol <multicastlimit_int>
set start-port <port_int>
set end-port <port_int>
end
Example
This example shows how to configure a multicast NAT policy.
config firewall multicast-policy
edit 1
set dstaddr 10.0.0.1 255.255.255.0
set dstintf dmz
set nat 10.0.1.1
set srcaddr 192.168.100.12 255.255.255.0
set srcintf internal
end
History
Related topics
• system global
policy, policy6
Use this command to add, edit, or delete firewall policies.
Firewall policies control all traffic passing through the FortiGate unit. Firewall policies are instructions
used by the FortiGate unit to decide what to do with a connection request. The policy directs the
firewall to allow the connection, deny the connection, require authentication before the connection is
allowed, or apply IPSec or SSL VPN processing.
Note: If you are creating an IPv6 policy, some of the IPv4 options, such as NAT and VPN settings, are not
applicable.
Syntax
config firewall policy, policy6
edit <index_int>
set action {accept | deny | ipsec | ssl-vpn}
set auth-cert <certificate_str>
set auth-path {enable | disable}
set auth-redirect-addr <domainname_str>
set comments <comment_str>
set custom-log-fields <fieldid_int>
set diffserv-forward {enable | disable}
set diffserv-reverse {enable | disable}
set diffservcode-forward <dscp_bin>
set diffservcode-rev <dscp_bin>
set disclaimer {enable | disable}
set dstaddr <name_str>
set dstintf <name_str>
set fixedport {enable | disable}
set forticlient-check {enable | disable}
set forticlient-ra-notinstalled {enable | disable}
set forticlient-ra-notlicensed {enable | disable}
set forticlient-ra-db-outdated {enable | disable}
set forticlient-ra-no-av {enable | disable}
set forticlient-ra-no-fw {enable | disable}
set forticlient-ra-no-wf {enable | disable}
set forticlient-redir-portal {enable | disable}
set fsae {enable | disable}
set fsae-guest-profile <profile_str>
set gbandwidth <limit_int>
set groups <name_str>
set gtp_profile <name_str> (FortiOS Carrier)
set inbound {enable | disable}
set ippool {enable | disable}
set logtraffic {enable | disable}
set maxbandwidth <limit_int>
set nat {enable | disable}
set natinbound {enable | disable}
set natip <address_ipv4mask>
set natoutbound {enable | disable}
set ntlm {enable | disable}
set outbound {enable | disable}
set poolname <name_str>
forticlient-ra- Deny access to this firewall policy if the host does not have a disable
notlicensed licensed copy of FortiClient Host Security software installed.
{enable | disable} This option is available only if forticlient-check is
enable.
forticlient-ra- Deny access to this firewall policy if the FortiClient Host disable
db-outdated Security antivirus database on the host is out of date. This
{enable | disable} option is available only if forticlient-check is enable.
forticlient-ra-no-av Deny access to this firewall policy if the FortiClient Host disable
{enable | disable} Security antivirus feature is not enabled on the host. This option
is available only if forticlient-check is enable.
forticlient-ra-no-fw Deny access to this firewall policy if the FortiClient Host disable
{enable | disable} Security firewall is not enabled on the host. This option is
available only if forticlient-check is enable.
forticlient-ra-no-wf Deny access to this firewall policy if FortiClient Host Security disable
{enable | disable} web filtering is not enabled on the host. This option is available
only if forticlient-check is enable.
forticlient-redir-portal Redirect denied users to the internal web portal. The portal disable
{enable | disable} page displays the reason the user was denied access. If a
FortiClient installation package is stored on the FortiGate unit,
the user can download FortiClient Host Security software from
the portal. You can change the TCP port for the portal using the
forticlient-portal-port keyword. For details, see
“system global” on page 350.
fsae {enable | disable} Enable or disable Active Directory authentication. disable
If you enable this option, you must also define the user groups
and the guest account protection profile. For details, see “fsae-
guest-profile <profile_str>” on page 107 and “groups
<name_str>” on page 108.
fsae-guest-profile Enter the name of the protection profile used when a guest No default.
<profile_str> account authenticates using FSAE.
gbandwidth <limit_int> Enter the amount of bandwidth guaranteed to be available for 0
traffic controlled by the policy. bandwidth_int can be 0 to
100000 Kbytes/second.
This option appears only if trafficshaping is enable.
History
Related topics
• firewall address, address6
• firewall profile
• firewall schedule onetime
• firewall schedule recurring
• firewall service custom
• firewall service group
profile
Use this command to configure protection profiles which can be applied to traffic by selecting the
protection profile in one or more firewall policies, or by associating a protection profile with a firewall
user group. The firewall policy will apply the subset of the protection profile that is relevant to the
service or service group.
Syntax
config firewall profile
edit <profile_str>
set aim {enable-inspect | } {archive-full archive-summary block-audio
block-encrypt block-file block-im block-long-chat block-photo
inspect-anyport no-content-summary}
set bittorrent {block | pass | limit}
set bittorrent-limit <limit_int>
set comment <comment_str>
set edonkey {block | pass | limit}
set edonkey-limit <limit_int>
set filepattable <index_int> (not in FortiOS Carrier)
set file-pat-table <index_int> (FortiOS Carrier)
set file-type-table <index_int> (FortiOS Carrier)
set ftgd-wf-allow {all | <category_str>}
set ftgd-wf-deny {all | <category_str>}
set ftgd-wf-enable {all | <category_str>}
set ftgd-wf-disable {all | <category_str>}
set ftgd-wf-https-options {allow-ovrd error-allow rate-server-ip
strict-blocking}
set ftgd-wf-log {all | <category_str>}
set ftgd-wf-options {allow-ovrd error-allow http-err-detail
rate-image-urls rate-server-ip redir-block strict-blocking}
set ftgd-wf-ovrd {all | <category_str>}
set ftp {archive-full archive-summary avmonitor avquery block
clientcomfort filetype no-content-summary oversize quarantine scan
scanextended splice}
set ftpcomfortamount <size_int>
set ftpcomfortinterval <seconds_int>
set ftpoversizelimit <size_int>
set gnutella {block | pass | limit}
set gnutella-limit <limit_int>
set http {activexfilter archive-full archive-summary avmonitor
avquery bannedword block chunkedbypass clientcomfort cookiefilter
exemptword filetype fortiguard-wf javafilter no-content-summary
oversize quarantine rangeblock scan scanextended strict-file
urlfilter}
set httpcomfortamount <size_int>
set httpcomfortinterval <seconds_int>
set httpoversizelimit <size_int>
set http-retry-count <retry_int>
set https {allow-ssl-unknown-sess-id block-invalid-url fortiguard-wf
no-content-summary urlfilter}
set icq {enable-inspect | } {archive-full archive-summary block-audio
block-file block-im block-photo inspect-anyport no-content-
summary}
mm1-retr-dupe {enable | Select to scan MM1 mm1-retr messages for duplicates. disable
disable} By default, mm1-retr messages are not scanned for
(FortiOS Carrier) duplicates as they may often be the same without
necessarily being bulk or spam.
This option is available only if status is enable for the
config dupe mm1 command.
mm1comfortamount Enter the number of bytes client comforting sends each 1
<size_int> interval to show a download is progressing.
(FortiOS Carrier) The interval time is set using mm1comfortinterval.
mm1comfortinterval Enter the time in seconds before client comforting starts 10
<seconds_int> after a download has begun. It is also the interval
(FortiOS Carrier) between subsequent client comforting sends.
The amount of data sent each interval is set using
mm1comfortamount.
tod-window-end Select the time of day to stop sending notifications. If you 00:00
<window_time> select a start and end time of zero (00:00), notifications
(FortiOS Carrier) are not limited by time of day.
vas-id <vas_str> Enter the value added service (VAS) ID to be used when No default.
(FortiOS Carrier) sending a notification message.
vasp-id <vasp_str> Enter the value added service provider (VASP) ID to be No default.
(FortiOS Carrier) used when sending a notification message.
virus-int <interval_int> Enter the amount of time between notifications for 24
(FortiOS Carrier) antivirus events. Also set virus-status to enable and
select the time unit in virus-int-mode.
virus-int-mode Select the unit of time in minutes or hours for virus- hours
{hours | minutes} int.
(FortiOS Carrier)
virus-status Select to send notices for antivirus events. disable
{enable | disable}
(FortiOS Carrier)
sccp
The following commands are the options for config sccp.
status Select to inspect SCCP traffic. Other SCCP inspection disable
{enable | disable} options become available if this option is set to enable.
archive-summary Select to content archive call metadata. disable
{enable | disable} This option appears only if status is enable.
block-mcast Select to block multicast RTP connections. disable
{enable | disable} This option appears only if status is enable.
max-calls <limit_int> Enter the maximum calls per minute per SCCP client 0
(max 65535).
This option appears only if status is enable.
no-content-summary Select to omit monitoring of content information from disable
{enable | disable} dashboard.
This option appears only if status is enable.
verify-header Select to verify SCCP header content. disable
{enable | disable} This option appears only if status is enable.
simple
The following commands are the options for config simple.
Example
This example shows how to:
• create a profile called spammail
• enable filtering of email according to the email banned word list, the MIME header list, and the
return DNS check, enable spam to be logged and tagged with the tag “Spam” in the subject for
POP3 traffic
• enable filtering of email based on the DNSBL server, and discard messages identified as spam for
SMTP traffic
config firewall profile
edit spammail
set pop3 spamemailbwl spamhdrcheck spamraddrdns
set pop3-spamaction log tag
set pop3-spamtagmsg Spam
set pop3-spamtagtype subject
set smtp spamrbl
set smtp-spamaction discard
end
This example shows how to:
• add HTTP category blocking to the spammail profile created above
• configure category blocking to deny access to web pages categorized as Games (20),
Personals and Dating (37), Shopping and Auction (42) and the category group Objectionable or
Controversial (g02)
• configure category monitoring to log access to web pages categorized as Computer Security
(50) and the category group Potentially Bandwidth Consuming (g04)
config firewall profile
edit spammail
set ftgd-wf-deny 20 37 42 g02
set ftgd-wf-log 50 g04
end
History
FortiOS v3.0 MR4 Added no-content-summary to AIM, ICQ, MSN, and Yahoo options. Removed
transfer-log, from the same commands as it is not a feature.
FortiOS v3.0 MR4 Added VoIP config commands for SCCP, Simple, and SIP protocols.
Added associated-interface, nntpoversizelimit, imoversizechat,
log-voip, log-voip-violations, and HTTPS commands.
Removed the following options and commands: nntp-spamaction,
nntp-spamtagtype, nntp-spamtagmsg.
Added set smtp-spam-localoverride command.
FortiOS v3.0 MR6 New option redir-block for variable ftgd-wf-options. Blocks HTTP redirects.
FortiOS v3.0 MR6 Removed variables ips-signature and ips-anomaly. IPS sensors, formerly
signatures, are now configured by selecting a sensor name. Denial of service (DoS)
sensors, formerly anomalies, are no longer configured in protection profiles.
FortiOS v3.0 MR6 New variables ips-sensor-status and ips-sensor. Enables IPS sensors, and
selects the IPS sensor name.
FortiOS v3.0 MR6 Renamed variable ips-log to log-ips.
FortiOS v3.0 MR6 New option block-long-chat for variable aim. Blocks oversize chat messages.
FortiOS v3.0 MR6 Renamed options content-full and content-meta to archive-full and
archive-summary, respectively, for the msn, icq, and yahoo variables.
FortiOS v3.0 MR6 Removed variable ftgd-wf-ovrd-group.
FortiOS v3.0 MR6 New option scanextended for the ftp and http variables. Scans for viruses and
worms using the extended database of virus definitions.
FortiOS Carrier v3.0 MR3 New variable imoversizechat. Limits the size of individual chat messages.
FortiOS Carrier v3.0 MR3 New command config dupe. Configures detection of excessive MMS message
duplicates.
FortiOS Carrier v3.0 MR3 New command config flood. Configures detection of excessive MMS message
activity.
FortiOS Carrier v3.0 MR3 New variables msisdn-prefix, msisdn-string, msisdn-prefix-range-min
and msisdn-prefix-range-max. Configures MSISDN prefixes.
FortiOS Carrier v3.0 MR3 New variable mm1-retr-dupe. Scans mm1-retr MMS messages for duplicates.
By default, mm1-retr messages are not scanned for duplicates as they may often
be the same without necessarily being bulk or spam.
FortiOS Carrier v3.0 MR3 New variables mm1-addr-hdr, mm1-addr-source, mm1-convert-hex, mm7-
addr-hdr, mm7-addr-source, mm7-convert-hex. Configures MSISDN
extraction and conversion to hexadecimal for MM1 and MM7 MMS messages.
FortiOS Carrier v3.0 MR3 New variables msisdn-bwl-int, msisdn-bwl-int-mode, msisdn-bwl-
status in the config notification subcommand. Configures MMS notification
intervals when MSISDN black/white list events occur.
FortiOS Carrier v3.0 MR3 New variables dupe-int, dupe-int-mode, dupe-status in the config
notification subcommand. Configures MMS notification intervals when
excessive MMS message duplicates are detected.
FortiOS Carrier v3.0 MR3 New variables flood-int, flood-int-mode, flood-status in the config
notification subcommand. Configures MMS notification intervals when
excessive MMS message activity is detected.
FortiOS Carrier v3.0 MR3 New variable rate-limit in the config notification subcommand. Limits the
rate at which MMS notices are sent.
FortiOS Carrier v3.0 MR3 New variables tod-window-start and tod-window-end in the config
notification subcommand. Configures the window of time during which MMS
notices are sent.
FortiOS Carrier v3.0 MR3 New variable no-sdp-fixup in the config sip subcommand. Preserves the
original SDP packet.
FortiOS Carrier v3.0 MR3 New variables notify-rate, options-rate, prack-rate, preserve-
override, refer-rate, subscribe-rate, and update-rate in the config
sip subcommand. Limits the rate at which certain types of SIP traffic are forwarded.
FortiOS Carrier v3.0 MR3 New variable preserve-override in the config sip subcommand. Omits the
original IP address from SDP i line.
FortiOS Carrier v3.0 MR3 New variable primary-secondary in the config sip subcommand. Monitors
primary/secondary outbound proxy redundancy.
FortiOS Carrier v3.0 MR3 New variable timeout-buffer in the config sip subcommand. Configures the
maximum number of timed out calls to buffer.
Related topics
• firewall policy, policy6
• alertemail
• antivirus
• ips
• webfilter
schedule onetime
Use this command to add, edit, or delete one-time schedules.
Use scheduling to control when policies are active or inactive. Use one-time schedules for policies that
are effective once for the period of time specified in the schedule.
Note: To edit a schedule, define the entire schedule, including the changes. This means entering all of the
schedule parameters, both those that are changing and those that are not.
Syntax
config firewall schedule onetime
edit <name_str>
set end <hh:mm> <yyyy/mm/dd>
set start <hh:mm> <yyyy/mm/dd>
end
Keywords and variables Description Default
<name_str> Enter the name of this schedule. No default.
end <hh:mm> <yyyy/mm/dd> Enter the ending day and time of the schedule. 00:00
• hh - 00 to 23 2001/01/01
• mm - 00, 15, 30, or 45
• yyyy - 1992 to infinity
• mm - 01 to 12
• dd - 01 to 31
start <hh:mm> Enter the starting day and time of the schedule. 00:00
<yyyy/mm/dd> • hh - 00 to 23 2001/01/01
• mm - 00, 15, 30, or 45
• yyyy - 1992 to infinity
• mm - 01 to 12
• dd - 01 to 31
Example
Use the following example to add a one-time schedule named Holiday that is valid from 5:00 pm on
3 September 2004 until 8:45 am on 7 September 2004.
config firewall schedule onetime
edit Holiday
set start 17:00 2004/09/03
set end 08:45 2004/09/07
end
History
Related topics
• firewall policy, policy6
• firewall schedule recurring
schedule recurring
Use this command to add, edit, and delete recurring schedules used in firewall policies.
Use scheduling to control when policies are active or inactive. Use recurring schedules to create
policies that repeat weekly. Use recurring schedules to create policies that are effective only at
specified times of the day or on specified days of the week.
Note: If a recurring schedule is created with a stop time that occurs before the start time, the schedule starts at the
start time and finishes at the stop time on the next day. You can use this technique to create recurring schedules
that run from one day to the next. To create a recurring schedule that runs for 24 hours, set the start and stop
times to the same time.
Syntax
config firewall schedule recurring
edit <name_str>
set day <name_str>
set end <hh:mm>
set start <hh:mm>
end
Example
This example shows how to add a recurring schedule named access so that it is valid Monday to
Friday from 7:45 am to 5:30 pm.
config firewall schedule recurring
edit access
set day monday tuesday wednesday thursday friday
set start 07:45
set end 17:30
end
Edit the recurring schedule named access so that it is no longer valid on Fridays.
config firewall schedule recurring
edit access
set day monday tuesday wednesday thursday
set start 07:45
set end 17:30
end
History
Related topics
• firewall policy, policy6
• firewall schedule onetime
service custom
Use this command to configure a firewall service that is not in the predefined service list.
Note: To display a list of all predefined service names, enter the command get firewall service
predefined ?. To display a predefined service’s details, enter the command get firewall
service predefined <service_str>. For details, see “get firewall service predefined” on
page 635.
Syntax
config firewall service custom
edit <name_str>
set icmpcode <code_int>
set icmptype <type_int>
set protocol {ICMP | IP | TCP/UDP}
set protocol-number <protocol_int>
set tcp-portrange <dstportlow_int>[-<dstporthigh_int>:
<srcportlow_int>-<srcporthigh_int>]
set udp-portrange <dstportlow_int>[-<dstporthigh_int>:
<srcportlow_int>-<srcporthigh_int>]
end
Keywords and variables Description Default
<name_str> Enter the name of this custom service. No default
icmpcode <code_int> Enter the ICMP code number. Find ICMP type and code No default.
numbers at www.iana.org.
icmptype <type_int> Enter the ICMP type number. The range for type_int is from 0
0-255. Find ICMP type and code numbers at www.iana.org.
protocol Enter the protocol used by the service. IP
{ICMP | IP | TCP/UDP}
protocol-number For an IP service, enter the IP protocol number. For information 0
<protocol_int> on protocol numbers, see http://www.iana.org.
tcp-portrange For TCP services, enter the destination and source port ranges. No default.
<dstportlow_int>[- If the destination port range can be any port, enter 1-65535. If
<dstporthigh_int>: the destination is only a single port, simply enter a single port
<srcportlow_int>- number for dstportlow_int and no value for
dstporthigh_int.
<srcporthigh_int>]
If source port can be any port, no source port need be added. If
the source port is only a single port, simply enter a single port
number for srcportlow_int and no value for
srcporthigh_int.
udp-portrange For UDP services, enter the destination and source port No default.
<dstportlow_int>[- ranges.
<dstporthigh_int>: If the destination port range can be any port, enter 1-65535. If
<srcportlow_int>- the destination is only a single port, simply enter a single port
number for dstportlow_int and no value for
<srcporthigh_int>] dstporthigh_int.
If source port can be any port, no source port need be added. If
the source port is only a single port, simply enter a single port
number for srcportlow_int and no value for
srcporthigh_int.
Example
This example shows how to add a custom service called Custom_1. The service destination port
range is TCP 4501 to 4503. The service can use any source port.
config firewall service custom
edit Custom_1
set protocol TCP/UDP
set tcp-portrange 4501-4503
end
A second example shows how to add a custom service called Custom_2. The service destination port
range is TCP 4545 to 4550. The service uses source port 9620.
config firewall service custom
edit Custom_1
set protocol TCP/UDP
set tcp-portrange 4545-4550:9620
end
History
Related topics
• firewall policy, policy6
service group
Use this command to configure firewall service groups.
To simplify policy creation, you can create groups of services and then add one policy to provide or
block access for all the services in the group. A service group can contain predefined services and
custom services in any combination. A service group cannot contain another service group.
Note: To edit a service group, enter all of the members of the service group, both those changing and those
staying the same.
Syntax
config firewall service group
edit <name_str>
set member <name_str>
end
Example
This example shows how to add a service group called web_Services that includes the FTP, HTTP,
HTTPS, and Real Audio services.
config firewall service group
edit web_Services
set member FTP HTTP HTTPS RAUDIO
end
This example shows how to add the TELNET service to the web_Services service group.
config firewall service group
edit web_Services
set member FTP HTTP HTTPS RAUDIO TELNET
end
History
Related topics
• firewall policy, policy6
vip
Use this command to configure virtual IPs and their associated address and port mappings (NAT).
Virtual IPs can be used to allow connections through a FortiGate unit using network address
translation (NAT) firewall policies. Virtual IPs use Proxy ARP so that the FortiGate unit can respond to
ARP requests on a network for a server that is actually installed on another network. Proxy ARP is
defined in RFC 1027.
For example, you can add a virtual IP to an external FortiGate unit interface so that the external
interface can respond to connection requests for users who are actually connecting to a server on the
DMZ or internal network.
Depending on your configuration of the virtual IP, its mapping may involve port address translation
(PAT), also known as port forwarding or network address port translation (NAPT), and/or network
address translation (NAT) of IP addresses.
If you configure NAT in the virtual IP and firewall policy, the NAT behavior varies by your selection of:
• static vs. dynamic NAT mapping
• the dynamic NAT’s load balancing style, if using dynamic NAT mapping
• full NAT vs. destination NAT (DNAT)
The following table describes combinations of PAT and/or NAT that are possible when configuring a
firewall policy with a virtual IP.
Static NAT Static, one-to-one NAT mapping: an external IP address is always translated to the same
mapped IP address.
If using IP address ranges, the external IP address range corresponds to a mapped IP
address range containing an equal number of IP addresses, and each IP address in the
external range is always translated to the same IP address in the mapped range.
Static NAT with Port Static, one-to-one NAT mapping with port forwarding: an external IP address is always
Forwarding translated to the same mapped IP address, and an external port number is always
translated to the same mapped port number.
If using IP address ranges, the external IP address range corresponds to a mapped IP
address range containing an equal number of IP addresses, and each IP address in the
external range is always translated to the same IP address in the mapped range. If using
port number ranges, the external port number range corresponds to a mapped port
number range containing an equal number of port numbers, and each port number in the
external range is always translated to the same port number in the mapped range.
Load Balancing Dynamic, one-to-many NAT mapping: an external IP address is translated to one of the
mapped IP addresses. For each session, a load balancing algorithm dynamically selects
an IP address from the mapped IP address range to provide more even traffic distribution.
The external IP address is not always translated to the same mapped IP address.
Load Balancing Dynamic, one-to-many NAT mapping with port forwarding: an external IP address is
with Port translated to one of the mapped IP addresses. For each session, a load balancing
Forwarding algorithm dynamically selects an IP address from the mapped IP address range to provide
more even traffic distribution. The external IP address is not always translated to the same
mapped IP address.
Dynamic Virtual IPs Dynamic, many-to-few or many-to-one NAT mapping: if you set the external IP address of
a virtual IP to 0.0.0.0, the interface maps traffic destined for any IP address, and is
dynamically translated to a mapped IP address or address range.
Server Load Dynamic, one-to-many NAT mapping: an external IP address is translated to one of the
Balancing mapped IP addresses, as determined by the selected load balancing algorithm for more
even traffic distribution. The external IP address is not always translated to the same
mapped IP address.
Server load balancing requires that you configure at least one “real” server, but can use up
to eight. Real servers can be configured with health check monitors. Health check monitors
can be used to gauge server responsiveness before forwarding packets.
Server Load Dynamic, one-to-many NAT mapping with port forwarding: an external IP address is
Balancing with Port translated to one of the mapped IP addresses, as determined by the selected load
Forwarding balancing algorithm for more even traffic distribution.The external IP address is not always
translated to the same mapped IP address.
Server load balancing requires that you configure at least one “real” server, but can use up
to eight. Real servers can be configured with health check monitors. Health check monitors
can be used to gauge server responsiveness before forwarding packets.
Note: If the NAT check box is not selected when building the firewall policy, the resulting policy does not
perform full (source and destination) NAT; instead, it performs destination network address translation
(DNAT).
For inbound traffic, DNAT translates packets’ destination address to the mapped private IP address, but
does not translate the source address. The private network is aware of the source’s public IP address.
For reply traffic, the FortiGate unit translates packets’ private network source IP address to match the
destination address of the originating packets, which is maintained in the session table.
Syntax
config firewall vip
edit <name_str>
config realservers
edit <table_int>
set dead-interval <seconds_int>
set healthcheck {enable | disable}
set ip <server_ip>
set healthcheck {enable | disable}
set ping-detect {enable | disable}
set port <port_ip>
set wake-interval <seconds_int>
set weight <loadbalanceweight_int>
end
set arp-reply {enable | disable}
set extintf <name_str>
set extip <address_ipv4>
set extport <port_int>
set http {enable | disable}
set http-ip-header {enable | disable}
set ldb-method {round-robin | static | weighted}
Example
This example shows how to add a static NAT virtual IP named Web_Server that allows users on the
Internet to connect to a web server on the internal network. The internet address of the web server is
64.32.21.34 and the real IP address of the web server on the internal network is 192.168.1.44.
config firewall vip
edit Web_Server
set extintf external
set extip 64.32.21.34
set mappedip 192.168.1.44
end
This example shows how to edit the static NAT virtual IP named Web_Server to change the real IP
address of the web server on the internal network to 192.168.110.23.
config firewall vip
edit web_Server
set mappedip 192.168.110.23
end
This example shows how to add a static NAT port forwarding virtual IP that uses port address
translation to allow external access to a web server on the internal network if there is no separate
external IP address for the web server. In this example, the IP address of the external interface is
192.168.100.99 and the real IP address of the web server on the internal network is 192.168.1.93.
config firewall vip
edit web_Server
set portforward enable
set extintf external
set extip 192.168.100.99
set extport 80
set mappedip 192.168.1.93
set mappedport 80
end
This example shows how to enter a static NAT virtual IP named Server_Range that allows Internet
users to connect to a range of 10 virtual IP addresses on the Internet and have the IP addresses in this
range mapped to a range of IP addresses on the DMZ network. The DMZ network contains 10 servers
with IP addresses from 10.10.10.20 to 10.10.10.29. The Internet IP addresses for these servers are in
the range 219.34.56.10 to 219.34.56.19. In this example you do not have to enter the external IP
address range. Instead you enter the first IP address in the external IP address range and the
FortiGate unit calculates the end of the IP address range based on the number of IP addresses
defined by the mapped IP address range. Also in the example, port2 is connected to the Internet.
config firewall vip
edit Server_Range
set extintf port2
set extip 219.34.56.10
set mappedip 10.10.10.20 10.10.10.19
end
This example shows how to enter a load balancing virtual IP named Ext_Load_Balance that allows
Internet users to connect to a single virtual IP address on the Internet and have that IP address
mapped to a range of IP addresses on the network connected to port5. You might use a configuration
such as this to load balance connections from the internet to an internal server farm. In the example
the Internet is connected to port2 and the virtual IP address is 67.34.56.90 and the IP address range
on the network connected to port5 is 172.20.120.10 to 172.20.120.30.
config firewall vip
edit Server_Range
set type load-balance
set extintf port2
set extip 67.34.56.90
set mappedip 172.20.120.10-172.20.120.30
end
History
FortiOS v3.0 MR6 New variables monitor and healthcheck. Enables health checking for real
servers and specifies which of the health check settings to use.
FortiOS v3.0 MR6 New variables:
• ssl, ssl-certificate
• ssl-client-session-state-max
• ssl-client-session-state-timeout
• ssl-client-session-state-type
• ssl-dh-bits
• ssl-http-location-conversion
• ssl-http-match-host
• ssl-max-version
• ssl-min-version
• ssl-send-empty-frags
• ssl-server-session-state-max
• ssl-server-session-state-timeout
• ssl-server-session-state-type
Enables SSL acceleration by offloading SSL operations from the destination to the
FortiGate unit, and configures various aspects of the offloading, including to which
segment(s) of the connection the FortiGate unit will apply SSL, and what encryption
strength and other options to use.
FortiOS v3.0 MR6 New variable max-embryonic-connections. Specifies the maximum number of
partially established SSL or HTTP connections when the virtual IP is performing
HTTP multiplexing or SSL offloading.
FortiOS v3.0 MR6 New variable http. Enables multiplexing of port forwarded HTTP connections into a
few connections to the destination.
FortiOS v3.0 MR6 New variable http-ip-header. Preserves the original client’s IP address in the X-
Forwarded-For HTTP header line when using HTTP multiplexing.
Related topics
• firewall policy, policy6
• firewall ldb-monitor
• vipgrp
vipgrp
You can create virtual IP groups to facilitate firewall policy traffic control. For example, on the DMZ
interface, if you have two email servers that use Virtual IP mapping, you can put these two VIPs into
one VIP group and create one external-to-DMZ policy, instead of two policies, to control the traffic.
Firewall policies using VIP Groups are matched by comparing both the member VIP IP address(es)
and port number(s).
Syntax
config firewall vipgrp
edit <name_str>
set interface <name_str>
set member <virtualip_str>
end
Keywords and variables Description Default
<name_str> Enter the name of the virtual IP group. No default.
interface Enter the name of the interface to which the virtual IP group will No default.
<name_str> be bound.
member Enter one or more virtual IPs that will comprise the virtual IP No default.
<virtualip_str> group.
Example
config firewall vipgrp
edit group_one
set interface internal
set member vipone viptwo vipthree
end
History
Related topics
• firewall policy, policy6
• vip
gui
This chapter covers the commands to restore web-based manager CLI console and topology viewer.
This chapter contains the following sections:
console
topology
console
Use this command to configure the web-based manager CLI console.
Syntax
config gui console
set preferences <filedata>
end
To obtain base-64 encoded data from a configured CLI console, use:
show gui console
Example
This example shows how to upload the data file (topguifile) containing commands to set up the
topology GUI on the FortiGate unit and the background image (backgroundfile).
config gui console
set preferences pref-file
end
History
topology
Use this command to configure the web-based manager topology viewer.
Syntax
config gui topology
set background-image <filedatabackground>
set database <filedatabase>
set preferences <filedatapref>
end
To obtain base-64 encoded data from a configured topology viewer, use:
show gui topology
Example
This example shows how to upload the data file (topguifile) containing commands to set up the
topology GUI on the FortiGate unit and the background image (backgroundfile).
config gui topology
set preferences topguifile
set background-image backgroundfile
end
History
imp2p
Use imp2p commands to configure user access to Instant Messaging and Person-to-Person
applications, and to configure a global policy for unknown users who might use these applications.
This chapter contains the following sections:
aim-user
icq-user
msn-user
old-version
policy
yahoo-user
aim-user
Use this command to permit or deny a specific user the use of AOL Instant Messenger.
Syntax
config imp2p aim-user
edit <name_str>
set action {permit | deny}
end
Example
This example shows how to add user_1 and permit the user to use the AIM protocol if the policy is set
to allow AOL Instant Messenger.
config imp2p aim-user
edit user_1
set action permit
end
History
Related topics
• imp2p icq-user
• imp2p msn-user
• imp2p old-version
• imp2p policy
• imp2p yahoo-user
icq-user
Use this command to permit or deny a specific user the use of ICQ Instant Messenger.
Syntax
config imp2p icq-user
edit <name_str>
set action {permit | deny}
end
Example
This example shows how to add user_1 and permit the user to use the ICQ protocol if the policy is set
to allow ICQ Instant Messenger.
config imp2p icq-user
edit user_1
set action permit
end
History
Related topics
• imp2p aim-user
• imp2p msn-user
• imp2p old-version
• imp2p policy
• imp2p yahoo-user
msn-user
Use this command to permit or deny a specific user the use of MSN Messenger.
Syntax
config imp2p msn-user
edit <name_str>
set action {permit | deny}
end
Example
This example shows how to add user_1 and permit the user to use the MSN protocol if the policy is set
to allow MSN Messenger.
config imp2p msn-user
edit user_1
set action permit
end
History
Related topics
• imp2p aim-user
• imp2p icq-user
• imp2p old-version
• imp2p policy
• imp2p yahoo-user
old-version
Some older versions of IM protocols are able to bypass file blocking because the message types are
not recognized. The following command provides the option to disable these older IM protocol
versions. Supported IM protocols include:
• MSN 6.0 and above
• ICQ 4.0 and above
• AIM 5.0 and above
• Yahoo 6.0 and above
Syntax
config imp2p old-version
set aim {block | best-effort}
set icq {block | best-effort}
set msn {block | best-effort}
set yahoo {block | best-effort}
end
Keywords and variables Description Default
aim {block | best-effort} Enter block to block the session if the version is too old. block
Enter best-effort to inspect the session based on the
policy.
icq {block | best-effort} Enter block to block the session if the version is too old. block
Enter best-effort to inspect the session based on the
policy.
msn {block | best-effort} Enter block to block the session if the version is too old. block
Enter best-effort to inspect the session based on the
policy.
yahoo Enter block to block the session if the version is too old. block
{block | best-effort} Enter best-effort to inspect the session based on the
policy.
Example
This example shows how to block older versions of MSN Messenger and inspect older versions of
Yahoo Messenger.
config imp2p old-version
set msn block
set yahoo best-effort
end
History
Related topics
• imp2p aim-user
• imp2p icq-user
• imp2p msn-user
• imp2p policy
• imp2p yahoo-user
policy
Use this command to create a global policy for instant messenger applications. If an unknown user
attempts to use one of the applications, the user can either be permitted use and added to a white list,
or be denied use and added to a black list.
Syntax
config imp2p policy
set aim {allow | deny}
set icq {allow | deny}
set msn {allow | deny}
set yahoo {allow | deny}
end
Keywords and variables Description Default
aim {allow | deny} Allow an unknown user and add the user to the white list. deny
Deny an unknown user and add the user to the black list.
icq {allow | deny} Allow an unknown user and add the user to the white list. deny
Deny an unknown user and add the user to the black list.
msn {allow | deny} Allow an unknown user and add the user to the white list. deny
Deny an unknown user and add the user to the black list.
yahoo {allow | deny} Allow an unknown user and add the user to the white list. deny
Deny an unknown user and add the user to the black list.
Example
This example shows how to configure the IM/P2P policy to allow AOL Instant Messenger, MSN
Messenger, and Yahoo Messenger but deny ICQ Instant Messenger.
config imp2p policy
set aim allow
set msn allow
set icq deny
set yahoo allow
end
History
Related topics
• imp2p aim-user
• imp2p icq-user
• imp2p msn-user
• imp2p old-version
• imp2p yahoo-user
yahoo-user
Use this command to permit or deny a specific user the use of Yahoo Messenger.
Syntax
config imp2p yahoo-user
edit <name_str>
set action {permit | deny}
end
Example
This example shows how to add user_1 and permit the user to use the Yahoo protocol if the policy is
set to allow Yahoo Messenger.
config imp2p yahoo-user
edit user_1
set action permit
end
History
Related topics
• imp2p aim-user
• imp2p icq-user
• imp2p msn-user
• imp2p old-version
• imp2p policy
ips
Use ips commands to configure IPS sensors to define which signatures are used to examine traffic and
what actions are taken when matches are discovered. DoS sensors can also be defined to examine
traffic for anomalies
This chapter contains the following sections:
DoS
custom
decoder
global
rule
sensor
Note: If the IPS test can’t find the destination MAC address, the peer interface will be used. To ensure
packets get IPS inspection, there must be a Peer Interface. Both interfaces must be in the same VDOM,
and one interface cannot be both the peer and original interface. For information on how to set the Peer
Interface see “interface” on page 373.
DoS
FortiGate Intrusion Protection uses Denial of Service (DoS) sensors to identify network traffic
anomalies that do not fit known or preset traffic patterns. Four statistical anomaly types for the TCP,
UDP, and ICMP protocols can be identified.
Flooding If the number of sessions targeting a single destination in one second is over a threshold, the
destination is experiencing flooding.
Scan If the number of sessions from a single source in one second is over a threshold, the source is
scanning.
Source session If the number of concurrent sessions from a single source is over a threshold, the source
limit session limit is reached.
Destination If the number of concurrent sessions to a single destination is over a threshold, the destination
session limit session limit is reached.
Enable or disable logging for each anomaly, and select the action taken in response to detecting an
anomaly. Configure the anomaly thresholds to detect traffic patterns that could represent an attack.
Note: It is important to estimate the normal and expected traffic on the network before changing the default
anomaly thresholds. Setting the thresholds too low could cause false positives, and setting the thresholds too high
could allow some attacks.
The list of anomalies can be updated only when the FortiGate firmware image is upgraded.
config limit
Access the config limit subcommand using the config ips anomaly <name_str>
command. Use this command for session control based on source and destination network address.
This command is available for tcp_src_session, tcp_dst_session, icmp_src_session,
icmp_dst_session, udp_src_session, udp_dst_session.
The default entry cannot be edited. Addresses are matched from more specific to more general. For
example, if thresholds are defined for 192.168.100.0/24 and 192.168.0.0/16, the address with the 24
bit netmask is matched before the entry with the 16 bit netmask.
Syntax
config ips DoS
edit <sensor_int>
config address
edit <address_int>
set dst-ip <dst_ipv4mask>
set dst-port <dstport_int>
set src-ip <src_ipv4mask>
end
config anomaly
edit <anomaly_str>
set status {enable | disable}
set log {enable | disable}
set action {block | pass}
set threshold <threshold_int>
end
set comment <comment_str>
set name <name_str>
set status {disable | enable}
end
Example
This example shows how to create a DoS sensor, name it, and enable blocking of the udp_flood
anomaly with the default threshold.
config ips DoS
edit 12
set name test
set comment "This is for test"
config anomaly
edit udp_flood
set action block
set status enable
end
end
History
Related topics
• ips custom
• ips global
• ips fail-open {enable | disable}
custom
Create custom IPS signatures and add them to IPS sensors.
Custom signatures provide the power and flexibility to customize FortiGate Intrusion Protection for
diverse network environments. The FortiGate predefined signatures cover common attacks. If an
unusual or specialized application or an uncommon platform is being used, add custom signatures
based on the security alerts released by the application and platform vendors.
Use custom signatures to block or allow specific traffic.
The custom signature settings are configured when it is defined as a signature override in an IPS
sensor. This way, a single custom signature can be used in multiple sensors with different settings in
each. See “ips sensor” on page 186 for details.
For more information on custom signature syntax see the FortiGate IPS Custom Signatures Technical
Bulletin.
Note: Custom signatures are an advanced feature. This document assumes the user has previous experience
writing intrusion detection signatures.
Syntax
config ips custom
edit <sig_str>
set signature <signature_str>
end
Keywords and variables Description Default
sig_str The name of the custom signature.
signature <signature_str> Enter the custom signature. The signature must be enclosed in No default.
single quotes.
Example
This example shows how to add a custom signature.
config ips custom
edit bad_things
set signature 'F-SBID (--protocol tcp; --flow bi_direction;
--pattern "nude cheerleader"; --no_case)'
end
History
Related topics
• ips global
• execute backup
• execute restore
• ips fail-open {enable | disable}
decoder
The Intrusion Protection system looks for certain types of traffic on specific ports. Using the decoders
command, you can change ports if your configuration uses non-standard ports.
Syntax
config ips decoder
edit <decoder_str>
set port_list <port_int>
end
Keywords and variables Description Default
decoder_str Enter the name of the decoder. Enter ‘?’ for a list.
port_list <port_int> Enter the ports which the decoder will examine. Multiple ports varies by
can be specified by separating them with commas and decoder
enclosing the list in quotes.
Example
This example shows how to modify the dns_decoder to examine ports 1, 2, and 3 instead of the default
53.
config ips decoder dns_decoder
set port_list "1,2,3"
end
global
Use this command to ignore sessions after a set amount of traffic has passed.
Syntax
config ips global
set anomaly-mode {continuous | periodical}
set engine-count <integer>
set fail-open {enable | disable}
set ignore-session-bytes <byte_integer>
set session-limit-mode {accurate | heuristic}
set socket-size <ips_buffer_size>
set traffic-submit {enable | disable}
end
Keywords and variables Description Default
anomaly-mode {continuous Enter continuous to start blocking packets once attack starts. continuous
| periodical} Enter periodical to allow configured number of packets per
second.
engine-count <integer> Enter the number of intrusion protection engines to run. Multi- 0
processor FortiGate units can more efficiently process traffic
with multiple engines running. When set to the default value of
0, the FortiGate unit determines the optimal number of intrusion
protection engines to run.
fail-open If for any reason the IPS should cease to function, it will fail enable
{enable | disable} open by default. This means that crucial network traffic will not
be blocked and the Firewall will continue to operate while the
problem is resolved.
ignore-session-bytes Set the number of bytes after which the session is ignored. 204800
<byte_integer>
session-limit-mode Enter accurate to accurately count the concurrent sessions. heuristic
{accurate | heuristic} This option demands more resource. Enter heuristic to
heuristically count the concurrent sessions.
socket-size Set intrusion protection buffer size. The default value is correct model-
<ips_buffer_size> in most cases. dependent
traffic-submit Submit attack characteristics to FortiGuard Service disable
{enable | disable}
Example
This example shows how to set intrusion protection to ignore sessions after 204800 bytes.
config ips global
set ignore-session-bytes 204800
end
This example shows how to see the current configuration of ips global.
# get ips global
anomaly-mode : continuous
engine-count : 0
fail-open : enable
ignore-session-bytes: 204800
session-limit-mode : heuristic
socket-size : 8 (MB)
traffic-submit : disable
History
Related topics
• execute backup
• execute restore
• ips fail-open {enable | disable}
rule
The IPS sensors use signatures to detect attacks. These signatures can be listed with the rules
command. Details about the default settings of each signature can also be displayed.
Syntax
config ips rule <rule_str>
get
Keywords and variables Description Default
rule_str Enter the name of a signature. For a complete list of the
predefined signatures, enter ‘?’ instead of a signature name.
Example
This example shows how to display the current configuration of the Apache.Long.Header.DoS
signature.
# config ips rule Apache.Long.Header.DoS
(Apache.Long.He~d) # get
name : Apache.Long.Header.DoS
status : enable
log : enable
log-packet : disable
action : pass
group : web_server
severity : medium
location : server
os : Windows, Linux, BSD, Solaris
application : Apache
service : TCP, HTTP
rule-id : 11206
rev : 2.450
end
sensor
The IPS sensors use signatures to detect attacks. IPS sensors are made up of filters and override
rules. Each filter specifies a number of signature attributes and all signatures matching all the specified
attributes are included in the filter. Override rules allow you to override the settings of individual
signatures.
Syntax
config ips sensor
edit <sensor_str>
config filter
edit <filter_str>
set location {all | client | server}
set severity {all | info low medium high critical}
set protocol <protocol_str>
set os {all | other windows linux bsd solaris macos}
set application <app_str>
set status {default | enable | disable}
set log {default | enable | disable}
set action {block | default | pass | reject}
end
config override
edit <override_int>
config exempt-ip
edit <exempt_int>
set dst-ip <dest_ipv4mask>
set src-ip <source_ipv4mask>
end
set action {block | pass | reset}
set log {disable | enable}
set log-packet {disable | enable}
set status {disable | enable}
end
set comment <comment_str>
end
Keywords and variables Description Default
sensor_str Enter the name of an IPS sensor. For a list of the IPS sensors,
enter ‘?’ instead of an IPS sensor name. Enter a new name to
create a sensor.
filter_str Enter the name of a filter. For a list of the filters in the IPS
sensor, enter ‘?’ instead of a filter name. Enter a new name to
create a filter.
location {all | client | Specify the type of system to be protected. all
server} • client selects signatures for attacks against client
computers.
• server selects signatures for attacks against servers.
• all selects both client and server signatures.
severity {all | info low Specify the severity level or levels. all
medium high critical} Specify all to include all severity levels.
protocol <protocol_str> Specify the protocols to be examined. Enter ‘?’ to display a list all
of the available protocols. All will include all protocols. Other
will include all unlisted protocols.
Example
This example shows how to create an IPS sensor containing a filter that includes all signatures to
protect against Windows server attacks.
config ips sensor
edit dept_srv
set comment "Department file servers"
config filter
edit win_srv
set location server
set os windows
set action block
end
end
History
log
Use the config log commands to set the logging type, the logging severity level, and the logging
location for the FortiGate unit.
Note: In Transparent mode, certain log settings and options may not be available because certain
features do not support logging or are not available in this mode. For example, SSL VPN events are not
available in Transparent mode.
custom-field
{disk | fortianalyzer | memory | syslogd | webtrends |
fortiguard} filter
disk setting
fortianalyzer setting
fortiguard setting
memory setting
memory global setting
report customization
report definition
report filter
report output
report period
report schedule
report scope
report selection
report summary-layout
syslogd setting
trafficfilter
webtrends setting
custom-field
Use the following command to customize the log fields with a name and/or value. The custom name
and/or value will appear in the log message.
Syntax
config log custom-field
edit id <integer>
set name <name>
set value <integer>
end
Keywords and variables Description Default
id <integer> Enter the identification number for the log field. No default
name <name> Enter a name to identify the log. No default
value <integer> Enter a firewall policy number to associate a firewall policy No default
with the logs.
Example
This example shows how to configure a customized field for logs for branch offices in a company and
are associated with specific firewall policies.
config log custom-field
edit 1
set name company_branch1
set value 2
next
edit 2
set name company_branch2
set value 4
next
edit 3
set name company_branch3
set value 5
end
History
Related topics
• {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
Syntax
config log {disk | fortianalyzer | memory | syslogd | webtrends |
fortiguard} filter
set admin {disable | enable}
set allowed {disable | enable}
set anomaly {disable | enable}
set attack {disable | enable}
set auth {disable | enable}
set blocked {disable | enable}
set dhcp {disable | enable}
set email {disable | enable}
set email-log-imap {disable | enable}
set email-log-pop3 {disable | enable}
set email-log-smtp {disable | enable}
set event {disable | enable}
set ha {disable | enable}
set ftgd-wf-block {disable | enable}
set ftgd-wf-errors {disable | enable}
set gtp {disable | enable}(FortiOS Carrier)
set im {disable | enable}
set im-all {disable | enable}
set infected {disable | enable}
set ipsec {disable | enable}
set msisdn-bwl {disable | enable}(FortiOS Carrier)
set other-traffic {disable | enable}
set oversized {disable | enable}
set pattern {disable | enable}
set ppp {disable | enable}
set severity {alert | critical | debug | emergency | error |
information | notification | warning}
set signature {disable | enable}
set sslvpn-log-adm {disable | enable}
set sslvpn-log-auth {disable | enable}
Example
This example shows how to set the logging severity level to warning, enable virus logging for infected
files, and enable event logging for anomaly and IPSec events.
config log disk filter
set severity warning
set virus enable
set infected enable
set event enable
set anomaly enable
set ipsec enable
end
History
FortiOS v3.0 MR4 Added the FortiGuard Log & Analysis command, fortiguard for configuring the filter
settings for the FortiGuard Log & Analysis server. Also added VoIP commands.
Added keywords for FortiOS Carrier.
Related topics
• log fortianalyzer setting
• log memory setting
• log syslogd setting
• log webtrends setting
• log trafficfilter
• log report definition
• firewall
disk setting
Use this command to configure log settings for logging to the local disk. Disk logging is only available
for FortiGate units with an internal hard disk. You can also use this command to configure the
FortiGate unit to upload current log files to an FTP server every time the log files are rolled.
Syntax
config log disk setting
set status {enable | disable}
set log full-first-warning threshold
set log full-second-warning threshold
set log full-final-warning threshold
set max-log-file-size <integer max>
set roll-schedule {daily | weekly}
set roll-time <hh:mm>
set diskfull {nolog | overwrite}
set upload {enable | disable}
set upload-destination {fortianalyzer | ftp-server}
set uploadip <class_ip>
set uploadport <port_integer>
set uploaduser <user_str>
set uploadpass <passwd>
set uploaddir <dir_name_str>
set uploadtype {attack event im spamfilter traffic virus voip
webfilter}
set uploadzip {disable | enable}
set uploadsched {disable | enable}
set uploadtime <time_integer>
set upload-delete-files {enable | disable}
set drive-standby-time <0-19800>
end
Keywords and variables Description Default
status Enter enable to enable logging to the local disk. disable
{enable | disable}
full-first-warning Enter to configure the first warning before reaching the 75
threshold threshold. You can enter a number between 1 and 100.
full-second-warning Enter to configure the second warning before reaching the 90
threshold threshold. You can enter a number between 1 and 100.
full-final-warning Enter to configure the final warning before reaching the 95
threshold threshold. You can enter a number between 1 and 100.
max-log-file-size Enter the maximum size of the log file (in MB) that is saved to 100
<integer max> the local disk.
When the log file reaches the specified maximum size, the
FortiGate unit saves the current log file and starts a new active
log file. The default maximum log file size 1 MB and the
maximum log file size allowed is 1024MB.
roll-schedule Enter the frequency of the log rolling. When set, the FortiGate daily
{daily | weekly} unit will roll the log event if the maximum size has not been
reached.
roll-time Enter the time of day, in the format hh:mm, when the FortiGate 00:00
<hh:mm> unit saves the current log file and starts a new active log file.
Example
This example shows how to enable logging to the local disk, set the action to stop logging when the
disk is full, log files have a maximum size of 300MB, roll log files daily and start a new one at 1:30pm
every day.
config log disk setting
set status enable
set diskfull nolog
set max-log-file-size 300
set roll-schedule daily
set roll-time 01:30
end
This example shows how to enable uploading the traffic log and content archive files to an FTP server.
The FTP server has the IP address 172.30.120.24, the user name is ftpone, the password is ftppass1,
and the directory on the FTP server is fortigate\login.
config log disk setting
set upload enable
set uploadip 172.30.120.24
set uploaduser ftpone
set uploadpass ftppass1
set uploadtype traffic content
set uploaddir fortigate\logs
end
History
FortiOS v2.80 Substantially revised.
FortiOS v2.80 MR2 Removed ftppasswd, ftpserver, and ftpuser keywords.
Added upload keyword.
Added upload, uploaddir, uploadip, uploadpass, uploadport, uploadtype,
and uploaduser keywords.
FortiOS v3.0 Renamed keyword filesize to max-log-file-size.
Removed duration and unit keywords.
Added upload-delete-files command.
FortiOS v3.0 MR2 Removed roll-day command.
FortiOS v3.0 MR4 Additional log files new to FortiOS 3.0MR4 were added to uploadtype keyword, voip
and im.
FortiOS v3.0 MR5 Removed the keyword, content, from uploadtype command.
Added keyword, upload-destination, for uploading log files to a FortiAnalyzer unit.
FortiOS v3.0 MR6 Added keywords full-first-warning threshold,
full-second-warning-threshold, and full-final-warning threshold.
Related topics
• log {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
• log fortianalyzer setting
• log memory setting
• log syslogd setting
• log trafficfilter
• log webtrends setting
• log report definition
fortianalyzer setting
Use this command to configure the FortiGate unit to send log files to a FortiAnalyzer unit. See
“fortianalyzer, fortianalyzer2, fortianalyzer3” on page 340 to set the FortiAnalyzer configuration
settings.
FortiAnalyzer units are network appliances that provide integrated log collection, analysis tools and
data storage. Detailed log reports provide historical as well as current analysis of network and email
activity to help identify security issues and reduce network misuse and abuse.
Using the CLI, you can send logs to up to three different FortiAnalyzer units for maximum fail-over
protection of log data. After configuring logging to FortiAnalyzer units, the FortiGate unit will send the
same log packets to all configured FortiAnalyzer units. Additional FortiAnalyzer units are configured
using the fortianalyzer 2 and fortianalyzer 3 commands.
Use the multi-report command to enable configuring FortiAnalyzer reports. By default,
multi-report is disabled and only the default FortiAnalyzer report is available.
Note: The FortiAnalyzer CLI commands are not cumulative. Using a syntax similar to the following is not
valid:
config log fortianalyzer fortianalyzer2 fortianalyzer3 setting
Syntax
config log fortianalyzer setting
set status {disable | enable}
set multi-report {enable | disable}
set max-buffer-size
end
Keywords and variables Description Default
status {disable | enable} Enter enable to enable logging to a FortiAnalyzer unit. disable
multi-report Enter enable configuring of multiple reports. You need to disable
{enable | disable} enable this command to configure any FortiAnalyzer reports.
max-buffer-size Enter a number between 0 to 4095MB for the maximum buffer 10
size for the FortiAnalyzer unit. The number 0 disables the
maximum buffer size.
Example
This example shows how to enable logging to a FortiAnalyzer unit.
config log fortianalyzer setting
set status enable
end
History
Related topics
• system fortianalyzer, fortianalyzer2, fortianalyzer3
• log {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
• log fortianalyzer setting
• log memory setting
• log syslogd setting
• log webtrends setting
• log trafficfilter
• log report definition
fortiguard setting
Use this command for configuring FortiGuard Analysis Service settings. See the FortiGate
Administration Guide for more information about subscription-based FortiGuard Analysis Service,
including enabling logging to a FortiGuard Analysis server.
Note: The fortiguard setting command is only available when FortiGuard Analysis Service
subscription-based services are enabled. The storage space is a specified amount, and varies,
depending on the services requested.
Syntax
config log fortiguard setting
set quotafull {nolog | overwrite}
set status {disable | enable}
end
Keywords and variables Description Default
quotafull {nolog | Enter the action to take when the specified storage space on overwrite
overwrite} the FortiGuard Analysis server is full. When you enter nolog,
the FortiGate unit will stop logging, and overwrite will
begin overwriting the oldest file.
status {disable | enable} Enter to enable the FortiGuard Analysis server. disable
Example
In this example, the FortiGate unit is logging to a FortiGuard Analysis server, and will stop logging
when the maximum storage space on the server is reached.
config log fortiguard setting
set quotafull nolog
set status enable
end
History
Related topics
• {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
memory setting
Use this command to configure log settings for logging to the FortiGate system memory.
The FortiGate system memory has a limited capacity and only displays the most recent log entries.
Traffic logs are not stored in the memory buffer, due to the high volume of traffic information. After all
available memory is used, by default the FortiGate unit begins to overwrite the oldest messages. All
log entries are deleted when the FortiGate unit restarts.
Syntax
config log memory setting
set diskfull <overwrite>
set status {disable | enable}
end
Keywords and variables Description Default
diskfull <overwrite> Enter the action to take when the memory is reaching its overwrite
capacity. nolog means the FortiGate unit will stop logging,
overwrite means the FortiGate unit will begin overwriting
the oldest file and blocktraffic means the FortiGate unit
will block traffic when the memory is full.
status {disable | enable} Enter enable to enable logging to the FortiGate system disable
memory.
Example
This example shows how to enable logging to the FortiGate system memory, and configure the
FortiGate unit to stop logging when the log memory buffer is full.
config log memory setting
set status enable
set diskfull overwrite
end
History
Related topics
• log {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
• log fortianalyzer setting
• log syslogd setting
• log webtrends setting
• log trafficfilter
• log report definition
• memory global setting
Syntax
config log memory global setting
set full-final-warning-threshold
set full-first-warning-threshold
set full-second-warning-threshold
set max-lines
end
Keywords and variables Description Default
full-final-warning- Enter to configure the final warning before reaching the 95
threshold threshold. You can enter a number between 1 and 100.
full-first-warning- Enter to configure the first warning before reaching the 75
threshold threshold. You can enter a number between 1 and 100.
full-second-warning- Enter to configure the second warning before reaching the 90
threshold threshold. You can enter a number between 1 and 100.
max-lines Enter the maximum number of lines in the memory buffer log. No default
Example
This example shows how to configure the first, second, and final threshold warnings as well as the
maximum lines for the memory buffer log.
config log memory global setting
set first-full-warning-threshold 40
set second-full-warning-threshold 60
set final-full-warning-threshold 80
set max-lines 60
end
History
Related topics
• log {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
• log fortianalyzer setting
• log syslogd setting
• log webtrends setting
• log trafficfilter
• log report definition
• memory setting
report customization
Use this command to customize your report with the company name, or to customize footers and
headers.
Syntax
config log report customization
set company <company_name>
set footer-option {custom | report-title} <footer>
set header <header_name>
end
Example
This example shows how to customize the report with the company name XYN, along with a
customized footer and header for the report.
config log report definition
set description "A weekly traffic report for the FortiGate-60"
set title "Weekly Report"
set footer “XYN: Weekly Report”
set header “XYN: Week of June 21”
end
History
Related topics
• report filter
• report output
• report period
• report schedule
• report scope
• report selection
report definition
Use this command to add information to the report, including the title of the report and a description of
what is contained in the report.
Syntax
config log report definition
set description <report_description>
set title <report_title>
end
Keywords and variables Description Default
description Enter a description for the report describing what the report No default
<report_description> contains. Enclose the description in quotes. For example,
“This report contains network traffic
statistics.”
title <report_title> Enter a title for the report. If the title is more than one word, No default
enclose the title in quotes. For example, “Network Traffic
Statistics.”
Example
This example shows how to set the report name and title.
config log report definition
set description "A weekly traffic report for the FortiGate-60"
set title "Weekly Report"
end
History
Related topics
• report filter
• report output
• report period
• report schedule
• report scope
• report selection
report filter
Use this command to view or remove information from a report to provide a more concise report. For
example, you only want reports on specific error messages, or you do not want include certain IP
address destinations.
Syntax
config log report filter
set filter-string <filter_string>
end
Keywords and variables Description Default
filter-string Enter a filter string to define what is included in the report. No default
<filter_string>
History
Related topics
• report definition
• report output
• report period
• report schedule
• report scope
• report selection
report output
Use this command to configure a file format for the report for email recipients, saved to the
FortiAnalyzer hard disk. Use this command to also configure the FortiAnalyzer unit to upload the report
files to an FTP server when completed.
Syntax
config log report output
config addresses
edit address <address_str>
set from <from_sender>
set server <server_ip>
next
end
set email {html | pdf | rtf | txt}
set email-attachment-name <name_str>
set email-body <string>
set email-subject <subject_str>
set file {html | pdf | rtf | txt}
set upload {enable | disable}
set upload-delete {enable | disable}
set upload-dir <directory_str>
set upload-gzipped {enable | disable}
set upload-ip <ip_str>
set upload-password <passwd_str>
set upload-server-type {FTP | SCP | SFTP}
set upload-username <username_str>
end
Keywords and variables Description Default
edit address Enter the email recipients for the FortiAnalyzer report. No default
<address_str>
set from <from_sender> Enter the sender’s email address. No default
set server <server_ip> Enter the server IP address. No default
email Select the file format for the FortiAnalyzer unit sends to the No default
{html | pdf | rtf | txt} email recipients.
email-attachment-name Enter the email output attachment name. No default
<name_str>
email-body Enter the email output body. No default.
<string>
email-subject Enter the email’s subject for the subject line. No default
<subject_str>
file Select the file format the FortiAnalyzer saves to its hard disk. html
{html | pdf | rtf | txt}
upload {enable | disable} Set whether the FortiAnalyzer unit uploads the report files to disable
an FTP server.
All upload keywords are available when upload is enabled.
upload-delete Enable or disable the removal of the log files once the disable
{enable | disable} FortiGate unit has uploaded the log file to the FTP server.
upload-dir Enter the target directory in the uploading server. For example, No default
<directory_str> the file is in d:\, so it would be d:\george_files_xyn2006.
Example
This example shows how to set the report output to HTML and PDF formats.
config log report output
set output file html pdf
end
History
Related topics
• report definition
• report filter
• report period
• report schedule
• report scope
• report selection
report period
Use this command to select the time span for the report period or select a specific time frame. When
the FortiAnalyzer unit generates the report, it uses the log data found within the specified time period
only.
Syntax
config log report period
set type {last-14-days | last-2-weeks |last-30-days | last-7-days
|last-month | last-n-days | last-n-hours | last-n-weeks | last-
quarter | last week | other | this-month | this-quarter | this-week |
this-year | today | yesterday}
end
Keywords and variables Description Default
type {last-14-days | Select a time period for the report. This command is required last-7-
last-2-weeks |last-30- before entering the end and start date for the report period. days
days | last-7-days |last- The end and start date will not appear unless a type is
selected.
month | last-n-days |
last-n-hours | last-n-
weeks | last-quarter |
last week | other | this-
month | this-quarter |
this-week | this-year |
today | yesterday}
Example
This example shows how to set the reporting period to the previous weeks data.
config log report period
set type last-week
end
History
Related topics
• report definition
• report filter
• report output
• report schedule
• report scope
• report selection
report schedule
Use this command to set a schedule when the FortiAnalyzer unit generates the reports.
Syntax
config log report schedule
set type {daily | dates | days | none}
set dates {1-31}
set days {mon | tue | wed | thu | fri | sat |sun}
set time <hh:mm>
end
Keywords and variables Description Default
type {daily | dates | Select when the FortiAnalyzer unit initiates the report. With a none
days | none} selection of none, the FortiAnalyzer administrator must start
the report manually from the FortiAnalyzer unit.
dates {1-31} Select the days of the month when the FortiAnalyzer unit runs No default
the report. Separate multiple dates with a space.
For example, set dates 1 15 30.
days {mon | tue | wed | Select the days of the week when the FortiAnalyzer unit runs No default
thu | fri | sat |sun} the report. Separate multiple dates with a space.
For example, set days mon wed.
time <hh:mm> Select the time of the day when the FortiAnalyzer unit runs the 00:00
report.
Example
This example shows how to set the report to run every Monday at 9:56.
config log report schedule
set type days
set days mon
set time 09:56
end
History
Related topics
• report definition
• report filter
• report output
• report period
• report scope
• report selection
report scope
Use this command to select the type of results you would like to include in the report.
Syntax
config log report scope
set audit <integer>
set exclude-summary {enable |disable}
set include-nodata {enable | disable}
set include-summary {enable | disable}
set include-table-of-content {enable | disable}
set obfuscate-user {enable | disable}
set resolve-host {enable | disable}
set resolve-service {enable | disable}
set result {all}
set top1 {1-30}
set top2 {1-30}
end
Keywords and variables Description Default
audit <integer> Enter a number from 1 to 10000 to display the top number of 100
values in all audit reports.
exclude-summary Enable to exclude summary information in the report. enable
{enable |disable}
include-nodata Enable to include no summary information in the report. disable
{enable | disable}
include-summary Enable to include the summary information in the report. disable
{enable | disable}
include-table-of-content Enable to include the table of contents in the report. disable
{enable | disable}
obfuscate-user Enable to include obfsucate user group names in the report. disable
{enable | disable}
resolve-host Enable or disable the report to include actual user names disable
{enable | disable} rather than IP addresses. IP aliases must be configured on the
FortiAnalyzer unit. For example, User One instead of
10.10.10.1
resolve-service Enable or disable the report to include names rather than port disable
{enable | disable} numbers. For example, HTTP instead of port 80.
result {all} Set to include the results for all virtual domains all
Example
This example shows how to set the resolving of the host and service names in the report.
config log report scope
set resolve-host enable
set resolve-service enable
end
History
FortiOS v3.0 New for this release.
FortiOS v3.0 MR4 Added the following keywords:
• exclude-summary
• include-summary
• include-nodata
• include-table-of-contents
• obfsucate-user
FortiOS v3.0 MR5 Added the keyword, audit.
Related topics
• report definition
• report filter
• report output
• report period
• report schedule
• report selection
report selection
Use this command to select the reports to include within the report profile.
Syntax
config log report selection
set selection <report_category> [<report> <report>...]
end
Keywords and variables Description Default
selection Select the report types to include. No default
<report_category>
[<report> <report>...]
For a list of report categories and reports, see the list in the command line interface.
Example
This example shows how to set the network activity report.
config log report selection
set network-activity net-date-dir net-dir
end
History
Related topics
• report definition
• report filter
• report output
• report period
• report schedule
• report scope
report summary-layout
Use this command to customize the summary reports.
Syntax
config log report summary-layout
set summary-column {1 | 2 | 3 | 4}
config summary-reports
edit name <sum_category> [<sum_report> <sum_report>...]
set order <integer>
set style {bar | line | pie}
set topN <integer>
end
Keywords and variables Description Default
summary-column Select a number for the number of columns included in the 2
{1 | 2 | 3 | 4} summary layout.
summary-reports Enter to configure and edit summary reports. No default
name <sum_category> Select a report name to configure and edit. Enter enter No default.
[<sum_report> name to view all summary reports so you can choose which
<sum_report>...] one to configure and edit.
order <integer> Enter a number to specify the display order of query in report. 100
style {bar | line | pie} Select the style for the summary report. pie
topN <integer> Enter a number to show the top values of the first variable in 1-10
Ranked Reports. The maximum value is 100.
Example
In this example, the number of columns in the summary layout is three. There are four summary
reports included in this report, the summary protocol distribution, total viruses detected, total spam
activity, and total web filter activity. The summary report, total viruses detected, will come first and all
summary reports will be pie charts.
config log report summary-layout
set summary-column 3
config summary-reports
edit name sum-proto
set order 4
set style column
set topN 5
next
edit name sum-tv
set order 1
set style bar
set topN 5
next
edit name sum-mf
set order 2
set style line
set topN 5
next
History
Related topics
• report definition
• report filter
• report output
• report period
• report schedule
• report scope
syslogd setting
Use this command to configure log settings for logging to a remote syslog server. You can configure
the FortiGate unit to send logs to a remote computer running a syslog server.
Using the CLI, you can send logs to up to three different syslog servers. Configure additional syslog
servers using syslogd2 and syslogd3 commands and the same keywords outlined below.
Note: Syslog CLI commands are not cumulative. Using a syntax similar to the following is not valid:
config log syslogd syslogd2 syslogd3 setting
Syntax
config log syslogd setting
set csv {disable | enable}
set facility {alert | audit | auth | authpriv | clock | cron | daemon |
ftp | kernel | local0 | local1 | local2 | local3 | local4 | local5 |
local6 | local7 | lpr | mail | news | ntp | syslog | user | uucp}
set port <port_integer>
set server <address_ipv4>
set status {disable | enable}
end
Keywords and variables Description Default
csv {disable | enable} Enter enable to enable the FortiGate unit to produce the log in disable
Comma Separated Value (CSV) format. If you do not enable
CSV format the FortiGate unit produces plain text files.
facility {alert | audit | Enter the facility type. facility identifies the source of the log local7
auth | authpriv | clock | message to syslog. You might want to change facility to
cron | daemon | ftp | distinguish log messages from different FortiGate units.
Available facility types are:
kernel | local0 | local1
• alert: log alert
| local2 | local3 |
• audit: log audit
local4 | local5 | local6
• auth: security/authorization messages
| local7 | lpr | mail |
• authpriv: security/authorization messages (private)
news | ntp | syslog |
• clock: clock daemon
user | uucp}
• cron: cron daemon performing scheduled commands
• daemon: system daemons running background system
processes
• ftp: File Transfer Protocol (FTP) daemon
• kernel: kernel messages
• local0 – local7: reserved for local use
• lpr: line printer subsystem
• mail: email system
• news: network news subsystem
• ntp: Network Time Protocol (NTP) daemon
• syslog: messages generated internally by the syslog
daemon
port <port_integer> Enter the port number for communication with the syslog server. 514
server <address_ipv4> Enter the IP address of the syslog server that stores the logs. No default.
status {disable | enable} Enter enable to enable logging to a remote syslog server. disable
Example
This example shows how to enable logging to a remote syslog server, configure an IP address and
port for the server, and enable logging in CSV format.
config log syslogd setting
set status enable
set server 220.210.200.190
set port 601
set csv enable
end
History
Related topics
• log {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
• log fortianalyzer setting
• log memory setting
• log webtrends setting
• log trafficfilter
• log report definition
trafficfilter
Use this command to configure the following global settings for traffic logging:
• resolve IP addresses to host names
• display the port number or service (protocol) in the log message
Syntax
config log trafficfilter
set display {name | port}
set resolve {disable | enable}
end
The config log trafficfilter command has 1 subcommand.
config rule
Example
This example shows how to display the service name and enable resolving IP addresses to host
names in log messages.
config log trafficfilter
set display name
set resolve enable
end
config rule
Access the rule subcommand using the log trafficfilter command.
Use the following commands to configure traffic filter rules based on source IP address, destination IP
address, and service (protocol).
Syntax
config rule
edit <name_str>
set dst <any_ip&any_netmask>
set service <name_str>
set src <class_ip&net_netmask>
end
Example
This example shows how to configure a traffic filter called TF_1, to configure the source and
destination IP and netmask, and to set the service to HTTP.
config log trafficfilter
config rule
edit TF_1
set dst 220.210.200.190 255.255.255.0
set src 192.168.100.1 255.255.255.0
set service HTTP
end
end
History
Related topics
• log {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
• log fortianalyzer setting
• log memory setting
• log syslogd setting
• log webtrends setting
• log report definition
webtrends setting
Use this command to configure log settings for logging to a remote computer running a NetIQ
WebTrends firewall reporting server.
FortiGate log formats comply with WebTrends Enhanced Log Format (WELF) and are compatible with
NetIQ WebTrends Security Reporting Center and Firewall Suite 4.1.
Syntax
config log webtrends setting
set server <address_ipv4>
set status {disable | enable}
end
Keywords and variables Description Default
server <address_ipv4> Enter the IP address of the WebTrends server that stores the No default.
logs.
status {disable | enable} Enter enable to enable logging to a WebTrends server. disable
Example
This example shows how to enable logging to and set an IP address for a remote WebTrends server.
config log webtrends setting
set status enable
set server 220.210.200.190
end
History
Related topics
• log {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
• log fortianalyzer setting
• log memory setting
• log syslogd setting
• log trafficfilter
• log report definition
notification
notification
Use this command to configure event notification.
Syntax
config notification
set maximum-retries <integer>
set maximum-sessions <integer>
set mem-percent <integer>
end
History
router
Routers move packets from one network segment to another towards a network destination. When a
packet reaches a router, the router uses data in the packet header to look up a suitable route on which
to forward the packet to the next segment. The information that a router uses to make routing decisions
is stored in a routing table. Other factors related to the availability of routes and the status of the
network may influence the route selection that a router makes when forwarding a packet to the next
segment.
The FortiGate unit supports many advanced routing functions and is compatible with industry standard
Internet routers. The FortiGate unit can communicate with other routers to determine the best route for
a packet.
The following router commands are available to configure options related to FortiGate router
communications and packet forwarding:
access-list
Use this command to add, edit, or delete access lists. Access lists are filters used by FortiGate routing
processes. For an access list to take effect, it must be called by a FortiGate routing process (for
example, a process that supports RIP or OSPF).
Each rule in an access list consists of a prefix (IP address and netmask), the action to take for this
prefix (permit or deny), and whether to match the prefix exactly or to match the prefix and any more
specific prefix.
Note: The default route, 0.0.0.0/0 can not be exactly matched with an access-list. A prefix-list must be
used for this purpose. See “prefix-list” on page 275.
The FortiGate unit attempts to match a packet against the rules in an access list starting at the top of
the list. If it finds a match for the prefix, it takes the action specified for that prefix. If no match is found
the default action is deny.
Syntax
config router access-list
edit <access_list_name>
config rule
edit <access_list_id>
set action {deny | permit}
set exact-match {enable | disable}
set prefix { <prefix_ipv4mask> | any }
set wildcard <address_ipv4> <wildcard_mask>
end
end
Note: The action and prefix keywords are required. The exact-match keyword is optional.
Example
This example shows how to add an access list named acc_list1 with two rules. The first rule denies
the subnet that exactly matches the prefix 192.168.50.0 255.255.255.0 and permits all other
subnets that match the prefix 192.168.0.0 255.255.0.0.
config router access-list
edit acc_list1
config rule
edit 1
set prefix 192.168.50.0 255.255.255.0
set action deny
set exact-match enable
next
edit 2
set prefix 192.168.0.0 255.255.0.0
set action permit
set exact-match disable
end
end
The next example shows how to add an access list that permits all subnets matching network address
10.20.4.1 through 10.20.4.255 (addresses 10.20.4.x are processed):
config router access-list
edit acc_list2
config rule
edit 1
set action permit
set wildcard 10.20.4.0 0.0.0.255
end
end
The next example shows how to add an access list that permits “odd” subnets according to the third-
octet of network address 172.16.x.0 (networks 172.16.1.0, 172.16.3.0, 172.16.5.0, and so on are
processed):
config router access-list
edit acc_list3
config rule
edit 1
set action permit
set wildcard 172.16.1.0 0.0.254.0
end
end
History
Related topics
• router ospf
• router prefix-list
• router rip
aspath-list
Use this command to set or unset BGP AS-path list parameters. By default, BGP uses an ordered list
of Autonomous System (AS) numbers to describe the route that a packet takes to reach its destination.
A list of AS numbers is called an AS path. You can filter BGP routes using AS path lists.
When the FortiGate unit receives routing updates from other autonomous systems, it can perform
operations on updates from neighbors and choose the shortest path to a destination. The shortest path
is determined by counting the number of AS numbers in the AS path. The path that has the least
number of AS numbers is considered the shortest AS path.
Use the config router aspath-list command to define an access list that examines the
AS_PATH attributes of BGP routes to match routes. Each entry in the AS-path list defines a rule for
matching and selecting routes based on the setting of the AS_PATH attribute. The default rule in an AS
path list (which the FortiGate unit applies last) denies the matching of all routes.
Syntax
config router aspath-list
edit <aspath_list_name>
config rule
edit <as_rule_id>
set action {deny | permit}
set regexp <regexp_str>
end
end
Example
This example shows how to create an AS-path list named ebgp_in. The list contains a single rule that
permits operations on BGP routes whose AS_PATH attribute references an AS number of 333, 334,
338, or 71. The AS path list will match routes that originate in AS 333, AS 334, AS 338, or AS 71.
config router aspath-list
edit ebgp_in
config rule
edit 1
set action permit
set regexp _(333|334|338|71)$
end
end
History
Related topics
• router bgp
• router community-list
• Using route maps with BGP
• router key-chain
auth-path
Authentication based routing allows firewall policies to determine how to direct network traffic flows.
Syntax
config router auth-path
edit <aspath_list_name>
set device <interface>
set gateway <gway_ipv4>
end
Variables Description Default
edit <auth_path_name> Enter a name for the authentication path. No default.
device <interface> Specify the interface for this path. No default.
gateway <gway_ipv4> Specify the gateway IP address for this path. Null.
History
Related topics
• user local
• user radius
• firewall policy, policy6
bgp
Use this command to set or unset BGP-4 routing parameters. BGP can be used to perform Classless
Interdomain Routing (CIDR) and to route traffic between different autonomous systems or domains
using an alternative route if a link between a FortiGate unit and a BGP peer (such as an ISP router)
fails. Fortinet BGP-4 complies with RFC 1771 and supports IPv4 addressing.
When BGP is enabled, the FortiGate unit sends routing table updates to the upstream ISP router
whenever any part of the routing table changes. The update advertises which routes can be used to
reach the FortiGate unit. In this way, routes are made known from the border of the internal network
outwards (routes are pushed forward) instead of relying on upstream routers to propagate alternative
paths to the FortiGate unit.
FortiGate BGP supports the following extensions to help manage large numbers of BGP peers:
• Communities — The FortiGate unit can set the COMMUNITY attribute of a route to assign the route
to predefined paths (see RFC 1997). The FortiGate unit can examine the COMMUNITY attribute of
learned routes to perform local filtering and/or redistribution.
• Internal BGP (IBGP) route reflectors — The FortiGate unit can operate as a route reflector or
participate as a client in a cluster of IBGP peers (see RFC 1966).
• External BGP (EBGP) confederations — The FortiGate unit can operate as a confederation
member, using its AS confederation identifier in all transactions with peers that are not members of
its confederation (see RFC 3065).
Bi-directional Forwarding Detection (BFD) is a protocol used by BGP and OSPF. It is used to quickly
locate hardware failures in the network. Routers running BFD communicate with each other, and if a
timer runs out on a connection then that router is declared down. BFD then communicates this
information to the routing protocol and the routing information is updated. BFD support was added in
FortiOS v3.0 MR4, and can only be configured through the CLI.
Syntax
config router bgp
set always-compare-med {enable | disable}
set as <local_as_id>
set bestpath-as-path-ignore {enable | disable}
set bestpath-cmp-confed-aspath {enable | disable}
set bestpath-cmp-routerid {enable | disable}
set bestpath-med-confed {enable | disable}
set bestpath-med-missing-as-worst {enable | disable}
set client-to-client-reflection {enable | disable}
set cluster-id <address_ipv4>
set confederation-identifier <peerid_integer>
set dampening {enable | disable}
set dampening-max-suppress-time <minutes_integer>
set dampening-reachability-half-life <minutes_integer>
set dampening-reuse <reuse_integer>
set dampening-route-map <routemap-name_str>
set dampening-suppress <limit_integer>
set dampening-unreachability-half-life <minutes_integer>
set default-local-preference <preference_integer>
set deterministic-med {enable | disable}
set distance-external <distance_integer>
set distance-internal <distance_integer>
set distance-local <distance_integer>
set enforce-first-as {enable | disable}
Note: In the following table, the as and router-id keywords are required. All other keywords are optional.
cluster-id <address_ipv4> Set the identifier of the route-reflector in the cluster ID to 0.0.0.0
which the FortiGate unit belongs. If 0 is specified, the
FortiGate unit operates as the route reflector and its
router-id value is used as the cluster-id value. If the
FortiGate unit identifies its own cluster ID in the
CLUSTER_LIST attribute of a received route, the route is
ignored to prevent looping.
confederation-identifier Set the identifier of the confederation to which the FortiGate 0
<peerid_integer> unit belongs. The range is from 1 to 65 535.
dampening {enable | Enable or disable route-flap dampening on all BGP routes. disable
disable} See RFC 2439. (A flapping route is unstable and continually
transitions down and up.) If you set dampening, you may
optionally set dampening-route-map or define the
associated values individually using the dampening-*
keywords.
dampening-max-suppress- This keyword is available when dampening is set to 60
time <minutes_integer> enable.
Set the maximum time (in minutes) that a route can be
suppressed. The range is from 1 to 255. A route may
continue to accumulate penalties while it is suppressed.
However, the route cannot be suppressed longer than
minutes_integer.
dampening-reachability- This keyword is available when dampening is set to 15
half-life enable.
<minutes_integer> Set the time (in minutes) after which any penalty assigned to
a reachable (but flapping) route is decreased by half. The
range is from 1 to 45.
Example
The following example defines the number of the AS of which the FortiGate unit is a member. It also
defines an EBGP neighbor at IP address 10.0.1.2.
config router bgp
set as 65001
set router-id 172.16.120.20
config neighbor
edit 10.0.1.2
set remote-as 65100
end
end
config admin-distance
Use this subcommand to set administrative distance modifications for bgp routes.
Example
This example shows how to manually adjust the distance associated with a route. It shows adding 25
to the weight of the route, that it will apply to neighbor routes with an IP address of 192.168.0.0 and a
netmask of 255.255.0.0, that are also permitted by the access-list “downtown_office”.
config router bgp
config admin-distance
edit 1
set distance 25
set neighbour-prefix 192.168.0.0 255.255.0.0
set route-list downtown_office
next
end
end
config aggregate-address
Use this subcommand to set or unset BGP aggregate-address table parameters. The subcommand
creates a BGP aggregate entry in the FortiGate routing table.
When you aggregate routes, routing becomes less precise because path details are not readily
available for routing purposes. The aggregate address represents addresses in several autonomous
systems. Aggregation reduces the length of the network mask until it masks only the bits that are
common to all of the addresses being summarized.
Note: The prefix keyword is required. All other keywords are optional.
Example
This example shows how to define an aggregate prefix of 192.168.0.0/16. The as-set command
enables the generation of an unordered list of AS numbers to include in the path information.
config router bgp
config aggregate-address
edit 1
set prefix 192.168.0.0/16
set as-set enable
end
end
config neighbor
Use this subcommand to set or unset BGP neighbor configuration settings. The subcommand adds a
BGP neighbor configuration to the FortiGate unit.
You can clear all or some BGP neighbor connections (sessions) using the exec router clear bgp
command (see “router clear bgp” on page 606).
Note: The remote-as keyword is required. All other keywords are optional.
Example
This example shows how to set the AS number of a BGP neighbor at IP address 10.10.10.167 and
enter a descriptive name for the configuration.
config router bgp
config neighbor
edit 10.10.10.167
set remote-as 2879
set description BGP_neighbor_Site1
end
end
config network
Use this subcommand to set or unset BGP network configuration parameters. The subcommand is
used to advertise a BGP network (that is, an IP prefix)—you specify the IP addresses making up the
local BGP network.
When you enable the network-import-check attribute on the FortiGate unit (see “network-
import-check {enable | disable}” on page 234) and you specify a BGP network prefix
through the config network command, the FortiGate unit searches its routing table for a matching
entry. If an exact match is found, the prefix is advertised. A route-map can optionally be used to modify
the attributes of routes before they are advertised.
Note: The prefix keyword is required. All other keywords are optional.
Example
This example defines a BGP network at IP address 10.0.0.0/8. A route map named BGP_rmap1 is
used to modify the attributes of the local BGP routes before they are advertised.
config router bgp
config network
edit 1
set prefix 10.0.0.0/8
set route-map BGP_rmap1
end
end
config redistribute
Use this subcommand to set or unset BGP redistribution table parameters. You can enable BGP to
provide connectivity between connected, static, RIP, and/or OSPF routes. BGP redistributes the routes
from one protocol to another. When a large internetwork is divided into multiple routing domains, use
the subcommand to redistribute routes to the various domains. As an alternative, you can use the
config network subcommand to advertise a prefix to the BGP network (see “config network” on
page 239).
The BGP redistribution table contains four static entries. You cannot add entries to the table. The
entries are defined as follows:
• connected—Redistribute routes learned from a direct connection to the destination network.
• static—Redistribute the static routes defined in the FortiGate routing table.
• rip—Redistribute routes learned from RIP.
• ospf—Redistribute routes learned from OSPF.
When you enter the subcommand, end the command with one of the four static entry names (that is,
config redistribute {connected | static | rip | ospf}).
Example
The following example changes the status and route-map fields of the connected entry.
config router bgp
config redistribute connected
set status enable
set route-map rmap1
end
end
History
FortiOS v3.0 New.
Related topics
• router aspath-list
• router community-list
• Using route maps with BGP
• router key-chain
community-list
Use this command to identify BGP routes according to their COMMUNITY attributes (see RFC 1997).
Each entry in the community list defines a rule for matching and selecting routes based on the setting
of the COMMUNITY attribute. The default rule in a community list (which the FortiGate unit applies
last) denies the matching of all routes.
You add a route to a community by setting its COMMUNITY attribute. A route can belong to more than
one community. A route may be added to a community because it has something in common with the
other routes in the group (for example, the attribute could identify all routes to satellite offices).
When the COMMUNITY attribute is set, the FortiGate unit can select routes based on their
COMMUNITY attribute values.
Syntax
config router community-list
edit <community_name>
set type {standard | expanded}
config rule
edit <community_rule_id>
set action {deny | permit}
set match <criteria>
set regexp <regular_expression>
end
end
Note: The action keyword is required. All other keywords are optional.
Example
This example creates a community list named Satellite_offices. The list permits operations on
BGP routes whose COMMUNITY attribute is set to no-advertise.
config router community-list
edit Satellite_offices
set type standard
config rule
edit 1
set action permit
set match no-advertise
end
end
The next example creates a community list named ext_community. The list permits operations on
BGP routes whose COMMUNITY attribute has the number 3 in the second part of the first instance
and the number 86 in the second part of the second instance. For example, the community list could
match routes having the following COMMUNITY attribute values: “100:3 500:86 300:800”, “1:3 4:86”,
or “69:3 69:86 69:69 70:800 600:333”).
config router community-list
edit ext_community
set type expanded
config rule
edit 1
set action permit
set regexp “.*:3 .*:86”
end
end
History
Related topics
• router aspath-list
• router bgp
• router Using route maps with BGP
• router key-chain
key-chain
Use this command to manage RIP version 2 authentication keys. You can add, edit or delete keys
identified by the specified key number.
RIP version 2 uses authentication keys to ensure that the routing information exchanged between
routers is reliable. For authentication to work both the sending and receiving routers must be set to use
authentication, and must be configured with the same keys.
A key chain is a list of one or more keys and the send and receive lifetimes for each key. Keys are
used for authenticating routing packets only during the specified lifetimes. The FortiGate unit migrates
from one key to the next according to the scheduled send and receive lifetimes. The sending and
receiving routers should have their system dates and times synchronized, but overlapping the key
lifetimes ensures that a key is always available even if there is some difference in the system times.
See “config system global” on page 243 to ensure that the FortiGate system date and time are correct.
Syntax
config router key-chain
edit <key_chain_name>
config key
edit <key_id>
set accept-lifetime <start> <end>
set key-string <password>
set send-lifetime <start> <end>
end
end
Example
This example shows how to add a key chain named test1 with three keys. The first two keys each
have send and receive lifetimes of 13 hours, and the 3rd key has send and receive lifetimes that never
expire.
config router key-chain
edit test1
config key
edit 1
set accept-lifetime 10:00:00 1 6 2004 46800
set send-lifetime 10:00:00 1 6 2004 46800
set key-string 1a2b2c4d5e6f7g8h
next
edit 2
set accept-lifetime 22:00:00 1 6 2004 46800
set send-lifetime 22:00:00 1 6 2004 46800
set key-string 9i1j2k3l4m5n6o7p
next
edit 3
set accept-lifetime 10:00:00 2 6 2004 infinite
set send-lifetime 10:00:00 2 6 2004 infinite
set key-string 123abc456def789g
end
end
History
Related topics
• router rip
• system global
multicast
A FortiGate unit can operate as a Protocol Independent Multicast (PIM) version 2 router in the root
virtual domain. FortiGate units support PIM sparse mode (RFC 4601) and PIM dense mode (RFC
3973) and can service multicast servers or receivers on the network segment to which a FortiGate
interface is connected. Multicast routing is only available in the root virtual domain. It is not supported
in Transparent mode (TP mode).
Note: To support PIM communications, the sending/receiving applications and all connecting PIM routers in
between must be enabled with PIM version 2. PIM can use static routes, RIP, OSPF, or BGP to forward multicast
packets to their destinations. To enable source-to-destination packet delivery, either sparse mode or dense mode
must be enabled on the PIM-router interfaces. Sparse mode routers cannot send multicast messages to dense
mode routers. In addition, if a FortiGate unit is located between a source and a PIM router, two PIM routers, or is
connected directly to a receiver, you must create a firewall policy manually to pass encapsulated (multicast)
packets or decapsulated data (IP traffic) between the source and destination.
A PIM domain is a logical area comprising a number of contiguous networks. The domain contains at
least one Boot Strap Router (BSR), and if sparse mode is enabled, a number of Rendezvous Points
(RPs) and Designated Routers (DRs). When PIM is enabled on a FortiGate unit, the FortiGate unit can
perform any of these functions at any time as configured.
Sparse mode
Initially, all candidate BSRs in a PIM domain exchange bootstrap messages to select one BSR to
which each RP sends the multicast address or addresses of the multicast group(s) that it can service.
The selected BSR chooses one RP per multicast group and makes this information available to all of
the PIM routers in the domain through bootstrap messages. PIM routers use the information to build
packet distribution trees, which map each multicast group to a specific RP. Packet distribution trees
may also contain information about the sources and receivers associated with particular multicast
groups.
Note: When a FortiGate interface is configured as a multicast interface, sparse mode is enabled on it by default to
ensure that distribution trees are not built unless at least one downstream receiver requests multicast traffic from
a specific source. If the sources of multicast traffic and their receivers are close to each other and the PIM domain
contains a dense population of active receivers, you may choose to enable dense mode throughout the PIM
domain instead.
An RP represents the root of a non-source-specific distribution tree to a multicast group. By joining and
pruning the information contained in distribution trees, a single stream of multicast packets (for
example, a video feed) originating from the source can be forwarded to a certain RP to reach a
multicast destination.
Each PIM router maintains a Multicast Routing Information Base (MRIB) that determines to which
neighboring PIM router join and prune messages are sent. An MRIB contains reverse-path information
that reveals the path of a multicast packet from its source to the PIM router that maintains the MRIB.
To send multicast traffic, a server application sends IP traffic to a multicast group address. The locally
elected DR registers the sender with the RP that is associated with the target multicast group. The RP
uses its MRIB to forward a single stream of IP packets from the source to the members of the multicast
group. The IP packets are replicated only when necessary to distribute the data to branches of the
RP’s distribution tree.
To receive multicast traffic, a client application can use Internet Group Management Protocol (IGMP)
version 1 (RFC 1112), 2 (RFC 2236), or 3 (RFC 3376) control messages to request the traffic for a
particular multicast group. The locally elected DR receives the request and adds the host to the
multicast group that is associated with the connected network segment by sending a join message
towards the RP for the group. Afterward, the DR queries the hosts on the connected network segment
continually to determine whether the hosts are active. When the DR no longer receives confirmation
that at least one member of the multicast group is still active, the DR sends a prune message towards
the RP for the group.
Dense mode
The packet organization used in sparse mode is also used in dense mode. When a multicast source
begins to send IP traffic and dense mode is enabled, the closest PIM router registers the IP traffic from
the multicast source (S) and forwards multicast packets to the multicast group address (G). All PIM
routers initially broadcast the multicast packets throughout the PIM domain to ensure that all receivers
that have requested traffic for multicast group address G can access the information if needed.
To forward multicast packets to specific destinations afterward, the PIM routers build distribution trees
based on the information in multicast packets. Upstream PIM routers depend on prune/graft messages
from downstream PIM routers to determine if receivers are actually present on directly connected
network segments. The PIM routers exchange state refresh messages to update their distribution
trees. FortiGate units store this state information in a Tree Information Base (TIB), which is used to
build a multicast forwarding table. The information in the multicast forwarding table determines whether
packets are forwarded downstream. The forwarding table is updated whenever the TIB is modified.
PIM routers receive data streams every few minutes and update their forwarding tables using the
source (S) and multicast group (G) information in the data stream. Superfluous multicast traffic is
stopped by PIM routers that do not have downstream receivers—PIM routers that do not manage
multicast groups send prune messages to the upstream PIM routers. When a receiver requests traffic
for multicast address G, the closest PIM router sends a graft message upstream to begin receiving
multicast packets.
Syntax
config router multicast
set igmp-state-limit <limit_integer>
set multicast-routing {enable | disable}
set route-limit <limit_integer>
set route-threshold <threshold_integer>
config interface
edit <interface_name>
set cisco-exclude-genid {enable | disable}
set dr-priority <priority_integer>
set hello-holdtime <holdtime_integer>
set hello-interval <hello_integer>
set neighbour-filter <access_list_name>
set passive {enable | disable}
set pim-mode {sparse-mode | dense-mode}
set propagation-delay <delay_integer>
set rp-candidate {enable | disable}
set rp-candidate-group <access_list_name>
set rp-candidate-interval <interval_integer>
set rp-candidate-priority <priority_integer>
set state-refresh-interval <refresh_integer>
set ttl-threshold <ttl_integer>
end
config join-group
edit address <address_ipv4>
end
config igmp
set access-group <access_list_name>
set immediate-leave-group <access_list_name>
set last-member-query-count <count_integer>
set last-member-query-interval <interval_integer>
set query-interval <interval_integer>
set query-max-response-time <time_integer>
set query-timeout <timeout_integer>
set router-alert-check { enable | disable }
set version {1 | 2 | 3}
end
end
config pim-sm-global
set accept-register-list <access_list_name>
set bsr-allow-quick-refresh {enable | disable}
set bsr-candidate {enable | disable}
set bsr-priority <priority_integer>
set bsr-interface <interface_name>
set bsr-hash <hash_integer>
set cisco-register-checksum {enable | disable}
set cisco-register-checksum-group <access_list_name>
set cisco-crp-prefix {enable | disable}
set cisco-ignore-rp-set-priority {enable | disable}
set message-interval <interval_integer>
set register-rate-limit <rate_integer>
set register-rp-reachability {enable | disable}
set register-source {disable | interface | ip-address}
set register-source-interface <interface_name>
set register-source-ip <address_ipv4>
set register-suppression <suppress_integer>
set rp-register-keepalive <keepalive_integer>
set spt-threshold {enable | disable}
set spt-threshold-group <access_list_name>
set ssm {enable | disable}
set ssm-range <access_list_name>
config rp-address
edit <rp_id>
set ip-address <address_ipv4>
set group <access_list_name>
end
end
Note: The end-user multicast client-server applications must be installed and configured to initiate
Internet connections and handle broadband content such as audio/video information.
Client applications send multicast data by registering IP traffic with a PIM-enabled router. An end-user
could type in a class D multicast group address, an alias for the multicast group address, or a call-
conference number to initiate the session. Rather than sending multiple copies of generated IP traffic
to more than one specific IP destination address, PIM-enabled routers encapsulate the data and use
the one multicast group address to forward multicast packets to multiple destinations. Because one
destination address is used, a single stream of data can be sent. Client applications receive multicast
data by requesting that the traffic destined for a certain multicast group address be delivered to them—
end-users may use phone books, a menu of ongoing or future sessions, or some other method through
a user interface to select the address of interest.
A class D address in the 224.0.0.0 to 239.255.255.255 range may be used as a multicast group
address, subject to the rules assigned by the Internet Assigned Numbers Authority (IANA). All class D
addresses must be assigned in advance. Because there is no way to determine in advance if a certain
multicast group address is in use, collisions may occur (to resolve this problem, end-users may switch
to a different multicast address).
config interface
Use this subcommand to change interface-related PIM settings, including the mode of operation
(sparse or dense). Global settings do not override interface-specific settings.
config pim-sm-global
These global settings apply only to sparse mode PIM-enabled interfaces. Global PIM settings do not
override interface-specific PIM settings.
If sparse mode is enabled, you can configure a DR to send multicast packets to a particular RP by
specifying the IP address of the RP through the config rp-address subcommand. The IP address
must be directly accessible to the DR. If multicast packets from more than one multicast group can
pass through the same RP, you can use an access list to specify the associated multicast group
addresses.
Note: To send multicast packets to a particular RP using the config rp-address subcommand, the ip-
address keyword is required. All other keywords are optional.
Example
This example shows how to enable a FortiGate unit to support PIM routing in sparse mode and enable
BSR candidacy on the dmz interface:
config router multicast
set multicast-routing enable
config interface
edit dmz
set pim-mode sparse-mode
end
end
config pim-sm-global
set bsr-candidate enable
set bsr-priority 1
set bsr-interface dmz
set bsr-hash 24
end
This example shows how to enable RP candidacy on the port1 interface for the multicast group
addresses given through an access list named multicast_port1:
config router multicast
set multicast-routing enable
config interface
edit port1
set pim-mode sparse-mode
set rp-candidate enable
set rp-candidate-group multicast_port1
set rp-candidate-priority 15
end
end
History
Related topics
• get router info multicast
• execute mrouter clear
ospf
Use this command to configure Open Shortest Path First (OSPF) protocol settings on the FortiGate
unit. More information on OSPF can be found in RFC 2328.
OSPF is a link state protocol capable of routing larger networks than the simpler distance vector RIP
protocol. An OSPF autonomous system (AS) or routing domain is a group of areas connected to a
backbone area. A router connected to more than one area is an area border router (ABR). Routing
information is contained in a link state database. Routing information is communicated between
routers using link state advertisements (LSAs).
Bi-directional Forwarding Detection (BFD) is a protocol used by BGP and OSPF. It is used to quickly
locate hardware failures in the network. Routers running BFD communicate with each other, and if a
timer runs out on a connection then that router is declared down. BFD then communicates this
information to the routing protocol and the routing information is updated. BFD support was added in
FortiOS v3.0 MR4, and can only be configured through the CLI.
Syntax
config router ospf
set abr-type {cisco | ibm | shortcut | standard}
set auto-cost-ref-bandwidth <mbps_integer>
set bfd {enable | disable | global}
set database-overflow {enable | disable}
set database-overflow-max-lsas <lsas_integer>
set database-overflow-time-to-recover <seconds_integer>
set default-information-metric <metric_integer>
set default-information-metric-type {1 | 2}
set default-information-originate {always | disable | enable}
set default-information-route-map <name_str>
set default-metric <metric_integer>
set distance <distance_integer>
set distance-external <distance_integer>
set distance-inter-area <distance_integer>
set distance-intra-area <distance_integer>
set distribute-list-in <access_list_name>
set passive-interface <name_str>
set restart-mode {graceful-restart | lls | none}
set rfc1583-compatible {enable | disable}
set router-id <address_ipv4>
set spf-timers <delay_integer> <hold_integer>
config area
edit <area_address_ipv4>
set authentication {md5 | none | text}
set default-cost <cost_integer>
set nssa-default-information-originate {enable | disable}
set nssa-default-information-originate-metric <metric>
set nssa-default-information-originate-metric-type {1 | 2}
set nssa-redistribution {enable | disable}
set nssa-translator-role {always | candidate | never}
set shortcut {default | disable | enable}
set stub-type {no-summary | summary}
set type {nssa | regular | stub}
config filter-list
edit <filter-list_id>
Note: The router-id keyword is required. All other keywords are optional.
Example
This example shows how to set the OSPF router ID to 1.1.1.1 for a standard area border router:
config router ospf
set abr-type standard
set router-id 1.1.1.1
end
config area
Use this subcommand to set OSPF area related parameters. Routers in an OSPF autonomous system
(AS) or routing domain are organized into logical groupings called areas. Areas are linked together by
area border routers (ABRs). There must be a backbone area that all areas can connect to. You can
use a virtual link to connect areas that do not have a physical connection to the backbone. Routers
within an OSPF area maintain link state databases for their own areas.
You can use the config filter-list subcommand to control the import and export of LSAs into
and out of an area. See “config filter-list variables” on page 263. You can use access or prefix lists for
OSPF area filter lists. For more information, see “access-list” on page 224 and “prefix-list” on
page 275.
You can use the config range subcommand to summarize routes at an area boundary. If the
network numbers in an area are contiguous, the ABR advertises a summary route that includes all the
networks within the area that are within the specified range. See “config range variables” on page 263.
You can configure a virtual link using the config virtual-link subcommand to connect an area to
the backbone when the area has no direct connection to the backbone (see “config virtual-link
variables” on page 263). A virtual link allows traffic from the area to transit a directly connected area to
reach the backbone. The transit area cannot be a stub area. Virtual links can only be set up between
two ABRs.
Note: If you define a filter list, the direction and list keywords are required. If you define a range, the
prefix keyword is required. If you define a virtual link, the peer keyword is required. All other keywords are
optional.
nssa-default-information- Specify the metric (an integer) for the default route set by the 10
originate-metric <metric> nssa-default-information-originate keyword.
nssa-default-information- Specify the OSPF external metric type for the default route set 2
originate-metric-type by the nssa-default-information-originate
{1 | 2} keyword.
Example
This example shows how to configure a stub area with the id 15.1.1.1, a stub type of summary, a
default cost of 20, and MD5 authentication.
config router ospf
config area
edit 15.1.1.1
set type stub
set stub-type summary
set default-cost 20
set authentication md5
end
end
This example shows how to use a filter list named acc_list1 to filter packets entering area 15.1.1.1.
config router ospf
config area
edit 15.1.1.1
config filter-list
edit 1
set direction in
set list acc_list1
end
end
This example shows how to set the prefix for range 1 of area 15.1.1.1.
config router ospf
config area
edit 15.1.1.1
config range
edit 1
set prefix 1.1.0.0 255.255.0.0
end
end
This example shows how to configure a virtual link.
config router ospf
config area
edit 15.1.1.1
config virtual-link
edit vlnk1
set peer 1.1.1.1
end
end
config distribute-list
Use this subcommand to filter the networks in routing updates using an access list. Routes not
matched by any of the distribution lists will not be advertised.
You must configure the access list that you want the distribution list to use before you configure the
distribution list. To configure an access list, see “access-list” on page 224.
Example
This example shows how to configure distribution list 2 to use an access list named acc_list1 for all
static routes.
config router ospf
config distribute-list
edit 2
set access-list acc_list1
set protocol static
end
end
config neighbor
Use this subcommand to manually configure an OSPF neighbor on non-broadcast networks. OSPF
packets are unicast to the specified neighbor address. You can configure multiple neighbors.
Example
This example shows how to manually add a neighbor.
config router ospf
config neighbor
edit 1
set ip 192.168.21.63
end
end
config network
Use this subcommand to identify the interfaces to include in the specified OSPF area. The prefix
keyword can define one or multiple interfaces.
Example
Use the following command to enable OSPF for the interfaces attached to networks specified by the IP
address 10.0.0.0 and the netmask 255.255.255.0 and to add these interfaces to area 10.1.1.1.
config router ospf
config network
edit 2
set area 10.1.1.1
set prefix 10.0.0.0 255.255.255.0
end
end
config ospf-interface
Use this subcommand to change interface related OSPF settings.
Note: The interface keyword is required. All other keywords are optional.
cost <cost_integer> Specify the cost (metric) of the link. The cost is used for shortest 10
path first calculations.
database-filter-out Enable or disable flooding LSAs out of this interface. disable
{enable | disable}
dead-interval The time, in seconds, to wait for a hello packet before declaring 40
<seconds_integer> a router down. The value of the dead-interval should be
four times the value of the hello-interval.
All routers on the network must use the same value for dead-
interval.
The valid range for seconds_integer is 1 to 65535.
hello-interval The time, in seconds, between hello packets. 10
<seconds_integer> All routers on the network must use the same value for hello-
interval.
The valid range for seconds_integer is 1 to 65535.
Example
This example shows how to assign an OSPF interface configuration named test to the interface
named internal and how to configure text authentication for this interface.
config router ospf
config ospf-interface
edit test
set interface internal
set ip 192.168.20.3
set authentication text
set authentication-key a2b3c4d5e
end
end
config redistribute
Use this subcommand to redistribute routes learned from BGP, RIP, static routes, or a direct
connection to the destination network.
The OSPF redistribution table contains four static entries. You cannot add entries to the table. The
entries are defined as follows:
• bgp—Redistribute routes learned from BGP.
• connected—Redistribute routes learned from a direct connection to the destination network.
• static—Redistribute the static routes defined in the FortiGate routing table.
• rip—Redistribute routes learned from RIP.
When you enter the subcommand, end the command with one of the four static entry names (that is,
config redistribute {bgp | connected | static | rip}).
Example
This example shows how to enable route redistribution from RIP, using a metric of 3 and a route map
named rtmp2.
config router ospf
config redistribute rip
set metric 3
set routemap rtmp2
set status enable
end
config summary-address
Use this subcommand to summarize external routes for redistribution into OSPF. This command works
only for summarizing external routes on an Autonomous System Boundary Router (ASBR). For
information on summarization between areas, see “config range variables” on page 263. By replacing
the LSAs for each route with one aggregate route, you reduce the size of the OSPF link-state
database.
Note: The prefix keyword is required. All other keywords are optional.
Example
This example shows how to summarize routes using the prefix 10.0.0.0 255.0.0.0.
config router ospf
config summary-address
edit 5
set prefix 10.0.0.0 255.0.0.0
end
end
History
Related topics
• router access-list
• get router info ospf
• get router info protocols
• get router info routing-table
• router prefix-list
• router route-map
policy
Use this command to add, move, edit or delete a route policy. When you create a policy route, any
packets that match the policy are forwarded to the IP address of the next-hop gateway through the
specified outbound interface.
You can configure the FortiGate unit to route packets based on:
• a source address
• a protocol, service type, or port range
• the inbound interface
When the FortiGate unit receives a packet, it starts at the top of the policy routing list and attempts to
match the packet with a policy in ascending order. If no packets match the policy route, the FortiGate
unit routes the packet using the routing table. Route policies are processed before static routing. You
can change the order of policy routes using the move command. See “config branch” on page 34.
Note: For static routing, any number of static routes can be defined for the same destination. When multiple
routes for the same destination exist, the FortiGate unit chooses the route having the lowest administrative
distance. Route redundancy is not available for policy routing: any packets that match a route policy are forwarded
according to the route specified in the policy.
Syntax
config router policy
move <seq-num1> {before | after} <seq-num2>
edit <policy_integer>
set dst <dest-address_ipv4mask>
set end-port <port_integer>
set gateway <address_ipv4>
set input-device <interface-name_str>
set output-device <interface-name_str>
set protocol <protocol_integer>
set src <source-address_ipv4mask>
set start-port <port_integer>
end
Note: The input-device keyword is required. All other keywords are optional.
Example
If a FortiGate unit provides Internet access for multiple internal subnets, you can use policy routing to
control the route that traffic from each network takes to the Internet. For example, if the internal
network includes the subnets 192.168.10.0 and 192.168.20.0 you can enter the following route
policies:
• Enter the following command to route traffic from the 192.168.10.0 subnet to the
100.100.100.0 subnet. Force the packets to the next hop gateway at IP address 1.1.1.1
through the interface named external.
config router policy
edit 1
set input-device internal
set src 192.168.10.0 255.255.255.0
set dst 100.100.100.0 255.255.255.0
set output-device external
set gateway 1.1.1.1
end
• Enter the following command to route traffic from the 192.168.20.0 subnet to the 200.200.200.0
subnet. Force the packets to the next hop gateway at IP address 2.2.2.1 through the interface
named external.
config router policy
edit 2
set input-device internal
set src 192.168.20.0 255.255.255.0
set dst 200.200.200.0 255.255.255.0
set output-device external
set gateway 2.2.2.1
end
• Enter the following command to direct all HTTP traffic using port 80 to the next hop gateway at IP
address 1.1.1.1.
config router policy
edit 1
set input-device internal
set src 0.0.0.0 0.0.0.0
set dst 0.0.0.0 0.0.0.0
History
Related topics
• router static
prefix-list
Use this command to add, edit, or delete prefix lists. A prefix list is an enhanced version of an access
list that allows you to control the length of the prefix netmask.
Each rule in a prefix list consists of a prefix (IP address and netmask), the action to take for this prefix
(permit or deny), and maximum and minimum prefix length settings.
The FortiGate unit attempts to match a packet against the rules in a prefix list starting at the top of the
list. If it finds a match for the prefix it takes the action specified for that prefix. If no match is found the
default action is deny. A prefix-list should be used to match the default route 0.0.0.0/0.
For a prefix list to take effect, it must be called by another FortiGate routing feature such as RIP or
OSPF.
Syntax
config router prefix-list
edit <prefix_list_name>
set comments <string>
config rule
edit <prefix_rule_id>
set action {deny | permit}
set ge <length_integer>
set le <length_integer>
set prefix {<address_ipv4mask> | any}
end
end
Note: The action and prefix keywords are required. All other keywords are optional.
Examples
This example shows how to add a prefix list named prf_list1 with three rules. The first rule permits
subnets that match prefix lengths between 26 and 30 for the prefix 192.168.100.0
255.255.255.0. The second rule denies subnets that match the prefix lengths between 20 and 25
for the prefix 10.1.0.0 255.255.0.0. The third rule denies all other traffic.
config router prefix-list
edit prf_list1
config rule
edit 1
set prefix 192.168.100.0 255.255.255.0
set action permit
set ge 26
set le 30
next
edit 2
set prefix 10.1.0.0 255.255.0.0
set action deny
set ge 20
set le 25
next
edit 3
set prefix any
set action deny
end
end
The following example shows how to create a prefix-list that will drop the default route but allow all
other prefixes to be passed. The first rule matches the default route only and is set to deny, the second
rule will match all other prefixes and allow them to be passed.
config router prefix-list
edit "drop_default"
config rule
edit 1
set action deny
set prefix 0.0.0.0 0.0.0.0
unset ge
unset le
next
edit 2
set prefix any
unset ge
unset le
next
end
next
end
History
Related topics
• router access-list
• router rip
rip
Use this command to configure the Routing Information Protocol (RIP) on the FortiGate unit. RIP is a
distance-vector routing protocol intended for small, relatively homogeneous, networks. RIP uses hop
count as its routing metric. Each network is usually counted as one hop. The network diameter is
limited to 15 hops with 16 hops.
Syntax
config router rip
set default-information-originate {enable | disable}
set default-metric <metric_integer>
set garbage-timer <timer_integer>
set passive-interface <name_str>
set timeout-timer <timer_integer>
set update-timer <timer_integer>
set version {1 2}
config distance
edit <distance_id>
set access-list <name_str>
set distance <distance_integer>
set prefix <address_ipv4mask>
end
config distribute-list
edit <distribute_list_id>
set direction {in | out}
set interface <name_str>
set listname <access/prefix-listname_str>
set status {enable | disable}
end
config interface
edit <interface_name>
set auth-keychain <name_str>
set auth-mode {none | text | md5}
set auth-string <password_str>
set receive-version {1 2}
set send-version {1 2}
set send-version1-compatible {enable | disable}
set split-horizon {poisoned | regular}
set split-horizon-status {enable | disable}
end
config neighbor
edit <neighbor_id>
set ip <address_ipv4>
end
config network
edit <network_id>
set prefix <address_ipv4mask>
end
config offset-list
edit <offset_list_id>
set access-list <name_str>
set direction {in | out}
set interface <name_str>
Example
This example shows how to enable the advertising of a default static route into RIP, enable the sending
and receiving of RIP version 1 packets, and set the default metric to 5:
config router rip
set default-information-originate enable
set version 1
set default-metric 5
end
config distance
Use this subcommand to specify an administrative distance. When different routing protocols provide
multiple routes to the same destination, the administrative distance sets the priority of those routes.
The lowest administrative distance indicates the preferred route. If you specify a prefix, RIP uses the
specified distance when the source IP address of a packet matches the prefix.
Note: The distance keyword is required. All other keywords are optional.
Example
This example shows how to change the administrative distance to 10.
config router rip
config distance
edit 1
set distance 10
end
end
config distribute-list
Use this subcommand to filter incoming or outgoing updates using an access list or a prefix list. If you
do not specify an interface the filter will be applied to all interfaces. You must configure the access list
or prefix list that you want the distribution list to use before you configure the distribution list. For more
information on configuring access lists and prefix lists, see “access-list” on page 224 and “prefix-list”
on page 275.
Note: The direction and listname keywords are required. All other keywords are optional.
Example
This example shows how to configure and enable distribution list 2 to use an access list named
acc_list1 on incoming updates on the external interface.
config router rip
config distribute-list
edit 2
set direction in
set interface external
set listname acc_list1
set status enable
end
end
config interface
Use this subcommand to configure RIP version 2 authentication, RIP version send and receive for the
specified interface, and to configure and enable split horizon.
Authentication is only available for RIP version 2 packets sent and received by an interface. You must
set auth-mode to none when receive-version or send-version are set to 1 or 1 2 (both are
set to 1 by default).
Example
This example shows how to configure the external interface to send and receive RIP version 2, to use
MD5 authentication, and to use a key chain called test1.
config router rip
config interface
edit external
set receive-version 2
set send-version 2
set auth-mode md5
set auth-keychain test1
end
end
config neighbor
Use this subcommand to enable RIP to send unicast routing updates to the router at the specified
address. You can use the neighbor subcommand and “passive-interface <name_str>” on page 279
to allow RIP to send unicast updates to the specified neighbor while blocking broadcast updates on the
specified interface. You can configure multiple neighbors.
Example
This example shows how to specify that the router at 192.168.21.20 is a neighbor.
config router rip
config neighbor
edit 1
set ip 192.168.21.20
end
end
config network
Use this subcommand to identify the networks for which to send and receive RIP updates. If a network
is not specified, interfaces in that network will not be advertised in RIP updates.
Example
Use the following command to enable RIP for the interfaces attached to networks specified by the IP
address 10.0.0.0 and the netmask 255.255.255.0.
config router rip
config network
edit 2
set prefix 10.0.0.0 255.255.255.0
end
end
config offset-list
Use this subcommand to add the specified offset to the metric (hop count) of a route from the offset list.
Note: The access-list, direction, and offset keywords are required. All other keywords are
optional.
Example
This example shows how to configure and enable offset list number 5 that adds a metric of 3 to
incoming routes that match the access list named acc_list1 on the external interface.
config router rip
config offset-list
edit 5
set access-list acc_list1
set direction in
set interface external
set offset 3
set status enable
end
end
config redistribute
Use this subcommand to redistribute routes learned from OSPF, BGP, static routes, or a direct
connection to the destination network.
The RIP redistribution table contains four static entries. You cannot add entries to the table. The entries
are defined as follows:
• bgp—Redistribute routes learned from BGP.
• connected—Redistribute routes learned from a direct connection to the destination network.
• ospf—Redistribute routes learned from OSPF.
• static—Redistribute the static routes defined in the FortiGate routing table.
When you enter the subcommand, end the command with one of the four static entry names (that is,
config redistribute {bgp | connected | ospf | static}).
Example
This example shows how to enable route redistribution from OSPF, using a metric of 3 and a route
map named rtmp2.
config router rip
config redistribute ospf
set metric 3
set routemap rtmp2
set status enable
end
History
Related topics
• router access-list
• router key-chain
• router prefix-list
• router route-map
• get router info protocols
• get router info rip
• get router info routing-table
route-map
Use this command to add, edit, or delete route maps. To use the command to limit the number of
received or advertised BGP route and routing updates using route maps, see “Using route maps with
BGP” on page 288.
Route maps provide a way for the FortiGate unit to evaluate optimum routes for forwarding packets or
suppressing the routing of packets to particular destinations. Compared to access lists, route maps
support enhanced packet-matching criteria. In addition, route maps can be configured to permit or
deny the addition of routes to the FortiGate routing table and make changes to routing information
dynamically as defined through route-map rules.
The FortiGate unit compares the rules in a route map to the attributes of a route. The rules are
examined in ascending order until one or more of the rules in the route map are found to match one or
more of the route attributes:
• When a single matching match-* rule is found, changes to the routing information are made as
defined through the rule’s set-ip-nexthop, set-metric, set-metric-type, and/or set-
tag settings.
• If no matching rule is found, no changes are made to the routing information.
• When more than one match-* rule is defined, all of the defined match-* rules must evaluate to
TRUE or the routing information is not changed.
• If no match-* rules are defined, the FortiGate unit makes changes to the routing information only
when all of the default match-* rules happen to match the attributes of the route.
The default rule in the route map (which the FortiGate unit applies last) denies all routes. For a route
map to take effect, it must be called by a FortiGate routing process.
Syntax
config router route-map
edit <route_map_name>
config rule
edit <route_map_rule_id>
set action {deny | permit}
set match-interface <name_str>
set match-ip-address <access/prefix-listname_str>
set match-ip-nexthop <access/prefix-listname_str>
set match-metric <metric_integer>
set match-route-type {1 | 2}
set match-tag <tag_integer>
set set-ip-nexthop <address_ipv4>
set set-metric <metric_integer>
set set-metric-type {1 | 2}
set set-tag <tag_integer>
end
end
Example
This example shows how to add a route map list named rtmp2 with two rules. The first rule denies
routes that match the IP addresses in an access list named acc_list2. The second rule permits
routes that match a metric of 2 and changes the metric to 4.
config router route-map
edit rtmp2
config rule
edit 1
set match-ip-address acc_list2
set action deny
next
edit 2
set match-metric 2
set action permit
set set-metric 4
end
end
Note: When you specify a route map for the dampening-route-map value through the config router bgp
command (see “dampening-route-map <routemap-name_str>” on page 233), the FortiGate unit ignores
global dampening settings. You cannot set global dampening settings for the FortiGate unit and then override
those values through a route map.
Syntax
config router route-map
edit <route_map_name>
config rule
edit <route_map_rule_id>
set match-as-path <aspath-list-name_str>
set match-community <community-list-name_str>
set match-community-exact {enable | disable}
set match-origin {egp | igp | incomplete | none}
set set-aggregator-as <id_integer>
set set-aggregator-ip <address_ipv4>
set set-aspath <id_integer> <id_integer> <id_integer> ...
set set-atomic-aggregate {enable | disable}
set set-community-delete <community-list-name_str>
set set-community <criteria>
set set-community-additive {enable | disable}
set set-dampening-reachability-half-life <minutes>
set set-dampening-reuse <reuse_integer>
set set-dampening-suppress <suppress_integer>
set set-dampening-max-suppress <minutes>
set set-dampening-unreachability-half-life <minutes>
set set-extcommunity-rt <AA:NN> <AA:NN> <AA:NN> ...
set set-extcommunity-soo <AA:NN> <AA:NN> <AA:NN> ...
set set-local-preference <preference_integer>
set set-originator-id <address_ipv4>
set set-origin {egp | igp | incomplete | none}
set set-weight <weight_integer>
end
Example
This example shows how to create a route map named BGP_rtmp2. The route map contains two
rules. The first rule permits operations on routes that match the IP addresses in an access list named
acc_list2. The second rule permits operations on routes according to a community list named
com_list3.
config router route-map
edit BGP_rtmp2
config rule
edit 1
set match-ip-address acc_list2
set action permit
next
edit 2
set match-community com_list3
set action permit
end
end
History
FortiOS v2.80 New.
FortiOS v3.0 Added support for BGP.
Related topics
• router access-list
• router prefix-list
• router rip
• router aspath-list
• router bgp
• router community-list
• router key-chain
static
Use this command to add, edit, or delete static routes for IPv4 traffic. For IPv6 traffic, use the static6
command. You add static routes to control traffic exiting the FortiGate unit. You configure routes by
specifying destination IP addresses and network masks and adding gateways for these destination
addresses. Gateways are the next-hop routers to which traffic that matches the destination addresses
in the route are forwarded.
You can adjust the administrative distance of a route to indicate preference when more than one route
to the same destination is available. The lower the administrative distance, the greater the preferability
of the route. If the routing table contains several entries that point to the same destination (the entries
may have different gateways or interface associations), the FortiGate unit compares the administrative
distances of those entries, selects the entries having the lowest distances, and installs them as routes
in the FortiGate forwarding table. Any ties are resolved by comparing the routes’ priority, with lowest
priority being preferred. As a result, the FortiGate forwarding table only contains routes having the
lowest distances to every possible destination.
After the FortiGate unit selects static routes for the forwarding table based on their administrative
distances, the sequence numbers of those routes determines routing priority. When two routes to the
same destination exist in the forwarding table, the FortiGate unit selects the route having the lowest
sequence number.
Syntax
config router static
edit <sequence_number>
set blackhole {enable | disable}
set device <interface_name>
set distance <distance>
set dst <destination-address_ipv4mask>
set dynamic-gateway {enable | disable}
set gateway <gateway-address_ipv4>
set priority <integer>
end
Note: The dst and gateway keywords are required when blackhole is disabled. When blackhole is
enabled, the dst keyword is required. All other keywords are optional.
Example
This example shows how to add a static route that has the sequence number 2.
config router static
edit 2
set dev internal
set dst 192.168.22.0 255.255.255.0
set gateway 192.168.22.44
end
This example shows how to add a static route for a dynamic modem interface with a priority of 1.
config route static
edit 3
set dev modem
set dynamic-gateway enable
set dst 10.0.0.7 255.255.255.0
set priority 1
end
History
Related topics
• system interface
• get router info routing-table
static6
Use this command to add, edit, or delete static routes for IPv6 traffic. You add static routes to specify
the destination of traffic exiting the FortiGate unit. You configure routes by adding destination IP
addresses and network masks and adding gateways for these destination addresses. The gateways
are the next-hop routers to which traffic that matches the destination addresses in the route are
forwarded.
Note: You can configure static routes for IPv6 traffic on FortiGate units that run in NAT/Route mode.
Syntax
config router static6
edit <sequence_number>
set device <interface_name>
set dst <destination-address_ipv6mask>
set gateway <gateway-address_ipv6>
end
Example
This example shows how to add an IPv6 static route that has the sequence number 2.
config router static6
edit 2
set dev internal
set dst 12AB:0:0:CD30::/60
set gateway 12AB:0:0:CD30:123:4567:89AB:CDEF
end
History
Related topics
• system interface
• get router info routing-table
spamfilter
Use spamfilter commands to create a banned word list, configure filters based on email addresses, ip
addresses, and MIME headers, and to configure the FortiGuard-Antispam service.
This chapter contains the following sections:
bword
emailbwl
fortishield
ipbwl
iptrust
mheader
options
DNSBL
bword
Use this command to add or edit and configure options for the spam filter banned word list.
The FortiGate spam filters are applied in the following order:
For SMTP
1 IP address BWL check - Last hop IP
2 DNSBL & ORDBL check, IP address FortiGuard check, HELO DNS lookup
3 E-mail address BWL check
4 MIME headers check
5 IP address BWL check (for IPs extracted from “Received” headers)
6 Return e-mail DNS check, FortiGuard Antispam check (for IPs extracted from “Received” headers, and
URLs in email content)
7 Banned word check
Note: Perl regular expression patterns are case sensitive for Spam Filter banned words. To make a word or
phrase case insensitive, use the regular expression /i. For example, /bad language/i blocks all instances of
bad language regardless of case. Wildcard patterns are not case sensitive.
Syntax
config spamfilter bword
edit <banned_word_list_integer>
set name <banned_word_list>
set comment <banned_word_list_comment>
config entries
edit <banned_word_integer>
set action {clear | spam}
set language {french | japanese | korean | simch | thai | trach |
western}
set pattern <banned_word_str>
set pattern-type {regexp | wildcard}
set score <integer_value>
set status {enable | disable}
set where {all | body | subject}
end
Keywords and variables Description Default
<banned_word_list_integer> A unique number to identify the banned word list.
<banned_word_list> The name of the banned word list.
<banned_word_list_comment> The comment attached to the banned word list.
<banned_word_integer> A unique number to identify the banned word or pattern.
action {clear | spam} Enter clear to allow the email. Enter spam to apply the spam spam
action configured in the protection profile.
language {french | Enter the language character set used for the banned word or western
japanese | korean | simch phrase. Choose from French, Japanese, Korean, Simplified
| thai | trach | western} Chinese, Thai, Traditional Chinese, or Western.
pattern <banned_word_str> Enter the banned word or phrase pattern using regular No default.
expressions or wildcards.
pattern-type {regexp | Enter the pattern type for the banned word (pattern). Choose wildcard
wildcard} from regular expressions or wildcard.
score <integer_value> A numerical weighting applied to the banned word. The score 10
values of all the matching words appearing in an email
message are added, and if the total is greater than the
spamwordthreshold value set in the protection profile, the
message is processed according to the spam action setting in
the protection profile. The score for a banned word is counted
once even if the word appears multiple times in an email
message.
status {enable | disable} Enable or disable scanning email for each banned word. enable
where {all | body | Enter where in the email to search for the banned word or all
subject} phrase.
History
Related topics
• spamfilter emailbwl
• spamfilter fortishield
• spamfilter ipbwl
• spamfilter iptrust
• spamfilter mheader
• spamfilter options
• spamfilter DNSBL
emailbwl
Use this command to filter email based on the sender’s email address or address pattern.
The FortiGate spam filters are applied in the following order:
For SMTP
1 IP address BWL check - Last hop IP
2 DNSBL & ORDBL check, IP address FortiGuard check, HELO DNS lookup
3 E-mail address BWL check
4 MIME headers check
5 IP address BWL check (for IPs extracted from “Received” headers)
6 Return e-mail DNS check, FortiGuard Antispam check (for IPs extracted from “Received” headers, and
URLs in email content)
7 Banned word check
Syntax
config spamfilter emailbwl
edit <emailbwl_list_integer>
set name <emailbwl_list>
set comment <emailbwl_list_comment>
config entries
edit <email_address_integer>
set action {clear | spam}
set email-pattern <email_address_str>
set pattern-type {regexp | wildcard}
set status {enable | disable}
end
History
Related topics
• spamfilter bword
• spamfilter fortishield
• spamfilter ipbwl
• spamfilter iptrust
• spamfilter mheader
• spamfilter options
• spamfilter DNSBL
fortishield
Use this command to configure the settings for the FortiGuard-Antispam Service.
The FortiGate spam filters are applied in the following order:
For SMTP
1 IP address BWL check - Last hop IP
2 DNSBL & ORDBL check, IP address FortiGuard check, HELO DNS lookup
3 E-mail address BWL check
4 MIME headers check
5 IP address BWL check (for IPs extracted from “Received” headers)
6 Return e-mail DNS check, FortiGuard Antispam check (for IPs extracted from “Received” headers, and
URLs in email content)
7 Banned word check
Both FortiGuard-Antispam Service antispam processes are completely automated and configured by
Fortinet. With constant monitoring and dynamic updates, FortiGuard-Antispam Service is always
current. Enable or disable FortiGuard-Antispam Service in a firewall protection profile.
Syntax
config spamfilter fortishield
set spam-submit-force {enable | disable}
set spam-submit-srv <url_str>
set spam-submit-txt2htm {enable | disable}
end
Keywords and variables Description Default
spam-submit-force {enable Enable or disable force insertion of a new mime entity for the enable
| disable} submission text.
spam-submit-srv <url_str> The host name of the FortiGuard-Antispam Service server. www.nospa
The FortiGate unit comes preconfigured with the host name. mmer.net
Use this command only to change the host name.
spam-submit-txt2htm Enable or disable converting text email to HTML. enable
{enable | disable}
History
Related topics
• spamfilter bword
• spamfilter emailbwl
• spamfilter ipbwl
• spamfilter iptrust
• spamfilter mheader
• spamfilter options
• spamfilter DNSBL
ipbwl
Use this command to filter email based on the IP or subnet address.
The FortiGate spam filters are generally applied in the following order:
For SMTP
1 IP address BWL check - Last hop IP
2 DNSBL & ORDBL check, IP address FortiGuard check, HELO DNS lookup
3 E-mail address BWL check
4 MIME headers check
5 IP address BWL check (for IPs extracted from “Received” headers)
6 Return e-mail DNS check, FortiGuard Antispam check (for IPs extracted from “Received” headers, and
URLs in email content)
7 Banned word check
Syntax
config spamfilter ipbwl
edit <ipbwl_list_integer>
set name <ipbwl_list>
set comment <ipbwl_list_comment>
config entries
edit <address_ipv4_integer>
set action {clear | reject | spam}
set ip/subnet {<address_ipv4> |
<address_ipv4>/<address_ipv4mask>}
set status {enable | disable}
end
status {enable | disable} Enable or disable scanning email for each IP address. enable
History
FortiOS v2.80 New.
FortiOS v3.0 Added multiple-list capability for models 800 and above.
FortiOS v3.0 MR4 All models have the same CLI syntax now.
Related topics
• spamfilter bword
• spamfilter emailbwl
• spamfilter fortishield
• spamfilter iptrust
• spamfilter mheader
• spamfilter options
• spamfilter DNSBL
iptrust
Use this command to add an entry to a list of trusted IP addresses.
If the FortiGate unit sits behind a company’s Mail Transfer Units, it may be unnecessary to check email
IP addresses because they are internal and trusted. The only IP addresses that need to be checked
are those from outside of the company. In some cases, external IP addresses may be added to the list
if it is known that they are not sources of spam.
Syntax
config spamfilter iptrust
edit <iptrust_list_integer>
set name <iptrust_list>
set comment <iptrust_list_comment>
config entries
edit <address_integer>
set ip/subnet {<address_ipv4> |
<address_ipv4>/<address_ipv4mask>}
set status {enable | disable}
end
Keywords and variables Description Default
<iptrust_list_integer> A unique number to identify the IP trust list.
<iptrust_list> The name of the IP trust list.
<iptrust_list_comment> The comment attached to the IP trust list.
<address_integer> A unique number to identify the address.
ip/subnet {<address_ipv4> | The trusted IP address. A subnet mask in the format No default
<address_ipv4>/<address_ip 192.168.10.23/255.255.255.0 or 192.168.10.23/24 can
v4mask>} also be included.
History
Related topics
• spamfilter bword
• spamfilter emailbwl
• spamfilter fortishield
• spamfilter ipbwl
• spamfilter mheader
• spamfilter options
• spamfilter DNSBL
mheader
Use this command to configure email filtering based on the MIME header. MIME header settings are
configured with this command but MIME header filtering is enabled within each protection profile.
The FortiGate spam filters are applied in the following order:
For SMTP
1 IP address BWL check - Last hop IP
2 DNSBL & ORDBL check, IP address FortiGuard check, HELO DNS lookup
3 E-mail address BWL check
4 MIME headers check
5 IP address BWL check (for IPs extracted from “Received” headers)
6 Return e-mail DNS check, FortiGuard Antispam check (for IPs extracted from “Received” headers, and
URLs in email content)
7 Banned word check
Syntax
config spamfilter mheader
edit <mime_list_integer>
set name <mime_list>
set comment <mime_list_comment>
config entries
edit <mime_integer>
set action {clear | spam}
set fieldbody <mime_str>
set fieldname <mime_str>
set pattern-type {regexp | wildcard}
set status {enable | disable}
end
end
Keywords and variables Description Default
<mime_list_integer> A unique number to identify the MIME header list.
<mime_list> The name of the MIME header list.
<mime_list_comment> The comment attached to the MIME header list.
<mime_integer> A unique number to identify the MIME header.
action {clear | spam} Enter clear to exempt the email from the rest of the spam spam
filters. Enter spam to apply the spam action configured in the
protection profile.
fieldbody <mime_str> Enter the MIME header (key, header field body) using wildcards No default.
or Perl regular expressions.
fieldname <mime_str> Enter the MIME header value (header field name) using No default.
wildcards or Perl regular expressions. Do not include a trailing
colon.
pattern-type Enter the pattern-type for the MIME header. Choose from wildcard
{regexp | wildcard} wildcards or Perl regular expressions.
status Enable or disable scanning email headers for the MIME header enable
{enable | disable} and header value defined in the fieldbody and fieldname
strings.
History
Related topics
• spamfilter bword
• spamfilter fortishield
• spamfilter fortishield
• spamfilter ipbwl
• spamfilter iptrust
• spamfilter options
• spamfilter DNSBL
options
Use this command to set the spamfilter dns query timeout.
Syntax
config spamfilter options
set dns-timeout <timeout_integer>
end
Keywords and variables Description Default
dns-timeout Set the DNS query timeout in the range 1 to 30 seconds. 7
<timeout_integer>
Example
This example shows how to set the dns timeout.
config spamfilter options
set dns-timeout 15
end
History
Related topics
• spamfilter bword
• spamfilter emailbwl
• spamfilter fortishield
• spamfilter ipbwl
• spamfilter iptrust
• spamfilter mheader
• spamfilter DNSBL
DNSBL
Use this command to configure email filtering using DNS-based Blackhole List (DNSBL) or Open
Relay Database List (ORDBL) servers. DSNBL and ORDBL settings are configured with this
command but DSNBL and ORDBL filtering is enabled within each protection profile.
The FortiGate spam filters are generally applied in the following order:
For SMTP
1 IP address BWL check - Last hop IP
2 DNSBL & ORDBL check, IP address FortiGuard check, HELO DNS lookup
3 E-mail address BWL check
4 MIME headers check
5 IP address BWL check (for IPs extracted from “Received” headers)
6 Return e-mail DNS check, FortiGuard Antispam check (for IPs extracted from “Received” headers, and
URLs in email content)
7 Banned word check
Note: Because the FortiGate unit uses the server domain name to connect to the DNSBL or ORDBL server, it
must be able to look up this name on the DNS server. For information on configuring DNS, see “system dns” on
page 339.
Syntax
config spamfilter DNSBL
edit <DNSBL_list_integer>
set name <DNSBL_list>
set comment <DNSBL_list_comment>
config entries
edit <server_integer>
set action {reject | spam}
set server <name_str>
set status {enable | disable}
end
Keywords and variables Description Default
<DNSBL_list_integer> A unique number to identify the DNSBL list.
<DNSBL_list> The name of the DNSBL header list.
<DNSBL_list_comment> The comment attached to the DNSBL header list.
<server_integer> A unique number to identify the DNSBL server.
action {reject | spam} Enter reject to stop any further processing of the current spam
session and to drop an incoming connection at once. Enter
spam to identify email as spam.
server <name_str> Enter the domain name of a Real-time Blackhole List server or No default.
an Open Relay Database server.
status {enable | disable} Enable or disable querying the Real-time Blackhole List server enable
or Open Relay Database server named in the server string.
History
Related topics
• spamfilter bword
• spamfilter emailbwl
• spamfilter fortishield
• spamfilter ipbwl
• spamfilter iptrust
• spamfilter mheader
• spamfilter options
• system dns
system
Use system commands to configure options related to the overall operation of the FortiGate unit,
including:
• Administrative access
• Automatic updating of antivirus and attack definitions
• High availability (HA)
• Network interfaces
• Replacement messages
• VLANs and virtual domains
This chapter contains the following sections:
accprofile
Use this command to add access profiles that control administrator access to FortiGate features. Each
FortiGate administrator account must include an access profile. You can create access profiles that
deny access, allow read only, or allow both read and write access to FortiGate features.
You cannot delete or modify the super_admin access profile, but you can use the super_admin profile
with more than one administrator account.
Syntax
config system accprofile
edit <profile-name>
set <access-group> <access-level>
system config fwgrp-permission
set address read-write
end
end
end
Examples
Use the following commands to add a new access profile named policy_profile that allows read
and write access to firewall policies and that denies access to all other FortiGate features. An
administrator account with this access profile can view and edit firewall policies, but cannot view or
change any other FortiGate settings or features.
config system accprofile
edit policy_profile
set fwgrp read-write
end
Use the following commands to add a new access profile named policy_profile_cu that allows
customized read and write access to firewall policies and that denies access to all other FortiGate
features. An administrator account with this access profile can view and edit the selected custom
firewall permissions (address, policy, and schedule), but cannot view or change any other
FortiGate settings or features.
config system accprofile
edit policy_profile_cu
set fwgrp custom
config fwgrp-permission
set address read-write
set policy read-write
set schedule read-write
end
end
end
History
Related topics
• system admin
admin
Use this command to add, edit, and delete administrator accounts. Administrators can control what
data modules appear in the FortiGate unit system dashboard by using the config system admin
command. Administrators must have read and write privileges to make dashboard GUI modifications.
Use the default admin account or an account with system configuration read and write privileges to add
new administrator accounts and control their permission levels. Each administrator account except the
default admin must include an access profile. You cannot delete the default super admin account or
change the access profile (super_admin). In addition, there is also an access profile that allows read-
only super admin privileges, super_admin_readonly. The super_admin_readonly profile cannot be
deleted or changed, similar to the super_admin profile. This read-only super-admin may be used in a
situation where it is necessary to troubleshoot a customer configuration without making changes.
You can authenticate administrators using a password stored on the FortiGate unit or you can use a
RADIUS server to perform authentication. When you use RADIUS authentication, you can
authenticate specific administrators or you can allow any account on the RADIUS server to access the
FortiGate unit as an administrator.
Note: For users with super_admin access profile, you can reset the password in the CLI.
For a user ITAdmin with the access profile super_admin, to set the password to 123456:
config sys admin
edit ITAdmin
set password 123456
end
For a user ITAdmin with the access profile super_admin, to reset the password from 123456 to the
default ‘empty’ or ‘null’:
config sys admin
edit ITAdmin
unset password 123456
end
If you type ‘set password ?’ in the CLI, you will have to enter the new password and the old password in
order for the change to be effective. In this case, you will NOT be able to reset the password to ‘empty’ or
‘null’.
You can configure an administrator to only be allowed to log in at certain times. The default setting
allows administrators to log in any time.
For detailed information about configuring administrators, see the System Administration chapter of
the FortiGate Administration Guide for your model.
Note: You cannot change the management VDOM if any administrators are using RADIUS authentication.
Syntax
config system admin
edit <name_str>
set accprofile <profile-name>
set comments <comments_string>
set password <admin_password>
set peer-auth <peer_auth>
set peer-group <peer-grp>
set remote-auth {enable | disable}
set remote-group <name>
set schedule <schedule-name>
set ssh-public-key1 "<key-type> <key-value>"
Example
Use the following commands to add a new administrator account named new_admin with the
password set to p8ssw0rd and that includes an access profile named policy_profile. It is
accessible on the main_office VDOM. Administrators that log in to this account will have
administrator access to the FortiGate unit from any IP address. The dashboard setting alert >
show-system-restart is enabled and displays in column 2 of the FortiOS GUI.
config system admin
edit new_admin
set password p8ssw0rd
set accprofile policy_profile
set vdom main_office
config dashboard
edit alert
set column 2
set status open
show-system-restart enable
end
end
end
History
Related topics
• system accprofile
alertemail
Use this command to configure the FortiGate unit to access an SMTP server to send alert emails. This
command is global in scope.
To configure alertemail settings you must first configure the server, and enable authenticate. Then you
will be able to see all the keywords.
Note: You must configure the server setting under config system alertemail before the
commands under config alertemail become accessible. For more information on config
alertemail, see “alertemail” on page 63.
Syntax
config system alertemail
set authenticate {disable | enable}
set password <password-str>
set server {<name-str> | <address-ipv4>}
set username <username-str>
end
Keywords and variables Description Default
authenticate Enable SMTP authentication if the FortiGate unit is disable
{disable | enable} required to authenticate before using the SMTP server.
This variable is accessible only if server is defined.
password <password-str> Enter the password that the FortiGate unit needs to No
access the SMTP server. default.
This variable is accessible only if authenticate is
enabled and server is defined.
server Enter the name of the SMTP server, in the format No
{<name-str> | <address-ipv4>} smtp.domain.com, to which the FortiGate unit should default.
send email. Alternately, the IP address of the SMTP
server can be entered. The SMTP server can be located
on any network connected to the FortiGate unit.
username <username-str> Enter the user name for the SMTP server that the No
FortiGate unit uses to send alert emails. default.
This variable is accessible only if authenticate is
enabled and server is defined.
Examples
This example shows how to configure the FortiGate unit to send alert emails using the SMTP server
smtp.ourcompany.com. The order of the keywords is important. The server must be defined first.
Then authentication needs to be next. The FortiGate unit uses the user name admin2 and the
password h8rdt0g3uss to connect to the SMTP server.
config system alertemail
set server smtp.ourcompany.com
set authenticate enable
set password h8rdt0g3uss
set username admin2
end
History
arp-table
Use this command to manually configure the ARP table entries on the FortiGate unit. You can only
access the arp-table values from the CLI.
This command is not available when VDOMs are enabled or in TP mode.
Syntax
config system arp-table
edit <table_value>
set interface <port>
set ip <address-ipv4>
set mac <mac_address>
next
end
Keywords and variables Description Default
interface <port> Enter the interface this ARP entry is associated with No
default
ip <address-ipv4> Enter the IP address of the ARP entry. No
default.
mac <mac_address> Enter the MAC address of the device entered in the table, No
in the form of xx:xx:xx:xx:xx:xx. default.
Examples
This example adds an entry to the arp-table with a MAC address of 00-09-0f-69-00-7c and an IP
address of 172.20.120.161 on the port2 interface.
config system arp-table
edit 3
set interface port2
set ip 172.20.120.161
set mac 00:09:0f:69:00:7c
next
end
History
Related topics
• get system arp
auto-install
Use this command to configure automatic installation of firmware and system configuration from a
USB disk when the FortiGate unit restarts. This command is available only on units that have a USB
disk connection.
If you set both configuration and firmware image update, both occur on the same reboot. The
FortiGate unit will not reload a firmware or configuration file that is already loaded.
FortiUSB and generic USB disks are supported. However, the USB disk must be formatted as a FAT16
drive. No other partition type is supported.
To format your USB Disk when its connected to your FortiGate unit, at the CLI prompt type “exe usb-
disk format”.
To format your USB disk when it is connected to a Windows system, at the command prompt type
“format <drive_letter>: /FS:FAT /V:<drive_label>” where <drive_letter> is the
letter of the connected USB drive you want to format, and <drive_label> is the name you want to
give the USB disk volume for identification.
Note: This command is available only when a USB key is installed on the FortiGate unit. Formatting your
USB disk will delete all information on your USB disk.
Syntax
config system auto-install
set auto-install-config {disable | enable}
set auto-install-image {disable | enable}
set default-config-file
set default-image-file
end
Variables Description Default
auto-install-config Enable or disable automatic loading of the system disable
{disable | enable} configuration from a USB disk on the next reboot.
auto-install-image Enable or disable automatic installation of firmware from a disable
{disable | enable} USB disk on the next reboot.
default-config-file Enter the name of the configuration file on the USB disk. system.conf
default-image-file Enter the name of the image file on the USB disk. image.out
History
autoupdate clientoverride
Use this command to receive updates on a different interface than the interface connected to the
FortiGuard Distribution Network (FDN). This command changes the source IP address of update
requests to the FortiGuard server, causing it to send the update to the modified source address.
This is useful if your company uses an internal updates server instead of FDN.
Syntax
config system autoupdate clientoverride
set address <address_ipv4>
set status {enable | disable}
end
Variables Description Default
address <address_ipv4> Enter the IP address or fully qualified domain name to receive No
updates from. default.
status {enable | disable} Enable or disable the ability to override the FDN interface disable
address.
Example
This example shows how to add a push update client IP address 192.0.2.45 which is on the port4
interface.
config system autoupdate clientoverride
set address 192.0.2.45
set status enable
end
History
Related topics
• system autoupdate override
• system autoupdate push-update
• system autoupdate schedule
• system autoupdate tunneling
• execute update-av
autoupdate override
Use this command to specify an override FDS server.
If you cannot connect to the FortiGuard Distribution Network (FDN) or if your organization provides
updates using their own FortiGuard server, you can specify an override FDS server so that the
FortiGate unit connects to this server instead of the FDN.
Note: If you are unable to connect to the FDS server, even after specifying an override server, it is
possible your ISP is blocking the lower TCP and UDP ports for security reasons. Contact your ISP to
make sure they unblock TCP and UDP ports 1025 to 1035 to enable FDS server traffic.
Syntax
config system autoupdate override
set address <FDS_address>
set status {enable | disable}
end
Variables Description Default
address <FDS_address> Enter the IP address or fully qualified domain name of the No
override FDS server. default.
status {enable | disable} Enable or disable overriding the default FDS server. disable
Example
This example shows how to add and enable your company’s own FDS override server with an IP
address of 192.168.87.45.
config system autoupdate override
set address 192.168.87.45
set status enable
end
History
Related topics
• system autoupdate push-update
• system autoupdate schedule
• system autoupdate tunneling
• execute update-av
• execute update-ips
autoupdate push-update
Use this command to configure push updates. The FortiGuard Distribution Network (FDN) can push
updates to FortiGate units to provide the fastest possible response to critical situations such as
software exploits or viruses. You must register the FortiGate unit before it can receive push updates.
When you configure a FortiGate unit to allow push updates, the FortiGate unit sends a SETUP
message to the FDN. The next time an update is released, the FDN notifies all FortiGate units that are
configured for push updates that a new update is available. Within 60 seconds of receiving a push
notification, the FortiGate unit requests an update from the FDN.
Using this command you can enable or disable push updates. You can also configure push IP address
and port overrides. If the FDN must connect to the FortiGate unit through a NAT device, you must
configure port forwarding on the NAT device and add the port forwarding information to the push
update override configuration.
Note: You cannot receive push updates through a NAT device if the external IP address of the NAT device is
dynamic (for example, set using PPPoE or DHCP).
Syntax
config system autoupdate push-update
set address <push_ipv4>
set override {enable | disable}
set port <FDN_port>
set status {enable | disable}
end
Variables Description Default
address <push_ipv4> Enter the External IP address that the FDN connects to if you No
want to enable push override. This is the address of the external default.
interface of your NAT device.
override Enable an override of push updates. Select enable if the disable
{enable | disable} FortiGate unit connects to the FDN through a NAT device.
port <FDN_port> Enter the port that the FDN connects to. This can be port 9443 9443
by default or a different port that you assign.
status {enable | disable} Enable or disable FDN push updates. disable
Example
This example shows how to enable push updates on port 9993.
config system autoupdate push-update
set status enable
set port 9993
end
History
Related topics
• system autoupdate override
• system autoupdate schedule
• system autoupdate tunneling
• execute update-av
• execute update-ips
autoupdate schedule
Use this command to enable or disable scheduled FDN updates at regular intervals throughout the
day, once a day, or once a week.
To have your FortiGate unit to update at a random time during a particular hour, select a time that
includes 60 minutes as this will choose a random time during that hour for the scheduled update.
Syntax
config system autoupdate schedule
set day <day_of_week>
set frequency {every | daily | weekly}
set status {enable | disable}
set time <hh:mm>
end
Variables Description Default
day <day_of_week> Enter the day of the week on which to check for updates. Enter Monday
one of: Sunday, Monday, Tuesday, Wednesday, Thursday,
Friday, or Saturday.
This option is available only when frequency is set to
weekly.
frequency Schedule the FortiGate unit to check for updates every hour, every
{every | daily | weekly} once a day, or once a week. Set interval to one of the
following:
every
• Check for updates periodically. Set time to the time interval
to wait between updates.
daily
• Check for updates once a day. Set time to the time of day to
check for updates.
weekly
• Check for updates once a week. Set day to the day of the
week to check for updates. Set time to the time of day to
check for updates.
status {enable | disable} Enable or disable scheduled updates. disable
time <hh:mm> Enter the time at which to check for updates. 01:60
• hh can be 00 to 23
• mm can be 00-59, or 60 for random minute
Examples
This example shows how to configure the FortiGate unit to check the FortiGuard Distribution Network
(FDN) for updates once a day at 3:00 in the morning.
config system autoupdate schedule
set frequency daily
set time 03:00
set status enable
end
This example is the same as the above example but it will check for updates once a day at sometime
between 3:00 and 4:00 in the morning.
config system autoupdate schedule
set frequency daily
set time 03:60
set status enable
end
History
Related topics
• system autoupdate override
• system autoupdate push-update
• system autoupdate tunneling
• system global
autoupdate tunneling
Use this command to configure the FortiGate unit to use a proxy server to connect to the FortiGuard
Distribution Network (FDN). To use the proxy server, you must enable tunneling and add the IP
address and port required to connect to the proxy server. If the proxy server requires authentication,
add the user name and password required to connect to the proxy server.
The FortiGate unit connects to the proxy server using the HTTP CONNECT method, as described in
RFC 2616. The FortiGate unit sends a HTTP CONNECT request to the proxy server (optionally with
authentication information) specifying the IP address and port required to connect to the FDN. The
proxy server establishes the connection to the FDN and passes information between the FortiGate unit
and the FDN.
The CONNECT method is used mostly for tunneling SSL traffic. Some proxy servers do not allow
CONNECT to connect to any port; proxy servers restrict the allowed ports to the well known ports for
HTTPS and perhaps some other similar services. Because FortiGate autoupdates use HTTPS on port
8890 to connect to the FDN, your proxy server might have to be configured to allow connections on
this port.
Syntax
config system autoupdate tunneling
set address <proxy_address>
set password <password>
set port <proxy_port>
set status {enable | disable}
set username <name>
end
Variables Description Default
address <proxy_address> The IP address or fully qualified domain name of the proxy No
server. default.
password <password> The password to connect to the proxy server if one is required. No
default.
port <proxy_port> The port required to connect to the proxy server. No
default.
status {enable | disable} Enable or disable tunneling. disable
username <name> The user name used to connect to the proxy server. No
default.
Example
This example shows how to enable tunneling where the FortiGate unit must connect to a proxy server
with IP address 67.35.50.34 that uses port 8080, requires the user id proxy_user and the password
proxy_pwd.
config system autoupdate tunneling
set address 67.35.50.34
set port 8080
set username proxy_user
set password proxy_pwd
set status enable
end
History
Related topics
• system autoupdate override
• system autoupdate push-update
• system autoupdate schedule
aux
Use this command to configure the AUX port on 1000A, 1000AFA2, and 3000A models for remote
console connection. You would use a modem to remotely connect to a console session on the
FortiGate unit.
The main difference between the standard console port and the aux port is that the standard console
port is for local serial console connections only - it cannot accept a modem connection to establish a
remote console connection. The aux console port allows you to establish a local connection, but it has
some limitations the standard console port does not have.
• The AUX port will not display the booting messages that the standard console connection displays.
• The AUX port will send out modem initializing strings (AT strings) that will appear on an aux console
session at the start.
Syntax
config system aux
set baudrate <baudrate>
<baudrate> is the speed of the connection. It can be set to one of the following: 9600, 19200, 38400,
57600, or 115200. The default is 9600.
Ensure devices on both ends of the connection are set to the same baudrate.
History
Related topics
• system console
bug-report
Use this command to configure a custom email relay for sending problem reports to Fortinet customer
support.
Syntax
config system bug-report
set auth {no | yes}
set mailto <email_address>
set password <password>
set server <servername>
set username <name>
set username-smtp <account_name>
end
Variables Description Default
auth {no | yes} Enter yes if the SMTP server requires authentication or no if it no
does not.
mailto <email_address> The email address for bug reports. The default is See
[email protected]. description.
password <password> If the SMTP server requires authentication, enter the No default.
password required.
server <servername> The SMTP server to use for sending bug report email. The See
default server is fortinetvirussubmit.com description.
username <name> A valid user name on the specified SMTP server. The default See
user name is bug_report. description.
username-smtp A valid user name on the specified SMTP server. The default See
<account_name> user name is bug_report. description.
Example
This example shows how to configure the FortiGate unit to send bug report email from the
ourmailserver.com email server to [email protected] using the User1 account. The email
server requires authentication.
config system bug-report
set auth yes
set mailto [email protected]
set password 123456
set server ourmailserver.com
set username OurAdmin
end
History
Related topics
• system dns
console
Use this command to set the console command mode, the number of lines displayed by the console,
and the baud rate.
Fortigate-1000A, 1000AFA2, and 3000A models have an AUX port that can be used for remote
console connections using a modem. This port on these models is configured with the system aux
command, see “aux” on page 332.
Note: If this FortiGate unit is connected to a FortiManager unit running scripts, output must be set to
standard for scripts to execute properly.
If this FortiGate unit is connected to a FortiManager unit running scripts, output must be set to
standard for scripts to execute properly.
Syntax
config system console
set baudrate <speed>
set mode {batch | line}
set output {standard | more}
end
Variables Description Default
baudrate <speed> Set the console port baudrate. Select one of 9600, 19200, 9600
38400, 57600, or 115200.
mode {batch | line} Set the console mode to line or batch. Used for autotesting only. line
output {standard | more} Set console output to standard (no pause) or more (pause after standard
each screen is full, resume on keypress).
This setting applies to show or get commands only.
Example
This example shows how to set the baudrate to 38400 and set the output style to more so it will pause
after each screen full of information.
config system console
set baudrate 38400
set output more
end
History
Related topics
• system aux
dhcp reserved-address
Use this command to reserve an IP address for a particular client identified by its device MAC address
and type of connection. The DHCP server then always assigns the reserved IP address to the client.
The number of reserved addresses that you can define ranges from 10 to 200 depending on the
FortiGate model.
Note: For this configuration to take effect, you must configure at least one DHCP server using the
config system dhcp server command, see “dhcp server” on page 336.
Syntax
config system dhcp reserved-address
edit <name_str>
set ip <address_ipv4>
set mac <address_hex>
set type {regular | ipsec}
end
Variables Description Default
ip <address_ipv4> Enter the IP address. 0.0.0.0
mac <address_hex> Enter the MAC address. 00:00:00:00:00:00
type {regular | ipsec} Enter the type of the connection to be reserved: regular
• regular
Client connecting through regular Ethernet
• IPSec
Client connecting through IPSec VPN
Example
Use the following command to add a reserved address named client_1 consisting of IP address
192.168.110.3 and MAC address 00:09:0F:0A:01:BC for a regular ethernet connection.
config system dhcp reserved-address
edit client_1
set ip 192.168.110.3
set mac 00:09:0F:0A:01:BC
set type regular
end
History
Related topics
• system dhcp server
• system interface
dhcp server
Use this command to add one or more DHCP servers for any FortiGate interface. As a DHCP server,
the interface dynamically assigns IP addresses to hosts on a network connected to the interface. On
FortiGate models numbered 100 and below, you can configure up to 8 DHCP servers. On all other
models, you can configure up to 32 DHCP servers.
You can add more than one DHCP server to a single interface to be able to provide DHCP services to
multiple networks. For more information on configuring your network and FortiGate unit to use multiple
DHCP servers on one interface, see the System DHCP chapter in the Administration Guide for your
FortiGate unit.
This command is available in NAT/Route mode only.
Syntax
config system dhcp server
edit <dhcpservername>
set conflicted-ip-timeout <timeout_int>
set default-gateway <address_ipv4>
set dns-server1 <address_ipv4>
set dns-server2 <address_ipv4>
set dns-server3 <address_ipv4>
set domain <domain-name_str>
set enable {enable | disable}
set end-ip <address_ipv4>
set interface <interface-name>
set ipsec-lease-hold <release_seconds>
set lease-time <seconds>
set netmask <mask>
set option1 <option_code> [<option_hex>]
set option2 <option_code> [<option_hex>]
set option3 <option_code> [<option_hex>]
set server-type <type>
set start-ip <address_ipv4>
set wins-server1 <wins_ipv4>
set wins-server2 <wins_ipv4>
config exclude-range
edit <excl_range_num>
set end-ip <excl_ipv4>
set start-ip <excl_ipv4>
end
end
Variables Description Default
conflicted-ip-timeout Enter the time in seconds to wait before a conflicted IP 1800
<timeout_int> address is removed from the DHCP range. Valid range is
from 60 to 8640000 seconds (1 minute to 100 days).
default-gateway <address_ipv4> The IP address of the default gateway that the DHCP 0.0.0.0
server assigns to DHCP clients.
dns-server1 <address_ipv4> The IP address of the first DNS server that the DHCP 0.0.0.0
server assigns to DHCP clients.
dns-server2 <address_ipv4> The IP address of the second DNS server that the DHCP 0.0.0.0
server assigns to DHCP clients.
Example
Use the following command to add a DHCP server named new_dhcp. This DHCP server assigns IP
addresses to computers connected to the same network as the internal interface. The IP addresses
assigned are in the range 192.168.33.100 to 192.168.33.200. The example DHCP configuration also
sets the netmask, default gateway, two DNS server IP addresses, the lease time, and one WINS
server.
config system dhcp server
edit new_dhcp
set interface internal
set start-ip 192.168.33.100
set end-ip 192.168.33.200
set netmask 255.255.255.0
set default-gateway 192.168.33.1
set dns-server1 56.34.56.96
set dns-server2 56.34.56.99
set lease-time 4000
set wins-server1 192.168.33.45
end
The following command shows how to add an exclusion range from 192.168.20.22 to 192.168.20.25.
config system dhcp server
edit new_dhcp
config exclude-range
edit 1
set start-ip 192.168.20.22
set end-ip 192.168.20.25
end
end
History
Related topics
• system dhcp reserved-address
• system interface
dns
Use this command to set the DNS server addresses. Several FortiGate functions, including sending
email alerts and URL blocking, use DNS.
On models numbered 100 and lower, you can use this command to configure DNS forwarding. The
autosvr and fwdintf keywords are only available on models numbered 100 and lower.
Syntax
config system dns
set autosvr {enable | disable}
set cache-notfound-responses {enable | disable}
set dns-cache-limit <integer>
set domain <domain_name>
set fwdintf <interface>
set primary <dns_ipv4>
set secondary <dns_ip4>
end
Keywords and variables Description Default
autosvr Enable or disable DNS forwarding. disable
{enable | disable} Available only on models numbered 100 and lower in
NAT/Route mode.
cache-notfound-responses Enable to cache NOTFOUND responses from the DNS disable
{enable | disable} server.
dns-cache-limit Set maximum number of entries in the DNS cache. 5000
<integer>
domain <domain_name> Set the local domain name (optional). No default.
fwdintf <interface> Enter the interface to which forwarding applies: No default.
• internal
• dmz
Available on models numbered 100 and lower in
NAT/Route mode.
primary <dns_ipv4> Enter the primary DNS server IP address. 65.39.139.53
secondary <dns_ip4> Enter the secondary DNS IP server address. 65.39.139.63
Example
This example shows how to set the primary FortiGate DNS server IP address to 45.37.121.76 and
the secondary FortiGate DNS server IP address to 45.37.121.77.
config system dns
set primary 45.37.121.76
set secondary 45.37.121.77
end
History
Note: If the FortiGate unit is connected to a FortiAnalyzer device and a FortiManager device through a
NAT device, changing any fortianalyzer setting on the FortiGate unit will reset the connection with the
FortiManager device. To resolve this issue, create separate virtual IP address for the FortiAnalyzer and
FortiManager to ensure they do not have the same IP address.
Syntax
The command syntax is the same for fortianalyzer, fortianalyzer2 and fortianalyzer3.
config system fortianalyzer
set address-mode {auto-discovery | static}
set conn-timeout <seconds>
set encrypt {enable | disable}
set fdp-device <serial_number>
set localid <identifier>
set psksecret <pre-shared_key>
set server <fortianalyzer_ipv4>
set status {enable | disable}
set ver-1 {enable | disable}
end
Variables Description Default
address-mode {auto- Select auto-discovery to have the FortiAnalyzer device static
discovery | static} automatically detect the IP address of this FortiGate unit.
Select static if the FortiGate unit has a static IP address.
conn-timeout <seconds> Enter the number of seconds before the FortiAnalyzer 10
connection times out.
encrypt {enable | disable} Enable to use IPSec VPN tunnel for communication. disable
Disable to send data as plain text.
fdp-device <serial_number> Enter the serial number of the Fortianalyzer unit to connect No default
to. This keyword is only available when address-mode is set
to auto-discovery.
localid <identifier> Enter an identifier up to 64 characters long. You must use No default.
the same identifier on the FortiGate unit and the
FortiAnalyzer unit.
psksecret <pre-shared_key> Enter the pre-shared key for the IPSec VPN tunnel. No default.
This is needed only if encrypt is set to enable.
server Enter the IP address of the FortiAnalyzer unit. 0.0.0.0
<fortianalyzer_ipv4> This keyword is only available when address-mode is set to
static.
status {enable | disable} Enable or disable communication with the FortiAnalyzer disable
unit.
The other keywords are available only if status is set to
enable.
ver-1 {enable | disable} Enable for FortiAnalyzer 1.0 unit, otherwise disable. disable
Example
This example shows how to set the FortiGate unit to communicate with a FortiAnalyzer-400 unit that is
using a static IP address of 192.20.120.100:
config system fortianalyzer
set address-mode static
set encrypt enable
set localid fortianalyzer-400
set psksecret <128-character string>
set server 192.20.120.100
set status enable
set ver-1 disable
set conn-timeout 60
end
History
Related topics
• log fortianalyzer setting
fortiguard
Use this command to configure communications with the FortiGuard Distribution Network (FDN) for
FortiGuard services such as:
• FortiGuard Antivirus and IPS
• FortiGuard Web Filtering and Antispam
• FortiGuard Analysis Service
• FortiGuard Management Service
Alternatively, for FortiGuard Antivirus and IPS or FortiGuard Web Filtering and Antispam, you can
configure the FortiGate unit to communicate with a FortiManager unit, which can act as a private FDS
for those services.
By default, FortiGate units connect to the FDN using a set of default connection settings. You can
override these settings to use IP addresses and port numbers other than the defaults. For example, if
you have a FortiManager unit, you might download a local copy of FortiGuard service updates to the
FortiManager unit, then redistribute those updates by configuring each server override feature on the
FortiGate unit to use the IP address on the FortiManager unit. For details, see the FortiManager
Administration Guide.
Note: If the FortiGate unit is unable to connect to the FDN, verify connectivity on required ports. For a list
of required ports, see the Knowledge Center article Traffic Types and TCP/UDP Ports Used by Fortinet
Products.
Syntax
config system fortiguard
set hostname <url_str>
set srv-ovrd {enable | disable}
set port {53 | 8888}
set client-override-status {enable | disable}
set client-override-ip <ovrd_ipv4>
set service-account-id <id_str>
set central-mgmt-status {enable | disable}
set antispam-status {enable | disable}
set antispam-cache {enable | disable}
set antispam-cache-ttl <ttl_int>
set antispam-cache-mpercent <ram_int>
set antispam-license
set antispam-expiration
set antispam-timeout <timeout_int>
set avquery-status {enable | disable}
set avquery-cache {enable | disable}
set avquery-cache-ttl <ttl_int>
set avquery-cache-mpercent <max_int>
set avquery-timeout <timeout_int>
set webfilter-status {enable | disable}
set webfilter-cache {enable | disable}
set webfilter-cache-ttl <ttl_int>
set webfilter-timeout <timeout_int>
end
Example
This example shows how to configure the FortiGate unit to receive FortiGuard services.
config system fortiguard
set antispam-status enable
set antispam-cache enable
set antispam-cache-mpercent enable
set webfilter-cahce enable
set webfilter-status enable
set avquery-status enable
History
Related topics
• system dashboard
• fortiguard setting
fortiguard-log
Use this command to override default ports and IP addresses used to connect to FortiGuard Analysis
Service.
Syntax
config system fortiguard-log
set controller-ip <address_ipv4>
set controller-port <port_int>
set override-controller {enable | disable}
end
Variables Description Default
controller-ip Enter the IP address of the controller. 0.0.0.0
<address_ipv4> This option appears only if override-controller is
enable.
controller-port <port_int> Enter the port number of the controller. Valid ports range 0
from 0 to 65535.
This option appears only if override-controller is
enable.
override-controller Select to override the default controller IP address and/or disable
{enable | disable} port.
Example
This example shows how to override the default FortiGuard Analysis Service controller settings with IP
address 172.16.142.99 and port 1234.
config system fortiguard-log
set override-controller enable
set controller-ip 172.16.142.99
set controller-port 1234
end
History
Related topics
• system fortiguard
• fortiguard setting
fortimanager
Use this command to configure remote management by a FortiManager unit.
You can configure the remote management tunnel and which remote management actions the
FortiGate unit will allow from the FortiManager unit or FortiGuard Management Service. For details,
see “system management-tunnel” on page 391.
Syntax
config system fortimanager
set central-management {enable | disable}
set central-mgmt-auto-backup {enable | disable}
set central-mgmt-schedule-config-restore {enable | disable}
set ip <address_ipv4>
set ipsec {enable | disable}
set vdom <vdom_str>
end
Variables Description Default
central-management Select to allow central management by the FortiManager disable
{enable | disable} unit.
This option is available only if, in config system
management-tunnel, status is enable, and in
config system fortiguard, central-mgmt-
status is disable.
central-mgmt-auto-backup Select to automatically back up FortiGate unit disable
{enable | disable} configuration changes on administrator logout or session
timeout.
This option appears only if central-management is
enable.
central-mgmt-schedule- Select to allow the FortiManager unit to send a disable
config-restore configuration file to the FortiGate unit. This feature can be
{enable | disable} used to restore the configuration on the FortiGate unit.
This option appears only if central-management is
enable.
ip <address_ipv4> Enter the IP address of the FortiManager unit that is 0.0.0.0
allowed to manage this FortiGate unit.
ipsec {enable | disable} Select to apply an IPSec VPN to connections between the disable
FortiManager unit and this FortiGate unit. Alternatively,
configure the management tunnel. For details, see “system
management-tunnel” on page 391.
vdom <vdom_str> Enter the FortiGate unit virtual domain (VDOM) that will root
communicate with the FortiManager unit. (Optional.)
Example
This example shows how to configure secure remote management of the FortiGate unit by a
FortiManager unit whose serial number is FMG-3K2404400063 and IP address is 172.168.2.10,
enabling the FortiManager unit to restore the configuration on the FortiGate unit and change firmware
but disabling automatic configuration backups to the FortiManager unit.
config system fortimanager
set ip 172.168.2.10
set central-mgmt-scheduled-cfg-restore enable
set central-mgmt-auto-backup disable
end
History
FortiOS v3.0 MR6 New command. Replaces config system fm and defines settings specific to remote
management by a FortiManager unit.
Related topics
• system fortiguard
• system management-tunnel
Syntax
config system gi-gk
set context <id_integer>
set port <tcp_port>
end
Variables Description Default
context <id_integer> Enter the context ID for the Gi gateway firewall
port <tcp_port> Enter the TCP port to listen to. Valid range is from 0 to 0
65535.
History
Related topics
• system interface
global
Use this command to configure global settings that affect various FortiGate systems and
configurations.
Runtime-only config mode was introduced in FortiOS v3.0 MR2. This mode allows you to try out
commands that may put your FortiGate unit into an unrecoverable state normally requiring a physical
reboot. In runtime-only config mode you can set a timeout so after a period of no input activity the
FortiGate unit will reboot with the last saved configuration. Another option in runtime-only configuration
mode is to manually save your configuration periodically to preserve your changes. For more
information see set cfg-save {automatic | manual | revert}, set cfg-revert-
timeout <seconds>, and execute cfg reload.
Switch mode is available on FortiWiFi 60B, FortiGate 60B, 100A (Rev2.0 and higher), and 200A
(Rev2.0 and higher) models where the internal interface is a four or six port switch. Normally the
internal interface is configured as one interface shared by all four ports. Switch mode allows you to
configure each interface on the switch separately with their own interfaces. Consult your release notes
for the most current list of supported models for this feature. The keywords internal-switch-mode
{interface | switch} and internal-switch-speed {100full | 100half | 10full | 10half | auto} apply only to
switch mode enabled FortiGate models.
Syntax
config system global
set access-banner {enable | disable}
set admin-https-pki-required {enable | disable}
set admin-maintainer {enable | disable}
set admin-port <port_number>
set admin-scp {enable | disable}
set admin-server-cert { self-sign | <certificate>}
set admin-sport <port_number>
set admin-ssh-port <port_number>
set admin-ssh-v1 {enable | disable}
set admin-telnet-port <port_number>
set admintimeout <admin_timeout_minutes>
set allow-interface-subnet-overlap {enable | disable}
set auth-cert <cert-name>
set auth-http-port <http_port>
set auth-https-port <https_port>
set auth-keepalive {enable | disable}
set av-failopen {off | one-shot | pass}
set av-failopen-session {enable | disable}
set batch_cmdb {enable | disable}
set CC-mode {enable | disable}
set cfg-save {automatic | manual | revert}
set cfg-revert-timeout <seconds>
set check-reset-range {enable | disable}
set clt-cert-req {enable | disable}
set conn-tracking {enable | disable}
set daily-restart {enable | disable}
set detection-summary {enable | disable}
set dst {enable | disable}
set failtime <failures_count>
set fds-statistics {enable | disable}
set fds-statistics-period <minutes>
set forticlient-portal-port <port>
reset-sessionless-tcp Enabling this option may help resolve issues with a disable
{enable | disable} problematic server, but it can make the FortiGate unit more
vulnerable to denial of service attacks. In most cases you
should leave reset-sessionless-tcp disabled.
The reset-sessionless-tcp command determines
what action the FortiGate unit performs if it receives a TCP
packet but cannot find a corresponding session in its
session table. This happens most often because the
session has timed out.
If you disable reset-sessionless-tcp, the FortiGate
unit silently drops the packet. The packet originator does
not know that the session has expired and might re-
transmit the packet several times before attempting to start
a new session. This is normal network operation.
If you enable reset-sessionless-tcp, the FortiGate
unit sends a RESET packet to the packet originator. The
packet originator ends the current session, but it can try to
establish a new session.
This is available in NAT/Route mode only.
restart-time <hh:mm> Enter daily restart time in hh:mm format (hours and No default.
minutes).
This is available only when daily-restart is enabled.
Example
This example shows how to change to enable daylight savings time.
config system global
set dst enable
end
History
Related topics
• execute cfg reload
• execute cfg save
gre-tunnel
Use this command to configure the tunnel for a GRE interface. A new interface of type “tunnel” with the
same name is created automatically as the local end of the tunnel. This command is available only in
NAT/Route mode.
To complete the configuration of a GRE tunnel, you need to:
• configure a firewall policy to pass traffic from the local private network to the tunnel interface
• configure a static route to the private network at the remote end of the tunnel using the GRE tunnel
“device”
• optionally, define the IP addresses for each end of the tunnel to enable dynamic routing through the
tunnel or to enable pinging of each end of the tunnel for testing
Syntax
config system gre-tunnel
edit <tunnel_name>
set interface <interface_name>
set local-gw <localgw_IP>
set remote-gw <remotegw_IP>
end
Example
In this example, a GRE tunnel is needed between two sites using FortiGate units. Users on the
192.168.2.0/24 network at Site A need to communicate with users on the 192.168.3.0/24 network at
Site B. At both sites the private network is connected to Port 2 of the FortiGate unit and the connection
to the Internet is through Port 1. At Site A, the public IP address is 172.16.67.199 and at Site B it is
172.16.68.198.
edit 2 edit 2
set src-intf toSiteB set src-intf toSiteA
set dst-intf port2 set dst-intf port2
set srcaddr all set srcaddr all
set dstaddr all set dstaddr all
set action accept set action accept
set service ANY set service ANY
set schedule always set schedule always
end end
(Optional) (Optional)
config system interface config system interface
edit toSiteB edit toSiteA
set ip 10.0.0.1/32 set ip 10.0.0.2/32
set remote-ip 10.0.0.2 set remote-ip 10.0.0.1
set allowaccess ping set allowaccess ping
end end
History
Related topics
• system interface
• firewall policy, policy6
• router static
ha
Use this command to enable and configure FortiGate high availability (HA) and virtual clustering. HA is
supported on FortiGate and FortiWiFi models numbered 60 and higher. Using the config system
ha command you must configure all cluster members with the same group name, mode, and password
before the FortiGate units can form a cluster.
Group name, mode, password, as well as priority and group ID are not synchronized between cluster
units. The primary unit synchronizes all other configuration settings, including the other HA
configuration settings.
When virtual domains are enabled for the FortiGate units to be operating in HA mode you are
configuring virtual clustering. Using virtual clustering you create two virtual clusters and add virtual
domains to each cluster. Configuring virtual clustering is very similar to configuring normal HA except
that in a virtual cluster, the HA mode can only be set to active-passive. As well additional options are
available for adding virtual domains to each virtual cluster and for setting the device priority for each
device in each virtual cluster.
Note: You cannot enable HA mode if one of the FortiGate unit interfaces uses DHCP or PPPoE to acquire an IP
address. If DHCP or PPPoE is configured, the config ha mode keyword is not available.
For complete information about how to configure and operate FortiGate HA clusters and more detail
about the config system ha CLI command, see the FortiGate HA Overview, the FortiGate HA
Guide, and the Fortinet Knowledge Center.
Examples
This example shows how to configure a FortiGate unit for active-active HA operation. The example
shows how to set up a basic HA configuration by setting the HA mode, changing the group-name,
and entering a password. You would enter the exact same commands on every FortiGate unit in the
cluster. In the example virtual domains are not enabled.
config system ha
set mode a-a
set group-name myname
set password HApass
end
The following example shows how to configure a FortiGate unit with virtual domains enabled for active-
passive HA operation. In the example, the FortiGate unit is configured with three virtual domains
(domain_1, domain_2, and domain_3) in addition to the root virtual domain. The example shows how
to set up a basic HA configuration similar to the previous example; except that the HA mode can only
be set to a-p. In addition, the example shows how to enable vcluster2 and how to add the virtual
domains domain_2 and domain_3 to vcluster2.
config global
config system ha
set mode a-p
set group-name myname
set password HApass
set vcluster2 enable
config secondary-vcluster
set vdom domain_2 domain_3
end
end
end
The following example shows how to change the device priority of the primary unit to 200 so that this
cluster unit always becomes the primary unit. When you log into the cluster you are actually
connecting to the primary unit. When you change the device priority of the primary unit this change
only affects the primary unit because the device priority is not synchronized to all cluster units. After
you enter the following commands the cluster renegotiates and may select a new primary unit.
config system ha
set priority 200
end
The following example shows how to change the device priority of a subordinate unit to 255 so that this
subordinate unit becomes the primary unit. This example involves connecting to the cluster CLI and
using the execute ha manage 0 command to connect to the highest priority subordinate unit. After
you enter the following commands the cluster renegotiates and selects a new primary unit.
execute ha manage 0
config system ha
set priority 255
end
The following example shows how to change the device priority of the primary unit in virtual cluster 2.
The example involves connecting to the virtual cluster CLI and changing the global configuration. In
the example virtual cluster 2 has already been enabled so all you have to do is use the config
secondary-vcluster command to configure virtual cluster 2.
config global
config system ha
config secondary-vcluster
set priority 50
end
end
end
The following example shows how to change the default heartbeat interface configuration so that the
port4 and port1 interfaces can be used for HA heartbeat communication and to give the port4 interface
the highest heartbeat priority so that port4 is the preferred HA heartbeat interface.
config system ha
set hbdev port4 100 port1 50
end
The following example shows how to enable monitoring for the external, internal, and DMZ interfaces.
config system ha
set monitor external internal dmz
end
The following example shows how to configure weighted round robin weights for a cluster of three
FortiGate units. You can enter the following commands to configure the weight values for each unit:
config system ha
set schedule weight-round-robin
set weight 0 1
set weight 1 3
set weight 2 3
end
Internet
port1
Switch Switch
Router
Internal Network
2 Enter the following commands to add the ping server to the port2 interface and to set the HA remote IP
monitoring priority for this ping server.
• Enter the detectserver keyword to add the ping server and set the ping server IP address to
192.168.20.20.
• Enter the ha-priority keyword to set the HA remote IP monitoring priority of the ping server to
10 so that if this ping server does not connect to 192.168.20.20 the HA remote IP monitoring
priority will be high enough to reach the failover threshold and cause a failover.
config system interface
edit port2
set detectserver 192.168.20.20
set ha-priority 10
end
3 You can also use the config global command to change the time interval between ping server
pings using the interval keyword and to change the number of times that the
ping fails before a failure is detected using the failtime keyword.
4 You can also do the following to configure HA remote IP monitoring to test more IP addresses:
• Enable HA remote IP monitoring on more interfaces by adding more interface names to the
pingserver-monitor-interface keyword.
• If your FortiGate configuration includes VLAN interfaces, aggregate interfaces and other interface
types, you can add the names of these interfaces to the pingserver-monitor-interface
keyword to configure HA remote IP monitoring for these interfaces.
• Add a second IP address to the detectserver keyword to monitor two IP addresses on each
interface.
Note: If you add two IP addresses to the detectserver keyword the ping will be sent to both at the
same time, and only when neither server responds will the ping server fail.
• Add secondary IPs to any interface and enter detectserver and ha-priority for each of the
secondary IPs. You can do this to monitor multiple IP addresses on any interface and set a different
HA priority for each one. By adding multiple ping servers to the remote HA monitoring configuration
and setting the HA priorities for each you can fine tune remote IP monitoring. For example, if its
more important to maintain connections to some remote IPs you can set the HA priorities higher for
these IPs. And if its less important to maintain connections to other remote IPs you can set the HA
priorities lower for these IPs. You can also adjust the pingserver-failover-threshold so
that if the cluster cannot connect to one or two high priority IPs a failover occurs. But a failover will
not occur if the cluster cannot connect to one or two low priority IPs.
Command History
interface
Use this command to edit the configuration of a FortiGate physical interface, VLAN subinterface, IEEE
802.3ad aggregate interface, redundant interface or IPSec tunnel interface.
In the following table, VLAN subinterface can be substituted for interface in most places except that
you can only configure VLAN subinterfaces with static IP addresses. Use the edit command to add a
VLAN subinterface.
Note: VLAN communication over the backplane interfaces is available for FortiGate-5000 modules
installed in a FortiGate-5020 chassis. The FortiSwitch-5003 does not support VLAN-tagged packets so
VLAN communication is not available over the FortiGate-5050 and FortiGate-5140 chassis backplanes.
Some keywords are specific to aggregate interfaces. These appear at the end of the list of commands
under “variables for aggregate and redundant interfaces (models 300A, 400A, 500A, and 800 or
higher)” on page 386.
Syntax
Entering a name string for the edit keyword that is not the name of a physical interface adds a VLAN
subinterface.
config system interface
edit <interface_name>
set allowaccess <access_types>
set alias <name_string>
set arpforward {enable | disable}
set auth-type <ppp_auth_method>
set bfd {enable | disable | global}
set bfd-desired-min-tx <interval_msec>
set bfd-detect-mult <multiplier>
set bfd-required-min-rx <interval_msec>
set broadcast-forward {enable | disable}
set ddns {enable | disable}
set ddns-domain <ddns_domain_name>
set ddns-password <ddns_password>
set ddns-profile-id <dnsart_profile_id>
set ddns-server <ddns_service>
set ddns-sn <ddns_sn>
set ddns-username <ddns_username>
set defaultgw {enable | disable}
set detectserver <pingserver_ipv4> [pingserver2_ipv4]
set description <text>
set dhcp-relay-ip <dhcp_relay1_ipv4> {... <dhcp_relay8_ipv4>}
set dhcp-relay-service {enable | disable}
set dhcp-relay-type {ipsec | regular}
set disc-retry-timeout <pppoe_retry_seconds>
set distance <admin_distance>
set dns-server-override {enable | disable}
set fortimanager-discover-helper {enable | disable}
set forward-domain <collision_group_number>
set fp-anomaly [...]
set gi-gk {enable | disable} (FortiOS Carrier)
set gwaddr <IPv4>
set gwdetect {enable | disable}
set ha-priority <priority_integer>
Note: A VLAN cannot have the same name as a zone or a virtual domain.
mpls {enable | disable} Multi Protocol Label Switching (MPLS) is a networking protocol disable
that allows adding labels to packets (RFC 3031). Additional
MPLS labels can be added, or removed from the packet header
- FortiGate units support up to 6 layers of labels. The labels are
used for improved routing.
When MPLS is enabled on your FortiGate Carrier unit, AV
traffic will be blocked. Only IPS can be applied to MPLS
packets.
To use MPLS:
• operation mode must be transparent
• l2forward must be enabled to pass the MPLS packets
• a multicast policy is needed to allow MPLS router hello
traffic
MPLS is only available in FortiOS Carrier.
ip6-default-life Enter the number, in seconds, to add to the Router Lifetime 1800
<ipv6_life_seconds> field of router advertisements sent from the interface. The valid
range is 0 to 9000.
This is available in NAT/Route mode only.
ip6-hop-limit Enter the number to be added to the Cur Hop Limit field in the 0
<ipv6_hops_limit> router advertisements sent out this interface. Entering 0 means
no hop limit is specified. This is available in NAT/Route mode
only.
This is available in NAT/Route mode only.
ip6-link-mtu <ipv6_mtu> Enter the MTU number to add to the router advertisements 0
options field. Entering 0 means that no MTU options are sent.
This is available in NAT/Route mode only.
ip6-manage-flag Enable or disable the managed address configuration flag in disable
{disable | enable} router advertisements.
This is available in NAT/Route mode only.
ip6-max-interval Enter the maximum time interval, in seconds, between sending 600
<adverts_max_seconds> unsolicited multicast router advertisements from the interface.
The valid range is 4 to 1800.
This is available in NAT/Route mode only.
ip6-min-interval Enter the minimum time interval, in seconds, between sending 198
<adverts_min_seconds> unsolicited multicast router advertisements from the interface.
The valid range is 4 to 1800.
This is available in NAT/Route mode only.
ip6-other-flag Enable or disable the other stateful configuration flag in router disable
{disable | enable} advertisements.
This is available in NAT/Route mode only.
ip6-reachable-time Enter the number to be added to the reachable time field in the 0
<reachable_msecs> router advertisements. The valid range is 0 to 3600. Entering 0
means no reachable time is specified.
This is available in NAT/Route mode only.
Example
This example shows how to set the FortiGate-300 internal interface IP address and netmask to
192.168.100.159 255.255.255.0, and the management access to ping, https, and ssh.
config system interface
edit internal
set allowaccess ping https ssh
set ip 192.168.110.26 255.255.255.0
end
This example shows how to add a loopback interface with a name of loop1. The IP address is set to
10.0.0.10 255.255.255.0 and bfd is set to global. Any traffic sent to this interface will be dropped, as it
is a blackhole route.
config system interface
edit loop1
set type loopback
set ip 10.0.0.10 255.255.255.0
set bfd global
end
This example shows how to add a secondary IP address and netmask of 192.176.23.180
255.255.255.0 to the internal interface. Also configure ping and https management access to
this secondary IP address. You can not add a secondary IP that is part of the subnet of the original
interface IP address.
config system interface
edit internal
config secondaryip
edit 1
set allowaccess ping https
set ip 192.176.23.180 255.255.255.0
end
end
History
ipv6-tunnel
Use this command to tunnel IPv6 traffic over an IPv4 network.
The IPv6 interface is configured under config system interface.
Syntax
config system ipv6-tunnel
edit <tunnel_name>
set destination <tunnel_address>
set interface <name>
set ip6 <address_ipv6>
set source <address_ipv4>
end
Variables Description Default
edit <tunnel_name> Enter a name for the IPv6 tunnel. No default.
destination The destination IPv4 address for this tunnel. 0.0.0.0
<tunnel_address>
interface <name> The interface used to send and receive traffic for this tunnel. No default.
ip6 <address_ipv6> The IPv6 address for this tunnel. No default.
source <address_ipv4> The source IPv4 address for this tunnel. 0.0.0.0
Example
Use the following commands to set up an IPv6 tunnel.
config system ipv6-tunnel
edit test_tunnel
set destination 10.10.10.1
set interface internal
set ip6 12AB:0:0:CD30::/60
set source 192.168.50.1
end
History
Related topics
• system interface
mac-address-table
Use this command to create a static MAC table. The table can hold up to 200 entries.
This command is available in Transparent mode only.
Syntax
config system mac-address-table
edit <mac-address_hex>
set interface <if_name>
end
Keywords and variables Description Default
edit <mac-address_hex> Enter the MAC address as six pairs of hexadecimal digits No
separated by colons, e.g.: 11:22:33:00:ff:aa default.
interface <if_name> Enter the name of the interface to which this MAC table entry No
applies. default.
Example
Use the following commands to add a static MAC entry for the internal interface.
config system mac-address-table
edit 11:22:33:00:ff:aa
set interface internal
end
History
management-tunnel
Use this command to configure the remote management tunnel and which remote management
actions the FortiGate unit will allow from either the FortiManager unit or FortiGuard Management
Service.
To complete remote management setup with a FortiManager unit or FortiGuard Management Service,
also configure their required settings, such as providing the service account ID or defining the IP
address of the FortiManager unit. For details, see “system fortiguard” on page 342 or “system
fortimanager” on page 347.
Syntax
config system management-tunnel
set allow-collect-statistics {enable | disable}
set allow-config-restore {enable | disable}
set allow-push-configuration {enable | disable}
set allow-push-firmware {enable | disable}
set authorized-manager-only {enable | disable}
set serial-number <serial_str>
set status {enable | disable}
end
Variables Description Default
allow-collect-statistics Enable or disable real-time monitor SNMP polls through enable
{enable | disable} the tunnel.
This option appears only if status is enable.
allow-config-restore Enable or disable remote restoration of a previous enable
{enable | disable} configuration.
This option appears only if status is enable.
allow-push-configuration Enable or disable remote configuration. enable
{enable | disable} This option appears only if status is enable.
allow-push-firmware {enable Enable or disable remote firmware upgrades. enable
| disable} This option appears only if status is enable.
authorized-manager-only Enable or disable remote management only by the disable
{enable | disable} FortiManager unit with the specified serial number. Also
configure serial-number.
This option appears only if status is enable.
serial-number <serial_str> Enter up to five serial numbers of FortiManager unit that No default.
are authorized to remotely manage this FortiGate unit.
Separate multiple serial numbers with a space.
This option appears only if status and authorized-
manager-only is enable.
status {enable | disable} Enable or disable the SSL-secured management tunnel. enable
If ipsec is enable in config system fortimanager,
the FortiGate unit will use the IPSec tunnel and will not
apply SSL to the management connection.
Example
This example shows how to configure the remote management tunnel to accept connections only from
the FortiManager unit whose serial number is FMG-3K2404400063, and to allow that FortiManager
unit to collect real-time monitor (SNMP) information, but not to permit remote firmware upgrades.
config system fortimanager
set ip 172.168.2.10
set central-mgmt-scheduled-cfg-restore enable
set central-mgmt-auto-backup disable
end
config system management-tunnel
set status enable
set authorized-manager-only enable
set serial-number FMG-3K2404400063
set allow-collect-statistics enable
set allow-push-firmware disable
end
History
FortiOS v3.0 MR6 New command. Configures remote management tunnel and actions allowed from the
FortiGuard Management Service or FortiManager unit.
Related topics
• system fortiguard
• system fortimanager
modem
Use this command to configure a FortiGate-60M modem or a serial modem interface connected using
a serial converter to the FortiGate 50A or FortiGate-60 USB port.
You can add the information to connect to up to three dialup accounts. The FortiGate-60 or FortiGate-
60M unit modem interface can act as a backup interface for one of the FortiGate ethernet interfaces or
as a standalone dialup interface.
These commands are available in NAT/Route mode only and apply only to models 50A, 60, 60M and
60-WiFi.
Syntax
config system modem
set altmode {enable | disable}
set auto-dial {enable | disable}
set connect_timeout <seconds>
set dial-on-demand {enable | disable}
set distance <distance>
set holddown-timer <seconds>
set idle-timer <minutes>
set interface <name>
set mode {redudant | standalone}
set passwd1 <password_str>
set passwd2 <password_str>
set passwd3 <password_str>
set peer_modem1 {actiontec | ascendTNT | generic}
set peer_modem2 {actiontec | ascendTNT | generic}
set peer_modem3 {actiontec | ascendTNT | generic}
set phone1 <phone-number>
set phone2 <phone-number>
set phone3 <phone-number>
set priority <integer>
set redial <tries_integer>
set status {disable | enable}
set username1 <name_str>
set username2 <name_str>
set username3 <name_str>
end
Keywords and variables Description Default
altmode {enable | disable} Enable for installations using PPP in China. enable
auto-dial Enable to dial the modem automatically if the connection is disable
{enable | disable} lost or the FortiGate unit is restarted.
This is available only when dial-on-demand
is set to disabled, and mode is set to standalone.
connect_timeout <seconds> Set the connection completion timeout (30 - 255 seconds). 90
dial-on-demand Enable to dial the modem when packets are routed to the disable
{enable | disable} modem interface. The modem disconnects after the
idle-timer period.
This is available only if auto-dial is set to
disabled, and mode is set to standalone.
Example
This example shows how to enable the modem and configure the modem to act as a backup for the
WAN1 interface. Only one dialup account is configured. The FortiGate unit and modem will attempt to
dial this account 10 times. The FortiGate unit will wait 5 seconds after the WAN1 interface recovers
before switching back to the WAN1 interface.
config system modem
set action dial
set status enable
set holddown-timer 5
set interface wan1
set passwd1 acct1passwd
set phone1 1234567891
set redial 10
set username1 acct1user
end
This example shows how to display the settings for the modem command.
get system modem
This example shows how to display the configuration for the modem command.
show system modem
History
Related topics
• system interface
npu
Use this command to configure the Network Processing Unit (NPU) for FortiGate units that support
FB4.
Note: If you use the traffic-shaping-mode command, the bidirection option counts twice as much
traffic. You need to allow twice the bandwidth as with unidirection.
Syntax
config system npu
set enc-offload-antireplay {enable | disable}
set dec-offload-antireplay {enable | disable}
set offload-ipsec-host {enable | disable}
set traffic-shaping-mode {unidirection | bidirection}
next
end
Variables Description Default
enc-offload-antireplay Enable this option for the system to offload IPSEC disable
{enable | disable} packet encryption to FB4 when the egress port of the
tunnel is on FB4.
dec-offload-antireplay Enable this option for the system to offload IPSEC enable
{enable | disable} packet encryption to FB4 when the ingress port of the
tunnel is on FB4.
offload-ipsec-host Enable this option for the system to offload packet disable
{enable | disable} encryption to FB4 when the egress port of this packet
is on FB4.
traffic-shaping-mode Select the fast path bandwidth calculation method.
{unidirection | bidirection} In unidirection, traffic in each direction is counted
separately. In bidirection the traffic in both
directions is counted at the same time.
The default value on 3600A models is
bidirection.
The default value on 3810B models is
unidirection.
History
proxy-arp
Use this command to add IP addresses to MAC address translation entries to the proxy ARP table.
Syntax
config system proxy-arp
edit <table_entry>
set interface <port>
set ip <ipv4_address>
next
end
Variables Description Default
edit <table_entry> Enter the unique ID of the table entry to add or No default.
modify.
interface <port> Enter the physical port this IP will be associated with. No default.
ip <ipv4_address> Enter the IP address to associate with this physical No default.
port.
History
Related topics
• system arp-table
• get router info bgp
replacemsg admin
Use this command to change the administration disclaimer page.
These are HTML messages with HTTP headers.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg admin admin_disclaimer_text
set buffer <message>
set format <format>
set header <header_type>
end
Variable Description Default
buffer <message> Type a new replacement message to replace the current replacement Depends on
message. Maximum length 8 192 characters. message
type.
format <format> Set the format of the message: No default
• html
• text
• none
header Set the format of the message header: Depends on
<header_type> • 8bit message
• http type.
• none
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message. Generally
there is not a large call for these tags in disclaimer pages.
Tag Description
%%AUTH_REDIR_URL%% Link to open a new window. (optional).
%%AUTH_LOGOUT%% Immediately close the connection policy.
%%KEEPALIVEURL%% URL the keep alive page connects to that keeps the connection policy alive. Connects
every %%TIMEOUT%% seconds.
%%TIMEOUT%% Configured number of seconds between %%KEEPALIVEURL%% connections.
History
replacemsg alertmail
Alertmail can be configured to alert users or admins about important system events such as blocked
files or viruses detected.
Use this command to change the alertmail pages including:
• the block message that alerts users a file transfer was blocked
• the critical firewall event message
• the hard disk log is full message
• the nids event message to notify a network intrusion event has occurred
• the virus message to indicate that a message was found
These are HTML messages with HTTP headers.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg alertmail auth_msg_type
set buffer <message>
set format <format>
set header <header_type>
end
Variable Description Default
auth_msg_type FortiGuard replacement alertmail message type. One of: No default
alertmail- A file download was blocked.
block Default message includes name of file.
alertmail- A critical firewall event occurred.
crit-event Default message includes the event type.
alertmail- The hard disk log is full.
disk-full
alertmail- An intrusion event occurred.
nids-event Default message includes the intrusion type.
alertmail- A virus or worm was detected.
virus Default message includes the virus or worm type.
buffer <message> Type a new replacement message to replace the current replacement Depends on
message. Maximum length 8 192 characters. message
type.
format <format> Set the format of the message: No default
• html
• text
• none
header Set the format of the message header: Depends on
<header_type> • 8bit message
• http type.
• none
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message.
Tag Description
%%FILE%% The name of a file that has been removed from a content stream. This could be a file
that contained a virus or was blocked by antivirus file blocking. %%FILE%% can be
used in virus and file block messages.
%%VIRUS%% The name of a virus that was found in a file by the antivirus system. %%VIRUS%% can
be used in virus messages
%%URL%% The URL of a web page. This can be a web page that is blocked by web filter content
or URL blocking. %%URL%% can also be used in http virus and file block messages to
be the URL of the web page from which a user attempted to download a file that is
blocked.
%%CRITICAL_EVENT%% Added to alert email critical event email messages. %%CRITICAL_EVENT%% is
replaced with the critical event message that triggered the alert email.
%%PROTOCOL%% The protocol (HTTP, FTP, POP3, IMAP, SMTP) in which a virus was detected.
%%PROTOCOL%% is added to alert email virus messages.
%%SOURCE_IP%% IP address of the email server that sent the email containing the virus.
%%DEST_IP%% IP address of the user’s computer that attempted to download the message from
which the file was removed.
%%EMAIL_FROM%% The email address of the sender of the message from which the file was removed.
%%EMAIL_TO%% The email address of the intended receiver of the message from which the file was
removed.
%%NIDS_EVENT%% The IPS attack message. %%NIDS_EVENT%% is added to alert email intrusion
messages.
Example
The default message for a detected virus is:
Virus/Worm detected: %%VIRUS%% Protocol: %%PROTOCOL%% Source IP: %%SOURCE_IP%%
Destination IP: %DST_IP%% Email Address From: %%EMAIL_FROM%% Email Address To:
%%EMAIL_TO%%
History
replacemsg auth
Use this command to change the authentication pages including:
• the challenge page that prompts users for additional verification past initial login information
• the disclaimer page that notifies users when they are leaving the protected network
• the keepalive page that keeps a session open by renewing the connection at a set interval
• the failed login page that informs the user of their failed attempt to authenticate themselves and
provides the login prompt for them to try again
• the login page presented to users who must authenticate themselves to use firewall policies or
VPNs
• the reject page that is displayed when the user rejects the disclaimer page
These are HTML messages with HTTP headers.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg auth auth_msg_type
set buffer <message>
set format <format>
set header <header_type>
end
Variable Description Default
auth_msg_type FortiGuard replacement message type. One of: No default
auth- Challenges the user with a question.
challenge-
page
auth- Prompts user to accept the displayed disclaimer
disclaimer[ when leaving protected network.
1| 2| 3] The extra pages seamlessly extend the size of the
page from 8 192 characters up 16 384 and 24 576
characters respectively.
auth- Keeps a session open by connecting to renew the
keepalive- connection policy.
page Closing the page will timeout the connection.
auth-login- Displays after user fails to login. This page includes a
failed-page failed login message and a login prompt.
auth-login- Prompts the user for their username and password to
page login.
auth-reject- Displays when user rejects the disclaimer page.
page
buffer <message> Type a new replacement message to replace the current replacement Depends on
message. Maximum length 8 192 characters. message
type.
Tag Description
%%AUTH_REDIR_URL%% Link to open a new window. (optional).
%%AUTH_LOGOUT%% Immediately close the connection policy.
%%FAILED_MESSAGE%% Message displayed on failed login page after user login fails.
%%KEEPALIVEURL%% URL the keep alive page connects to that keeps the connection policy alive.
Connects every %%TIMEOUT%% seconds.
%%QUESTION%% The default login and rejected login pages use this text immediately preceding the
username and password fields. the default challenge page uses this as the challenge
question. These are treated as two different variables by the server.
If you want to use different text, replace %%QUESTION%% with the text that you prefer.
%%TIMEOUT%% Configured number of seconds between %%KEEPALIVEURL%% connections.
%%USERNAMEID%% Username of the user logging in. This tag is used on the login and failed login pages.
%%PASSWORDID%% Password of the user logging in. This tag is used on the challenge, login and failed
login pages.
Example
This example shows how to change the authentication login page. You enter the web page content as
one long quoted string, using the backslash (“\”) character at the end of each line to continue the text
on the next line.
History
replacemsg fortiguard-wf
Use this command to change the default messages that replace a web pages that FortiGuard web
filtering has blocked.
By default, these are a HTML messages.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg fortiguard-wf <fortiguard_msg_type>
set buffer <message>
set format <format>
set header <header_type>
end
Variable Description Default
<fortiguard_msg_type> FortiGuard replacement message type. One of: No default.
ftgd-block FortiGuard blocked a web page.
ftgd-ovrd FortiGuard override form.
http-err An error occurred when accessing the web
page.
buffer <message> Type a new replacement message to replace the current Depends on
replacement message. Maximum length 8 192 characters. message type.
format <format> Set the format of the message, one of: html
• html
• text
• none
header <header_type> Set the format of the message header: http
• 8bit
• http
• none.
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message.
Tag Description
%%URL%% The URL of a web page. This can be a web page that is blocked by web filter content
or URL blocking. %%URL%% can also be used in http virus and file block messages to
be the URL of the web page from which a user attempted to download a file that is
blocked.
History
replacemsg ftp
Use this command to change default replacement messages added to FTP sessions when the antivirus
engine blocks a file either because of a matching file pattern or because a virus is detected.
By default, these are text-format messages with no header.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg ftp <message-type>
set buffer <message>
set format <format>
set header <header_type>
end
Variable Description Default
<message-type> FTP replacement message type. One of: No default.
ftp-dl-blocked Antivirus system blocks a file that
matches a file pattern.
ftp-dl-filesize Antivirus system blocks an oversize file
(one that is too large to scan).
ftp-dl-infected Antivirus system detects a virus in a file
being downloaded and blocks the file.
buffer <message> Type a new replacement message to replace the current Depends on
replacement message. Maximum length 8 192 characters. message type.
format <format> Set the format of the message, one of: text
• html
• text
• none
header <header_type> Set the format of the message header, one of: none
• 8bit
• http
• none.
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message.
Tag Description
%%FILE%% The name of a file that has been removed from a content stream. This could be a file
that contained a virus or was blocked by antivirus file blocking. %%FILE%% can be
used in virus and file block messages.
%%VIRUS%% The name of a virus that was found in a file by the antivirus system. %%VIRUS%% can
be used in virus messages
%%QUARFILENAME%% The name of a file that has been removed from a content stream and added to the
quarantine. This could be a file that contained a virus or was blocked by antivirus file
blocking. %%QUARFILENAME%% can be used in virus and file block messages.
Quarantining is only available on FortiGate units with a local disk.
%%URL%% The URL of a web page. This can be a web page that is blocked by web filter content
or URL blocking. %%URL%% can also be used in http virus and file block messages to
be the URL of the web page from which a user attempted to download a file that is
blocked.
%%PROTOCOL%% The protocol (HTTP, FTP, POP3, IMAP, SMTP) in which a virus was detected.
%%PROTOCOL%% is added to alert email virus messages.
%%SOURCE_IP%% The IP address from which a virus was received. For email this is the IP address of the
email server that sent the email containing the virus. For HTTP this is the IP address
of the web page that sent the virus.
%%DEST_IP%% The IP address of the computer that would have received the blocked file. For email
this is the IP address of the user’s computer that attempted to download the message
from which the file was removed.
Example
This example shows how to change the message sent when an FTP download is oversize.
config system replacemsg ftp ftp-dl-filesize
set buffer "This file download was blocked because it is > 10MB."
end
History
replacemsg http
Use this command to change default replacement messages added to web pages when the antivirus
engine blocks a file in an HTTP session because of a matching file pattern or because a virus is detected; or when
web filter blocks a web page.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg http <message-type>
set buffer <message>
set format <format>
set header <header_type>
end
Variable Description Default
<message-type> HTTP replacement message type, one of: No default.
bannedword The web filter banned word list
blocks a web page.
http-block The antivirus system blocks a
file that matches a file pattern.
http-client-bannedword The antivirus system blocks a
file that matches a file pattern.
http-client-block The antivirus system blocks a
file that matches a file pattern.
http-client-filesize The antivirus system blocks a
file that is too large to scan.
http-client-virus The antivirus system blocks a
file that contains a virus.
http-filesize The antivirus system blocks a
file that is too large to be virus
scanned.
http-virus The antivirus system blocks a
file that contains a virus.
infcache-block The antivirus system blocks a
URL that has a previously
discovered virus.
url-block Web filter URL blocking blocks
a web page.
buffer <message> Type a new replacement message to replace the current Depends on
replacement message. Maximum length 8 192 characters. message type.
format <format> Set the format of the message, one of: html
• html
• text
• none
header <header_type> Set the format of the message header, one of: http
• 8bit
• http
• none
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message.
Tag Description
%%FILE%% The name of a file that has been removed from a content stream. This could be a file
that contained a virus or was blocked by antivirus file blocking. %%FILE%% can be
used in virus and file block messages.
%%VIRUS%% The name of a virus that was found in a file by the antivirus system. %%VIRUS%% can
be used in virus messages
%%QUARFILENAME%% The name of a file that has been removed from a content stream and added to the
quarantine. This could be a file that contained a virus or was blocked by antivirus file
blocking. %%QUARFILENAME%% can be used in virus and file block messages.
Quarantining is only available on FortiGate units with a local disk.
%%URL%% The URL of a web page. This can be a web page that is blocked by web filter content
or URL blocking. %%URL%% can also be used in http virus and file block messages to
be the URL of the web page from which a user attempted to download a file that is
blocked.
%%PROTOCOL%% The protocol (HTTP, FTP, POP3, IMAP, SMTP) in which a virus was detected.
%%PROTOCOL%% is added to alert email virus messages.
%%SOURCE_IP%% The IP address of the web page from which a virus was received.
%%DEST_IP%% The IP address of the computer that would have received the blocked file. For email
this is the IP address of the user’s computer that attempted to download the message
from which the file was removed.
Example
This example shows how to change the message that replaces a web page blocked for banned words.
config system replacemsg http http-client-bannedword
set buffer "This web page was blocked. It contains banned words."
end
History
replacemsg im
Use this command to change default replacement messages added to instant messaging and peer-to-peer
sessions when either file-transfer or voice-chat is blocked.
By default, these are text messages with an 8-bit header.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg im <message-type>
set buffer <message>
set format <format>
set header <header_type>
end
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message.
Tag Description
%%FILE%% The name of a file that has been removed from a content stream. This could be a file
that contained a virus or was blocked by antivirus file blocking. %%FILE%% can be
used in virus and file block messages.
%%VIRUS%% The name of a virus that was found in a file by the antivirus system. %%VIRUS%% can
be used in virus messages
%%QUARFILENAME%% The name of a file that has been removed from a content stream and added to the
quarantine. This could be a file that contained a virus or was blocked by antivirus file
blocking. %%QUARFILENAME%% can be used in virus and file block messages.
Quarantining is only available on FortiGate units with a local disk.
%%PROTOCOL%% The protocol (HTTP, FTP, POP3, IMAP, SMTP) in which a virus was detected.
%%PROTOCOL%% is added to alert email virus messages.
%%SOURCE_IP%% The IP address from which a virus was received. For email this is the IP address of the
email server that sent the email containing the virus. For HTTP this is the IP address
of the web page that sent the virus.
%%DEST_IP%% The IP address of the computer that would have received the blocked file. For email
this is the IP address of the user’s computer that attempted to download the message
from which the file was removed.
Example
This example shows how to change the message added to instant messaging sessions when voice
chat is blocked.
config system replacemsg im im-voice-chat-block
set buffer "Use of chat applications is not permitted."
end
History
replacemsg mail
Use this command to change default replacement messages added to email messages when the antivirus
engine blocks a file either because of a matching file pattern or because a virus is detected; or when spam filter
blocks an email.
By default, these are text messages with an 8-bit header.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg mail <message-type>
set buffer <message>
set format <format>
set header <header_type>
end
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message.
Tag Description
%%FILE%% The name of a file that has been removed from a content stream. This could be a file
that contained a virus or was blocked by antivirus file blocking. %%FILE%% can be
used in virus and file block messages.
%%VIRUS%% The name of a virus that was found in a file by the antivirus system. %%VIRUS%% can
be used in virus messages
%%QUARFILENAME%% The name of a file that has been removed from a content stream and added to the
quarantine. This could be a file that contained a virus or was blocked by antivirus file
blocking. %%QUARFILENAME%% can be used in virus and file block messages.
Quarantining is only available on FortiGate units with a local disk.
%%PROTOCOL%% The protocol (HTTP, FTP, POP3, IMAP, SMTP) in which a virus was detected.
%%PROTOCOL%% is added to alert email virus messages.
%%SOURCE_IP%% IP address of the email server that sent the email containing the virus.
%%DEST_IP%% IP address of the user’s computer that attempted to download the message from
which the file was removed.
%%EMAIL_FROM%% The email address of the sender of the message from which the file was removed.
%%EMAIL_TO%% The email address of the intended receiver of the message from which the file was
removed.
Example
This example shows how to change the email message that is sent to test the alert email system.
config system replacemsg mail email-virus
set buffer "The attachment was blocked because it contains a virus."
end
History
Syntax
config system replacemsg mm1 <message_type>
set add-smil {enable | disable}
set charset <character_set>
set class <class>
set format <format>
set from <from_address>
set from-sender {enable | disable}
set header <header_type>
set image <string>
set message <message_text>
set priority <priority>
set rsp-status <rsp_status>
set rsp-text <response_text>
set sender-visibility <sender_vis>
set smil-part <string>
set subject <subject_text>
end
Keywords and variable Description Default
<message_type> MM1 replacement message types, one of: No default.
• mm1-retr-conf-block
• mm1-retr-conf-bword
• mm1-retr-conf-sis-block
• mm1-retr-conf-virus
• mm1-send-conf-block
• mm1-send-conf-bword
• mm1-send-conf-sis-block
• mm1-send-conf-virus
• mm1-send-req-block
• mm1-send-req-bword
• mm1-send-req-sis-block
• mm1-send-req-virus
add-smil Enable to add SMIL content to the message. SMIL content can disable
{enable | disable} include images.
This keyword is available for the following message types:
• mm1-send-req-block
• mm1-send-req-bword
• mm1-send-req-sis-block
• mm1-send-req-virus
charset Character encoding used for replacement message, one of: utf-8
<character_set> • us-ascii
• utf-8
Example
This example shows how to set the message sent when a virus being sent by this user on the MM1
network. It uses the default message text.
History
Syntax
config system replacemsg mm3 <message_type>
set charset <character_set>
set format <format>
set from <from_address>
set header <header_type>
set message <message_text>
set priority <priority>
set subject <subject_text>
end
Keywords and variable Description Default
<message_type> MM3 replacement message types, one of: No default
• mm3-block
• mm3-block-notif
• mm3-bword
• mm3-bword-notif
• mm3-sis-block
• mm3-sis-block-notif
• mm3-sis-block-notif
• mm3-virus
• mm3-virus-block
charset Character encoding used for replacement messages, one of: utf-8
<character_set> • us-ascii
• utf-8
format <format> Replacement message format flag, one of: text
• html
• none
• text
• wml
from <from_address> Address the message is from. null
header <header_type> Set the format of the message header, one of: none
• 8bit
• http
• none
message Text of the replacement message. Depends on
<message_text> message type.
priority <priority> Priority of the message, one of: normal
• high
• low
• normal
• not included
subject Subject text string. Depends on
<subject_text> message type.
Example
This example shows how to set the message sent when a user on the MM3 network sends one or
more viruses. It uses the default message text.
config system replacemsg mm3 mm3-virus
set charset utf-8
set class automatic
set format text
set header none
set priority high
set rsp-status err-content-not-accepted
set subject “Messages sent containing viruses”
set message "This device has sent %%NUM_MSG%% messages containing the
virus %%VIRUS%% in the last %%DURATION%% hours."
end
History
Syntax
config system replacemsg mm4 <message_type>
set charset <character_set>
set class <class>
set domain <address_domain>
set format <format>
set from <from_address>
set from-sender {enable | disable}
set header <header_type>
set image <string>
set message <message_text>
set priority <priority>
set rsp-status <rsp_status>
set smil-part <string>
set subject <subject_text>
end
Keywords and variables Description Default
<message_type> MM4 replacement message types, one of: No default
• mm4-block
• mm4-block-notif
• mm4-bword
• mm4-bword-notif
• mm4-sis-block
• mm4-sis-block-notif
• mm4-virus
• mm4-virus-block
add-smil Enable to add SMIL content to the message. SMIL content can disable
{enable | disable} include images.
This keyword is available for the following message types:
• mm4-block-notif
• mm4-bword-notif
• mm4-sis-block-notif
charset Character encoding used for replacement messages, one of: utf-8
<character_set> • us-ascii
• utf-8
class <class> The message can be classified as one of: automatic
• advertisement
• automatic
• informational
• not-included
• personal
domain The from address domain. null
<address_domain>
Example
This example shows how to set the message sent when a user on the MM4 network sends one or
more viruses. It uses the default message text.
config system replacemsg mm4 mm4-virus-notif
set class automatic
set domain ‘’
set format text
set header none
set priority high
set subject “Messages sent containing viruses”
set message "This device has sent %%NUM_MSG%% messages containing the
virus %%VIRUS%% in the last %%DURATION%% hours."
end
History
Syntax
config system replacemsg mm7 <mm7message_type>
set add-smil {enable | disable}
set addr_type <addr_type>
set charset <character_set>
set class <class>
set format <format>
set from <from_address>
set from-sender {enable | disable}
set header <header_type>
set image <string>
set message <message_text>
set priority <priority>
set rsp-status <rsp_status>
set smil-part <string>
set subject <subject_text>
end
Keywords and variables Description Default
<mm7message_type> MM7 replacement message types, one of: No default
• mm7-block
• mm7-block-notif
• mm7-bword
• mm7-bword-notif
• mm7-sis-block
• mm7-sis-block-notif
• mm7-virus
• mm7-virus-block
add-smil Enable to add SMIL content to the message. SMIL content can disable
{enable | disable} include images.
This keyword is available for the following message types:
• mm7-block-notif
• mm7-bword-notif
• mm7-sis-block-notif
addr_type <addr_type> From address types, one of: number
• number
• rfc2882-addr
• short-code
charset Character encoding used for replacement messages, one of: utf-8
<character_set> • us-ascii
• utf-8
class <class> The message can be classified as one of: automatic
• advertisement
• automatic
• informational
• not-included
• personal
Example
This example shows how to set the message sent when a user on the MM7 network sends one or
more viruses. It uses the default message text.
config system replacemsg mm7 mm7-virus-notif
set charset utf-8
set class automatic
set format text
set header none
set priority high
set rsp-status err-content-not-accepted
set subject “Messages sent containing viruses”
set message "This device has sent %%NUM_MSG%% messages containing the
virus %%VIRUS%% in the last %%DURATION%% hours."
end
History
replacemsg nntp
Use this command to change the net news transfer protocol (NNTP) download pages including:
• NNTP download blocked
• NNTP download filesize error
• NNTP download infected
These are HTML messages with HTTP headers.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg nntp auth_msg_type
set buffer <message>
set format <format>
set header <header_type>
end
Variable Description Default
auth_msg_type FortiGuard replacement alertmail message type. One of: No default
nntp-dl- A file being downloaded has been blocked, and
blocked quarantined.
nntp-dl- The article is larger than the configured size limit.
filesize
nntp-dl- An attached file has had a virus detected in it. The file
infected has been quarantined.
buffer <message> Type a new replacement message to replace the current replacement Depends on
message. Maximum length 8 192 characters. message
type.
format <format> Set the format of the message: No default
• html
• text
• none
header Set the format of the message header: Depends on
<header_type> • 8bit message
• http type.
• none
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message.
Tag Description
%%FILE%% The name of a file that has been removed from a content stream. This could be a file
that contained a virus or was blocked by antivirus file blocking. The file may have been
quarantined if a virus was detected. %%FILE%% can be used in virus and file block
messages.
%%QUARFILENAME%% The name of a file that has been removed from a content stream and added to the
quarantine. This could be a file that contained a virus or was blocked by antivirus file
blocking. %%QUARFILENAME%% can be used in virus and file block messages.
Quarantining is only available on FortiGate units with a local disk.
%%VIRUS%% The name of a virus that was found in a file by the antivirus system. %%VIRUS%% can
be used in virus messages
Example
The default message for a detected virus is:
Virus/Worm detected: %%VIRUS%% Protocol: %%PROTOCOL%% Source IP: %%SOURCE_IP%%
Destination IP: %DST_IP%% Email Address From: %%EMAIL_FROM%% Email Address To:
%%EMAIL_TO%%
History
replacemsg spam
Use this command to change default replacement messages added to SMTP email messages when spam
filter blocks an email message. By default, these are text messages with an 8-bit header.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg spam <message-type>
set buffer <message>
set format <format>
set header <header_type>
end
Tag Description
%%QUARFILENAME%% The name of a file that has been removed from a content stream and added to the
quarantine. This could be a file that contained a virus or was blocked by antivirus file
blocking. %%QUARFILENAME%% can be used in virus and file block messages.
Quarantining is only available on FortiGate units with a local disk.
%%SOURCE_IP%% The IP address from which a virus was received. For email this is the IP address of the
email server that sent the email containing the virus. For HTTP this is the IP address
of the web page that sent the virus.
%%DEST_IP%% The IP address of the computer that would have received the blocked file. For email
this is the IP address of the user’s computer that attempted to download the message
from which the file was removed.
%%EMAIL_FROM%% The email address of the sender of the message from which the file was removed.
%%EMAIL_TO%% The email address of the intended receiver of the message from which the file was
removed.
Example
This example shows how to change the message added to SMTP mail that the spam filter has
blocked.
config system replacemsg spam ipblocklist
set buffer "This email was blocked as spam."
end
History
replacemsg sslvpn
Use this command to change the login page presented to SSL-VPN users.
This is an HTML message with an HTTP header.
Note: If you unset the buffer for a replacement message, it will be cleared.
Syntax
config system replacemsg sslvpn sslvpn-login
set buffer <message>
set format <format>
set header <header_type>
end
Variable Description Default
buffer <message> Type a new replacement message to replace the current Depends on
replacement message. Maximum length 8 192 characters. message type.
format <format> Set the format of the message: No default
• html
• text
• none
header <header_type> Set the format of the message header: Depends on
• 8bit message type.
• http
• none
Replacement messages can include replacement message tags. When users receive the replacement
message, the replacement message tag is replaced with content relevant to the message.
History
Syntax
config system replacemsg_group
edit <groupname_string>
set comment <string>
config {fortiguard-wf | ftp | http | mail | mm1 | mm3 | mm4 | mm7 |
nntp | spam}
edit <msgkey_integer>
set msg-type <type>
set buffer <string>
set header <header_flag>
set format <format_flag>
set message <string>
end
end
Variable Description Default
edit <groupname_string> Create or edit a replacement message group.
comment <string> Enter a descriptive comment for this replacement
message group.
Example
In this example you have 2 groups of users that use different replacement messages due to language
and regional differences. The first group is in the United States, and the other group is in the United
Kingdom. Different spelling and different speech patterns mean, each group expects different
messages. To keep it simple, the format will be text only.
config system replacemsg-group
edit united_states
set comment “messages for United States customers”
config http
edit 1
set msg-type bannedword
set format text
set message “Your attempt to access this unauthorized web page has
been blocked. It contains off-color words that violate the banned
word list. URL = http://%%URL%%”
end
end
edit united_kingdom
set comment “messages for United Kingdom customers”
config http
edit 1
set msg-type bannedword
set format text
set message “Unfortunately your requested web page has been blocked.
It appears to contain prohibited off-colour words. URL =
http://%%URL%%”
end
end
History
Syntax
config system replacemsg-image
edit <image_name>
set image-base64 <image_data>
set image-type <format>
end
Variables Description Default
edit <image_name> Enter the name or tag to use for this image none.
image-base64 Enter the image in base64 encoding. You can also use the graphical none.
<image_data> interface to add images by browsing to their location.
image-type <format> Select the format of the image. Available formats include: none.
• gif
• jpeg
• png
• tiff
History
session-helper
A session-helper binds a service to a TCP port. By default, there are session helpers that bind services
to standard ports. Use this command to configure a new session helper or to edit an existing one.
Syntax
config system session-helper
edit <helper-number>
set name <helper-name>
set port <port_number>
set protocol <protocol_number>
end
Example
Use the following commands to add the remote shell application to port 512, as protocol 6:
config system session-helper
edit 14
set name rsh
set port 512
set protocol 6
end
History
session-sync
Use this command to configure TCP session synchronization between two standalone FortiGate units.
You can use this feature with external routers or load balancers configured to distribute or load balance
TCP sessions between two peer FortiGate units. If one of the peers fails, session failover occurs and
active sessions fail over to the peer that is still operating. This failover occurs without any loss of data.
As well the external routers or load balancers will detect the failover and re-distribute all sessions to
the peer that is still operating.
Note: TCP session synchronization between two standalone FortiGate units is also sometimes called standalone
session synchronization or session synchronization between non-HA FortiGate units.
Internet
Router or
Load Balancer
Session
Syncronization
Link
Router or
Load Balancer
Internal Network
As well, the session synchronized virtual domains should have the same firewall policies so that
sessions can be resumed after a failover using the same firewall policies.
For a configuration example, see “Basic example configuration” on page 437.
Syntax
config system session-sync
edit <sync_id>
set peerip <peer_ipv4>
set peervd <vd_name>
set syncvd <vd_name>
config filter
set dstaddr <string>
set dstintf <interface_name>
set service <string>
set srcaddr <string>
set srcintf <interface_name>
end
end
Variables Description Default
<sync_id> Enter the unique ID number for the session synchronization configuration No
to edit. The session synchronization configuration ID can be any number default
between 1 and 200. The session synchronization configuration IDs of the
peers do not have to match.
peerip <peer_ipv4> Enter the IP address of the interface on the peer unit that is used for the 0.0.0.0
session synchronization link.
peervd <vd_name> Enter the name of the virtual domain that contains the session root
synchronization link interface on the peer unit. Usually both peers would
have the same peervd. Multiple session synchronization configurations
can use the same peervd.
Internet
Router or
Load Balancer
Router or
Load Balancer
Internal Network
Configuration steps
1 Configure the load balancer or router to send all sessions to peer_1.
2 Configure the load balancer or router to send all traffic to peer_2 if peer_1 fails.
3 Use normal FortiGate configuration steps on peer_1:
• Enable virtual domain configuration.
• Add the vdom_1 virtual domain.
• Add port1 and port2 to the vdom_1 virtual domain and configure these interfaces.
• Set the IP address of port1 to 192.168.20.1.
• Set the IP address of port2 to 172.110.20.1.
• Set the IP address of port3 to 10.10.10.1.
• Add route mode firewall policies between port1 and port2 to vdom_1.
4 Enter the following commands to configure session synchronization for peer_1
config system session-sync
edit 1
set peerip 10.10.10.2
set peervd root
set syncvd vdom_1
end
5 Use normal FortiGate configuration steps on peer_2:
• Enable virtual domain configuration.
• Add the vdom_1 virtual domain.
• Add port1 and port2 to the vdom_1 virtual domain and configure these interfaces.
• Set the IP address of port1 to 192.168.20.2.
• Set the IP address of port2 to 172.110.20.2.
• Set the IP address of port3 to 10.10.10.1.
• Add route mode firewall policies between port1 and port2 to vdom_1.
6 Enter the following commands to configure session synchronization for peer_1
config system session-sync
edit 1
set peerip 10.10.10.1
set peervd root
set syncvd vdom_1
end
History
FortiOS v3.0 MR6 The command config system session-sync is new for FortiOS v3.0 MR6.
session-ttl
Use this command to increase or decrease the length of time a TCP session can be idle before being
dropped. You can set the general default timeout or set the timeout for a specific port.
Syntax
config system session-ttl
set default <seconds>
config port
edit <port_number>
set timeout {<seconds> | never}
end
end
Variables Description Default
default <seconds> Enter a the default session timeout in seconds. The valid range is 3600
from 300 - 604800 seconds.
edit <port_number> Enter the port number for the TCP session. None.
timeout Enter the number of seconds the session can be idle for on this port. 300
{<seconds> | never} The valid range is from 300 - 604800 seconds. Optionally you can
select never instead of specifying the number of seconds.
Note: While it is possible to set a timeout for a session to a value that never expires, this is not a secure
configuration and should be avoided.
Examples
The following command increases the default session timeout:
config system session-ttl
set default 62000
end
Use the following command to change the session timeout for SSH on port 22 to 3600 seconds.
config system session-ttl
config port
edit 22
set timeout 3600
end
end
History
settings
Use this command to change settings that are per VDOM settings such as the operating mode and
default gateway. If the operating mode is Transparent, you must also set the management IP address.
system settings differs from system global in that system global keywords apply to the
entire FortiGate unit, where system settings keywords apply only to the current VDOM, or the
entire FortiGate unit if VDOMs are not enabled.
Bi-directional Forwarding Detection (BFD) is a protocol used by BGP and OSPF. It is used to quickly
locate hardware failures in the network. Routers running BFD communicate with each other, and if a
timer runs out on a connection then that router is declared down. BFD then communicates this
information to the routing protocol and the routing information is updated. BFD support was added in
FortiOS v3.0 MR4, and can only be configured through the CLI.
Syntax
config system settings
set asymroute {enable | disable}
set bfd {enable | disable}
set bfd-desired-min-tx <interval_msec>
set bfd-required-min-tx <interval_msec>
set bfd-detect-mult <multiplier
set bfd-dont-enforce-src-port {enable | disable}
set device <interface_name>
set ecmp-max-paths <max_entries>
set gateway <gw_ipv4>
set gateway-device <interface_name>
set ip <address_ipv4>
set manageip <manage_ipv4>
set multicast-forward {enable | disable}
set multicast-ttl-notchange {enable | disable}
set opmode {nat | transparent}
set p2p-rate-limit {per-policy | per-profile}
set sccp-port <port_number>
set sip-helper {enable | disable}
set sip-nat-trace {enable | disable}
set sip-tcp-port <port_number>
set sip-udp-port <port_number>
set status {enable | disable}
set utf8-spam-tagging {enable | disable}
end
Variables Description Default
asymroute Enable to turn on asymmetric routing on your FortiGate disabled
{enable | disable} unit, or this VDOM if you have VDOMs enabled.
This feature should only be used as a temporary check
to troubleshoot a network. It is not intended to be
enabled permanently. When it enabled, many security
features of your FortiGate unit are not enabled. For
more information on
bfd {enable | disable} Enable to turn on bi-directional forwarding detection disable
(BFD) for this virtual domain, or the whole FortiGate
unit. BFD can be used with OSPF and BGP
configurations, and overridden on a per interface
basis.
sip-tcp-port <port_number> Enter a port number from 1 to 65535 for the TCP port 5060
the SIP proxy will use to monitor for SIP traffic.
sip-udp-port <port_number> Enter a port number from 1 to 65535 for the UDP port 5060
the SIP proxy will use to monitor for SIP traffic.
status {enable | disable} Disable or enable this VDOM. Disabled VDOMs keep enable
all their configuration, but the resources of that VDOM
are not accessible.
To leave VDOM mode, all disabled VDOMs must be
deleted - to leave VDOM mode there can be only the
root VDOM configured.
utf8-spam-tagging Enable converts spam tags to UTF8 for better non- enable
{enable | disable} ascii character support.
History
Related Commands
• vdom
snmp community
Use this command to configure SNMP communities to your FortiGate unit. You add SNMP
communities so that SNMP managers can connect to the FortiGate unit to view system information
and receive SNMP traps. You can add up to three SNMP communities. Each community can have a
different configuration for SNMP queries and traps. Each community can be configured to monitor the
FortiGate unit for a different set of events. You can also the add IP addresses of up to 8 SNMP
managers to each community.
Note: Part of configuring an SNMP manager is to list it as a host in a community on the FortiGate unit it
will be monitoring. Otherwise the SNMP monitor will not receive any traps from that FortiGate unit, or be
able to query it.
Syntax
config system snmp community
edit <index_number>
set events <events_list>
set name <community_name>
set query-v1-port <port_number>
set query-v1-status {enable | disable}
set query-v2c-port <port_number>
set query-v2c-status {enable | disable}
set status {enable | disable}
set trap-v1-lport <port_number>
set trap-v1-rport <port_number>
set trap-v1-status {enable | disable}
set trap-v2c-lport <port_number>
set trap-v2c-rport <port_number>
set trap-v2c-status {enable | disable}
config hosts
edit <host_number>
set interface <if_name>
set ip <address_ipv4>
end
end
Variables Description Default
edit <index_number> Enter the index number of the community in the SNMP
communities table. Enter an unused index number to
create a new SNMP community.
Example
This example shows how to add a new SNMP community named SNMP_Com1. The default
configuration can be used in most cases with only a few modifications. In the example below the
community is added, given a name, and then because this community is for an SNMP manager that is
SNMP v1 compatible, all v2c functionality is disabled. After the community is configured the SNMP
manager is added. The SNMP manager IP address is 192.168.20.34 and it connects to the FortiGate
unit internal interface.
config system snmp community
edit 1
set name SNMP_Com1
set query-v2c-status disable
set trap-v2c-status disable
config hosts
edit 1
set interface internal
set ip 192.168.10.34
end
end
History
Related topics
• system snmp sysinfo
snmp sysinfo
Use this command to enable the FortiGate SNMP agent and to enter basic system information used by
the SNMP agent. Use information about the FortiGate unit to identify it. When your SNMP manager
receives traps from the FortiGate unit, you will know which unit sent the information.
Syntax
config system snmp sysinfo
set contact-info <info_str>
set description <description>
set location <location>
set status {enable | disable}
set trap-high-cpu-threshold <percentage>
set trap-log-full-threshold <percentage>
set trap-low-memory-threshold <percentage>
end
Keywords and variables Description Default
contact-info <info_str> Add the contact information for the person responsible for this No
FortiGate unit. The contact information can be up to 35 default
characters long.
description <description> Add a name or description of the FortiGate unit. The description No
can be up to 35 characters long. default
location <location> Describe the physical location of the FortiGate unit. The system No
location description can be up to 35 characters long. default
status {enable | disable} Enable or disable the FortiGate SNMP agent. disable
trap-high-cpu-threshold Enter the percentage of CPU used that will trigger the threshold 80
<percentage> SNMP trap for the high-cpu.
trap-log-full-threshold Enter the percentage of disk space used that will trigger the 90
<percentage> threshold SNMP trap for the log-full.
trap-low-memory-threshold Enter the percentage of memory used that will be the threshold 80
<percentage> SNMP trap for the low-memory.
Example
This example shows how to enable the FortiGate SNMP agent and add basic SNMP information.
config system snmp sysinfo
set status enable
set contact-info 'System Admin ext 245'
set description 'Internal network unit'
set location 'Server Room A121'
end
History
Related topics
• system snmp community
switch-interface
Use this command to group interfaces into a ‘soft-switch’ - a switch that is implemented in software
instead of hardware. A group of switched interfaces have one IP address between them to connect to
the FortiGate unit. This feature is only available on models that have the switch-mode feature
Interfaces that may be members of a ‘soft-switch’ are physical and wlan interfaces that are not used
anywhere else in FortiOS. Member interfaces cannot be monitored by HA or used as heart beat
devices.
Syntax
config system switch-interface
edit <group_name>
set member <if1_ipv4> <if2_ipv4> ...
end
Keywords and variables Description Default
<group_name> The name for this group of interfaces. No
Can not be in use by any other interfaces, vlans, or inter-VDOM default
links.
member <if1_ipv4> Enter all the interfaces that will be part of this switch on one line. No
<if2_ipv4> ... Separate each by a space. default
Use <tab> to advance through the list of available interfaces.
Example
This example shows how to create a group of 3 interfaces called low_speed ideally that are all at
10m speed. It assumes these interfaces are not referred to in FortiOS by anything else.
config system switch-interface
edit low_speed
set member port1 wlan dmz
end
History
tos-based-priority
Use this command to prioritize your network traffic based on its type-of-service (TOS).
IP datagrams have a TOS byte in the header (as described in RFC 791). Four bits within this field
determine the delay, the throughput, the reliability, and cost associated with that service. Together
these bits are the tos variable of the tos-based-priority command.
The TOS information can be used to manage network traffic based on the needs of the application or
service. TOS application routing (RFC 1583) is supported by OSPF routing.
Syntax
config system tos-based-priority
edit <name>
set tos <ip_tos_value>
set priority [high | medium | low]
end
Variables Description Default
edit <name> Enter the name of the link object to create No default.
tos <ip_tos_value> Enter the value of the type of service byte in the IP 0
datagram header. This value can be from 0 to 15.
priority [high | medium | Select the priority of this type of service as either high, High
low] medium, or low priority. These priority levels conform to the
firewall traffic shaping priorities.
Examples
It is a good idea to have your entry names in the tos-based-priority table and their TOS values be the
same. Otherwise it can become confusing.
config tos-based-priority
edit 1
set tos 1
set priority low
next
edit 4
set tos 4
set priority medium
next
edit 6
set tos 6
set priority high
next
end
History
Related topics
• system global
• router ospf
• execute ping-options
vdom-link
Use this command to create an internal point-to-point interface object. This object is a link used to join
virtual domains.
Creating the interface object also creates 2 new interface objects by the name of <name>0 and
<name>1. For example if your object was named v_link, the 2 interface objects would be named
v_link0 and v_link1. You can then configure these new interfaces as you would any other virtual
interface using config system interface.
When using vdom-links in HA, you can only have vdom-links in one vcluster. If you have vclusters
defined, you must use the vcluster keyword to determine which vcluster will be allowed to contain the
vdom-links.
As of FortiOS v3.0 MR3, inter-VDOM links support BGP routing.
For more information on the vdom-link command see “Configuring inter-VDOM routing” on page 53
and the FortiGate VLANs and VDOMs Guide.
Syntax
config system vdom-link
edit <name>
end
Variables Description Default
edit <name> Enter the name of the link object to create. You are limited No default.
to 8 characters maximum for the name.
vcluster {1|2} Select vcluster 1 or 2 as the only vcluster to have inter-
VDOM links.
This option is available only when HA and vclusters are
configured, and there are VDOMs in both vclusters.
Examples
In this example you have already created two virtual domains called v1 and v2. You want to set up a
link between them. The following command creates the VDOM link called v12_link. Once you have the
link you need to bind its two ends to the VDOMs it will be working with.
config system vdom-link
edit v12_link
end
History
Related topics
• system interface
wireless mac-filter
Use this command to configure the WLAN interface MAC filter on the FortiWifi-60 unit in Access Point
mode.
Syntax
config system wireless mac-filter
set default-acl {allow | deny}
set status {enable | disable}
config mac-list
edit <list_number>
set acl {allow | deny }
set mac <mac_address>
end
end
Variables Description Default
default-acl {allow | deny} Select whether unlisted MAC addresses are allowed or deny
denied access.
edit <list_number> Enter the number of the MAC filter list that you want to edit.
Enter an unused number to create a new list.
status {enable | disable} Enable or disable MAC filter. disable
Status is always disable in Client mode.
mac-list variables
acl {allow | deny } Select Allow or Deny for the access control list (ACL). deny
mac <mac_address> Set the MAC address to add to the list. No default.
Examples
This example shows how to enable the MAC filter, specify that unlisted MAC addresses should be
denied access, and add MAC address 12:34:56:78:90:AB to the MAC filter Allow list:
config system wireless mac-filter
set status enable
set default-acl deny
config mac-list
edit 1
set acl allow
set mac 12:34:56:78:90:AB
end
end
History
FortiOS v2.80E New command, incorporating config system network wireless wlan.
FortiOS v3.0 Changed mac_filter to mac-filter, default_acl to default-acl, mac_list to
mac-list.
Related topics
• system wireless settings
• system interface
wireless settings
Use this command to configure the WLAN interface wireless settings on the FortiWiFi-60 unit.
Syntax
config system wireless settings
set band {802.11a | 802.11b | 802.11g}
set beacon_interval <integer>
set broadcast_ssid {enable | disable}
set channel <channel_number>
set fragment_threshold <bytes>
set geography <americas | EMEA | Israel | Japan | World>
set key <WEP-key_hex>
set mode <opmode>
set passphrase <string>
set power_level <dBm>
set radius-server <radius_name>
set rts_threshold <integer>
set security <sec_mode>
set ssid <ssid_string>
end
Variable Description Default
band Enter the wireless band to use. (802.11a only available on 802.11g
{802.11a | 802.11b | 802.11g} the FortiWiFi-60A and FortiWiFi-60B.)
beacon_interval <integer> Set the interval between beacon packets. Access Points 100
broadcast Beacons or Traffic Indication Messages (TIM) to
synchronize wireless networks. In an environment with
high interference, decreasing the Beacon Interval might
improve network performance. In a location with few
wireless nodes, you can increase this value.
This is available in AP mode only.
broadcast_ssid Enable if you want FortiWiFi-60 to broadcast its SSID. disable
{enable | disable} For the FortiWiFi-60A unit, see wifi-broadcast-ssid
in the system interface command.
channel <channel_number> Select a channel number for your FortiWiFi-60 wireless 5
network.
Users who want to use the wireless network should
configure their computers to use this channel for wireless
networking.
fragment_threshold <bytes> Set the maximum size of a data packet before it is broken 2346
into smaller packets, reducing the chance of packet
collisions. If the packet size is larger than the threshold, the
FortiWiFi unit will fragment the transmission. If the packet
size less than the threshold, the FortiWiFi unit will not
fragment the transmission.
A setting of 2346 bytes effectively disables this option.
Range 800-2346.
This is available in AP mode only.
For the FortiWiFi-60A unit, see wifi-fragment_threshold
<packet_size> in the system interface command.
geography <americas | EMEA | Select the country or region in which this FortiWifi-60 will World
Israel | Japan | World> operate.
Example
This example shows how to configure the wireless interface.
config system wireless settings
set channel 4
set geography Americas
set security WEP128
set ssid test_wifi
end
History
Related topics
• system interface
• system vdom-link
• wireless mac-filter
zone
Use this command to add or edit zones.
In NAT/Route mode, you can group related interfaces or VLAN subinterfaces into zones. Grouping
interfaces and subinterfaces into zones simplifies policy creation. For example, if you have two
interfaces connected to the Internet, you can add both of these interfaces to the same zone. Then you
can configure policies for connections to and from this zone, rather than to and from each interface.
In Transparent mode you can group related VLAN subinterfaces into zones and add these zones to
virtual domains.
Syntax
config system zone
edit <zone_name>
set interface <name_str>
set intrazone {allow | deny}
end
Keywords and variables Description Default
edit <zone_name> Enter the name of a new or existing zone.
interface <name_str> Add the specified interface to this zone. You cannot add an No default.
interface if it belongs to another zone or if firewall policies
are defined for it.
intrazone {allow | deny} Allow or deny traffic routing between different interfaces in deny
the same zone.
Example
This example shows how to add a zone named Zone1, add the internal interface to it, and to deny
routing between different zones.
config system zone
edit Zone1
set interface internal
set intrazone deny
end
History
Related topics
• system interface
user
This chapter covers
• configuration of the FortiGate unit to use external authentication servers, including
Windows Active Directory
• configuration of user accounts and user groups for firewall policy authentication, administrator
authentication and some types of VPN authentication
• configuration of peers and peer groups for IPSec VPN authentication and PKI user authentication
• configuration of dynamic profiles and msisdn filters (FortiOS Carrier)
adgrp
Use this command to list Active Directory user groups.
Syntax
get user adgrp [<adgroupname>]
If you do not specify a group name, the command returns information for all Active Directory groups.
For example:
== [ DOCTEST/Cert Publishers ]
name: DOCTEST/Cert Publishers server-name: ADserv1
== [ DOCTEST/Developers ]
name: DOCTEST/Developers server-name: ADserv1
== [ DOCTEST/Domain Admins ]
name: DOCTEST/Domain Admins server-name: ADserv1
== [ DOCTEST/Domain Computers ]
name: DOCTEST/Domain Computers server-name: ADserv1
== [ DOCTEST/Domain Controllers ]
name: DOCTEST/Domain Controllers server-name: ADserv1
== [ DOCTEST/Domain Guests ]
name: DOCTEST/Domain Guests server-name: ADserv1
== [ DOCTEST/Domain Users ]
name: DOCTEST/Domain Users server-name: ADserv1
== [ DOCTEST/Enterprise Admins ]
name: DOCTEST/Enterprise Admins server-name: ADserv1
== [ DOCTEST/Group Policy Creator Owners ]
name: DOCTEST/Group Policy Creator Owners server-name: ADserv1
== [ DOCTEST/Schema Admins ]
name: DOCTEST/Schema Admins server-name: ADserv1
If you specify an Active Directory group name, the command returns information for only that group.
For example:
name : DOCTEST/Developers
server-name : ADserv1
The server-name is the name you assigned to the Active Directory server when you configured it in
the user fsae command.
History
Related topics
• user fsae
• execute fsae refresh
Note: This feature only applies to HTTP, SMTP, MM1, MM3, MM4, and MM7 traffic.
Syntax
config user dynamic-profile
set attribute-key <RADIUS_attribute_key>
set context-timeout <timeout_seconds>
set hold-time <proxy_hold_time>
set log-flags <lflags>
set log-period <log_time>
set mem-percent <memory_percent>
set radius-attribute <radius_attribute_name>
set radius-response {enable | disable}
set radius-server-port <radius_listen_port>
set secret <server_password>
set status {enable | disable}
set validate-request-secret {enable | disable}
set vdom <vdom-name>
end
Keywords and variables Description Default
attribute-key Key that contains the profile name in the radius- No default.
<RADIUS_attribute_key> attribute.
context-timeout Timeout value for user context table entries. In seconds, 28800
<timeout_seconds> 0 disables the timeout feature.
hold-time Time to hold in proxy connection state to receive RADIUS 5
<proxy_hold_time> START. In seconds, 0 disables the feature and the proxy will
wait until the session times out.
log-flags <lflags> Enter one or more of the following options, separated by All options
spaces: except none.
none disable all RADIUS event logging
accounting-event enable to log accounting events
accounting-stop- enable to log missed accounting
missed events
context-missing enable to log missing context errors
profile-missing enable to log missing profile errors
protocol-error enable to log protocol errors
radiusd-other enable to log other radius log
messages
log-period <log_time> Enter the minimum time period to use for event logs. In 0
seconds, 0 means forever.
mem-percent Maximum percentage of system memory to use for context 4
<memory_percent> tables. CLI only.
Example
This example shows how to enable a dynamic profile in the root vdom that will send RADIUS
responses/validate the RADIUS request secret, will use the default profile if the HTTP header is not
present in the MMS transaction, and log all events.
config user dynamic-profile
set status enable
set vdom “root”
set radius-response enable
set validate-request-secret enable
set http-header-status enable
set http-header-fallback default-profile
set log-flags protocol-error profile-missing context-missing
accounting-stop-missed accounting-event radiusd-other
end
History
Related topics
• msisdn-bwl (FortiOS Carrier)
• msisdn-ip-filter (FortiOS Carrier)
• msisdn-translation (FortiOS Carrier)
Syntax
config user msisdn-bwl
edit <msisdn_list_integer>
set comment msisdn_list_comment
config entries
edit msisdn-expression <msisdn_expression>
set pattern-type {regexp | wildcard | simple }
set action {none | block | exempt-mass-MMS | exempt }
set log-action {archive | intercept}
set status {enable | disable}
next
set name <msisdn_list_name>
next
end
Example
The following example details the MSISDN filter list MSISDN2+List. Entries combine features including
the action (none, block, exempt from mass MMS, exempt from all scanning), status (enable/disable),
and pattern type (wildcard/regular expression/single MSISDN).
config user msisdn-bwl
edit 2
set comment "Description+of+MSISDN2+list."
config entries
edit "*504*"
set action exempt-mass-mms
set pattern-type wildcard
set status enable
next
edit "6449675"
set pattern-type regexp
set status enable
next
edit "6132259381"
set action block
set log-action archive intercept
set pattern-type simple
set status enable
next
edit "*335*"
set action disable
next
edit "*555*"
set action exempt-mass-mms
set log-action archive intercept
set pattern-type wildcard
set status enable
next
end
set name "MSISDN2+List+2"
next
end
end
History
Related topics
• dynamic-profile (FortiOS Carrier)
• msisdn-ip-filter (FortiOS Carrier)
• msisdn-translation (FortiOS Carrier)
Syntax
config user msisdn-ip-filter
edit msisdn_filter_list_integer
set log-status {enable | disable}
next
end
History
Related topics
• dynamic-profile (FortiOS Carrier)
• msisdn-bwl (FortiOS Carrier)
• msisdn-translation (FortiOS Carrier)
Syntax
config user msisdn-translation
set missing-header-fallback <policy-profile | session-ip>
set msisdn-header <msisdn_header_title>
set profile-query-type < extract-ip | extract-msisdn | session-ip >
set msisdn-prefix {enable | disable}
set msisdn-prefix-string <prefix_string>
set msisdn-prefix-range-min <prefix_range_min>
set msisdn-prefix-range-max <prefix_range_max>
set msisdn-header-suppress {enable | disable}
set msisdn-source {http-header | cookie}
set msisdn-convert-hex {enable | disable}
set ip-header <ip_header_name>
set ip-header-suppress {enable | disable}
end
Keywords and variables Description Default
missing-header-fallback Specify method to determine user identification if policy-
<policy-profile | http_header is not present in the MSISDN information. profile
session-ip> policy-profile: use the default profile
session-ip: use the ip header address
msisdn-header Name of the MSISDN header. Up to 64 character x-up-
<msisdn_header_title> maximum. String. calling-
line-id
profile-query-type < Select the method used to suppress the address header session-ip
extract-ip | extract- used to set up a dynamic profile query from the HTTP
msisdn | session-ip > request as it is passed through the FortiGate unit. The
header may be either the MSISDN header or the IP header.
extract-ip: query by extracted ip address
extract-msisdn: query by extracted MSISDN
session-ip: query by ip session address
msisdn-prefix {enable | Enable to add the country code to the extracted MSISDN for disable
disable} logging and notification.
msisdn-prefix-string The alphanumeric string of the MSISDN prefix. null
<prefix_string> Only available if msisdn-prefix is enabled.
msisdn-prefix-range-min Minimum number of characters in the msisdn prefix string. null
<prefix_range_min> Range is integer 1 - 16.
Only available if msisdn-prefix is enabled.
msisdn-prefix-range-max Maximum number of characters in the msisdn prefix string. null
<prefix_range_max> Range is integer 1 - 16.
Only available if msisdn-prefix is enabled.
msisdn-header-suppress Enable to remove the address header used to set up the disable
{enable | disable} dynamic profile query from the HTTP request as it is passed
through the FortiGate unit.
Example
This example shows how to configure MSISDN filtering address translation with the name ‘enable’ that
uses the session IP address (including the ability to convert from HEX to ASCII and reverse) and is
able to remove the address header to set up the dynamic profile from the HTTP request:
config user msisdn-translation
set missing-header-fallback session-ip
set profile-query-type extract-ip
set msisdn-header “enable”
set msisdn-convert-hex
set ip-header-suppress enable
end
History
Related topics
• dynamic-profile (FortiOS Carrier)
• msisdn-bwl (FortiOS Carrier)
• msisdn-ip-filter (FortiOS Carrier)
fsae
Use this command to configure the FortiGate unit to receive user group information from a Windows
Active Directory server equipped with the Fortinet Server Authentication Extensions (FSAE). You can
specify up to five computers on which a FSAE collector agent is installed. The FortiGate unit uses
these collector agents in a redundant configuration. If the first agent fails, the FortiGate unit attempts to
connect to the next agent in the list.
You can add Windows user groups to Active Directory type user groups for authentication in firewall
policies.
Syntax
config user fsae
edit <server_name>
set ldap_server <ldap-server-name>
set password <password> password2 <password2> password3 <password3>
password4 <password4> password5 <password5>
set password2 <password2>
set password3 <password3>
set password4 <password4>
set password5 <password5>
set port <port_number> <port_number2>
set port <port_number2>
set port <port_number3>
set port <port_number4>
set port <port_number5>
set server <domain> server2 <domain2> server3 <domain3> server4
<domain4> server5 <domain5>
set server2 <domain2>
set server3 <domain3>
set server4 <domain4>
set server5 <domain5>
end
Keywords and variables Description Default
edit <server_name> Enter a name to identify the Windows AD server. No default.
Enter a new name to create a new server definition or enter an
existing server name to edit that server definition.
ldap_server <ldap-server- Enter the name of the LDAP server to be used to access the No default.
name> Windows AD.
password <password> For each collector agent, enter the password. No default.
password2 <password2>
password3 <password3>
password4 <password4>
password5 <password5>
History
Related topics
• user group
• execute fsae refresh
• firewall policy, policy6
group
Use this command to add or edit user groups.
There are three types of user groups:
Firewall user group Provides access to firewall policies that require authentication. A firewall policy
specifies the user groups that are allowed to use the policy. Members of a firewall
user group can be local users defined in user local, peer members defined in
user peer, or accounts on RADIUS or LDAP servers configured in user
radius or user ldap. Users must provide a user name and password to use
the firewall policy.
SSL-VPN user group Provides access to the FortiGate SSL-VPN tunnel and SSL-VPN web
applications. Members of an SSL-VPN user group can be local users defined in
user local or accounts on RADIUS or LDAP servers configured in user
radius or user ldap. Users authenticate using their VPN client or through
the SSL-VPN web portal login page.
Active Directory user group Provides access to firewall policies that require authentication. Members of an
Active Directory user group are members of selected Active Directory user
groups on Active Directory servers configured in user fsae. Users are
authenticated when they log on to their Windows domain and are not required to
authenticate again to use FortiGate firewall policies.
To enable authentication, you must add user names, RADIUS servers and LDAP servers to one or
more user groups. You can then select a user group when you require authentication. You can select a
user group to configure authentication for:
• Firewall policies that require authentication
Only users in the selected user group or users that can authenticate with the RADIUS or LDAP
servers added to the user group can authenticate with these policies.
• SSL-VPN configurations
• IPSec VPN Phase 1 configurations for dialup users
Only users in the selected user group can authenticate to use the VPN tunnel.
• XAuth for IPSec VPN Phase 1 configurations
Only users in the selected user group can be authenticated using XAuth.
• FortiGate PPTP and L2TP configurations
Only users in the selected user group can use the PPTP or L2TP configuration.
• Administrator login with RADIUS authentication
If you use a user group for administrator authentication, it must contain only RADIUS servers.
• FortiGuard Web Filtering override groups
When FortiGuard Web Filtering blocks a web page, authorized users can authenticate to access
the web page or to allow members of another group to access it.
Note: User groups can utilize defined peer members as part of a group.
When you add user names, RADIUS servers, and LDAP servers to a user group, the order in which
they are added determines the order in which the FortiGate unit checks for authentication. If user
names are first, then the FortiGate unit checks first for a match with the local user names. If a match is
not found, the FortiGate unit checks the RADIUS or LDAP server. If a RADIUS or LDAP server is
added first, the FortiGate unit checks the server and then the local user names.
Syntax
config user group
edit <groupname>
set authtimeout <timeout>
set group-type <grp_type>
set member <names>
set profile <profilename>
set ftgd-wf-ovrd {allow | deny}
set ftgd-wf-ovrd-dur <###d##h##m>
set ftgd-wf-ovrd-dur-mode <mode>
set ftgd-wf-ovrd-ext <option>
set ftgd-wf-ovrd-scope <scope>
set ftgd-wf-ovrd-type <o_type>
set redir-url <url_string>
set sslvpn-cache-cleaner {enable | disable}
set sslvpn-client-check {3rdAV | 3rdFW | forticlient}
set sslvpn-portal-heading <web_portal_string>
set sslvpn-tunnel {enable | disable}
set sslvpn-tunnel-startip <ipv4>
set sslvpn-tunnel-endip <ipv4>
set sslvpn-split-tunneling {enable | disable}
set sslvpn-webapp {enable | disable}
set sslvpn-ftp {enable | disable}
set sslvpn-http {enable | disable}
set sslvpn-samba {enable | disable}
set sslvpn-telnet {enable | disable}
set sslvpn-vnc {enable | disable}
set sslvpn-rdp {enable | disable}
end
Variables Description Default
edit <groupname> Enter a new name to create a new group or enter an No default.
existing group name to edit that group.
group-type <grp_type> Enter the group type. <grp_type> determines the type firewall
of users and is one of the following:
• active-directory - Active Directory users
• firewall - FortiGate users defined in user local,
user ldap or user radius
• sslvpn - SSL-VPN users
member <names> Enter the names of users, peers, LDAP servers, or No default.
RADIUS servers to add to the user group. Separate
names by spaces. To add or remove names from the
group you must re-enter the whole list with the additions
or deletions required.
profile <profilename> Enter the name of the firewall protection profile to No default.
associate with this user group.
authtimeout <timeout> Enter the value in seconds of an authentication timeout 0
for the user group. If not set, global authentication
timeout value used. 0 - 480 minutes.
FortiGuard override variables
ftgd-wf-ovrd {allow | deny} Allow or deny this group FortiGuard Web Filtering deny
overrides.
ftgd-wf-ovrd-dur <###d##h##m> Enter the FortiGuard Web Filtering override duration in 15m
days, hours, and minutes.
Example
This example shows how to add a group named User_Grp_1, and add User_2, User_3, Radius_2 and
LDAP_1 as members of the group, and set the protection profile to strict:
config user group
edit User_Grp_1
set member User_2 User_3 Radius_2 LDAP_1
set profile strict
end
History
Related topics
• user ldap
• user local
• user radius
• user tacacs+
ldap
Use this command to add or edit the definition of an LDAP server for user authentication.
To authenticate with the FortiGate unit, the user enters a user name and password. The FortiGate unit
sends this user name and password to the LDAP server. If the LDAP server can authenticate the user,
the user is successfully authenticated with the FortiGate unit. If the LDAP server cannot authenticate
the user, the connection is refused by the FortiGate unit.
The FortiGate unit supports LDAP protocol functionality defined in RFC2251 for looking up and
validating user names and passwords. FortiGate LDAP supports all LDAP servers compliant with
LDAP v3.
FortiGate LDAP support does not extend to proprietary functionality, such as notification of password
expiration, that is available from some LDAP servers. FortiGate LDAP support does not supply
information to the user about why authentication failed.
LDAP user authentication is supported for PPTP, L2TP, IPSec VPN, and firewall authentication. With
PPTP, L2TP, and IPSec VPN, PAP (Packet Authentication Protocol) is supported and CHAP
(Challenge Handshake Authentication Protocol) is not.
Syntax
config user ldap
edit <server_name>
set cnid <id>
set dn <dname>
set port <number>
set server <domain>
set type <auth_type>
set username <ldap_username>
set password <ldap_passwd>
set group <group>
set filter <group_filter>
set secure <auth_port>
set ca-cert <cert_name>
end
Keywords and variables Description Default
cnid <id> Enter the common name identifier for the LDAP server. cn
The common name identifier for most LDAP servers is cn.
However some servers use other common name identifiers
such as uid.
dn <dname> Enter the distinguished name used to look up entries on the No default.
LDAP server. It reflects the hierarchy of LDAP database object
classes above the Common Name Identifier. The FortiGate unit
passes this distinguished name unchanged to the server.
You must provide a dn value if type is simple.
edit <server_name> Enter a name to identify the LDAP server. No default.
Enter a new name to create a new server definition or enter an
existing server name to edit that server definition.
port <number> Enter the port number for communication with the LDAP server. 389
server <domain> Enter the LDAP server domain name or IP address. No default.
Example
This example shows how to add an LDAP server called LDAP1 using the IP address 23.64.67.44,
the default port, the common name cn, and the distinguished names
ou=marketing,dc=fortinet,dc=com for simple authentication.
config user ldap
edit LDAP1
set server 23.64.67.44
set cnid cn
set dn ou=marketing,dc=fortinet,dc=com
end
This example shows how to change the distinguished name in the example above to
ou=accounts,ou=marketing,dc=fortinet,dc=com.
config user ldap
edit LDAP1
set dn ou=accounts,ou=marketing,dc=fortinet,dc=com
end
History
Related topics
• user group
• user local
• user radius
• user tacacs+
local
Use this command to add local user names and configure user authentication for the FortiGate unit. To
add authentication by LDAP or RADIUS server you must first add servers using the config user
ldap and config user radius commands.
Syntax
config user local
edit <username>
set ldap-server <servername>
set passwd <password_str>
set radius-server <servername>
set status {enable | disable}
set type <auth-type>
end
Keywords and variables Description Default
edit <username> Enter the user name. Enter a new name to create a new user
account or enter an existing user name to edit that account.
ldap-server <servername> Enter the name of the LDAP server with which the user must No default.
authenticate. You can only select an LDAP server that has
been added to the list of LDAP servers. See “ldap” on
page 473.
This is available when type is set to ldap.
passwd <password_str> Enter the password with which the user must authenticate. No default.
Passwords at least 6 characters long provide better security
than shorter passwords.
This is available when type is set to password.
radius-server Enter the name of the RADIUS server with which the user must No default.
<servername> authenticate. You can only select a RADIUS server that has
been added to the list of RADIUS servers. See “radius” on
page 481.
This is available when type is set to radius.
status {enable | disable} Enter enable to allow the local user to authenticate with the enable
FortiGate unit.
type <auth-type> Enter one of the following to specify how this user’s password is No default.
verified:
ldap The LDAP server specified in
ldap-server verifies the password.
password The FortiGate unit verifies the password
against the value of passwd.
radius The RADIUS server specified in
radius-server verifies the password.
Example
This example shows how to add and enable a local user called Admin7 for authentication using the
RADIUS server RAD1.
config user local
edit Admin7
set status enable
set type radius
set radius-server RAD1
end
This example shows how to change the authentication method for the user Admin7 to password and
enter the password.
config user local
edit Admin7
set type password
set passwd abc123
end
History
Related topics
• user group
• user ldap
• user radius
• user tacacs+
peer
Use this command to add or edit peer (digital certificate holder) information. You use the peers you
define here in the config vpn ipsec phase1 command if you specify peertype as peer. Also,
you can add these peers to peer groups you define in the config user peergrp command.
For PKI user authentication, you can add or edit peer information and configure use of LDAP server to
check access rights for client certificates.
This command refers to certificates imported into the FortiGate unit. You import CA certificates using
the vpn certificate ca command. You import local certificates using the vpn certificate
local command.
You can configure a peer user with no values in subject or ca. This user behaves like a user account
or policy that is disabled.
Note: If you create a PKI user in the CLI with no values in subject or ca, you cannot open the user
record in the GUI, or you will be prompted to add a value in Subject (subject) or CA (ca).
Syntax
config user peer
edit <peer_name>
set ca <ca_name>
set cn <cn_name>
set cn-type <type>
set ldap-password <ldap_password>
set ldap-server <ldap_server>
set ldap-username <ldap_user>
set subject <constraints>
end
Example
This example shows how to add the branch_office peer.
Configure the peer using the CA certificate name and peer information:
config user peer
edit branch_office
set ca CA_Cert_1
set cn [email protected]
set cn-type email
end
Configure the peer with empty subject and ca fields.
config user peer
edit peer2
end
History
Related topics
• user peergrp
• vpn ipsec phase1
• vpn certificate ca
• vpn certificate local
peergrp
Use this command to add or edit a peer group. Peers are digital certificate holders defined using the
config user peer command. You use the peer groups you define here in the config vpn ipsec
phase1 command if you specify peertype as peergrp.
For PKI user authentication, you can add or edit peer group member information. User groups that use
PKI authentication can also be configured using config user group.
Syntax
config user peergrp
edit <groupname>
set member <peer_names>
end
Example
This example shows how to add peers to the peergrp EU_branches.
config user peergrp
edit EU_branches
set member Sophia_branch Valencia_branch Cardiff_branch
end
History
Related topics
• user peer
• vpn ipsec phase1
• vpn l2tp
• vpn pptp
radius
Use this command to add or edit the information used for RADIUS authentication.
The default port for RADIUS traffic is 1812. If your RADIUS server is using a different port you can
change the default RADIUS port. You may set a different port for each of your RADIUS servers.
The RADIUS server is now provided with more information to make authentication decisions, based on
values in server, use-management-vdom, use-group-for-profile, and nas-ip.
Attributes include:
• NAS-IP-Address - RADIUS setting or IP address of FortiGate interface used to talk to RADIUS
server, if not configured
• NAS-Port - physical interface number of the traffic that triggered the authentication
• Called-Station-ID - same value as NAS-IP Address but in text format
• Fortinet-Vdom-Name - name of VDOM of the traffic that triggered the authentication
• NAS-Identifier - configured hostname in non-HA mode; HA cluster group name in HA mode
• Acct-Session-ID - unique ID identifying the authentication session
• Connect-Info - identifies the service for which the authentication is being performed (web-auth,
vpn-ipsec, vpn-pptp, vpn-l2tp, vpn-ssl, admin-login, test)
You may select an alternative authentication method for each server. These include CHAP, PAP, MS-
CHAP, and MS-CHAP-v2.
Syntax
config user radius
edit <server_name>
set all-usergroup {enable | disable}
set auth-type {auto | chap | ms_chap | ms_chap_v2 | pap}
set nas-ip <use_ip>
set radius-port <radius_port_num>
set secondary-secret <sec_server_password>
set secondary-server <sec_server_domain>
set secret <server_password>
set server <domain>
set use-group-for-profile {enable | disable}
set use-management-vdom {enable | disable}
end
Example
This example shows how to add the radius server RAD1 at the IP address 206.205.204.203 and set
the shared secret as R1a2D3i4U5s.
config user radius
edit RAD1
set secret R1a2D3i4U5s
set server 206.205.204.203
end
History
Related topics
• user group
• user ldap
• user local
• user tacacs+
settings
Use this command to change per VDOM user settings such as the firewall user authentication time out
and protocol support for firewall policy authentication.
user settings differ from system global settings in that system global settings
keywords apply to the entire FortiGate unit, where user settings keywords apply only to the user
VDOM.
Syntax
config user setting
set auth-cert <cert_name>
set auth-keepalive {enable | disable}
set auth-secure-http {enable | disable}
set auth-type {ftp | http | https | telnet}
set auth-timeout <auth_timeout_minutes>
end
Keywords and variables Description Default
auth-cert <cert_name> HTTPS server certificate for policy authentication. self-
Fortinet_Factory, Fortinet_Firmware (if applicable to your sign
FortiGate unit), and self-sign are built-in certificates but others
will be listed as you add them.
auth-keepalive Enable to extend the authentication time of the session through disable
{enable | disable} periodic traffic to prevent an idle timeout.
auth-secure-http Enable to have http user authentication redirected to secure disable
{enable | disable} channel - https.
auth-type {ftp | http | Set the user authentication protocol support for firewall policy
https | telnet} authentication. User controls which protocols should support the
authentication challenge.
auth-timeout Set the number of minutes before the firewall user 5
<auth_timeout_minutes> authentication timeout requires the user to authenticate again.
The maximum authtimeout interval is 480 minutes (8 hours).
To improve security, keep the authentication timeout at the
default value of 5 minutes.
Example
This example shows how to enable https user authentication, and set the firewall user authentication
timeout to 15 minutes.
config user setting
set auth-type https
set auth-timeout 15
end
History
FortiOS v3.0 MR6 New. Replaces system global variables authtimeout, auth-
type, and auth-secure-http
tacacs+
Use this command to add or edit the information used for TACACS+ authentication.
Terminal Access Controller Access-Control System (TACACS+) is a remote authentication protocol
used to communicate with an authentication server. TACACS+ allows a client to accept a username
and password and send a query to a TACACS+ authentication server. The server host determines
whether to accept or deny the request and sends a response back that allows or denies network
access to the user.
The default port for a TACACS+ server is 49.
You may select an alternative authentication method for each server. These include CHAP, PAP, MS-
CHAP, and ASCII.
Syntax
config user tacacs+
edit <server_name>
set authen-type {ascii | auto | chap | ms_chap | pap}
set key <server_key>
set tacacs+-port <tacacs+_port_num>
set server <domain>
end
Example
This example shows how to add the TACACS+ server TACACS1 at the IP address
206.205.204.203, set the server key as R1a2D3i4U5s, and authenticate using PAP.
config user tacacs+
edit TACACS1
set authen-type pap
set key R1a2D3i4U5s
set server 206.205.204.203
end
History
Related topics
• user group
• user local
• user ldap
• user radius
vpn
Use vpn commands to configure options related to virtual private networking through the FortiGate
unit, including:
• IPSec operating parameters
• a local address range for PPTP or L2TP clients
• SSL VPN configuration settings
This chapter contains the following sections:
certificate ca
certificate crl
certificate local
certificate ocsp
certificate remote
ipsec concentrator
ipsec forticlient
ipsec manualkey
ipsec manualkey-interface
ipsec phase1
ipsec phase1-interface
ipsec phase2
ipsec phase2-interface
l2tp
pptp
ssl monitor
ssl settings
ssl web bookmarks
ssl web bookmarks-group
ssl web favorite
certificate ca
Use this command to install Certificate Authority (CA) root certificates.
When a CA processes your Certificate Signing Request (CSR), it sends you the CA certificate, the
signed local certificate and the Certificate Revocation List (CRL).
The process for obtaining and installing certificates is as follows:
1 Use the execute vpn certificate local command to generate a CSR.
2 Send the CSR to a CA.
The CA sends you the CA certificate, the signed local certificate and the CRL.
3 Use the vpn certificate local command to install the signed local certificate.
4 Use the vpn certificate ca command to install the CA certificate.
5 Use the vpn certificate crl command to install the CRL.
Depending on your terminal software, you can copy the certificate and paste it into the command.
Syntax
config vpn certificate ca
edit <ca_name>
set ca <cert>
end
To view all of the information about the certificate, use the get command:
get vpn certificate ca <ca_name>
<keyword> Description
edit <ca_name> Enter a name for the CA certificate.
ca <cert> Enter or retrieve the CA certificate in PEM format.
History
Related topics
• vpn certificate crl
• vpn certificate local
• vpn certificate ocsp
• vpn certificate remote
• execute vpn certificate ca
certificate crl
Use this command to install a Certificate Revocation List (CRL).
When a CA processes your Certificate Signing Request (CSR), it sends you the CA certificate, the
signed local certificate and the Certificate Revocation List (CRL).
The process for obtaining and installing certificates is as follows:
1 Use the execute vpn certificate local command to generate a CSR.
2 Send the CSR to a CA.
The CA sends you the CA certificate, the signed local certificate and the CRL.
3 Use the vpn certificate local command to install the signed local certificate.
4 Use the vpn certificate ca command to install the CA certificate.
5 Use the vpn certificate crl command to install the CRL.
Depending on your terminal software, you can copy the certificate and paste it into the command.
The CRL now updates automatically from a remove server.
Syntax
config vpn certificate crl
edit <crl_name>
set crl <crl_PEM>
set ldap-server <ldap_server_name>
set ldap-username <ldap_username>
set ldap-password <ldap_password>
set scep-cert <scep_certificate>
set scep-url <scep_url>
set update-vdom <update_vdom>
set http-url <http_url>
end
<keyword> Description
edit <crl_name> Enter a name for the Certificate Revocation List (CRL).
crl <crl_PEM> Enter the CRL in PEM format.
ldap-server Name of the LDAP server defined in config user ldap table for CRL auto-update.
<ldap_server_name>
ldap-username LDAP login name.
<ldap_username>
ldap-password LDAP login password.
<ldap_password>
scep-cert Local certificate used for SCEP communication for CRL auto-update.
<scep_certificate>
scep-url URL of the SCEP server used for automatic CRL certificate updates. Start with http://.
<scep_url>
update-vdom VDOM used to communicate with remote SCEP server for CRL auto-update.
<update_vdom>
http-url URL of an http server used for automatic CRL certificate updates. Start with http://.
<http_url>
History
Related topics
• vpn certificate ca
• vpn certificate local
• vpn certificate ocsp
• vpn certificate remote
• execute vpn certificate crl
certificate local
Use this command to install local certificates.
When a CA processes your Certificate Signing Request (CSR), it sends you the CA certificate, the
signed local certificate and the Certificate Revocation List (CRL).
The process for obtaining and installing certificates is as follows:
1 Use the execute vpn certificate local command to generate a CSR.
2 Send the CSR to a CA.
The CA sends you the CA certificate, the signed local certificate and the CRL.
3 Use the vpn certificate local command to install the signed local certificate.
4 Use the vpn certificate ca command to install the CA certificate.
5 Use the vpn certificate crl command to install the CRL.
Depending on your terminal software, you can copy the certificate and paste it into the command.
Syntax
config vpn certificate local
edit <cert_name>
set password <pwd>
set comments <comment_text>
set private-key <prkey>
set certificate <cert_PEM>
set csr <csr_PEM>
end
To view all of the information about the certificate, use the get command:
get vpn certificate local [cert_name]
<keyword> Description
edit <cert_name> Enter the local certificate name.
certificate <cert_PEM> Enter the signed local certificate in PEM format.
comments <comment_text> Enter any relevant information about the certificate.
You should not modify the following variables if you generated the CSR on this unit.
csr <csr_PEM> The CSR in PEM format.
password <pwd> The password in PEM format.
private-key <prkey> The private key in PEM format.
History
FortiOS v3.0 New.
FortiOS v3.0 MR6 Added comments field.
Related topics
• vpn certificate ca
• vpn certificate crl
• vpn certificate ocsp
• vpn certificate remote
• execute vpn certificate local
certificate ocsp
Use this command to install remote certificates. The remote certificates are public certificates without a
private key. They are used as OCSP (Online Certificate Status Protocol) server certificates.
Syntax
config vpn certificate ocsp
edit cert <cert_name>
set url <ocsp_url>
set unavail-action <unavailable_action>
end
To view all of the information about the certificate, use the get command:
get vpn certificate ocsp [cert_name]
<keyword> Description
cert <cert_name> Enter the OCSP server public certificate (one of the remote certificates).
url <ocsp_url> Enter the URL of the OCSP server.
unavail-action Action taken on client certification when the OCSP server is unreachable.
<unavailable_action> revoke or ignore. Default is revoke.
History
Related topics
• vpn certificate local
• vpn certificate ca
• vpn certificate crl
• vpn certificate remote
• execute vpn certificate remote
certificate remote
Use this command to install remote certificates. The remote certificates are public certificates without a
private key. They are used as OCSP (Online Certificate Status Protocol) server certificates.
Syntax
config vpn certificate remote
edit cert <cert_name>
set remote <remote_cert_detail>
end
To view all of the information about the certificate, use the get command:
get vpn certificate remote [cert_name]
<keyword> Description
cert <cert_name> Enter the name of the public certificate.
remote Details/description of the remote certificate.
<remote_cert_detail>
History
Related topics
• vpn certificate local
• vpn certificate ca
• vpn certificate crl
• vpn certificate ocsp
• execute vpn certificate remote
ipsec concentrator
Use this command to add IPSec policy-based VPN tunnels to a VPN concentrator. The VPN
concentrator collects hub-and-spoke tunnels into a group.
The concentrator allows VPN traffic to pass from one tunnel to the other through the FortiGate unit.
The FortiGate unit functions as a concentrator, or hub, in a hub-and-spoke network.
Syntax
config vpn ipsec concentrator
edit <concentrator_name>
set member <member_name> [<member_name>] [<member_name>]
end
Example
Use the following commands to add an IPSec VPN concentrator named Concen_1 and add three
tunnels to the concentrator.
config vpn ipsec concentrator
edit Concen_1
set member Tunnel_1 Tunnel_2 Tunnel_3
end
History
FortiOS v2.80 Revised.
FortiOS v2.80 MR4 Method for adding concentrators changed.
FortiOS v3.0 Members must now be phase1 configurations, not phase2.
Related topics
• vpn ipsec phase1
• vpn ipsec manualkey
ipsec forticlient
Use this command to configure automatic VPN configuration for FortiClient Host Security application
users.
The FortiClient users who will use automatic configuration must be members of a user group. The
config vpn ipsec forticlient command creates a “realm” that associates the user group with
the phase 2 VPN configuration. You can create multiple realms to associate different user groups with
different phase 2 configurations.
The user group identifies the user name and password settings that the dialup client’s credentials must
match in order for authentication to be successful. The phase 2 tunnel definition and its associated
firewall encryption policy provides the configuration parameters to download to the FortiClient Host
Security application.
Syntax
Set or unset VPN policy distribution parameters.
config vpn ipsec forticlient
edit <realm_name>
set phase2name <tunnel_name>
set status {disable | enable}
set usergroupname <group_name>
end
Variables Description Default
edit <realm_name> Enter a name for the FortiClient realm. This is also referred to No default.
as the policy name.
phase2name <tunnel_name> Enter the name of the phase 2 tunnel configuration that you Null.
defined as part of the dialup-client configuration.
status {disable | enable} Enable or disable IPSec VPN policy distribution. enable
usergroupname <group_name> Enter the name of the user group that you created for dialup Null.
clients. This group must already exist.
Example
The following example enables VPN policy distribution for a user group called Dialup_users. The
phase 2 tunnel configuration named FG1toDialup_tunnel provides the FortiGate unit with the
information it needs to find and apply the associated firewall encryption policy:
config vpn ipsec forticlient
edit Standard_VPN_policy
set phase2name FG1toDialup_tunnel
set usergroupname Dialup_users
set status enable
end
History
Related topics
• vpn ipsec phase2
• user group
ipsec manualkey
Use this command to configure manual keys for IPSec tunnel-mode VPN tunnels. You configure a
manual key tunnel to create an IPSec tunnel-mode VPN tunnel between the FortiGate unit and a
remote IPSec VPN client or gateway that is also using manual key.
A manual key VPN tunnel consists of a name for the tunnel, the IP address of the VPN gateway or
client at the opposite end of the tunnel, and the encryption and authentication algorithms to use for the
tunnel. Because the keys are created when you configure the tunnel, no negotiation is required for the
VPN tunnel to start. However, the VPN gateway or client that connects to this tunnel must use the
same encryption and authentication algorithms and must have the same encryption and authentication
keys.
Syntax
config vpn ipsec manualkey
edit <tunnel_name>
set authentication <authentication_algortihm>
set authkey <authentication_key>
set encryption <method>
set enckey <encryption_key>
set interface <interface_name>
set localspi <local_spi_number>
set local-gw <address_ipv4>
set remote-gw <address_ipv4>
set remotespi <remote_spi_number>
end
Note: The authentication, encryption, interface, remote-gw, localspi, and remotespi keywords
are required. All other keywords are optional.
Example
Use the following command to add an IPSec VPN manual key tunnel with the following characteristics:
• Tunnel name: Manual_Tunnel
• Local SPI: 1000ff
• Remote SPI: 2000ff
• Remote gateway IP address: 206.37.33.45
History
Related topics
• vpn ipsec phase2
ipsec manualkey-interface
Use this command to configure manual keys for a route-based (interface mode) IPSec VPN tunnel.
When you create a route-based tunnel, the FortiGate unit creates a virtual IPSec interface
automatically. The interface can be modified afterward using the system network interface CLI
command. This command is available only in NAT/Route mode.
Syntax
config vpn ipsec manualkey-interface
edit <tunnel_name>
set auth-alg <authentication_algortihm>
set auth-key <authentication_key>
set enc-alg <method>
set enc-key <encryption_key>
set interface <interface_name>
set ip-version <4 | 6>
set local-gw <address_ipv4>
set local-gw6 <address_ipv6>
set local-spi <local_spi_number>
set remote-gw <address_ipv4>
set remote-gw6 <address_ipv6>
set remote-spi <remote_spi_number>
end
Note: The auth-alg, enc-alg, interface, remote-gw, local-spi, and remote-spi keywords are
required. All other keywords are optional.
Example
Use the following command to add a route-based (interface-mode) IPSec VPN tunnel having the
following characteristics:
• Tunnel name: Manual-inf_tunnel
• Local SPI: 1000ff
History
Related topics
• vpn ipsec phase2-interface
ipsec phase1
Use this command to add or edit IPSec tunnel-mode phase 1 configurations. When you add a tunnel-
mode phase 1 configuration, you define how the FortiGate unit and a remote VPN peer (gateway or
client) authenticate themselves to each other as part of establishing an IPSec VPN tunnel.
The phase 1 configuration specifies the name of a remote VPN peer, the nature of the connection
(static IP, dialup, or dynamic DNS), the encryption and authentication keys for the phase 1 proposal,
and the authentication method (preshared key or certificate). For authentication to be successful, the
FortiGate unit and the remote VPN peer must be configured with compatible phase 1 settings.
You can change all settings except the type setting after you define the configuration: if the address
type of a remote peer changes, you must delete the original phase 1 configuration and define a new
one. As a general rule, create only one phase 1 configuration per remote VPN peer.
Syntax
config vpn ipsec phase1
edit <gateway_name>
set add-gw-route {enable | disable}
set authmethod <authentication_method>
set authpasswd <password>
set authusr <user_name>
set authusrgrp <group_name>
set dhgrp {1 2 5}
set dpd {disable | enable}
set dpd-retrycount <retry_integer>
set dpd-retryinterval <seconds> [<milliseconds>]
set interface <interface_name>
set keepalive <seconds>
set keylife <seconds>
set local-gw <address_ipv4>
set localid <local_id>
set mode {aggressive | main}
set nattraversal {disable | enable}
set peer <CA_certificate_name>
set peerid <peer_id>
set peergrp <certificate_group_name>
set peertype <authentication_method>
set priority <prio>
set proposal <encryption_combination>
set psksecret <preshared_key>
set remote-gw <address_ipv4>
set remotegw-ddns <domain_name>
set rsa-certificate <server_certificate>
set type <remote_gw_type>
set usrgrp <group_name>
set xauthtype <XAuth_type>
end
Note: In NAT/Route mode, the interface keyword is required. A remote-gw value may be required
depending on the value of the type attribute. You must also enter a preshared key or a certificate name
depending on the value of authmethod. All other keywords are optional.
Example
Use the following command to add a tunnel-mode IPSec VPN phase 1 configuration with the following
characteristics:
• Phase 1 configuration name: Simple_GW
• Physical interface name: port6
• Remote peer address type: Dynamic
• Encryption and authentication proposal: des-md5
• Authentication method: psk
• Pre-shared key: Qf2p3O93jIj2bz7E
• Mode: aggressive
• Dead Peer Detection: disable
config vpn ipsec phase1
edit Simple_GW
set interface port6
set type dynamic
set proposal des-md5
set authmethod psk
set psksecret Qf2p3O93jIj2bz7E
set mode aggressive
set dpd disable
end
History
Related topics
• vpn ipsec phase2
• user group
• user local
• user peer
• user peergrp
• user radius
• execute vpn certificate local
• vpn certificate ca
ipsec phase1-interface
Use this command to define a phase 1 definition for a route-based (interface mode) IPSec VPN tunnel
that generates authentication and encryption keys automatically. A new interface of type “tunnel” with
the same name is created automatically as the local end of the tunnel.
Optionally, you can create a route-based phase 1 definition to act as a backup for another IPSec
interface. See the monitor-phase1 <phase1> keyword.
To complete the configuration of an IPSec tunnel, you need to:
• configure phase 2 settings (see “ipsec phase2-interface” on page 526)
• configure a firewall policy to pass traffic from the local private network to the tunnel interface
• configure a static route via the IPSec interface to the private network at the remote end of the tunnel
• optionally, define the IP addresses for each end of the tunnel to enable dynamic routing through the
tunnel or to enable pinging of each end of the tunnel for testing
Syntax
config vpn ipsec phase1-interface
edit <gateway_name>
set add-gw-route {enable | disable}
set authmethod <authentication_method>
set authpasswd <password>
set authusr <user_name>
set authusrgrp <group_name>
set default-gw <gw_ip>
set default-gw-priority <int>
set dhgrp {1 2 5}
set dpd {disable | enable}
set dpd-retrycount <retry_integer>
set dpd-retryinterval <seconds> [<milliseconds]
set interface <interface_name>
set ip-version <4 | 6>
set keepalive <seconds>
set keylife <seconds>
set local-gw <address_ipv4>
set local-gw6 <address_ipv6>
set localid <local_id>
set mode {aggressive | main}
set monitor-phase1 <phase1>
set nattraversal {disable | enable}
set peer <CA_certificate_name>
set peerid <peer_id>
set peergrp <certificate_group_name>
set peertype <authentication_method>
set priority <prio>
set proposal <encryption_combination>
set psksecret <preshared_key>
set remote-gw <address_ipv4>
set remote-gw6 <address_ipv6>
set remotegw-ddns <domain_name>
set rsa-certificate <server_certificate>
set type <remote_gw_type>
set usrgrp <group_name>
In this example, the user defines IP addresses for each end of the tunnel to enable dynamic routing
through the tunnel or to enable pinging of each end of the tunnel for testing. The Site A end has the IP
address 10.0.0.1 and the SiteB end is 10.0.0.2.
History
Related topics
• vpn ipsec phase2-interface
• user group
• user local
• user peer
• user peergrp
• user radius
• vpn certificate local
• vpn certificate ca
ipsec phase2
Use this command to add or edit an IPSec tunnel-mode phase 2 configuration. The FortiGate unit uses
the tunnel-mode phase 2 configuration to create and maintain an IPSec VPN tunnel with a remote
VPN peer (the VPN gateway or client).
The phase 2 configuration consists of a name for the VPN tunnel, the name of an existing phase 1
configuration, the proposal settings (encryption and authentication algorithms) and DH group used for
phase 2. For phase 2 to be successful, the FortiGate unit and the remote VPN peer must be
configured with compatible proposal settings.
Syntax
config vpn ipsec phase2
edit <tunnel_name>
set auto-negotiate {enable | disable}
set dhcp-ipsec {disable | enable}
set dhgrp {1 | 2 | 5}
set dst-addr-type <type>
set dst-end-ip <address_ipv4>
set dst-name <address_name>
set dst-port <destination_port_number>
set dst-start-ip <address_ipv4>
set dst-subnet <address_ipv4mask>
set keepalive {disable | enable}
set keylife-type <keylife_type>
set keylifekbs <kb_integer>
set keylifeseconds <seconds>
set pfs {disable | enable}
set phase1name <gateway_name>
set proposal <encryption_combination>
set protocol <protocol_integer>
set replay {disable | enable}
set route-overlap {overlap_option}
set selector-match <match_type>
set single-source {disable | enable}
set src-addr-type <ip_source_name>
set src-end-ip <address_ipv4>
set src-name <address_name>
set src-port <source_port_number>
set src-start-ip <address_ipv4>
set src-subnet <address_ipv4mask>
set use-natip {enable | disable}
end
Note: The phase1name keyword is required. All other keywords are optional.
Example
Use the following command to add a tunnel-mode phase 2 configuration with the following
characteristics:
• Name: New_Tunnel
• Phase 1 name: Simple_GW
• Encryption and authentication proposal: 3des-sha1 aes256-sha1 des-md5
• Keylife type: seconds
• Keylife seconds: 18001
• Diffie-Hellman group: 2
• Replay detection: enable
• Perfect forward secrecy: enable
• Keepalive: enable
config vpn ipsec phase2
edit New_Tunnel
set phase1name Simple_GW
set proposal 3des-sha1 aes256-sha1 des-md5
set keylife-type seconds
set keylifeseconds 18001
set dhgrp 2
set replay enable
set pfs enable
set keepalive enable
end
History
Related topics
• vpn ipsec phase1
• alertemail setting
• alertemail setting
• firewall policy, policy6
ipsec phase2-interface
Use this command to add a phase 2 configuration for a route-based (interface mode) IPSec tunnel or
edit an existing interface-mode phase 2 configuration. This command is available only in NAT/Route
mode.
Syntax
config vpn ipsec phase2-interface
edit <tunnel_name>
set auto-negotiate {enable | disable}
set dhgrp {1 | 2 | 5}
set dst-addr-type <type>
set dst-end-ip <address_ipv4>
set dst-end-ip6 <address_ipv6>
set dst-name <address_name>
set dst-port <destination_port_number>
set dst-start-ip <address_ipv4>
set dst-start-ip6 <address_ipv6>
set dst-subnet <address_ipv4mask>
set dst-subnet6 <address_ipv6mask>
set keepalive {disable | enable}
set keylife-type <keylife_type>
set keylifekbs <kb_integer>
set keylifeseconds <seconds>
set pfs {disable | enable}
set phase1name <gateway_name>
set proposal <encryption_combination>
set protocol <protocol_integer>
set replay {disable | enable}
set route-overlap {overlap_option}
set single-source {disable | enable}
set src-addr-type <ip_source_name>
set src-end-ip <address_ipv4>
set src-end-ip6 <address_ipv6>
set src-name <address_name>
set src-port <source_port_number>
set src-start-ip <address_ipv4>
set src-start-ip6 <address_ipv6>
set src-subnet6 <address_ipv6mask>
set src-subnet6 <address_ipv6mask>
end
Note: The phase1name keyword is required. All other keywords are optional.
Example
Use the following command to add a route-based (interface mode) phase 2 configuration with the
following characteristics:
• Name: Interface_Tunnel
• Phase 1 name: Interface_GW
• Encryption and authentication proposal: 3des-sha1 aes256-sha1 des-md5
• Keylife type: seconds
• Keylife seconds: 18001
• Diffie-Hellman group: 2
• Replay detection: enable
• Perfect forward secrecy: enable
• Keepalive: enable
config vpn ipsec phase2-interface
edit Interface_Tunnel
set phase1name Interface_GW
set proposal 3des-sha1 aes256-sha1 des-md5
set keylife-type seconds
set keylifeseconds 18001
set dhgrp 2
set replay enable
set pfs enable
set keepalive enable
end
History
Related topics
• vpn ipsec phase1-interface
• alertemail setting
• alertemail setting
• firewall policy, policy6
l2tp
Use this command to enable L2TP and specify a local address range to reserve for remote L2TP
clients. When a remote L2TP client connects to the internal network through a L2TP VPN, the client is
assigned an IP address from the specified range.
L2TP clients must authenticate with the FortiGate unit when a L2TP session starts. To support L2TP
authentication on the FortiGate unit, you must define the L2TP users who need access and then add
them to a user group. For more information, see “user group” on page 469, “user ldap” on page 473,
“user local” on page 476, and “user radius” on page 481.
You need to define a firewall policy to control services inside the L2TP tunnel. For more information,
see “firewall” on page 81. When you define the firewall policy:
• Create an “external -> internal” policy.
• Set the source address to match the L2TP address range.
• Set the destination address to reflect the private address range of the internal network behind the
local FortiGate unit.
• Set the policy service(s) to match the type(s) of traffic that L2TP users may generate.
• Set the policy action to accept.
• Enable NAT if required.
Caution: FortiGate units support L2TP with Microsoft Point-to-Point Encryption (MPPE) encryption only. Later
! implementations of Microsoft L2TP for Windows use IPSec and require certificates for authentication and
encryption. If you want to use Microsoft L2TP with IPSec to connect to a FortiGate unit, the IPSec and certificate
elements must be disabled on the remote client. For more information, see the Disabling Microsoft L2TP for
IPSec article in the Fortinet Knowledge Center.
Syntax
config vpn l2tp
set eip <address_ipv4>
set sip <address_ipv4>
set status {disable | enable}
set usrgrp <group_name>
end
Note: You can configure L2TP VPNs on FortiGate units that run in NAT/Route mode. The commands are
available in NAT/Route mode only. When you configure an L2TP address range for the first time, you must enter
a starting IP address, an ending IP address, and a user group.
Example
This example shows how to enable L2TP and set the L2TP address range for the first time using a
starting address of 192.168.1.150, an ending address of 192.168.1.160 and an existing group of
L2TP users named L2TP_users:
config vpn l2tp
set sip 192.168.1.150
set eip 192.168.1.160
set status enable
set usrgrp L2TP_users
end
History
Related topics
• user group
• firewall policy, policy6
pptp
Use this command to enable PPTP and specify a local address range to reserve for remote PPTP
clients. When a remote PPTP client connects to the internal network through a PPTP VPN, the client is
assigned an IP address from the specified range.
PPTP clients must authenticate with the FortiGate unit when a PPTP session starts. To support PPTP
authentication on the FortiGate unit, you must define the PPTP users who need access and then add
them to a user group. For more information, see “user group” on page 469, “user ldap” on page 473,
“user local” on page 476, “user radius” on page 481, “user peer” on page 478, and “user peergrp” on
page 480.
You need to define a firewall policy to control services inside the PPTP tunnel. For more information,
see “firewall” on page 81. When you define the firewall policy:
• Create an “external -> internal” policy.
• Set the source address to match the PPTP address range.
• Set the destination address to reflect the private address range of the internal network behind the
local FortiGate unit.
• Set the policy service(s) to match the type(s) of traffic that PPTP users may generate.
• Set the policy action to accept.
• Enable NAT if required.
Syntax
config vpn pptp
set eip <address_ipv4>
set sip <address_ipv4>
set status {disable | enable}
set usrgrp <group_name>
end
Note: You can configure PPTP VPNs on FortiGate units that run in NAT/Route mode. The commands are
available in NAT/Route mode only. When you configure a PPTP address range for the first time, you must enter
a starting IP address, an ending IP address, and a user group.
Example
This example shows how to enable PPTP and set the PPTP address range for the first time using a
starting address of 192.168.1.100, an ending address of 192.168.1.130 and an existing group of
PPTP users named PPTP_users:
config vpn pptp
set sip 192.168.1.100
set eip 192.168.1.130
set status enable
set usrgrp PPTP_users
end
History
Related topics
• user group
• firewall policy, policy6
ssl monitor
Use this command to display information about logged in SSL VPN users and current SSL VPN
sessions.
Syntax
get vpn ssl monitor
Output
History
Related topics
• vpn ssl settings
ssl settings
Use this command to configure basic SSL VPN settings including interface idle-timeout values and
SSL encryption preferences. If required, you can also enable the use of digital certificates for
authenticating remote clients.
You can optionally specify the IP address of any Domain Name Service (DNS) server and/or Windows
Internet Name Service (WINS) server that resides on the private network behind the FortiGate unit.
The DNS and/or WINS server will find the IP addresses of other computers whenever a connected
SSL VPN user sends an email message or browses the Internet.
Note: You can configure SSL VPNs on FortiGate units that run in NAT/Route mode. The commands are
available in NAT/Route mode only.
Syntax
config vpn ssl settings
set algorithm <cipher_suite>
set auth-timeout <auth_seconds>
set dns-server1 <address_ipv4>
set dns-server2 <address_ipv4>
set idle-timeout <idle_seconds>
set portal-heading <caption>
set reqclientcert {disable | enable}
set route-source-interface {disable | enable}
set servercert <server_cert_name>
set sslv2 {disable | enable}
set sslv3 {disable | enable}
set sslvpn-enable {disable | enable}
set tunnel-endip <address_ipv4>
set tunnel-startip <address_ipv4>
set url-obscuration {disable | enable}
set wins-server1 <address_ipv4>
set wins-server2 <address_ipv4>
end
Note: Set the sslvpn-enable attribute to enable to view all possible settings. The tunnel-endip and
tunnel-startip keywords are required for tunnel-mode access only. All other keywords are optional.
When you configure the timeout settings, if you set the authentication timeout (auth-timeout)to 0,
then the remote client does not have to re-authenticate again unless they log out of the system. In
order to fully take advantage of this setting, the value for idle-timeout has to be set to 0 also, so the
client does not timeout if the maximum idle time is reached. If the idle-timeout is not set to the
infinite value, the system will log out if it reaches the limit set, regardless of the auth-timeout
setting.
Example
The following command enables the FortiGate unit to assign virtual IP addresses in the 10.10.10.100
to 10.10.10.105 range to authenticated clients (an IP address range is needed to support tunnel-mode
access). The command also sets timeout values for authenticated connections and connection
inactivity respectively.
config vpn ssl settings
set sslvpn-enable enable
set tunnel-startip 10.10.10.100
set tunnel-endip 10.10.10.105
set auth-timeout 600
set idle-timeout 1500
end
History
FortiOS v3.0 New.
FortiOS v3.0 MR4 Added route-source-interface.
FortiOS v3.0 MR5 Added url-obscuration.
FortiOS v3.0 MR6 Changed values in auth-timeout and idle-timeout to include infinity setting.
Related topics
• system replacemsg sslvpn
• execute vpn sslvpn del-tunnel
• vpn ssl monitor
• user group
• log {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
• firewall policy, policy6
Syntax
config vpn ssl web bookmarks
edit <bookmark_name>
set apptype <service_type>
set folder <folder_name>
set host <host_name>
set url <target_ip>
end
Example
The following command creates a bookmark named Company_intranet to the corporate Intranet
home page at www.example.com:
config vpn ssl web bookmarks
edit Company_intranet
set apptype web
set url http://www.example.com
end
History
Related topics
• vpn ssl settings
• vpn ssl web bookmarks-group
• vpn ssl web favorite
Syntax
config vpn ssl web bookmarks-group
edit <bkmark_groupname>
set bookmarks <bookmark_names>
end
Variables Description Default
edit <bkmark_groupname> Enter the name of the bookmark group. No default.
bookmarks <bookmark_names> Enter the list of bookmarks to include in the bookmark No default.
group. Enclose the bookmark name in quotation marks,
and separate each bookmark in the list with a space.
Example
The following command creates a bookmark group that includes the bookmark to the corporate
Intranet home page at www.example.com named Company_intranet and a link to the Google
search site named Google_site:
config vpn ssl web bookmarks-group
edit <bkmark_groupname>
set “Company_intranet” “Google_site”
end
History
FortiOS v3.0 MR5 New
Related topics
• vpn ssl settings
• vpn ssl web bookmarks
• vpn ssl web favorite
Syntax
config vpn ssl web favorite
edit <bookmark_name>
set apptype <service_type>
set folder <folder_name>
set group <group_name>
set host <host_name>
set title <display_text>
set url <target_ip>
set user <user_name>
end
If a bookmark is created by the user through the web portal page, the value for bookmark_name is
automatically generated (<user>+<timestamp>+<group>). The text string in title is displayed as
the hyperlink in the My Bookmarks list.
If a bookmark is created in the CLI, there must be values assigned to the user and group variables to
link the bookmark to a user in an SSL VPN user group, and a text string in title to display as the
hyperlink in the My Bookmarks list.
Example
The following command creates a bookmark to the corporate Intranet home page at
www.example.com for the user juser who is a member of the SSL VPN user group sslusergroup:
config vpn ssl web favorite
edit Company_intranet
set apptype web
set title "Company Home Page"
set url http://www.example.com
set group sslusergroup
set user juser
end
History
Related topics
• vpn ssl settings
• vpn ssl web bookmarks
• vpn ssl web bookmarks-group
webfilter
Use webfilter commands to add banned words to the banned word list, filter URLs, and configure
FortiGuard-Web category filtering.
This chapter contains the following sections:
bword
exmword
fortiguard
ftgd-local-cat
ftgd-local-rating
ftgd-ovrd
urlfilter
bword
Control web content by blocking specific words or patterns. If enabled in the protection profile, the
FortiGate unit searches for words or patterns on requested web pages. If matches are found, values
assigned to the words are totalled. If a user-defined threshold value is exceeded, the web page is
blocked.
Use this command to add or edit and configure options for the Web content block list. Banned words
can be one word or a text string up to 80 characters long. The maximum number of banned words and
patterns in the list is 5000.
When a single word is entered, the FortiGate unit checks Web pages for that word. Add phrases by
enclosing the phrase in ‘single quotes’. When a phrase is entered, the FortiGate unit checks Web
pages for any word in the phrase. Add exact phrases by enclosing the phrases in “quotation marks”. If
the phrase is enclosed in quotation marks, the FortiGate checks Web pages for the exact phrase.
Create banned word patterns using wildcards or Perl regular expressions. See “Using Perl regular
expressions” on page 48.
You can add multiple banned word lists, and then select the best web content block list for each
protection profile. Choose the command syntax list below according to your FortiGate unit model.
Note: Perl regular expression patterns are case sensitive for Web Filter content block. To make a word or phrase
case insensitive, use the regular expression /i. For example, /bad language/i blocks all instances of bad
language regardless of case. Wildcard patterns are not case sensitive.
Syntax
config webfilter bword
edit <banned_word_list_integer>
set name <banned_word_list>
set comment <banned_word_list_comment>
config entries
edit <word_str>
set lang {french | japanese | korean | simch | thai | trach |
western}
set pattern-type {regexp | wildcard}
set score <integer_value>
set status {enable | disable}
end
C
pattern-type Set the pattern type for the banned word. Choose from regexp wildcard
{regexp | wildcard} or wildcard.Create patterns for banned words using Perl
regular expressions or wildcards.
History
Related topics
• exmword
• webfilter fortiguard
• webfilter ftgd-local-cat
• webfilter ftgd-local-rating
• webfilter ftgd-ovrd
• webfilter urlfilter
exmword
Web content exempt allows overriding of the web content block feature. If any patterns defined in the
web content exempt list appear on a web page, the page will not be blocked even if the web content
block feature would otherwise block it.
Use this command to add or edit and configure options for the Web content exempt list. Exempt words
can be one word or a text string up to 80 characters long. The maximum number of exempt words and
patterns in the list is 5000.
When a single word is entered, the FortiGate unit checks Web pages for that word. Add phrases by
enclosing the phrase in ‘single quotes’. When a phrase is entered, the FortiGate unit checks Web
pages for any word in the phrase. Add exact phrases by enclosing the phrases in “quotation marks”. If
the phrase is enclosed in quotation marks, the FortiGate checks Web pages for the exact phrase.
Create exempt word patterns using wildcards or Perl regular expressions. See “Using Perl regular
expressions” on page 48.
You can add multiple exempt word lists, and then select the best web content exempt list for each
protection profile. Choose the command syntax list below according to your FortiGate unit model.
Note: Perl regular expression patterns are case sensitive for Web Filter content exempt. To make a word or
phrase case insensitive, use the regular expression /i. For example, /good language/i exempts all instances
of good language regardless of case. Wildcard patterns are not case sensitive.
Syntax
config webfilter exmword
edit <exempt_word_list_integer>
set name <exempt_word_list>
set comment <exempt_word_list_comment>
config entries
edit <word_str>
set lang {french | japanese | korean | simch | thai | trach |
western}
set pattern-type {regexp | wildcard}
set status {enable | disable}
end
Keywords and variables Description Default
<exempt_word_list_integer> A unique number to identify the exempt word list.
<exempt_word_list> The name of the exempt word list.
<exempt_word_list_comment> The comment attached to the exempt word list.
<word_str> The word to be exempted.
lang {french | japanese | Enter the language character set used for the exempt word or western
korean | simch | thai | phrase. Choose from French, Japanese, Korean, Simplified
trach | western} Chinese, Thai, Traditional Chinese, or Western.
pattern-type Set the pattern type for the exempt word. Choose from regexp wildcard
{regexp | wildcard} or wildcard.Create patterns for exempt words using Perl
regular expressions or wildcards.
status {enable | disable} Enable or disable the exempt word. disable
History
Related topics
• bword
• webfilter fortiguard
• webfilter ftgd-local-cat
• webfilter ftgd-local-rating
• webfilter ftgd-ovrd
• webfilter urlfilter
fortiguard
Use this command to enable Web filtering by specific categories using FortiGuard-Web URL filtering.
FortiGuard-Web licensing
Every FortiGate unit comes with a free 30 day FortiGuard-Web trial license. FortiGuard-Web license
management is done by the FortiGuard-Web server, so there is no need to enter a license number.
The FortiGate unit automatically contacts the FortiGuard-Web servers when FortiGuard-Web category
blocking is enabled.
To renew the FortiGuard-Web license after the free trial, contact Fortinet Technical Support.
FortiGuard-Web configuration
Once enabled, FortiGuard-Web category block settings apply globally. After enabling FortiGuard-Web,
configure different categories for each firewall protection profile create.
See “firewall profile” on page 114 to configure FortiGuard-Web category blocking in a protection profile.
See “FortiGuard-Web categories” in the FortiGate Administration Guide for a complete list and
description of the FortiGuard-Web web filter categories.
Syntax
config webfilter fortiguard
set cache-mode {ttl | db-ver}
set cache-mem-percent <percent_integer>
set ovrd-auth-port-http <port_integer>
set ovrd-auth-https <enable | disable>
set ovrd-auth-port-https <port_integer>
set cache-prefix-match <enable | disable>
end
Keywords and variables Description Default
cache-mode {ttl | db-ver} Change the cache entry expiration mode. Choices ttl
are ttl or db-ver.
Using ttl, cache entries are deleted after a number
of seconds determined by the cache-ttl setting, or
until newer cache entries force the removal of older
ones.
When set to db-ver, cache entries are kept until the
FortiGuard database changes, or until newer cache
entries force the removal of older ones.
cache-mem-percent Change the maximum percentage of memory the 2
<percent_integer> cache will use. Enter a value from 1 to 15 percent.
ovrd-auth-port-http The port to use for FortiGuard Web Filter HTTP 8008
<port_integer> override authentication.
ovrd-auth-https Enable to use HTTPS for override authentication. disable
<enable | disable>
ovrd-auth-port-https The port to use for FortiGuard Web filtering HTTPS 8010
<port_integer> override authentication.
cache-prefix-match Enable and disable prefix matching. enable
<enable | disable> If enabled the FortiGate unit attempts to match a
packet against the rules in a prefix list starting at the
top of the list.
For information on prefix lists see the section “prefix-
list” on page 275 of the Router chapter in the FortiOS
CLI Guide.
History
Related topics
• webfilter bword
• webfilter ftgd-local-cat
• webfilter ftgd-local-rating
• webfilter ftgd-ovrd
• webfilter urlfilter
ftgd-local-cat
Use this command to add local categories to the global URL category list. The categories defined here
appear in the global URL category list when configuring a protection profile. Users can rate URLs
based on the local categories.
Syntax
config webfilter ftgd-local-cat
edit <local_cat_str>
set id <id_integer>
end
Keywords and variables Description Default
<local_cat_str> The description of the local category.
id <id_integer> The local category unique ID number. 0
Example
This example shows how to add the category local_block with an ID of 10.
config webfilter ftgd-local-cat
edit local_block
set id 10
end
History
Related topics
• webfilter bword
• webfilter fortiguard
• webfilter ftgd-local-rating
• webfilter ftgd-ovrd
• webfilter urlfilter
ftgd-local-rating
Use this command to rate URLs using local categories.
Users can create user-defined categories then specify the URLs that belong to the category. This
allows users to block groups of web sites on a per profile basis. The ratings are included in the global
URL list with associated categories and compared in the same way the URL block list is processed.
The user can also specify whether the local rating is used in conjunction with the FortiGuard rating or is
used as an override.
Syntax
config webfilter ftgd-local-rating
edit <local_url_str>
set rating [[<category_integer>] [group_str] [class_str]...]
set status {enable | disable}
end
Keywords and variables Description Default
<local_url_str> The URL being rated.
rating Set categories, groups, and classifications for the rating. Enter
[[<category_integer>] ‘?’ to print a list of category codes and descriptions available. To
[group_str] remove categories from the rating, use the unset command.
[class_str]...]
status {enable | disable} Enable or disable the local rating. enable
Example
This example shows how to configure a local rating for the web site www.example.com. with a rating
including category 12, all categories in group 4, and classification 1.
config webfilter ftgd-local-rating
edit www.example.com
set rating 12 g4 c1
end
History
Related topics
• webfilter bword
• webfilter fortiguard
• webfilter ftgd-local-cat
• webfilter ftgd-ovrd
• webfilter urlfilter
ftgd-ovrd
Use this command to configure FortiGuard-Web filtering overrides.
Users may require access to web sites that are blocked by a policy. In this case, an administrator can
give the user the ability to override the block for a specified period of time.
When a user attempts to access a blocked site, if override is enabled, a link appears on the block page
directing the user to an authentication form. The user must provide a correct user name and password
or the web site remains blocked. Authentication is based on user groups and can be performed for
local, RADIUS, and LDAP users.
Syntax
config webfilter ftgd-ovrd
edit <override_integer>
set expires
set ext-ref <allow | deny>
set ip <ipv4_address>
set profile <profile_str>
set rating [[<category_integer>] [group_str] [class_str]...]
set scope {user | user-group | ip | profile}
set status {enable | disable}
set type {dir | domain | rating}
set url <url_str>
set user <user_str>
set user-group <user_group_str>
end
get webfilter ftgd-ovrd <override_integer>
Keywords and variables Description Default
<override_integer> The unique ID number of the override.
expires The date and time the override expires.
ext-ref <allow | deny> Allow or deny access to off-site URLs. allow
initiator The user who initiated the override rule. This keyword is get-
only.
ip <ipv4_address> When the scope is IP, the IP address for which the override rule 0.0.0.0
applies.
profile <profile_str> When the scope is profile, the profile for which the override rule
applies.
rating Set categories, groups, and classifications for the rating. Enter
[[<category_integer>] ‘?’ to print a list of category codes and descriptions available. To
[group_str] remove categories from the rating, use the unset command.
[class_str]...]
scope {user | user-group The scope of the override rule. user
| ip | profile}
status {enable | disable} Enable or disable the override rule. disable
type {dir | domain | Specify the type od override rule. dir
rating} • dir - override the website directory
• domain - override the domain
• rating - override the specified categories and classifications
url <url_str> The URL for which the override rule applies.
Example
This example shows how to set an override (13).
config webfilter ftgd-ovrd
edit 13
set rating 12 g4 c1
end
Use the following command to get information about an override.
get webfilter ftgd-ovrd 1
id : 1
expires : Wed Jul 6 07:00:30 2005
ext_ref : allow
initiator : admin
scope : user
status : enable
type : dir
url : 192.168.2201.23
user : user_1
History
Related topics
• webfilter bword
• webfilter fortiguard
• webfilter ftgd-local-cat
• webfilter ftgd-local-rating
• webfilter urlfilter
urlfilter
Use this command to control access to specific URLs by adding them to the URL filter list. The
FortiGate unit exempts or blocks Web pages matching any specified URLs and displays a replacement
message instead.
Configure the FortiGate unit to allow, block, or exempt all pages on a website by adding the top-level
URL or IP address and setting the action to allow, block, or exempt.
Block individual pages on a website by including the full path and filename of the web page to block.
Type a top-level URL or IP address to block access to all pages on a website. For example,
www.example.com or 172.16.144.155 blocks access to all pages at this website.
Type a top-level URL followed by the path and filename to block access to a single page on a website.
For example, www.example.com/news.html or 172.16.144.155/news.html blocks the news
page on this website.
To block all pages with a URL that ends with example.com, add example.com to the block list. For
example, adding example.com blocks access to www.example.com, mail.example.com,
www.finance.example.com, and so on.
Use this command to exempt or block all URLs matching patterns created using text and regular
expressions (or wildcard characters). For example, example.* matches example.com,
example.org, example.net and so on. The FortiGate unit exempts or blocks Web pages that
match any configured pattern and displays a replacement message instead.
The maximum number of entries in the list is 5000.
Syntax
config webfilter urlfilter
edit <url_filter_list_integer>
set name <urlfilter_list>
set comment <urlfilter_list_comment>
config entries
edit <url_str>
set action {allow | block | exempt}
set status {enable | disable}
set type {simple | regex}
end
end
Keywords and variables Description Default
<url_filter_list_integer> A unique number to identify the URL filter list.
<urlfilter_list> The name of the URL filter list.
<urlfilter_list_comment> The comment attached to the URL filter list.
<url_str> The URL to added to the list.
action The action to take for matches. exempt
{allow | block | exempt} An allow match exits the URL filter list and checks the
other web filters.
An exempt match stops all further checking including AV
scanning.
A block match blocks the URL and no further checking
will be done.
status {enable | disable} The status of the filter. enable
type {simple | regex} The type of URL filter: simple or regular expression. simple
History
Related topics
• webfilter bword
• webfilter fortiguard
• webfilter ftgd-local-cat
• webfilter ftgd-local-rating
• webfilter ftgd-ovrd
execute
The execute commands perform immediate operations on the FortiGate unit. You can:
• Back up and restore the system configuration, or reset the unit to factory settings.
• Execute the run but not save feature
• Set the unit date and time.
• View and clear DHCP leases.
• Clear arp table entries.
• View and delete log messages. Delete old log files.
• Manually dial or hang up the modem (models 50A, 50AM, 60, 60M only).
• Use ping or traceroute to diagnose network problems.
• Restart the router or the entire FortiGate unit.
• Update the antivirus and attack definitions on demand.
• Generate certificate requests and install certificates for VPN authentication.
backup
Back up the FortiGate configuration files, logs, or IPS user-defined signatures file to a TFTP server,
USB disk, or a management station. Management stations can be either a FortiManager unit, or
Central Management service. For more information see “system fortiguard” on page 342 or “system
fortiguard” on page 342.
When virtual domain configuration is enabled (in system global, vdom-admin is enabled), the
content of the backup file depends on the administrator account that created it.
• A backup of the system configuration from the super admin account contains the global settings
and the settings for all of the VDOMs. Only the super admin can restore the configuration from this
file.
• When you back up the system configuration from a regular administrator account, the backup file
contains the global settings and the settings for the VDOM to which the administrator belongs. Only
a regular administrator account can restore the configuration from this file.
Syntax
execute backup {disk | memory} alllogs <tftp_ipv4>
execute backup {disk | memory} log <tftp_ipv4> <log_type>
execute backup config management-station <comment>
execute backup config tftp <filename> <tftp_ipv4> [<password>]
execute backup config usb <filename> [<password>]
execute backup full-config tftp <filename> <tftp_ipv4> [<password>]
execute backup full-config usb <filename> [<password>]
execute backup ipsuserdefsig <filename> <tftp_ipv4>
Example
This example shows how to backup the FortiGate unit system configuration to a file named fgt.cfg
on a TFTP server at IP address 192.168.1.23.
execute backup config tftp fgt.cfg 192.168.1.23
History
Related topics
• execute restore
• ips custom
batch
Execute a series of CLI commands.
Note: execute batch commands are controlled by the Maintenance (mntgrp) access
control group.
Syntax
execute batch [<cmd_cue>]
where <cmd_cue> is one of:
• end - exit session and run the batch commands
• lastlog - read the result of the last batch commands
• start - start batch mode
• status - batch mode status reporting if batch mode is running or stopped
Example
To start batch mode:
execute batch start
Enter batch mode...
History
central-mgmt
Execute Central Management Service update of account information.
Syntax
execute central-mgmt set-mgmt-id <management_id>
execute central-mgmt update
set-mgmt-id is used to change or initially set the management ID, or your account number for
Central Management Services. This account ID must be set for the service to be enabled.
update is used to update your Central Management Service contract with your new management
account ID. This command is to be used if there are any changes to your management service
account.
Example
If you are registering with the Central Management Service for the first time, and your account number
is 123456, you would enter the following:
execute central-mgmt set-mgmt-id 123456
execute central-mgmt update
History
cfg reload
Use this command to restore the saved configuration when the configuration change mode is manual
or revert. This command has no effect if the mode is automatic, the default. The set cfg-save
command in system global sets the configuration change mode.
When you reload the saved system configuration, the your session ends and the FortiGate unit
restarts.
In the default configuration change mode, automatic, CLI commands become part of the saved unit
configuration when you execute them by entering either next or end.
In manual mode, commands take effect but do not become part of the saved configuration unless you
execute the execute cfg save command. When the FortiGate unit restarts, the saved configuration
is loaded. Configuration changes that were not saved are lost.
The revert mode is similar to manual mode, except that configuration changes are saved
automatically if the administrative session is idle for more than a specified timeout period. This
provides a way to recover from an erroneous configuration change, such as changing the IP address
of the interface you are using for administration. You set the timeout in system global using the
set cfg-revert-timeout command.
Syntax
execute cfg reload
Example
This is sample output from the command when successful:
# exec cfg reload
configs reloaded. system will reboot.This is sample output from the
command when not in runtime-only configuration mode:
# exec cfg reload
no config to be reloaded.
History
Related topics
• execute cfg save
• system global
cfg save
Use this command to save configuration changes when the configuration change mode is manual or
revert. If the mode is automatic, the default, all changes are added to the saved configuration as
you make them and this command has no effect. The set cfg-save command in system global
sets the configuration change mode.
In manual mode, commands take effect but do not become part of the saved configuration unless you
execute the execute cfg save command. When the FortiGate unit restarts, the saved configuration
is loaded. Configuration changes that were not saved are lost.
The revert mode is similar to manual mode, except that configuration changes are saved
automatically if the administrative session is idle for more than a specified timeout period. This
provides a way to recover from an erroneous configuration change, such as changing the IP address
of the interface you are using for administration. To change the timeout from the default of 600
seconds, go to system global and use the set cfg-revert-timeout command.
Syntax
execute cfg save
Example
This is sample output from the command:
# exec cfg save
config saved.
This is sample output when not in runtime-only configuration mode. It also occurs when in runtime-only
configuration mode and no changes have been made:
# exec cfg save
no config to be saved.
History
Related topics
• execute cfg reload
• system global
Syntax
exec clear system arp table
History
Related topics
• execute router restart
• get router info routing-table
• get system arp
cli status-msg-only
Enable standardized CLI error output messages. If executed, this command stops other debug
messages from displaying in the current CLI session.
Syntax
exec cli status-msg-only <enable | disable>
The message format is:
[error code]: text message
There are three error categories: OK, Keyword Error, and Data Error. The error code provides details
about the type of error.
An OK message [00000] indicates that the command has been accepted. An ERROR message
indicates that the command generated an error. A Keyword Error [1000x] indicates that the keyword
is not supported, or the attempted command is not recognized. A Data Error [2000x] indicates that
the data source is already in use.
History
cli check-template-status
Reports the status of the SCP script template.
Syntax
exec cli check-template-status
History
date
Get or set the system date.
Syntax
execute date [<date_str>]
date_str has the form yyyy-mm-dd, where
• yyyy is the year and can be 2001 to 2037
• mm is the month and can be 01 to 12
• dd is the day of the month and can be 01 to 31
If you do not specify a date, the command returns the current system date. Shortened values, such as
‘06’ instead of ‘2006’ for the year or ‘1’ instead of ‘01’ for month or day, are not valid.
Example
This example sets the date to 17 September 2004:
execute date 2004-09-17
History
Related topics
• execute time
deploy
Configure deploy mode.
This command is used by FortiManager.
Syntax
execute deploy start cmd
execute deploy confirm <confirm_code>
execute deploy end
History
dhcp lease-clear
Clear all DHCP address leases.
Syntax
execute dhcp lease-clear
History
Related topics
• execute dhcp lease-list
• system dhcp server
• system dhcp reserved-address
dhcp lease-list
Display DHCP leases on a given interface
Syntax
execute dhcp lease-list [interface_name]
If you specify an interface, the command lists only the leases issued on that interface. Otherwise, the
list includes all leases issued by DHCP servers on the FortiGate unit.
If there are no DHCP leases in user on the FortiGate unit, an error will be returned.
History
Related topics
• execute deploy
• system dhcp server
• system dhcp reserved-address
disconnect-admin-session
Disconnect an administrator who is logged in.
Syntax
execute disconnect-admin-session <index_number>
To determine the index of the administrator that you want to disconnect, view the list of logged-in
administrators by using the following command:
execute disconnect-admin-session ?
The list of logged-in administrators looks like this:
Connected:
INDEX USERNAME TYPE FROM TIME
0 admin WEB 172.20.120.51 Mon Aug 14 12:57:23 2006
1 admin2 CLI ssh(172.20.120.54) Mon Aug 14 12:57:23 2006
Example
This example shows how to disconnect a logged in administrator.
execute disconnect-admin-session 1
History
Related topics
• system mac-address-table
• get system info admin status
factoryreset
Reset the FortiGate configuration to factory default settings.
Syntax
execute factoryreset
Caution: This procedure deletes all changes that you have made to the FortiGate configuration and reverts the
! system to its original configuration, including resetting interface addresses.
History
Related topics
• execute backup
• execute reboot
formatlogdisk
Format the FortiGate hard disk to enhance performance for logging.
Syntax
execute formatlogdisk
! Caution: This operation will erase all quarantine files and logging data on the hard disk.
History
FortiOS v2.80 No change.
fortiguard-log update
Update the FortiGuard Log and Analysis contract.
Syntax
execute fortiguard-log update
History
Related topics
• system fortiguard
• log fortianalyzer setting
• {disk | fortianalyzer | memory | syslogd | webtrends | fortiguard} filter
fsae refresh
Use this command to manually refresh user group information from Windows AD servers connected to
the FortiGate unit using the Fortinet Server Authentication Extensions (FSAE).
Syntax
execute fsae refresh
History
Related topics
• user fsae
ha disconnect
Use this command to disconnect a FortiGate unit from a functioning cluster. You must specify the serial
number of the unit to be disconnected. You must also specify an interface name and assign an IP
address and netmask to this interface of the disconnected unit. You can disconnect any unit from the
cluster even the primary unit. After the unit is disconnected the cluster responds as if the disconnected
unit has failed. The cluster may renegotiate and may select a new primary unit.
To disconnect the unit from the cluster, the execute ha disconnect command sets the HA mode of
the disconnected unit to standalone. In addition, all interface IP addresses of the disconnected unit are
set to 0.0.0.0. The interface specified in the command is set to the IP address and netmask that you
specify in the command. In addition all management access to this interface is enabled. Once the
FortiGate unit is disconnected you can use SSH, telnet, HTTPS, or HTTP to connect to and manage
the FortiGate unit.
Syntax
execute ha disconnect <cluster-member-serial_str> <interface_str>
<address_ipv4> <address_ipv4mask>
Example
This example shows how to disconnect a cluster unit with serial number FGT5002803033050. The
internal interface of the disconnected unit is set to IP address 1.1.1.1 and netmask 255.255.255.0.
execute ha disconnect FGT5002803033050 internal 1.1.1.1 255.255.255.0
History
Related topics
• execute ha manage
• execute ha synchronize
• system ha
ha manage
Use this command from the CLI of a FortiGate unit in an HA cluster to log into the CLI of another unit in
the cluster. Usually you would use this command from the CLI of the primary unit to log into the CLI of
a subordinate unit. However, if you have logged into a subordinate unit CLI, you can use this command
to log into the primary unit CLI, or the CLI of another subordinate unit.
You can use CLI commands to manage the cluster unit that you have logged into. If you make changes
to the configuration of any cluster unit (primary or subordinate unit) these changes are synchronized to
all cluster units.
Syntax
execute ha manage <cluster-index>
Keywords and variables Description
cluster-index The cluster index is assigned by the FortiGate Clustering Protocol
according to cluster unit serial number. The cluster unit with the highest
serial number has a cluster index of 0. The cluster unit with the second
highest serial number has a cluster index of 1 and so on.
Enter ? to list the cluster indexes of the cluster units that you can log into.
The list does not show the unit that you are already logged into.
Example
This example shows how to log into a subordinate unit in a cluster of three FortiGate units. In this
example you have already logged into the primary unit. The primary unit has serial number
FGT3082103000056. The subordinate units have serial numbers FGT3012803021709 and
FGT3082103021989.
execute ha manage ?
<id> please input slave cluster index.
<0> Subsidary unit FGT3012803021709
<1> Subsidary unit FGT3082103021989
Type 0 and press enter to connect to the subordinate unit with serial number FGT3012803021709. The
CLI prompt changes to the host name of this unit. To return to the primary unit, type exit.
From the subordinate unit you can also use the execute ha manage command to log into the
primary unit or into another subordinate unit. Enter the following command:
execute ha manage ?
<id> please input slave cluster index.
<1> Subsidary unit FGT3082103021989
<2> Subsidary unit FGT3082103000056
Type 2 and press enter to log into the primary unit or type 1 and press enter to log into the other
subordinate unit. The CLI prompt changes to the host name of this unit.
History
Related topics
• execute ha disconnect
• execute ha synchronize
• system ha
ha synchronize
Use this command from a subordinate unit in an HA cluster to manually synchronize its configuration
with the primary unit. Using this command you can synchronize the following:
• Configuration changes made to the primary unit (normal system configuration, firewall
configuration, VPN configuration and so on stored in the FortiGate configuration file),
• Antivirus engine and antivirus definition updates received by the primary unit from the FortiGuard
Distribution Network (FDN),
• IPS attack definition updates received by the primary unit from the FDN,
• Web filter lists added to or changed on the primary unit,
• Email filter lists added to or changed on the primary unit,
• Certification Authority (CA) certificates added to the primary unit,
• Local certificates added to the primary unit.
You can also use the start and stop keywords to force the cluster to synchronize its configuration or
to stop a synchronization process that is in progress.
Syntax
execute ha synchronize {config| avupd| attackdef| weblists| emaillists|
ca| localcert| all | start | stop}
Variables Description
config Synchronize the FortiGate configuration.
avupd Synchronize the antivirus engine and antivirus definitions.
attackdef Synchronize attack definitions.
weblists Synchronize web filter lists.
emaillists Synchronize email filter lists.
ca Synchronize CA certificates.
localcert Synchronize local certificates.
all Synchronize all of the above.
start Start synchronizing the cluster configuration.
stop Stop the cluster from completing synchronizing its configuration.
Example
From the CLI of a subordinate unit, use the following commands to synchronize the antivirus and
attack definitions on the subordinate FortiGate unit with the primary unit after the FDN has pushed new
definitions to the primary unit.
execute ha synchronize avupd
execute ha synchronize attackdef
History
Related topics
• execute ha disconnect
• execute ha manage
• system ha
interface dhcpclient-renew
Renew the DHCP client for the specified DHCP interface and close the CLI session. If there is no
DHCP connection on the specified port, there is no output.
Syntax
execute interface dhcpclient-renew <port>
Example
This is the output for renewing the DHCP client on port1 before the session closes:
# exec interface dhcpclient-renew port1
renewing dhcp lease on port1
History
Related topics
• execute deploy
• execute dhcp lease-list
interface pppoe-reconnect
Reconnect to the PPPoE service on the specified PPPoE interface and close the CLI session. If there
is no PPPoE connection on the specified port, there is no output.
Syntax
execute interface pppoe-reconnect <port>
History
Related topics
• execute modem dial
• execute modem hangup
log delete-all
Use this command to clear all log entries in memory and current log files on hard disk. If your FortiGate
unit has no hard disk, only log entries in memory will be cleared. You will be prompted to confirm the
command.
Syntax
execute log delete-all
History
Related topics
• execute log delete-filtered
• execute log delete-rolled
• execute log display
• execute log filter
• execute log list
log delete-filtered
Use this command to delete log messages that match the current filter. You need to first set the log
filter with the execute log filter <filter> command.
Syntax
execute log delete-filtered
Example
To delete all traffic logs, enter the following commands:
execute log filter category traffic
execute log delete-filtered
History
Related topics
• execute log filter
• execute log delete-rolled
• execute log display
• execute log list
log delete-rolled
Use this command to delete rolled log files.
Syntax
execute log delete-rolled <category> <start> <end>
Variable Description
<category> Enter the category of rolled log files that you want to delete:
• event
• ids
• spam
• traffic
• virus
• webfilter
<start> Enter the number of the first log to delete. If you are deleting multiple rolled log files, you
must also enter a number for end.
<end> Enter the number of the last log to delete, if you are deleting multiple rolled log files.
<category> must be one of: event, ids, spam, traffic, virus or webfilter. The <start>
and <end> values represent the range of log files to delete. If <end> is not specified, only the
<start> log number is deleted.
Example
To delete all of the rolled traffic log files, enter the following command:
execute log delete-rolled traffic 1 9999
History
Related topics
• log fortianalyzer setting
• execute log delete-filtered
• execute log filter
• execute log delete-all
log display
Use this command to display log messages that you have selected with the execute log filter
command.
Syntax
execute log display
The console displays the first 10 log messages. To view more messages, run the command again. You
can do this until you have seen all of the selected log messages. To restart viewing the list from the
beginning, use the commands
execute log filter start_index 1
execute log display
You can restore the log filters to their default values using the command
execute log filter reset
History
Related topics
• execute log filter
• execute log delete-filtered
log filter
Use this command to select log messages for viewing or deletion. You can view one log category on
one device at a time. Optionally, you can filter the messages to select only specified date ranges or
severities of log messages. For traffic logs, you can filter log messages by source or destination IP
address.
Commands are cumulative. If you omit a required variable, the command displays the current setting.
Use as many execute log filter commands as you need to define the log messages that you
want to view.
History
FortiOS v2.90 New
Related topics
• execute log delete-filtered
• execute log display
Syntax
execute log fortianalyzer test-connectivity
Example
When FortiAnalyzer is connected, the output looks like this:
FortiAnalyzer Host Name: FortiAnalyzer-800
FortiGate Device ID: FG300A2904500044
Registration: registered
Connection: allow
Disk Space (Used/Allocated): 0/1000 MB
Total Free Space: 456690 MB
Log: Tx & Rx
Report: Tx & Rx
Content Archive: Tx & Rx
Quarantine: Tx & Rx
When FortiAnalyzer is not connected, the output is: Connect Error
History
Related topics
• log fortianalyzer setting
log list
You can view the list of current and rolled log files on the console. The list shows the file name, size
and timestamp.
Syntax
execute log list <category>
<category> must be one of: event, spam, traffic, virus or webfilter.
Example
The output looks like this:
elog 8704 Fri Jan 28 14:24:35 2005
elog.1 1536 Thu Jan 27 18:02:51 2005
elog.2 35840 Wed Jan 26 22:22:47 2005
At the end of the list, the total number of files in the category is displayed. For example:
501 event log file(s) found.
History
Related topics
• execute log delete-rolled
log roll
Use this command to roll all log files.
Syntax
execute log roll
History
Related topics
• execute log delete-rolled
modem dial
Dial the modem.
The dial command dials the accounts configured in config system modem until it makes a
connection or it has made the maximum configured number of redial attempts.
This command applies only to models 50A, 60, 60M and 60-WiFi and is effective only if the modem is
in Standalone mode.
Syntax
execute modem dial
History
Related topics
• system modem
• execute modem hangup
modem hangup
Hang up the modem.
This command applies only to models 50A, 60, 60M and 60-WiFi and is effective only if the modem is
in Standalone mode.
Syntax
execute modem hangup
History
Related topics
• system modem
• execute modem dial
mrouter clear
Clear multicast routes, RP-sets, IGMP membership records or routing statistics.
Syntax
Clear IGMP memberships:
execute mrouter clear igmp-group {{<group-address>} <interface-name>}
execute mrouter clear igmp-interface <interface-name>
Clear statistics:
execute mrouter clear statistics {<group-address> {<source-address>}}
History
Related topics
• router multicast
• get router info bgp
ping
Send an ICMP echo request (ping) to test the network connection between the FortiGate unit and
another network device.
Syntax
execute ping {<address_ipv4> | <host-name_str>}
<host-name_str> should be an IP address, or a fully qualified domain name.
Example
This example shows how to ping a host with the IP address 172.20.120.16.
execute ping 172.20.120.16
PING 172.20.120.16 (172.20.120.16): 56 data bytes
64 bytes from 172.20.120.16: icmp_seq=0 ttl=128 time=0.5 ms
64 bytes from 172.20.120.16: icmp_seq=1 ttl=128 time=0.2 ms
64 bytes from 172.20.120.16: icmp_seq=2 ttl=128 time=0.2 ms
64 bytes from 172.20.120.16: icmp_seq=3 ttl=128 time=0.2 ms
64 bytes from 172.20.120.16: icmp_seq=4 ttl=128 time=0.2 ms
--- 172.20.120.16 ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 0.2/0.2/0.5 ms
History
Related topics
• execute ping-options
• execute ping6
• execute traceroute
ping-options
Set ICMP echo request (ping) options to control the way ping tests the network connection between
the FortiGate unit and another network device.
Syntax
execute ping-options data-size <bytes>
execute ping-options df-bit {yes | no}
execute ping-options pattern <2-byte_hex>
execute ping-options repeat-count <repeats>
execute ping-options source {auto | <source-intf_ip>}
execute ping-options timeout <seconds>
execute ping-options tos <service_type>
execute ping-options ttl <hops>
execute ping-options validate-reply {yes | no}
execute ping-options view-settings
Example
Use the following command to increase the number of pings sent.
execute ping-options repeat-count 10
Use the following command to send all pings from the FortiGate interface with IP address
192.168.10.23.
execute ping-options source 192.168.10.23
History
Related topics
• execute ping
• execute ping6
• execute traceroute
• system tos-based-priority
ping6
Send an ICMP echo request (ping) to test the network connection between the FortiGate unit and an
IPv6 capable network device.
Syntax
execute ping6 {<address_ipv6> | <host-name_str>}
Example
This example shows how to ping a host with the IPv6 address
12AB:0:0:CD30:123:4567:89AB:CDEF.
execute ping6 12AB:0:0:CD30:123:4567:89AB:CDEF
History
Related topics
• execute ping
• execute ping-options
• router static6
reboot
Restart the FortiGate unit.
Syntax
execute reboot <comment “comment_string”>
<comment “comment_string”> allows you to optionally add a message that will appear in the hard disk
log indicating the reason for the reboot. If the message is more than one word it must be enclosed in
quotes.
Example
This example shows the reboot command with a message included.
execute reboot comment “December monthly maintenance”
History
Related topics
• execute backup
• execute factoryreset
restore
Use this command to
• restore the configuration from a file
• change the FortiGate firmware
• change the FortiGate backup firmware
• restore an IPS custom signature file
When virtual domain configuration is enabled (in system global, vdom-admin is enabled), the
content of the backup file depends on the administrator account that created it.
• A backup of the system configuration from the super admin account contains the global settings
and the settings for all of the VDOMs. Only the super admin account can restore the configuration
from this file.
• A backup file from a regular administrator account contains the global settings and the settings for
the VDOM to which the administrator belongs. Only a regular administrator account can restore the
configuration from this file.
Syntax
execute restore config management-station <type> <revision>
execute restore config tftp <filename> <tftp_ipv4> [<password>]
execute restore config usb <filename> [<password>]
execute restore av tftp <avfile> <tftp_ip4>
execute restore forticlient <fc_filename> <tftp_ipv4>
execute restore image ftp <filename> <ftp_ipv4>
execute restore image tftp <filename> <tftp_ipv4>
execute restore image usb <filename>
execute restore ips tftp <ipsfile> <tftp_ip4>
execute restore ipsuserdefsig <filename> <tftp_ipv4>
execute restore secondary-image tftp <filename> <tftp_ipv4>
execute restore secondary-image usb <filename>
Variables Description
config management-station Restore the system configuration from the Central Management
<type> <revision> server. The new configuration replaces the existing configuration,
including administrator accounts and passwords.
type can be normal or template. A template is a configuration
that can be applied to multiple FortiGate units.
revision is the number of the saved configuration to restore.
If the backup file was created with a password, you must specify
that password.
config tftp <filename> Restore the system configuration from a file on a TFTP server.
<tftp_ipv4> [<password>] The new configuration replaces the existing configuration,
including administrator accounts and passwords.
If the backup file was created with a password, you must specify
that password.
Variables Description
config usb <filename> Restore the system configuration from a file on a USB disk. The
[<password>] new configuration replaces the existing configuration, including
administrator accounts and passwords.
If the backup file was created with a password, you must specify
that password.
av tftp <avfile> <tftp_ip4> Upload the antivirus database file from a TFTP server to the
FortiGate unit.
forticlient <fc_filename> Upload the FortiClient image from a TFTP server to the FortiGate
<tftp_ipv4> unit. The filename must have the format:
FortiClientSetup_versionmajor.versionminor.build.exe.
For example, FortiClientSetup.3.0.377.exe.
image ftp <filename> Upload a firmware image from an FTP server to the FortiGate
<ftp_ipv4> unit. The FortiGate unit reboots, loading the new firmware.
This command is not available in multiple VDOM mode.
image tftp <filename> Upload a firmware image from a TFTP server to the FortiGate
<tftp_ipv4> unit. The FortiGate unit reboots, loading the new firmware.
This command is not available in multiple VDOM mode.
image usb <filename> Upload a firmware image from a USB disk to the FortiGate unit.
The FortiGate unit reboots, loading the new firmware.
ips tftp <ipsfile> <tftp_ip4> Upload the IPS database file from a TFTP server to the FortiGate
unit.
ipsuserdefsig <filename> Restore an IPS custom signature file. The file will overwrite the
<tftp_ipv4> existing IPS custom signature file.
secondary-image tftp <filename> Upload a firmware image from a TFTP server as the backup
<tftp_ipv4> firmware of the FortiGate unit. This is available only on models
numbered 100 and higher.
secondary-image usb <filename> Upload a firmware image from a USB disk as the backup
firmware of the FortiGate unit. The unit restarts when the upload
is complete. This is available only on models numbered 100 and
higher.
Example
This example shows how to upload a configuration file from a TFTP server to the FortiGate unit and
restart the FortiGate unit with this configuration. The name of the configuration file on the TFTP server
is backupconfig. The IP address of the TFTP server is 192.168.1.23.
execute restore config tftp backupconfig 192.168.1.23
History
FortiOS v2.80 Revised.
FortiOS v3.0 Added USB restore options and secondary-image restoration.
Removed allconfig option.
FortiOS v3.0 MR2 Added FTP restore option.
FortiOS v3.0 MR4 Added av, forticlient, ips keywords.
FortiOS v3.0 MR5 Added config management-station
Related topics
• execute backup
• ips custom
Syntax
execute router clear bgp all [soft] [in | out]
execute router clear bgp as <as_number> [soft] [in | out]
execute router clear bgp dampening {ip_address | ip/netmask}
execute router clear bgp external {in prefix-filter} [soft] [in | out]
execute router clear bgp flap-statistics {ip_address | ip/netmask}
execute router clear bgp ip <ip_address> [soft] [in | out]
Variables Description
all Clear all BGP peer connections.
as <as_number> Clear BGP peer connections by AS number.
dampening {ip_address | ip/netmask} Clear route flap dampening information for peer or network.
external {in prefix-filter} Clear all external peers.
ip <ip_address> Clear BGP peer connections by IP address.
peer-group Clear all members of a BGP peer-group.
[in | out] Optionally limit clear operation to inbound only or outbound
only.
flap-statistics {ip_address | Clear flap statistics for peer or network.
ip/netmask}
soft Do a soft reset that changes the configuration but does not
disturb existing sessions.
History
Related topics
• router bgp
Syntax
execute router clear bfd session <src_ip> <dst_ip> <interface>
Variables Description
<src_ip> Select the source IP address of the session.
<dst_ip> Select the destination IP address of the session.
<interface> Select the interface for the session.
History
Related topics
• router bgp
Syntax
execute router clear ospf process
History
Related topics
• router ospf
router restart
Use this command to restart the routing software.
Syntax
execute router restart
History
Related topics
• router
send-fds-statistics
Use this command to send an FDS statistics report now, without waiting for the FDS statistics report
interval to expire.
Syntax
execute send-fds-statistics
History
set-next-reboot
Use this command to start the FortiGate unit with primary or secondary firmware after the next reboot.
This command is useful only on models numbered 100 and higher which are able to store two
firmware images. By default, the FortiGate unit loads the firmware from the primary partition.
VDOM administrators do not have permission to run this command. It must be executed by a super
administrator.
Syntax
execute set-next-reboot {primary | secondary}
History
Related topics
• execute reboot
• execute shutdown
shutdown
Shut down the FortiGate unit now. You will be prompted to confirm this command.
Syntax
execute shutdown <comment> <comment_string>
<comment> allows you to optionally add a message that will appear in the hard disk log indicating the
reason for the shutdown. If the message is more than one word it must be enclosed in quotes.
Example
This example shows the reboot command with a message included.
execute shutdown comment “emergency facility shutdown”
History
Related topics
• execute factoryreset
• execute reboot
ssh
Use this command to establish an ssh session with another system.
Syntax
execute ssh <destination>
<destination> - the destination in the form user@ip or user@host.
Example
execute ssh [email protected]
To end an ssh session, type exit:
FGT-6028030112 # exit
Connection to 172.20.120.122 closed.
FGT-8002805000 #
History
FortiOS v3.0 MR3 New.
Related topics
• execute ping
• execute traceroute
• system interface
telnet
Use telnet client. You can use this tool to test network connectivity.
Syntax
execute telnet <telnet_ipv4>
<telnet_ipv4> is the address to connect with.
Type exit to close the telnet session.
History
Related topics
• execute ping
• execute traceroute
• system interface
time
Get or set the system time.
Syntax
execute time [<time_str>]
time_str has the form hh:mm:ss, where
• hh is the hour and can be 00 to 23
• mm is the minutes and can be 00 to 59
• ss is the seconds and can be 00 to 59
If you do not specify a time, the command returns the current system time.
You are allowed to shorten numbers to only one digit when setting the time. For example both 01:01:01
and 1:1:1 are allowed.
Example
This example sets the system time to 15:31:03:
execute time 15:31:03
History
Related topics
• execute date
traceroute
Test the connection between the FortiGate unit and another network device, and display information
about the network hops between the device and the FortiGate unit.
Syntax
execute traceroute {<ip_address> | <host-name>}
Example
This example shows how to test the connection with http://docs.forticare.com. In this example the
traceroute command times out after the first hop indicating a possible problem.
#execute traceoute docs.forticare.com
traceroute to docs.forticare.com (65.39.139.196), 30 hops max, 38 byte
packets
1 172.20.120.2 (172.20.120.2) 0.324 ms 0.427 ms 0.360 ms
2 * * *
If your FortiGate unit is not connected to a working DNS server, you will not be able to connect to
remote host-named locations with traceroute.
History
Related topics
• execute ping
• execute ping-options
update-av
Use this command to manually initiate the virus definitions and engines update. To update both virus
and attack definitions, use the execute update-now command.
Syntax
execute update-av
History
Related topics
• execute update-now
• system autoupdate override
• system autoupdate push-update
• system autoupdate schedule
update-ips
Use this command to manually initiate the Intrusion Prevention System (IPS) attack definitions and
engine update. To update both virus and attack definitions, use the execute update-now command.
Syntax
execute update-ips
History
Related topics
• execute update-now
• system autoupdate override
• system autoupdate override
• system autoupdate push-update
• system autoupdate schedule
update-now
Use this command to manually initiate both virus and attack definitions and engine updates. To initiate
only virus or attack definitions, use the execute update-av or execute update-ids command
respectively.
Syntax
execute update-now
History
Related topics
• execute update-av
• execute update-ips
• system autoupdate override
• system autoupdate push-update
• system autoupdate schedule
upd-vd-license
Use this command to enter a Virtual Domain (VDOM) license key.
If you have a FortiGate-3000 unit or higher, you can purchase a license key from Fortinet to increase
the maximum number of VDOMs to 25, 50, 100 or 250. By default, FortiGate units support a maximum
of 10 VDOMs.
This command is available only on FortiGate-3000 unit and higher.
Syntax
execute upd-vd-license <license_key>
Variables Description
<license_key> The license key is a 32-character string supplied by
Fortinet. Fortinet requires your unit serial number to
generate the license key.
History
usb-disk
Use these commands to manage your USB disks.
Syntax
execute usb-disk delete <filename>
execute usb-disk format
execute usb-disk list
execute usb-disk rename <old_name> <new_name>
Variables Description
delete <filename> Delete the named file from the USB disk.
format Format the USB disk.
list List the files on the USB disk.
rename <old_name> <new_name> Rename a file on the USB disk.
History
FortiOS v3.0 New.
Related topics
• execute backup
• execute restore
vpn certificate ca
Use this command to import a CA certificate from a TFTP or SCEP server to the FortiGate unit, or to
export a CA certificate from the FortiGate unit to a TFTP server.
Before using this command you must obtain a CA certificate issued by a CA.
Digital certificates are used to ensure that both participants in an IPSec communications session are
trustworthy, prior to an encrypted VPN tunnel being set up between the participants. The CA certificate
is the certificate that the FortiGate unit uses to authenticate itself to other devices.
Note: VPN peers must use digital certificates that adhere to the X.509 standard.
Note: Digital certificates are not required for configuring FortiGate VPNs. Digital certificates are an advanced
feature provided for the convenience of system administrators. This manual assumes the user has prior
knowledge of how to configure digital certificates for their implementation.
Syntax
execute vpn certificate ca export tftp <certificate-name_str>
<file-name_str> <tftp_ip>
execute vpn certificate ca import auto <ca_server_url> <ca_identifier_str>
execute vpn certificate ca import tftp <file-name_str> <tftp_ip>
Keyword/variable Description
import Import the CA certificate from a TFTP server to the FortiGate unit.
export Export or copy the CA certificate from the FortiGate unit to a file on the
TFTP server. Type ? for a list of certificates.
<certificate-name_str> Enter the name of the CA certificate.
<file-name_str> Enter the file name on the TFTP server.
<tftp_ip> Enter the TFTP server address.
auto Retrieve a CA certificate from a SCEP server.
tftp Import the CA certificate to the FortiGate unit from a file on a TFTP
server (local administrator PC).
<ca_server_url> Enter the URL of the CA certificate server.
<ca_identifier_str> CA identifier on CA certificate server (optional).
Examples
Use the following command to import the CA certificate named trust_ca to the FortiGate unit from a
TFTP server with the address 192.168.21.54.
execute vpn certificate ca import trust_ca 192.168.21.54
History
Related topics
• execute vpn certificate local
• execute vpn certificate remote
• execute vpn certificate crl
• execute vpn sslvpn del-tunnel
• execute vpn sslvpn del-web
• vpn certificate ca
• vpn certificate local
• vpn certificate crl
• vpn certificate remote
Note: VPN peers must use digital certificates that adhere to the X.509 standard.
Note: Digital certificates are not required for configuring FortiGate VPNs. Digital certificates are an advanced
feature provided for the convenience of system administrators. This manual assumes the user has prior
knowledge of how to configure digital certificates for their implementation.
Syntax
execute vpn certificate crl import auto <crl-name>
Keyword/variable Description
import Import the CRL from the configured LDAP, HTTP, or SCEP
authentication server to the FortiGate unit.
<crl-name> Enter the name of the CRL.
auto Trigger an auto-update of the CRL from the configured LDAP, HTTP, or
SCEP authentication server.
History
Related topics
• execute vpn certificate ca
• execute vpn certificate local
• execute vpn certificate remote
• execute vpn sslvpn del-tunnel
• execute vpn sslvpn del-web
• vpn certificate ca
• vpn certificate local
• vpn certificate crl
• vpn certificate remote
Note: VPN peers must use digital certificates that adhere to the X.509 standard.
Note: Digital certificates are not required for configuring FortiGate VPNs. Digital certificates are an advanced
feature provided for the convenience of system administrators. This manual assumes the user has prior
knowledge of how to configure digital certificates for their implementation.
Syntax - generate
execute vpn certificate local generate <certificate-name_str>
<key-length> {<host_ip> | <domain-name_str> | email-addr_str>}
[<optional_information>]
Variable Description
<certificate-name_str> Enter a name for the certificate. The name can contain numbers (0-9),
uppercase and lowercase letters (A-Z, a-z), and the special characters -
and _. Other special characters and spaces are not allowed.
<host_ip>
{<host_ip> | Enter the host IP address (host_ip), the domain name
<domain-name_str> | (domain-name_str), or an email address (email-addr_str) to
email-addr_str>} identify the FortiGate unit being certified. Preferably use an IP address
or domain name. If this is impossible (such as with a dialup client), use
an e-mail address.
For host_ip, enter the IP address of the FortiGate unit.
For domain-name_str, enter the fully qualified domain name of the
FortiGate unit.
For email-addr_str, enter an email address that identifies the
FortiGate unit.
If you specify a host IP or domain name, use the IP address or domain
name associated with the interface on which IKE negotiations will take
place (usually the external interface of the local FortiGate unit). If the IP
address in the certificate does not match the IP address of this interface
(or if the domain name in the certificate does not match a DNS query of
the FortiGate unit’s IP), then some implementations of IKE may reject
the connection. Enforcement of this rule varies for different IPSec
products.
Variable Description
<key-length> Enter 1024, 1536 or 2048 for the size in bits of the encryption key.
[<optional_information>] Enter optional_information as required to further identify the
certificate. See “Optional information variables” on page 626 for the list
of optional information variables. You must enter the optional variables
in order that they are listed in the table. To enter any optional variable
you must enter all of the variables that come before it in the list. For
example, to enter the organization_name_str, you must first enter
the country_code_str, state_name_str, and city_name_str.
While entering optional variables, you can type ? for help on the next
required variable.
Variable Description
<country_code_str> Enter the two-character country code. Enter execute vpn
certificates local generate <name_str> country
followed by a ? for a list of country codes. The country code is case
sensitive. Enter null if you do not want to specify a country.
<state_name_str> Enter the name of the state or province where the FortiGate unit is
located.
<city_name_str> Enter the name of the city, or town, where the person or organization
certifying the FortiGate unit resides.
<organization-name_str> Enter the name of the organization that is requesting the certificate for
the FortiGate unit.
<organization-unit_name_str> Enter a name that identifies the department or unit within the
organization that is requesting the certificate for the FortiGate unit.
<email_address_str> Enter a contact e-mail address for the FortiGate unit.
<ca_server_url> Enter the URL of the CA (SCEP) certificate server that allows auto-
signing of the request.
<challenge_password> Enter the challenge password for the SCEP certificate server.
Example - generate
Use the following command to generate a local certificate request with the name branch_cert, the
domain name www.example.com and a key size of 1536.
execute vpn certificate local generate branch_cert 1536 www.example.com
Syntax - import/export
execute vpn certificate local import tftp <file-name_str> <tftp_ip>
execute vpn certificate local export tftp <certificate-name_str>
<file-name_str> <tftp_ip>
Keyword/variable Description
import Import the local certificate from a TFTP server to the FortiGate unit.
export Export or copy the local certificate from the FortiGate unit to a file on the
TFTP server. Type ? for a list of certificates.
<certificate-name_str> Enter the name of the local certificate.
<tftp_ip> Enter the TFTP server address.
<file-name_str> Enter the file name on the TFTP server.
list List local certificates.
Examples - import/export
Use the following command to export the local certificate request generated in the above example
from the FortiGate unit to a TFTP server. The example uses the file name testcert for the
downloaded file and the TFTP server address 192.168.21.54.
exec vpn certificate local export branch_cert testcert 192.168.21.54
Use the following command to import the signed local certificate named branch_cert to the
FortiGate unit from a TFTP server with the address 192.168.21.54.
exec vpn certificate local import branch_cert 192.168.21.54
History
Related topics
• execute vpn certificate ca
• execute vpn certificate remote
• execute vpn certificate crl
• execute vpn sslvpn del-tunnel
• execute vpn sslvpn del-web
• vpn certificate ca
• vpn certificate local
• vpn certificate crl
• vpn certificate remote
Syntax
execute vpn certificate remote import tftp <file-name_str> <tftp_ip>
execute vpn certificate remote export tftp <certificate-name_str>
<file-name_str> <tftp_ip>
Keyword/variable Description
import Import the remote certificate from the TFTP server to the FortiGate unit.
export Export or copy the remote certificate from the FortiGate unit to a file on
the TFTP server. Type ? for a list of certificates.
<certificate-name_str> Enter the name of the public certificate.
<file-name_str> Enter the file name on the TFTP server.
<tftp_ip> Enter the TFTP server address.
tftp Import/export the remote certificate via a TFTP server.
History
Related topics
• execute vpn certificate ca
• execute vpn certificate local
• execute vpn certificate crl
• execute vpn sslvpn del-tunnel
• execute vpn sslvpn del-web
• vpn certificate ca
• vpn certificate local
• vpn certificate crl
• vpn certificate remote
Syntax
execute vpn sslvpn del-tunnel <tunnel_index>
<tunnel_index> identifies which tunnel to delete if there is more than one active tunnel.
History
Related topics
• vpn ssl settings
Syntax
execute vpn sslvpn del-web <web_index>
<web_index> identifies which web connection to delete if there is more than one active connection.
History
Related topics
• vpn ssl settings
get
The get commands retrieve information about the operation and performance of your FortiGate unit.
This chapter contains the following sections:
chassis status
For FortiGate-5000 series modules installed in a FortiGate-5050 or FortiGate-5140 chassis, you can
use the get chassis status command to view real-time operating status information about the
hardware components installed in the chassis.
Information displayed depends on the FortiGate-5000 series chassis and not on the FortiGate-5000
series module that you are connecting to. You can use this command to view information about all of
the hardware components installed in the chassis (including FortiGate, FortiController and other
Fortinet modules installed in the chassis as well as the chassis shelf managers).
The get chassis status command displays information received from the chassis shelf manager.
The command only displays information if at least one shelf manager is functioning in the chassis and
only if the FortiGate-5000 module that you have connected to can communicate with a shelf manager.
Syntax
get chassis status
The command display includes the following fields. For more information see the example that follows.
Example
The following example shows the get chassis status output for a FortiGate-5050 chassis that
contains the following modules:
• Slot 5: FortiGate-5005FA2
• Slot 4: FortiGate-5001FA2
• Slot 3: FortiGate-5001SX
• Slot 2: FortiSwitch-5003
• Slot 1: empty
• Shelf Manager: one shelf manager in shelf manager slot 1
To enter the command, the administrator has connected to the CLI of the FortiGate-5001SX module
installed in slot 3.
Chassis type: 5050
Active shelfmanager: 1
Current blade: 3
Shelfmanager 2: empty
Shelfmanager 1: exist
Blade 4: 5005
CPU1 Voltage: 1.1956V
CPU2 Voltage: 1.1858V
+5.0V: 4.8755V
+3.3V: 3.321V
+2.5V CPU 1: 2.5742V
+2.5V CPU 2: 2.5376V
+1.2V 1: 1.2054V
+1.2V 2: 1.2348V
Incoming Air-Flo: 35C
CPU Board Temp: 42C
CPU1 Temp: 59C
CPU2 Temp: 60C
Blade 4: 5001
5V: 5.0739V
3.3V: 3.4992V
2.5V: 2.497V
1.8V: 1.8124V
1.5V: 1.5345V
TEMP1: 41C
TEMP2: 35C
Blade 3: 5001
5V: 5.0764V
3.3V: 3.4884V
2.5V: 2.534V
1.8V: 1.8236V
1.5V: 1.5326V
TEMP1: 41C
TEMP2: 34C
Blade 2: 5003
+1.5V: 1.521V
+2V: 1.989V
+2.5V: 2.4921V
+3.3V: 3.3024V
+3.3VSB: 3.3712V
+5VSB: 5.07V
+12V: 12.096V
Baseboard Temp: 38C
BRD Top Temp: 36C
BRD Bottom Temp: 36C
BRD Center Temp: 41C
Blade 1: empty
History
Syntax
get firewall service predefined <service_name>
Example output
Fortigate-200A # get firewall service predefined FTP
name : FTP
icmpcode :
icmptype :
protocol : TCP/UDP
protocol-number : 6
tcpport-range : 21-21:0-65535
udpport-range :
Syntax
get gui console status
Example
The output looks like this:
Preferences:
User: admin
Colour scheme (RGB): text=FFFFFF, background=000000
Font: style=monospace, size=10pt
History buffer=50 lines, external input=disabled
Related topics
• get gui topology status
History
Syntax
get gui topology status
Example
The output looks like this:
Preferences:
Canvas dimensions (pixels): width=780, height=800
Colour scheme (RGB): canvas=12ff08, lines=bf0f00, exterior=ddeeee
Background image: type=none, placement: x=0, y=0
Line style: thickness=2
Related topics
• get gui console status
History
hardware status
Report information about the FortiGate unit hardware.
Syntax
get hardware status
Example
The output looks like this:
Model name: Fortigate-800
ASIC version: CP4
SRAM: 64M
CPU: Mobile Genuine Intel(R) processor 1400MHz
RAM: 1009 MB
Compact Flash: 122 MB /dev/hdc
Hard disk: 76308 MB /dev/hda
USB Flash: not available
Network Card chipset: Intel(R) PRO/1000 Network Connection (rev.0x01)
Network Card chipset: Intel(R) PRO/100 M Desktop Adapter (rev.0x0010)
History
Related topics
• get system status
ips decoder
Displays all the port settings of all the IPS decoders.
Syntax
get ips decoder
History
Related topics
• ips decoder
• get ips rule
History
ips rule
Displays all the port settings of all the IPS decoders.
Syntax
get ips rule
get ips rule status
Enter get ips rule to display a list of all the intrusion protection signatures. Enter get ips rule
status to list the default settings of all the signatures. The default settings of any individual signature
can be displayed using the config ips rule command.
History
Related topics
• ips decoder
• get ips decoder
• ips rule
Syntax
get ipsec tunnel list
Example
The output looks like this:
NAME REMOTE-GW PROXY-ID-SOURCE PROXY-ID-DESTINATION
STATUS TIMEOUT
VPN1 172.20.120.5:500 0.0.0.0/255.255.255.255 172.20.120.5/172.20.120.5
up 1786
History
Related topics
• vpn ipsec phase1
• vpn ipsec phase1-interface
• vpn ipsec manualkey
• vpn ipsec manualkey-interface
Syntax
get router info bgp <keyword>
<keyword> Description
cidr-only Show all BGP routes having non-natural network masks.
community Show all BGP routes having their COMMUNITY attribute
set.
community-info Show general information about the configured BGP
communities, including the routes in each community and
their associated network addresses.
community-list Show all routes belonging to configured BGP community
lists.
dampening {dampened-paths | flap- Display information about dampening:
statistics | parameters} • Type dampened-paths to show all paths that have
been suppressed due to flapping.
• Type flap-statistics to show flap statistics related
to BGP routes.
• Type parameters to show the current dampening
settings.
filter-list Show all routes matching configured AS-path lists.
inconsistent-as Show all routes associated with inconsistent autonomous
systems of origin.
memory Show the BGP memory table.
neighbors [<address_ipv4> | Show information about connections to TCP and BGP
<address_ipv4> advertised-routes | neighbors.
<address_ipv4> received prefix-filter |
<address_ipv4> received-routes |
<address_ipv4> routes]
network [<address_ipv4mask>] Show general information about the configured BGP
networks, including their network addresses and
associated prefixes.
network-longer-prefixes Show general information about the BGP route that you
<address_ipv4mask> specify (for example, 12.0.0.0/14) and any specific
routes associated with the prefix.
paths Show general information about BGP AS paths, including
their associated network addresses.
prefix-list <name> Show all routes matching configured prefix list <name>.
quote-regexp <regexp_str> Enter the regular expression to compare to the AS_PATH
attribute of BGP routes (for example, ^730$) and enable
the use of output modifiers (for example, include,
exclude, and begin) to search the results.
regexp <regexp_str> Enter the regular expression to compare to the AS_PATH
attribute of BGP routes (for example, ^730$).
route-map Show all routes matching configured route maps.
scan Show information about next-hop route scanning,
including the scan interval setting.
summary Show information about BGP neighbor status.
Example
For the command get router info bgp memory, the output looks like:
Memory type Alloc count Alloc bytes
=================================== ============= ===============
BGP structure : 2 1408
BGP VR structure : 2 104
BGP global structure : 1 56
BGP peer : 2 3440
BGP as list master : 1 24
Community list handler : 1 32
BGP Damp Reuse List Array : 2 4096
BGP table : 62 248
----------------------------------- ------------- ---------------
Temporary memory : 4223 96095
Hash : 7 140
Hash index : 7 28672
Hash bucket : 11 132
Thread master : 1 564
Thread : 4 144
Link list : 32 636
Link list node : 24 288
Show : 1 396
Show page : 1 4108
Show server : 1 36
Prefix IPv4 : 10 80
Route table : 4 32
Route node : 63 2772
Vector : 2180 26160
Vector index : 2180 18284
Host config : 1 2
Message of The Day : 1 100
IMI Client : 1 708
VTY master : 1 20
VTY if : 11 2640
VTY connected : 5 140
Message handler : 2 120
NSM Client Handler : 1 12428
NSM Client : 1 1268
Host : 1 64
Log information : 2 72
Context : 1 232
----------------------------------- ------------- ---------------
bgp proto specifc allocations : 9408 B
bgp generic allocations : 196333 B
bgp total allocations : 205741 B
History
Related topics
• router aspath-list
• router bgp
• router community-list
Syntax
get router info bfd neighbour
History
Syntax
get router info multicast <keywords>
<keywords> Description
igmp Show Internet Group Management Protocol (IGMP) membership information
according to one of these qualifiers:
• Type groups [{<interface-name> | <group-address>}] to show
IGMP information for the multicast group(s) associated with the specified
interface or multicast group address.
• Type groups-detail [{<interface-name> | <group-
address>}] to show detailed IGMP information for the multicast group(s)
associated with the specified interface or multicast group address.
• Type interface [<interface-name>] to show IGMP information for
all multicast groups associated with the specified interface.
pim dense-mode Show information related to dense mode operation according to one of these
qualifiers:
• Type interface to show information about PIM-enabled interfaces.
• Type interface-detail to show detailed information about PIM-
enabled interfaces.
• Type neighbor to show the current status of PIM neighbors.
• Type neighbor-detail to show detailed information about PIM
neighbors.
• Type next-hop to show information about next-hop PIM routers.
• Type table [<group-address>][<source-address>] to show the
multicast routing table entries associated with the specified multicast group
address and/or multicast source address.
pim sparse-mode Show information related to sparse mode operation according to one of these
qualifiers:
• Type bsr-info to show Boot Strap Router (BSR) information.
• Type interface to show information about PIM-enabled interfaces.
• Type interface-detail to show detailed information about PIM-
enabled interfaces.
• Type neighbor to show the current status of PIM neighbors.
• Type neighbor-detail to show detailed information about PIM
neighbors.
• Type next-hop to show information about next-hop PIM routers.
• Type rp-mapping to show Rendezvous Point (RP) information.
• Type table [<group-address>][<source-address>] to show the
multicast routing table entries associated with the specified multicast group
address and/or multicast source address.
table [<group-address>] Show the multicast routing table entries associated with the specified
[<source-address>] multicast group address and/or multicast source address.
table-count Show statistics related to the specified multicast group address and/or
[<group-address>] multicast source address.
[<source-address>]
Examples
This example displays all of the PIM entries in the multicast routing table:
get router info multicast table
This example displays IGMP information for the multicast group associated with multicast group
address 239.254.2.0:
get router info multicast igmp groups 239.254.2.0
History
Related topics
• router multicast
• execute mrouter clear
Syntax
get router info ospf <keyword>
<keyword> Description
border-routers Show OSPF routing table entries that have an Area Border Router (ABR)
or Autonomous System Boundary Router (ASBR) as a destination.
database <qualifier> Show information from the OSPF routing database according to one of
these qualifiers.
target can be one of the following values:
• Type adv_router <address_ipv4> to limit the information to LSAs
originating from the router at the specified IP address.
• Type self-originate <address_ipv4> to limit the information to
LSAs originating from the FortiGate unit.
adv-router Type adv-router <address_ipv4> to show ospf Advertising Router
<address_ipv4> link states for the router at the given IP address.
asbr-summary Type asbr-summary to show information about ASBR summary LSAs.
<target>
brief Type brief to show the number and type of LSAs associated with each
OSPF area.
external <target> Type external to show information about external LSAs.
max-age Type max-age to show all LSAs in the MaxAge list.
network <target> Type network to show information about network LSAs.
nssa-external Type nssa-external to show information about not-so-stubby external
<target> LSAs.
opaque-area Type opaque-area <address_ipv4> to show information about
<address_ipv4> opaque Type 10 (area-local) LSAs (see RFC 2370).
opaque-as Type opaque-as <address_ipv4> to show information about opaque
<address_ipv4> Type 11 LSAs (see RFC 2370), which are flooded throughout the AS.
opaque-link Type opaque-link <address_ipv4> to show information about
<address_ipv4> opaque Type 9 (link-local) LSAs (see RFC 2370).
router <target> Type router to show information about router LSAs.
self-originate Type self-originate to show self-originated LSAs.
summary <target> Type summary to show information about summary LSAs.
interface Show the status of one or all FortiGate interfaces and whether OSPF is
[<interface_name>] enabled on those interfaces.
<keyword> Description
neighbor [all | Show general information about OSPF neighbors, excluding down-status
<neighbor_id> | detail | neighbors:
detail all | interface • Type all to show information about all neighbors, including down-
<address_ipv4>] status neighbors.
• Type <neighbor_id> to show detailed information about the
specified neighbor only.
• Type detail to show detailed information about all neighbors,
excluding down-status neighbors.
• Type detail all to show detailed information about all neighbors,
including down-status neighbors.
• Type interface <address_ipv4> to show neighbor information
based on the FortiGate interface IP address that was used to establish
the neighbor’s relationship.
route Show the OSPF routing table.
status Show general information about the OSPF routing processes.
virtual-links Show information about OSPF virtual links.
Examples
The following example shows how to display information from LSAs originating from a neighboring
router at IP address 10.2.4.1:
get router info ospf database router adv_router 10.2.4.1
The following example shows how to display the number and type of LSAs associated with each OSPF
area to which the FortiGate unit is linked:
get router info ospf database brief
The following command shows the status of all FortiGate interfaces and whether OSPF is enabled on
those interfaces.
get router info ospf interface
History
Related topics
• execute router restart
• get router info protocols
• get router info routing-table
• system interface
• router ospf
Syntax
#get router info protocols
Routing Protocol is "rip"
Sending updates every 30 seconds with +/-50%
Timeout after 180 seconds, garbage collect after 120 seconds
Outgoing update filter list for all interface is not set
Incoming update filter list for all interface is not set
Default redistribution metric is 1
Redistributing:
Default version control: send version 2, receive version 2
Interface Send Recv Key-chain
Routing for Networks:
Routing Information Sources:
Gateway Distance Last Update Bad Packets Bad Routes
Distance: (default is 120)
History
Related topics
• execute router restart
• get router info rip
• get router info routing-table
• router rip
• router ospf
Syntax
get router info rip <keyword>
<keyword> Description
database Show the entries in the RIP routing database.
interface [<interface_name>] Show the status of the specified FortiGate unit interface
<interface_name> and whether RIP is enabled.
If interface is used alone it lists all the FortiGate unit interfaces and
whether RIP is enabled on each.
Example
The following command displays the RIP configuration information for the port1 interface:
get router info rip interface port1
History
Related topics
• get router info protocols
• get router info routing-table
• router rip
• system interface
Syntax
get router info routing-table <keyword>
<keyword> Description
all Show all entries in the routing table.
bgp Show the BGP routes in the routing table.
connected Show the connected routes in the routing table.
database Show the routing information database.
details [<address_ipv4mask>] Show detailed information about a route in the routing table, including
the next-hop routers, metrics, outgoing interfaces, and protocol-specific
information.
ospf Show the OSPF routes in the routing table.
rip Show the RIP routes in the routing table.
static Show the static routes in the routing table.
Example
The following command displays the entire routing table:
get router info routing-table all
History
Related topics
• execute router restart
• get router info ospf
• get router info protocols
• get router info rip
• router policy
• router rip
• router static
• router static6
• system interface
Syntax
get system admin list
Example
The output looks like this:
# get system admin list
username local device remote started
admin sshv2 port1:172.20.120.148:22 172.20.120.16:4167 2006-08-09 12:24:20
admin https port1:172.20.120.148:443 172.20.120.161:56365 2006-08-09 12:24:20
admin https port1:172.20.120.148:443 172.20.120.16:4214 2006-08-09 12:25:29
History
Syntax
get system admin status
Example
The output looks like this:
# get system admin status
username: admin
login local: sshv2
login device: port1:172.20.120.148:22
login remote: 172.20.120.16:4167
login vdom: root
login started: 2006-08-09 12:24:20
current time: 2006-08-09 12:32:12
username Name of the admin account currently logged in. username: admin
login local The protocol used to start the current session. login local: sshv2
login device The login information from the FortiGate unit login remote:
including interface, IP address, and port number. 172.20.120.16:4167
login remote The computer the user is logging in from including login remote:
the IP address and port number. 172.20.120.16:4167
login vdom The virtual domain the admin is current logged into. login vdom: root
login started The time the current session started. login started: 2006-08-
09 12:24:20
current time The current time of day on the FortiGate unit current time: 2006-08-
09 12:32:12
History
system arp
View the ARP table entries on the FortiGate unit.
This command is not available in multiple VDOM mode.
Syntax
get system arp
Example
The output looks like this:
# get system arp
Address Age(min) Hardware Addr Interface
172.20.120.16 0 00:0d:87:5c:ab:65 internal
172.20.120.138 0 00:08:9b:09:bb:01 internal
Address The IP address that is linked to the MAC address. 0.0.0.0
Age Current duration of the ARP entry in minutes. 0
Hardware Addr The hardware, or MAC address, to link with this IP 00:00:00:00:00:00:
address.
Interface The physical interface the address is on.
History
FortiOS v3.0 New.
FortiOS v3.0 MR1 No change.
FortiOS v3.0 MR2 Moved from ‘system’ to ‘get’ chapter.
FortiOS v3.0 MR4 Output format changed.
Related topics
• system arp-table
• system proxy-arp
Syntax
get system central-mgmt status
Example
The output looks like this:
# get system central-mgmt status
Central Management Service
License: 1.0
Expiry date: 2007-12-31 00:00:00
History
system checksum
View the checksums for global, root, and all.
Syntax
get system checksum status
Example
The output looks like this:
# get system checksum status
global: 7a 87 3c 14 93 bc 98 92 b0 58 16 f2 eb bf a4 15
root: bb a4 80 07 42 33 c2 ff f1 b5 6e fe e4 bb 45 fb
all: 1c 28 f1 06 fa 2e bc 1f ed bd 6b 21 f9 4b 12 88
History
Syntax
get system cmdb status
Example
The output looks like this:
# get system cmdb status
version: 1
owner id: 18
update index: 6070
config checksum: 12879299049430971535
last request pid: 68
last request type: 29
last request: 78
History
system dashboard
Display organization of the modules on the dashboard. The order the modules are listed in is the order
they appear - top to bottom, left to right.
FortiManager uses this information.
Syntax
get system cmdb status
Example
The output looks like this:
# get system dashboard
== [ sysinfo ]
name: sysinfo help: system information
== [ licinfo ]
name: licinfo help: license information
== [ sysop ]
name: sysop help: system operation
== [ sysres ]
name: sysres help: system resource
== [ alert ]
name: alert help: alert console
== [ statistics ]
name: statistics help: statistics
== [ jsconsole ]
name: jsconsole help: CLI console
History
system fortianalyzer-connectivity
Display connection and remote disk usage information about a connected FortiAnalyzer unit.
Syntax
get fortianalyzer-connectivity status
Example
The output looks like this:
# get system fortianalyzer-connectivity status
Status: connected
Disk Usage: 0%
History
Syntax
get system fortiguard-log-service status
Example
This shows a sample output.
# get system fortiguard-log-service status
FortiGuard Log & Analysis Service
Expire on: 20071231
Total disk quota: 1111 MB
Max daily volume: 111 MB
Current disk quota usage: n/a
History
Syntax
get system fortiguard-service status
Example
This shows a sample output.
NAME VERSION LAST UPDATE METHOD EXPIRE
AV Engine 2.002 2006-01-26 19:45:00 manual 2006-06-12 08:00:00
Virus Definitions 6.513 2006-06-02 22:01:00 manual 2006-06-12 08:00:00
Attack Definitions 2.299 2006-06-09 19:19:00 manual 2006-06-12 08:00:00
IPS Attack Engine 1.015 2006-05-09 23:29:00 manual 2006-06-12 08:00:00
History
system ha status
Use this command to display information about an HA cluster. The command displays general HA
configuration settings. The command also displays information about how the cluster unit that you
have logged into is operating in the cluster.
Usually you would log into the primary unit CLI using SSH or telnet. In this case the get system ha
status command displays information about the primary unit first, and also displays the HA state of
the primary unit (the primary unit operates in the work state). However, if you log into the primary unit
and then use the execute ha manage command to log into a subordinate unit, (or if you use a
console connection to log into a subordinate unit) the get system status command displays
information about this subordinate unit first, and also displays the HA state of this subordinate unit. The
state of a subordinate unit is work for an active-active cluster and standby for an active-passive cluster.
For a virtual cluster configuration, the get system ha status command displays information about
how the cluster unit that you have logged into is operating in virtual cluster 1 and virtual cluster 2. For
example, if you connect to the cluster unit that is the primary unit for virtual cluster 1 and the
subordinate unit for virtual cluster 2, the output of the get system ha status command shows
virtual cluster 1 in the work state and virtual cluster 2 in the standby state. The get system ha
status command also displays additional information about virtual cluster 1 and virtual cluster 2.
Syntax
get system ha status
The command display includes the following fields. For more information see the examples that follow.
vcluster 1 The HA state (hello, work, or standby) and HA heartbeat IP address of the cluster unit that
you have logged into in virtual cluster 1. If virtual domains are not enabled, vcluster 1
displays information for the cluster. If virtual domains are enabled, vcluster 1 displays
information for virtual cluster 1.
The HA heartbeat IP address is 10.0.0.1 if you are logged into a the primary unit of virtual
cluster 1 and 10.0.0.2 if you are logged into a subordinate unit of virtual cluster 1.
vcluster 1 also lists the primary unit (master) and subordinate units (slave) in virtual
cluster 1. The list includes the operating cluster index and serial number of each cluster unit
in virtual cluster 1. The cluster unit that you have logged into is at the top of the list.
If virtual domains are not enabled and you connect to the primary unit CLI, the HA state of the
cluster unit in virtual cluster 1 is work. The display lists the cluster units starting with the
primary unit.
If virtual domains are not enabled and you connect to a subordinate unit CLI, the HA state of
the cluster unit in virtual cluster 1 is standby. The display lists the cluster units starting with
the subordinate unit that you have logged into.
If virtual domains are enabled and you connect to the virtual cluster 1 primary unit CLI, the
HA state of the cluster unit in virtual cluster 1 is work. The display lists the cluster units
starting with the virtual cluster 1 primary unit.
If virtual domains are enabled and you connect to the virtual cluster 1 subordinate unit CLI,
the HA state of the cluster unit in virtual cluster 1 is standby. The display lists the cluster units
starting with the subordinate unit that you are logged into.
In a cluster consisting of two cluster units operating without virtual domains enabled all
clustering actually takes place in virtual cluster 1. HA is designed to work this way to support
virtual clustering. If this cluster was operating with virtual domains enabled, adding virtual
cluster 2 is similar to adding a new copy of virtual cluster 1. Virtual cluster 2 is visible in the
get system ha status command output when you add virtual domains to virtual cluster
2.
vcluster 2 vcluster 2 only appears if virtual domains are enabled. vcluster 2 displays the HA
state (hello, work, or standby) and HA heartbeat IP address of the cluster unit that you have
logged into in virtual cluster 2. The HA heartbeat IP address is 10.0.0.2 if you are logged into
the primary unit of virtual cluster 2 and 10.0.0.1 if you are logged into a subordinate unit of
virtual cluster 2.
vcluster 2 also lists the primary unit (master) and subordinate units (slave) in virtual
cluster 2. The list includes the cluster index and serial number of each cluster unit in virtual
cluster 2. The cluster unit that you have logged into is at the top of the list.
If you connect to the virtual cluster 2 primary unit CLI, the HA state of the cluster unit in virtual
cluster 2 is work. The display lists the cluster units starting with the virtual cluster 2 primary
unit.
If you connect to the virtual cluster 2 subordinate unit CLI, the HA state of the cluster unit in
virtual cluster 2 is standby. The display lists the cluster units starting with the subordinate
unit that you are logged into.
Examples
The following example shows get system ha status output for a cluster of two FortiGate-5001SX
units operating in active-active mode. The cluster group ID, session pickup, load balance all, and the
load balancing schedule are all set to the default values. The device priority of the primary unit is also
set to the default value. The device priority of the subordinate unit has been reduced to 100. The host
name of the primary unit is 5001_Slot_4. The host name of the subordinate unit in is 5001_Slot_3.
The command output was produced by connecting to the primary unit CLI (host name 5001_Slot_4).
Model: 5000
Mode: a-a
Group: 0
Debug: 0
ses_pickup: disable
load_balance: disable
schedule: round robin
Master:128 5001_Slot_4 FG50012204400045 1
Slave :100 5001_Slot_3 FG50012205400050 0
number of vcluster: 1
vcluster 1: work 10.0.0.2
Master:0 FG50012204400045
Slave :1 FG50012205400050
The following command output was produced by using execute HA manage 0 to log into the
subordinate unit CLI of the cluster shown in the previous example. The host name of the subordinate
unit is 5001_Slot_3.
Model: 5000
Mode: a-a
Group: 0
Debug: 0
ses_pickup: disable
load_balance: disable
schedule: round robin
Slave :100 5001_Slot_3 FG50012205400050 0
Master:128 5001_Slot_4 FG50012204400045 1
number of vcluster: 1
vcluster 1: work 10.0.0.2
Slave :1 FG50012205400050
Master:0 FG50012204400045
Note: Even though there are two cluster indexes there is only one HA heartbeat IP address
and the HA heartbeat address is not affected by a change in the operating cluster index.
History
Related topics
• system ha
• execute ha disconnect
• execute ha manage
• execute ha synchronize
Syntax
get system info admin ssh
Example
This shows sample output.
# get system info admin ssh
SSH v2 is enabled on port 22
SSH is enabled on the following 1 interfaces:
internal
SSH hostkey DSA fingerprint =
cd:e1:87:70:bb:f0:9c:7d:e3:7b:73:f7:44:23:a5:99
SSH hostkey RSA fingerprint =
c9:5b:49:1d:7c:ba:be:f3:9d:39:33:4d:48:9d:b8:49
History
Related topics
• system accprofile
• execute disconnect-admin-session
Syntax
get system info admin status
Example
This shows sample output.
Index User name Login type From
0 admin CLI ssh(172.20.120.16)
1 admin WEB 172.20.120.16
History
Related topics
• get system info admin ssh
Syntax
get system performance status
Example
The output looks like this:
# get sys per status
CPU states: 0% user 0% system 0% nice 100% idle
Memory states: 18% used
Average network usage: 0 kbps in 1 minute, 0 kbps in 10 minutes, 1 kbps in
30 minutes
Average sessions: 5 sessions in 1 minute, 6 sessions in 10 minutes, 5
sessions in 30 minutes
Virus caught: 0 total in 1 minute
IPS attacks blocked: 0 total in 1 minute
Uptime: 9days, 22 hours, 0 minutes
CPU states The percentages of CPU cycles used by user, 0% user 0% system
system, nice and idle categories of processes. 0% nice 100% idle
Memory states The percentage of memory used. 18% used
Average network The average amount of network traffic in kbps in the last 0 kbps in
usage 1, 10 and 30 minutes. 1 minute,
0 kbps in
10 minutes,
1 kbps in
30 minutes
Average The average number of sessions connected to the 5 sessions in
sessions FortiGate unit over the list 1, 10 and 30 minutes. 1 minute,
6 sessions in
10 minutes,
5 sessions in
30 minutes
Virus caught The number of viruses the FortiGate unit has caught in 0 total in 1 minute
the last 1 minute.
IPS attacks The number of IPS attacks that have been blocked in the 0 total in 1 minute
blocked last 1 minute.
Uptime How long since the FortiGate unit has been restarted. 9 days, 22 hours,
0 minutes
History
Syntax
get system session list
Example
The output looks like this:
PROTO EXPIRE SOURCE SOURCE-NAT DESTINATION DESTINATION-NAT
tcp 0 127.0.0.1:1083 - 127.0.0.1:514 -
tcp 0 127.0.0.1:1085 - 127.0.0.1:514 -
tcp 10 127.0.0.1:1087 - 127.0.0.1:514 -
tcp 20 127.0.0.1:1089 - 127.0.0.1:514 -
tcp 30 127.0.0.1:1091 - 127.0.0.1:514 -
tcp 40 127.0.0.1:1093 - 127.0.0.1:514 -
tcp 60 127.0.0.1:1097 - 127.0.0.1:514 -
tcp 70 127.0.0.1:1099 - 127.0.0.1:514 -
tcp 80 127.0.0.1:1101 - 127.0.0.1:514 -
tcp 90 127.0.0.1:1103 - 127.0.0.1:514 -
tcp 100 127.0.0.1:1105 - 127.0.0.1:514 -
tcp 110 127.0.0.1:1107 - 127.0.0.1:514 -
tcp 103 172.20.120.16:3548 - 172.20.120.133:22 -
tcp 3600 172.20.120.16:3550 - 172.20.120.133:22 -
udp 175 127.0.0.1:1026 - 127.0.0.1:53 -
tcp 5 127.0.0.1:1084 - 127.0.0.1:514 -
tcp 5 127.0.0.1:1086 - 127.0.0.1:514 -
tcp 15 127.0.0.1:1088 - 127.0.0.1:514 -
tcp 25 127.0.0.1:1090 - 127.0.0.1:514 -
tcp 45 127.0.0.1:1094 - 127.0.0.1:514 -
tcp 59 127.0.0.1:1098 - 127.0.0.1:514 -
tcp 69 127.0.0.1:1100 - 127.0.0.1:514 -
tcp 79 127.0.0.1:1102 - 127.0.0.1:514 -
tcp 99 127.0.0.1:1106 - 127.0.0.1:514 -
tcp 109 127.0.0.1:1108 - 127.0.0.1:514 -
tcp 119 127.0.0.1:1110 - 127.0.0.1:514 -
PROTO The transfer protocol of the session. tcp
EXPIRE How long before this session will terminate. 3600
SOURCE The source IP address and port number. 127.0.0.1:1083
SOURCE-NAT The source of the NAT. ‘-’ indicates there is no NAT. -
DESTINATION The destination IP address and port number. 127.0.0.1:514
DESTINATION-NAT The destination of the NAT. ‘-’ indicates there is no NAT. -
History
Syntax
get system session status
Example
The output looks like this:
The total number of sessions for the current VDOM: 31
History
system status
Use this command to display system status information including:
• FortiGate firmware version, build number and branch point
• virus and attack definitions version
• FortiGate unit serial number and BIOS version
• log hard disk availability
• host name
• operation mode
• virtual domains status: current VDOM, max number of VDOMs, number of NAT and TP mode
VDOMs and VDOM status
• current HA status
• system time
Syntax
get system status
Example output
Version: Fortigate-500A 3.00,build0305,060512
Virus-DB: 6.473(2006-05-12 10:21)
IPS-DB: 2.295(2006-05-09 11:30)
Serial-Number: FG500A2904500004
BIOS version: 03006000
Log hard disk: Available
Hostname: FortiGate-500A
Operation Mode: NAT
Current virtual domain: root
Max number of virtual domains: 10
Virtual domains status: 1 in NAT mode, 0 in TP mode
Virtual domain configuration: disable
Common Criteria mode: disable
Current HA mode: standalone
Distribution: International
Branch point: 305
System time: Mon May 15 13:39:03 2006
History
Related topics
• hardware status
Index
Numerics address-mode
system fortianalyzer 340
3600A 396 addrgrp
3810B 396 firewall 84
admin
A log filter 192
system 316
abort 35
admingrp
abr-type
access group for system accprofile 313
router ospf 259
administrator access
accept-lifetime
access profiles description 28
router key-chain 245
system accprofile command 312
access control list 451
administrators
access-group info 669
router multicast interface igmp 252 list 652
access-list 234 admin-port
router 224 system global 351
router ospf 265
admin-sport
router rip distance 280
system global 352
router rip offset-list 284
admintimeout
accprofile
system global 352
system 312
system admin 317 ADSL
bridged mode 380
ACK 353
ipoa 380
acl
Advanced Encryption Standard (AES) 384
system wireless mac-filter 451
advertise
action
router ospf area filter-list 263
antivirus filepattern 70
router ospf summary-address 270
firewall multicast-policy 102
firewall policy 105 advertisement-interval
imp2p aim-user 170 router bgp neighbor 236
imp2p icq-user 171 agelimit
imp2p msn-user 172 antivirus quarantine 75
router access-list 224 aggregate interface 386
router aspath-list 226, 228 algorithm 386
router prefix-list 275 lacp-ha-slave 386
router route-map 287 lacp-mode 386
spamfilter bword 297 lacp-speed 387
spamfilter DNSBL 310 member 387
spamfilter emailbwl 300 aggregate route 231
spamfilter ipbwl 304 aim
spamfilter mheader 307 firewall profile 119
webfilter urlfilter 559 imp2p old-version 173
activate imp2p policy 174
router bgp neighbor 235 aim-user
active imp2p 170
antivirus filepattern 70 alertemail
address system 321
firewall 82 algorithm
log report output 207 system interface 386
system autoupdate clientoverride 324 vpn ssl settings 539
system autoupdate override 325 all
system autoupdate push-update 326 execute ha synchronize 583
system autoupdate tunneling 330 router info routing-table 651
address overlap 352
alllogs attribute-unchanged
execute backup 562 router bgp neighbor 236
allowaccess audit
system interface 376, 385 log report scope 211
allowas-in auth
router bgp neighbor 236 log filter 192
allowas-in-enable system bug-report 333
router bgp neighbor 236 auth-alg
allowed vpn ipsec manualkey-interface 499
log filter 192 authenticate
allow-interface-subnet-overlap system alertemail 321, 322
system global 352 authentication
altmode router ospf area 262
system modem 393 router ospf area virtual-link 263
always-compare-med router ospf ospf-interface 267
router bgp 232 system ha 362
anomaly vpn ipsec manualkey 496
ips 178 authentication based routing 228
log filter 192 authentication keys, RIP v2 245
antispam 295 authentication-key
antispam-cache router ospf area virtual-link 263
system fortiguard 343 router ospf ospf-interface 267
antispam-cache-ttl authgrp
system fortiguard 343 access group for system accprofile 313
antispam-timeout auth-key
system fortiguard 343 vpn ipsec manualkey-interface 499
antivirus 69 authkey
antivirus configuration 313 vpn ipsec manualkey 496
AP mode auth-keychain
system wireless settings 453 router rip interface 282
area authmethod
router ospf network 266 vpn ipsec phase1 503
area border router (ABR) 257, 261 vpn ipsec phase1-interface 511
ARP auth-mode
proxy ARP 155 router rip interface 282
arp authpasswd
system 654 vpn ipsec phase1 503
vpn ipsec phase1-interface 511
ARP packets 356, 376
auth-string
ARP table
router rip interface 282
adding entries 397
display 654 auth-timeout
vpn ssl settings 539
arpforward
system interface 376 auth-type
system interface 376
arps
system ha 361 authusr
vpn ipsec phase1 503
arps-interval
vpn ipsec phase1-interface 511
system ha 361
authusrgrp
arp-table
vpn ipsec phase1 503
system 322
vpn ipsec phase1-interface 511
as
auto
router bgp 232
execute vpn certificate ca 622
AS-path list 226 execute vpn certificate crl 624
aspath-list auto-dial
router 226 system modem 393
as-set auto-install
router bgp aggregate-address 235 system 323
attack Automatic Refresh Interval 355
log filter 192
autonomous system (AS) 232
attackdef
Autonomous System, bgp 232
execute ha synchronize 583
autonomous-flag
system interface config ipv6-prefix 386
autosvr bestpath-med-missing-as-worst
system dns 339 router bgp 232
autoupdate clientoverride BGP 449
system 324 AS-path list 226
autoupdate ips BGP-4 229
system 325 External 232
autoupdate override Internal 232
system 325 logging neighbor changes 234
autoupdate push-update memory table 642
system 326 RFC 1771 229
autoupdate schedule RFC 1997 229
system 328 storing updates from neighbor 239
autoupdate tunneling bgp
system 330 router 229
router info routing-table 651
aux
system 332 bindthroughfw
firewall ipmacbinding setting 95
AUX port configuration 332
bindtofw
AV/IPS signature reporting 353
firewall ipmacbinding setting 95
av-failopen
bittorrent
system global 352
firewall profile 119
av-failopen-session
bittorrent-limit
system global 352
firewall profile 119
avgrp
blackhole
access group for system accprofile 313
router static 292
system accprofile 313
blackhole route 383, 387
avquery-cache
system fortiguard 344 blocked
log filter 192
avquery-cache-ttl
system fortiguard 344 BOOTP Vendor Extensions 337
avquery-status border-routers
system fortiguard 343 router info ospf 647
avupd bridged mode 380
execute ha synchronize 583 broadcast_ssid
system wireless settings 452
B bsr-allow-quick-refresh
router multicast interface pim-smglobal 253
backdoor buffer
router bgp network 240 system replacemsg auth 398, 399, 401, 424
backplane interfaces 356 system replacemsg fortiguard-wf 404
backup ipsec interface system replacemsg ftp 406
example 518 system replacemsg http 408
monitor-phase1 513 system replacemsg im 410
backup, execute 562 system replacemsg mail 412
bandwidth limiting for interfaces 379 system replacemsg spam 426
batch system replacemsg sslvpn 428
execute 564, 566 bug-report
batch mode 352 system 333
batch_cmdb bword
system global 352 spamfilter 296
webfilter 548
baudrate
system console 334
beacon_interval C
system wireless settings 452 ca
bestpath-as-path-ignore execute ha synchronize 583
router bgp 232 cache
bestpath-cmp-confed-aspath spamfilter fortishield 302
router bgp 232 cache-mem-percent
bestpath-cmp-routerid webfilter fortiguard 553
router bgp 232 cache-mode
bestpath-med-confed webfilter fortiguard 553
router bgp 232 cache-notfound-responses
system dns 339
dampening default-gateway
router bgp 232 system dhcp server 336
router info bgp 642 default-gw
dampening-max-suppress-time vpn ipsec phase1-interface 511
router bgp 232 defaultgw
dampening-reachability-half-life system interface 377
router bgp 232 default-gw-priority
dampening-reuse vpn ipsec phase1-interface 511
router bgp 233 default-information-metric
dampening-route-map router ospf 260
router bgp 233 default-information-metric-type
dampening-suppress router ospf 260
router bgp 233 default-information-originate
dampening-unreachability-half-life router ospf 260
router bgp 233 router rip 279
database default-information-route-map
router info ospf 647 router ospf 260
router info RIP 650 default-local-preference
router info routing-table 651 router bgp 233
database-filter-out default-metric
router ospf ospf-interface 267 router ospf 260
database-overflow router rip 279
router ospf 260 delete
database-overflow-max-lsas shell command 34
router ospf 260 denial of service (DoS) sensor 128
database-overflow-time-to-recover denial of service attacks 355
router ospf 260 dense mode 248
data-size deploy, execute 572
execute ping-options 600 description
date, execute 571 log report definition 205
day router bgp neighbor 236
firewall schedule recurring 150 system interface 377
system autoupdate schedule 328 system snmp sysinfo 446
daylight saving time 353 destination
ddns system ipv6-tunnel 389
system interface 376 details
ddns-domain router info routing-table 651
system interface 376 detection summary statistics 353
ddns-password detection-summary
system interface 376 system global 353
ddns-profile-id detectserver
system interface 376 system interface 377
ddns-server deterministic-med
system interface 377 router bgp 233
ddns-sn device
system interface 377 router static 292
ddns-username router static6 294
system interface 377 system settings 441
dead gateway detection 354 df-bit
dead gateway detection interval 353 execute ping-options 600
dead-interval DHCP exclusion range 338
router ospf area virtual-link 264 dhcp lease-clear, execute 573
router ospf ospf-interface 267 dhcp lease-list, execute 574
decoder DHCP Options 337
IPS 639, 640 DHCP relay 376
default dhcp reserved-address
system session-ttl 439 system 335
default-acl dhcp server
system wireless mac-filter 451 system 336
default-cost DHCP servers, maximum 336
router ospf area 262
dhcp-ipsec distribute-list-in
vpn ipsec phase2 520 router bgp neighbor 237
dhcp-relay-ip router ospf 260
system interface 377 distribute-list-out
dhcp-relay-service router bgp neighbor 237
system interface 377 dn
dhcp-relay-type user ldap 473
system interface 377 dns
dhgrp system 339
vpn ipsec phase1 503 DNSBL
vpn ipsec phase1-interface 512 spamfilter 309
vpn ipsec phase2 520 dns-cache-limit
vpn ipsec phase2-interface 527 system dns 339
diagnose commands 16 dns-server
dial-on-demand system dhcp server 336
system modem 393 dns-server-override
differentiated services code point (DSCP) system interface 378
originating traffic 106 dns-timeout
reply traffic 106 spamfilter options 308
diffservcode-forward dnstranslation
firewall policy 106 firewall 85
diffservcode-rev domain
firewall policy 106 system dhcp server 337
diffserv-forward 106 domain name 376
diffserv-reverse dont-capability-negotiate
firewall policy 106 router bgp neighbor 237
direction downstream router, prune state 252
router ospf area filter-list 263 dpd
router rip distribute-list 281 vpn ipsec phase1 504
router rip offset-list 284 vpn ipsec phase1-interface 512
disconnect-admin-session, execute 575 dpd-retrycount 512
disc-retry-timeout vpn ipsec phase1 504
system interface 377 dpd-retryinterval 512
disk filter vpn ipsec phase1 504
log 191 drive-standby-time
disk setting log disk setting 197
log 196 drop-blocked
diskfull antivirus quarantine 75
log disk setting 197 drop-heuristic
log memory setting 202 antivirus quarantine 75
display drop-infected
log trafficfilter 218 antivirus quarantine 75
distance dr-priority
router ospf 260 router multicast interface 251
router rip distance 280 dst
router static 292 firewall dnstranslation 85
system interface 378 log trafficfilter rule 219
system modem 394 router policy 272
vpn ipsec phase1 503 router static 293
vpn ipsec phase1-interface 512 router static6 294
distance-external system global 353
router bgp 233 dstaddr
router ospf 260 firewall multicast-policy 102
distance-inter-area firewall policy 106
router ospf 260 dst-addr-type
distance-internal vpn ipsec phase2 520
router bgp 233 vpn ipsec phase2-interface 527
distance-intra-area dst-end-ip
router ospf 260 vpn ipsec phase2 520
distance-local vpn ipsec phase2-interface 527
router bgp 233 dst-end-ip6
vpn ipsec phase2-interface 527
dstintf email-pattern
firewall multicast-policy 102 spamfilter emailbwl 300
firewall policy 106 email-subject
dst-name log report output 207
vpn ipsec phase2 520 enable
vpn ipsec phase2-interface 527 system dhcp server 337
dst-port enc-alg
vpn ipsec phase2 520 vpn ipsec manualkey-interface 500
vpn ipsec phase2-interface 527 enc-key
dst-start-ip vpn ipsec manualkey-interface 500
vpn ipsec phase2 520 enckey
vpn ipsec phase2-interface 527 vpn ipsec manualkey 497
dst-start-ip6 encrypted password support 45
vpn ipsec phase2-interface 528 encryption 356
dst-subnet ipsec manualkey 497
vpn ipsec phase2 521 system ha 362
vpn ipsec phase2-interface 528 end
dst-subnet6 command in a table shell 34
vpn ipsec phase2-interface 528 command in an edit shell 35
dynamic DNS 376 firewall schedule onetime 149
Dynamic DNS service (DDNS) 376 firewall schedule recurring 150
dynamic routing 382 end-ip
firewall address 82
E system dhcp server 337
system dhcp server config exclude-range 337
EBGP 232 endip
RFC 3065 229 firewall ippool 99, 100
ebgp-enforce-multihop end-port
router bgp neighbor 237 router policy 272
ebgp-multihop enforce-first-as
router bgp neighbor 237 router bgp 233
ebgp-multihop-ttl Equal Cost Multi-Path (ECMP) 441
router bgp neighbor 237 event
edit 34 log filter 192
system accprofile 312 events
system gre-tunnel 358 system snmp communities 444
system mac-address-table 390
exact-match
editing commands 44 router access-list 224
editing the configuration file 46 example command sequences 39
edonkey 119 exclude-summary
edonkey-limit 120 log report scope 211
eip execute 561
vpn l2tp 533 execute command
vpn pptp 535 backup 562
email batch 564, 566
log filter 192 cfg reload 566
log report output 207 cfg save 567
email when virus or spam detected 412 clear system arp table 568
email-attachment-name date 571
log report output 207 deploy 572
email-body dhcp lease-clear 573
log report output 207 dhcp lease-list 574
emailbwl disconnect-admin-session 575
spamfilter 299 factoryreset 576
emaillists formatlogdisk 577
execute ha synchronize 583 fortiguard-log delete 579
email-log-imap fortiguard-log update 578
log filter 192 fsae refresh 579
email-log-pop3 ha disconnect 580
log filter 192 ha manage 581
ha synchronize 583
email-log-smtp
interface dhcpclient-renew 585
log filter 192
fortiguard ftgd-wf-errors
system 342 log filter 192
webfilter 552 ftgd-wf-log
FortiGuard Distribution Network (FDN) 325, 326, 330 firewall profile 121
fortiguard filter ftgd-wf-options
log 191 firewall profile 121
fortiguard setting ftgd-wf-ovrd 122
log 201 user group 470
FortiGuard updates 313, 324 ftgd-wf-ovrd-dur
fortiguard-log user group 470
system 346 ftgd-wf-ovrd-dur-mode
fortiguard-log (fortiguard analysis service) user group 471
system 346 ftgd-wf-ovrd-ext
fortiguard-log delete user group 471
execute 579 ftgd-wf-ovrd-scope
fortiguard-log update user group 471
execute 578 ftgd-wf-ovrd-type
FortiManager 391 user group 471
scripts 334 ftp
fortimanager firewall profile 122
system 347 ftp, message added when virus detected 406
FortiManager, configuration 342 ftpcomfortamount 122
fortimanager-discover-helper ftpcomfortinterval
system interface 378 firewall profile 122
Fortinet customer service 19 ftpoversizelimit
FortiOS v3.0 firewall profile 123
MR2 350 fwdintf
fortishield system dns 339
spamfilter 301 fwgrp
FortiWifi-60 access group for system accprofile 313
wireless MAC filter 451 system accprofile 313
wireless settings 452
FortiWifi-60A G
interface settings 384
wireless MAC filter 384 garbage-timer
router rip 279
forward-domain
system interface 378 gateway 377
default setting for VDOM 440
fqdn
router policy 272
firewall address 82
router static 293
fragment_threshold router static6 294
system wireless settings 452 system settings 441
frequency gateway-device
system autoupdate schedule 328 system settings 441
FSAE 353 gbandwidth
fsae firewall policy 107
firewall policy 107 ge
user 467 router prefix-list 275
fsae refresh geography
execute 579 system wireless settings 452
ftgd-local-cat get
webfilter 555 edit shell command 35
ftgd-local-rating table shell command 34
webfilter 556 get commands 631
ftgd-ovrd global
webfilter 557 configure global settings 57
ftgd-wf-allow ips 183
firewall profile 120 system 350
ftgd-wf-block gnutella
log filter 192 firewall profile 123
ftgd-wf-deny gnutella-limit
firewall profile 120 firewall profile 123
graceful_restart hb-interval
router bgp 233 system ha 362
grayware hb-lost-threshold
antivirus 72 system ha 362
GRE 282 header
gre-tunnel log report customization 204
system 358 system replacemsg auth 398, 399, 402, 424
group system replacemsg fortiguard-wf 404
user 469 system replacemsg ftp 406
group-id system replacemsg http 408
system ha 362 system replacemsg im 410
group-name system replacemsg mail 412
system ha 362 system replacemsg spam 427
system replacemsg sslvpn 428
groups
firewall policy 108 hello-holdtime
router multicast interface 251
gui 165, 221
hello-interval
gwdetect
router multicast interface 251
system interface 378
router ospf area virtual-link 264
router ospf ospf-interface 267
H helo-holddown
HA 360 system ha 362
heart beat device 447 heuristic
monitored interface 447 antivirus 74
remote IP monitoring 369 high availability 360
slave, error messages 353 holddown-timer
ha system modem 394
arps 361 holdtime-timer
arps-interval 361 router bgp 233
authentication 362 router bgp neighbor 237
encryption 362 hop count. 284
group-id 362 hostname
group-name 362 spamfilter fortishield 302
hbdev 362 system fortiguard 343
hb-interval 362 system global 354
hb-lost-threshold 362 http
helo-holddown 362 firewall profile 124, 125
link-failed-signal 362
HTTP session, antivirus 408
load-balance-all 363
mode 363 httpcomfortinterval
monitor 363 firewall profile 125
override 363 http-obfuscate
password 364 system global 354
priority 364 httpoversizelimit
route-hold 364 firewall profile 125
route-ttl 365 http-retry-count
route-wait 365 firewall profile 125
schedule 365
secondary-vcluster 367 I
session-pickup 366
sync-config 366 IBGP 232
system 360 RFC 1966 229
system status 662 ICMP dropped packets logging 193
uninterruptable-upgrade 366 icmpcode
vcluster2 367 firewall service custom 152
vdom 366 icmptype
weight 366 firewall service custom 152
ha disconnect, execute 580 icq
ha manage, execute 581 firewall profile 125
ha synchronize, execute 583 imp2p old-version 173
hardware status 638 imp2p policy 174
hbdev icq-user
system ha 362 imp2p 171
l2tp local-gw
vpn 533 system gre-tunnel 358
lacp-ha-slave vpn ipsec manualkey 497
system interface 386 vpn ipsec manualkey-interface 500
lacp-mode vpn ipsec phase1 504
system interface 386 localid 513
lacp-speed vpn ipsec phase1 504
system interface 387 local-spi
language vpn ipsec manualkey-interface 500
spamfilter bword 297 localspi
system global 354 vpn ipsec manualkey 497
webfilter bword 548, 550 location
last request system snmp sysinfo 446
system cmdb status 657 log 189
last request pid execute backup 562
system cmdb status 657 system interface 379
last requst type log delete-all, execute 587
system cmdb status 657 log delete-filtered, execute 588
lcdpin log delete-rolled, execute 589
system global 354 log display, execute 590
lcdprotection log filter, execute 591
system global 355 log fortianalzyer test-connectivity
lcp-echo-interval execute 593
system interface 379 log list, execute 594
lcp-max-echo-failures log roll, execute 595
system interface 379 log settings 313
LDAP 355 log-av-block
ldap firewall profile 128
user 473 log-av-oversize
ldapconntimeout firewall profile 128
system global 355 log-av-virus
ldap-server firewall profile 128
user local 476 loggrp
le access group for system accprofile 313
router prefix-list 275 system accprofile 313
lease-time log-im
system dhcp server 337 firewall profile 128
license loglocaldeny
spamfilter fortishield 302 system global 355
license key entry 620 log-neighbor-changes
line continuation 44 router bgp 234
lines_per_view log-spam 128
execute logfilter 592 logtraffic
Link Aggregation Control Protocol (LACP) 386 firewall policy 108
link-failed-signal log-web-content
system ha 362 firewall profile 129
list log-web-filter-activex
router ospf area filter-list 263 firewall profile 129
listname log-web-filter-applet
router rip distribute-list 281 firewall profile 129
load-balance-all log-web-filter-cookie
system ha 363 firewall profile 129
local log-web-ftgd-err
user 476 firewall profile 129
localcert log-web-url
execute ha synchronize 583 firewall profile 129
loopback interface 383, 387
lowspace
antivirus quarantine 76
M maximum-prefix
router bgp neighbor 237
mac maximum-prefix-threshold
firewall ipmacbinding table 97 router bgp neighbor 237
system arp-table 322 maximum-prefix-warning-only
system dhcp reserved-address 335 router bgp neighbor 238
system interface, config wifi-mac_list 384
max-log-file-size
system wireless mac-filter 451
log disk setting 196
MAC address 382
mc-ttl-notchange
arp-table 322
system global 441
macaddr
md5-key
system interface 379
router ospf area virtual-link 264
mac-address-table router ospf ospf-interface 268
system 390
member
mac-list firewall addrgrp 84
system wireless mac-filter 451 firewall service group 154
mail-sig system interface 387
firewall profile 129 user group 470
mailsig-status user peergrp 480
firewall profile 129 vpn ipsec concentrator 494
mailto memory
system bug-report 333 router info bgp 642
mailto1, mailto2, mailto3 memory filter
alertemail setting 65 log 191
maintenance commands 313 memory global setting
manageip log 203
system settings 441 memory setting
management traffic 54 log 202
management VDOM 54, 316 metric
management-tunnel router ospf redistribute 269
system 391 router rip redistribute 285
management-vdom metric-type
system global 355 router ospf redistribute 269
mappedip mheader
firewall vip 158 spamfilter 306
mappedport mntgrp
firewall vip 158 access group for system accprofile 313
match-as-path system accprofile 313
router route-map rule 289 mode
match-community antivirus heuristic 74
router route-map rule 289 config system ha 363
match-community-exact system console 334
router route-map rule 289 system interface 380
match-interface system modem 394
router route-map 287 system wireless settings 453
match-ip-address vpn ipsec phase1 505
router route-map 287 vpn ipsec phase1-interface 513
match-ip-nexthop modem
router route-map 287 auto-dial 393
backup switchover 394
match-metric
dial-on-demand 393
router route-map 287
execute modem dial command 596, 606
match-origin 289 execute modem hangup command 597
match-route-type redundant 394
router route-map 287 standalone 394
match-tag system 393
router route-map 287 monitor
maxbandwidth system ha 363
firewall policy 108 monitor-phase1
maxfilesize vpn ipsec phase1-interface 513
antivirus quarantine 76 move 34
maximum transmission unit (MTU) 381 MS Windows Client 376
msn netgrp
firewall profile 133 access group for system accprofile 313
imp2p old-version 173 system accprofile 313
imp2p policy 174 netmask
msn-user firewall dnstranslation 85
imp2p 172 system dhcp server 337
MSS TCP 356 Netscape 356
mtu network
router ospf ospf-interface 268 router info bgp 642
system interface 381 network address translation (NAT) 155
mtu-ignore Network Layer Reachability Information (NLRI) 260
router ospf ospf-interface 268 Network Processing Unit (NPU) 396
Multi Exit Discriminator (MED) 232 Network Time Protocol (NTP) 355, 356
Multi Protocol Label Switching (MPLS) 380 network-import-check
multicast router bgp 234
dense mode 248 network-longer-prefixes
IGMP 248 router info bgp 642
router 247 network-type
system global 356 router ospf ospf-interface 268
multicast memberships 250 next 35
multicast-forward next-hop-self
system global 441 router bgp neighbor 238
multicast-policy NRLI prefix
firewall 102 router bgp 237
multicast-routing 250 nssa-default-information-originate
multi-report router ospf area 262
fortianalyzer setting 199 nssa-default-information-originate-metric
log fortianalyzer setting 199 router ospf area 262
nssa-default-information-originate-metric-type 262
N nssa-redistribution 262
name nssa-translator-role 262
firewall ipmacbinding table 97 ntpserver
log report summary-layout 214 system global 355
system session-helper 433 ntpsync
system snmp community 444 system global 355
nat
firewall multicast-policy 102 O
firewall policy 108
NAT device 326 obfuscated 354
NAT mode, changing 441 obfuscate-user
log report scope 211
NAT traversal 145
offset
NAT/Route mode 355
router rip offset-list 284
natinbound
old-version
firewall policy 108
imp2p 173
natip
onlink-flag
firewall policy 108
system interface config ipv6-prefix 386
natoutbound
operating mode
firewall policy 108
system settings 440
nattraversal
opmode
vpn ipsec phase1 505
system settings 441
vpn ipsec phase1-interface 513
optimize
neighbor
system global 355
router info ospf 648
option
neighbors
system dhcp server 337
router info bgp 642
options
neighbour-filter
spamfilter 308
router multicast interface 251
order
NetBIOS 381
log report summary-layout 214
netbios-forward
OSPF 257, 448
system interface 381
RFC 2328 257
TOS application routing 448
ospf pattern-type
ABR 257 spamfilter bword 297
RFC 3509 259 spamfilter emailbwl 300
router 257 spamfilter mheader 307
router info routing-table 651 webfilter bword 548, 550
OSPF, clear router 608 peer
other-traffic router ospf area virtual-link 264
log filter 193 vpn ipsec phase1 505
outbound vpn ipsec phase1-interface 513
firewall policy 109 peergrp 514
Outbound Routing Filter (ORF) 236 vpn ipsec phase1 505
output-device peerid 514
router policy 273 vpn ipsec phase1 505
override Peer-to-Peer, message if blocked 410
system autoupdate push-update 326 peertype 514
system ha 363 vpn ipsec phase1 506
override-capability performance info 670
router bgp neighbor 238 Perl regular expressions, using 48
oversized pfs
log filter 193 vpn ipsec phase2 521
ovrd-auth-https vpn ipsec phase2-interface 528
webfilter fortiguard 553 phase1name
ovrd-auth-port vpn ipsec phase2 521
webfilter fortiguard 553 vpn ipsec phase2-interface 528
owner id phone
system cmdb status 657 system modem 394
PIM, dense-mode 251
P PIM, sparse-mode 251
pim-mode
p2p 134 router multicast interface 251
packet size ping, execute 599
for wireless network 452
ping6, execute 602
padt-retry-timeout
ping-options, execute 600
system interface 381
policy
PAP 376
firewall 104
passive imp2p 174
router bgp neighbor 238 router 272
router multicast interface 251
policy check 356
passive-interface
policy check, skipping 356
router ospf 260
router rip 279 poll-interval
router ospf neighbor 266
passphrase 453
system wireless settings 453 poolname
firewall policy 109
passwd
system modem 394 pop3
user local 476 firewall profile 134
password pop3oversizelimit
system alertemail 321 firewall profile 135
system autoupdate tunneling 330 pop3-spamaction
system bug-report 333 firewall profile 135
system ha 364 pop3-spamtagmsg
system interface 381 firewall profile 135
user ldap 474 pop3-spamtagtype
PAT firewall profile 135
virtual IPs 155 port 216
paths antivirus service 79
router info bgp 642 log syslogd setting 216
pattern system autoupdate push-update 326
execute ping-options 600 system autoupdate tunneling 330
log filter 193 system fortiguard 343
spamfilter bword 297 system session-helper 433
user fsae 468
user ldap 473
rfc1583-compatible routing
router ospf 261 authentication 228
rip blackhole 383, 387
router 278 routing failover 377
router info routing-table 651 routing table priority 395
rolled_number 592 routing table, displaying entries in 651
roll-schedule routing, administrative distance 378
disk setting 196 routing, flap 233
log disk setting 196 routing, inter-VDOM 53
roll-time rp-candidate
log disk setting 196 router multicast interface 251
route rp-candidate-group
router info ospf 648 router multicast interface 251
route, suppressed 232 rp-candidate-interval 252
route-flap 232 rp-candidate-priority 252
routegrp rsa-certificate
access group for system accprofile 313 vpn ipsec phase1 507
system accprofile 313 vpn ipsec phase1-interface 515
route-hold RST out-of-window checking 353
system ha 364 rule
route-limit 250 log trafficfilter 218
route-map Runtime-only config mode 350
router 286 runtime-only configuration mode 353
router bgp network 240
router bgp redistribute 241
router info bgp 642 S
routemap SACK 356
router ospf redistribute 269 scan
router rip redistribute 285 router info bgp 642
route-map-in scan-bzip2
router bgp neighbor 238 antivirus service 79
route-map-out scan-time
router bgp neighbor 238 router bgp 234
router 223 schedule
router clear bfd, execute 607 firewall policy 109
router clear bgp, execute 606 system ha 365
router clear ospf process schedule onetime
execute 608 firewall 149
router configuration 313 schedule recurring
router info firewall 150
ospf 647 scope
protocols 649 webfilter ftgd-ovrd 557
rip 650 score
routing table 651 spamfilter bword 297
router info bgp 642 webfilter bword 549
router restart, execute 609 scripts 334
router-alert-check secondary
config router multicast config interface config igmp system dns 339
253 secondary-image
route-reflector-client execute restore 605
router bgp neighbor 238 secondary-vcluster
router-id system ha 367
router bgp 234 secret
router ospf 261 user radius 482
route-server-client secure copy (SCP) 351
router bgp neighbor 238 security
route-threshold 250 system wireless settings 453
route-ttl selection
system ha 365 log report selection 213
route-wait send-community
system ha 365 router bgp neighbor 239
time troubleshooting
execute 615 memory low 250
system autoupdate schedule 328 trusthost1, trusthost2, trusthost3
time synchronization 356 system admin 317
time zone 356 ttl
Timeout execute ping-options 600
IPSec interface mode 641 ttl-threshold
timeout router multicast interface 252
execute ping-options 600 tunnel, GRE
system session-ttl 439 system 358
timeout-timer tunnel-endip 540
router rip 279 tunnel-startip
timestamp 356 vpn ssl settings 540
time-to-live (TTL) 441 type
timezone firewall address 82
system global 356 firewall vip 160
title log report period 209
log report definition 205 log report schedule 210
top1 router ospf area 263
log report scope 212 system dhcp reserved-address 335
top2 user ldap 474
log report scope 212 user local 476
vpn ipsec phase1 508
topN
vpn ipsec phase1-interface 516
log report summary-layout 214
webfilter ftdg-ovrd 557
topology status webfilter urlfilter 559
get 637
Type of Service (TOS) 356
topology viewer status 637
type of service (TOS)
topology, gui 167 RFC 1583 448
tos RFC 791 448
execute ping-options 600
tos-based-priority U
system 448
tp-mc-skip-policy UDP 325
system global 356 udp-portrange
traceroute, execute 616 firewall service custom 152
traffic uncompnestlimit
log filter 194 antivirus service 79
Traffic Indication Messages (TIM) uncompsizelimit
system wireless settings 452 antivirus service 79
traffic shaping 379 undefinedhost
trafficfilter firewall ipmacbinding setting 95
log 218 unicast 283
trafficshaping uninterruptable-upgrade
firewall policy 110 system ha 366
transmit-delay unset 35
router ospf area virtual-link 264 unsuppress-map
router ospf interface 269 router bgp neighbor 239
transparent mode, changing 441 update index
trap-v1-lport system cmdb status 657
system snmp community 445 update-av, execute 617
trap-v1-rport updategrp
system snmp community 445 system accprofile 313
trap-v1-status update-ips, execute 618
system snmp community 445 update-now, execute 619
trap-v2c-lport update-source
system snmp community 445 router bgp neighbor 239
trap-v2c-rport update-timer
system snmp community 445 router rip 280
trap-v2c-status updgrp
system snmp community 445 access group for system accprofile 313
upd-vd-license, execute 620
upload usrgrp
log disk setting 197 vpn ipsec phase1 508, 516
log report output 207 vpn l2tp 533
upload-delete vpn pptp 535
log report output 207
upload-delete-files V
log disk setting 197
validate-reply
upload-destination
execute ping-options 600
log disk setting 197
valid-life-time
upload-dir
system interface config ipv6-prefix 386
log report output 207
vcluster2
uploaddir
system ha 367
log disk setting 197
VDOM
upload-gzipped
management 316
log report output 208
vdom 355
upload-ip
configure VDOMs 60
log report output 208
system admin 318
uploadip system ha 366
log disk setting 197 system interface 383
uploadpass vdom-link
log disk setting 197 system 449
upload-password ver-1
log report output 208 system fortianalyzer 340
uploadport version
log disk setting 197 IGMP 253
uploadsched router multicast interface igmp 253
log disk setting 197 router rip 280
upload-server-type system cmdb status 657
log report output 208 view-settings
uploadtime execute ping-options 600
log disk setting 197 violation
uploadtype log filter 194
log disk setting 197 vip
uploaduser firewall 155
log disk setting 197 vip group, grouping vip, vipgrp 164
upload-username VIP range 356
log report output 208 vip-arp-range
uploadzip system global 356
log disk setting 197 virtual clustering 360
url Virtual Domain (VDOM) 620
webfilter ftgd-ovrd 557
virtual IP 155
url-filter NAT 155
log filter 194 PAT 155
urlfilter port address translation 155
webfilter 559 virtual-links
usb-disk, execute 621 router info ospf 648
user 457 virus
webfilter ftgd-ovrd 558 log filter 194
user-group vlanforward
webfilter ftgd-ovrd 558 system interface 383
username vlanid
alertemail setting 65 system interface 383
status modem 395 vpn 487
system alertemail 321
vpn certificate ca
system autoupdate tunneling 330
execute 622
system bug-report 333
system interface 383 vpn certificate crl
user ldap 474 execute 624
username-smtp vpn certificate local, execute 625
system bug-report 333 VPN configuration 313
using the CLI 27 vpn sslvpn del-tunnel, execute 629
vpngrp wifi-mac-filter
access group for system accprofile 313 system interface 384
system accprofile 313 wifi-passphrase
vpntunnel system interface 384
firewall policy 110 wifi-radius-server
system interface 384
W wifi-rts_threshold
system interface 384
web
wifi-security
log filter 194
system interface 385
web browser support 356
wifi-ssid
web filtering, blocked pages 404 system interface 385
web-content wildcard
log filter 194 router access-list 224
webfilter 547 system admin 318
webfilter configuration 313 wildcard pattern matching 48
web-filter-activex Windows Active Directory
log filter 194 configuring FSAE 467
web-filter-applet refresh user group info via FSAE 579
log filter 194 winny
webfilter-cache firewall profile 139
system fortiguard 344 winny-limit 139
webfilter-cache-ttl wins-ip
system fortiguard 344 system interface 384
web-filter-cookie wins-server
log filter 194 system dhcp server 337
webfilter-status wireless interface access control 384
system fortiguard 344 wireless mac-filter
webfilter-timeout system 451
system fortiguard 344 wireless settings
webgrp system 452
access group for system accprofile 313 wireless, synchronize 452
system accprofile 313
word boundary
weblists Perl regular expressions 48
execute ha synchronize 583
webtrends filter
log 191
X
webtrends setting xauthtype
log 220 vpn ipsec phase1 508
webwordthreshold 139 vpn ipsec phase1-interface 516
weight
router bgp neighbor 239 Y
system ha 366
yahoo
WEP key 384, 453
firewall profile 140
where imp2p old-version 173
spamfilter bword 297 imp2p policy 174
wifi-acl yahoo-user
system interface 384 imp2p 175
wifi-broadcast_ssid
system interface 384
Z
wifi-fragment_threshold
system interface 384 zone, system 455
wifi-key
system interface 384