AAA基础知识

简介:
+关注继续查看

AAA采用C/S结构,客户端运行于NAS上,服务器上集中管理用户信息
用户想访问网络资源,从而和网关建立连接,网关把用户的认证、授权、计费信息透传给radius服务器审计计费
AAA中的NAS指的是Network Access Server,网络接入服务器(指的是路由器交换机等网络设备)
网络设备到AAA服务器使用的是Radius协议,1812认证端口、1813计费端口

Radius工作环节

wKiom1i4DJWAzPX1AAHhxY-DGUI486.jpg

radius服务器的组成:User、Clients、Dictionary
user:用于用户存储用户信息(如用户名、口令以及使用的协议、ip地址等配置信息)
clients:用于存储radius客户端信息(如接入设备的共享密钥、IP地址等)
dictionary:用于存储radius协议中的属性和属性值含义的信息


radius客户端和radius服务器之间认证消息的交互式通过共享密钥完成的,共享密钥不能通过网络传输,增加了信息交互的安全性
为了防止用户密码在不安全的网络上传递时被窃取,在传输过程中对密码进行了加密

报文格式:

wKioL1i4Dj_gHWwFAAD0MqNxLgk986.jpg


认证方式:

1、不认证:对用户非常信任,不对其认证,一般情况不采用这种方式

2、本地认证:将用户信息配置在接入服务器上。优点:速度快,成本低  缺点:硬件条件受限
3、远程认证:与radius协议配合使用,接入服务器作为客户端,与radius服务器通信

授权方式:
1、直接授权:直接授权通过

2、本地授权:根据本地服务器上的账号配置进行相关授权

3、TACACS授权:由Tacacs服务器对用户授权
4、If-authenticated授权:
5、RADIUS认证授权:radius协议的认证和授权是绑定在一起的,不能单独使用RADIUS进行授权

计费方式:审计动作
1、不计费
2、远端计费:通过RADIUS服务器或TACACS服务器进行远端计费

AAA采用C/S、client是被管理的资源、server集中存放用户信息

RADIUS:远程认证拨号用户服务:保护网络不受未授权访问的干扰,常被应用在要求较高的安全性、又要求维持远程用户访问的各种网络环境中


配置AAA
创建AAA域并配置相关属性
1、配置用户使用的AAA方案

2、创建ISP域

3、配置ISP域的状态
4、配置可接入用户数量的最大值
5、配置计费可选开关

radius scheme AAA #创建radius方案名称
 primary authentication 172.16.18.1 1812#配置主认证服务器IP地址
 primary accounting 172.16.18.1 1813 #配置主审计服务器IP地址
 key authentication cipher 123456 #与认证服务器交互报文时的共享密钥为123456
 key accounting cipher 123456 #与审计服务器交互报文时的共享密钥为123456
 user-name-format without-domain #不携带域名接入用户通常是以“userid@isp-name”格式

 nas-ip 172.16.18.254 本设备地址(Radius客户端地址)
 server-type extended #服务类型为扩展

security-policy-server 172.16.18.253 部署安全策略服务器


domain ISP #创建域名为ISP
 authentication default radius-scheme AAA #认证入口
 authorization default radius-scheme AAA #授权入口
 accounting default radius-scheme AAA #审计入口
user-interface vty 0 4
 authentication-mode scheme


AAA 在路由器上可以完成认证、授权功能

CiscoAAA配置信息

Router(config)#aaa new-model     启用aaa  
Router(config)#aaa authentication attempts login 2  尝试登陆2次
Router(config)#aaa authentication  fail-message C   输入错误密码报错信息
Enter TEXT message.  End with the character 'C'.
login invalid!
C
Router(config)#aaa authentication password-prompt  logininvalid!  

aaa认证密码提示为:logininvalid! (输入认证密码即可)
Router(config)#aaa authentication  username-prompt passwd:         

aaa认证用户名提示为:passwd:(输入用户名即可)
Router(config)#aaa authentication login  local local       aaa认证本地认证方式

*May 16 09:55:57.240: %AAAA-4-BADMETHNAME: Bad authentication method-list name "local" (this is only a warning)
Router(config)#username ma password guangjie  用户名ma 密码guangjie
Router(config)#line vty  0 4         
Router(config-line)#login authentication local  登录认证为local(local为aaa登录方式的名称)
AAA: Warning authentication list "local" is not defined for LOGIN.
Router(config-line)#transport input telnet   只允许telnet

Router(config-line)#rotary xx (X表示数字,修改后的端口以3000为基数再加上X,假设X=10,则登陆telnet端口是3010

Router(config-line)#privilege level 15       权限为15级别
Router(config)#access-list 100 deny tcp any any eq telnet 定义网段

Router(config)#access-list 100 permit ip any any

Router(config-line)#access-class 100 in     调用


很多时候我们操作太快很容易操作失误,远程断开连接,没保存设备重启一下即可,远程配置不要急于求快(断开不要老想往人家哪里跑)


原因:
1、设备数量有关、用户名密码不一致、不能集中化管理
2、用户数量、用户多、不能集中化管理
3、用户频繁变动 

RADIUS和HWTACACS区别:

wKioL1i4Df_i8iKCAAQPyMGgHD4517.jpg










本文转自 周小玉 51CTO博客,原文链接:http://blog.51cto.com/maguangjie/1795047,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
C语言
C语言:求Sn=a+aa+aaa+aaaa+aaaaa+……的前n项之和
思路: 总体思路: (一). 生成变量: int a = 0; -- 题目中的a int n = 0; -- a 的前 n 项
|
3月前
|
机器学习/深度学习 C语言
C语言刷题系列——3.a+aa+...+aaa..aa表达式输出
C语言刷题系列——3.a+aa+...+aaa..aa表达式输出
43 0
|
6月前
|
前端开发
前端学习案例1-obj面试题
前端学习案例1-obj面试题
26 0
前端学习案例1-obj面试题
|
6月前
|
前端开发
前端学习案例-ref的进阶用法2
前端学习案例-ref的进阶用法2
38 0
前端学习案例-ref的进阶用法2
|
6月前
|
前端开发
前端学习案例-ref的进阶用法1
前端学习案例-ref的进阶用法1
40 0
前端学习案例-ref的进阶用法1
|
8月前
|
Java
Java经典编程习题100例:第6例:a+aa+aaa+.......+aaaaaaaaa
Java经典编程习题100例:第6例:a+aa+aaa+.......+aaaaaaaaa
57 0
|
8月前
|
Python
Python经典编程习题100例:第18例:求a+aa+aaa
Python经典编程习题100例:第18例:求a+aa+aaa
126 0
|
11月前
|
C语言
带你刷 · C语言 | Sn=a+aa+aaa+aaaa+aaaaa+...的前n项之和
问:求`Sn=a+aa+aaa+aaaa+aaaaa+...`的前`n`项之和,其中`a`是一个数字
176 0
带你刷 · C语言 | Sn=a+aa+aaa+aaaa+aaaaa+...的前n项之和
(JAVA编程练习):求s=a+aa+aaa+aaaa+a......a的值。
(JAVA编程练习):求s=a+aa+aaa+aaaa+a......a的值。
(JAVA编程练习):求s=a+aa+aaa+aaaa+a......a的值。
|
JavaScript Unix Shell
推荐文章
更多