网络设备如果只有本地用户名密码做认证,改密码得逐台设备登录去改,几十台设备能累死。有了AAA和RADIUS,密码统一在服务器上管理,设备只是去服务器问一下"这个人能不能登录"。今天说说H3C设备上AAA和RADIUS怎么配。

AAA是什么

AAA是三个英文单词的首字母:Authentication认证、Authorization授权、Accounting计费。

认证:验证用户身份,你是谁,密码对不对。

授权:验证通过后,你能做什么,能看哪些命令能配哪些功能。

计费:记录用户操作行为,谁在什么时间登录了哪台设备做了什么。

H3C AAA认证配置 RADIUS怎么对接

三个功能不是非得全配,可以只做认证不做计费,也可以全配。实际使用中至少认证是必须的。

RADIUS

RADIUS全称远程认证拨号用户服务协议,是AAA最常用的后端协议。设备作为RADIUS客户端,把用户名密码发给RADIUS服务器验证。

RADIUS的流程很简单:用户在设备上输入用户名密码,设备构造RADIUS报文发给服务器,服务器查数据库后返回接受或拒绝。如果是接受,还会带上授权信息,比如这个用户是管理员还是只读用户。

RADIUS用UDP协议,端口默认1812做认证计费,1813做计费上报。报文用共享密钥加密,所以设备和服务器上的密钥必须一致。

H3C上怎么配

第一步,创建RADIUS方案:

radius scheme radius_server

primary authentication 10.1.1.100 1812

primary accounting 10.1.1.100 1813

key authentication simple mysecret123

key accounting simple mysecret123

user-name-format without-domain

primary authentication指定主认证服务器地址和端口。key authentication是共享密钥,两端要一样。user-name-format without-domain表示发给RADIUS服务器的用户名不带域名,有些服务器需要带域名。

第二步,创建ISP域并绑定RADIUS方案:

domain my_domain

authentication login radius-scheme radius_server

authorization login radius-scheme radius_server

accounting login radius-scheme radius_server

domain是H3C设备上的认证域概念。一个域绑定一套AAA方案,不同域可以用不同的认证方式。用户登录时用户名带上域名(如user@my_domain),设备就根据域名找到对应的域配置。如果不带域名,走默认域。

第三步,在设备上创建本地管理员作为备份:

local-user admin

password hash mypassword

service-type telnet ssh

authorization-attribute user-role network-admin

为什么需要本地备份?RADIUS服务器挂了设备就登录不了了。配一个本地用户做备份,RADIUS不通时可以降级到本地认证。在domain里配:

domain my_domain

authentication login radius-scheme radius_server local

这行的意思是先试RADIUS,不通再试本地。

第四步,使能设备的远程管理:

line vty 0 63

authentication-mode scheme

scheme表示用AAA域做认证。配完这一步,通过Telnet或SSH登录时就会走RADIUS认证了。

SSH更安全

实际生产环境不建议用Telnet明文传输。配SSH:

ssh server enable

public-key local create rsa

然后line vty里指定只允许SSH:

line vty 0 63

authentication-mode scheme

protocol inbound ssh

HWTACACS和RADIUS的区别

除了RADIUS,还有一种AAA协议叫HWTACACS。HWTACACS也是华为/华三定义的AAA协议,和思科的TACACS+类似。

两者的主要区别:RADIUS用UDP,报文只加密密码部分,认证和授权在一个报文里返回。HWTACACS用TCP更可靠,整个报文加密,认证和授权分开走。

实际使用中RADIUS更主流,服务器支持更广。HWTACACS在需要精细化命令授权(比如指定用户只能用某几个命令)的场景更合适。H3C设备两种都支持。

排障

登录不上设备,先检查RADIUS服务器通不通。ping服务器IP确认网络可达。检查设备和服务器上的共享密钥是否一致,大小写敏感。

display radius statistics看RADIUS报文统计,如果认证请求发出去了但没收到回应,大概率是密钥不匹配或服务器地址端口写错。

如果RADIUS通了但登录还是被拒绝,检查服务器上用户名密码配置和权限级别。有些RADIUS服务器需要配置Vendor属性指定用户角色,比如返回H3C的Vendor属性值296表示network-admin。

H3CNE-Security的GB0-510考试中AAA是重要考点,包含AAA技术原理、RADIUS认证、RADIUS报文结构、HWTACACS认证等知识点。H3CIE-RS+的GB0-802笔试也有AAA考点。如果需要系统学习AAA和RADIUS配置,润天教育作为H3C钻石级授权培训中心的安全和路由交换课程中都有AAA实验环节,千万级真机实验室可以对接真实RADIUS服务器做认证实验。