Brocade, Brocade Assurance, the B-wing symbol, BigIron, DCX, Fabric OS, FastIron, MLX, NetIron, SAN Health, ServerIron,
TurboIron, VCS, and VDX are registered trademarks, and AnyIO, Brocade One, CloudPlex, Effortless Networking, ICX, NET Health,
OpenScript, and The Effortless Network are trademarks of Brocade Communications Systems, Inc., in the United States and/or in
other countries. Other brands, products, or service names mentioned may be trademarks of their respective owners.
Notice: This document is for informational purposes only and does not set forth any warranty, expressed or implied, concerning
any equipment, equipment feature, or service offered or to be offered by Brocade. Brocade reserves the right to make changes to
this document at any time, without notice, and assumes no responsibility for its use. This informational document describes
features that may not be currently available. Contact a Brocade sales office for information on feature and product availability.
Export of technical data contained in this document may require an export license from the United States government.
The authors and Brocade Communications Systems, Inc. shall have no liability or responsibility to any person or entity with
respect to any loss, cost, liability, or damages arising from the information contained in this book or the computer programs that
accompany it.
The product described by this document may contain “open source” software covered by the GNU General Public License or other
open source license agreements. To find out which open source software is included in Brocade products, view the licensing
terms applicable to the open source software, and obtain a copy of the programming source code, please visit
http://www.brocade.com/support/oscd.
Brocade Communications Systems, Incorporated
Corporate and Latin American Headquarters
Brocade Communications Systems, Inc.
130 Holger Way
San Jose, CA 95134
Tel: 1-408-333-8000
Fax: 1-408-333-8101
E-mail: info@brocade.com
European Headquarters
Brocade Communications Switzerland Sàrl
Centre Swissair
Tour B - 4ème étage
29, Route de l'Aéroport
Case Postale 105
CH-1215 Genève 15
Switzerland
Tel: +41 22 799 5640
Fax: +41 22 799 5641
E-mail: emea-info@brocade.com
Asia-Pacific Headquarters
Brocade Communications Systems China HK, Ltd.
No. 1 Guanghua Road
Chao Yang District
Units 2718 and 2818
Beijing 100020, China
Tel: +8610 6588 8888
Fax: +8610 6588 9999
E-mail: china-info@brocade.com
Asia-Pacific Headquarters
Brocade Communications Systems Co., Ltd. (Shenzhen WFOE)
Citic Plaza
No. 233 Tian He Road North
Unit 1308 – 13th Floor
Guangzhou, China
Tel: +8620 3891 2000
Fax: +8620 3891 2111
E-mail: china-info@brocade.com
The Brocade ICX 6650 is a ToR (Top of Rack) Ethernet switch for campus LAN and classic Ethernet
data center environments.
Audience
This document is designed for system administrators with a working knowledge of Layer 2 and
Layer 3 switching and routing.
If you are using a Brocade Layer 3 Switch, you should be familiar with the following protocols if
applicable to your network: IP, RIP, OSPF, BGP, ISIS, PIM, and VRRP.
Supported hardware and software
This document is specific to the Brocade ICX 6650 running FastIron 7.5.00.
Brocade ICX 6650 slot and port numbering
Many CLI commands require users to enter port numbers as part of the command syntax, and
many show command outputs display port numbers. The port numbers are entered and displayed
in stack-unit/slot number/port number format. In all Brocade ICX 6650 inputs and outputs, the
stack-unit number is always 1.
The Brocade ICX 6650 contains the following slots and Ethernet ports:
• Slot 1 is located on the front of the Brocade ICX 6650 device and contains ports 1 through 56.
Ports 1 through 32 are 10 GbE. Ports 33 through 56 are 1/10 GbE SFP+ ports. Refer to the
following figure.
xi
Brocade ICX 6650 slot and port numbering
Slot 2
Slot 2 Slot 3
• Slot 2 is located on the back of the Brocade ICX 6650 device and contains ports 1 through 3
on the top row and port 4 on the bottom row. These ports are 2x40 GbE QSFP+. Refer to the
following figure.
• Slot 3 is located on the back of the Brocade ICX 6650 device and contains ports 1 through 8.
These ports are 4 x 10 GbE breakout ports and require the use of a breakout cable. Refer to
the previous figure.
How this document is organized
This document is organized to help you find the information that you want as quickly and easily as
possible.
The document contains the following components:
• “Security Access” on page 1
• “SSH2 and SCP” on page 63
• “Rule-Based IP ACLs” on page 81
• “IPv6 ACLs” on page 127
• “ACL-based Rate Limiting” on page 141
• “802.1X Port Security” on page 153
• “MAC Port Security” on page 201
• “MAC-based VLANs” on page 211
• “Multi-Device Port Authentication” on page 231
• “DoS Attack Protection” on page 267
• “Rate Limiting and Rate Shaping” on page 273
• “DHCP” on page 279
• “Limiting Broadcast, Multicast, and Unknown Unicast Traffic” on page 299
xii
Document conventions
NOTE
This section describes text formatting conventions and important notice formats used in this
document.
Text formatting
The narrative-text formatting conventions that are used are as follows:
bold textIdentifies command names
italic textProvides emphasis
code textIdentifies CLI output
Brocade ICX 6650 slot and port numbering
Identifies the names of user-manipulated GUI elements
Identifies keywords and operands
Identifies text to enter at the GUI or CLI
Identifies variables
Identifies paths and Internet addresses
Identifies document titles
Identifies command syntax examples
For readability, command names in the narrative portions of this guide are presented in mixed
lettercase: for example, switchShow. In actual examples, command lettercase is all lowercase.
Command syntax conventions
Command syntax in this manual follows these conventions:
commandCommands are printed in bold.
--option, optionCommand options are printed in bold.
-argument, argArguments.
[ ]Optional elements appear in brackets.
variableVariables are printed in italics. In the help pages, values are underlined
enclosed in angled brackets < >.
...Repeat the previous element, for example “member[;member...]”
valueFixed values following arguments are printed in plain font. For example,
--show WWN
|Boolean. Elements are exclusive. Example:
--show -mode egress | ingress
or
Notes, cautions, and warnings
The following notices and statements are used in this manual. They are listed below in order of
increasing severity of potential hazards.
A note provides a tip, guidance, or advice, emphasizes important information, or provides a
reference to related information.
An Attention statement indicates potential damage to hardware or data.
A Caution statement alerts you to situations that can be potentially hazardous to you or cause
damage to hardware, firmware, software, or data.
A Danger statement indicates conditions or situations that can be potentially lethal or extremely
hazardous to you. Safety labels are also attached directly to products to warn of these conditions
or situations.
Notice to the reader
This document might contain references to the trademarks of the following corporations. These
trademarks are the properties of their respective companies and corporations.
These references are made for informational purposes only.
CorporationReferenced Trademarks and Products
Microsoft CorporationWindows, Windows NT, Internet Explorer
Oracle CorporationOracle, Java
Netscape Communications CorporationNetscape
Mozilla CorporationMozilla Firefox
Sun Microsystems, Inc.Sun, Solaris
Red Hat, Inc.Red Hat, Red Hat Network, Maximum RPM, Linux Undercover
Related publications
The following Brocade documents supplement the information in this guide:
• Brocade ICX 6650 Release Notes
• Brocade ICX 6650 Hardware Installation Guide New
• Brocade ICX 6650 Administration Guide
• Brocade ICX 6650 Platform and Layer 2 Configuration Guide
For additional Brocade documentation, visit the Brocade website:
http://www.brocade.com
Release notes are available on the MyBrocade website.
Other industry resources
For additional resource information, visit the Technical Committee T11 website. This website
provides interface standards for high-performance and mass storage applications for Fibre
Channel, storage management, and other applications:
http://www.t11.org
For information about the Fibre Channel industry, visit the Fibre Channel Industry Association
website:
Quality is our first concern at Brocade and we have made every effort to ensure the accuracy and
completeness of this document. However, if you find an error or an omission, or you think that a
topic needs further development, we want to hear from you. Forward your feedback to:
documentation@brocade.com
Provide the title and version number of the document and as much detail as possible about your
comment, including the topic heading and page number and your suggestions for improvement.
xvi
Chapter
NOTE
Security Access
Tab le 1 lists the security access features supported on Brocade ICX 6650. These features are
supported in the Layer 2, base Layer 3, edge Layer 3, and full Layer 3 software images, except
where explicitly noted.
TABLE 1Supported security access features
FeatureBrocade ICX 6650
Authentication, Authorization and
Accounting (AAA):
• RADIUS
• TACACS/TACACS+
AAA support for console commandsYes
Restricting remote access to management
functions
Disabling TFTP accessYes
Using ACLs to restrict remote accessYes
Local user accountsYes
Local user passwordsYes
AAA authentication-method listsYes
Packet filtering on TCP flagsYes
1
Yes
Yes
This chapter explains how to secure access to management functions on a Brocade device.
For the Brocade ICX 6650, RADIUS Challenge is supported for 802.1x authentication but not for
login authentication. Also, multiple challenges are supported for TACACS+ login authentication.
Securing access methods
The following table lists the management access methods available on a Brocade device, how they
are secured by default, and the ways in which they can be secured.
TABLE 2Ways to secure management access to Brocade devices
Access methodHow the access
method is secured
by default
Serial access to the CLINot securedEstablish passwords for management privilege levels
TABLE 2Ways to secure management access to Brocade devices (Continued)
Access methodHow the access
Ways to secure the access method
method is secured
by default
Access to the Privileged
EXEC and CONFIG levels of
the CLI
Telnet accessNot securedRegulate Telnet access using ACLs
Secure Shell (SSH) access Not configuredConfigure SSH
Not securedEstablish a password for Telnet access to the CLI
Establish passwords for management privilege levels
Set up local user accounts
Configure TACACS/TACACS+ security
Configure RADIUS security
Allow Telnet access only from specific IP addresses
Restrict Telnet access based on a client MAC address
Allow Telnet access only from specific MAC addresses
Define the Telnet idle time
Change the Telnet login timeout period
Specify the maximum number of login attempts for
Telnet access
Disable Telnet access
Establish a password for Telnet access
Establish passwords for privilege levels of the CLI
Set up local user accounts
Configure TACACS/TACACS+ security
Configure RADIUS security
Regulate SSH access using ACLs
Allow SSH access only from specific IP addresses
Allow SSH access only from specific MAC addresses
Establish passwords for privilege levels of the CLI
Set up local user accounts
Configure TACACS/TACACS+ security
Configure RADIUS security
2Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Remote access to management function restrictions
TABLE 2Ways to secure management access to Brocade devices (Continued)
Access methodHow the access
method is secured
by default
Ways to secure the access method
SNMP accessSNMP read or
read-write
community strings
and the password
to the Super User
privilege level
NOTE: SNMP read
or
read-write
community
strings are
always
required
for SNMP
access to
the device.
TFTP accessNot securedAllow TFTP access only to clients connected to a
Access for Stacked
Devices
Access to multiple
consoles must be
secured after AAA
is enabled
Regulate SNMP access using ACLs
Allow SNMP access only from specific IP addresses
Disable SNMP access
Allow SNMP access only to clients connected to a
specific VLAN
Establish passwords to management levels of the CLI
Set up local user accounts
Establish SNMP read or read-write community strings
specific VLAN
Disable TFTP access
Extra steps must be taken to secure multiple consoles
in an IronStack.
Remote access to management function restrictions
You can restrict access to management functions from remote sources, including Telnet and SNMP.
The following methods for restricting remote access are supported:
• Using ACLs to restrict Telnet or SNMP access
• Allowing remote access only from specific IP addresses
• Allowing Telnet and SSH access only from specific MAC addresses
• Allowing remote access only to clients connected to a specific VLAN
• Specifically disabling Telnet or SNMP access to the device
The following sections describe how to restrict remote access to a Brocade device using these
methods.
ACL usage to restrict remote access
You can use standard ACLs to control the following access methods to management functions on a
Brocade device:
Consider the following to configure access control for these management access methods.
1. Configure an ACL with the IP addresses you want to allow to access the device.
2. Configure a Telnet access group, SSH access group, and SNMP community strings. Each of
these configuration items accepts an ACL as a parameter. The ACL contains entries that
identify the IP addresses that can use the access method.
The following sections present examples of how to secure management access using ACLs. Refer
to Chapter 3, “Rule-Based IP ACLs” for more information on configuring ACLs.
Using an ACL to restrict Telnet access
To configure an ACL that restricts Telnet access to the device, enter commands such as the
following.
The num parameter specifies the number of a standard ACL and must be from 1–99.
The commands above configure ACL 10, then apply the ACL as the access list for Telnet access.
The device allows Telnet access to all IP addresses except those listed in ACL 10.
To configure a more restrictive ACL, create permit entries and omit the permit any entry at the end
of the ACL.
The num parameter specifies the number of a standard ACL and must be from 1–99.
These commands configure ACL 12, then apply the ACL as the access list for SSH access. The
device denies SSH access from the IP addresses listed in ACL 12 and permits SSH access from all
other IP addresses. Without the last ACL entry for permitting all packets, this ACL would deny SSH
access from all IP addresses.
In this example, the command ssh access-group 10 could have been used to apply the ACL
configured in the example for Telnet access. You can use the same ACL multiple times.
Using ACLs to restrict SNMP access
To restrict SNMP access to the device using ACLs, enter commands such as the following.
The syntax for using ACLs for SNMP access is different from the syntax for controlling Telnet, SSH,
access using ACLs.
Syntax: snmp-server community string ro | rw num
The string parameter specifies the SNMP community string you must enter to gain SNMP access.
The ro parameter indicates that the community string is for read-only (“get”) access. The rw
parameter indicates the community string is for read-write (“set”) access.
The num parameter specifies the number of a standard ACL and must be from 1 – 99.
These commands configure ACLs 25 and 30, then apply the ACLs to community strings.
ACL 25 is used to control read-only access using the “public” community string. ACL 30 is used to
control read-write access using the “private” community string.
When snmp-server community is configured, all incoming SNMP packets are validated first by their
community strings and then by their bound ACLs.
By default, a Brocade device does not time out serial console sessions. A serial session remains
open indefinitely until you close it. You can however define how many minutes a serial management
session can remain idle before it is timed out.
Remote access to management function restrictions
NOTE
NOTE
You must enable AAA support for console commands, AAA authentication, and Exec authorization in
order to set the console idle time.
To configure the idle time for a serial console session, use the following command.
Brocade(config)# console timeout 120
Syntax: [no] console timeout minutes
Possible values for the minutes variable: 0–240 minutes
Default value: 0 minutes (no timeout)
In RADIUS, the standard attribute Idle-Timeout is used to define the console session timeout value.
The attribute Idle-Timeout value is specified in seconds. Within the switch, it is truncated to the
nearest minute, because the switch configuration is defined in minutes.
Remote access restrictions
By default, a Brocade device does not control remote management access based on the IP address
of the managing device. You can restrict remote management access to a single IP address for the
following access methods:
• Teln et access
• SSH access
• SNMP access
In addition, you can restrict all access methods to the same IP address using a single command.
The following examples show the CLI commands for restricting remote access. You can specify only
one IP address with each command. However, you can enter each command ten times to specify
up to ten IP addresses.
Restricting Telnet access to a specific IP address
To allow Telnet access to the Brocade device only to the host with IP address 10.157.22.39, enter
the following command.
Brocade(config)# telnet-client 10.157.22.39
Syntax: [no] telnet-client ip-addr | ipv6-addr
Restricting SSH access to a specific IP address
To allow SSH access to the Brocade device only to the host with IP address 10.157.22.39, enter the
following command.
Brocade(config)# ip ssh client 10.157.22.39
Syntax: [no] ip ssh client ip-addr | ipv6-addr
6Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Remote access to management function restrictions
Restricting SNMP access to a specific IP address
To allow SNMP access only to the host with IP address 10.157.22.14, enter the following command.
Brocade(config)# snmp-client 10.157.22.14
Syntax: [no] snmp-client ip-addr | ipv6-addr
Restricting all remote management access to a specific IP address
To allow Telnet and SNMP management access to the Brocade device only to the host with IP
address 10.157.22.69, enter three separate commands (one for each access type) or enter the
following command.
Brocade(config)# all-client 10.157.22.69
Syntax: [no] all-client ip-addr | ipv6-addr
Restricting access to the device based on IP or
MAC address
You can restrict remote management access to the Brocade device, using Telnet, SSH, HTTP, and
HTTPS, based on the connecting client IP or MAC address.
Restricting Telnet connection
You can restrict Telnet connection to a device based on the client IP address or MAC address.
To allow Telnet access to the Brocade device only to the host with IP address 10.157.22.39 and
MAC address 0000.000f.e9a0, enter the following command.
To allow SSH access to the Brocade device to a host with any IP address and MAC address
0000.000f.e9a0, enter the following command.
Brocade(config)# ip ssh client any 0000.000f.e9a0
Syntax: [no] ip ssh client any mac-addr
Restricting HTTP and HTTPS connection
You can restrict an HTTP or HTTPS connection to a device based on the client IP address or MAC
address.
To allow HTTP and HTTPS access to the Brocade device only to the host with IP address
10.157.22.40 and MAC address 0000.000f.ab1c, enter the following command.
Brocade(config)# web client 10.157.22.40 0000.000f.ab1c
Syntax: [no] web client ip-addr | ipv6-addrmac-addr
The following command allows HTTP and HTTPS access to the Brocade device to a host with any IP
address and MAC address 0000.000f.10ba.
Brocade(config)# web client any 0000.000f.10ba
Syntax: [no] web client any mac-addr
Defining the Telnet idle time
You can define how many minutes a Telnet session can remain idle before it is timed out. An idle
Telnet session is a session that is still sending TCP ACKs in response to keepalive messages from
the device, but is not being used to send data.
To configure the idle time for a Telnet session, use the following command.
Brocade(config)# telnet timeout 120
Syntax: [no] telnet timeout minutes
For minutes enter a value from 0–240. The default value is 0 minutes (no timeout).
Changing the login timeout period for Telnet sessions
By default, the login timeout period for a Telnet session is 1 minute. To change the login timeout
period, use the following command.
Brocade(config)# telnet login-timeout 5
Syntax: [no] telnet login-timeout minutes
For minutes, enter a value from 1 to 10. The default timeout period is 1 minute.
8Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Remote access to management function restrictions
Specifying the maximum number of login attempts
for Telnet access
If you are connecting to the Brocade device using Telnet, the device prompts you for a username
and password. By default, you have up to 4 chances to enter a correct username and password. If
you do not enter a correct username or password after 4 attempts, the Brocade device disconnects
the Telnet session.
You can specify the number of attempts a Telnet user has to enter a correct username and
password before the device disconnects the Telnet session. For example, to allow a Telnet user up
to 5 chances to enter a correct username and password, enter the following command.
Brocade(config)# telnet login-retries 5
Syntax: [no] telnet login-retries number
You can specify from 0–5 attempts. The default is 4 attempts.
Changing the login timeout period for Telnet sessions
To change the login timeout period for Telnet sessions to 5 minutes, enter the following command:
Brocade(config)# telnet login-timeout 5
Syntax: [no] telnet login-timeout minutes
For minutes, specify a value from 1–10. The default is 2 minutes.
Restricting remote access to the device to
specific VLAN IDs
You can restrict management access to a Brocade device to ports within a specific port-based
VLAN. VLAN-based access control applies to the following access methods:
• Teln et access
• SNMP access
• TFTP access
By default, access is allowed for all the methods listed above on all ports. After you configure
security for a given access method based on VLAN ID, access to the device using that method is
restricted to only the ports within the specified VLAN.
VLAN-based access control works in conjunction with other access control methods. For example,
suppose you configure an ACL to permit Telnet access only to specific client IP addresses, and you
also configure VLAN-based access control for Telnet access. In this case, the only Telnet clients that
can access the device are clients that have one of the IP addresses permitted by the ACL and are
connected to a port that is in a permitted VLAN. Clients who have a permitted IP address but are
connected to a port in a VLAN that is not permitted still cannot access the device through Telnet.
Restricting Telnet access to a specific VLAN
To allow Telnet access only to clients in a specific VLAN, enter a command such as the following.
The command in this example configures the device to allow Telnet management access only to
clients connected to ports within port-based VLAN 10. Clients connected to ports that are not in
VLAN 10 are denied management access.
Syntax: [no] telnet server enable vlan vlan-id
Restricting SNMP access to a specific VLAN
To allow SNMP access only to clients in a specific VLAN, enter a command such as the following.
Brocade(config)# snmp-server enable vlan 40
The command in this example configures the device to allow SNMP access only to clients
connected to ports within port-based VLAN 40. Clients connected to ports that are not in VLAN 40
are denied access.
Syntax: [no] snmp-server enable vlan vlan-id
Restricting TFTP access to a specific VLAN
To allow TFTP access only to clients in a specific VLAN, enter a command such as the following.
Brocade(config)# tftp client enable vlan 40
The command in this example configures the device to allow TFTP access only to clients connected
to ports within port-based VLAN 40. Clients connected to ports that are not in VLAN 40 are denied
access.
Syntax: [no] tftp client enable vlan vlan-id
Designated VLAN for Telnet management sessions
to a Layer 2 switch
Brocade ICX 6650 supports the creation of management VLANs. By default, the management IP
address you configure on a Layer 2 switch applies globally to all the ports on the device. This is true
even if you divide the device ports into multiple port-based VLANs.
If you want to restrict the IP management address to a specific port-based VLAN, you can make
that VLAN the designated management VLAN for the device. When you configure a VLAN to be the
designated management VLAN, the management IP address you configure on the device is
associated only with the ports in the designated VLAN. To establish a Telnet management session
with the device, you must access the device through one of the ports in the designated VLAN.
You also can configure up to five default gateways for the designated VLAN, and associate a metric
with each one. The software uses the gateway with the lowest metric. The other gateways reside in
the configuration but are not used. To use one of the other gateways, modify the configuration so
that the gateway you want to use has the lowest metric.
If more than one gateway has the lowest metric, the gateway that appears first in the running-config
is used.
10Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Remote access to management function restrictions
NOTE
If you have already configured a default gateway globally and you do not configure a gateway in the
VLAN, the software uses the globally configured gateway and gives the gateway a metric value of 1.
To configure a designated management VLAN, enter commands such as the following.
Brocade(config)# vlan 10 by port
Brocade(config-vlan-10)# untag ethernet 1/1/1 to 1/1/4
Brocade(config-vlan-10)# management-vlan
Brocade(config-vlan-10)# default-gateway 10.10.10.1 1
Brocade(config-vlan-10)# default-gateway 10.20.20.1 2
These commands configure port-based VLAN 10 to consist of ports 1/1/1–1/1/4 and to be the
designated management VLAN. The last two commands configure default gateways for the VLAN.
Since the 10.10.10.1 gateway has a lower metric, the software uses this gateway. The other
gateway remains in the configuration but is not used. You can use the other one by changing the
metrics so that the 10.20.20.1 gateway has the lower metric.
Syntax: [no] default-gateway ip-addrmetric
The ip-addr parameters specify the IP address of the gateway router.
The metric parameter specifies the metric (cost) of the gateway. You can specify a value from 1–5.
There is no default. The software uses the gateway with the lowest metric.
Device management security
By default, all management access is disabled. Each of the following management access methods
must be specifically enabled as required in your installation:
• SSHv2
• SNMP
The commands for granting access to each of these management interfaces is described in the
following.
Allowing SSHv2 access to the Brocade device
To allow SSHv2 access to the Brocade device, you must generate a Crypto Key as shown in the
following command.
Brocade(config)# crypto key generate
Syntax: crypto key [generate | zeroize]
The generate parameter generates a dsa key pair.
The zeroize parameter deletes the currently operative dsa key pair.
In addition, you must use AAA authentication to create a password to allow SSHv2 access. For
example the following command configures AAA authentication to use TACACS+ for authentication
as the default or local if TACACS+ is not available.
Brocade(config)# aaa authentication login default tacacs+ local
To allow SNMP access to the Brocade device, enter the following command.
Brocade(config)# snmp-server
Syntax: [no] snmp-server
Disabling specific access methods
You can specifically disable the following access methods:
• Teln et access
• SNMP access
• TFTP
If you disable Telnet access, you will not be able to access the CLI except through a serial connection
to the management module. If you disable SNMP access, you wi ll not b e able to use an S NMP-based
management applications.
Disabling Telnet access
You can use a Telnet client to access the CLI on the device over the network. If you do not plan to
use the CLI over the network and want to disable Telnet access to prevent others from establishing
CLI sessions with the device, enter the following command.
Brocade(config)# no telnet server
To re-enable Telnet operation, enter the following command.
Brocade(config)# telnet server
Syntax: [no] telnet server
Disabling SNMP access
To disable SNMP management of the device.
Brocade(config)# no snmp-server
To later re-enable SNMP management of the device.
Brocade(config)# snmp-server
Syntax: no snmp-server
Disabling TFTP access
You can globally disable TFTP to block TFTP client access. By default, TFTP client access is enabled.
To disable TFTP client access, enter the following command at the Global CONFIG level of the CLI.
Brocade(config)# tftp disable
12Brocade ICX 6650 Security Configuration Guide
53-1002601-01
When TFTP is disabled, you are prohibited from using the copy tftp command to copy files to the
NOTE
system flash. If you enter this command while TFTP is disabled, the system will reject the command
and display an error message.
To re-enable TFTP client access once it is disabled, enter the following command.
Brocade(config)# no tftp disable
Syntax: [no] tftp disable
Passwords used to secure access
Passwords can be used to secure the following access methods:
• Telnet access can be secured by setting a Telnet password. Refer to “Setting a Telnet
password” on page 13.
• Access to the Privileged EXEC and CONFIG levels of the CLI can be secured by setting
passwords for management privilege levels. Refer to “Setting passwords for management
privilege levels” on page 14.
This section also provides procedures for enhancing management privilege levels, recovering from
a lost password, and disabling password encryption.
Passwords used to secure access
You also can configure up to 16 user accounts consisting of a user name and password, and assign
each user account a management privilege level. Refer to “Local user accounts” on page 17.
Setting a Telnet password
By default, the device does not require a user name or password when you log in to the CLI using
Telnet. You can assign a password for Telnet access using one of the following methods.
Set the password “letmein” for Telnet access to the CLI using the following command at the global
CONFIG level.
Brocade(config)# enable telnet password letmein
Syntax: [no] enable telnet password string
Suppressing Telnet connection rejection messages
By default, if a Brocade device denies Telnet management access to the device, the software
sends a message to the denied Telnet client. You can optionally suppress the rejection message.
When you enable the option, a denied Telnet client does not receive a message from the Brocade
device. Instead, the denied client simply does not gain access.
To suppress the connection rejection message, use the following CLI method.
To suppress the connection rejection message sent by the device to a denied Telnet client, enter
the following command at the global CONFIG level of the CLI.
Brocade(config)# telnet server suppress-reject-message
Syntax: [no] telnet server suppress-reject-message
Setting passwords for management privilege levels
You can set one password for each of the following management privilege levels:
• Super User level – Allows complete read-and-write access to the system. This is generally for
system administrators and is the only management privilege level that allows you to configure
passwords.
• Port Configuration level – Allows read-and-write access for specific ports but not for global
(system-wide) parameters.
• Read Only level – Allows access to the Privileged EXEC mode and User EXEC mode of the CLI
but only with read access.
You can assign a password to each management privilege level. You also can configure up to 16
user accounts consisting of a user name and password, and assign each user account to one of
the three privilege levels. Refer to “Local user accounts” on page 17.
You must use the CLI to assign a password for management privilege levels.
If you configure user accounts in addition to privilege level passwords, the device will validate a
user access attempt using one or both methods (local user account or privilege level password),
depending on the order you specify in the authentication-method lists. Refer to
“Authentication-method lists” on page 58.
Follow the steps given below to set passwords for management privilege levels.
1. At the opening CLI prompt, enter the following command to change to the Privileged level of the
EXEC mode.
Brocade> enable
Brocade#
2. Access the CONFIG level of the CLI by entering the following command.
Brocade# configure terminal
Brocade(config)#
3. Enter the following command to set the Super User level password.
Brocade(config)# enable super-user-password text
You must set the Super User level password before you can set other types of passwords. The
Super User level password can be an alphanumeric string, but cannot begin with a number.
4. Enter the following commands to set the Port Configuration level and Read Only level
passwords.
Brocade(config)# enable port-config-password text
Brocade(config)# enable read-only-password text
Syntax: enable super-user-password text
Syntax: enable port-config-password text
14Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Passwords used to secure access
NOTE
NOTE
Syntax: enable read-only-password text
If you forget your Super User level password, refer to “Recovering from a lost password” on page 16.
Augmenting management privilege levels
Each management privilege level provides access to specific areas of the CLI by default:
• Super User level provides access to all commands and displays.
• Port Configuration level gives access to:
-The User EXEC and Privileged EXEC levels
-The port-specific parts of the CONFIG level
-All interface configuration levels
• Read Only level gives access to:
-The User EXEC and Privileged EXEC levels
You can grant additional access to a privilege level on an individual command basis. To grant the
additional access, you specify the privilege level you are enhancing, the CLI level that contains the
command, and the individual command.
This feature applies only to management privilege levels on the CLI.
Enhance the Port Configuration privilege level so users also can enter IP commands at the global
CONFIG level.
Brocade(config)# privilege configure level 4 ip
In this command, configure specifies that the enhanced access is for a command at the global
CONFIG level of the CLI. The level 4 parameter indicates that the enhanced access is for
management privilege level 4 (Port Configuration). All users with Port Configuration privileges will
have the enhanced access. The ip parameter indicates that the enhanced access is for the IP
commands. Users who log in with valid Port Configuration level user names and passwords can
enter commands that begin with “ip” at the global CONFIG level.
• bgp-router – BGP4 router level; for example, Brocade(config-bgp-router)#
• vrrp-router – VRRP configuration level
• trunk – trunk configuration level
• port-vlan – Port-based VLAN level; for example, Brocade(config-vlan)#
• protocol-vlan – Protocol-based VLAN level
The privilege-level indicates the number of the management privilege level you are augmenting.
You can specify one of the following:
• 0 – Super User level (full read-write access)
• 4 – Port Configuration level
• 5 – Read Only level
The command-string parameter specifies the command you are allowing users with the specified
privilege level to enter. To display a list of the commands at a CLI level, enter “?” at that level's
command prompt.
Recovering from a lost password
Recovery from a lost password requires direct access to the serial port and a system reset.
You can perform this procedure only from the CLI.
Follow the steps given below to recover from a lost password.
1. Start a CLI session over the serial interface to the device.
2. Reboot the device.
3. At the initial boot prompt at system startup, enter b to enter the boot monitor mode.
4. Enter no password at the prompt. (You cannot abbreviate this command.) This command will
cause the device to bypass the system password check.
5. Enter boot system flash primary at the prompt.
6. After the console prompt reappears, assign a new password.
Displaying the SNMP community string
If you want to display the SNMP community string, enter the following commands.
Brocade(config)# enable password-display
Brocade# show snmp server
The enable password-display command enables display of the community string, but only in the
output of the show snmp server command. Display of the string is still encrypted in the
startup-config file and running-config. Enter the command at the global CONFIG level of the CLI.
Specifying a minimum password length
By default, the Brocade device imposes no minimum length on the Line (Telnet), Enable, or Local
passwords. You can configure the device to require that Line, Enable, and Local passwords be at
least a specified length.
16Brocade ICX 6650 Security Configuration Guide
53-1002601-01
For example, to specify that the Line, Enable, and Local passwords be at least 8 characters, enter
the following command.
You can define up to 16 local user accounts on a Brocade device. User accounts regulate who can
access the management functions in the CLI using the following methods:
• Teln et access
• SNMP access
Local user accounts provide greater flexibility for controlling management access to Brocade
devices than do management privilege level passwords and SNMP community strings of SNMP
versions 1 and 2. You can continue to use the privilege level passwords and the SNMP community
strings as additional means of access authentication. Alternatively, you can choose not to use local
user accounts and instead continue to use only the privilege level passwords and SNMP
community strings. Local user accounts are backward-compatible with configuration files that
contain privilege level passwords. Refer to “Setting passwords for management privilege levels” on
page 14.
Local user accounts
If you configure local user accounts, you also need to configure an authentication-method list for
Telnet access and SNMP access. Refer to “Authentication-method lists” on page 58.
For each local user account, you specify a user name. You also can specify the following
parameters:
• A password
• A management privilege level, which can be one of the following:
-Super User level (default) – Allows complete read-and-write access to the system. This is
generally for system administrators and is the only privilege level that allows you to
configure passwords.
-Port Configuration level – Allows read-and-write access for specific ports but not for global
parameters.
-Read Only level – Allows access to the Privileged EXEC mode and User EXEC mode with
read access only.
• You can set additional username and password rules. Refer to “Enhancements to username
and password”.
Enhancements to username and password
This section describes the enhancements to the username and password features introduced in
earlier releases.
The following rules are enabled by default:
• Users are required to accept the message of the day.
• Users are locked out (disabled) if they fail to login after three attempts. This feature is
automatically enabled. Use the disable-on-login-failure command to change the number of
login attempts (up to 10) before users are locked out.
The following rules are disabled by default:
• Enhanced user password combination requirements
• User password masking
• Quarterly updates of user passwords
• You can configure the system to store up to 15 previously configured passwords for each user.
• You can use the disable-on-login-failure command to change the number of login attempts (up
to 10) before users are locked out.
• A password can now be set to expire.
Enabling enhanced user password combination requirements
When strict password enforcement is enabled on the Brocade device, you must enter a minimum of
eight characters containing the following combinations when you create an enable and a user
password:
• At least two upper case characters
• At least two lower case characters
• At least two numeric characters
• At least two special characters
Password minimum and combination requirements are strictly enforced.
Use the enable strict-password-enforcement command to enable the password security feature.
The following security upgrades apply to the enable strict-password-enforcement command:
• Passwords must not share four or more concurrent characters with any other password
configured on the router. If the user tries to create a password with four or more concurrent
characters, the following error message will be returned.
Error - The substring <str> within the password has been used earlier, please
choose a different password.
For example, the previous password was Ma!i4aYa&, the user cannot use any of the following
as his or her new password:
-Ma!imai$D because “Mail” were used consecutively in the previous password
-&3B9aYa& because “aYa&” were used consecutively in the previous password
-i4aYEv#8 because “i4aY“were used consecutively in the previous password
• If the user tries to configure a password that was previously used, the Local User Account
configuration will not be allowed and the following message will be displayed.
18Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Local user accounts
NOTE
Brocade# show run
Current configuration:
....
username waldo password .....
username raveen set-time 2086038248
....
This password was used earlier for same or different user, please choose a
different password.
Enabling user password masking
By default, when you use the CLI to create a user password, the password displays on the console
as you type it. For enhanced security, you can configure the Brocade device to mask the password
characters entered at the CLI. When password masking is enabled, the CLI displays asterisks (*) on
the console instead of the actual password characters entered.
The following shows the default CLI behavior when configuring a username and password.
Brocade(config)# username kelly password summertime
The following shows the CLI behavior when configuring a username and password when
password-masking is enabled.
Brocade(config)# username kelly password
Enter Password: ********
When password masking is enabled, press the [Enter] key before entering the password.
Syntax: username name password [Enter]
For [Enter], press the Enter key. Enter the password when prompted.
If strict-password-enforcement is enabled, enter a password which contains the required character
combination. Refer to “Enabling enhanced user password combination requirements” on page 18.
To enable password masking, enter the following command.
Brocade(config)# enable user password-masking
Syntax: [no] enable user password-masking
Enabling user password aging
For enhanced security, password aging enforces quarterly updates of all user passwords. After 180
days, the CLI will automatically prompt users to change their passwords when they attempt to sign
on.
When password aging is enabled, the software records the system time that each user password
was configured or last changed. The time displays in the output of the show running configuration
command, indicated by set-time time.
Example
The password aging feature uses the SNTP server clock to record the set-time. If the network does
not have an SNTP server, then set-time will appear as set-time 0 in the output of the show running
configuration command.
A username set-time configuration is removed when:
• The username and password is deleted from the configuration
• The username password expires
When a username set-time configuration is removed, it no longer appears in the show running
configuration output.
Note that if a username does not have an assigned password, the username will not have a
set-time configuration.
Password aging is disabled by default. To enable it, enter the following command at the global
CONFIG level of the CLI.
Brocade(config)# enable user password-aging
Syntax: [no] enable user password-aging
Configuring password history
By default, the Brocade device stores the last five user passwords for each user. When changing a
user password, the user cannot use any of the five previously configured passwords.
For security purposes, you can configure the Brocade device to store up to 15 passwords for each
user, so that users do not use the same password multiple times. If a user attempts to use a
password that is stored, the system will prompt the user to choose a different password.
To configure enhanced password history, enter a command such as the following at the global
CONFIG level of the CLI.
Brocade(config)# enable user password-history 15
Syntax: [no] enable user password-history 1 – 15
Enhanced login lockout
The CLI provides up to three login attempts. If a user fails to login after three attempts, that user is
locked out (disabled). If desired, you can increase or decrease the number of login attempts before
the user is disabled. To do so, enter a command such as the following at the global CONFIG level of
the CLI.
Brocade(config)# enable user disable-on-login-failure 7
Syntax: enable user disable-on-login-failure 1 – 10
To re-enable a user that has been locked out, do one of the following:
• Reboot the Brocade device to re-enable all disabled users.
• Enable the user by entering the following command.
Brocade(config)# username sandy enable
20Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Local user accounts
NOTE
Brocade(config)# user sandy enable
Brocade# show user
Username Password Encrypt Priv Status Expire Time
============================================================================
==
sandy $1$Gz...uX/$wQ44fVGtsqbKWkQknzAZ6. enabled 0 enabled 90 days
Brocade(config)# username sandy expires 20
Brocade# show user
Username Password Encrypt Priv Status Expire
Time
================================================================================
==
sandy $1$Gz...uX/$wQ44fVGtsqbKWkQknzAZ6. enabled 0 enabled 20 days
Example
Syntax: username name enable
Setting passwords to expire
You can set a user password to expire. Once a password expires, the administrator must assign a
new password to the user. To configure a user password to expire, enter the following.
Brocade(config)# username sandy expires 20
Syntax: username name expires days
Enter 1–365 for number of days. The default is 90 days.
Example
Requirement to accept the message of the day
If a message of the day (MOTD) is configured, a user will be required to press the Enter key before
he or she can login. MOTD is configured using the banner motd command.
There are no new CLI commands for this feature.
This requirement is disabled by default, unless configured. Users are not required to press Enter
after the MOTD banner is displayed. Refer to Brocade ICX 6650 Administration Guide.
Local user account configuration
You can create accounts for local users with or without passwords. Accounts with passwords can
have encrypted or unencrypted passwords.
You can assign privilege levels to local user accounts, but on a new device, you must create a local
user account that has a Super User privilege before you can create accounts with other privilege
levels.
You must grant Super User level privilege to at least one account before you add accounts with other
privilege levels. You need the Super User account to make further administrative changes.
Local user accounts with no passwords
To create a user account without a password, enter the following command at the global CONFIG
level of the CLI.
If you want to use unencrypted passwords for local user accounts, enter a command such as the
following at the global CONFIG level of the CLI.
Brocade(config)# username wonka password willy
If password masking is enabled, press the [Enter] key before entering the password.
Brocade(config)# username wonka
Enter Password: willy
The above commands add a local user account with the user name “wonka” and the password
“willy”. This account has the Super User privilege level; this user has full access to all configuration
and display features.
This command adds a user account for user name “waldo”, password “whereis”, with the Read
Only privilege level. Waldo can look for information but cannot make configuration changes.
You can enter up to 48 characters for user-string.
The privilege privilege-level parameter specifies the privilege level for the account. You can specify
one of the following:
• 0 – Super User level (full read-write access)
• 4 – Port Configuration level
• 5 – Read Only level
The default privilege level is 0. If you want to assign Super User level access to the account, you can
enter the command without privilege 0, as shown in the command example above.
The password | nopassword parameter indicates whether the user must enter a password. If you
specify password, enter the string for the user's password. You can enter up to 48 characters for
password-string. If strict password enforcement is enabled on the device, you must enter a
minimum of eight characters containing the following combinations:
• At least two upper case characters
• At least two lower case characters
• At least two numeric characters
22Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Local user accounts
NOTE
NOTE
• At least two special characters
You must be logged on with Super User access (privilege level 0) to add user accounts or configure
other access parameters.
To display user account information, enter the following command.
Brocade# show users
Syntax: show users
Local accounts with encrypted passwords
You can create local user accounts with MD5 encrypted passwords using one of the following
methods:
• Issuing the service password-encryption command after creating the local user account with a
• Using the username user-string create-password command
To create an encrypted all-numeric password, use the username user-string create-password
command.
If you create a local user account using the commands discussed in “Local user accounts with
unencrypted passwords” on page 22, you can issue the service password-encryption command to
encrypt all passwords that have been previously entered.
Example
Brocade(config)# username wonka privilege 5 password willy
Brocade(config)# service password-encryption
Creating a password option
As an alternative to the commands above, the create-password option allows you to create an
encrypted password in one line of command. Also, this new option allows you to create an
all-numeric, encrypted password.
The password-string parameter is the user password. The password can be up to 48 characters
and must differ from the current password and two previously configured passwords.
When a password is changed, a message such as the following is sent to the Syslog.
SYSLOG: <14>Jan 1 00:00:00 10.44.9.11 Security: Password has been changed for user
tester from console session.
The message includes the name of the user whose password was changed and during which
session type, such as Console, Telnet, SSH, SNMP, or others, the password was changed.
TACACS and TACACS+ security
You can use the security protocol Terminal Access Controller Access Control System (TACACS) or
TACACS+ to authenticate the following kinds of access to the Brocade device:
• Teln et access
• SSH access
• Console access
• Access to the Privileged EXEC level and CONFIG levels of the CLI
The TACACS and TACACS+ protocols define how authentication, authorization, and accounting
information is sent between a Brocade device and an authentication database on a
TACACS/TACACS+ server. TACACS/TACACS+ services are maintained in a database, typically on a
UNIX workstation or PC with a TACACS/TACACS+ server running.
How TACACS+ differs from TACACS
TACACS is a simple UDP-based access control protocol originally developed by BBN for MILNET.
TACACS+ is an enhancement to TACACS and uses TCP to ensure reliable delivery.
24Brocade ICX 6650 Security Configuration Guide
53-1002601-01
TACACS and TACACS+ security
NOTE
NOTE
TACACS+ is an enhancement to the TACACS security protocol. TACACS+ improves on TACACS by
separating the functions of authentication, authorization, and accounting (AAA) and by encrypting
all traffic between the Brocade device and the TACACS+ server. TACACS+ allows for arbitrary length
and content authentication exchanges, which allow any authentication mechanism to be utilized
with the Brocade device. TACACS+ is extensible to provide for site customization and future
development features. The protocol allows the Brocade device to request very precise access
control and allows the TACACS+ server to respond to each component of that request.
TACACS+ provides for authentication, authorization, and accounting, but an implementation or
configuration is not required to employ all three.
TACACS/TACACS+ authentication, authorization,
and accounting
When you configure a Brocade device to use a TACACS/TACACS+ server for authentication, the
device prompts users who are trying to access the CLI for a user name and password, then verifies
the password with the TACACS/TACACS+ server.
If you are using TACACS+, Brocade recommends that you also configure authorization, in which the
Brocade device consults a TACACS+ server to determine which management privilege level (and
which associated set of commands) an authenticated user is allowed to use. You can also
optionally configure accounting, which causes the Brocade device to log information on the
TACACS+ server when specified events occur on the device.
By default, a user logging into the device from Telnet or SSH would first enter the User EXEC level.
The user can enter the enable command to get to the Privileged EXEC level.
A user that is successfully authenticated can be automatically placed at the Privileged EXEC level
after login. Refer to “Entering privileged EXEC mode after a Telnet or SSH login” on page 35.
Configuring TACACS/TACACS+ for devices in a Brocade IronStack
Because devices operating in a Brocade IronStack topology present multiple console ports, you
must take additional steps to secure these ports when configuring TACACS/TACACS+.
The following is a sample AAA console configuration using TACACS+.
• all - logs out all console port on stack units that are not the Active Controller
• unit - logs out the console port on a specified unit
Once AAA console is enabled, you should log out any open console ports on your IronStack using
the kill console command:
Brocade(config)# kill console all
In case a user forgets to log out or a console is left unattended, you can also configure the console
timeout (in minutes) on all stack units (including the Active Controller).
Brocade(config)# stack unit 3
Brocade(config-unit-3)# console timeout 5
Brocade(config-unit-3)# exit
Brocade(config)# stack unit 4
Brocade(config-unit-4)# console timeout 5
Use the show who and the show telnet commands to confirm the status of console sessions.
stack9# show who
Console connections (by unit number):
1 established
you are connecting to this session
4 seconds in idle
2 established
1 hours 3 minutes 12 seconds in idle
3 established
1 hours 3 minutes 9 seconds in idle
4 established
1 hours 3 minutes 3 seconds in idle
Telnet connections (inbound):
1 closed
2 closed
3 closed
4 closed
5 closed
Telnet connection (outbound):
6 closed
SSH connections:
1 closed
2 closed
3 closed
4 closed
5 closed
stack9#
stack9# show telnet
Console connections (by unit number):
1 established
you are connecting to this session
1 minutes 5 seconds in idle
2 established
1 hours 4 minutes 18 seconds in idle
3 established
1 hours 4 minutes 15 seconds in idle
4 established
1 hours 4 minutes 9 seconds in idle
8. The password is validated in the TACACS+ server database.
9. If the password is valid, the user is authenticated.
TACACS+ authorization
Brocade devices support two kinds of TACACS+ authorization:
• Exec authorization determines a user privilege level when they are authenticated
• Command authorization consults a TACACS+ server to get authorization for commands entered
by the user
When TACACS+ exec authorization takes place, the following events occur.
1. A user logs into the Brocade device using Telnet or SSH
2. The user is authenticated.
3. The Brocade device consults the TACACS+ server to determine the privilege level of the user.
4. The TACACS+ server sends back a response containing an A-V (Attribute-Value) pair with the
privilege level of the user.
5. The user is granted the specified privilege level.
When TACACS+ command authorization takes place, the following events occur.
1. A Telnet or SSH user previously authenticated by a TACACS+ server enters a command on the
Brocade device.
2. The Brocade device looks at its configuration to see if the command is at a privilege level that
requires TACACS+ command authorization.
3. If the command belongs to a privilege level that requires authorization, the Brocade device
consults the TACACS+ server to see if the user is authorized to use the command.
4. If the user is authorized to use the command, the command is executed.
TACACS+ accounting
TACACS+ accounting works as follows.
1. One of the following events occur on the Brocade device:
• A user logs into the management interface using Telnet or SSH
• A user enters a command for which accounting has been configured
• A system event occurs, such as a reboot or reloading of the configuration file
2. The Brocade device checks the configuration to see if the event is one for which TACACS+
accounting is required.
3. If the event requires TACACS+ accounting, the Brocade device sends a TACACS+ Accounting
Start packet to the TACACS+ accounting server, containing information about the event.
4. The TACACS+ accounting server acknowledges the Accounting Start packet.
5. The TACACS+ accounting server records information about the event.
6. When the event is concluded, the Brocade device sends an Accounting Stop packet to the
TACACS+ accounting server.
7.The TACACS+ accounting server acknowledges the Accounting Stop packet.
28Brocade ICX 6650 Security Configuration Guide
53-1002601-01
TACACS and TACACS+ security
AAA operations for TACACS/TACACS+
The following table lists the sequence of authentication, authorization, and accounting operations
that take place when a user gains access to a Brocade device that has TACACS/TACACS+ security
configured.
TABLE 3AAA operations
User actionApplicable AAA operations
User attempts to gain access to the
Privileged EXEC and CONFIG levels
of the CLI
User logs in using Telnet/SSHLogin authentication:
User logs out of Telnet/SSH session Command accounting (TACACS+):
User enters system commands
(for example, reload, boot system)
User enters the command:
[no] aaa accounting system default
start-stop method-list
User enters other commandsCommand authorization (TACACS+):
AAA security for commands pasted into the running-config
If AAA security is enabled on the device, commands pasted into the running-config are subject to
the same AAA operations as if they were entered manually.
When you paste commands into the running-config, and AAA command authorization or
accounting, or both, are configured on the device, AAA operations are performed on the pasted
commands. The AAA operations are performed before the commands are actually added to the
running-config. The server performing the AAA operations should be reachable when you paste the
commands into the running-config file. If the device determines that a pasted command is invalid,
AAA operations are halted on the remaining commands. The remaining commands may not be
executed if command authorization is configured.
TACACS/TACACS+ configuration considerations
• You must deploy at least one TACACS/TACACS+ server in your network.
• Brocade devices support authentication using up to eight TACACS/TACACS+ servers. The
device tries to use the servers in the order you add them to the device configuration.
• You can select only one primary authentication method for each type of access to a device (CLI
through Telnet, CLI Privileged EXEC and CONFIG levels). For example, you can select TACACS+
as the primary authentication method for Telnet CLI access, but you cannot also select RADIUS
authentication as a primary method for the same type of access. However, you can configure
backup authentication methods for each access type.
• You can configure the Brocade device to authenticate using a TACACS or TACACS+ server, not
both.
Configuring TACACS
Follow the procedure given below for TACACS configurations.
1. Identify TACACS servers. Refer to “Identifying the TACACS/TACACS+ servers” on page 31.
2. Set optional parameters. Refer to “Setting optional TACACS and TACACS+ parameters” on
page 32.
3. Configure authentication-method lists. Refer to “Configuring authentication-method lists for
TACACS and TACACS+” on page 34.
Configuring TACACS+
Follow the procedure given below for TACACS+ configurations.
1. Identify TACACS+ servers. Refer to “Identifying the TACACS/TACACS+ servers” on page 31.
2. Set optional parameters. Refer to “Setting optional TACACS and TACACS+ parameters” on
page 32.
3. Configure authentication-method lists. Refer to “Configuring authentication-method lists for
TACACS and TACACS+” on page 34.
4. Optionally configure TACACS+ authorization. Refer to “Configuring TACACS+ authorization” on
page 36.
5. Optionally configure TACACS+ accounting. Refer to “TACACS+ accounting configuration” on
page 39.
30Brocade ICX 6650 Security Configuration Guide
53-1002601-01
TACACS and TACACS+ security
NOTE
NOTE
Enabling TACACS
TACACS is disabled by default. To configure TACACS/TACACS+ authentication parameters, you must
enable TACACS by entering the following command.
The ip-addr|ipv6-addr|hostname parameter specifies the IP address or host name of the server.
You can enter up to eight tacacs-server host commands to specify up to eight different servers.
To specify the server's host name instead of its IP address, you must first identify a DNS server using
the ip dns server-address ip-addr command at the global CONFIG level.
If you add multiple TACACS/TACACS+ authentication servers to the Brocade device, the device tries
to reach them in the order you add them. For example, if you add three servers in the following
order, the software tries the servers in the same order.
1. 10.94.6.161
2. 10.94.6.191
3. 10.94.6.122
You can remove a TACACS/TACACS+ server by entering no followed by the tacacs-server command.
For example, to remove 10.94.6.161, enter the following command.
Brocade(config)# no tacacs-server host 10.94.6.161
If you erase a tacacs-server command (by entering “no” followed by the command), make sure you
also erase the aaa commands that specify TACACS/TACACS+ as an authentication method. (Refer
to “Configuring authentication-method lists for TACACS and TACACS+” on page 34.) Otherwise, when
you exit from the CONFIG mode or from a Telnet session, the system continues to believe it is
TACACS/TACACS+ enabled and you will not be able to access the system.
The auth-port parameter specifies the UDP (for TACACS) or TCP (for TACACS+) port number of the
authentication port on the server. The default port number is 49.
Specifying different servers for individual AAA functions
In a TACACS+ configuration, you can designate a server to handle a specific AAA task. For example,
you can designate one TACACS+ server to handle authorization and another TACACS+ server to
handle accounting. You can set the TACACS+ key for each server.
To specify different TACACS+ servers for authentication, authorization, and accounting, enter the
command such as following.
The default parameter causes the server to be used for all AAA functions.
After authentication takes place, the server that performed the authentication is used for
authorization and accounting. If the authenticating server cannot perform the requested function,
then the next server in the configured list of servers is tried; this process repeats until a server that
can perform the requested function is found, or every server in the configured list has been tried.
Setting optional TACACS and TACACS+ parameters
You can set the following optional parameters in a TACACS and TACACS+ configuration:
• TACACS+ key – This parameter specifies the value that the Brocade device sends to the
TACACS+ server when trying to authenticate user access.
• Retransmit interval – This parameter specifies how many times the Brocade device will resend
an authentication request when the TACACS/TACACS+ server does not respond. The retransmit
value can be from 1 – 5 times. The default is 3 times.
• Dead time – This parameter specifies how long the Brocade device waits for the primary
authentication server to reply before deciding the server is dead and trying to authenticate
using the next server. The dead-time value can be from 1 – 5 seconds. The default is 3
seconds.
• Timeout – This parameter specifies how many seconds the Brocade device waits for a
response from a TACACS/TACACS+ server before either retrying the authentication request, or
determining that the TACACS/TACACS+ servers are unavailable and moving on to the next
authentication method in the authentication-method list. The timeout can be from 1 – 15
seconds. The default is 3 seconds.
32Brocade ICX 6650 Security Configuration Guide
53-1002601-01
TACACS and TACACS+ security
NOTE
NOTE
Setting the TACACS+ key
The key parameter in the tacacs-server command is used to encrypt TACACS+ packets before they
are sent over the network. The value for the key parameter on the Brocade device should match the
one configured on the TACACS+ server. The key can be from 1 – 32 characters in length and cannot
include any space characters.
The tacacs-server key command applies only to TACACS+ servers, not to TACACS servers. If you are
configuring TACACS, do not configure a key on the TACACS server and do not enter a key on the
Brocade device.
To specify a TACACS+ server key, enter a command such as following.
Brocade(config)# tacacs-server key rkwong
Syntax: tacacs-server key [0 | 1] string
When you display the configuration of the Brocade device, the TACACS+ keys are encrypted. For
example.
Encryption of the TACACS+ keys is done by default. The 0 parameter disables encryption. The 1
parameter is not required; it is provided for backwards compatibility.
Setting the retransmission limit
The retransmit parameter specifies how many times the Brocade device will resend an
authentication request when the TACACS/TACACS+ server does not respond. The retransmit limit
can be from 1 – 5 times. The default is 3 times.
To set the TACACS and TACACS+ retransmit limit, enter a command such as the following.
Brocade(config)# tacacs-server retransmit 5
Syntax: tacacs-server retransmit number
Setting the timeout parameter
The timeout parameter specifies how many seconds the Brocade device waits for a response from
the TACACS/TACACS+ server before either retrying the authentication request, or determining that
the TACACS/TACACS+ server is unavailable and moving on to the next authentication method in the
authentication-method list. The timeout can be from 1 – 15 seconds. The default is 3 seconds.
Configuring authentication-method lists for
TACACS and TACACS+
You can use TACACS/TACACS+ to authenticate Telnet/SSH access and access to Privileged EXEC
level and CONFIG levels of the CLI. When configuring TACACS/TACACS+ authentication, you create
authentication-method lists specifically for these access methods, specifying TACACS/TACACS+ as
the primary authentication method.
Within the authentication-method list, TACACS/TACACS+ is specified as the primary authentication
method and up to six backup authentication methods are specified as alternates. If
TACACS/TACACS+ authentication fails due to an error, the device tries the backup authentication
methods in the order they appear in the list.
When you configure authentication-method lists for TACACS/TACACS+ authentication, you must
create a separate authentication-method list for Telnet/SSH CLI access, and for access to the
Privileged EXEC level and CONFIG levels of the CLI.
To create an authentication method list that specifies TACACS/TACACS+ as the primary
authentication method for securing Telnet/SSH access to the CLI.
The commands above cause TACACS/TACACS+ to be the primary authentication method for
securing Telnet/SSH access to the CLI. If TACACS/TACACS+ authentication fails due to an error with
the server, authentication is performed using local user accounts instead.
To create an authentication-method list that specifies TACACS/TACACS+ as the primary
authentication method for securing access to Privileged EXEC level and CONFIG levels of the CLI.
Brocade(config)# aaa authentication enable default tacacs local none
The command above causes TACACS/TACACS+ to be the primary authentication method for
securing access to Privileged EXEC level and CONFIG levels of the CLI. If TACACS/TACACS+
authentication fails due to an error with the server, local authentication is used instead. If local
authentication fails, no authentication is used; the device automatically permits access.
The enable | login parameter specifies the type of access this authentication-method list controls.
You can configure one authentication-method list for each type of access.
The method1 parameter specifies the primary authentication method. The remaining optional
method parameters specify additional methods to try if an error occurs with the primary method. A
method can be one of the values listed in the Method Parameter column in the following table.
TABLE 4Authentication method values
Method parameterDescription
lineAuthenticate using the password you configured for Telnet access. The Telnet password is
configured using the enable telnet password… command. Refer to “Setting a Telnet
password” on page 13.
enableAuthenticate using the password you configured for the Super User privilege level. This
password is configured using the enable super-user-password… command. Refer to “Setting
passwords for management privilege levels” on page 14.
34Brocade ICX 6650 Security Configuration Guide
53-1002601-01
TACACS and TACACS+ security
NOTE
TABLE 4Authentication method values (Continued)
Method parameterDescription
localAuthenticate using a local user name and password you configured on the device. Local user
names and passwords are configured using the username… command. Refer to “Local user
account configuration” on page 21.
tacacsAuthenticate using the database on a TACACS server. You also must identify the server to the
device using the tacacs-server command.
tacacs+Authenticate using the database on a TACACS+ server. You also must identify the server to
the device using the tacacs-server command.
radiusAuthenticate using the database on a RADIUS server. You also must identify the server to the
device using the radius-server command.
noneDo not use any authentication method. The device automatically permits access.
For examples of how to define authentication-method lists for types of authentication other than
TACACS/TACACS+, refer to “Authentication-method lists” on page 58.
Entering privileged EXEC mode after a Telnet or SSH login
By default, a user enters User EXEC mode after a successful login through Telnet or SSH.
Optionally, you can configure the device so that a user enters Privileged EXEC mode after a Telnet
or SSH login. To do this, use the following command.
The user privilege level is based on the privilege level granted during login.
Configuring enable authentication to prompt for password only
If Enable authentication is configured on the device, when a user attempts to gain Super User
access to the Privileged EXEC and CONFIG levels of the CLI, by default he or she is prompted for a
username and password. You can configure the Brocade device to prompt only for a password. The
device uses the username entered at login, if one is available. If no username was entered at login,
the device prompts for both username and password.
To configure the Brocade device to prompt only for a password when a user attempts to gain Super
User access to the Privileged EXEC and CONFIG levels of the CLI.
Telnet and SSH prompts when the TACACS+ server is unavailable
When TACACS+ is the first method in the authentication method list, the device displays the login
prompt received from the TACACS+ server. If a user attempts to login through Telnet or SSH, but
none of the configured TACACS+ servers are available, the following takes place:
• If the next method in the authentication method list is "enable", the login prompt is skipped,
and the user is prompted for the Enable password (that is, the password configured with the
enable super-user-password command).
• If the next method in the authentication method list is "line", the login prompt is skipped, and
the user is prompted for the Line password (that is, the password configured with the enable
telnet password command).
Configuring TACACS+ authorization
Brocade devices support TACACS+ authorization for controlling access to management functions in
the CLI. Two kinds of TACACS+ authorization are supported:
• Exec authorization determines a user privilege level when they are authenticated
• Command authorization consults a TACACS+ server to get authorization for commands entered
by the user
Configuring EXEC authorization
When TACACS+ EXEC authorization is performed, the Brocade device consults a TACACS+ server to
determine the privilege level of the authenticated user. To configure TACACS+ EXEC authorization
on the Brocade device, enter the following command.
If you specify none, or omit the aaa authorization exec command from the device configuration, no
EXEC authorization is performed.
A user privilege level is obtained from the TACACS+ server in the “foundry-privlvl” A-V pair. If the aaa
authorization exec default tacacs command exists in the configuration, the device assigns the user
the privilege level specified by this A-V pair. If the command does not exist in the configuration,
then the value in the “foundry-privlvl” A-V pair is ignored, and the user is granted Super User
access.
If the aaa authorization exec default tacacs+ command exists in the configuration, following
successful authentication the device assigns the user the privilege level specified by the
“foundry-privlvl” A-V pair received from the TACACS+ server. If the aaa authorization exec default
tacacs+ command does not exist in the configuration, then the value in the “foundry-privlvl” A-V pair
is ignored, and the user is granted Super User access.
Also note that in order for the aaa authorization exec default tacacs+ command to work, either the
aaa authentication enable default tacacs+ command, or the aaa authentication login
privilege-mode command must also exist in the configuration.
Configuring an Attribute-Value pair on the TACACS+ server
During TACACS+ EXEC authorization, the Brocade device expects the TACACS+ server to send a
response containing an A-V (Attribute-Value) pair that specifies the privilege level of the user. When
the Brocade device receives the response, it extracts an A-V pair configured for the Exec service
and uses it to determine the user privilege level.
36Brocade ICX 6650 Security Configuration Guide
53-1002601-01
TACACS and TACACS+ security
To set a user privilege level, you can configure the “foundry-privlvl” A-V pair for the Exec service on
the TACACS+ server.
Example
user=bob {
default service = permit
member admin
#Global password
global = cleartext "cat"
service = exec {
foundry-privlvl = 0
}
}
In this example, the A-V pair foundry-privlvl = 0 grants the user full read-write access. The
value in the foundry-privlvl A-V pair is an integer that indicates the privilege level of the user.
Possible values are 0 for super-user level, 4 for port-config level, or 5 for read-only level. If a value
other than 0, 4, or 5 is specified in the foundry-privlvl A-V pair, the default privilege level of 5
(read-only) is used. The foundry-privlvl A-V pair can also be embedded in the group configuration for
the user. See your TACACS+ documentation for the configuration syntax relevant to your server.
If the foundry-privlvl A-V pair is not present, the Brocade device extracts the last A-V pair configured
for the Exec service that has a numeric value. The Brocade device uses this A-V pair to determine
the user privilege level.
Example
user=bob {
default service = permit
member admin
#Global password
global = cleartext "cat"
service = exec {
privlvl = 15
}
}
The attribute name in the A-V pair is not significant; the Brocade device uses the last one that has
a numeric value. However, the Brocade device interprets the value for a non-”foundry-privlvl” A-V
pair differently than it does for a “foundry-privlvl” A-V pair. The following table lists how the Brocade
device associates a value from a non-”foundry-privlvl” A-V pair with a Brocade privilege level.
TABLE 5Brocade equivalents for non-“foundry-privlvl” A-V pair values
Value for non-“foundry-privlvl” A-V pairBrocade privilege level
150 (super-user)
From 14 – 14 (port-config)
Any other number or 05 (read-only)
In the example above, the A-V pair configured for the Exec service is privlvl = 15. The Brocade
device uses the value in this A-V pair to set the user privilege level to 0 (super-user), granting the
user full read-write access.
In a configuration that has both a “foundry-privlvl” A-V pair and a non-”foundry-privlvl” A-V pair for
the Exec service, the non-”foundry-privlvl” A-V pair is ignored.
user=bob {
default service = permit
member admin
#Global password
global = cleartext "cat"
service = exec {
foundry-privlvl = 4
privlvl = 15
}
}
In this example, the user would be granted a privilege level of 4 (port-config level). The privlvl =
15 A-V pair is ignored by the Brocade device.
If the TACACS+ server has no A-V pair configured for the Exec service, the default privilege level of 5
(read-only) is used.
Configuring command authorization
When TACACS+ command authorization is enabled, the Brocade device consults a TACACS+ server
to get authorization for commands entered by the user.
You enable TACACS+ command authorization by specifying a privilege level whose commands
require authorization. For example, to configure the Brocade device to perform authorization for the
commands available at the Super User privilege level (that is, all commands on the device), enter
the following command.
The privilege-level parameter can be one of the following:
• 0 – Authorization is performed for commands available at the Super User level (all commands)
• 4 – Authorization is performed for commands available at the Port Configuration level
(port-config and read-only commands)
• 5 – Authorization is performed for commands available at the Read Only level (read-only
commands)
TACACS+ command authorization can be performed only for commands entered from Telnet or SSH
sessions, or from the console.
TACACS+ command authorization is not performed for the following commands:
• At all levels: exit, logout, end, and quit.
• At the Privileged EXEC level: enable or enable text, where text is the password configured for
the Super User privilege level.
If configured, command accounting is performed for these commands.
AAA support for console commands
AAA support for commands entered at the console includes the following:
• Login prompt that uses AAA authentication, using authentication-method lists
38Brocade ICX 6650 Security Configuration Guide
53-1002601-01
TACACS and TACACS+ security
NOTE
• Exec Authorization
• Exec Accounting
• Command authorization
• Command accounting
• System accounting
To enable AAA support for commands entered at the console, enter the following command.
Brocade(config)# enable aaa console
Syntax: [no] enable aaa console
TACACS+ accounting configuration
Brocade devices support TACACS+ accounting for recording information about user activity and
system events. When you configure TACACS+ accounting on a Brocade device, information is sent
to a TACACS+ accounting server when specified events occur, such as when a user logs into the
device or the system is rebooted.
Configuring TACACS+ accounting for Telnet/SSH (Shell) access
To send an Accounting Start packet to the TACACS+ accounting server when an authenticated user
establishes a Telnet or SSH session on the Brocade device, and an Accounting Stop packet when
the user logs out.
You can configure TACACS+ accounting for CLI commands by specifying a privilege level whose
commands require accounting. For example, to configure the Brocade device to perform TACACS+
accounting for the commands available at the Super User privilege level (that is; all commands on
the device), enter the following command.
An Accounting Start packet is sent to the TACACS+ accounting server when a user enters a
command, and an Accounting Stop packet is sent when the service provided by the command is
completed.
If authorization is enabled, and the command requires authorization, then authorization is
performed before accounting takes place. If authorization fails for the command, no accounting
takes place.
• 4 – Records commands available at the Port Configuration level (port-config and read-only
commands)
• 5 – Records commands available at the Read Only level (read-only commands)
Configuring TACACS+ accounting for system events
You can configure TACACS+ accounting to record when system events occur on the Brocade device.
System events include rebooting and when changes to the active configuration are made.
The following command causes an Accounting Start packet to be sent to the TACACS+ accounting
server when a system event occurs, and a Accounting Stop packet to be sent when the system
event is completed.
Brocade(config)# aaa accounting system default start-stop tacacs+
Configuring an interface as the source for all
TACACS and TACACS+ packets
You can designate the lowest-numbered IP address configured an Ethernet port, loopback
interface, or virtual interface as the source IP address for all TACACS/TACACS+ packets from the
Layer 3 switch. For configuration details, refer to Brocade ICX 6650 Layer 3 Routing Configuration Guide.
Displaying TACACS/TACACS+ statistics and
configuration information
The show aaa command displays information about all TACACS+ and RADIUS servers identified on
the device.
40Brocade ICX 6650 Security Configuration Guide
The following table describes the TACACS/TACACS+ information displayed by the show aaa
command.
53-1002601-01
RADIUS security
TABLE 6Output of the show aaa command for TACACS/TACACS+
FieldDescription
Tacacs+ keyThe setting configured with the tacacs-server key command. At the Super User privilege level,
the actual text of the key is displayed. At the other privilege levels, a string of periods (....) is
displayed instead of the text.
Tacacs+ retriesThe setting configured with the tacacs-server retransmit command.
Tacacs+ timeoutThe setting configured with the tacacs-server timeout command.
Tacacs+
dead-time
Tacacs+ ServerFor each TACACS/TACACS+ server, the IP address, port, and the following statistics are
The setting configured with the tacacs-server dead-time command.
displayed:
• opens - Number of times the port was opened for communication with the server
• closes - Number of times the port was closed normally
• timeouts - Number of times port was closed due to a timeout
• errors - Number of times an error occurred while opening the port
• packets in - Number of packets received from the server
• packets out - Number of packets sent to the server
connectionThe current connection status. This can be “no connection” or “connection active”.
RADIUS security
You can use a Remote Authentication Dial In User Service (RADIUS) server to secure the following
types of access to the Brocade Layer 2 switch or Layer 3 switch:
• Teln et access
• SSH access
• Access to the Privileged EXEC level and CONFIG levels of the CLI
RADIUS authentication, authorization, and accounting
When RADIUS authentication is implemented, the Brocade device consults a RADIUS server to
verify user names and passwords. You can optionally configure RADIUS authorization, in which the
Brocade device consults a list of commands supplied by the RADIUS server to determine whether a
user can execute a command he or she has entered, as well as accounting, which causes the
Brocade device to log information on a RADIUS accounting server when specified events occur on
the device.
RADIUS authentication
When RADIUS authentication takes place, the following events occur.
1. A user attempts to gain access to the Brocade device by doing one of the following:
• Logging into the device using Telnet or SSH
• Entering the Privileged EXEC level or CONFIG level of the CLI
2. The user is prompted for a username and password.
4. The Brocade device sends a RADIUS Access-Request packet containing the username and
5. The RADIUS server validates the Brocade device using a shared secret (the RADIUS key).
6. The RADIUS server looks up the username in its database.
7.If the username is found in the database, the RADIUS server validates the password.
8. If the password is valid, the RADIUS server sends an Access-Accept packet to the Brocade
9. The user is authenticated, and the information supplied in the Access-Accept packet for the
password to the RADIUS server.
device, authenticating the user. Within the Access-Accept packet are three Brocade
vendor-specific attributes that indicate:
• The privilege level of the user
• A list of commands
• Whether the user is allowed or denied usage of the commands in the list
The last two attributes are used with RADIUS authorization, if configured.
user is stored on the Brocade device. The user is granted the specified privilege level. If you
configure RADIUS authorization, the user is allowed or denied usage of the commands in the
list.
RADIUS authorization
When RADIUS authorization takes place, the following events occur.
1. A user previously authenticated by a RADIUS server enters a command on the Brocade device.
2. The Brocade device looks at its configuration to see if the command is at a privilege level that
requires RADIUS command authorization.
3. If the command belongs to a privilege level that requires authorization, the Brocade device
looks at the list of commands delivered to it in the RADIUS Access-Accept packet when the
user was authenticated. (Along with the command list, an attribute was sent that specifies
whether the user is permitted or denied usage of the commands in the list.)
After RADIUS authentication takes place, the command list resides on the Brocade device. The
RADIUS server is not consulted again once the user has been authenticated. This means that
any changes made to the user command list on the RADIUS server are not reflected until the
next time the user is authenticated by the RADIUS server, and the new command list is sent to
the Brocade device.
4. If the command list indicates that the user is authorized to use the command, the command is
executed.
RADIUS accounting
RADIUS accounting works as follows.
1. One of the following events occur on the Brocade device:
• A user logs into the management interface using Telnet or SSH
• A user enters a command for which accounting has been configured
• A system event occurs, such as a reboot or reloading of the configuration file
42Brocade ICX 6650 Security Configuration Guide
53-1002601-01
RADIUS security
2. The Brocade device checks its configuration to see if the event is one for which RADIUS
accounting is required.
3. If the event requires RADIUS accounting, the Brocade device sends a RADIUS Accounting Start
packet to the RADIUS accounting server, containing information about the event.
4. The RADIUS accounting server acknowledges the Accounting Start packet.
5. The RADIUS accounting server records information about the event.
6. When the event is concluded, the Brocade device sends an Accounting Stop packet to the
RADIUS accounting server.
7.The RADIUS accounting server acknowledges the Accounting Stop packet.
AAA operations for RADIUS
The following table lists the sequence of authentication, authorization, and accounting operations
that take place when a user gains access to a Brocade device that has RADIUS security configured.
TABLE 7AAA operations for RADIUS
User actionApplicable AAA operations
Us er a ttemp ts to ga in acce ss t o the
Privileged EXEC and CONFIG levels
of the CLI
User logs in using Telnet/SSHLogin authentication:
User logs out of Telnet/SSH
session
User enters system commands
(for example, reload, boot system)
User enters the command:
[no] aaa accounting system default
start-stop method-list
AAA security for commands pasted Into the running-config
If AAA security is enabled on the device, commands pasted into the running-config are subject to
the same AAA operations as if they were entered manually.
When you paste commands into the running-config, and AAA command authorization or
accounting, or both, are configured on the device, AAA operations are performed on the pasted
commands. The AAA operations are performed before the commands are actually added to the
running-config. The server performing the AAA operations should be reachable when you paste the
commands into the running-config file. If the device determines that a pasted command is invalid,
AAA operations are halted on the remaining commands. The remaining commands may not be
executed if command authorization is configured.
Since RADIUS command authorization relies on a list of commands received from the RADIUS server
when authentication is performed, it is important that you use RADIUS authentication when you also
use RADIUS command authorization.
RADIUS configuration considerations
• You must deploy at least one RADIUS server in your network.
• Brocade devices support authentication using up to eight RADIUS servers, including those
used for 802.1X authentication and for management. The device tries to use the servers in the
order you add them to the device configuration. If one RADIUS server times out (does not
respond), the Brocade device tries the next one in the list. Servers are tried in the same
sequence each time there is a request.
• You can optionally configure a RADIUS server as a port server, indicating that the server will be
used only to authenticate users on ports to which it is mapped, as opposed to globally
authenticating users on all ports of the device. In earlier releases, all configured RADIUS
servers are “global” servers and apply to users on all ports of the device. Refer to “RADIUS
server per port” on page 48.
• You can map up to eight RADIUS servers to each port on the Brocade device. The port will
authenticate users using only the RADIUS servers to which it is mapped. If there are no RADIUS
servers mapped to a port, it will use the “global” servers for authentication. In earlier releases,
all RADIUS servers are “global” servers and cannot be bound to individual ports. Refer to
“RADIUS server to individual ports mapping” on page 49.
• You can select only one primary authentication method for each type of access to a device (CLI
through Telnet, CLI Privileged EXEC and CONFIG levels). For example, you can select RADIUS as
the primary authentication method for Telnet CLI access, but you cannot also select TACACS+
authentication as the primary method for the same type of access. However, you can configure
backup authentication methods for each access type.
44Brocade ICX 6650 Security Configuration Guide
53-1002601-01
RADIUS security
NOTE
Configuring RADIUS
Follow the procedure given below to configure a Brocade device for RADIUS.
1. Configure Brocade vendor-specific attributes on the RADIUS server. Refer to “Brocade-specific
attributes on the RADIUS server” on page 45.
2. Identify the RADIUS server to the Brocade device. Refer to “Identifying the RADIUS server to the
Brocade device” on page 47.
3. Optionally specify different servers for individual AAA functions. Refer to “Specifying different
servers for individual AAA functions” on page 48.
4. Optionally configure the RADIUS server as a “port only” server. Refer to “RADIUS server per
port” on page 48.
5. Optionally bind the RADIUS servers to ports on the Brocade device. Refer to “RADIUS server to
individual ports mapping” on page 49.
6. Set RADIUS parameters. Refer to “RADIUS parameters” on page 50.
7.Configure authentication-method lists. Refer to “Setting authentication-method lists for
RADIUS” on page 51.
8. Optionally configure RADIUS authorization. Refer to “RADIUS authorization” on page 53.
9. Optionally configure RADIUS accounting. “RADIUS accounting” on page 55.
Brocade-specific attributes on the RADIUS server
For all Brocade devices, RADIUS Challenge is supported for 802.1x authentication but not for login
authentication.
During the RADIUS authentication process, if a user supplies a valid username and password, the
RADIUS server sends an Access-Accept packet to the Brocade device, authenticating the user.
Within the Access-Accept packet are three Brocade vendor-specific attributes that indicate:
• The privilege level of the user
• A list of commands
• Whether the user is allowed or denied usage of the commands in the list
You must add these three Brocade vendor-specific attributes to your RADIUS server configuration,
and configure the attributes in the individual or group profiles of the users that will access the
Brocade device.
Brocade Vendor-ID is 1991, with Vendor-Type 1. The following table describes the Brocade
vendor-specific attributes.
TABLE 8Brocade vendor-specific attributes for RADIUS
Attribute nameAttribute IDData typeDescription
foundry-privilege-level1integerSpecifies the privilege level for the user. This
foundry-command-string2stringSpecifies a list of CLI commands that are
foundry-command-exception-flag3integerSpecifies whether the commands indicated by
foundry-access-list5stringSpecifies the access control list to be used for
foundry-MAC-authent-needs-802x6integerSpecifies whether or not 802.1x authentication is
attribute can be set to one of the following:
• 0 - Super User level – Allows complete
read-and-write access to the system. This is
generally for system administrators and is
the only management privilege level that
allows you to configure passwords.
• 4 - Port Configuration level – Allows
read-and-write access for specific ports but
not for global (system-wide) parameters.
• 5 - Read Only level – Allows access to the
Privileged EXEC mode and User EXEC mode
of the CLI but only with read access.
permitted or denied to the user when RADIUS
authorization is configured.
The commands are delimited by semi-colons (;).
You can specify an asterisk (*) as a wildcard at
the end of a command string.
For example, the following command list
specifies all show and debug ip commands, as
well as the write terminal command:
show *; debug ip *; write term*
the foundry-command-string attribute are
permitted or denied to the user. This attribute can
be set to one of the following:
• 0 - Permit execution of the commands
indicated by foundry-command-string, deny
all other commands.
• 1 - Deny execution of the commands
indicated by foundry-command-string,
permit all other commands.
RADIUS authorization. Enter the access control
list in the following format.
Specifying different servers for individual AAA functions
In a RADIUS configuration, you can designate a server to handle a specific AAA task. For example,
you can designate one RADIUS server to handle authorization and another RADIUS server to
handle accounting. You can specify individual servers for authentication and accounting, but not
for authorization. You can set the RADIUS key for each server.
To specify different RADIUS servers for authentication, authorization, and accounting, enter
commands such as the following.
The default parameter causes the server to be used for all AAA functions.
After authentication takes place, the server that performed the authentication is used for
authorization and accounting. If the authenticating server cannot perform the requested function,
then the next server in the configured list of servers is tried; this process repeats until a server that
can perform the requested function is found, or every server in the configured list has been tried.
You can optionally configure a RADIUS server per port, indicating that it will be used only to
authenticate users on ports to which it is mapped. A RADIUS server that is not explicitly configured
as a RADIUS server per port is a global server, and can be used to authenticate users on ports to
which no RADIUS servers are mapped.
RADIUS server per port configuration notes
• This feature works with 802.1X and multi-device port authentication only.
• You can define up to eight RADIUS servers per Brocade device.
• RADIUS ser vers 10.10.10.103 and 10.10.10.104 will be used only to authenticate users on
ports to which the servers are mapped. To map a RADIUS server to a port, refer to “RADIUS
server to individual ports mapping” on page 49.
48Brocade ICX 6650 Security Configuration Guide
53-1002601-01
RADIUS security
• RADIUS ser vers 10.10.10.105 and 10.10.10.106 will be used to authenticate users on ports to
which no RADIUS servers are mapped. For example, port e 9, to which no RADIUS servers are
mapped, will send a RADIUS request to the first configured RADIUS server, 10.10.10.105. If
the request fails, it will go to the second configured RADIUS server, 10.10.10.106. It will not
send requests to 10.10.10.103 or 10.10.10.104, since these servers are configured as port
servers.
The auth-port number parameter is the Authentication port number; it is an optional parameter.
The default is 1645.
The acct-port number parameter is the Accounting port number; it is an optional parameter. The
default is 1646.
The default key string dot1x parameter indicates that this RADIUS server supports the 802.1X
standard. A RADIUS server that supports the 802.1X standard can also be used to authenticate
non-802.1X authentication requests.
The port-only parameter is optional and specifies that the server will be used only to authenticate
users on ports to which it is mapped.
RADIUS server to individual ports mapping
You can map up to eight RADIUS servers to each port on the Brocade device. The port will
authenticate users using only the RADIUS servers to which the port is mapped. If there are no
RADIUS servers mapped to a port, it will use the “global” servers for authentication.
As in previous releases, a port goes through the list of servers in the order in which it was mapped
or configured, until a server that can perform the requested function is found, or until every server
in the list has been tried.
RADIUS server-to-ports configuration notes
• This feature works with 802.1X and multi-device port authentication only.
• You can map a RADIUS server to a physical port only. You cannot map a RADIUS server to a VE.
RADIUS server-to-ports configuration example and command syntax
To map a RADIUS server to a port, enter commands such as the following.
Brocade(config)# int e 3
Brocade(config-if-e1000-3)# dot1x port-control auto
Brocade(config-if-e1000-3)# use-radius-server 10.10.10.103
Brocade(config-if-e1000-3)# use-radius-server 10.10.10.110
With the above configuration, port e 3 would send a RADIUS request to 10.10.10.103 first, since it
is the first server mapped to the port. If it fails, it will go to 10.10.10.110.
You can set the following parameters in a RADIUS configuration:
• RADIUS key – This parameter specifies the value that the Brocade device sends to the RADIUS
• Retransmit interval – This parameter specifies how many times the Brocade device will resend
• Timeout – This parameter specifies how many seconds the Brocade device waits for a
Setting the RADIUS key
The key parameter in the radius-server command is used to encrypt RADIUS packets before they
are sent over the network. The value for the key parameter on the Brocade device should match the
one configured on the RADIUS server. The key can be from 1 – 32 characters in length and cannot
include any space characters.
server when trying to authenticate user access.
an authentication request when the RADIUS server does not respond. The retransmit value
can be from 1 – 5 times. The default is 3 times.
response from a RADIUS server before either retrying the authentication request, or
determining that the RADIUS servers are unavailable and moving on to the next authentication
method in the authentication-method list. The timeout can be from 1 – 15 seconds. The
default is 3 seconds.
To specify a RADIUS server key, enter a command such as the following.
Brocade(config)# radius-server key mirabeau
Syntax: radius-server key [0 | 1] string
When you display the configuration of the Brocade device, the RADIUS key is encrypted.
Encryption of the RADIUS keys is done by default. The 0 parameter disables encryption. The 1
parameter is not required; it is provided for backwards compatibility.
Setting the retransmission limit
The retransmit parameter specifies the maximum number of retransmission attempts. When an
authentication request times out, the Brocade software will retransmit the request up to the
maximum number of retransmissions configured. The default retransmit value is 3 retries. The
range of retransmit values is from 1 – 5.
To set the RADIUS retransmit limit, enter a command such as the following.
Brocade(config)# radius-server retransmit 5
Syntax: radius-server retransmit number
50Brocade ICX 6650 Security Configuration Guide
53-1002601-01
RADIUS security
Setting the timeout parameter
The timeout parameter specifies how many seconds the Brocade device waits for a response from
the RADIUS server before either retrying the authentication request, or determining that the
RADIUS server is unavailable and moving on to the next authentication method in the
authentication-method list. The timeout can be from 1 – 15 seconds. The default is 3 seconds.
Brocade(config)# radius-server timeout 5
Syntax: radius-server timeout number
Setting RADIUS over IPv6
Brocade devices support the ability to send RADIUS packets over an IPv6 network.
To enable the Brocade device to send RADIUS packets over IPv6, enter a command such as the
following at the Global CONFIG level of the CLI.
The ipv6-host address is the IPv6 address of the RADIUS server. When you enter the IPv6 host
address, you do not need to specify the prefix length. A prefix length of 128 is implied.
Setting authentication-method lists for RADIUS
You can use RADIUS to authenticate Telnet/SSH access and access to Privileged EXEC level and
CONFIG levels of the CLI. When configuring RADIUS authentication, you create
authentication-method lists specifically for these access methods, specifying RADIUS as the
primary authentication method.
Within the authentication-method list, RADIUS is specified as the primary authentication method
and up to six backup authentication methods are specified as alternates. If RADIUS authentication
fails due to an error, the device tries the backup authentication methods in the order they appear in
the list.
When you configure authentication-method lists for RADIUS, you must create a separate
authentication-method list for Telnet or SSH CLI access and for CLI access to the Privileged EXEC
level and CONFIG levels of the CLI.
To create an authentication-method list that specifies RADIUS as the primary authentication
method for securing Telnet access to the CLI.
The commands above cause RADIUS to be the primary authentication method for securing Telnet
access to the CLI. If RADIUS authentication fails due to an error with the server, local authentication
is used instead.
To create an authentication-method list that specifies RADIUS as the primary authentication
method for securing access to Privileged EXEC level and CONFIG levels of the CLI.
Brocade(config)# aaa authentication enable default radius local none
The command above causes RADIUS to be the primary authentication method for securing access
to Privileged EXEC level and CONFIG levels of the CLI. If RADIUS authentication fails due to an error
with the server, local authentication is used instead. If local authentication fails, no authentication
is used; the device automatically permits access.
The enable | login parameter specifies the type of access this authentication-method list controls.
You can configure one authentication-method list for each type of access.
The method1 parameter specifies the primary authentication method. The remaining optional
method parameters specify additional methods to try if an error occurs with the primary method. A
method can be one of the values listed in the Method Parameter column in the following table.
TABLE 9Authentication method values
Method parameterDescription
lineAuthenticate using the password you configured for Telnet access. The Telnet password is
enableAuthenticate using the password you configured for the Super User privilege level. This
localAuthenticate using a local user name and password you configured on the device. Local
tacacsAuthenticate using the database on a TACACS server. You also must identify the server to
tacacs+Authenticate using the database on a TACACS+ server. You also must identify the server to
radiusAuthenticate using the database on a RADIUS server. You also must identify the server to
noneDo not use any authentication method. The device automatically permits access.
[method5] [method6] [method7]
configured using the enable telnet password… command. Refer to “Setting a Telnet
password” on page 13.
password is configured using the enable super-user-password… command. Refer to
“Setting passwords for management privilege levels” on page 14.
user names and passwords are configured using the username… command. Refer to
“Local user account configuration” on page 21.
the device using the tacacs-server command.
the device using the tacacs-server command.
the device using the radius-server command.
For examples of how to define authentication-method lists for types of authentication other than
RADIUS, refer to “Authentication-method lists” on page 58.
52Brocade ICX 6650 Security Configuration Guide
53-1002601-01
RADIUS security
Entering privileged EXEC mode after a Telnet or SSH login
By default, a user enters User EXEC mode after a successful login through Telnet or SSH.
Optionally, you can configure the device so that a user enters Privileged EXEC mode after a Telnet
or SSH login. To do this, use the following command.
The user privilege level is based on the privilege level granted during login.
Configuring enable authentication to prompt for password only
If Enable authentication is configured on the device, when a user attempts to gain Super User
access to the Privileged EXEC and CONFIG levels of the CLI, by default he or she is prompted for a
username and password. You can configure the Brocade device to prompt only for a password. The
device uses the username entered at login, if one is available. If no username was entered at login,
the device prompts for both username and password.
To configure the Brocade device to prompt only for a password when a user attempts to gain Super
User access to the Privileged EXEC and CONFIG levels of the CLI.
Brocade devices support RADIUS authorization for controlling access to management functions in
the CLI. Two kinds of RADIUS authorization are supported:
• Exec authorization determines a user privilege level when they are authenticated
• Command authorization consults a RADIUS server to get authorization for commands entered
by the user
Configuring EXEC authorization
When RADIUS EXEC authorization is performed, the Brocade device consults a RADIUS server to
determine the privilege level of the authenticated user. To configure RADIUS EXEC authorization on
the Brocade device, enter the following command.
If the aaa authorization exec default radius command exists in the configuration, following
successful authentication the device assigns the user the privilege level specified by the
foundry-privilege-level attribute received from the RADIUS server. If the aaa authorization exec
default radius command does not exist in the configuration, then the value in the
foundry-privilege-level attribute is ignored, and the user is granted Super User access.
Also note that in order for the aaa authorization exec default radius command to work, either the
aaa authentication enable default radius command, or the aaa authentication login privilege-mode
command must also exist in the configuration.
Configuring command authorization
When RADIUS command authorization is enabled, the Brocade device consults the list of
commands supplied by the RADIUS server during authentication to determine whether a user can
execute a command he or she has entered.
You enable RADIUS command authorization by specifying a privilege level whose commands
require authorization. For example, to configure the Brocade device to perform authorization for the
commands available at the Super User privilege level (that is; all commands on the device), enter
the following command.
The privilege-level parameter can be one of the following:
• 0 – Authorization is performed (that is, the Brocade device looks at the command list) for
commands available at the Super User level (all commands)
• 4 – Authorization is performed for commands available at the Port Configuration level
(port-config and read-only commands)
• 5 – Authorization is performed for commands available at the Read Only level (read-only
commands)
RADIUS command authorization can be performed only for commands entered from Telnet or SSH
sessions, or from the console.
Since RADIUS command authorization relies on the command list supplied by the RADIUS server
during authentication, you cannot perform RADIUS authorization without RADIUS authentication.
Command authorization and accounting for console commands
The Brocade device supports command authorization and command accounting for CLI commands
entered at the console. To configure the device to perform command authorization and command
accounting for console commands, enter the following.
Brocade(config)# enable aaa console
54Brocade ICX 6650 Security Configuration Guide
53-1002601-01
RADIUS security
CAUTION
NOTE
Syntax: enable aaa console
If you have previously configured the device to perform command authorization using a RADIUS
server, entering the enable aaa console command may prevent the execution of any subsequent
commands entered on the console.
This happens because RADIUS command authorization requires a list of allowable commands
from the RADIUS server. This list is obtained during RADIUS authentication. For console sessions,
RADIUS authentication is performed only if you have configured Enable authentication and
specified RADIUS as the authentication method (for example, with the aaa authentication enable
default radius command). If RADIUS authentication is never performed, the list of allowable
commands is never obtained from the RADIUS server. Consequently, there would be no allowable
commands on the console.
RADIUS accounting
Brocade devices support RADIUS accounting for recording information about user activity and
system events. When you configure RADIUS accounting on a Brocade device, information is sent to
a RADIUS accounting server when specified events occur, such as when a user logs into the device
or the system is rebooted.
Configuring RADIUS accounting for Telnet/SSH (Shell) access
To send an Accounting Start packet to the RADIUS accounting server when an authenticated user
establishes a Telnet or SSH session on the Brocade device, and an Accounting Stop packet when
the user logs out.
You can configure RADIUS accounting for CLI commands by specifying a privilege level whose
commands require accounting. For example, to configure the Brocade device to perform RADIUS
accounting for the commands available at the Super User privilege level (that is; all commands on
the device), enter the following command.
An Accounting Start packet is sent to the RADIUS accounting server when you enters a command,
and an Accounting Stop packet is sent when the service provided by the command is completed.
If authorization is enabled, and the command requires authorization, then authorization is
performed before accounting takes place. If authorization fails for the command, no accounting
takes place.
The privilege-level parameter can be one of the following:
• 0 – Records commands available at the Super User level (all commands)
• 4 – Records commands available at the Port Configuration level (port-config and read-only
• 5 – Records commands available at the Read Only level (read-only commands)
Configuring RADIUS accounting for system events
You can configure RADIUS accounting to record when system events occur on the Brocade device.
System events include rebooting and when changes to the active configuration are made.
The following command causes an Accounting Start packet to be sent to the RADIUS accounting
server when a system event occurs, and a Accounting Stop packet to be sent when the system
event is completed.
Brocade(config)# aaa accounting system default start-stop radius
Configuring an interface as the source for all
RADIUS packets
You can designate the lowest-numbered IP address configured an Ethernet port, loopback
interface, or virtual interface as the source IP address for all RADIUS packets from the Layer 3
switch. For configuration details, refer to Brocade ICX 6650 Layer 3 Routing Configuration Guide.
Displaying RADIUS configuration information
The show aaa command displays information about all TACACS/TACACS+ and RADIUS servers
identified on the device.
Example
56Brocade ICX 6650 Security Configuration Guide
The following table describes the RADIUS information displayed by the show aaa command.
53-1002601-01
RADIUS security
TABLE 10Output of the show aaa command for RADIUS
FieldDescription
Radius keyThe setting configured with the radius-server key command. At the Super User privilege level,
the actual text of the key is displayed. At the other privilege levels, a string of periods (....) is
displayed instead of the text.
Radius retriesThe setting configured with the radius-server retransmit command.
Radius timeoutThe setting configured with the radius-server timeout command.
Radius dead-timeThe setting configured with the radius-server dead-time command.
Radius ServerFor each RADIUS server, the IP address, and the following statistics are displayed:
Auth PortRADIUS authentication port number (default 1645)
Acct PortRADIUS accounting port number (default 1646)
• opens - Number of times the port was opened for communication with the server
• closes - Number of times the port was closed normally
• timeouts - Number of times port was closed due to a timeout
• errors - Number of times an error occurred while opening the port
• packets in - Number of packets received from the server
• packets out - Number of packets sent to the server
connectionThe current connection status. This can be “no connection” or “connection active”.
To implement one or more authentication methods for securing access to the device, you configure
authentication-method lists that set the order in which the authentication methods are consulted.
In an authentication-method list, you specify the access method (Telnet, SNMP, and so on) and the
order in which the device tries one or more of the following authentication methods:
• Local Telnet login password
• Local password for the Super User privilege level
• Local user accounts configured on the device
• Database on a TACACS or TACACS+ server
• Database on a RADIUS server
• No authentication
The TACACS/TACACS+, RADIUS, and Telnet login password authentication methods are not
supported for SNMP access.
To authenticate Telnet access to the CLI, you also must enable the authentication by entering the
enable telnet authentication command at the global CONFIG level of the CLI.
You do not need an authentication-method list to secure access based on ACLs or a list of IP
addresses. Refer to “ACL usage to restrict remote access” on page 3 or “Remote access restrictions”
on page 6.
In an authentication-method list for a particular access method, you can specify up to seven
authentication methods. If the first authentication method is successful, the software grants
access and stops the authentication process. If the access is rejected by the first authentication
method, the software denies access and stops checking.
However, if an error occurs with an authentication method, the software tries the next method on
the list, and so on. For example, if the first authentication method is the RADIUS server, but the link
to the server is down, the software will try the next authentication method in the list.
If an authentication method is working properly and the password (and user name, if applicable) is
not known to that method, this is not an error. The authentication attempt stops, and the user is
denied access.
The software will continue this process until either the authentication method is passed or the
software reaches the end of the method list. If the Super User level password is not rejected after
all the access methods in the list have been tried, access is granted.
Examples of authentication-method lists
The following examples show how to configure authentication-method lists. In these examples, the
primary authentication method for each is “local”. The device will authenticate access attempts
using the locally configured usernames and passwords.
58Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Authentication-method lists
NOTE
NOTE
To configure an authentication-method list for SNMP, enter a command such as the following.
Brocade(config)# aaa authentication snmp-server default local
This command allows certain incoming SNMP SET operations to be authenticated using the locally
configured usernames and passwords. When this command is enabled, community string
validation is not performed for incoming SNMP V1 and V2c packets. This command takes effect as
long as the first varbind for SNMP packets is set to one of the following:
Certain SNMP objects need additional validation. These objects include but are not limited to:
snAgReload, snAgWriteNVRAM, snAgConfigFromNVRAM, snAgImgLoad, snAgCfgLoad and
snAgGblTelnetPassword. For more information, see snAgGblPassword in the IronWare MIB
Reference Guide.
If AAA is set up to check both the username and password, the string contains the username,
followed by a space then the password. If AAA is set up to authenticate with the current Enable or
Line password, the string contains the password only.
Note that the above configuration can be overridden by the command no snmp-server pw-check,
which disables password checking for SNMP SET requests.
Example 3
To configure an authentication-method list for the Privileged EXEC and CONFIG levels of the CLI,
enter the following command.
Brocade(config)# aaa authentication enable default local
This command configures the device to use the local user accounts to authenticate attempts to
access the Privileged EXEC and CONFIG levels of the CLI.
Example 4
To configure the device to consult a RADIUS server first to authenticate attempts to access the
Privileged EXEC and CONFIG levels of the CLI, then consult the local user accounts if the RADIUS
server is unavailable, enter the following command.
Brocade(config)# aaa authentication enable default radius local
Command Syntax
The following is the command syntax for the preceding examples.
The snmp-server | enable | login parameter specifies the type of access this
authentication-method list controls. You can configure one authentication-method list for each type
of access.
TACACS/TACACS+ and RADIUS are supported only with the enable and login parameters.
The method1 parameter specifies the primary authentication method. The remaining optional
method parameters specify additional methods to try if an error occurs with the primary method. A
method can be one of the values listed in the Method Parameter column in the following table.
TABLE 11Authentication method values
Method parameterDescription
lineAuthenticate using the password you configured for Telnet access. The Telnet password is
enableAuthenticate using the password you configured for the Super User privilege level. This
localAuthenticate using a local user name and password you configured on the device. Local
tacacsAuthenticate using the database on a TACACS server. You also must identify the server to
tacacs+Authenticate using the database on a TACACS+ server. You also must identify the server to
radiusAuthenticate using the database on a RADIUS server. You also must identify the server to
noneDo not use any authentication method. The device automatically permits access.
configured using the enable telnet password… command. Refer to “Setting a Telnet
password” on page 13.
password is configured using the enable super-user-password… command. Refer to
“Setting passwords for management privilege levels” on page 14.
user names and passwords are configured using the username… command. Refer to “Local
user account configuration” on page 21.
the device using the tacacs-server command.
the device using the tacacs-server command.
the device using the radius-server command. Refer to “RADIUS security” on page 41.
TCP Flags - edge port security
The edge port security feature works in combination with IP ACL rules, and supports all 6 TCP flags
present in the offset 13 of the TCP header:
• +|- urg = Urgent
• +|- ack = Acknowledge
• +|- psh = Push
• +|- rst = Reset
• +|- syn = Synchronize
• +|- fin = Finish
TCP flags can be combined with other ACL functions (such as dscp-marking and traffic policies),
giving you greater flexibility when designing ACLs.
The TCP flags feature offers two options, match-all and match-any:
• Match-any - Indicates that incoming TCP traffic must be matched against any of the TCP flags
configured as part of the match-any ACL rule. In CAM hardware, the number of ACL rules will
match the number of configured flags.
• Match-all - Indicates that incoming TCP traffic must be matched against all of the TCP flags
configured as part of the match-all ACL rule. In CAM hardware, there will be only one ACL rule
for all configured flags.
This command configures a single rule in CAM hardware. This rule will contain all of the configured
TCP flags (urg, ack, syn, and rst).
Using TCP Flags in combination with other ACL features
The TCP Flags feature has the added capability of being combined with other ACL features.
Example
Brocade(config-ext-nACL)# permit tcp any any match-all +urg +ack +syn -rst
traffic-policy test
This command configures the ACL to match incoming traffic with the TCP Flags urg, ack, and syn
and also to apply the traffic policy (rate, limit, etc.) to the matched traffic.
Brocade(config-ext-nACL)# permit tcp any any match-all +urg +ack +syn -rst tos
normal
This command configures the ACL to match incoming traffic with the flags urg, ack, and syn, and
also sets the tos bit to normal when the traffic exits the device.
TCP Flags combines the functionality of older features such as TCP Syn Attack and TCP Establish.
Avoid configuring these older features on a port where you have configured TCP Flags. TCP Flags can
perform all of the functions of TCP Syn Attack and TCP Establish, and more. However, if TCP Syn
Attack is configured on a port along with TCP Flags, TCP Syn Attack will take precedence.
If an ACL clause with match-any exists, and the system runs out of CAM, if the total number of TCP
rules to TCP Flags will not fit within 1021 entries (the maximum rules allowed per device), then none
of the TCP Flag rules will be programmed into the CAM hardware.
If a range option and match-any TCP-flags are combined in the same ACL, the total number of rules
will be calculated as: Total number of rules in CAM hardware = (number of rules for range)* (number
of rules for match-any TCP-flags).
Tab le 12 lists SSH2 and Secure Copy features supported on Brocade ICX 6650.
TABLE 12Supported SSH2 and Secure Copy features
FeatureBrocade ICX 6650
Secure Shell (SSH) version 2Yes
AES encryption for SSH2Yes
Optional parameters for SSH2Yes
Using secure copy (SCP) with SSH2Yes
Filtering SSH access using ACLsYes
Terminating an active SSH connectionYes
SSH clientYes
SSH version 2 overview
2
Secure Shell (SSH) is a mechanism for allowing secure remote access to management functions on
a Brocade device. SSH provides a function similar to Telnet. Users can log into and configure the
device using a publicly or commercially available SSH client program, just as they can with Telnet.
However, unlike Telnet, which provides no security, SSH provides a secure, encrypted connection to
the device.
The Brocade SSH2 implementation is compatible with all versions of the SSH2 protocol (2.1, 2.2,
and so on). At the beginning of an SSH session, the Brocade device negotiates the version of SSH2
to be used. The highest version of SSH2 supported by both the Brocade device and the client is the
version that is used for the session. Once the SSH2 version is negotiated, the encryption algorithm
with the highest security ranking is selected to be used for the session.
Brocade devices also support Secure Copy (SCP) for securely transferring files between a Brocade
device and SCP-enabled remote hosts.
The SSH feature includes software that is copyright Allegro Software Development Corporation.
SSH2 is supported in the Layer 2 and Layer 3 codes.
SSH2 is a substantial revision of Secure Shell, comprising the following hybrid protocols and
definitions:
The following SSH clients have been tested with SSH2:
• SSH Secure Shell 3.2.3
• Van Dyke SecureCRT 5.2.2
• F-Secure SSH Client 5.3 and 6.0
• PuTTY 0.60
• OpenSSH 4.3p2
• Brocade SSH Client
Supported SSH client public key sizes are 1024 bits for DSA keys, and 1024 or 2048 bits for RSA
keys.
SSH2 supported features
SSH2 (Secure Shell version 2 protocol) provides an SSH server and an SSH client. The SSH server
allows secure remote access management functions on a Brocade device. SSH provides a function
that is similar to Telnet, but unlike Telnet, SSH provides a secure, encrypted connection.
Brocade SSH2 support includes the following:
• Key exchange methods are diffie-hellman-group1-sha1
• The supported public key algorithms are ssh-dss and ssh-rsa.
• Encryption is provided with 3des-cbc, aes128-cbc, aes192-cbc or aes256-cbc. AES encryption
has been adopted by the U.S. Government as an encryption standard.
• Data integrity is ensured with hmac-sha1.
• Supported authentication methods are Password and publickey.
• Five inbound SSH connection at one time are supported.
• One outbound SSH is supported.
SSH2 unsupported features
The following are not supported with SSH2:
• Compression
• TCP/IP port forwarding, X11 forwarding, and secure file transfer
• SSH version 1
64Brocade ICX 6650 Security Configuration Guide
53-1002601-01
SSH2 authentication types
The Brocade implementation of SSH2 supports the following types of user authentication:
• DSA challenge-response authentication, where a collection of public keys are stored on the
device. Only clients with a private key that corresponds to one of the stored public keys can
gain access to the device using SSH.
• RSA challenge-response authentication, where a collection of public keys are stored on the
device. Only clients with a private key that corresponds to one of the stored public keys can
gain access to the device using SSH.
• Password authentication, where users attempting to gain access to the device using an SSH
client are authenticated with passwords stored on the device or on a TACACS or TACACS+
server or a RADIUS server.
Configuring SSH2
You can configure the device to use any combination of these authentication types. The SSH server
and client negotiate which type to use.
To configure SSH2, follow these steps:
SSH2 authentication types
1. Generate a host Digital Signature Algorithm (DSA) or Really Secure Algorithm (RSA) public and
private key pair for the device.
See the section “Enabling and disabling SSH by generating and deleting host keys” on
page 65.
2. Configure DSA or RSA challenge-response authentication.
See the section “Configuring DSA or RSA challenge-response authentication” on page 67.
3. Set optional parameters.
See the section “Optional SSH parameters” on page 69.
Enabling and disabling SSH by generating and
deleting host keys
To enable SSH, you generate a public and private DSA or RSA host key pair on the device. The SSH
server on the Brocade device uses this host DSA or RSA key pair, along with a dynamically
generated server DSA or RSA key pair, to negotiate a session key and encryption method with the
client trying to connect to it.
While the SSH listener exists at all times, sessions can not be started from clients until a host key is
generated. After a host key is generated, clients can start sessions.
To disable SSH, you delete all of the host keys from the device.
When a host key pair is generated, it is saved to the flash memory of all management modules.
When a host key pair is is deleted, it is deleted from the flash memory of all management modules.
The time to initially generate SSH keys varies depending on the configuration, and can be from a
under a minute to several minutes.
If you have generated SSH keys on the switch, you should delete and regenerate it when you upgrade
or downgrade the software version before ssh session.
Setting the CPU priority for key generation
Generating the key is a resource-intensive operation. You can set the priority for this operation to
high so that the device allocates more CPU time for this operation. So you must use this option only
when the device is in the maintenance window. This option reduces the time taken for key
generation.
To set high priority for the key generation operation, enter the following command:
Brocade(config)#crypto-gen priority high
Syntax: crypto key crypto-gen priority default | high
The default keyword sets the priority as default. The key generation task is handled with the regular
priority.
The high keyword sets the high priority for the key generation task. Use this option only when the
device is in the maintenance window.
Generating and deleting a DSA key pair
To generate a DSA key pair, enter the following command.
Brocade(config)# crypto key generate dsa
To delete the DSA host key pair, enter the following command.
Brocade(config)# crypto key zeroize dsa
Syntax: crypto key generate | zeroize dsa
The generate keyword places a host key pair in the flash memory and enables SSH on the device, if
it is not already enabled.
The zeroize keyword deletes the host key pair from the flash memory. This disables SSH if no other
server host keys exist on the device.
The dsa keyword specifies a DSA host key pair. This keyword is optional. If you do not enter it, the
command crypto key generate generates a DSA key pair by default, and the command crypto key
zeroize works as described in “Deleting DSA and RSA key pairs” on page 67.
Generating and deleting an RSA key pair
To generate an RSA key pair, enter a command such as the following:
The generate keyword places an RSA host key pair in the flash memory and enables SSH on the
device, if it is not already enabled.
The optional [modulus modulus-size] parameter specifies the modulus size of the RSA key pair, in
bits. The valid values for modulus-size are 1024 or 2048. The default value is 1024.
The zeroize keyword deletes the RSA host key pair from the flash memory. This disables SSH if no
other authentication keys exist on the device.
The rsa keyword specifies an RSA host key pair.
Deleting DSA and RSA key pairs
To delete DSA and RSA key pairs from the flash memory, enter the following command:
Brocade(config)# crypto key zeroize
Syntax: crypto key zeroize
The zeroize keyword deletes the host key pair from the flash memory. This disables SSH.
Providing the public key to clients
The host DSA or RSA key pair is stored in the system-config file of the Brocade device. Only the
public key is readable. Some SSH client programs add the public key to the known hosts file
automatically. In other cases, you must manually create a known hosts file and place the public key
of the Brocade device in it.
If you are using SSH to connect to a Brocade device from a UNIX system, you may need to add the
public key on the Brocade device to a “known hosts” file on the client UNIX system; for example,
$HOME/.ssh/known_hosts. The following is an example of an entry in a known hosts file.
Configuring DSA or RSA challenge-response authentication
With DSA or RSA challenge-response authentication, a collection of clients’ public keys are stored
on the Brocade device. Clients are authenticated using these stored public keys. Only clients that
have a private key that corresponds to one of the stored public keys can gain access to the device
using SSH.
When DSA or RSA challenge-response authentication is enabled, the following events occur when a
client attempts to gain access to the device using SSH:
SSH2 authentication types
NOTE
---- BEGIN SSH2 PUBLIC KEY ---Comment: DSA Public Key
AAAAB3NzaC1kc3MAAACBAPY8ZOHY2yFSJA6XYC9HRwNHxaehvx5wOJ0rzZdzoSOXxbET
W6ToHv8D1UJ/
z+zHo9Fiko5XybZnDIaBDHtblQ+Yp7StxyltHnXF1YLfKD1G4T6JYrdH YI14Om
1eg9e4NnCRleaqoZPF3UGfZia6bXrGTQf3gJq2e7Yisk/gF+1VAAAAFQDb8D5cv
wHWTZDPfX0D2s9Rd7NBvQAAAIEAlN92+Bb7D4KLYk3IwRbXblwXdkPggA4pfdtW9v
GfJ0/RHd+NjB4eo1D+0dix6tXwYGN7PKS5R/FXPNwxHPapcj9uL1Jn2AWQ2dsknf+i/FAA
vioUPkmdMc0zuWoSOEsSNhVDtX3WdvVcGcBq9cetzrtOKWOocJmJ80qadxTRHtUAAACB
AN7CY+KKv1gHpRzFwdQm7HK9bb1LAo2KwaoXnadFgeptNBQeSXG1vO+JsvphVMBJc9HS
n24VYtYtsMu74qXviYjziVucWKjjKEb11juqnF0GDlB3VVmxHLmxnAz643WK42Z7dLM5
sY29ouezv4Xz2PuMch5VGPP+CDqzCM4loWgV
---- END SSH2 PUBLIC KEY ----
1. The client sends its public key to the Brocade device.
2. The Brocade device compares the client public key to those stored in memory.
3. If there is a match, the Brocade device uses the public key to encrypt a random sequence of
bytes.
4. The Brocade device sends these encrypted bytes to the client.
5. The client uses its private key to decrypt the bytes.
6. The client sends the decrypted bytes back to the Brocade device.
7.The Brocade device compares the decrypted bytes to the original bytes it sent to the client. If
the two sets of bytes match, it means that the client private key corresponds to an authorized
public key, and the client is authenticated.
Setting up DSA or RSA challenge-response authentication consists of the following steps.
1. Import authorized public keys into the Brocade device.
2. Enable DSA or RSA challenge response authentication.
Importing authorized public keys into the Brocade device
SSH clients that support DSA or RSA authentication normally provide a utility to generate a DSA or
RSA key pair. The private key is usually stored in a password-protected file on the local host; the
public key is stored in another file and is not protected. You must import the client public key for
each client into the Brocade device.
Collect one public key of each key type (DSA and/or RSA) from each client to be granted access to
the Brocade device and place all of these keys into one file. This public key file may contain up to
17 keys. The following is an example of a public key file containing one public key:
Each key in the public key file must begin and end with the first and last lines in this example. If your
client does not include these lines in the public key, you must manually add them.
68Brocade ICX 6650 Security Configuration Guide
Import the authorized public keys into the Brocade device active configuration by loading this
public key file from a TFTP server.
To load a public key file called pkeys.txt from a TFTP server, enter a command such as the following:
Brocade(config)# ip ssh pub-key-file tftp 192.168.1.234 pkeys.txt
53-1002601-01
Optional SSH parameters
Brocade# show ip client-pub-key
---- BEGIN SSH2 PUBLIC KEY ---Comment: DSA Public Key
AAAAB3NzaC1kc3MAAACBAPY8ZOHY2yFSJA6XYC9HRwNHxaehvx5wOJ0rzZdzoSOXxbET
W6ToHv8D1UJ/
z+zHo9Fiko5XybZnDIaBDHtblQ+Yp7StxyltHnXF1YLfKD1G4T6JYrdH YI14Om
1eg9e4NnCRleaqoZPF3UGfZia6bXrGTQf3gJq2e7Yisk/gF+1VAAAAFQDb8D5cv
wHWTZDPfX0D2s9Rd7NBvQAAAIEAlN92+Bb7D4KLYk3IwRbXblwXdkPggA4pfdtW9v
GfJ0/RHd+NjB4eo1D+0dix6tXwYGN7PKS5R/FXPNwxHPapcj9uL1Jn2AWQ2dsknf+i/FAA
vioUPkmdMc0zuWoSOEsSNhVDtX3WdvVcGcBq9cetzrtOKWOocJmJ80qadxTRHtUAAACB
AN7CY+KKv1gHpRzFwdQm7HK9bb1LAo2KwaoXnadFgeptNBQeSXG1vO+JsvphVMBJc9HS
n24VYtYtsMu74qXviYjziVucWKjjKEb11juqnF0GDlB3VVmxHLmxnAz643WK42Z7dLM5
sY29ouezv4Xz2PuMch5VGPP+CDqzCM4loWgV
---- END SSH2 PUBLIC KEY ----
Syntax: ip ssh pub-key-file tftp tftp-server-ip-addrfilename | remove
The tftp-server-ip-addr variable is the IP address of the tftp server that contains the public key file
that you want to import into the Brocade device.
The filename variable is the name of the public key file that you want to import into the Brocade
device.
The remove parameter deletes the public keys from the device.
To display the currently loaded public keys, enter the following command.
Syntax: show ip client-pub-key [begin expression | exclude expression | include expression]
To clear the public keys from the buffers, enter the following command.
Brocade# clear public-key
Syntax: clear public-key
Enabling DSA or RSA challenge-response authentication
DSA and RSA challenge-response authentication is enabled by default. You can disable or
re-enable it manually.
To enable DSA and RSA challenge-response authentication.
Brocade(config)# ip ssh key-authentication yes
To disable DSA and RSA challenge-response authentication.
Brocade(config)# ip ssh key-authentication no
Syntax: ip ssh key-authentication yes | no
Optional SSH parameters
You can adjust the following SSH settings on the Brocade device:
• The number of SSH authentication retries
• The user authentication method the Brocade device uses for SSH connections
• Whether the Brocade device allows users to log in without supplying a password
• The port number for SSH connections
• The SSH login timeout value
• A specific interface to be used as the source for all SSH traffic from the device
• The maximum idle time for SSH sessions
Setting the number of SSH authentication retries
By default, the Brocade device attempts to negotiate a connection with the connecting host three
times. The number of authentication retries can be changed to between 1–5.
For example, the following command changes the number of authentication retries to 5.
Brocade(config)# ip ssh authentication-retries 5
Syntax: ip ssh authentication-retries number
Deactivating user authentication
After the SSH server on the Brocade device negotiates a session key and encryption method with
the connecting client, user authentication takes place. The Brocade implementation of SSH
supports DSA or RSA challenge-response authentication and password authentication.
With DSA or RSA challenge-response authentication, a collection of clients’ public keys are stored
on the Brocade device. Clients are authenticated using these stored public keys. Only clients that
have a private key that corresponds to one of the stored public keys can gain access to the device
using SSH.
With password authentication, users are prompted for a password when they attempt to log into the
device (provided empty password logins are not allowed). If there is no user account that matches
the user name and password supplied by the user, the user is not granted access.
You can deactivate one or both user authentication methods for SSH. Note that deactivating both
authentication methods essentially disables the SSH server entirely.
To disable DSA or RSA challenge-response authentication, enter the following command.
Brocade(config)# ip ssh key-authentication no
Syntax: ip ssh key-authentication yes | no
The default is yes.
To deactivate password authentication, enter the following command.
Brocade(config)# ip ssh password-authentication no
Syntax: ip ssh password-authentication no | yes
The default is yes.
70Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Optional SSH parameters
Enabling empty password logins
By default, empty password logins are not allowed. This means that users with an SSH client are
always prompted for a password when they log into the device. To gain access to the device, each
user must have a user name and password. Without a user name and password, a user is not
granted access.
If you enable empty password logins, users are not prompted for a password when they log in. Any
user with an SSH client can log in without being prompted for a password.
To enable empty password logins, enter the following command.
Brocade(config)# ip ssh permit-empty-passwd yes
Syntax: ip ssh permit-empty-passwd no | yes
Setting the SSH port number
By default, SSH traffic occurs on TCP port 22. You can change this port number. For example, the
following command changes the SSH port number to 2200.
Brocade(config)# ip ssh port 2200
Note that if you change the default SSH port number, you must configure SSH clients to connect to
the new port. Also, you should be careful not to assign SSH to a port that is used by another
service. If you change the SSH port number, Brocade recommends that you change it to a port
number greater than 1024.
Syntax: ip ssh port number
Setting the SSH login timeout value
When the SSH server attempts to negotiate a session key and encryption method with a connecting
client, it waits a maximum of 120 seconds for a response from the client. If there is no response
from the client after 120 seconds, the SSH server disconnects. You can change this timeout value
to between 1–120 seconds. For example, to change the timeout value to 60 seconds, enter the
following command.
Brocade(config)# ip ssh timeout 60
Syntax: ip ssh timeout seconds
Designating an interface as the source for all SSH packets
You can designate a loopback interface, virtual interface, or Ethernet port as the source for all SSH
packets from the device. For more information, refer to Brocade ICX 6650 Layer 3 Routing Configuration Guide.
Configuring the maximum idle time for SSH sessions
By default, SSH sessions do not time out. Optionally, you can set the amount of time an SSH
session can be inactive before the Brocade device closes it. For example, to set the maximum idle
time for SSH sessions to 30 minutes, enter the following command.
Brocade# show ip ssh
Connection Version Encryption Username HMAC Server Hostkey IP Address
Inbound:
1 SSH-2 3des-cbc Raymond hmac-sha1 ssh-dss 10.120.54.2
Outbound:
6 SSH-2 aes256-cbc Steve hmac-sha1 ssh-dss 10.37.77.15
SSH-v2.0 enabled; hostkey: DSA(1024), RSA(2048)
Brocade(config)# ip ssh idle-time 30
Syntax: ip ssh idle-time minutes
If an established SSH session has no activity for the specified number of minutes, the Brocade
device closes it. An idle time of 0 minutes (the default value) means that SSH sessions never time
out. The maximum idle time for SSH sessions is 240 minutes.
Filtering SSH access using ACLs
You can permit or deny SSH access to the Brocade device using ACLs. To use ACLs, first create the
ACLs you want to use. You can specify a numbered standard IPv4 ACL, a named standard IPv4 ACL
Brocade# show who
Console connections:
Established
you are connecting to this session
2 minutes 56 seconds in idle
SSH server status: Enabled
SSH connections (inbound):
1. established, client ip address 10.2.2.1, server hostkey DSA
1 minutes 15 seconds in idle
2. established, client ip address 10.2.2.2, server hostkey RSA
2 minutes 25 seconds in idle
SSH connection (outbound):
3. established, server ip address 10.37.77.15, server hostkey RSA
7 seconds in idle
TABLE 14SSH configuration information (Continued)
FieldDescription
EncryptionThe encryption used for the SSH connection. The following values are
Permit empty passwordEmpty password login is allowed or not allowed.
Authentication methodsThe authentication methods used for SSH. The authentication can have
Authentication retriesThe number of authentication retries. This number can be from 1 to 5.
Login timeout (seconds)SSH login timeout value in seconds. This can be from 0 to 120.
Idle timeout (minutes)SSH idle timeout value in minutes. This can be from 0 to 240.
Strict management VRFStrict management VRF is enabled or disabled.
SCPSCP is enabled or disabled.
SSH IPv4 clientsThe list of IPv4 addresses to which SSH access is allowed. The default is
SSH IPv6 clientsThe list of IPv4 addresses to which SSh access is allowed. Default “All”.
SSH IPv4 access-listThe IPv4 ACL used to permit or deny access using SSH.
SSH IPv6 access-listThe IPv6 ACL used to permit or deny access to device using SSH.
displayed when AES only is enabled:
• AES-256, AES-192, and AES-128 indicate the different AES
methods used for encryption.
• 3-DES indicates 3-DES algorithm is used for encryption.
one or more of the following values:
• Password - indicates that you are prompted for a password when
attempting to log into the device.
• Public-key - indicates that DSA or RSA challenge-response
authentication is enabled.
• Interactive - indicates the interactive authentication si enabled.
“All”.
Displaying additional SSH connection information
The show who command also displays information about SSH connections:
74Brocade ICX 6650 Security Configuration Guide
show who [begin expression | exclude expression | include expression]
53-1002601-01
Secure copy with SSH2
NOTE
Secure Copy (SCP) uses security built into SSH to transfer image and configuration files to and from
the device. SCP automatically uses the authentication methods, encryption algorithm, and data
compression level configured for SSH. For example, if password authentication is enabled for SSH,
the user is prompted for a user name and password before SCP allows a file to be transferred. No
additional configuration is required for SCP on top of SSH.
You can use SCP to copy files on the Brocade device, including the startup configuration and
running configuration files, to or from an SCP-enabled remote host.
Enabling and disabling SCP
SCP is enabled by default and can be disabled. To disable SCP, enter the following command.
Brocade(config)# ip ssh scp disable
Syntax: ip ssh scp disable | enable
Secure copy with SSH2
If you disable SSH, SCP is also disabled.
Secure copy configuration notes
• When using SCP, enter the scp commands on the SCP-enabled client, rather than the console
on the Brocade device.
• Certain SCP client options, including -p and -r, are ignored by the SCP server on the Brocade
device. If an option is ignored, the client is notified.
• An SCP AES copy of the running or start configuration file from the Brocade device to Linux WS
4 or 5 may fail if the configuration size is less than 700 bytes. To work around this issue, use
PuTTY to copy the file.
Example file transfers using SCP
The following are examples of using SCP to transfer files to and from a Brocade device.
Copying a file to the running configuration
To copy a configuration file (c:\cfg\brocade.cfg) to the running configuration file on a Brocade
device at 192.168.1.50 and log in as user terry, enter the following command on the SCP-enabled
client.
Copying the running config uration file to an SCP-enabled client
To copy the running configuration file on the Brocade device to a file called c:\cfg\fdryrun.cfg on
the SCP-enabled client, enter the following command.
Copying the startup configuration file to an SCP-enabled client
To copy the startup configuration file on the Brocade device to a file called c:\cfg\brcdestart.cfg on
the SCP-enabled client, enter the following command.
The ip-address variable is the IP address of the server from which the digital certificate file is
downloaded.
The certificate-filename variable is the file name of the digital certificate that you are importing to
the device.
The scp command can be used when TFTP access is unavailable or not permitted and the
command has an equivalent functionality to the ip ssl certificate-data-file tftp. For more
information on the ip ssl certificate-data-file tftp command, refer to “Importing digital certificates
and RSA private key files” on page 27.
Importing an RSA private key
To import an RSA private key from a client using SCP, enter a command such as the following one:
The ip-address variable is the IP address of the server that contains the private key file.
The key-filename variable is the file name of the private key that you want to import into the device.
The scp command can be used when TFTP access is unavailable or not permitted and the
command has an equivalent functionality to the ip ssl private-key-file tftp command. For more
information on the ip ssl private-key-file tftp command, refer to “Importing digital certificates and
RSA private key files” on page 27.
Importing a DSA or RSA public key
To import a DSA or RSA public key from a client using SCP, enter a command such as the following
one:
The scp command can be used when TFTP access is unavailable or not permitted and the
command has an equivalent function to the ip ssh pub-key-file tftp command. For more information
on the ip ssh pub-key-file tftp command, refer to “Importing authorized public keys into the Brocade
device” on page 68.
SSH2 client allows you to connect from a Brocade device to an SSH2 server, including another
Brocade device that is configured as an SSH2 server. You can start an outbound SSH2 client
session while you are connected to the device by any connection method (SSH2, Telnet, console).
Brocade devices support one outbound SSH2 client session at a time.
The supported SSH2 client features are as follows:
• Encryption algorithms, in the order of preference:
• The client session can be established through either in-band or out-of-band management
ports.
• The client session can be established through IPv4 or IPv6 protocol access.
• The client session can be established to a server listening on a non-default SSH port.
Enabling SSH2 client
To use SSH2 client, you must first enable SSH2 server on the device. See “SSH2 authentication
types” on page 65.
When SSH2 server is enabled, you can use SSH client to connect to an SSH server using password
authentication.
Configuring SSH2 client public key authentication
To use SSH client for public key authentication, you must generate SSH client authentication keys
and export the public key to the SSH servers to which you want to connect.
The following sections describe how to configure SSH client public key authentication:
• “Generating and deleting a client DSA key pair” on page 79
• “Generating and deleting a client RSA key pair” on page 79
78Brocade ICX 6650 Security Configuration Guide
53-1002601-01
• “Exporting client public keys” on page 79
Generating and deleting a client DSA key pair
To generate a client DSA key pair, enter the following command.
Brocade(config)# crypto key client generate dsa
To delete the DSA host key pair, enter the following command.
Brocade(config)# crypto key client zeroize dsa
Syntax: crypto key client generate | zeroize dsa
The generate keyword places a host key pair in the flash memory.
The zeroize keyword deletes the host key pair from the flash memory.
The dsa keyword specifies a DSA host key pair.
Generating and deleting a client RSA key pair
To generate a client RSA key pair, enter a command such as the following:
The generate keyword places an RSA host key pair in the flash memory.
The zeroize keyword deletes the RSA host key pair from the flash memory.
The optional [modulus modulus-size] parameter specifies the modulus size of the RSA key pair, in
bits. The valid values for modulus-size are 1024 or 2048. It is used only with the generate
parameter. The default value is 1024.
The rsa keyword specifies an RSA host key pair.
Exporting client public keys
Client public keys are stored in the following files in flash memory:
• A DSA key is stored in the file $$sshdsapub.key.
• An RSA key is stored in the file $$sshrsapub.key.
To copy key files to a TFTP server, you can use the copy flash tftp command.
You must copy the public key to the SSH server. If the SSH server is a brocade device, see the
section “Importing authorized public keys into the Brocade device” on page 68.
Using SSH2 client
To start an SSH2 client connection to an SSH2 server using password authentication, enter a
command such as the following:
The ipv4Addr | ipv6Addr | host-name variable identifies an SSH2 server. You identify the server to
connect to by entering its IPv4 or IPv6 address or its hostname.
The optional [public-key [dsa | rsa]] parameter specifies the type of public key authentication to
use for the connection, either DSA or RSA. If you do not enter this parameter, the default
authentication type is password.
The optional port portnum parameter specifies that the SSH2 connection will use a non-default
SSH2 port, where portnum is the port number. The default port number is 22.
Displaying SSH2 client information
For information about displaying SSH2 client information, see the following sections:
• “Displaying SSH connection information” on page 72
• “Displaying additional SSH connection information” on page 74
80Brocade ICX 6650 Security Configuration Guide
53-1002601-01
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.