烽火2640路由器命令行手册-07-安全配置命令

安全配置命令

目 录

第1章 AAA配置命令... 1

1.1 认证命令... 1

1.1.1 aaa authentication enable default 1

1.1.2 aaa authentication login. 2

1.1.3 aaa authentication ppp. 3

1.1.4 aaa authentication password-prompt 5

1.1.5 aaa authentication username-prompt 5

1.1.6 aaa authentication banner 6

扫描二维码关注公众号,回复: 4226451 查看本文章

1.1.7 aaa authentication fail-message. 7

1.1.8 aaa group server 8

1.1.9 server 9

1.1.10 service password-encryption. 9

1.1.11 username. 10

1.1.12 enable password. 12

1.1.13 debug aaa authentication. 13

1.1.14 show aaa users. 14

1.2 授权命令... 14

1.2.1 aaa authorization. 15

1.3 记帐命令... 16

1.3.1 aaa accounting. 16

1.3.2 aaa accounting update. 17

1.3.3 aaa accounting suppress null-username. 18

第2章 RADIUS配置命令... 19

2.1 RADIUS配置命令... 19

2.1.1 debug radius. 19

2.1.2 ip radius source-interface. 20

2.1.3 radius-server attribute. 21

2.1.4 radius-server challenge-noecho. 22

2.1.5 radius-server dead-time. 22

2.1.6 radius-server host 23

2.1.7 radius-server optional-passwords. 24

2.1.8 radius-server key. 25

2.1.9 radius-server retransmit 25

2.1.10 radius-server timeout 26

2.1.11 radius-server vsa send. 27

第3章 TACACS+配置命令... 29

3.1 TACACS+配置命令... 29

3.1.1 debug tacacs. 29

3.1.2 ip tacacs source-interface. 29

3.1.3 tacacs server 30

3.1.4 tacacs key. 31

3.1.5 tacacs timeout 32

第4章 IPSec配置命令... 34

4.1 IPSec配置命令... 34

4.1.1 clear crypto sa. 34

4.1.2 crypto dynamic-map. 35

4.1.3 crypto ipsec secure. 36

4.1.4 crypto ipsec transform-set 36

4.1.5 crypto map (global configuration) 37

4.1.6 crypto map (interface configuration) 40

4.1.7 crypto map local-address. 40

4.1.8 debug crypto packet 41

4.1.9 match address. 42

4.1.10 mode. 43

4.1.11 set peer 45

4.1.12 set pfs. 46

4.1.13 set security-association lifetime. 47

4.1.14 set security-association {inbound|outbound} 49

4.1.15 set transform-set 51

4.1.16 show crypto ipsec sa. 52

4.1.17 show crypto ipsec transform-set 54

4.1.18 show crypto map. 54

4.1.19 transform-type. 55

第5章 Internet密钥交换安全协议命令... 58

5.1 IKE配置命令... 58

5.1.1 authentication(IKE policy) 58

5.1.2 clear crypto isakmp. 59

5.1.3 crypto isakmp key. 60

5.1.4 crypto isakmp policy. 60

5.1.5 debug crypto isakmp. 62

5.1.6 encryption(IKE policy) 63

5.1.7 group(IKE policy) 64

5.1.8 hash(IKE policy) 65

5.1.9 lifetime(IKE policy) 66

5.1.10 show crypto isakmp policy. 67

5.1.11 show crypto isakmp sa. 68

第6章 Web认证命令... 70

6.1 Web认证命令... 70

6.1.1 web-auth enable. 70

6.1.2 web-auth accounting. 71

6.1.3 web-auth authentication. 72

6.1.4 web-auth keep-alive. 72

6.1.5 web-auth holdtime. 73

6.1.6 web-auth authtime. 74

6.1.7 web-auth portal-server 74

6.1.8 web-auth kick-out 75

6.1.9 show web-auth. 76

6.1.10 show web-auth interface. 76

6.1.11 show web-auth user 77

6.1.12 debug web-auth event 77

6.1.13 debug web-auth error 78

6.1.14 debug web-auth verbose. 78

6.1.15 debug web-auth http event 79

6.1.16 debug web-auth http request 80

6.1.17 debug web-auth http. 80

6.1.18 debug web-auth. 81

第7章 802.1x配置命令... 82

7.1 802.1x配置命令... 82

7.1.1 dot1x enable. 82

7.1.2 dot1x port-control 83

7.1.3 dot1x multiple-hosts. 84

7.1.4 dot1x default 84

7.1.5 dot1x max-req. 85

7.1.6 dot1x reauth-max. 86

7.1.7 dot1x re-authentication. 86

7.1.8 dot1x timeout quiet-period. 87

7.1.9 dot1x timeout re-authperiod. 87

7.1.10 dot1x timeout tx-period. 88

7.1.11 dot1x user-permit 89

7.1.12 dot1x authentication method. 89

7.1.13 dot1x authen-type、dot1x authentication type. 90

7.1.14 aaa authentication dot1x. 91

7.1.15 debug dot1x error 92

7.1.16 debug dot1x state. 92

7.1.17 debug dot1x packet 93

7.1.18 show dot1x. 93

7.1.19 show dot1xmac. 94

第1章   AAA配置命令

1.1  认证命令

本章描述了用来配置AAA认证方法的命令。认证在用户被允许访问网络和网络服务之前对他们作出访问权利的鉴定。

如果想得到关于怎样用AAA的方法来配置认证的信息,请查阅“配置认证”。如果想查阅使用本章中命令进行配置的例子,阅读“配置认证”文档最后的示例部分。

1.1.1   aaa authentication enable default

要开放AAA认证,以确定某个用户是否可以访问特权级别的命令,使用本地配置命令aaa authentication enable default。使用该命令的no形式关闭这种认证方法。

aaa authentication enable default method1 [method2...]

no aaa authentication enable default

参数

参数

参数说明

method

至少为表1中所给出的关键字之一

缺省

如果没有设置default,除console能登陆成功外,其它皆返回认证失败结果。

如果设置了default表,如果不存在相应特权级别的enable口令,则进入该特权级别的认证过程的返回结果总是认证失败。

命令模式

全局配置态

使用说明

使用aaa authentication enable default命令创建一系列的认证方法,这些方法用来确定某个用户是否可以使用特权级别的命令。关键字method在表1中已经作了说明。只有在前面的认证方法返回错误时,才使用其它的认证方法,如果前面的认证方法返回结果通知认证失败,则不使用其它的认证方法。若希望即使所有的认证方法都返回失败,认证仍然成功,则可以把none指定为命令行的最后一个认证方法。

另外,如果使用RADIUS或TACACS+方式进行enable认证,使用的用户名不同,使用RADIUS认证时,用户名为$ENABLElevel$,其中level是指用户要进入的特权级别;使用TACACS+认证时,用户名为该用户登录路由器时使用的用户名,相关的具体配置请参照“AAA认证配置 ”文档中相关章节。

表1:AAA认证的有效缺省方法。

关键字

描述

group WORD

使用命名的服务器组进行认证。

group tacacs+

使用TACACS+进行认证。

group radius

使用RADIUS进行认证。

enable

使用enable口令进行认证。

line

使用线路口令进行认证。

none

认证无条件通过。

示例

下面的示例创建一张认证列表,该列表首先尝试与TACACS+服务器联系。如果没有发现TACACS+服务器或服务器返回错误,AAA尝试使用enable口令。如果这种尝试也返回错误(由于服务器上没有配置有效的口令),则允许用户不经认证就可以访问服务器。

aaa authentication enable default tacacs+ enable none

相关命令

enable password

1.1.2   aaa authentication login

要设置在登录时进行AAA认证,使用全局配置命令aaa authentication login。使用本命令的no形式关闭AAA认证。

aaa authentication login {default | list-name} method1[method2...]

no aaa authentication login {default | list-name}

参数

参数

参数说明

default

使用跟随在该参数后面所列的认证方法作为用户注册时缺省的方法列表。

list-name

用来命名认证方法列表的字符串,用户登录时将激活认证方法列表中所列的方法。

method

至少为表2中描述的关键字之一。

缺省

如果用户在请求login服务时,搜索不到指定或者默认的方法列表,则除console以外,一律返回认证失败结果。

命令模式

全局配置态

使用说明

使用aaa authentication login命令创建的缺省列表或其他命名列表将由命令login authentication作用于某一具体线路。

只有前面的方法返回错误时,才使用其它的认证方法,如果前面的认证方法返回失败,则不使用其它的认证方法。要确保即使所有的方法都返回错误仍能认证成功,可将none指定为该命令行的最后方法。

表2:AAA认证的注册方法

关键字

描述

enable

使用enable口令进行认证。

group WORD

使用命名的服务器组进行认证。

group tacacs+

使用TACACS+进行认证。

group radius

使用RADIUS进行认证。

line

使用line密码进行认证。

local

使用本地用户名数据库进行认证 。

local-case

使用本地用户名数据库进行认证(用户名区分大小写) 。

none

不进行认证 。

     

示例

下面的示例创建一张名为“TEST”的AAA认证方法列表。这个认证首先尝试与TACACS+服务器联系。如果没有发现服务器或TACACS+返回错误,AAA尝试使用enable口令。如果这种尝试也返回错误(由于路由器上没有配置enable口令),则允许该用户不经认证访问网络。

aaa authentication login TEST tacacs+ enable none

下面的示例创建同样的列表,但设置了缺省列表,如果没有指定其它列表,所有登录认证均使用这个列表:

aaa authentication login default tacacs+ enable none

相关命令

username

enable password

1.1.3   aaa authentication ppp

要指定一种或者多种用于运行PPP的串行接口的AAA认证方法,可以使用全局配置命令aaa authentication ppp。使用该命令的no形式关闭认证。

aaa authentication ppp {default | list-name} method1 [method2...]

no aaa authentication ppp {default | list-name}

参数

参数

参数说明

default

将跟随在该参数后面所列的认证方法作为用户注册时使用的缺省认证方法;

list-name

用来命名认证方法列表的字符串;

mehod1 [method2...]

至少为表3中描述的方法之一。

缺省

如果用户在请求login服务时,搜索不到指定或者默认的方法列表,则一律返回认证失败结果。

命令模式

全局配置态

使用说明

使用aaa authentication ppp命令创建的缺省列表和命名列表在ppp authentication命令中引用。这些列表至多能够包含四种认证方法,用户连接到该串行接口时使用这些认证方法。

通过输入aaa authentication ppp list-name method命令来创建列表,其中list-name是用来命名该列表的任何字符串。参数method指定具体认证方法,认证过程按配置次序使用这些方法。可以至多输入四种方法。方法关键字在表3中描述。

认证失败,则不再使用其它的认证方法。在命令行中指定none作为最后的方法,则即使所有的方法均返回错误,仍能认证成功。

表3:AAA认证的PPP方法 。

关键字

描述

group WORD

使用命名的服务器组进行认证。

group tacacs+

使用TACACS+进行认证。

group radius

使用RADIUS进行认证。

local

使用本地用户名数据库进行认证。

local-case

使用本地用户名数据库进行认证(用户名区分大小写) 。

none

不进行认证 。

示例

下面的示例为使用PPP的串行线路创建一个名为“TEST”的AAA认证列表。这种认证首次尝试与TACACS+服务器联系。如果返回错误,则允许用户不经认证访问网络。

aaa authentication ppp TEST tacacs+ none

相关命令

ppp authentication

1.1.4   aaa authentication password-prompt

要改变向用户提示输入口令时的文本显示,使用全局配置命令aaa authentication password-prompt。使用该命令的no形式重新使用缺省的口令提示文本。

aaa authentication password-prompt text-string

no aaa authentication password-prompt

参数

参数

参数说明

test-string

向用户提示输入口令时将要显示的文本。

缺省

没有用户定义的text-string时,口令提示为“Password:”。

命令模式

全局配置态

使用说明

使用aaa authentication password-prompt命令可改变向用户提示输入口令时显示的缺省文字信息。这条命令不但改变enable口令的口令提示,也改变登录口令的口令提示。该命令的no形式将口令提示改回到缺省值:

Password:

aaa authentication password-prompt命令不改变由远程TACACS+或RADIUS服务器提供的任何提示信息。

示例

下面的示例将口令提示修改为“YourPassword:”:

aaa authentication password-prompt YourPassword:

相关命令

aaa authentication username-prompt

1.1.5   aaa authentication username-prompt

要改变向用户提示输入用户名时的文本显示,使用全局配置命令aaa authentication username-prompt。使用该命令的no形式返回到缺省的用户名提示字符串。

aaa authentication username-prompt text-string

no aaa authentication username-prompt

参数

参数

参数说明

text-string

向用户提示输入用户名时将要显示的文本。

缺省

没有用户定义的text-string时,用户名提示字符串为“Username”。

命令模式

全局配置态

使用说明

使用aaa authentication username-prompt命令改变向用户提示输入用户名时显示的提示字符串。该命令的no形式将用户名提示修改为缺省值:

Username:

某些协议(如TACACS+)具备覆盖本地用户名提示信息的能力。在这种情况下,使用aaa authentication username-prompt命令将不改变用户名提示字符串。

注意:

aaa authentication username-prompt命令不改变由远程TACACS+服务器提供的任何提示信息。

示例

下面的示例将用户名提示修改为所示字符串:

aaa authentication username-prompt YourUsernam。

相关命令

aaa authentication password-prompt

1.1.6   aaa authentication banner

要配置个性化风格的标语(该标语在用户登陆时显示),可以使用全局配置命令aaa authentication banner。使用该命令的no形式删除标语。

aaa authentication banner delimiter string delimiter

no aaa authentication banner

参数

参数

参数说明

delimiter string delimiter

向用户登陆时将要显示的文本stringdelimiter为定界符,定界符采用双引号

缺省

没有用户定义的登陆标语时,默认标语为:

User Access Verification

命令模式

全局配置态

使用说明

创建标语时,需要配置一个定界符号,然后再配置文本字符串本身,该定界符号的作用是通知系统下面的文本字符串将被作为标语显示。定界字符在文本字符串的尾部重复出现,表示标语结束。

示例

下面的示例将登陆时标语提示修改为所示字符串:

aaa authentication banner “Welcome to FHN Router”

相关命令

aaa authentication fail-message

1.1.7   aaa authentication fail-message

要配置在用户登陆失败时显示的个性化风格的标语,可以使用全局配置命令aaa authentication fail-message。使用该命令的no形式删除登陆失败标语。

aaa authentication fail-message delimiter string delimiter

no aaa authentication fail-message

参数

参数

参数说明

delimiter string delimiter

向用户登陆失败时将要显示的文本stringdelimiter为定界符,定界符采用双引号

缺省

没有用户定义的登陆失败标语时,默认的标语为:

Authentication failed!

命令模式

全局配置态

使用说明

创建标语时,需要配置一个定界符号,然后再配置文本字符串本身,该定界符号的作用是通知系统下面的文本字符串将被作为标语显示。定界字符在文本字符串的尾部重复出现,表示标语结束。

示例

下面的示例将用户名提示修改为所示字符串:

aaa authentication fail-message “See you later”

相关命令

aaa authentication banner

1.1.8   aaa group server

我们支持配置AAA服务器组,使用下面的命令进入服务器组配置层次。使用此命令的no形式删除已配置的服务器组。

aaa group server {radius | tacacs+}group-name

no aaa group server {radius | tacacs+} group-name

参数

参数

参数说明

group-name

服务器组的名称字符串。

缺省

无服务器组。

命令模式

全局配置态

使用说明

使用此命令进入服务器组的配置层次,然后在其中添加相应的服务器。

示例

aaa group server radius radius-group

上面的命令将添加一个名字为“radius-group”的radius服务器组。

相关命令

server

1.1.9   server

使用这条命令在一个AAA服务器组中添加一个服务器,使用次命令的no形式删除一个服务器。

server A.B.C.D

no server A.B.C.D

参数

参数

参数说明

A.B.C.D

服务器的IP地址。

缺省

无服务器

命令模式

服务器组配置态

使用说明

一个服务器组中最多添加20个不同的服务器。

示例

server 12.1.1.1

上面的命令将地址为12.1.1.1的服务器添加到服务器组中。

相关命令

aaa group server

1.1.10   service password-encryption

要对系统中相关的密码进行加密,可使用这条命令,使用该命令的no形式可以取消对新配置密码的加密。

service password-encryption

no service password-encryption

参数

缺省

不对系统中相关的密码进行加密显示。

命令模式

全局配置态

使用说明

目前我们路由器系统的实现中,此命令与username password、enable password和password这三条命令相关。如果没有配置此命令(即缺省状态),且在上述三条命令中采用密码明文显示方式,即在show running-config命令中可以显示出已配置的密码的明文;而一旦配置了这条命令后,上述三条命令中配置的密码将被加密,无法在show running-config命令中显示出已配置的密码的明文,使用no service password-encryption命令也无法恢复密码的明文显示,所以在使用这条命令加密前请确认已经配置的密码。no service password-encryption命令仅对使用此命令后配置的密码有效,对使用此命令前配置的已被加密的密码无效。

示例

router_config#service password-encryption

使用此命令对已经配置的明文密码进行加密,且对使用此命令后的明文密码也进行加密。

相关命令

username username password

enable password

password

1.1.11   username

要在本地用户数据库中增加用户,用于本地方式的认证和授权,可使用此条命令。使用该命令的no形式可删除相应的用户。

username username [password {password | [encryption-type] encrypted-password }] [user-maxlinks number] [callback-dialstring string] [callback-line line] [callback-rotary rotary] [nocallback-verify] [autocommand command] [nopassword] [nohangup] [noescape] [priviledge level]

no username username

参数

参数

参数说明

username

用户名字符串;

password

密码字符串明文;

encryption-type

密码加密的类型;

encrypted-password

限定的加密类型相对应的密码的密文

user-maxlinks

同一用户可同时与路由器建立的链接数(只统计通过本地认证的用户)。

number

同时建立的链接数

callback-dialstring

回拨电话号码(不支持);

string         

电话号码字符串;

callback-line

回拨时使用的线路(不支持);

line

线路号

callback-rotary

回拨rotary配置(不支持);

rotary

rotary号码;

nocallback-verify

回拨不认证(不支持)

autocommand

当用户登录路由器后自动执行指定的命令。autocommand 命令必须使用在命令行的最后。

command

自动执行命令字符串。

nopassword

登陆时不需要密码。

nohangup

阻止用户登陆并执行自动命令完后断开连接(不支持)。

noescape

阻止用户登陆后使用转义字符(不支持)。

priviledge

设置用户的特权级别。

level

用来设置用户特权级别的值,范围在0~15。

缺省

没有用户。

命令模式

全局配置态

使用说明

当没有password参数时,认为密码为空字符串。

user-maxlinks限制了同一个用户名同时可以与路由器建立的会话数,但是当此用户的某个会话不是由本地认证方式(local)认证时将不被计算在内。可通过show aaa users命令查看每个在线用户是通过了那一种方式的认证。

我们路由器配置的密码中不能包括空格,即在使用enable password命令时,如果需要直接输入密码明文时,不能输入空格。

目前我们路由器系统中所支持的encryption-type只有两种,在命令中的参数分别为0和7,0代表0表示不加密,后面的encrypted-password直接输入密码的明文,这种方法和不加encryption-type而直接输入password参数的方法效果相同;7表示使用一种本公司自定义的算法来进行加密,后面的encrypted-password需要输入加密后的密码密文,这个密文可以从其他路由器的配置文件中拷贝出来。

示例

下面的示例增加本地用户,用户名为someone,密码为someother:

username someone password someother

下面的示例增加了本地用户,用户名为Oscar,密码为Joan,采用的encryption-type为7,即加密方法,需要输入密码密文:

enable password 7 1105718265

假设Joan的密文为1105718265,该密文的值是从其他路由器上的配置文件中获得的。

相关命令

aaa authentication login

aaa authentication ppp

1.1.12   enable password

如果希望对进入特权级别的用户进行认证,可以通过enable password命令配置相应特权级别的认证密码。使用该命令的no形式取消此密码。

enable password {password| [encryption-type] encrypted-password} [levelnumber]

no enable password [level number]

参数

参数

参数说明

password

密码字符串明文;

encryption-type

密码加密的类型;

encrypted-passwordencryption-type

限定的加密类型相对应的密码的密文;

level

特权级别;

number

特权级别具体取值(1-15);

缺省

没有密码。

命令模式

全局配置态

使用说明

我们路由器配置的密码中不能包括空格,即在使用enable password命令时,如果需要直接输入密码明文时,不能输入空格。 密码明文的长度不能超过126个字符。

当没有输入level参数时,缺省认为是第15级。特权级别越大拥有的权限越大。若某个特权级别没有配置密码,则当用户进入此级别时将返回认证失败。

目前我们路由器系统中所支持的encryption-type只有两种,在命令中的参数分别为0和7,0代表0表示不加密,后面的encrypted-password直接输入密码的明文,这种方法和不加encryption-type而直接输入password参数的方法效果相同;7表示使用一种本公司自定义的算法来进行加密,后面的encrypted-password需要输入加密后的密码密文,这个密文可以从其他路由器的配置文件中拷贝出来。

示例

下面的示例增加特权级别10的密码为clever,采用的encryption-type为0,即密码明文方式:

enable password 0 clever level 10

下面的示例增加了缺省特权级别(15级)的密码为Oscar,采用的encryption-type为7,即加密方法,需要输入密码密文:

enable password 7 074A05190326

假设Oscar的密文为074A05190326,该密文的值是从其他路由器上的配置文件中获得的。

相关命令

aaa authentication enable default

service password-encryption

1.1.13   debug aaa authentication

如果希望对用户的认证过程进行跟踪,可使用debug aaa authentication命令。使用此命令的no形式关掉debug信息。

debug aaa authentication

no debug aaa authentication

参数

缺省

关闭debug信息。

命令模式

管理态

使用说明

使用此命令可跟踪每个用户的认证过程,以发现认证失败的原因。

相关命令

debug aaa authorization

debug aaa accounting

1.1.14   show aaa users

要显示所有在线AAA用户的概要信息,可使用show aaa users命令。

show aaa users

参数

缺省

命令模式

管理态

使用说明

使用此命令可显示所以的在线用户,包括以下信息:接口(port)、用户名(username)、服务类型(service)、在线持续时间(time)以及IP地址(peer_address)。

示例

#show aaa users

Port               User                            Service             Duration              Peer-address

===============================================================

console 0     zjl                                 exec                   04:14:03             unknown

vty 0               fhn                      exec                   00:12:24              172.16.20.120

serial2/1        admin                         ppp(chap)         01:43:09             192.168.20.87

解释

Port

用户所处的接口ID或Vty的索引号。

User

用户名字符串。

Service

用户请求的服务。

Duration

用户在线的持续统计时间。

Peer-address

用户所处的远端主机IP地址。

相关命令

username

1.2  授权命令

本章描述了用来配置AAA授权方法的命令。AAA授权可以限制对某个用户的有效服务,当AAA授权有效时,路由器使用从用户开工文档(profile)中检索出的信息配置该用户的会话,用户的开工文档位于本地用户数据库或者位于安全服务器上。完成这件工作后,就允许该用户访问所要求的服务,只要包含在用户开工文档中的信息允许提供这项服务。

如果想得到关于怎样用AAA的方法来配置授权的信息,请查阅“配置授权”。如果想查阅使用本章中命令进行配置的例子,阅读“配置授权”文档最后的示例部分。

1.2.1   aaa authorization

使用全局配置命令aaa authorization设置参数来限制用户的网络访问权限。使用该命令的no形式关闭某个功能的授权。

aaa authorization { network | exec } {default | list-name} [method1 [method2...] ]

no aaa authorization { network | exec } {default | list-name}

参数

参数

参数说明

network

网络类型服务的授权,如:PPP、SLIP

exec

适用于与用户EXEC终端对话相关的属性,决定用户注册时是否允许启动EXEC外壳程序,或者授予用户进入EXEC shell时的特权级别。

default

缺省授权方法列表。

list-name

用来命名授权方法列表的字符串。

method1 [method2...]

授权方法,参见“授权配置”文档

缺省

用户要求进行授权,但没有在相应的线路或接口上指定要求使用的授权方法列表,则会使用缺省方法列表。如果没有定义缺省方法列表,则不发生授权行为。

命令模式

全局配置态

使用说明

使用aaa authorization命令开启授权,创建授权方法列表,定义在用户访问指定功能时可使用的授权方法。授权方法列表定义了授权执行的方式以及执行这些授权方法的次序。方法列表只是一张简单的命名列表,它描述要顺序查询的授权方法(如RADIUS或TACACS+)。方法列表可以指定一个或多个用来授权的安全协议,因此,它能够确保万一前面所列的授权方法失败后有一个备用的方法。 一般情况下,先使用所列的第一个方法试图授予用户访问指定网络服务的权限;如果该方法没有响应,再选择方法列表中所列的下一个方法。这个过程继续进行下去,直到使用的某个授权方法成功地返回授权结果,或者用完了所定义的所有方法。

一旦定义了授权方法列表后,在所定义的方法被执行之前,该方法列表必须应用到指定的线路或接口上。作为授权过程的一部分,授权命令向RADIUS或TACACS+服务器程序发送包括一系列AV对的请求包。服务器可能执行下述动作之一:

l   完全接受请求。

l   接受请求,并增加属性限制用户服务权限。

l   拒绝请求,授权失败。

示例

下述示例定义名为have_a_try的网络授权方法列表,该方法列表指定在使用PPP的串行线路上使用RADIUS授权方法。如果RADIUS服务器没有响应,则执行本地网络授权。

aaa authorization network have_a_try radius local

相关命令

aaa authentication

aaa accounting

priviledge

1.3  记帐命令

本章描述了用来配置AAA认证方法的命令。记帐功能可以跟踪用户访问的服务,同时可以跟踪他们消耗的网络资源数量。当激活AAA记帐功能时,路由器以记帐记录的形式向TACACS+或RADIUS安全服务器(依赖于所实现的安全方法)报告用户的活动。每条记帐记录包括记帐属性值(AV)对,并存储在访问控制服务器上。然后这些数据可用于网络管理、客户帐单和/或审计等分析。

1.3.1   aaa accounting

当使用RADIUS或TACACS+时,基于记帐或安全的目的要对所要求的服务开放AAA记帐,可以使用全局配置命令aaa accounting。使用该命令的no形式关闭记帐:

aaa accounting { network | exec | connection} {default | list-name} {start-stop | stop-only | none} group groupname

no aaa accounting { network | exec | connection} {default | list-name}

参数

参数

参数说明

network

给所有PPP会话提供记帐记录信息,包括包、字节及时间计数。

exec

提供有关路由器的用户EXEC终端会话的信息(目前不支持)。

connection

提供有关路由器发出的所有出站连接的信息,目前只支持H323会话信息。

default

缺省记帐方法列表。

list-name

用来命名记帐方法列表的字符串。

method1 [method2...]

记帐方法,参见“记帐配置”文档

缺省

用户要求进行记帐,但没有在相应的线路或接口上指定要求使用的记帐方法列表,则会使用缺省方法列表。如果没有定义缺省方法列表,则不发生记帐行为。

命令模式

全局配置态

使用说明

使用aaa accounting命令开启记帐,创建记帐方法列表,定义在用户发送记帐记录时可使用的记帐方法。记帐方法列表定义了记帐执行的方式以及执行这些记帐方法的次序。方法列表只是一张简单的命名列表,它描述要顺序查询的记帐方法(RADIUS或TACACS+)。方法列表可以指定一个或多个用来记帐的安全协议,因此,它能够确保万一前面所列的记帐方法失败后有一个备用的方法。

相关命令

aaa authentication

aaa accounting

1.3.2   aaa accounting update

如果需要向记帐服务器周期性的发送临时的记帐记录,可以使用全局配置命令aaa accounting update。使用该命令的no形式关闭临时记帐记录:

aaa accounting update { newinfo | periodic number}

no aaa accounting update { newinfo | periodic}

参数

参数

参数说明

update

激活路由器发送临时记帐记录(需要端用户支持)

newinfo

每当有新的记帐信息要报告时,向记帐服务器发送临时记帐记录

periodic

周期性地发送临时记帐记录,该周期由数字参数定义

number

发送临时记帐记录的周期数字参数

缺省

不发生临时记帐行为。

命令模式

全局配置态

使用说明

参见“记帐配置”文档。

相关命令

aaa accounting

1.3.3   aaa accounting suppress null-username

如果需要阻止为没有用户名的会话产生记帐记录,可以使用全局配置命令如下。使用该命令的no形式关闭:

aaa accounting suppress null-username

no aaa accounting suppress null-username

参数

缺省

不阻止为没有用户名的会话产生记帐记录。

命令模式

全局配置态

使用说明

参见“记帐配置”文档。

相关命令

aaa accounting


第2章   RADIUS配置命令

2.1  RADIUS配置命令

本章介绍RADIUS的配置命令。RADIUS是能够拒绝非授权网络访问的分布式客户/服务器系统。RADIUS客户机运行在路由器上,并向包含所有用户认证和网络服务访问信息的中央RADIUS服务器发出认证、授权或记录请求。

有关如何配置RADIUS的信息及配置示例,请参见“配置RADIUS”。

2.1.1   debug radius

为了跟踪RADIUS事件或报文,可执行debug radius命令。使用此命令的no形式关掉debug信息。

debug radiusevent | packet

no debug radiusevent | packet

参数

参数

参数说明

event

跟踪RADIUS事件。

packet

跟踪RADIUS报文。

缺省

命令模式

管理态

使用说明

此命令可用于网络系统调试,查找用户认证失败的原因。

Router#debug radius event

RADIUS:return message to aaa, Give me your username

RADIUS:return message to aaa, Give me your password

RADIUS:inital transmit access-request [4] to 192.168.20.126  1812 <length=70>

RADIUS:retransmit access-request [4] to 192.168.20.126 1812 <length=70>

RADIUS:retransmit access-request [4] to 192.168.20.126 1812 <length=70>

RADIUS:192.168.20.126 is dead to response [4]

RADIUS:Have tried all servers,return error to aaa

输出信息

解释

return message to aaa, Give me your username

需要得到用户名。

return message to aaa, Give me your password

需要得到用户名对应的密码。

inital transmit access-request [4] to 192.168.20.126  1812 <length=70>

首次向RADIUS服务器发送认证请求,服务器地址为192.168.20.126,端口号为1812,报文长度为70。

retransmit access-request [4] to 192.168.20.126 1812 <length=70>

服务器对请求没有及时作出反应,重发此认证请求。

192.168.20.126 is dead to response [4]

重发多次后,服务器仍未回应,将此服务器标志为已死亡。

Have tried all servers,return error to aaa

RADIUS无法完成此次认证,返回error。

示例

下列示例打开RADIUS的事件跟踪:

debug radius event

2.1.2   ip radius source-interface

为了强制RADIUS对所有发送的RADIUS报文使用指定接口的IP地址,使用ip radius source-interface 全局配置命令。使用该命令的no 形式恢复为缺省值。

ip radius source-interface interface-name

no ip radius source-interface

参数

参数

参数说明

interface-name

RADIUS对所有发送的RADIUS报文使用该接口的IP地址。

缺省

本命令没有厂家指定的缺省值,即根据实际情况来决定源发IP地址。

命令模式

全局配置态

使用说明

使用本命令选择某一个接口的IP地址,作为所有流出RADIUS包的源地址。只要接口处于up状态,就一直使用这个地址。这样,对每个网络访问客户机来说,RADIUS服务器只使用一个IP地址,而不用维护一个IP地址列表。当路由器有许多接口且打算确保来自某个特定路由器的全部RADIUS包具有相同的IP地址时,本命令就特别有用了。

指定的接口必须拥有与之相联系的IP地址。如果指定的接口不拥有IP地址,或者处于down状态,那么,RADIUS就恢复到缺省值。为了避免出现这种情况,请向接口添加IP地址并且保证接口处于up状态。

示例

下列示例让RADIUS对所有发送的RADIUS包使用接口s1/2的IP地址:

ip radius source-interface s1/2

相关命令

ip tacacs source-interface

2.1.3   radius-server attribute

在radius认证和计费过程中,是否指定传输某些属性使用全局配置命令radius-server attribute。使用本命令的no形式关闭AAA认证。

radius-server attribute {4 | 32}

no radius-server attribute {4 | 32}

参数

参数

参数说明

4

将跟随在该参数后面的地址作为属性4(NAS ip address)的值在radius处理过程中传输

32

根据跟随在该参数后面的指令指定在radius认证或请求中传输属性attribute32(NAS identifier)

缺省

命令模式

全局配置态

使用说明

使用radius-server attribute命令配置并指定在radius处理过程中传输某种特定的属性。

radius-server attribute 4配置radius属性4(NAS 的IP 地址)并指定在RADIUS 报文中传输。

radius-server attribute 32指定在RADIUS 认证或计费请求报文中传输radius属性32(NAS 的ID)。

示例

radius-server attribute 4 X.X.X.X 在RADIUS报文中传输radius属性4,并用X.X.X.X作为属性值

radius-server attribute 32 in-access-req 在认证请求中传输NAS identifier

radius-server attribute 32 in-account-req 在计费请求中传输NAS identifier

相关命令

2.1.4   radius-server challenge-noecho

为了使在Access-Challenge方式下用户数据不显示,需使用radius challenge-noecho命令。

radius-server challenge-noecho

no radius-server challenge-noecho

参数

缺省

在Access-Challenge方式下用户数据都显示。

命令模式

全局配置态

使用说明

示例

radius-server challenge-noecho

2.1.5   radius-server dead-time

当某些服务器不可用时,为了改善RADIUS的响应时间,使用radius dead-time全局配置命令,该命令让系统立即跳过不可用的服务器。使用本命令的no形式将dead-time设置为0,即认为所以的服务器一直可用。

radius-server dead-time minutes

no radius-server dead-time

参数

参数

参数说明

minutes

RADIUS服务器被视为不可用的持续时间长度,最多为1440分钟(24小时)。

缺省

不可用时间设置为0,即始终认为该服务器可用。

命令模式

全局配置态

使用说明

使用本命令,把那些对认证请求不作出响应的RADIUS 服务器标记为“死机”,这样就避免了在使用下一个服务器之前等待回应的时间过长。标记为死机的RADIUS服务器,被minutes这段持续时间内的所以请求跳过,除非所以的服务器均被标记为死机。

示例

下列示例对那些不对请求作出响应的RADIUS服务器指定了5 分钟的“死机”时间:

radius-server dead-time 5

相关命令

host

radius-server retransmit

radius-server timeout

2.1.6   radius-server host

要指定RADIUS 服务器的IP地址,使用host全局配置命令。使用本命令的no形式则删除指定的RADIUS主机。

radius-server host ip-address [auth-port port-number1] [acct-port port-number2]

radius-server host ip-address

参数

参数

参数说明

ip-address

RADIUS服务器主机的IP地址。

auth-port

(可选项)为认证请求指定UDP目的端口。

port-number1

(可选项)认证请求的端口编号;若设置为0,则主机不用于认证。

acct-port

(可选项)为记录请求指定UDP目的端口。

port-number2

(可选项)记录请求的端口编号;若设置为0,则主机不用于记录。

缺省

未指定任何RADIUS主机。

命令模式

全局配置态

使用说明

可以多次使用radius-server host命令以指定多个服务器,必要时会按照配置顺序进行轮询。

示例

下述示例指定IP地址为1.1.1.1的RADIUS主机,记录和认证都使用缺省端口:

radius-server host 1.1.1.1

下述示例在IP地址为1.2.1.2的RADIUS主机上,指定端口12作为认证请求的目的端口,端口16作为记录请求的目的端口:

radius-server host 1.2.1.2 auth-port 12 acct-port 16

相关命令

aaa authentication

radius-server key

username

2.1.7   radius-server optional-passwords

为了指定向RADIUS服务器第一次发送RADIUS认证申请时只对用户名进行验证而不检查密码,使用radius-server optional-passwords 全局配置命令。使用本命令的no形式则恢复缺省值。

radius-server optional-passwords

no radius-server optional-passwords

参数

本命令没有参数或关键字。

缺省

不使用optional-password方式。

命令模式

全局配置态

使用说明

当用户输入登录名时,认证请求将包括用户名和零长度的密码。如果被接受,那么登录认证过程完成。如果RADIUS服务器拒绝这一请求,那么服务器就提示输入口令,当用户提供了口令后,将再次尝试进行验证。RADIUS服务器必须支持对无口令的用户进行认证,以利用这一特色。

示例

下述示例配置发送第一个认证请求时不包括用户密码:

radius-server optional-passwords

相关命令

host

2.1.8   radius-server key

为了对路由器和RADIUS服务器之间的所有RADIUS通信设置加密密钥,请使用radius-server key全局配置命令。使用本命令的no 形式则使密钥失效。

radius-server keystring

no radius-server key

参数

参数

参数说明

string

用于加密的密钥,本密钥必须与RADIUS服务器使用的密钥相匹配。

缺省

密钥为空字符串。

命令模式

全局配置态

使用说明

输入的密钥必须与RADIUS服务器使用的密钥相匹配。所有的起始空格字符被忽略,密钥中不能包含空格字符。

示例

下述示例将加密密钥设置为“firstime”:

radius-server key firstime

相关命令

host

username

2.1.9   radius-server retransmit

要指定在放弃使用某一台服务器之前应进行尝试的次数,使用radius-server retransmit全局配置命令。使用本命令的no形式恢复缺省值。

radius-server retransmit retries

no radius-server retransmit

参数

参数

参数说明

retries

重复尝试的最大次数,缺省值是尝试3次。

缺省

尝试3次。

命令模式

全局配置态

使用说明

此命令一般与radius-server timeout命令配合使用,指明等待多长时间后认为服务器回应超时及超时后重试的次数。

示例

下述示例指定重试记数器的值为5次:

radius-server retransmit 5

相关命令

radius-server timeout

2.1.10   radius-server timeout

要对路由器等待服务器应答的时间上限进行设置,请使用radius timeout全局配置命令。使用本命令的no形式则恢复缺省值。

radius-server timeout seconds

no radius-server timeout

参数

参数

参数说明

seconds

指定超时时间(以秒为单位),缺省值是5秒。

缺省

5秒

命令模式

全局配置态

使用说明

本命令常与radius-server retransmit配合使用。

示例

下述示例把超时定时器设置为10秒:

radius-server timeout 10

相关命令

2.1.11   radius-server vsa send

要把路由器配置为可识别和使用厂商专用属性(VSA),使用radius vsa send全局配置命令。使用本命令的no 形式恢复缺省值。

radius-server vsa send [accounting | authentication]

no radius-server vsa send [accounting | authentication]

参数

参数

参数说明

accounting

(可选项)识别的厂商专用属性集只限于记录属性。

authentication

(可选项)识别的厂商专用属性集只限于认证属性。

缺省

不使用vsa 。

命令模式

全局配置态

使用说明

IETF使用厂商专用属性(属性26),为在路由器和RADIUS服务器之间交换厂商专用信息指定了方法。VSA允许厂商支持它们自己的不适合于普遍用途的扩展属性。radius-server vsa send命令使路由器能够识别和使用认证或记录的厂商专用属性。在radius-server vsa send 命令中使用accounting关键字,把识别的厂商专用属性集仅限于记录属性。在radius-server vsa send 命令中使用authentication关键字,把识别的厂商专用属性集仅限于认证属性。

示例

下述示例对路由器进行配置,使之识别和使用厂商专用记录属性:

radius-server vsa send accounting

相关命令

host


第3章   TACACS+配置命令

3.1  TACACS+配置命令

这里我们将介绍TACACS+安全协议的配置命令。TACACS+可以完成对用户身份的认证;对用户服务权限的授权以及对用户服务执行过程的记录。

3.1.1   debug tacacs

当希望跟踪TACACS+协议事件或查看收发的报文时,可使用debug tacacs命令。使用此命令的no形式取消跟踪。

debug tacacs {event | packet}

no debug tacacs {event | packet

参数

参数

参数说明

event

跟踪TACACS+事件。

packet

跟踪TACACS+报文。

缺省

关闭debug信息。

命令模式

管理态 

使用说明

此命令一般只在网络调试时使用,用于查找用户AAA服务失败的原因。

示例

下述示例将打开TACACS+的事件跟踪:

debug tacacs event 

相关命令

3.1.2   ip tacacs source-interface

要对所有TACACS+报文使用指定接口的IP地址,使用全局配置命令ip tacacs source-interface。使用本命令的no 形式取消对此源IP地址的使用。

ip tacacs source-interface subinterface-name

no ip tacacs source-interface

参数

参数

参数说明

subinterface-name

所有TACACS+报文的源IP地址对应的接口名称。

缺省

本命令没有指定的缺省值。 

命令模式

全局配置态

使用说明

使用本命令可以通过指定源接口来为所有的TACACS+报文设置源IP地址,只要该接口处于up状态,所有的TACACS+报文将使用这个接口的IP地址作为源发地址。这样,将保证每一台路由器的TACACS+报文具有相同的源发IP地址,TACACS+服务器就不再需要维护包含所有IP地址的地址列表。也就是说,当路由器有许多接口,但为了确保来自于特定路由器的所有TACACS+报文具有相同的源IP地址时,本命令将发挥作用。。

指定的接口必须有与之相联系的IP地址。如果指定的接口没有IP地址或处于down状态,就会回到缺省值,也就是根据实际情况来确定源IP地址。为了避免发生这样的情况,一定要为该接口添加IP地址并保证该接口处于up状态。 

示例

下述示例将使用接口s1/0的IP地址作为所有TACACS+报文的源发IP地址:

ip tacacs source-interface s1/0 

相关命令

ip radius source-interface 

3.1.3   tacacs server

为了指定TACACS+服务器,使用全局配置命令tacacs server。使用本命令的no 形式则删除指定的服务器。

tacacs server ip-address  [single-connection|multi-connection] [port integer1] [timeout integer2] [key string]

no tacacs serve ip-address

参数      

参数

参数说明

ip-address

服务器的IP地址。

single-connection

(可选)指定路由器为来自AAA/TACACS+服务器的确认维持着单一开放的TCP连接。

multi-connection

(可选)指定路由器为来自AAA/TACACS+服务器的不同确认维持不同的TCP连接。

port

(可选)指定服务器端口号。本选项覆盖缺省的端口号49。

integer1

(可选)服务器的端口号,有效端口号的范围是1至65536。

timeout

(可选)指定等待服务器回应超时值。它将覆盖使用tacacs timeout命令为本服务器设置的全局超时值。

integer2

(可选)设定超时记时器值,按秒计算。

key

(可选)指定认证和加密密钥。这个密钥必须与TACACS+服务器程序使用的密钥相匹配。指定这个。密钥将覆盖使用全局命令tacacs key为本服务器设置的密钥。

string

(可选)指定加密密钥字符串。

缺省

没有TACACS+服务器被指定。

命令模式

全局配置态

使用说明

可以使用多个tacacs server命令以指定多个主机,并按照指定的顺序搜索主机。由于tacacs server命令的一些参数将覆盖由tacacs timeout和tacacs key命令所作的全局设置,所以利用本命令,可唯一地配置每台TACACS+服务器的通信属性,以增强网络的安全性。

示例

下述示例指定路由器与IP地址为1.1.1.1的TACACS+服务器进行协商,以进行AAA认证。并指定服务器的TCP服务端口号为51,设定超时值是三秒,加密密钥为a_secret。

tacacs server 1.1.1.1 single-connection port 51 timeout 3 key a_secret

相关命令

tacacs key

tacacs timeout

3.1.4   tacacs key

为了设置路由器与TACACS+服务器之间所有通信过程使用的加密密钥,请使用tacacs key全局配置命令。使用本命令的no 形式则关闭该密钥。

tacacs key key

no tacacs key  

参数

参数

参数说明

key

用于设置加密密钥。这一密钥必须与TACACS+服务器程序使用的密钥相匹配。

命令模式

全局配置态

使用说明

在开始运行TACACS+协议之前必须使用tacacs key命令设置加密密钥。输入的密钥必须与TACACS+服务程序使用的密钥相匹配。所有的打头空格都被忽略,密钥中间不能有空格。

示例

下述示例设置加密密钥为testkey:

tacacs key testkey 

相关命令

tacacs server

3.1.5   tacacs timeout

要设置TACACS+等待某服务器作出应答的超时时间长度,请使用 tacacs timeout全局配置命令。使用本命令的no形式则恢复缺省值。

tacacs timeout seconds

no tacacs timeout

参数

参数

参数说明

seconds

以秒计算的超时值(在1和600之间)。缺省为5秒。

缺省

5秒

命令模式

全局配置态 

使用说明

若针对某台服务器通过tacacs server命令中的timeout参数设置了自己的等待超时值,将覆盖此命令设置的全局超时值。 

示例

下述示例将超时定时器的值修改为10秒:

tacacs timeout 10 

相关命令

tacacs server


第4章   IPSec配置命令

4.1  IPSec配置命令

本章描述了IPSec配置命令。IPSec提供了在公共网络上——如Internet——上传输敏感信息的安全性。IPSec提供的安全性解决方案非常健壮,并且是基于标准的。作为对数据机密性的补充,IPSec还提供了数据验证和抗重播服务。

要了解配置信息,可以参阅“配置IPSec”。

4.1.1   clear crypto sa

要删除相关的IPSec安全联盟数据库,使用clear crypto sa命令。

clear crypto sa

clear crypto sa peer ip-address

clear crypto sa map map-name

参数

参数

参数说明

ip-address

指定对端的IP地址。

map-name

指定加密映射表集合的名字。

缺省

如果未使用peer、map等关键字,所有的IPSec安全联盟都将被删除。

命令模式

管理态

使用说明

这条命令用于清除(删除)IPSec安全联盟。如果安全联盟是通过IKE建立的,那么它们将被删除,以后的IPSec通信需要重新协商新的安全联盟(使用IKE时,IPSec安全联盟只有在需要的时候才被建立)。

如果安全联盟是通过手工建立的,那么安全联盟将被删除并且被重新建立。

如果没有使用peer、map等关键字,所有的IPSec安全联盟都将被删除。使用peer关键字将删除指定对端地址的全部IPSec安全联盟。使用map关键字将删除由加密映射表集合所创建的全部IPSec安全联盟。通过使用clear crypto sa命令可以重新建立所有的安全联盟,这样这些联盟就可以使用最新的配置设置了。在手工建立安全联盟的情况下,如果修改其用到变换集合,在生效之前必须使用clear crypto sa命令。

如果路由器正在处理IPSec通信,那么最好只清除安全联盟数据库中会被影响到的那部分内容。这样可以避免当前正在进行的IPSec通信突然中断。注意这条命令只清除IPSec安全联盟;要清除IKE状态,请使用clear crypto isakmp命令。

示例

下面的示例清除路由器上所有的IPsec安全联盟:

clear crypto sa

相关命令

clear crypto isakmp

4.1.2   crypto dynamic-map

要创建或修改一个动态加密映射表,进入动态加密映射表表配置态,可以使用crypto dynamic-map全局配置命令。使用此命令的no格式来删除一个动态加密映射表表或集合。

crypto dynamic-map map-name

no crypto dynamic-map map-name

参数

参数

参数说明

map-name

动态加密映射表集合的名字。

缺省

不存在动态加密映射表。

命令模式

全局配置态。使用此命令将进入动态加密映射表配置态。

使用说明

使用此命令可以创建一个新的动态加密映射表,或修改一个现存的动态加密映射表。

动态加密映射表的功能和普通的加密映射表(crypto map)是类似的。主要区别在于:

动态加密映射表中可以不用设置对端的IP地址(set peer),允许任何地址的IPSec设备来协商,这一功能可以用来支持和移动用户的连接。而普通的加密映射表则必须指定对端的IP地址,且只允许该地址的IPSec设备来协商。当然动态加密映射表中也可以设置IP地址,这种情况下,基本等同于普通的加密映射表。

示例

下面的例子显示了使用IKE来建立安全联盟时,所需的最小加密映射表配置:

crypto dynamic-map aaa

match address aaa

set transform-set one

相关命令

crypto map (global configuration)

match address

set peer

set pfs

set security-association lifetime

set transform-set

show crypto map

4.1.3   crypto ipsec secure

指定本地路由器是否接收非IPSec报文或不正确的IPSec报文。

crypto ipsec secure

no crypto ipsec secure

参数

缺省

允许通过非IPSec报文或不正确的IPSec报文。

命令模式

全局配置态。

使用说明

当有报文通过路由器且匹配了用户所设定的规则时,若该报文不是IPSec报文或者是不正确的IPSec报文,如果此时未设置该选项,那么路由器仍会照常处理该报文,如果此时设置了该选项,那么路由器就会丢弃该报文。

示例

以下例子设置了路由器的该选项。

crypto ipsec secure

相关命令

crypto map

4.1.4   crypto ipsec transform-set

要定义一个ipsec变换集合——安全协议和算法的一个可行组合,使用crypto ipsec transform-set全局配置命令。要删除一个变换集合,可以使用这条命令的no格式。

crypto ipsec transform-set transform-set-name

no crypto ipsec transform-set transform-set-name

参数

参数

参数说明

transform-set-name

指定要创建(或修改)的变换集合的名称。

缺省

命令模式

全局配置态。执行此命令将进入加密变换配置态。

使用说明

变换集合是安全协议、算法以及将用于受IPSec保护的通信的其它设置的组合。

可以配置多个变换集合,然后在加密映射表中指定这些变换集合中的一个或多个。在加密映射表中定义的变换集合用于协商IPSec安全联盟,以保护匹配加密映射表设定的访问列表的那些报文。在协商过程中,双方寻找一个在双方都有的相同变换集合。当找到了一个这样的变换集合时,此集合将被选中,并作为双方IPSec安全联盟的一部分被运用到受保护的通信上。

如果不是使用IKE来建立安全联盟,那么必须指定唯一一个变换集合。此集合无须进行协商。

只有使用此命令对变换集合进行了定义后,此变换集合才能被设置在加密映射表中。

可使用transform-type命令来具体配置变换类型。

示例

以下例子定义了一个变换集合。

crypto ipsec transform-set one

transform-type esp-des esp-sha-hmac

相关命令

mode

transform-type

set transform-set

show crypto ipsec transform-set

4.1.5   crypto map (global configuration)

要创建或修改一个加密映射表,进入加密映射表表配置态,可以使用crypto map全局配置命令。使用此命令的no格式来删除一个加密映射表表或集合。

crypto map map-name seq-num [ipsec-manual| ipsec-isakmp [dynamic dynamic-map-name]]

no crypto map map-name seq-num

参数

参数

参数说明

map-name

加密映射表集合的名字。

seq-num

加密映射表的序号。参看“使用说明”一节中对于使用此参数的详细解释。

ipsec-manual

表示对于此加密映射表所指定的通信,将采用手工方式来建立IPSec安全联盟对其进行保护。

ipsec-isakmp

表示对于此加密映射表所指定的通信,将使用IKE来建立IPSec安全联盟对其进行保护。

dynamic-map-name

该加密映射表用来作模板的动态加密映射表名字。

缺省

不存在加密映射表。

命令模式

全局配置态。当无dynamic及其参数时,使用此命令将进入加密映射表配置态。

使用说明

使用此命令可以创建一个新的加密映射表,或修改一个现存的加密映射表。

在创建了一个加密映射表以后,不能对全局配置态下指定的参数进行改变,因为这些参数决定了在加密映射表配置态中可以使用哪些配置命令。例如,一个映射表一旦作为ipsec-isakmp创建,就不能将它改变成ipsec-manual;必须将它删除并重新进入加密映射表配置态才能这样做。在定义了加密映射表以后,可以使用crypto map(interface configuration)命令将此加密映射表集合运用到接口上。

l   加密映射表的功能

加密映射表提供了两个功能:对要保护的通信进行过滤和分类,以及定义通信的策略。IPSec加密映射表将下面这些定义联系在一起:

l   哪些通信应该受到保护

受保护数据可以到达哪个IPSec对端——这个对端能够和本地路由器建立起一个安全联盟。

对于受保护通信,可用的变换集合是哪些。

如何对密钥和安全联盟进行管理和使用(或者在不使用IKE时,密钥是什么)。具有相同map-name(加密映射表名称)的多个加密映射表组成了一个加密映射表集合。

加密映射表集合是由加密映射表组成的集合,其中每条都有不同的seq-num和相同的map-name。因此,对于给定接口,你可以对发往一个IPSe对端通信采取某种安全策略,而对于发往同一或不同IPSec对端的其它通信采用不同的安全策略。要达到这一目的,你应该创建两个加密映射表,每个都有相同的map-name,但有不同的seq-num。

l   seq-num参数

seq-num参数的数值不能随便定。此数字是用来对一个加密映射表集合中的多个加密映射表进行排序的。在一个加密映射表集合中,seq-num参数小的加密映射表在seq-num参数大的加密映射表之前进行判断;也就是说,序号越小的映射优先级越高。

例如,假设加密映射表集合包含了三个加密映射表:aaa 10,aaa 20以及aaa 30。名为aaa的加密映射表集合被运用在接口Serial 0上。当通信通过接口Serial 0时,首先用aaa 10对它进行判断。如果通信匹配aaa 10指定的扩展访问列表中的一条permit,那么将使用aaa 10中定义的策略对通信进行处理(包括必要的时候建立IPSec安全联盟)。如果通信不匹配aaa 10访问列表,将用aaa 20,然后是aaa 30对通信进行判断,直到通信匹配一个映射中的permit语句(如果不匹配任何加密映射表中的permit语句,那么此通信将不受任何IPSec的保护直接发送)。

示例

下面的例子显示了使用IKE来建立安全联盟时,所需的最小加密映射表配置:

crypto map aaa 10 ipsec-isakmp

match address aaa

set transform-set one

set peer 192.2.2.1

下面的例子显示了使用动态加密映射表来建立安全联盟时,所需的最小加密映射表配置:

crypto dynamic-map aaa

match address aaa

set transform-set one

crypto map bbb 10 ipsec-isakmp dynamic-map aaa

下面的例子显示了手工建立安全联盟时,所需的最小加密映射表配置:

crypto transform-set one

 transform-type ah-md5-hmac esp-des

crypto map aaa 10 ipsec-manual

match address aaa

set transform-set one

set peer 192.2.2.1

set security-association inbound ah 300 98765432109876543210987654

set security-association outbound ah 300 fedcbafedcbafedcfedcbafedcbafedc

set security-association inbound esp 300 cipher 0123456789012345

set security-association outbound esp 300 cipher abcedfabcdefabcd

相关命令

crypto map (interface  configuration)

crypto map local-address

match address

set peer

set pfs

set security-association lifetime

set transform-set

show crypto map

4.1.6   crypto map (interface configuration)

要将预先定义好的加密映射表集合运用到接口上,可以使用crypto map接口配置命令。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              

使用此命令的no格式可以从一个接口上移除加密映射表集合。

crypto map map-name

no crypto map

参数

参数

参数说明

map-name

加密映射表集合的名称。

缺省

接口上没有设置加密映射表。

命令模式

接口配置态

使用说明

使用此命令可以将加密映射表集合运用到接口。在接口可以提供IPSec服务之前,必须在接口上配置一个加密映射表集合。对于一个接口,只能设置一个加密映射表集合。如果多个加密映射表具有相同的map-name和不同的seq-num,那么它们位于同一集合,并被运用到同一接口上。Seq-num越小的加密映射表具有越高的优先级,并且先进行判断。一个加密映射表集合中可能包含ipsec-isakmp、ipsec-manual加密映射表的组合。

示例

下面的例子将加密映射表集合aaa赋给接口S0。当报文经过接口S0时,将使用mymap集合中的所有加密映射表对它进行判断。当出站报文匹配mymap加密映射表中某一条所对应的访问列表时,一条基于加密映射表配置的安全联盟(若是IPSec)连接将被建立(如果没有现存的安全联盟的话)。

interface s0

crypto map aaa

相关命令

crypto map (global configuration)

crypto map local-address

show crypto map

4.1.7   crypto map local-address

指定一个接口标识,并在加密映射表中指定它用于IPSec通信,可以使用crypto map local-address全局配置命令。使用此命令的no格式可以从配置中删除这条命令。

crypto map map-name local-address interface-id

no crypto map map-name local-address

参数

参数

参数说明

map-name

加密映射表集合的名称。

interface-id

指定加密映射表集合使用的接口标识。

缺省

命令模式

全局配置态

使用说明

如果设置了此命令,加密映射表集合中的加密映射表的IPSec本端地址使用指定接口的IP地址。

示例

相关命令

crypto map (interface configuration)

4.1.8   debug crypto packet

在IPSec的处理过程中,查看IPSec对于上层数据处理的出错信息。

参数

缺省

缺省情况下不显示相关信息。

命令模式

管理态

使用说明

显示和IPSec处理相关的一些重要错误信息,下表列举了几种常见的出错信息。

显示信息

信息含义

rec'd IPSEC packet from IPADDR has invalid spi.

对端的outbound的spi值与本端的inbound不同或配置的配置策略不同(esp、ah)。

packet missing policy.

对端的outbound的配置策略和本地不同(esp、ah)。

rec'd IPSEC packet from IPADDR has bad pading.

对端的outbound的加密密钥与本端的inbound的不同。

rec'd IPSEC packet mac verify failed.

对端的outbound的ESP或AH验证密钥与本端的inbound的不同。

rec'd IPSEC packet from IPADDR to IPADDR does not agree with policy.

IPSEC处理完成的包与相应的access-list不同,子MAP的访问列表配置有问题。

相关命令

show crypto ipsec sa

debug crypto isakmp

4.1.9   match address

要为一个加密映射表指定一个扩展访问列表,可以使用match address加密映射表配置命令。使用此命令的no格式可以从一条加密映射表中取消设置的扩展访问列表。

match address access-list-name

no match address access-list-name

参数

参数

参数说明

access-list-name

         加密访问列表。此名字必须和配置的访问列表的name相匹配。

缺省

加密映射表不配置任何访问列表。

命令模式

加密映射表配置态

使用说明

此命令对于所有加密映射表来说都是必须的。

使用此命令将扩展访问列表赋给一条加密映射表。需要使用ip access-list extended命令来定义此访问列表。

用此命令指定的扩展访问列表将被IPSec用于判断哪些通信应被加密保护,而哪些通信不被加密保护(此访问列表所允许的通信都将受到保护。被此访问列表拒绝的通信在相应加密映射表中将不受保护)。

注意加密访问列表不是用来决定是否允许通信通过某个接口,这项工作由直接作用于接口上的访问列表来完成。

此命令指定的加密访问列表既用于判断入通信,也用于判断出通信。接口加密映射表所对应的加密访问列表将对出通信进行判断,决定它是否应该受到加密保护,并且如果是(通信匹配一条permit),那么应该应用什么加密策略。在通过了接口上普通访问列表的检查以后,入通信将被接口的加密映射表集合所指定的加密访问列表进行判断,判定它是否应该受到加密保护,如果是,应该受到哪种加密策略的保护(在使用IPSec的情况下,未受保护的通信将被丢弃,因为它本应受到IPSec的保护)。

示例

下面的例子是使用IKE来建立安全联盟时所需的最小加密映射表配置。

crypto map aaa 100 ipsec-isakmp

match address aaa

set transform-set one

set peer 192.2.2.1

相关命令

crypto map(global configuration)

crypto map(interface configuration)

crypto map local-address

ip access-list extended

set peer

set pfs

set security-association lifetime

set transform-set

show crypto map

4.1.10   mode

要改变一个变换集合的模式,可以使用mode加密变换配置命令。要将模式恢复成缺省值隧道模式,可以使用这条命令的no格式。

mode {tunnel | transport}

no mode

参数

参数

参数说明

tunnel| transport

指定一个变换集合的模式:隧道模式或传输模式。如果既没有指定tunnel,也没有指定transport,那么将使用缺省值(隧道模式)。

缺省

隧道模式

命令模式

加密变换配置态

使用说明

使用此命令来改变变换的模式。只有当要被保护的报文和IPSec两端有相同的IP地址值时(这样的通信既可在隧道模式下又可在传输模式下进行封装),此设置才有效。对于所有其它通信(所有其它的通信都在隧道模式下进行封装),此设置都无效。

如果要被保护的通信具有和IPSec两端有相同的IP地址,并且指定了传输模式,那么在协商期间,路由器将申请传输模式,但既可接受传输模式又可接受隧道模式。如果指定了隧道模式,那么路由器将申请隧道模式,并且只接受隧道模式。

在定义了变换集合以后,将进入加密变换配置态。在此配置状态下,可以将模式改变为隧道方式或传输方式。

如果开始在定义变换集合的时候没有设置模式,以后想要改变此变换集合的模式,那么必须重新进入此变换集合(指定变换的名字),并且改变它的模式。

如果使用此命令来改变模式,那么改变将只影响那些指定了此变换集合的加密映射表的后续IPSec安全联盟的生成。如果想尽快使变换集合的配置生效,那么可以清除安全联盟数据库的部分或全部。可以参看clear crypto sa命令来获得更多的细节。

l   隧道模式

在隧道模式下,整个原始的IP报文都受到保护(加密、验证或两者都有),并且由IPSec进行封装(ESP、AH或两者都有)。然后,新的IP头被在增加到报文中,此IP头指定了IPSec源和目的地址。

任何IP通信都可使用隧道模式进行传送。如果IPSec是对接在IPSec两端后面的主机的通信进行保护,那么必须使用隧道模式。

l   传输模式

在传输模式下,只有IP分组的有效负载(数据)才受到保护(加密、验证或两者都有)。并且由IPSec封装(ESP、AH或两者都有)。原始的IP报头保持原样,不受IPSec的保护。

只有当要保护的IP分组的源和目的地址都是IPSec两端时,才能使用传输模式。例如,可以使用传输模式来保护路由器管理通信。在申请中指定传输模式,可以使得路由器能够和远端协商决定是使用传输模式还是隧道模式。

示例

下面的例子定义了一个变换集合,并将模式改变为传输模式。

router_config# crypto ipsec transform-set one

router_config_crypto_trans#transform-type esp-des esp-sha-hmac

router_config_crypto_trans # mode transport

router_config_crypto_trans # exit

router_config#

相关命令

crypto ipsec transform-set

4.1.11   set peer

要在加密映射表中指定IPSec对端,可以使用set peer加密映射表配置命令。使用此命令的no格式,可以从加密映射表中删除IPSec对端。

set peer ip-address

no set peer ip-address

参数

参数

参数说明

ip-address

用IP地址指定的IPSec对端。

缺省

缺省情况下不指定IPSec对端。

命令模式

加密映射表配置态

使用说明

使用此命令可为加密映射表指定一个IPSec对端。对于所有加密映射表,这条命令都是必须的。一个加密映射表只能指定一个IPSec对端。如果想要改变对端,指定新的对端即可,会覆盖原先设置。

示例

下面的例子展示了当使用IKE来建立安全联盟时的一个加密映射表配置。

crypto map aaa 100 ipsec-isakmp

match address aaa

set transform-set one

set peer 192.2.2.1

相关命令

crypto map(global configuration)

crypto map(interface configuration)

crypto map local-address

match address

set pfs

set security-association lifetime

set transform-set

show crypto map

4.1.12   set pfs

当为加密映射表申请新的安全联盟时,要指定IPSec将同时申请理想转发安全机制(PFS),或当收到建立新安全联盟的申请时,IPSec将要求PFS,可以使用set pfs加密映射表配置命令。要确定IPSec不会进行PFS申请,可以使用这条命令的no格式。

set pfs [group1|group2]

no set pfs

参数

参数

参数说明

group1

当组织新的Diffle-Hellman交换时,指定IPSec将使用768位的Diffle-Hellman组。

group2

当组织新的Diffle-Hellman交换时,指定IPSec将使用1024位的Diffle-Hellman组。

缺省

在缺省情况下,不要求PFS。

命令模式

加密映射表配置态

使用说明

此命令只对ipsec-isakmp加密映射表可用。

在协商期间,此命令将使得IPSec在为这条加密映射表申请新安全联盟时,同时也申请PFS。如果本端发起协商,且本地配置指定了使用PFS,对端必须组织PFS交换,否则协商将失败。如果本地配置没有指定组,那么本地路由器将提议使用缺省值group1,而对方无论提供group1或group2都会被接受。如果本地配置指定了group2,那么对端必须提供此组,否则协商将会失败。如果本地配置没有指定PFS,那么本地路由器也会接受对端所提供的PFS。

PFS增加了另一种级别的安全性,因为如果一个密钥曾被攻击者解开过,那么只有那些用此密钥进行传送的数据受到威胁。如果没有PFS,用其它密钥传送的数据也可能受到威胁。

在使用PFS的情况下,每次协商新安全联盟的时候都会引发一次新Diffle-Helman交换(这种交换需要额外的处理时间)。

1024比特的Diffle-Hellman组,即group2,比group1提供了更多的安全性,但比group1需要更多的处理时间。

示例

下面的例子指定了无论什么时候加密映射表aaa 100协商新安全联盟时都要使用PFS:

crypto map aaa 100 ipsec-isakmp

set pfs group2

相关命令

crypto map (global configuration)

crypto map (interface configuration)

crypto map local-address

match address

set peer

set security-association lifetime

set transform-set

show crypto map

4.1.13   set security-association lifetime

要为某个加密映射表设置生命周期值(此值用于IPSec安全联盟的协商),可以使用Set security-association lifetime加密映射表配置命令。要将一个加密映射表的生命周期值恢复成缺省值,可以使用此命令的no格式。

set security-association lifetime [seconds seconds | kilobytes kilobytes]

no set security-association lifetime [seconds | kilobytes]

参数

参数

参数说明

seconds seconds

指定一个安全联盟在超时终止前所能存活的秒数。

kilobytes kilobytes

在一个安全联盟超时以前,使用此安全联盟所能传输的通信量(以千字节计)。

缺省

加密映射表的安全联盟根据缺省生命周期值进行协商。

缺省超时秒数为3600秒 (1小时) ,缺省超时通信量为 4,608,000 千字节。

命令模式

加密映射表配置态

使用说明

此命令只对ipsec-isakmp加密映射表可用。

IPSec安全联盟使用共享密钥。这些密钥和它们对应的安全联盟同时超时。假设在安全联盟协商过程中,路由器申请新的安全联盟时,给定的加密映射表已经配置了新生命周期值,那么它将在向对端发起的申请中使用自己的加密映射表生命周期值;它将使用此值作为新的安全联盟的生命周期值。当路由器收到从对端发来的协商申请时,它将取对端提议的和本地路由器配置的生命周期值中较小者作为新安全联盟的生命周期。

生命周期有两种:一个时间生命周期、一个通信量生命周期。这两个生命周期中无论哪个先到期,安全联盟都将超时。

要改变时间生命周期,可以使用命令的set security-association lifetime seconds格式。时间生命周期指定了安全联盟和密钥在经过了一定的秒数后超时。

要改变通信量生命周期,可以使用命令的set security-association lifetimekilobytes格式。通信量生命周期指定了安全联盟和密钥在使用安全联盟密钥进行加密的通信量(以KB计)达到了一定数量以后超时。

生命周期值越短,密钥破解攻击越难成功,因为攻击者用于分析的用同一密钥加密的数据越少。但是,生命周期越短,用于建立新安全联盟的CPU处理时间就越多。

在手工方式建立安全联盟时,生命周期值将被忽略(使用ipsec-manual加密映射表来建立安全联盟)。

生命周期是如何工作的:

假设给定的加密映射表没有配置新的生命周期值,那么当路由器申请新的安全联盟时,它在向对端发起的申请中使用缺省生命周期值;它将使用此值作为新安全联盟的生命周期。当路由器收到从对端发来的协商申请时,它使用对端提议的和本地配置的生命周期值中较小者作为新安全联盟的生命周期值。

经过了一定的时间(由seconds关键字指定)后,已传递了一定字节的通信量(由kilobytes关键字指定),这两件事情无论哪件先发生,安全联盟(以及相应的密钥)都将超时。

新的SA在原有安全联盟的生命周期极限值到达以前就开始进行协商,以确保当原有安全联盟超时的时候,已经有一个新的安全联盟备用了。新安全联盟在seconds生命周期超时前30秒,或经由这条隧道的通信量距kilobytes生命周期还有256KB时开始进行协商(根据哪个先发生)。

如果在一个安全联盟的整个生命周期中都没有通信经过这条隧道,那么当此安全联盟超时的时候不会进行新安全联盟的协商。相应地,新的安全联盟只有当IPSec得到应该受到保护的一个分组时才开始进行协商。

示例

此例子加密映射表设置较短的生命周期值,因为属于此加密映射表的安全联盟的密钥可能被窃取。通信量生命周期值未被改变,因为分享这些安全联盟的通信量不是很大。时间生命周期值缩短到1800秒(30分钟)。

crypto map aaa 100 ipsec-isakmp

set security-association lifetime seconds 1800

相关命令

crypto map (global configuration)

crypto map (interface configuration)

crypto map local-address

match address

set peer

set pfs

set transform-set

show crypto map

4.1.14   set security-association {inbound|outbound}

要在加密映射表中手工指定IPSec密钥,可以使用set 加密映射表配置命令。要从加密映射表中删除IPSec密钥,可以使用此命令的no格式。此命令只对ipsec-manual加密映射表可用。

set security-association {inbound|outbound} ah spi hex-key-string

set security-association {inbound|outbound} esp spi [cipher hex-key-string] [authenticator hex-key-string]

set security-association {inbound|outbound} ah

set security-association {inbound|outbound} esp

参数

参数

参数说明

inbound

设置入报文IPSec密钥(必须对入报文和出报文密钥都进行设置)。

outbound

设置出报文IPSec密钥(必须对入报文和出报文密钥都进行设置)。

ah

为AH协议设置IPSec密钥。只有当此加密映射表的变换集合包括AH变换时才起作用。

esp

为ESP协议设置IPSec密钥。只有当此加密映射表的变换集合包括ESP变换时才起作用。

spi

安全参数索引值(SPI),此索引用来唯一标识一个安全联盟。SPI是在256到4,294,967,295(FFFFFFFF)之间任意给定的一个数字。对于两种方向(出、入)和两种协议(AH、ESP)的安全联盟,可以赋给同一SPI。对于一个给定目的地址/协议的组合,必须使用唯一的SPI值。如果是入站的情况,那么目的地址就是本路由器地址。如果是出站,那么目的地址就是对端的地址。

hex-key-string

密钥;按十六进制的格式输入。这是一个长度为8、16、20或24字节的任意十六进制字符串。如果加密映射表的变换集合包括了DES算法,那么每个密钥至少需要8字节。如果加密映射表的变换集合包括了3DES算法,那么每个密钥至少需要24字节。如果加密映射表的变换集合包括了MD5算法,那么每个密钥至少需要16字节。如果加密映射表的变换集合包括了SHA算法,那么每个密钥至少需要20字节。超过上述长度的密钥将简单地被截断。

cipher

指示此密钥字符串是ESP加密变换的密钥。

authenticator

(可选)指示此密钥字符串是ESP验证变换的密钥。此参数仅当这个加密映射表的变换集合包括了ESP验证算法时才需要。

缺省

缺省情况下不定义任何IPSec密钥。

命令模式

加密映射表配置态

使用说明

使用此命令可以为那些经过ipsec-manual加密映射表建立起来的安全联盟指定IPSec密钥(对于ipsec-isakmp加密映射表,安全联盟以及相应密钥是通过IKE协商自动建立的)。

如果加密映射表的变换集合包括了AH协议,那么必须为AH的出和入通信都定义IPSec密钥。如果加密映射表的变换集合包括了ESP加密协议,那么必须为ESP加密的出和入通信都定义IPSec密钥。如果加密映射表的变换集合包括了ESP验证协议,那么必须为ESP验证的出和入通信都定义IPSec密钥。

在为一个加密映射表定义多个IPSec密钥的时候,可以将相同的SPI数字赋给所有的密钥。SPI用于标识此加密映射表所对应的安全联盟。但是,不是所有的SPI赋值上都有相同的随意性,应确保对于相同的目的地址/协议的组合,相同的SPI赋值不超过一次。

通过这条命令建立起来的安全联盟不会超时(不同于通过IKE建立起来的安全联盟)。

本端的密钥必须和对端密钥相匹配。如果改变一个密钥,那么使用此密钥的安全联盟将被删除和重新增加。

示例

下面的例子经过手工建立安全联盟的加密映射表。变换集合one只包含了一个AH协议。

crypto ipsec transform-set one

transform-set ah-md5-hmac

crypto map aaa 100 ipsec-manual

match address aaa

set transform-set one

set peer 192.2.2.1

set security-association inbound ah 300 11111111111111111111111111111111

set security-association outbound ah 300 22222222222222222222222222222222

下面的例子是一个手工建立安全联盟的加密映射表。变换集合one包含了一个AH协议和一个ESP协议。这样,对AH和ESP的出和入通信都要配置密钥。此变换集合包括了ESP的加密和验证变换,所以需要使用cipher和authenticator关键字对两种变换都创建密钥。

crypto ipsec transform-set one

transform-type ah-sha-hmac esp-des esp-sha-hmac

crypto map aaa 100 ipsec-manual

match address aaa

set transform-set one

set peer 192.2.2.1

set association inbound ah 300 9876543210987654321098765432109876543210

set security-association outbound ah 300 fedcbafedcbafedcbafedcbafedcbafedcbafedcba

fedc

set security-association inbound esp 300 cipher 0123456789012345

authenticator 0000111122223333444455556666777788889999

set security-association outbound esp 300 cipher abcdefabcdefabcd

authenticator 9999888877776666555544443333222211110000

相关命令

crypto map(global configuration)

crypto map(interface configuration)

crypto map local-address

match address

set peer

set transform-set

show crypto map

4.1.15   set transform-set

要指定加密映射表将使用哪些变换集合,可以使用set transform-set加密映射表配置命令。要从一个加密映射表中移除所有变换集合,可以使用此命令的no格式。

set transform-set transform-set-name1 [transform-set-name2...transform-set-name6]

no set transform-set

参数

参数

参数说明

transform-set-name

变换集合的名字。对于ipsec-manual加密映射表,只能指定一个变换集合。对于ipsec-isakmp,可以指定不多于六个加密映射表集合。

缺省

缺省情况下不包括任何变换集合。

命令模式

加密映射表配置态

使用说明

此命令对于所有的加密映射表都是必须的。

使用此命令可以指定一条加密映射表中将包含哪些变换集合。

对于ipsec-isakmp加密映射表,可以使用此命令列出多个变换集合。首先列出的是最高优先级的变换集合。

如果是本地路由器发起协商,那么将按照在加密映射表中指定的顺序将变换集合提供给对端。如果是对端发起协商,那么本地路由器接受第一个相匹配的变换集合。

在两端找到的第一个相匹配的变换集合将用于建立安全联盟。如果没有找到匹配项,那么IPSec不会建立安全联盟。报文将被丢弃,因为没有安全联盟保护这些通信。

对于ipsec-manual加密映射表,只能指定唯一的变换集合。如果此变换集合不能匹配对端的加密映射表的变换集合,则IPSec两端不能正常通信,因为它们使用不同的规则来保护通信。

如果想要改变变换集合的内容,重新设置变换集合的内容来覆盖旧的内容。此改变不会影响现存的安全联盟,但将用于建立新的安全联盟。如果想让改变尽快生效,可以使用clear crypto sa命令来清除全部或部分安全联盟数据库的内容。

包含在一个加密映射表中的任何变换集合都必须事先用crypto ipsec transform-set命令进行定义。

示例

下面的例子定义了两个变换集合,并且指定它们可用于同一个加密映射表(只有当使用IKE来建立安全联盟时,此例子才能使用。对于手工建立的安全联盟所使用的加密映射表,给定的一条加密映射表中只能包含一个变换集合)。

crypto ipsec transform-set one

transform-type esp-des esp-sha-hmac

crypto ipsec transform-set two

transform-type ah-sha-hmac esp-des esp-sha-hmac

crypto map aaa 100 ipsec-isakmp

match address aaa

set transform-set one two

set peer 192..2.2.1

在此例中,当通信匹配了访问列表aaa时,安全联盟既可以使用变换集合one(第一优先级),也可以使用two(第二优先级),这取决于哪个变换集合和对端上的变换集合相匹配。

相关命令

crypto map (global configuration)

crypto map (interface configuration)

crypto map local-address

match address

set peer

set pfs

set security-association lifetime

set security-association inbound

set security-association outbound

show crypto map

4.1.16   show crypto ipsec sa

要查看当前安全联盟所使用的设置,可以使用show crypto ipsec sa命令。

show crypto ipsec sa [map map-name |interface interface-id ] [detail]

参数

参数

参数说明

map map-name

(可选)显示名为map-name的加密映射表所创建的现存的安全联盟。

interface interface-id

(可选)显示标识接口上加密映射表所创建的现存的安全联盟。

detail

(可选)同时显示安全联盟的统计信息。

缺省

如果没有指定任何关键字,那么所有的安全联盟都将被显示出来。

命令模式

管理态

使用说明

示例

下面是show crypto ipsec sa命令的一个输出示例。

router#show crypto ipsec sa detail

Interface: Ethernet0/0

Crypto map name:aaa

local  ident (addr/mask/prot/port): (191.1.1.0/255.255.255.0/0/0)

 remote ident (addr/mask/prot/port): (197.7.7.0/255.255.255.0/0/0)

 local crypto endpt.: 192.2.2.87,  remote crypto endpt.: 192.2.2.86

inbound esp sas:

   spi:0x190(400)

     transform:  esp-des  esp-sha-hmac

     in use settings ={ Tunnel }

     no sa timing

     #pkts decaps: 0, #pkts decrypt: 0, #pkts auth: 0

     #pkts decaps err: 0, #pkts decrypt err: 0, #pkts auth err: 0

     #pkts replay failed: 0

 inbound ah sas:

   spi:0x12c(300)

     transform:  ah-md5-hmac

     in use settings ={ Tunnel }

     no sa timing

     #pkts decaps: 0, #pkts decrypt: 0, #pkts auth: 0

     #pkts decaps err: 0, #pkts decrypt err: 0, #pkts auth err: 0

     #pkts replay failed: 0

 outbound esp sas:

   spi:0x191(401)

transform:  esp-des  esp-sha-hmac

  in use settings ={ Tunnel }

     no sa timing

     #pkts encaps: 0, #pkts encrypt: 0, #pkts auth: 0

     #pkts encaps err: 0, #pkts encrypt err: 0, #pkts auth err: 0

     #pkts replay failed: 0

 outbound ah sas:

   spi:0x12d(301)

     transform:  ah-md5-hmac

     in use settings ={ Tunnel }

     no sa timing

     #pkts encaps: 0, #pkts encrypt: 0, #pkts auth: 0

     #pkts encaps err: 0, #pkts encrypt err: 0, #pkts auth err: 0

     #pkts replay failed: 0

相关命令

4.1.17   show crypto ipsec transform-set

要查看所配置的变换集合,可以使用show crypto ipsec transform-set 命令。

show crypto ipsec transform-set [transform-set-name]

参数

参数

参数说明

transform-set-name

(可选)只显示具有所指定的transform-set-name的变换集合。

缺省

如果不使用关键字,那么将显示路由器上所有的变换集合。

命令模式

管理态

使用说明

示例

下面是show crypto ipsec transform-set命令的一个输出示例。

router# show crypto ipsec transform-set

Transform set aaa: { esp-des }

     will negotiate ={ Tunnel }

Transform set bbb: { ah-md5-hmac esp-3des }

     will negotiate ={ Tunnel }

相关命令

4.1.18   show crypto map

要查看加密映射表配置,可以使用show crypto map命令。

show crypto map [map-name]

参数

参数

参数说明

map-name

(可选)只显示用map-name指定的加密映射表。

缺省

如果没有指定关键字,则显示路由器上所有的加密映射表配置。

命令模式

管理态

使用说明

示例

下面是show crypto map命令的一个输出示例。

router_config#show crypto map

Crypto Map aaa 100 ipsec-manual

     Extended IP access list aaa

 permit ip 192.2.2.0 255.255.255.0 193.3.3.0 255.255.255.0

     peer = 192.2.2.1

     Inbound esp spi: 300 ,

      cipher key: 1234567812345678 ,

      auth key  ,

     Inbound ah spi: 301 ,

      key: 000102030405060708090a0b0c0d0e0f ,

     Outbound esp spi: 300 ,

cipher key: 1234567812345678 ,

      auth key  ,

     Outbound ah spi: 301 ,

      key: 000102030405060708090a0b0c0d0e0f

     Transform sets={ 1}

Crypto Map aaa 101 ipsec-isakmp

     Extended IP access list bbb

         permit ip 191.1.1.0 255.255.255.0 197.7.7.0 255.255.255.0

     peer = 192.2.2.19

     PFS (Y/N): N

     Security association lifetime: 2560 kilobytes/3600 seconds

     Transform sets={ 1, 2,}

相关命令

4.1.19   transform-type

加密变换配置态下,要设置变换类型,使用transform-type命令。

transform-type  transform1 [transform2[transform3]]

参数

参数

参数说明

transform1]/ transform2/ transform3

可以指定3个以下的变换。这些变换定义了IPSec安全协议和算法。可接受的变换值在“使用说明”中详细阐述。

缺省

缺省的变换类型为ESP-DES(ESP采用DES加密算法)。

命令模式

加密变换配置态

使用说明

变换集合可以指定一个或两个IPSec安全协议(或ESP,或AH,或两者都有),并且指定和选定的安全协议一起使用哪种算法。ESP和AH IPSec安全协议在“IPSec协议:封装安全协议和校验头”一节中做了详细阐述。

变换集合的定义可以指定一到三个变换——每个变换代表一个IPSec安全协议(ESP或AH)和想要使用的算法的组合。当IPSec安全联盟协商时使用了某一变换集合,整个变换集合(协议、算法和其它设置的组合)必须和对端的一个变换集合相匹配。

在一个变换集合中,可以指定AH协议、ESP或两者都指定。如果在变换集合中指定了一个ESP,那么可以只定义ESP加密变换,也可以ESP加密变换和ESP验证变换两者都定义。

下表中显示了可行的变换组合。

为变换集合选择变换:可行的变换组合

AH 变换中选择一种

ESP加密变换中选择一种

ESP验证变换中选择一种,

变换

描述

变换

描述

变换

描述

ah-md5-hmac

带MD5(HMAC变量)的AH验证算法

esp-des

采用DES的ESP加密算法

esp-md5-hmac

带MD5(HMAC变量)的ESP验证算法

ah-sha-hmac

带SHA(HMAC变量)的AH验证算法

esp-3des

采用3DES的ESP加密算法

esp-sha-hmac

带SHA(HMAC变量)的ESP验证算法

IPSec协议:ESP和AH

ESP和AH协议都为IPSec提供了安全服务。

ESP提供了分组加密,以及可选的数据验证和抗重播服务。

AH提供了数据验证和抗重播服务。

ESP使用一个ESP头和一个ESP尾对受保护数据——或是一个完整的IP自寻址数据包(或仅是有效负载)——进行封装。AH是嵌入在受保护数据中的;它将一个AH头直接插入在外部IP头后、内部IP数据包或有效负载前。隧道模式中要对整个IP数据报文进行封装和保护,而传送模式中只对IP数据报文中的有效负载进行封装/保护。要进一步了解这两种模式,请参阅mode命令的描述。

选择适当的变换

IPSec变换比较复杂。下面的提示能够帮助你选择适合自己情况的变换:

l   如果想要提供数据机密性,那么可以使用ESP加密变换。

l   如果想要提供对外部IP报头以及数据的数据验证,那么可以使用AH变换。

l   如果使用一个ESP加密变换,那么可以考虑使用ESP验证变换或AH变换来提供变换集合的验证服务。

l   如果想要数据验证功能(或使用ESP或使用AH),可以选择MD5或SHA验证算法。SHA算法比MD5要健壮,但速度更慢。

加密变换配置态

在执行了crypto ipsec transform-set命令以后,就将进入加密变换配置态。在这种状态下,可以将模式改变到隧道模式或传输模式(这是可选的改变)。在做完这些改变以后,键入exit来返回到全局配置态下。要深入了解这些可选改变的信息,请参看mode命令的详细阐述。

改变现存的变换

如果在transform-type命令中为一个变换集合指定一个或多个变换,那么指定的这些变换将会替换掉变换集合中现存的变换。如果改变了transform-type,改变将只被运用到引用了此变换集合的加密映射表上。但改变将不会被运用到现存的安全联盟上,会被用于新建立的安全联盟。如果想让新的设置立即生效,可以使用clear crypto sa命令来清除安全联盟数据库的部分或全部。

示例

以下例子定义了一个变换集合。

crypto ipsec transform-set one

transform-type esp-des esp-sha-hmac

相关命令

crypto ipsec transform-set

mode

set transform-set

show crypto ipsec transform-set


第5章   Internet密钥交换安全协议命令

5.1  IKE配置命令

本章讨论Internet密钥交换安全协议(IKE)的命令。

IKE是一种密钥管理协议标准,与IPSec 协议结合使用。

IPSec 可以不使用用IKE,但是IKE通过提供额外的功能、灵活性以及对IPSec 标准配置的简化,增强了IPSec 的功能。

IKE是一种混合协议,在因特网安全协会及密钥管理协议(ISAKMP)框架内实现了Oakley密钥交换和Skeme密钥交换(ISAKMP,Oakley和Skeme是由IKE实现的安全协议)。

5.1.1   authentication(IKE policy)

要在IKE策略中指定认证方法,使用ISAKMP策略配置命令authentication(IKE policy)。IKE策略定义一组在IKE协商期间使用的参数。使用该命令的no形式来恢复认证方法的缺省值。

authentication { pre-share|rsa-sig|rsa-encr}

no authentication { pre-share|rsa-sig|rsa-encr}

参数

参数

参数说明

pre-share

指定预共享密钥作为认证方法。

rsa-sig

指定RSA签名作为认证方法。

rsa-encr

指定RSA实时加密作为认证方法。

缺省

预共享密钥认证方法

命令模式

ISAKMP策略配置态

使用说明

使用该命令指定用在IKE策略中的认证方法。

指定预共享密钥,则必须同时分别配置这些预共享密钥(crypto isakmp key命令)。

示例

本例配置IKE策略,使用预共享密钥作为其认证方法(所有其它参数为缺省值):

router_config#crypto isakmp policy 10

router_config_isakmp# authentication pre-share

router_config_isakmp# exit

router_config #

相关命令

crypto isakmp key

crypto isakmp policy

encryption(IKE policy)

group(IKE policy)

hash(IKE policy)

lifetime(IKE policy)

show crypto isakmp policy

5.1.2   clear crypto isakmp

要清除正在运行的IKE连接,使用全局配置命令clear crypto isakmp。

clear crypto isakmp [map map-name | peer ip-address]

参数

参数

参数说明

map map-name

(可选)清除名为map-name的加密映射表的IKE连接。

peer ip-address

(可选)清除对端地址为ip-addressIKE连接。

缺省

如果没有使用map,peer参数,则在发出该命令时清除所有存在的IKE连接。

命令模式

管理态

使用说明

使用该命令清除活动的IKE连接。

示例

本例清除isakmp连接。

Router# show crypto isakmp sa

    dst            src           state               state-id       conn

192.2.2.19     192.2.2.199    <I>M_SA_SETUP        1           aaa 100

Route# clear crypto isakmp

Router# exit

Router#show crypto isakmp sa

Router#

相关命令

show crypto isakmp sa

5.1.3   crypto isakmp key

要配置预共享认证密钥,使用全局配置命令crypto isakmp key。无论何时在IKE策略中指定预共享密钥,都必须配置该密钥。使用该命令的no形式删除预共享认证密钥。

crypto isakmp key keystring peer-address

no crypto isakmp key keystring peer-address

参数

参数

参数说明

keystring

指定预共享密钥。使用最多128字节的字母数字字符的任意组合。该预共享密钥必须在两端上完全一样。

peer-address

指定远端的IP地址。

缺省

没有缺省的预共享认证密钥。

命令模式

全局配置态

使用说明

如果IKE策略中包括预共享密钥作为认证方法,这些预共享密钥必须在两端上配置;否则,该策略不能使用(IKE过程将不会提交该策略用于匹配)。

示例

指定预共享密钥,并用IP地址指定远程终端:

crypto isakmp key abcdefghijkl 192.2.2.1

相关命令

authentication (IKE policy)

5.1.4   crypto isakmp policy

要定义IKE策略,使用全局配置命令crypto isakmp policy。IKE策略定义一套参数在IKE协商期间使用。使用该命令的no形式来删除IKE策略。

crypto isakmp policy priority

no crypto isakmp policypriority

参数

参数

参数说明

priority

标识IKE策略的优先级。使用1到10000的整数,1是最高优先级而10000是最低优先级。

缺省

存在一条缺省的策略,该策略总是最低优先级。这条缺省的策略中加密、哈希、认证,Diffie-Hellman组和生命期参数均为缺省值。

在创建一条IKE策略时,如果不给特定参数指定值,则该参数使用缺省值。

命令模式

全局配置态

使用说明

使用该命令指定在IKE协商期间要使用的参数(这些参数用来创建IKE SA)。

使用此命令进入ISAKMP策略配置态,在ISAKMP策略配置态中,下面的命令在指定策略中的参数值是有效的:

encryption(IKE policy);缺省值=56比特DES-CBC

hash(IKE policy); 缺省值=SHA-1

authentication(IKE policy); 缺省值=Pre-Shared Key

group(IKE policy); 缺省值=768比特Diffie-Hellman

lifetime(IKE policy); 缺省值=86400秒

如果不给策略指定这些命令中的某一个,则将使用该参数的缺省值。

可以给参与IPSec 的两端配置多个IKE策略。在IKE协商开始时,将试图找到在两端配置的公共策略,从对端上所指定的最高优先级的策略开始。

示例

下面的示例配置两条ISAKMP策略:

crypto isakmp policy 10

hash md5

authentication pre-share

group 2

lifetime 5000

crypto isakmp policy 20

authentication pre-share

lifetime 10000

上面的配置结果为下面的策略:

Router# show crypto isakmp policy

Protection suite of priority 10

     encryption algorithm:    DES  - Data Encryption Standard (56 bit keys).

     hash algorithm:          Message Digest 5

     authentication method:   Pre-Shared Key

Diffie-Hellman group:    #1 (768 bit)

  lifetime:                5000 seconds

Protection suite of priority 20

     encryption algorithm:    DES  - Data Encryption Standard (56 bit keys).

     hash algorithm:          Secure Hash Standard

     authentication method:   Pre-Shared Key

     Diffie-Hellman group:    #1 (768 bit)

     lifetime:                10000 seconds

Default protection suite

     encryption algorithm:    DES  - Data Encryption Standard (56 bit keys).

     hash algorithm:          Secure Hash Standard

     authentication method:   Pre-Shared Key

     Diffie-Hellman group:    #1 (768 bit)

     lifetime:                86400 seconds

相关命令

authentication(IKE policy)

encryption(IKE policy)

group(IKE policy)

hash(IKE policy)

lifetime(IKE policy)

show crypto isakmp policy

5.1.5   debug crypto isakmp

在IKE的协商过程中,查看相关的报文交互处理信息。

参数

缺省

缺省情况下不显示相关信息。

命令模式

管理态

使用说明

显示和IKE协商相关的一些重要信息,下表列举了几种常见的信息。

显示信息

信息含义

ISAKMP(xxx): no acceptable Oakley Transform

ISAKMP(xxx):negotiate error NO_PROPOSAL_CHOSEN

双方配置的ISAKMP策略不匹配。(对端发起协商)

ISAKMP(xxx): no acceptable Proposal in IPsec SA

ISAKMP(xxx):negotiate error NO_PROPOSAL_CHOSEN

双方配置的IPSec策略不匹配。(对端发起协商)

ISAKMP(xxx): ISAKMP: not found matchable policy

双方配置的IPSec规则不匹配。

ISAKMP(xxx): dealing with Notify Payload

ISAKMP:     Notify-Message: NO_PROPOSAL_CHOSEN

双方配置的ISAKMP策略不匹配。(本端发起协商,第一阶段中)

ISAKMP(xxx): dealing with Notify Payload

ISAKMP:     Notify-Message: NO_PROPOSAL_CHOSEN

双方配置的IPSec策略不匹配,或配置的规则(access-list)不匹配。(本端发起协商,第二阶段中)

ISAKMP(xxx): negotiate error ATTRIBUTES-NOT-SUPPORTED 

本端不支持对端建议的属性。(对端发起协商)

ISAKMP(xxx): dealing with Notify Payload

ISAKMP:Notify-Message: ATTRIBUTES-NOT-SUPPORTED

对端不支持本端建议的属性。(本端发起协商)

相关命令

show crypto ipsec sa

show crypto isakmp sa

debug crypto packet

5.1.6   encryption(IKE policy)

要在IKE策略内指定加密算法,使用ISAKMP策略配置命令encryption(IKE policy)。IKE策略定义一套参数,在IKE协商期间使用这些参数。使用该命令的no形式恢复加密算法为缺省值。

encryption {des|3des}

no encryption {des|3des}

参数

参数

参数说明

des

指定DES作为加密算法。

3des

指定3DES作为加密算法。

缺省

DES加密算法。

命令模式

ISAKMP策略配置态

使用说明

使用该命令指定在IKE策略中使用的加密算法。

示例

本示例配置IKE策略中加密算法为DES加密算法(所有其它参数设置为缺省值):

router_config# crypto isakmp policy 10

router_config_isakmp# encryption des

router_config_isakmp# exit

router_config#

相关命令

authentication(IKE policy)

crypto isakmp policy

group(IKE policy)

hash(IKE policy)

lifetime(IKE policy)

show crypto isakmp policy

5.1.7   group(IKE policy)

要在IKE策略内指定Diffie-Hellman组,使用ISAKMP策略配置命令group(IKE policy)。IKE策略定义一套参数,在IKE协商期间使用这些参数。使用该命令的no形式恢复Diffie-Hellman组为缺省值。

group {1|2}

no group {1|2}

参数

参数

参数说明

1      

指定768比特Diffie-Hellman组。

2

指定1024比特Diffie-Hellman组。

缺省

768比特Diffie-Hellman组(group 1)。

命令模式

ISAKMP策略配置态

使用说明

使用该命令指定IKE策略中使用的Diffie-Hellman组。

示例

本示例配置IKE策略为1024比特Diffie-Hellman组(所有其它参数设置为缺省值):

router_config# crypto isakmp policy 10

router_config _isakmp# group 2

router_config _isakmp# exit

router_config#

相关命令

authentication(IKE policy)

crypto isakmp policyen

cryption(IKE policy)

hash(IKE policy)

lifetime(IKE policy)

show crypto isakmp policy

5.1.8   hash(IKE policy)

要在IKE策略内指定哈氏算法,使用ISAKMP策略配置命令hash(IKEpolicy)。IKE策略定义一套参数,在IKE协商期间使用这些参数。使用该命令的no形式恢复哈希算法为缺省的SHA-1哈希算法。

hash {sha|md5}

no hash {sha|md5}

参数

参数

参数说明

sha

指定SHA-1(HMAC变体)作为哈希算法。

md5

指定MD5(HMAC变体)作为哈希算法。

缺省

SHA-1哈希算法

命令模式

ISAKMP策略配置态

使用说明

使用该命令指定IKE策略中使用的哈希算法。

示例

本示例配置IKE策略为使用MD5哈希算法(所有其它参数设置为缺省值):

router_config # crypto isakmp policy 10

router_config _isakmp# hash md5

router_config _isakmp# exit

router_config#

相关命令

authentication(IKE policy)

crypto isakmp policy encryption(IKE policy)

group(IKE policy)

lifetime(IKE policy)

show crypto isakmp policy

5.1.9   lifetime(IKE policy)

要描述IKE SA的生命期,使用ISAKMP策略配置命令lifetime(IKE policy)。使用该命令的no形式恢复SA生命期为缺省值。

lifetime seconds

no lifetime seconds

参数

参数

参数说明

seconds

指定每个IKE SA在失效之前存在的秒数。使用60到86400秒之间的整数。

缺省

86400秒

命令模式

ISAKMP策略配置态

使用说明

使用该命令指定IKE SA在失效之前存在多长时间。

当IKE开始协商时,首先为其对话在安全参数上达成一致。这些一致的参数由SA引用。IKE SA一直保留,直到其生命期失效。在IKE SA失效之前,它可以被后续的IKE协商重新使用,这在设置新的IPSec SA时可以节省时间。新的IKE SA在当前IKE SA失效之前协商。

因此,要节省设置IPSec 的时间,应配置较长的IKE SA生命期。配置的生命期越短,IKE协商可能会越安全。

注意:

当本端发起与对端之间的IKE协商时,只有对端策略的生命期比本端的策略的生命期短或者相等,才可以选择该策略。

如果生命期不相等,选择较短的生命期。

示例

本示例配置IKE策略的安全协会生命期为600秒(所有其它参数设置为缺省值):

router_config# crypto isakmp policy 10

router_config_isakmp# lifetime 600

router_config_isakmp# exit

router_config#

相关命令

authentication(IKE policy)

crypto isakmp policy

encryption(IKE policy)

group(IKE policy)

hash(IKE policy)

show crypto isakmp policy

5.1.10   show crypto isakmp policy

要浏览每个IKE策略的参数,使用show crypto isakmp policy。

show crypto isakmp policy

参数

该命令没有参数。

命令模式

管理态

示例

下面是配置了两个IKE策略(分别为优先级10和20)后show crypto isakmp policy命令的输出:

router# show crypto isakmp policy

Protection suite of priority 10

     encryption algorithm:    DES  - Data Encryption Standard (56 bit keys).

     hash algorithm:          Message Digest 5

     authentication method:   Pre-Shared Key

     Diffie-Hellman group:    #1 (768 bit)

     lifetime:                5000 seconds

Protection suite of priority 20

     encryption algorithm:    3DES - Triple Data Encryption Standard.

     hash algorithm:          Secure Hash Standard

     authentication method:   Pre-Shared Key

     Diffie-Hellman group:    #2 (1024 bit)

     lifetime:                10000 seconds

Default protection suite

  encryption algorithm:    DES  - Data Encryption Standard (56 bit keys).

     hash algorithm:          Secure Hash Standard

     authentication method:   Pre-Shared Key

     Diffie-Hellman group:    #1 (768 bit)

     lifetime:                86400 seconds

相关命令

authentication(IKE policy)

crypto isakmp policy

encryption(IKE policy)

group(IKE policy)

hash(IKE policy)

lifetime(IKE policy)

5.1.11   show crypto isakmp sa

要显示所有当前IKE SA,使用show crypto isakmp sa。

show crypto isakmp sa

参数

该命令没有参数。

命令模式

管理态

使用说明

示例下面是在两台终端之间成功地完成IKE协商之后,show crypto isakmp sa命令的输出范例:

MyPeerRouter# show crypto isakmp sa

    dst            src           state               state-id       conn

192.2.2.19     192.2.2.199    <I>Q_SA_SETUP        2           aaa 100

192.2.2.19     192.2.2.199    <I>M_SA_SETUP        1           aaa 100

下面表格显示在show crypto isakmp sa命令的输出中可能显示的各种不同的状态。当存在ISAKMP SA时,则它大多数时候为静止状态(Q_SA_SETUP)。

主模式交换中的状态:

状态

解释

M_NO_STATE

该阶段为“初期”阶段,没有状态。

M_SA_EXCH

终端已经形成ISAKMP SA的参数。

M_KEY_EXCH

终端已经交换Diffie-Hellman公共密钥,并且产生了共享的秘密。ISAKMP SA还未认证。

M_SA_SETUP

ISAKMP SA已经认证。开始快速模式交换。

快速模式交换中的状态:

状态

解释

Q_IDLE_1

快速模式状态1。

Q_IDLE_2

快速模式状态2。

Q_SA_SETUP

IPSec SA协商成功。

相关命令

crypto isakmp policy

lifetime(IKE policy) 

第6章   Web认证命令

6.1  Web认证命令

Web认证命令包括:

l   web-auth enable

l   web-auth accounting

l   web-auth authentication

l   web-auth keep-alive

l   web-auth holdtime

l   web-auth authtime

l   web-auth portal-server

l   web-auth kick-out

l   show web-auth

l   show web-auth interface

l   show web-auth user

l   debug web-auth event

l   debug web-auth error

l   debug web-auth verbose

l   debug web-auth http event

l   debug web-auth http request

l   debug web-auth http

l   debug web-auth

6.1.1   web-auth enable

命令描述

web-auth enable

no web-auth enable

参数

缺省

未开启web认证

说明

在路由接口(以太网类型)上开启web认证功能,如果不开启web认证功能,通过该路由接口的报文不受web认证的控制。

命令模式

接口配置模式

示例

下面的命令在 interface FastEthernet0/0上开启web认证:

Router_config_f0/0#web-auth enable

6.1.2   web-auth accounting

命令描述 

web-auth accounting method-name

no web-auth accounting

参数

参数

参数说明

Method- name

在aaa中配置的认证方法列表。取之范围:N/A。

缺省

无认证方法

说明

系统在用户登录后后将使用配置的计费方法进计费,如果计费操作不成功,则通知用户认证失败。如果未配置计费方法,则按“default”方法处理。

命令模式

接口配置模式

示例

下面的命令先配置一个名为weba-acct的计费方法列表,然后在 interface FastEthernet0/0上使用该方法:

Router_config# aaa accounting network weba-acct start-stop radius

Router_config_f0/0# web-auth account weba-acct

6.1.3   web-auth authentication

命令描述

web-auth authentication method-name

no web-auth authentication

参数

参数

参数说明

Method- name

在aaa中配置的计费方法列表。取值范围:N/A。

缺省

无认证方法

说明

系统在用户登录后后将使用配置的认证方法进认证,如果认证操作不成功,则通知用户认证失败。如果未配置认证方法,则按“default”方法处理。

命令模式

接口配置模式

示例

下面的命令先配置一个名为weba-auth的认证方法列表,然后在 FastEthernet0/0上使用该方法:

Router_config# aaa authentication login weba local

Router_config_f0/0# web-auth authentication weba 

6.1.4   web-auth keep-alive

命令描述

web-auth keep-alive keep-alive-time

noweb-auth keep-alive

参数

参数

参数说明

keep-alive-time

用户浏览器向路由器发送在线通知的周期,以秒为单位。取值范围:60-65535。

缺省

60秒

说明

在重新配置keep alive之后,已经通过认证的用户的浏览器将在按原来的的周期发送一次在线通知报文后启用新的发送周期;在配置keep alive之后才通过认证的用户的浏览器将立即以配置后的周期发送在线通知报文。

命令模式 

管理配置模式

示例

下面的命令将用户浏览器向路由器发送在线通知的周期设为180秒:

Router_config#web-auth keep-alive 180

6.1.5   web-auth holdtime

命令描述

web-auth holdtime holdtime

no web-auth holdtime

参数

参数

参数说明

holdtime

路由器检测用户是否在线的定时器时长。取值范围:60-65535。

缺省

180秒

说明

路由器通过用户浏览器发送的在线通知报文来检测用户是否在线,如果超过holdtime的时长没有收到在线通知报文,路由器将认为该用户非正常下线,强制该用户登出,并停止对该用户的计费。

命令模式

管理配置模式

示例

下面的命令将holdtime设置为600秒。

Router_config#web-auth holdtime 600

6.1.6   web-auth authtime

命令描述

web-auth authtimeauthtime

no web-authtime

参数

参数

参数说明

authtime

从用户分配到dhcp地址开始到通过认证(包括计费)的最长时间。取值范围:60-65535。

缺省

180秒

说明

在用户使用dhcp协议后路由器将为期分配一定的资源以便于认证,如果用户在authtime之内没有通过认证,路由器将释放为其分配的资源。如果用户需要再次发起认证,则需要重新利用dhcp触发路由器为其分配认证资源。

命令模式

管理配置模式

示例

下面的命令将authtime设置为360秒:

Router_config#web-auth authtime 360

6.1.7   web-auth portal-server

命令描述

web-auth portal-server A.B.C.D

no web-auth portal-server

参数

参数

参数说明

A.B.C.D

用户在通过认证前,使用域名进行web访问时,实际访问到的目的地址。取值范围:路由器上可访问的接口的IP地址。

缺省

说明

用户在通过认证前,进行DNS解析时,其DNS应答报文中的answer段的IP地址被修改为portal server的地址,这样用户的http请求就被重定向到portal server,路由器内置的portal server根据当前的配置给用户返回相应的web页面。

命令模式

管理配置模式

示例

下面的命令将portal server的地址设置为192.168.20.41。

Router_config#web-auth portal-server 192.168.20.41

6.1.8   web-auth kick-out

命令描述

web-auth kick-out A.B.C.D

参数

参数

参数说明

A.B.C.D

用户的IP地址。取值范围:N/A。

缺省

说明

此命令将给定IP的用户从路由器删除,如果删除之前已经开始对用户计费,删除时路由器会停止对该用户的计费。删除后用户如果要再次通过认证,需要使用dhcp分配地址来重新触发认证过程。

命令模式

管理配置模式

示例

下面的命令删除IP地址为192.168.20.43的用户:

Router_config#web-auth kick-out 192.168.20.43

6.1.9   show web-auth

命令描述

show web-auth

参数

缺省

说明

该命令用来显示路由器中当前的web认证配置。

命令模式

特权模式

示例

下面的命令显示路由器中当前的web认证配置:

Router_config#show web-auth

web authentication parameters

holdtime        3600

authtime        600

keep-alive      60

portal-server   192.168.20.41

6.1.10   show web-auth interface

命令描述

show web-auth interface[Ethernet|FastEthernet]  interface number

参数

参数

参数说明

interface number

路由接口编号。取值范围:N/A。

缺省

说明

该命令用来显示路由器中指定接口的web认证配置。

命令模式

特权模式

示例

下面的命令显示 interface FastEthernet0/0下面的web认证配置:

Router_config#show web-auth interface FastEthernet0/0

web authentication parameters

web-auth           enable

account-method     weba-acct

authen-method      weba

mode               user

6.1.11   show web-auth user

命令描述

show web-auth user

参数

缺省

说明

该命令用来显示路由器中当前的所有用户,包括已经通过认证的用户和尚未完成认证的用户。

命令模式

特权模式

示例

下面的命令显示当前的用户:

Router#show web-auth user

IP              MAC-ADDR        state                   remain-time(seconds)

192.168.20.42   0008.74b7.3de1  WEBA_USER_AUTHENTICATED 3572

-------------------------------------

authenticated users: 1, authenticating users: 0

6.1.12   debug web-auth event

命令描述

debug web-auth event

参数

缺省

说明

该命令用来输出web认证过程中的事件信息,比如收到认证请求、认证失败、通过认证、用户登出等事件。

命令模式

特权模式

示例

Router#debug web-auth event

6.1.13   debug web-auth error

命令描述

debug web-auth error

参数

缺省

说明

该命令用来输出一切错误信息,用于错误的定位。

命令模式

特权模式

示例

Router#debug web-auth error

6.1.14   debug web-auth verbose

命令描述

debug web-auth verbose

参数

缺省

说明

该命令使 debug web-auth event命令输出的信息更加详细,使其在可能的情况下输出和事件相关的用户的mac地址。

命令模式

特权模式

示例

Router#debug web-auth verbose

6.1.15   debug web-auth http event

命令描述

debug web-auth http event

参数

缺省

说明

该命令用来输出web认证中和http相关的事件信息,比如收到socket连接请求,socket断开等。

命令模式

特权模式

示例

Router#debug web-auth http event

6.1.16   debug web-auth http request

命令描述

debug web-auth request

参数

缺省

说明

该命令用来输出http请求的内容。

命令模式

特权模式

示例

Router#debug web-auth http request

6.1.17   debug web-auth http

命令描述

debug web-auth http

参数

缺省

说明

该命令相当于同时执行了debug web-auth http eventdebug web-auth request

命令模式

特权模式

示例

Router#debug web-auth http

6.1.18   debug web-auth

命令描述

debug web-auth

参数

缺省

说明

该命令相当于同时打开web认证的所有调试开关。

命令模式

特权模式

示例

Router#debug web-auth

第7章   802.1x配置命令

7.1  802.1x配置命令

802.1x的配置命令有:

l   dot1x enable

l   dot1x port-control

l   dot1x multiple-hosts

l   dot1x default

l   dot1x max-req

l   dot1x reauth-max

l   dot1x re-authentication

l   dot1x timeout quiet-period

l   dot1x timeout re-authperiod

l   dot1x timeout tx-period

l   dot1x user-permit

l   dot1x authentication method

l   dot1x authen-type、dot1x authentication type

l   aaa authentication dot1x

l   debug dot1x error

l   debug dot1x state

l   debug dot1x packet

l   show dot1x

l   show dot1xmac

7.1.1   dot1x enable

命令描述

dot1x enable

no dot1x enable

参数

缺省

使用说明

使能802.1x功能,如果没有使能802.1x功能,则在端口下是不能启动802.1x功能的,如果禁止802.1x功能则,所有802.1x功能的端口将取消掉802.1x功能,同时,所有的802.1x报文将不会被CPU接收,而会象一般的组播报文一样在vlan内转发。

命令模式

全局配置模式

示例

下面的命令将启动dot1x。

Switch(config)#dot1x enable

Switch(config)# 

7.1.2   dot1x port-control

命令描述

dot1x port-control {auto|force-authorized|force-unauthorized}

no dot1x port-control

参数

参数

参数说明

auto

启用802.1x协议认证方式。

force-authorized

取消802.1x协议认证。

force-unauthorized

强制设置该端口为不可存取。

缺省

force-authorized

使用说明

802.1x协议是一种两层的基于端口的认证方式,使用auto命令可以启动该认证方式,该认证方式只能配置于物理端口,且该端口属性不能是vlan主干、动态存取、安全端口、监控端口。

命令模式

接口配置模式

示例

下面的命令将在f0/24上启动802.1x。

Switch(config_f0/24)# dot1x port-control auto

Switch(config_f0/24)# 

下面的命令先将f0/23配置为vlan主干,然后启动802.1x。

Switch(config_f0/23)#switchport mode trunk

Switch(config_f0/23)#dot1x port-control auto

802.1x Control Failed, 802.1x cannot cmd on vlanTrunk port(f0/23)

Switch(config_f0/23)# 

7.1.3   dot1x multiple-hosts

命令描述

dot1x multiple-hosts

no dot1x multiple-hosts

参数

缺省

禁止801.1x的多客户端认证。

使用说明

802.1x的认证主要对单个主机用户进行认证,这时,交换机只允许一个用户进行认证、访问控制,其他用户是不能进行认证和访问的,除非前一个用户退出认证、访问过程;然而有时端口可能通过不支持802.1x的交换设备(例如1108交换机)与多个主机相连接,为了使这些主机用户都能访问,可以启动多主机端口访问功能。

将一个端口配置为802.1x的多主机认证后,交换机将对不同的台主机用户进行认证,当认证通过后,交换机将允许该主机通过交换机进行访问(使用主机的MAC进行控制)。 

命令模式

接口配置模式

示例

下面的命令将在f0/24上启动多主机端口认证。

Switch(config_f0/24)# dot1x multiple-hosts

Switch(config_f0/24)# 

7.1.4   dot1x default

命令描述

dot1x default

参数

缺省

使用说明

将所有的全局配置恢复到默认配置。

命令模式

全局配置模式

示例

下面的命令将dot1x所有的配置参数恢复到默认值。

Switch(config)#dot1x default

Switch(config)# 

7.1.5   dot1x max-req

命令描述

dot1x max-req count

no dot1x max-req

参数

参数

参数说明

count

身份认证请求的最大次数,范围1-10。

缺省

2

使用说明

根据不同的网络环境,更改身份认证请求的最大次数设置,以保证客户端与认证服务器间的认证通过。

命令模式

全局配置模式

示例

下面的命令将配置dot1x身份认证请求的最大次数为4。

Switch(config)#dot1x max-req 4

Switch(config)#  

7.1.6   dot1x reauth-max

命令描述

dot1x reauth-max count

no dot1x reauth-max

参数

参数

参数说明

count

认证重试的最大次数,范围1-10。

缺省

4

使用说明

设置重复认证的次数,超过该次数的认证,客户机没有响应,认证将会被挂起。

命令模式

全局配置模式

示例

下面的命令将配置dot1x身份认证请求的最大次数为5。

Switch(config)#dot1x reauth-max 5

Switch(config)#  

7.1.7   dot1x re-authentication

命令描述

dot1x re-authentication

no dot1x re-authentication

参数

缺省

使用说明

启动重认证功能,当端口认证通过以后,还会周期性的向主机进行认证,该周期可以通过命令dot1x timeout re-autjperiod,进行配置。

命令模式

全局配置模式

示例

下面的命令将启动重认证功能。

Switch(config)#dot1x re-authentication

Switch(config)#  

7.1.8   dot1x timeout quiet-period

命令描述

dot1x timeout quiet-period time

no dot1x timeout quiet-period

参数

参数

参数说明

time

dot1x重启动认证的周期,范围0-65535s。

缺省

60s

使用说明

在认证失败后有一段安静时间,在该时间内,交换机将不会接受或启动任何认证。

命令模式

全局配置模式

示例

下面的命令将配置quiet-period的值为40。

Switch(config)#dot1x timeout quiet-period 40

Switch(config)#  

7.1.9   dot1x timeout re-authperiod

命令描述

dot1x timeout re-authperiod time

no dot1x timeout re-authperiod

参数

参数

参数说明

time

dot1x重认证的周期值,1-4294967295s。

缺省

3600s

使用说明

该命令只有在启动重认证后才会产生作用。

命令模式

全局配置模式

示例

下面的命令将配置dot1x重认证的周期为7200s。

Switch(config)# dot1x timeout re-authperiod 7200

Switch(config)#  

7.1.10   dot1x timeout tx-period

命令描述

dot1x timeout tx-period time

no dot1x timeout tx-period

参数

参数

参数说明

time

时间,1- 65535s。

缺省

30s

使用说明

该命令可以等待主机客户端响应认证请求的时间间隔,超过该时间交换机将重发认证请求。

命令模式

全局配置模式

示例

下面的命令将配置发送频率为24。

Switch(config_f0/0)# dot1x timeout tx-period 24

Switch(config_f0/0)# 

7.1.11   dot1x user-permit

命令描述

dot1x user-permit xxx yyy zzz

no dot1x user-permit

参数

参数

参数说明

xxx

用户名。

yyy

用户名。

zzz

用户名。

缺省

没有用户绑定,所有用户都通过。

使用说明

该命令配置端口下绑定的用户,每一个端口下可以绑定8个用户;当启动802.1x认证时,只会对绑定的用户名执行认证,其他用户不执行认证,肯定认证失败。

命令模式

端口配置模式

示例

下面的命令将f0/1配置绑定用户为a、b、c、d。

Switch(config_f0/1)# dot1x user-permit a b c d

Switch(config_f0/1)# 

7.1.12   dot1x authentication method

命令描述

dot1x authentication method xxx

no dot1x authentication method

参数

参数

参数说明

xxx

方法名。

缺省

“default”方法。

使用说明

该命令配置端口下的认证方法,该方法应是AAA中提供的认证方法之一,每一个端口只使用一种方法;当AAA对802.1x的用户进行认证时,AAA将会选择配置的认证方法执行认证。

命令模式

端口配置模式

示例

下面的命令将在端口f0/1配置认证方法为abcd,该方法使用本地用户名认证;在端口f0/2配置认证方法为efgh,该方法使用radius远程认证。

Switch(config) #aaa authentication dot1x abcd local

Switch(config) #aaa authentication dot1x efgh radius

Switch(config) #int f0/1

Switch(config_f0/1)# dot1x authentication method abcd

Switch(config_f0/1)# int f0/2

Switch(config_f0/2)# dot1x authentication method efgh  

7.1.13   dot1x authen-type、dot1x authentication type

命令描述

dot1x authen-type {chap|eap}

no dot1x authen-type

配置全局下dot1x的认证类型,no命令恢复为默认值。

dot1x authentication type {chap|eap}

no dot1x authentication type

配置端口下dot1x的认证类型,no命令恢复为默认值。

参数

None

缺省

全局下默认为chap

端口下默认为全局下的配置类型。

使用说明

该命令配置认证类型,该类型将决定AAA使用Chap或Eap认证;使用Chap时MD5所需的challenge将在本地产生,而使用Eap时challenge将认证服务器上产生;每一个端口只使用一种认证类型,默认情况下该类型使用全局配置的认证类型,当端口配置了认证类型时就一直使用该认证类型,除非使用No命令恢复到默认值。

命令模式

端口和全局配置模式

示例

下面的命令将在端口f0/1配置认证类型为Chap,全局认证类型为Eap。

Switch(config) #dot1x authen-type eap

Switch(config) #int f0/1

Switch(config_f0/1)# dot1x authentication type chap  

7.1.14   aaa authentication dot1x

命令描述

aaa authentication dot1x {default} method1 [method2...]

no aaa authentication dot1x {default} method1 [method2...]

参数

参数

参数说明

Default

当用户认证时使用以下的方法。

method1 [method2...]

enable 、group radius、line、local、local-case、none

缺省

没有认证

使用说明

method参数提供一系列的方法对客户主机提供的密码进行认证,对802.1x的aaa认证方式最好采用radius认证,也可以使用本地配置数据进行认证,如本地保存于配置中的用户密码、使用enable和line的密码等等。

命令模式

全局配置模式

示例

下面的命令将配置dot1x认证方式为radius。

Switch(config)#aaa authentication dot1x default radius

Switch(config)#  

7.1.15   debug dot1x error

命令描述

debug dot1x error

参数

缺省

使用说明

用来输出在dot1x运行中出现的一切错误信息,用于错误的定位。 

7.1.16   debug dot1x state

命令描述

debug dot1x state

参数

缺省

使用说明

输出格式如下:

2003-3-18 17:40:09 802.1x:AuthSM(F0/10) state Connecting-> Authenticating, event rxRespId

2003-3-18 17:40:09 802.1x:F0/10 Create user for Enter authentication

2003-3-18 17:40:09 802.1x:BauthSM(F0/10) state Idle-> Response, event authStart

2003-3-18 17:40:09 802.1x:F0/10 user "myname" denied, Authentication Force Failed

2003-3-18 17:40:09 802.1x:F0/10 Authentication Fail

2003-3-18 17:40:09 802.1x:BauthSM(F0/10) state Response-> Fail, event aFail 

7.1.17   debug dot1x packet

命令描述

debug dot1x packet

参数

None

缺省

使用说明

2003-3-18 17:40:09 802.1x:F0/10 Tx --> Supplicant(0008.74bb.d21f)

EAPOL  ver:01, type:00, len:5

EAP    code:01, id:03, type:01, len:5

00

2003-3-18 17:40:09 802.1x:F0/10 Rx <-- Supplicant(0008.74bb.d21f)

EAPOL  ver:01, type:00, len:10

EAP    code:02, id:03, type:01, len:10

62 64 63 6f 6d a5 

7.1.18   show dot1x

命令描述

show dot1x [interface intf-id]

这条命令用来显示802.1x配置信息。

参数

参数

参数说明

intf-id

具体的物理端口。

缺省

使用说明

显示802.1x配置信息。

命令模式

管理配置模式

示例

下面的命令将在端口F0/10配置dot1x port-control auto。

Switch_config#sho dot1x

802.1X Parameters

reAuthen         No

reAuth-Period    3

quiet-Period     10

Tx-Period        30

Supp-timeout     30

Server-timeout   30

reAuth-max       4

max-request      2

authen-type      Eap

IEEE 802.1x on port F0/10 enabled

Authorized                      Yes

Authen Type                    Eap

Authen Method                default

Permit Users                    All Users

Multiple Hosts                  Disallowed

Supplicant                      aaa(0008.74bb.d21f)

Current Identifier              21

Authenticator State Machine

State                           Authenticated

Reauth Count                    0

Backend State Machine

State                           Idle

Request Count                   0

Identifier (Server)             20

Port Timer Machine

Auth Tx While Time              16

Backend While Time              16

reAuth Wait Time                3

Hold Wait Time                  0

 

7.1.19   show dot1xmac

命令描述

show dot1xmac

这条命令用来显示802.1x认证mac地址列表信息。

参数

缺省

使用说明

显示802.1x认证mac地址列表信息。

命令模式

管理配置模式

示例

Switch_config#sho dot1xmac

%DOT1X AUTHORIZED MAC Information:

FastEthernet0/0 2 entries

MacAddr        Vlan   Type

00:e0:0f:0c:05:30  3     Static

08:00:3e:ff:77:e0  2     Dynamic

猜你喜欢

转载自www.cnblogs.com/landv/p/10015803.html