防火墙的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


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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • vue 深入响应式原理 注意事项

    vue 深入响应式原理 注意事项对vue.js的响应式的原理的理解,有助于更加灵活的使用vue,和避开一些坑所以了解其运行原理十分重要

  • 华为技术专家居然把JVM内存模型讲解这么细致「建议收藏」

    华为技术专家居然把JVM内存模型讲解这么细致「建议收藏」全是干货的技术号:本文已收录在【github面试知识仓库】,欢迎star/fork:https://github.com/Wasabi1234/Java-Interview-Tutorial内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着os和应用程序的实时运行。JVM内存布局规定了Java在运行过程中内存申请、分配、管理的策略,保证了JVM高效稳定运行。不同JVM对于内存的划分方式和管理机制存在差异。结合JVM虚拟机规范,来探讨经典JVM内存布局。JVM运行时数据区.

  • 乘法速算(两位数)

    乘法速算(两位数)法速算(两位数)  此方法可以锻炼孩子的思维速度.思维方向.特别的作用到底是什么?我也不是很清楚.但我觉得学习他总是有好处的.因此介绍给大家.这是我从网站上查到的一部分,从一些书籍中整理而来           还有我自己总结的一点.             闲话少说.进行介绍:(一)十几乘以十几例:           13*12方法:百位是1

  • 银行家算法C语言版「建议收藏」

    银行家算法C语言版「建议收藏」#include<stdio.h>#include<stdlib.h>#include<conio.h>#definem50#definetrue1#definefalse0intno1;//进程数intno2;//资源数intr;intallocation[m][m],need[m][m],available[m],max[m][m];charname1[m],name2[m];.

  • PID控制器开发笔记之十二:模糊PID控制器的实现[通俗易懂]

    PID控制器开发笔记之十二:模糊PID控制器的实现[通俗易懂]在现实控制中,被控系统并非是线性时不变的,往往需要动态调整PID的参数,而模糊控制正好能够满足这一需求,所以在接下来的这一节我们将讨论模糊PID控制器的相关问题。模糊PID控制器是将模糊算法与PID控制参数的自整定相结合的一种控制算法。可以说是模糊算法在PID参数整定上的应用。1、模糊算法的原理模糊算法是一种基于智能推理的算法,虽然称之为模糊算法其实并不模糊,实际上是一种逐步求精的思想。一…

  • Scrapy框架及组件描述

    Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非

    2021年12月29日

发表回复

您的电子邮箱地址不会被公开。

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