因公司人員變動比較頻繁,經常需要對公司網絡設備登陸用戶名和密碼進行變更。然而公司設備又比較多,一次更改密碼非常浪費時間,故打算對所有網絡設備進行統一認證管理。
本實驗是對實際環境的模擬,配置相對實際應用當中更豐富,也利於學習。
實驗前提:
1、本拓撲中已具備Radius認證服務器,也就是ACS 5.2作爲Radius服務器,服務器的地址是192.168.157.200。
2、本實驗是簡單網絡環境,和實際網絡可能有所差距,但原理是一樣的:所有網絡設備到Radius服務器的路由是通的。
3、本實驗當中的Radius認證服務器是ACS 5.2。認證服務器有很多,原理是一樣的,根據各人習慣和擅長選擇使用。
實驗拓撲:
華爲AAA配置原則:
1、先進入aaa視圖,創建authentication-scheme模板;
2、創建authorization-scheme和accounting-scheme模板(可選);
3、全局視圖下,創建radius-server template模板並配置相應規則;
4、aaa視圖下,創建服務模板service-scheme;
5、創建domain(或者使用default_admin 域),並調用authentication-scheme模板、authorization-scheme模板、accounting-scheme模板、radius-server template模板、service-scheme模板(根據自己需要選擇調用);
6、在user-interface 下選擇認證的方式。
實驗配置:
1、[Core Switch]aaa
[Core Switch-aaa]authentication-scheme acsvty //在創建一個模板,命名爲acsvty//
[Core Switch-aaa-authen-acsvty]authentication-mode radius local //此模板下的認證方式爲首先用radius服務器認證,如果無法連接radius服務器,則其次調用本地認證(如果能夠和radius服務器通信,但用戶名密碼不對,是不會調用備份的本地認證的)//
[Core Switch-aaa-authen-acsvty]qui
2、本實驗沒有做授權和審計(略過)
3、
[Core Switch]radius-server template acs5.2//創建radius-server模板,名爲acs5.2//
Info: Create a new server template.
[Core Switch-radius-acs5.2]radius-server authentication 192.168.157.200 1812
//在模板中指定認證服務器的IP地址爲157.200,端口號爲1812(radius認證端口號一般爲1812,審計爲1813)//
[Core Switch-radius-acs5.2]radius-server authentication 1.1.1.1 1812 secondary
//指定模板中的備份服務器IP地址和端口號//
[Core Switch-radius-acs5.2]radius-server shared-key simple huawei
//配置交換機和radius服務器通信的密鑰爲huawei,防止非法radius服務器或者非法網絡設備接入//
[Core Switch-radius-acs5.2]radius-server timeout 3 retransmit 2
//指定radius服務器的超時時間爲3秒,重傳次數爲2次//
[Core Switch-radius-acs5.2]undo radius-server user-name domain-included
//此命令的作用是當輸入用戶名帶有域名時,交換機自動把域名去掉然後把用戶名發送給radius服務器.例:用戶名輸入vtyuser1@wangrx,交換機只會把vtyuser1當作用戶名發送給radius服務器進行認證,把域名去掉了。至於域名用什麼作爲分隔符、從左往右還是從右往左識別,都可以在模板中配置,在此不多說了,查文檔就有//
4、
[Core Switch]aaa
[Core Switch-aaa]service-scheme admin
//創建service-scheme模板,命名爲admin//
[Core Switch-aaa-service-admin]admin-user privilege level 15
//配置admin-user的權限爲15級//
5、
[Core Switch-aaa]domain wangrx
//創建wangrx域,域內的用戶認證時用戶名需要帶域名。如:vtyuser@wangrx爲用戶名//
[Core Switch-aaa-domain-wangrx]authentication-scheme acs5.2
//調用認證模板。如果需要,調用授權和審計模板.此處沒配置審計模板,不作調用//
[Core Switch-aaa-domain-wangrx]service-scheme admin
//調用服務模板//
[Core Switch-aaa-domain-wangrx]radius-server acs
//調用radius服務器模板//
6、
[Core Switch]telnet server enable
[Core Switch]user-interface vty 0 4
[Core Switch-ui-vty0-4]authentication-mode aaa
[Core Switch-ui-vty0-4]protocol inbound telnet
[Core Switch]user-interface console 0
[Core Switch-ui-console0]authentication-mode aaa
radius服務器配置相關配置:
上面是用戶賬號:vtyuser1 vtyuser2
驗證:
認證在wangrx域中,成功。
用戶認證在default_admin域中,也就是不在任何域中,在默認的域中。
【華爲有兩個默認域,就是 domain default 和domain default_admin。這兩個域是不同的
default域爲接入用戶(通過NAC進行認證的用戶)的缺省域。
default_admin爲管理員(通過HTTP,SSH,Telnet,Terminal或FTP方式登錄設備的用戶)的缺省域
】
此處,vtylocal1用戶是本地用戶,當radius服務器好用的時候,本地用戶是不能通過認證的,也就是不會啓用本地認證。當radius服務器掛了的時候,纔會調用本地認證(或不認證none)。
[Core Switch-aaa-authen-acsvty]authentication-mode radius local
建議在vty接口下使用authentication-mode radius local,備份認證是本地認證;但在con口下,使用authentication-mode radius none,備份認證是none,也就是不認證。因爲,如果交換機備份認證是本地,而本地沒有用戶的話,就沒有辦法認證了,這臺設備也就無法登陸了。
交換機的全部配置如下:
<Core Switch>dis cur
#
sysname Core Switch
#
vlan batch 10 20 30 157
#
cluster enable
ntdp enable
ndp enable
#
drop illegal-mac alarm
#
dhcp enable
#
diffserv domain default
#
radius-server template acs
radius-server authentication 192.168.157.200 1812
radius-server retransmit 2 timeout 6
undo radius-server user-name domain-included
#
#
drop-profile default
#
aaa
authentication-scheme default
authentication-scheme acsvty
authentication-mode radius local
authentication-scheme acscon
authentication-mode radius none
authorization-scheme default
accounting-scheme default
service-scheme admin
admin-user privilege level 15
domain default
domain default_admin
authentication-scheme acsvty
service-scheme admin
radius-server acs
domain wangrx
authentication-scheme acscon
service-scheme admin
radius-server acs
local-user admin password simple admin
local-user admin service-type http
local-user vtylocal1 password simple huawei123
local-user vtylocal1 privilege level 15
local-user vtylocal1 service-type telnet
#
interface Vlanif1
#
interface Vlanif10
ip address 10.1.1.1 255.255.255.0
dhcp select interface
#
interface Vlanif20
ip address 20.1.1.1 255.255.255.0
dhcp select interface
#
interface Vlanif30
ip address 30.1.1.1 255.255.255.0
dhcp select interface
#
interface Vlanif157
ip address 192.168.157.111 255.255.255.0
#
interface MEth0/0/1
#
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
#
interface GigabitEthernet0/0/2
port link-type access
port default vlan 20
#
interface GigabitEthernet0/0/3
port link-type access
port default vlan 30
#
interface GigabitEthernet0/0/4
#
interface GigabitEthernet0/0/5
#
interface GigabitEthernet0/0/6
#
interface GigabitEthernet0/0/7
#
interface GigabitEthernet0/0/8
#
interface GigabitEthernet0/0/9
#
interface GigabitEthernet0/0/10
#
interface GigabitEthernet0/0/11
#
interface GigabitEthernet0/0/12
#
interface GigabitEthernet0/0/13
#
interface GigabitEthernet0/0/14
#
interface GigabitEthernet0/0/15
#
interface GigabitEthernet0/0/16
#
interface GigabitEthernet0/0/17
#
interface GigabitEthernet0/0/18
#
interface GigabitEthernet0/0/19
#
interface GigabitEthernet0/0/20
#
interface GigabitEthernet0/0/21
#
interface GigabitEthernet0/0/22
#
interface GigabitEthernet0/0/23
#
interface GigabitEthernet0/0/24
port link-type access
port default vlan 157
#
interface NULL0
#
user-interface con 0
authentication-mode aaa
user-interface vty 0 4
authentication-mode aaa
#
return
<Core Switch>