防火墙的AAA认证[通俗易懂]

防火墙的AAA认证[通俗易懂]防火墙的AAA认证防火墙的AAA提供基于三种数据库认证:LOCAL,TACACS+,RADIUS.使用tacacs+,radius两种认证协议来进行专门的AAA服务器与NAS之间进行接入访问认证。基本认证原理:客户机发起验证请求到NAS,而NAS帮助收集用户的验证信息并使用pre-sharekey与AAA服务器进行交互,AAA会对NAS提交上来的…

大家好,又见面了,我是你们的朋友全栈君。


防火墙的AAA认证
防火墙的 AAA提供基于三种数据库认证:LOCAL,TACACS+,RADIUS.使用tacacs+,radius两种认证协议来进行专门的AAA服务器与NAS之间进行接入访问认证。基本认证原理:客户机发起验证请求到NAS,而NAS帮助收集用户的验证信息并使用pre-share key与AAA服务器进行交互,AAA会对NAS提交上来的帐户进行匹对,如果认证成功则允许接入网络,相应的还会有一些授权的动作。
防火墙的 AAA认证与路由器作为NAS/AAA client认证原理基本一样,针对不同的认证需求,我们可以选择tacacs+或者radius两种不同的认证协议。具体这两种协议有哪些区别呢:
Radius:默认使用 1645,1646两个port,1645做认证,1646做授权。使用UDP用户数据报协议,不适合那种可靠性要求高或拥堵的网络中。它把认证授权绑在了一起,很难分离认证与授权两个动作。仅仅只加密KEY。不支持多协议如:x.25,appletalk,netbios,novell等网络。它是公有的认证协议。
 
Tacacs+:是 tacacs的增强版,它把认证与授权进行了分享,使这两个动作的应用更加灵活,使用的是更加可靠的连接TCP传输层协议,不仅仅只加密KEY,还把用户数据整个加密提供给AAA,安全性更突出,支持x.25,novell,appletalk,ipx,netbios等网络协议。但tacacs+是由cisco私有的。
总的来说,一般使用 radius来认证用户,使用tacacs+来授权用户,而radius是个开放的标准,相对于tacacs+则只瞄准cisco设备,而且思科设备也多使用radius协议来进行认证。
在防火墙中,认证有字符模式认证,有包模式的认证,还有隧道模式 (vpn tunnel),cut-through的直通认证(目前只支持http,https,ftp,telnet这四种标准的流量做cut-through),如果其它非标准的认证流量,防火墙还是会对流量进行截取并执行认证动作,但不会像前面四种流量一样会弹出图形化提示认证,所以会影响认证通过)等。
今天我不铺陈这些理论了,还是看下实验:
Top:
 

防火墙的AAA认证[通俗易懂]

由于我的 ACS时常会出现“罢工”的情况,无法对我的认证信息进行响应,所以没法使用radius与tacacs+去进行AAA了,甚是遗憾啊,只能用本地数据库做些畸形的实验了,不过大家晓得大致原理与命令就差不多了。
需求:
1,         user去往 server的流量需要经过ASA做认证才能通过
2,         对标准的直通流量做认证
3,         对非标准的直通流量做认证
实现:
R1配置 :
ip ftp source-interface FastEthernet0/0
ip ftp username cisco
ip ftp password cisco
interface FastEthernet0/0
 ip address 192.168.1.1 255.255.255.0
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 192.168.1.2
ip http server
ip http port 8888
ip http authentication local
R2配置:
interface FastEthernet0/0
 ip address 192.168.2.2 255.255.255.0
interface FastEthernet0/1
 ip address 192.168.4.1 255.255.255.0
ip route 0.0.0.0 0.0.0.0 192.168.2.1
ASA配置:
Interface e0
No sh
Nameif inside
Security-level 100
Ip add 192.168.1.2 255.255.255.0
Interface e1
No sh
Nameif outside
Security-level 0
Ip add 192.168.2.1 255.255.255.0
放过 icmp流量,
Access-list outacl permit icmp any any
Access-list outacl permit tcp any any eq www
Access-list outacl permit tcp any any eq 8888
Access-list outacl permit tcp any any eq 21
Access-list outacl permit tcp any host 192.168.2.3 eq 23
Access-group outacl in interface outside
Access-list http permit tcp any any eq www
Access-list http permit tcp any any eq 8888
Access-list http permit tcp any host 192.168.2.3 eq 23
Access-list ftp permit tcp any any eq 21
Access-list ftp permit tcp any host 192.168.2.3 eq 23
Access-list telnet permit tcp any any eq 23
Username cisco password zengfei
Auth-prompt prompt please authentication in there
Auth-prompt accept ok,you can do it everythink
Auth-prompt rejected oh,I’m so sorry
Aaa authentication match ftp outside LOCAL
Aaa authentication match http outside LOCAL
Aaa authentication match telnet outside LOCAL
我们可以看到当我们访问
http://192.168.1.1时,属于正常的标准流量,会弹出认证提示框,认证成功便可以访问。
用户信息会缓存在 ASA里面,可以采用show uauth看到:
ciscoasa# show uauth
                        Current    Most Seen
Authenticated Users        1          1
Authen In Progress         0          1
user ‘zengfei’ at 192.168.4.2, authenticated (idle for 0:00:00)
   absolute   timeout: 0:05:00
   inactivity timeout: 0:00:00
ciscoasa#
FTP连接:
ftp> open 192.168.1.1
Connected to 192.168.1.1.
220-FTP Server (user ‘zengfei’)
220
User (192.168.1.1:(none)): cisco
331-Password:
331
Password:
Connection closed by remote host.
ftp>
如果把 http的流量端口改为8888则变成了防火墙cut-through认证不支持的流量了,
由于对非标准的流量弹不出认证提示框,所以提示出错,必须先认证流量才能通过,所以我们可以通过 virtual telnet来先认证,然后再访问就可以过去了。
virtual telnet 192.168.2.3
那么在做认证的时候首先要放过 virtual telnet的流量。并对它的流量做AAA认证。
记得最重要的一点,由于此 TOP是由外向内发起的流量,那么默认virtual telnet是不能为其提供proxy arp的,所以需要static(inside,outside) 192.168.2.3 192.168.2.3 才能telnet上
这样我们认证成功后就可以访问了。
 
 

本文转自 Bruce_F5 51CTO博客,原文链接:http://blog.51cto.com/zenfei/574647


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135443.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python 列表的基本操作

    python 列表的基本操作列表常用方法:name=['zhangsan','lisi','wangwu','xieqi']name2=[1,2,3,4]

    2022年7月5日
    27
  • Oracle PL/SQL编程之五: 异常错误处理(知已知彼、百战不殆)

    Oracle PL/SQL编程之五: 异常错误处理(知已知彼、百战不殆)Oracle PL/SQL编程之五:异常错误处理(知已知彼、百战不殆) 本篇主要内容如下:5.1 异常处理概念5.1.1 预定义的异常处理5.1.2 非预定义的异常处理5.1.3 用户自定义的异常处理5.1.4  用户定义的异常处理5.2 异常错误传播5.2.1 在执行部分引发异常错误5.2.2 在声明

    2022年6月17日
    32
  • 苹果手机软件开发教程_iOS 开发

    苹果手机软件开发教程_iOS 开发iPhone手机开发平台入门介绍和教程,网上碰到的IPhone手机开发的相关资料,收藏一下,关于在苹果的操作系统开发软件中国人了解的还非常少,中文资料也非常少,以后我就练练英语,也翻译一些吧,哈哈.1.iPhone手机介绍首先需要了解和激活成功教程iPhone手机,下面一个帖子介绍很详细:iPhone最权威[入门][激活成功教程][扫盲][资源][修砖]总汇帖http://www.weiphone.

    2022年8月12日
    5
  • SparkStreaming之foreachRDD

    SparkStreaming之foreachRDD首先我们来对官网的描述了解一下。DStream中的foreachRDD是一个非常强大函数,它允许你把数据发送给外部系统。因为输出操作实际上是允许外部系统消费转换后的数据,它们触发的实际操作是DStream转换。所以要掌握它,对它要有深入了解。下面有一些常用的错误需要理解。经常写数据到外部系统需要创建一个连接的object(eg:根据TCP协议连接到远程的服务器,我们连接外部数据库需要自己的句柄

    2022年6月15日
    44
  • 比和比例的联系和区别

    比和比例的联系和区别比和比例一直是学数学容易弄混的几大问题之一,其实它们之间的问题完全可以用一句话概括:比,等同于算式中等号左边的式子,是式子的一种(如:a:b);比例,由至少两个称为比的式子由等号连接而成,且这两个比的比值是相同(如:a:b=c:d)。所以,比和比例的联系就可以说成是:比是比例的一部分;而比例是由至少两个比值相等的比组合而成的.比和比例的区别:区别区别1:意义、项数、各部

    2022年5月14日
    48
  • java帝国时代_new java project

    java帝国时代_new java project1.C语言帝国的统治现在是公元1995年,C语言帝国已经统治了我们20多年,实在是太久了。1972年,随着C语言的诞生和Unix的问世,帝国迅速建立统治,从北美到欧洲,从欧洲到亚洲,无数程序员臣服在他的脚下。帝国给我们提供了极好的福利:贴近硬件,运行极快,效率极高。使用这些福利,程序员们用C开发了很多系统级软件,操作系统,编译器,数据库,网络系统..

    2022年9月23日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号