08-安全配置 142使用AAA进行PPP认证 许多用户通过异步或是SDN拨号访问网络中心服务器。AAA安全服务使得在串口上大 量运行PPP时的认证方法变得容易了。不管决定使用所支持的何种PPP认证方法,均 可以使用 aaa authentication ppp开启AAA认证。配置时,在全局配置模式下使用下面 的命令: 命令 目的 aaa authentication ppp default list-name) method1 [ method2. 创建本地认证列表 interface interface-type number 进入端口配置模式,认证列表将应用于该端口上。 ppp authentication(chap|pap| chap pap将认证列表应用于某条或是某几条线路上 I pap chap)default list-name 使用 aaa authentication命令,可以创建一张或是几张认证方法列表,在用户开始运行 PPP时使用这些列表。使用 ppp authentication配置命令来应用这些列表。要创建一张缺 省列表,使用 defalut参数,在其后紧跟缺省情况下想要使用的方法。例如,指定本地用 户名数据库作为认证的缺省方法,输入下面的命令行 aa authentication ppp default local 关键字lst-name是用来命名所建立的列表的任何字符串。关键字 method指定认证过程 所采用的实际方法。仅当前面的方法返回认证错误时,才会使用其他的认证方法。如果 前面使用的方法返回认证失败,则不再使用其他的认证方法。如果指定即使所有的方法 都返回错误仍能成功认证,只需在命令行中指定none作为最后一个认证方法。例如,下 面例子中即使 TACACS+服务器返回错误,仍要保证认证成功,可以输入下面的命令行: aaa authentication ppp default tacacs+ none 注意: 由于关键宇none使得登录的任何用户都能成功的被认证,所以应当将该关键字作为备用 的认证方法。 下表列出了PPP可使用的认证方式 关键字 说明 使用服务器组进行认证 group-restrict 使用服务器组进行认证,但当用户指定使用某台服务器后,此服务器组失效 ocal 使用本地用户名数据库认证 使用本地用户名数据库进行认证(用户名区分大小写)。 none 认证无条件通过 使用 RADIUS认证 使用 TACACS+认证 (1)使用本地口令进行PPP认证 在 aaa authentication ppp命令中,用 local关键字指定使用本地用户名数据库进行 认证。例如,在运行PPP的线路上要指定本地用户名数据库为认证方法,并且不 需要其他任何方法,可以输入下面的命令行:
08-安全配置 1.4.2 使用 AAA 进行 PPP 认证 许多用户通过异步或是 ISDN 拨号访问网络中心服务器。AAA 安全服务使得在串口上大 量运行 PPP 时的认证方法变得容易了。不管决定使用所支持的何种 PPP 认证方法,均 可以使用 aaa authentication ppp 开启 AAA 认证。配置时,在全局配置模式下使用下面 的命令: 命令 目的 aaa authentication ppp {default | list-name} method1 [method2...] 创建本地认证列表。 interface interface-type number 进入端口配置模式,认证列表将应用于该端口上。 ppp authentication {chap | pap | chap pap | pap chap} {default | list-name} 将认证列表应用于某条或是某几条线路上。 使用 aaa authentication 命令,可以创建一张或是几张认证方法列表,在用户开始运行 PPP 时使用这些列表。使用 ppp authentication 配置命令来应用这些列表。要创建一张缺 省列表,使用 defalut 参数,在其后紧跟缺省情况下想要使用的方法。例如,指定本地用 户名数据库作为认证的缺省方法,输入下面的命令行: aaa authentication ppp default local 关键字 list-name 是用来命名所建立的列表的任何字符串。关键字 method 指定认证过程 所采用的实际方法。仅当前面的方法返回认证错误时,才会使用其他的认证方法。如果 前面使用的方法返回认证失败,则不再使用其他的认证方法。如果指定即使所有的方法 都返回错误仍能成功认证,只需在命令行中指定 none 作为最后一个认证方法。例如,下 面例子中即使 TACACS+服务器返回错误,仍要保证认证成功,可以输入下面的命令行: aaa authentication ppp default tacacs+ none 注意: 由于关键字 none 使得登录的任何用户都能成功的被认证,所以应当将该关键字作为备用 的认证方法。 下表列出了 PPP 可使用的认证方式: 关键字 说明 group 使用服务器组进行认证。 group-restrict 使用服务器组进行认证,但当用户指定使用某台服务器后,此服务器组失效。 local 使用本地用户名数据库认证。 local-case 使用本地用户名数据库进行认证(用户名区分大小写)。 none 认证无条件通过。 radius 使用RADIUS 认证 。 tacacs+ 使用TACACS+ 认证。 (1) 使用本地口令进行 PPP 认证 在 aaa authentication ppp 命令中,用 local 关键字指定使用本地用户名数据库进行 认证。例如,在运行 PPP 的线路上要指定本地用户名数据库为认证方法,并且不 需要其他任何方法,可以输入下面的命令行: - 7 -
08-安全配置 a authentication ppp default local 有关更多的增加用户到本地用户名数据库的更多信息,参见“建立本地认证数据 (2)使用RAD|US进行PPP认证 在 aaa authentication ppp命令中,用 RADIUS关键字指定 RADIUS作为运行PPP 时的认证方法。例如,要指定 RADIUS为用户认证的方法,并且不需要定义其他 方法,可以输入下面的命令行: aaa authentication ppp default radius 在使用RAD|Us作为注册认证方法时,需要配置 RADIUS服务,有关详细信息参 见“配置 RADIUS (3)使用 TACACS+进行PPP认证 在 aaa authentication ppp命令中,用 TACACS+关键字指定 TACACS+作为运行 PPP的端口的认证方法。例如,要指定 TACACS+为用户认证的方法,并且不需要 定义其他方法,可以输入下面的命令行: aaa authentication ppp default tacacs+ 在能够使用 TACACS+作为PPP认证方法之前,需要首先配置 TACACS+服务,有 关详细信息参见“配置 TACACS+”。 143在进入特权级别时开启口令保护 使用 aaa authentication enable default命令创建一个认证方法列表,这些方法决定了某 个用户是否可以执行特权级别的EXEC命令。可以至多指定四种认证方法。仅当前面所 用的方法返回认证错误时,才会使用其他的认证方法。如果前面使用的方法返回认证失 败,则不再使用其他的认证方法,如果指定即使所有的方法都返回错误仍能成功认证 只需在命令中指定none作为最后一个认证方法。配置时,在全局配置模式下使用下面的 命令: 命令 目的 aaa authentication enable default method1 [method2. 在用户进入特权级别时开启口令认证。 关键字 method指定认证过程使用的实际方法,在认证时依输入的次序使用。 下表列出了所支持的口令保护认证方法: 关键字 说明 enable 使用 enable口令认证 使用服务器组进行认证 使用服务器组进行认证,但当用户指定使用某台服务器后,此服务器组失效 line 使用线路口令认证 none 认证无条件通过。 radius 使用 RADIUS进行认证 acas+ 使用 TACACS+认证
08-安全配置 aaa authentication ppp default local 有关更多的增加用户到本地用户名数据库的更多信息,参见“建立本地认证数据 库”。 (2) 使用 RADIUS 进行 PPP 认证 在 aaa authentication ppp 命令中,用 RADIUS 关键字指定 RADIUS 作为运行 PPP 时的认证方法。例如,要指定 RADIUS 为用户认证的方法,并且不需要定义其他 方法,可以输入下面的命令行: aaa authentication ppp default radius 在使用 RADIUS 作为注册认证方法时,需要配置 RADIUS 服务,有关详细信息参 见“配置 RADIUS”。 (3) 使用 TACACS+进行 PPP 认证 在 aaa authentication ppp 命令中,用 TACACS+关键字指定 TACACS+作为运行 PPP 的端口的认证方法。例如,要指定 TACACS+为用户认证的方法,并且不需要 定义其他方法,可以输入下面的命令行: aaa authentication ppp default tacacs+ 在能够使用 TACACS+作为 PPP 认证方法之前,需要首先配置 TACACS+服务,有 关详细信息参见“配置 TACACS+”。 1.4.3 在进入特权级别时开启口令保护 使用 aaa authentication enable default 命令创建一个认证方法列表,这些方法决定了某 个用户是否可以执行特权级别的 EXEC 命令。可以至多指定四种认证方法。仅当前面所 用的方法返回认证错误时,才会使用其他的认证方法。如果前面使用的方法返回认证失 败,则不再使用其他的认证方法,如果指定即使所有的方法都返回错误仍能成功认证, 只需在命令中指定 none 作为最后一个认证方法。配置时,在全局配置模式下使用下面的 命令: 命令 目的 aaa authentication enable default method1 [method2...] 在用户进入特权级别时开启口令认证。 关键字 method 指定认证过程使用的实际方法,在认证时依输入的次序使用。 下表列出了所支持的口令保护认证方法: 关键字 说明 enable 使用enable口令认证。 group 使用服务器组进行认证。 group-restrict 使用服务器组进行认证,但当用户指定使用某台服务器后,此服务器组失效。 line 使用线路口令认证。 none 认证无条件通过。 radius 使用RADIUS进行认证。 tacacs+ 使用TACACS+ 认证。 - 8 -
08-安全配置 当配置了 enable认证方法为远端认证时(即配置了 group, group-restrict, radius或 tacacs+关键字时),使用 RADIUS进行认证和使用 TACACS+认证的用户名不同,下面 分别介绍 (1)使用 RADIUS进行 enable认证 认证的用户名为 SENABLElevelS,其中leve是指用户要进入的特权级别,即 enable 命令后的特权级别的数字,举例来说,如果某用户要进入级别为7的特权级别,需 要输入命令 enable7,如果此时配置了使用RAD|Us进行认证,则提交给 Radius Server的用户名为 SENABLE7$,缺省条件下 enable进入的特权级别均为15,即 在使用 RADIUS进行认证时,提交给 Radius server的用户名为 SENABLE15s。 这就需要预先在 Radius Server上配置相应的用户名和密码,特别要指出的是:在 Radius Server的用户数据库中,要指明用于特权认证的用户的服务类型 ( Service-Type)为6,即 Admin-User (2)使用 TACACS+进行 enable认证: 进行 enable认证时使用的用户名为该用户登录路由器时使用的用户名,举例来说, 如果某用户登录进路由器时输入的用户名为chen,则进行 enable认证时使用的用 户名也是chen,如果用户登录路由器时没有被要求认证或者认证时没有被要求输 入用户名,则登录成功后该用户的用户名为 DEFAULT,需要在 TACACS+ Server 的用户数据库中进行相应设置 144改变提示输入口令时的字符串 使用 aaa authentication password- prompt命令可以改变提示用户输入口令时所显示的缺 省文本。这条命令不仅改变 enable口令的口令提示,也同时改变远端登录时的口令提示。 该命令的no形式恢复口令提示为如下形式的缺省值: Password 命令 aaa authentication password- prompt不改变远程 TACACS+或是 RADIUS服务器 所提供的任何提示信息。配置时,在全局模式下使用下面的命令 命令 目的 aaa authentication password- prompt 在提示用户输入口令时改变缺省的显示文本 14.5建立本地认证数据库 可以创建基于用户名的本地认证系统,用于下列情况 为不支持 TACACS+的网络提供像 TACACS+一样的用户名或是加密的口令认证 系统 提供灵活的登录环境:例如,访问列表验证、登录时自动执行( autocommand) 等情况。 要建立本地用户名认证,可以在全局配置模式下,使用下面命令进行配置: 目的
08-安全配置 当配置了 enable 认证方法为远端认证时(即配置了 group,group-restrict,radius 或 tacacs+关键字时),使用 RADIUS 进行认证和使用 TACACS+认证的用户名不同,下面 分别介绍: (1) 使用 RADIUS 进行 enable 认证: 认证的用户名为$ENABLElevel$,其中 level 是指用户要进入的特权级别,即 enable 命令后的特权级别的数字,举例来说,如果某用户要进入级别为 7 的特权级别,需 要输入命令 enable 7,如果此时配置了使用 RADIUS 进行认证,则提交给 Radius Server 的用户名为$ENABLE7$,缺省条件下 enable 进入的特权级别均为 15,即 在使用 RADIUS 进行认证时,提交给 Radius Server 的用户名为$ENABLE15$。 这就需要预先在 Radius Server 上配置相应的用户名和密码,特别要指出的是:在 Radius Server 的用户数据库中,要指明用于特权认证的用户的服务类型 (Service-Type)为 6,即 Admin-User。 (2) 使用 TACACS+进行 enable 认证: 进行 enable 认证时使用的用户名为该用户登录路由器时使用的用户名,举例来说, 如果某用户登录进路由器时输入的用户名为 chen,则进行 enable 认证时使用的用 户名也是 chen,如果用户登录路由器时没有被要求认证或者认证时没有被要求输 入用户名,则登录成功后该用户的用户名为 DEFAULT,需要在 TACACS+ Server 的用户数据库中进行相应设置。 1.4.4 改变提示输入口令时的字符串 使用aaa authentication password-prompt命令可以改变提示用户输入口令时所显示的缺 省文本。这条命令不仅改变 enable 口令的口令提示,也同时改变远端登录时的口令提示。 该命令的 no 形式恢复口令提示为如下形式的缺省值: Password: 命令 aaa authentication password-prompt 不改变远程 TACACS+或是 RADIUS 服务器 所提供的任何提示信息。配置时,在全局模式下使用下面的命令: 命令 目的 aaa authentication password-prompt text-string 在提示用户输入口令时改变缺省的显示文本。 1.4.5 建立本地认证数据库 可以创建基于用户名的本地认证系统,用于下列情况: z 为不支持 TACACS+的网络提供像 TACACS+一样的用户名或是加密的口令认证 系统 z 提供灵活的登录环境;例如,访问列表验证、登录时自动执行(autocommand) 等情况。 要建立本地用户名认证,可以在全局配置模式下,使用下面命令进行配置: 命令 目的 - 9 -
08-安全配置 username name password password lencryption-type encrypted-password y 建立用户名及对应的密码 1.5AAA认证配置示例 RADIUS认证示例 本节提供了一个使用 RADIUS进行认证的配置示例,展示了如何配置路由器,以便使用 RADIUS进行认证和授权的过程: aaa authentication login radius-login radius local aaa authentication ppp radius-ppp radius aaa authorization network radius-network radius line tty/vty login authentication radius-login 在这个示例中,各命令行的意义为 命令 aaa authentication login radius- ogin radius local配置路由器在认证登录用户 时使用 RADIUS作为认证方法。如果 RADIUS返回认证错误,则使用本地数据库 对用户进行认证。 命令 aaa authentication ppp radius-ppp radius将路由器配置为:在用户尚未登录 时,采用chap或是pap的ppp认证方法。如果EXEC已经对用户进行了认证, 则不再执行认证 命令 aaa authorization network radius-network radius向 radius请求 NETWORK 服务的授权,如:地址分配以及其他访问控制项目 命令 log in authentication radius-ogi在线路3上开启 radius-ogn方法列表 2. TACACS十认证示例 下面的示例将 TACACS+配置为PPP认证时使用的安全协议: aaa authentication ppp test tacacs+ local interface serial1\0 ppp authentication chap pap test tacacs key testkey 在这个 TACACS+认证配置中,各命令行的意义为: 命令 aaa authentication ppp test tacacs+loca定义方法列表test,该方法列表用 于运行ppp的串行接口。关键字 tacacs+意味着认证将通过 TACACS+进行。如果 在认证期间, TACACS+返回某种类型的错误,关键字loca指示使用网络访问服 务器上的本地数据库来尝试认证。 令 interface选择端口
08-安全配置 username name password { password | [encryption-type] encrypted-password } 建立用户名及对应的密码。 1.5 AAA认证配置示例 1. RADIUS 认证示例 本节提供了一个使用 RADIUS 进行认证的配置示例,展示了如何配置路由器,以便使用 RADIUS 进行认证和授权的过程: aaa authentication login radius-login radius local aaa authentication ppp radius-ppp radius aaa authorization network radius-network radius line tty/vty login authentication radius-login interface serial 1/0 在这个示例中,各命令行的意义为: z 命令 aaa authentication login radius-login radius local 配置路由器在认证登录用户 时使用 RADIUS 作为认证方法。如果 RADIUS 返回认证错误,则使用本地数据库 对用户进行认证。 z 命令 aaa authentication ppp radius-ppp radius 将路由器配置为:在用户尚未登录 时,采用 chap 或是 pap 的 ppp 认证方法。如果 EXEC 已经对用户进行了认证, 则不再执行认证。 z 命令 aaa authorization network radius-network radius 向 radius 请求 NETWORK 服务的授权,如:地址分配以及其他访问控制项目。 z 命令 log in authentication radius-login 在线路 3 上开启 radius-login 方法列表 2. TACACS+认证示例 下面的示例将 TACACS+配置为 PPP 认证时使用的安全协议: aaa authentication ppp test tacacs+ local interface serial1\0 ppp authentication chap pap test tacacs server 1.2.3.4 tacacs key testkey 在这个 TACACS+认证配置中,各命令行的意义为: z 命令 aaa authentication ppp test tacacs+ local 定义方法列表 test,该方法列表用 于运行 ppp 的串行接口。关键字 tacacs+意味着认证将通过 TACACS+进行。如果 在认证期间,TACACS+返回某种类型的错误,关键字 local 指示使用网络访问服 务器上的本地数据库来尝试认证。 z 令 interface 选择端口。 - 10 -
08-安全配置 命令 ppp authentication将方法列表应用于该端口上 命令 tacacs server标识 TACACS+服务器的|P地址为1234 命令 tacacs key定义共享的加密密钥 testkey 下面的示例为PPP配置AAA认证: aaa authentication ppp default if-needed tacacs+ local 在这个例子中,关键字 default 3表示缺省的pp认证方法列表。关键字if- needed的意 义为:如果用户已经通过登录过程中进行的认证,则此次认证可以被跳过。如果需要认 证,则关键字 tacacs+的意义是使用 TACACS+服务器进行认证。如果 TACACS+在认 证期间返回某种类型的错误,关键字loca指示使用路由器上的本地数据库进行认证。 下面的示例为PAP创建了同样的认证过程,与上面不同的是,本示例调用了方法列表 test-list,而不是缺省方法列表 default aaa authentication pap test- list if-needed tacacs+ local rface serial1/0 ppp authentication pap test-list 在本例中,由于方法列表未应用于任何端口,管理员必须使用 interface命令选择端口, 以便该认证方法能够应用到这个端口上。然后,管理员必须使用 ppp authentication将方 法列表应用于具体端口上
08-安全配置 z 命令 ppp authentication 将方法列表应用于该端口上。 z 命令 tacacs server 标识 TACACS+服务器的 IP 地址为 1.2.3.4。 z 命令 tacacs key 定义共享的加密密钥 testkey 下面的示例为 PPP 配置 AAA 认证: aaa authentication ppp default if-needed tacacs+ local 在这个例子中,关键字 default 表示缺省的 ppp 认证方法列表。关键字 if-needed 的意 义为:如果用户已经通过登录过程中进行的认证,则此次认证可以被跳过。如果需要认 证,则关键字 tacacs+的意义是使用 TACACS+服务器进行认证。如果 TACACS+在认 证期间返回某种类型的错误,关键字 local 指示使用路由器上的本地数据库进行认证。 下面的示例为 PAP 创建了同样的认证过程,与上面不同的是,本示例调用了方法列表 test-list,而不是缺省方法列表 default: aaa authentication pap test-list if-needed tacacs+ local interface serial1/0 ppp authentication pap test-list 在本例中,由于方法列表未应用于任何端口,管理员必须使用 interface 命令选择端口, 以便该认证方法能够应用到这个端口上。然后,管理员必须使用 ppp authentication 将方 法列表应用于具体端口上。 - 11 -