RADIUS和TACACS+认证可能为FTP、Telnet和HTTP连接执行。通常可以对其它不太常用的协议进行身份验证。支持TACACS+授权;不支持RADIUS授权。与以前版本相比,PIX 5.1身份验证、授权和记帐(AAA)中的更改包括扩展身份验证(xauth) -从Cisco安全VPN客户端1.1对IPSec隧道进行身份验证。
本文档没有任何特定的要求。
本文档不限于特定的软件和硬件版本。
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
认证就是用户是谁。
授权是告诉用户什么能执行。
没有授权的身份验证是有效的。
没有身份验证的授权是无效的。
记帐是用户执行的操作。
假设内部有100个用户,并且您只希望其中六个用户能够在网络外部执行FTP、Telnet或HTTP。您会告诉PIX对出站流量进行身份验证,并为TACACS+/RADIUS安全服务器上的所有六个用户ID提供身份验证。使用简单身份验证时,可以使用用户名和密码对这六个用户进行身份验证,然后将其注销。其他94个用户无法访问。PIX提示用户输入用户名/密码,然后通过用户名和密码进入TACACS+/RADIUS安全服务器(取决于响应情况),打开或拒绝连接。这六个用户可以执行FTP、Telnet或HTTP。
但是,假设这6个用户中的一个“Festus”是不可信的。您希望允许Festus执行FTP而不是HTTP或Telnet到外部。这意味着必须添加授权,即除了认证用户是谁之外,还授权哪些用户能做。这仅对TACACS+有效。当我们将授权添加到PIX时,PIX首先将Festus的用户名和密码发送到安全服务器,然后发送授权请求,告诉安全服务器Festus正在尝试执行的“命令”操作。正确设置服务器后,可以允许Festus通过“ftp 1.2.3.4”传输,但会被拒绝在任何地方使用HTTP或Telnet。
当认证/授权开启式设法从里向外(反之亦然):
Telnet - 用户为密码看到用户名提示出现,然后是用户请求密码。如果PIX/服务器上的认证(授权)成功,目的地主机将提示用户输入用户名和密码。
FTP -用户看到用户名提示出现。用户需要输入local_username@remote_username作为用户名,输入local_password@remote_password作为口令。PIX将local_username和local_password发送到本地安全服务器,如果PIX/服务器上的身份验证(和授权)成功,则remote_username和remote_password将传递到目标FTP服务器。
HTTP -浏览器中将显示一个窗口,要求您输入用户名和口令。如果认证(和授权)成功,用户将能访问上面的目的网站。请记住,浏览器会缓存用户名和口令。如果看起来PIX应该使HTTP连接超时,但实际上并未这样做,则可能是浏览器向PIX拍摄缓存用户名和密码,然后将其转发到身份验证服务器,从而实际正在进行重新身份验证。PIX syslog和/或服务器调试显示了这一现象。如果Telnet和FTP似乎工作正常,但HTTP不连接,这是为什么?
Tunnel -当尝试通过VPN Client和xauth将IPSec数据流通过隧道进入网络时,用户名/口令会显示一个灰色框,表示“User Authentication for New Connection”。
注意:从Cisco Secure VPN Client 1.1开始支持此身份验证。如果Help > About菜单未显示版本2.1.x或更高版本,则无法执行此操作。
本部分提供有关配置安全服务器的信息。
切记您有PIX IP地址,或完全合格的域名和CSU.cfg文件密钥。
user = ddunlap { password = clear "rtp" default service = permit } user = can_only_do_telnet { password = clear "telnetonly" service = shell { cmd = telnet { permit .* } } } user = can_only_do_ftp { password = clear "ftponly" service = shell { cmd = ftp { permit .* } } } user = httponly { password = clear "httponly" service = shell { cmd = http { permit .* } } }
使用GUI将PIX IP地址和密钥添加到网络接入服务器(NAS)列表。
user=adminuser { radius=Cisco { check_items= { 2="all" } reply_attributes= { 6=6 } } }
使用以下步骤配置Cisco Secure ACS for Windows 2.x RADIUS。
在用户设置GUI部分获取密码。
在Group Setup GUI部分中,将属性6 (Service-Type)设置为Login或Administrative。
在NAS配置部分GUI中添加PIX IP地址。
EasyACS文档描述设置。
在组部分,单击Shell exec以授予exec权限。
要添加特权到PIX,在组建立的底层单击拒绝不匹配IOS指令。
针对您要允许的每个命令(例如Telnet),选择Add/Edit new命令。
如果允许远程登录到特定站点,请以“permit #.#.#.#”的形式填写参数部分中的IP地址。否则,要允许Telnet,单击允许所有未列出的参数。
编辑指令的单击完成。
针对每个允许的命令(例如,Telnet、HTTP 或 FTP)执行步骤 1 到 5。
在NAS Configuration GUI部分添加PIX IP。
用户在User Setup GUI部分获得密码。
在组部分,单击Shell exec以授予exec权限。
要添加特权到PIX,在组建立的底部,单击拒绝不匹配IOS指令。
针对您要允许的每个命令(例如Telnet),选择Add/Edit new命令。
要允许Telnet到特定站点,请在参数部分以“permit #.#.#.#”的形式输入IP地址。要允许Telnet到任何站点,请单击Allow all unlisted arguments。
编辑指令的单击完成。
对每个允许的命令(例如,Telnet、HTTP或FTP)执行步骤1至5。
确保在NAS配置GUI部分添加了PIX IP地址。
将PIX IP地址和密钥添加到Clients文件。
adminuser Password="all" User-Service-Type = Shell-User
将PIX IP地址和密钥添加到Clients文件。
adminuser Password="all" Service-Type = Shell-User
key = "cisco" user = adminuser { login = cleartext "all" default service = permit } user = can_only_do_telnet { login = cleartext "telnetonly" cmd = telnet { permit .* } } user = httponly { login = cleartext "httponly" cmd = http { permit .* } } user = can_only_do_ftp { login = cleartext "ftponly" cmd = ftp { permit .* } }
注意:输出解释器工具(仅注册客户)支持某些show命令(仅注册用户),通过该工具可查看对show命令输出的分析。
在添加AAA之前,请确保PIX配置工作正常。如果在建立身份验证和授权之前无法传递流量,则以后将无法这样做。
在PIX中启用日志记录。
不应该在高负载系统上使用日志控制台调试。
可以使用Logging buffered debugging,然后执行show logging命令。
日志记录还可以发送到系统日志服务器并在那里进行检查。
打开TACACS+或RADIUS服务器上的调试(所有服务器都有此选项)。
PIX 配置 |
---|
PIX Version 5.1(1) nameif ethernet0 outside security0 nameif ethernet1 inside security100 nameif ethernet2 pix/intf2 security10 enable password 8Ry2YjIyt7RRXU24 encrypted passwd 2KFQnbNIdI.2KYOU encrypted hostname pix3 fixup protocol ftp 21 fixup protocol http 80 fixup protocol smtp 25 fixup protocol h323 1720 fixup protocol rsh 514 fixup protocol sqlnet 1521 names pager lines 24 no logging timestamp no logging standby logging console debugging no logging monitor no logging buffered no logging trap no logging history logging facility 20 logging queue 512 interface ethernet0 auto interface ethernet1 auto interface ethernet2 auto shutdown mtu outside 1500 mtu inside 1500 mtu pix/intf2 1500 ip address outside 99.99.99.1 255.255.255.0 ip address inside 10.31.1.75 255.255.255.0 ip address pix/intf2 127.0.0.1 255.255.255.255 no failover failover timeout 0:00:00 failover ip address outside 0.0.0.0 failover ip address inside 0.0.0.0 failover ip address pix/intf2 0.0.0.0 arp timeout 14400 global (outside) 1 99.99.99.7-99.99.99.10 netmask 255.255.255.0 nat (inside) 1 10.31.1.0 255.255.255.0 0 0 static (inside,outside) 99.99.99.99 10.31.1.50 netmask 255.255.255.255 0 0 conduit permit icmp any any conduit permit tcp any any conduit permit udp any any route outside 0.0.0.0 0.0.0.0 99.99.99.2 1 route inside 171.68.118.0 255.255.255.0 10.31.1.1 1 route inside 171.68.120.0 255.255.255.0 10.31.1.1 1 timeout xlate 3:00:00 conn 1:00:00 half-closed 0:10:00 udp 0:02:00 timeout rpc 0:10:00 h323 0:05:00 timeout uauth 0:05:00 absolute aaa-server TACACS+ protocol tacacs+ aaa-server RADIUS protocol radius aaa-server AuthInbound protocol tacacs+ aaa-server AuthInbound (inside) host 171.68.118.101 cisco timeout 5 aaa-server AuthOutbound protocol radius aaa-server AuthOutbound (inside) host 171.68.118.101 cisco timeout 5 aaa authentication include telnet outbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthOutbound aaa authentication include telnet inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound aaa authentication include http outbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthOutbound aaa authentication include http inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound aaa authentication include ftp outbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthOutbound aaa authentication include ftp inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound no snmp-server location no snmp-server contact snmp-server community public no snmp-server enable traps floodguard enable telnet timeout 5 terminal width 80 Cryptochecksum:b26b560b20e625c9e23743082484caca : end [OK] |
本节显示各种方案的身份验证调试示例。
位于99.99.99.2的外部用户向内部10.31.1.50 (99.99.99.99)发起流量,并通过TACACS进行身份验证(即,入站流量使用服务器列表“AuthInbound”,其中包括TACACS服务器171.68.118.101)。
以下示例显示了身份验证成功的PIX调试:
109001: Auth start for user '???' from 99.99.99.2/11008 to 10.31.1.50/23 109011: Authen Session Start: user 'cse', sid 4 109005: Authentication succeeded for user 'cse' from 10.31.1.50/23 to 99.99.99.e 302001: Built inbound TCP connection 10 for faddr 99.99.99.2/11008 gaddr 99.99.)
以下示例显示了身份验证错误(用户名或密码)的PIX调试。用户看到三个用户名/口令集,然后显示以下消息:Error: max number of tries exceeded。
109001: Auth start for user '???' from 99.99.99.2/11010 to 10.31.1.50/23 109006: Authentication failed for user '' from 10.31.1.50/23 to 99.99.99.2/11010 on interface outside
以下示例显示了一个PIX调试,其中服务器可以ping通,但无法与PIX通话。用户只看到一次用户名,但PIX从不要求密码(这在Telnet上)。用户看到Error: Max number of tries exceeded。
109001: Auth start for user '???' from 99.99.99.2/11011 to 10.31.1.50/23 109002: Auth from 10.31.1.50/23 to 99.99.99.2/11011 failed (server 171.68.118.101 failed) on interface outside 109002: Auth from 10.31.1.50/23 to 99.99.99.2/11011 failed (server 171.68.118.101 failed) on interface outside 109002: Auth from 10.31.1.50/23 to 99.99.99.2/11011 failed (server 171.68.118.101 failed) on interface outside 109006: Authentication failed for user '' from 10.31.1.50/23 to 99.99.99.2/11011 on interface outside
以下示例显示服务器无法ping通的PIX调试。用户只看到一次用户名,但PIX从不要求密码(这在Telnet上)。显示以下消息:Timeout to TACACS+ server和Error: Max number of tries exceeded(在配置中交换了假服务器)。
111005: console end configuration: OK 109001: Auth start for user '???' from 99.99.99.2/11012 to 10.31.1.50/23 109002: Auth from 10.31.1.50/23 to 99.99.99.2/11012 failed (server 1.1.1.1 failed) on interface outside 109002: Auth from 10.31.1.50/23 to 99.99.99.2/11012 failed (server 1.1.1.1 failed) on interface outside 109002: Auth from 10.31.1.50/23 to 99.99.99.2/11012 failed (server 1.1.1.1 failed) on interface outside 109006: Authentication failed for user '' from 10.31.1.50/23 to 99.99.99.2/11012 on interface outside
以下示例显示了身份验证成功的PIX调试:
109001: Auth start for user '???' from 10.31.1.50/11008 to 99.99.99.2/23 109011: Authen Session Start: user 'pixuser', sid 8 109005: Authentication succeeded for user 'pixuser' from 10.31.1.50/11008 to 99.99.99.2/23 on interface inside 302001: Built outbound TCP connection 16 for faddr 99.99.99.2/23 gaddr 99.99.99.99/11008 laddr 10.31.1.50/11008 (pixuser)
以下示例显示了身份验证错误(用户名或密码)的PIX调试。用户将看到用户名和密码请求,并有三个机会输入这些信息。当条目不成功时,将显示以下消息:Error: max number of tries exceeded。
109001: Auth start for user '???' from 10.31.1.50/11010 to 99.99.99.2/23 109006: Authentication failed for user '' from 10.31.1.50/11010 to 99.99.99.2/23 on interface inside
以下示例显示了PIX调试,其中服务器可以执行ping操作,但后台守护程序已关闭,不会与PIX通信。用户将依次看到用户名、口令、RADIUS服务器失败消息和Error: Max number of tries exceeded.错误消息。
109001: Auth start for user '???' from 10.31.1.50/11011 to 99.99.99.2/23 ICMP unreachable (code 3) 171.68.118.101 > 10.31.1.75 1ICMP unreachable (code 3) 171.68.118.101 > 10.31.1.75 ICMP unreachable (code 3) 171.68.118.101 > 10.31.1.75 ICMP unreachable (code 3) 171.68.118.101 > 10.31.1.75 09002: Auth from 10.31.1.50/11011 to 99.99.99.2/23 failed (server 171.68.118.101 failed) on interface inside 109002: Auth from 10.31.1.50/11011 to 99.99.99.2/23 failed (server 171.68.118.101 failed) on interface inside 109002: Auth from 10.31.1.50/11011 to 99.99.99.2/23 failed (server 171.68.118.101 failed) on interface inside 109006: Authentication failed for user '' from 10.31.1.50/11011 to 99.99.99.2/23 on interface inside
以下示例显示服务器无法ping通或客户端/密钥不匹配的PIX调试。用户将看到用户名、口令、Timeout to RADIUS server消息和伪服务器在配置中交换的Error: Max number of tries exceeded消息)。
109001: Auth start for user '???' from 10.31.1.50/11012 to 99.99.99.2/23 109002: Auth from 10.31.1.50/11012 to 99.99.99.2/23 failed (server 1.1.1.1 failed) on interface inside 109002: Auth from 10.31.1.50/11012 to 99.99.99.2/23 failed (server 1.1.1.1 failed) on interface inside 109002: Auth from 10.31.1.50/11012 to 99.99.99.2/23 failed (server 1.1.1.1 failed) on interface inside 109006: Authentication failed for user '' from 10.31.1.50/11012 to 99.99.99.2/23 on interface inside
如果您决定添加授权,因为授权在未经身份验证的情况下无效,您需要为相同的源和目标范围请求授权。
aaa authorization telnet inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound aaa authorization http inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound aaa authorization ftp inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound
请注意,您不会为传出添加授权,因为传出流量使用RADIUS进行身份验证,并且RADIUS授权无效。
以下示例显示了身份验证成功和授权成功的PIX调试:
109001: Auth start for user '???' from 99.99.99.2/11016 to 10.31.1.50/23 109011: Authen Session Start: user 'cse', Sid 11 109005: Authentication succeeded for user 'cse' from 10.31.1.50/23 to 99.99.99.2/11016 on interface outside 109011: Authen Session Start: user 'cse', Sid 11 109007: Authorization permitted for user 'cse' from 99.99.99.2/11016 to 10.31.1.50/23 on interface outside 302001: Built inbound TCP connection 19 for faddr 99.99.99.2/11016 gaddr 99.99.99.99/23 laddr 10.31.1.50/23 (cse)
以下示例显示了身份验证成功但授权失败的PIX调试。在这里,用户还会看到消息Error: Authorization Denied。
109001: Auth start for user '???' from 99.99.99.2/11017 to 10.31.1.50/23 109011: Authen Session Start: user 'httponly', Sid 12 109005: Authentication succeeded for user 'httponly' from 10.31.1.50/23 to 99.99.99.2/11017 on interface outside 109008: Authorization denied for user 'httponly' from 10.31.1.50/23 to 99.99.99.2/11017 on interface outside
aaa accounting include any inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound
TACACS+免费软件输出:
Tue Feb 22 08:52:20 2000 10.31.1.75 cse PIX 99.99.99.2 start task_id=0x14 foreign_ip=99.99.99.2 local_ip=10.31.1.50 cmd=telnet Tue Feb 22 08:52:25 2000 10.31.1.75 cse PIX 99.99.99.2 stop task_id=0x14 foreign_ip=99.99.99.2 local_ip=10.31.1.50 cmd=telnet elapsed_time=5 bytes_in=39 bytes_out=126
aaa accounting include any outbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthOutbound
Merit RADIUS输出:
Tue Feb 22 08:56:17 2000 Acct-Status-Type = Start NAS-IP-Address = 10.31.1.75 Login-IP-Host = 10.31.1.50 Login-TCP-Port = 23 Acct-Session-Id = 0x00000015 User-Name = pixuser Tue Feb 22 08:56:24 2000 Acct-Status-Type = Stop NAS-IP-Address = 10.31.1.75 Login-IP-Host = 10.31.1.50 Login-TCP-Port = 23 Acct-Session-Id = 0x00000015 Username = pixuser Acct-Session-Time = 6 Acct-Input-Octets = 139 Acct-Output-Octets = 36
如果我们将另一台主机(位于99.99.99.100)添加到我们的网络,并且此主机受信任,则可以使用以下命令将其从身份验证和授权中排除:
aaa authentication exclude telnet inbound 0.0.0.0 0.0.0.0 99.99.99.100 255.255.255.255 AuthInbound aaa authorization exclude telnet inbound 0.0.0.0 0.0.0.0 99.99.99.100 255.255.255.255 AuthInbound
一些TACACS+和RADIUS服务器有“最大会话”(max-session)或“查看已登陆用户”(view logged-in users)功能。能力执行最大会话或检查登录用户依靠计费记录。当有记帐“开始”记录生成,但没有“终止”记录生成时,TACACS+或RADIUS服务器则假设仍然有人登录(用户有一个会话通过PIX)。
由于连接性质,它非常适合于Telnet和FTP连接。由于连接的本质这在HTTP上运行的不是很好。在以下示例中,使用不同的网络配置,但概念却相同。
用户通过PIX进行远程登录,进行身份验证:
171.68.118.100/1200 to 9.9.9.25 /23 (pix) 109011: Authen Session Start: user 'cse', Sid 3 (pix) 109005: Authentication succeeded for user 'cse' from 171.68.118.100/12 00 to 9.9.9.25/23 (pix) 302001: Built TCP connection 5 for faddr 9.9.9.25/23 gaddr 9.9.9.10/12 00 laddr 171.68.118.100/1200 (cse) (server start account) Sun Nov 8 16:31:10 1998 rtp-pinecone.rtp.cisco.com cse PIX 171.68.118.100 start task_id=0x3 foreign_ip=9.9.9.25 local_ip=171.68.118.100 cmd=telnet
由于服务器已看到开始记录但没有停止记录,因此此时服务器会显示Telnet用户已登录。如果用户尝试需要身份验证的另一连接(可能来自其他PC),并且如果服务器中此用户的max-sessions设置为1(假设服务器支持max-sessions),服务器将拒绝该连接。
用户在目标主机上进行Telnet或FTP业务,然后退出(在那里花费10分钟):
pix) 302002: Teardown TCP connection 5 faddr 9.9.9.25/80 gaddr 9.9.9.10/128 1 laddr 171.68.118.100/1281 duration 0:00:00 bytes 1907 (cse) (server stop account) Sun Nov 8 16:41:17 1998 rtp-pinecone.rtp.cisco.com cse PIX 171.68.118.100 stop task_id=0x3 foreign_ip=9.9.9.25 local_ip=171.68.118.100 cmd=telnet elapsed_time=5 bytes_in=98 bytes_out=36
无论uauth是否为0 (指每次认证)或更大值(在uauth期间,一次认证后便不再鉴权)),每一个被访站点的计费记录都会被剪切。
由于协议的性质,HTTP的工作方式有所不同。以下是HTTP示例:
用户通过PIX从171.68.118.100浏览到9.9.9.25 :
(pix) 109001: Auth start for user '???' from 171.68.118.100/1281 to 9.9.9.25 /80 (pix) 109011: Authen Session Start: user 'cse', Sid 5 (pix) 109005: Authentication succeeded for user 'cse' from 171.68.118.100/12 81 to 9.9.9.25/80 (pix) 302001: Built TCP connection 5 for faddr 9.9.9.25/80 gaddr 9.9.9.10/12 81 laddr 171.68.118.100/1281 (cse) (server start account) Sun Nov 8 16:35:34 1998 rtp-pinecone.rtp.cisco.com cse PIX 171.68.118.100 start task_id=0x9 foreign_ip=9.9.9.25 local_ip=171.68.118.100 cmd=http (pix) 302002: Teardown TCP connection 5 faddr 9.9.9.25/80 gaddr 9.9.9.10/128 1 laddr 171.68.118.100/1281 duration 0:00:00 bytes 1907 (cse) (server stop account) Sun Nov 8 16:35.35 1998 rtp-pinecone.rtp.cisco .com cse PIX 171.68.118.100 stop task_id=0x9 foreign_ip =9.9.9.25 local_ip=171.68.118.100 cmd=http elapsed_time=0 bytes_ in=1907 bytes_out=223
用户读下载的网页。
开始记录在16:35:34,结束记录在16:35:35。此次下载用了一秒时间(即在开始和终止记录之间的时间不足一秒)。在用户阅读网页时,用户是否仍然登录到网站,连接是否仍然打开?否。最大会话数或查看登录用户是否在此处工作?不,因为HTTP的连接时间(“建立”和“拆卸”之间的时间)太短。开始和停止记录为亚秒。没有停止记录的开始记录,因为记录实际上发生在同一时刻。无论uauth设置为0还是更大值,每个事务都将向服务器发送开始和停止记录。但是,由于 HTTP 连接的本质,将无法使用最大会话且不能查看登录的用户。
前面的讨论涉及验证通过PIX的Telnet(和HTTP、FTP)流量。确保Telnet到PIX的工作无需身份验证:
telnet 10.31.1.5 255.255.255.255 passwd ww
然后添加命令,对远程登录至PIX的用户进行身份验证:
aaa authentication telnet console AuthInbound
当用户Telnet至PIX时,系统会提示他们输入Telnet口令(WW)。PIX还请求TACACS+或RADIUS用户名和密码。在这种情况下,由于使用了AuthInbound服务器列表,PIX会请求TACACS+用户名和密码。
如果服务器发生故障,您可以通过输入pix作为用户名然后输入启用口令(启用口令随意)来访问PIX。使用以下命令:
aaa authentication enable console AuthInbound
系统提示用户输入用户名和密码,然后将其发送到TACACS或RADIUS服务器。在这种情况下,由于使用了AuthInbound服务器列表,PIX会请求TACACS+用户名和密码。
由于启用认证 信息包与登录认证 信息包相同,假设用户可以通过TACACS或RADIUS登录PIX,那们他们也可以利用相同用户名/密码,通过TACACS或RADIUS启用。此问题已分配给Cisco Bug ID CSCdm47044(仅限于注册客户)。
如果服务器发生故障,您可以从PIX中输入用户名和普通启用口令pix(启用口令随意)来访问PIX启用模式。如果enable password不在PIX的配置中,请输入PIX作为用户名,并按回车键。如果设置了使能口令但不知道使能口令,则需要构建口令恢复磁盘以重置口令。
如果您有命令:
auth-prompt PIX_PIX_PIX
用户通过PIX看到以下顺序:
PIX_PIX_PIX [at which point one would enter the username] Password:[at which point one would enter the password]
到达最终目的地后,用户会看到目的地框旁边显示的Username:和Password:提示。此提示只影响通过 PIX 的用户,而不影响转到 PIX 的用户。
注意:没有针对访问PIX而剪切的记帐记录。
如果您有以下命令:
auth-prompt accept "GOOD_AUTH" auth-prompt reject "BAD_AUTH"
然后,用户通过PIX登录失败/成功时,会看到以下顺序:
PIX_PIX_PIX Username: asjdkl Password: "BAD_AUTH" "PIX_PIX_PIX" Username: cse Password: "GOOD_AUTH"
此功能当前不工作,并且已为该问题分配思科漏洞ID CSCdp93492(仅限于注册客户)。
如果PIX以外的站点和PIX本身需要认证,异常浏览器行为有时可以看到,因为浏览器可以缓存用户名和密码。
要避免这种情况,您可以使用以下命令,通过向PIX配置中添加一个RFC 1918地址(即,一个在Internet上不可路由,但对PIX内部网络有效且唯一的地址)来实现虚拟HTTP:
virtual http #.#.#.# [warn]
当用户设法访问PIX之外的时候,需要认证。如果警告参数存在,用户收到一个更改方向消息。认证对UAUTH的时间长度是好的。如说明文档中的指示,在使用虚拟HTTP时请勿将 timeout uauth命令持续时间设置为0秒;这将阻止与实际Web服务器的HTTP连接。
ip address outside 99.99.99.1 255.255.255.0 ip address inside 10.31.1.75 255.255.255.0 global (outside) 1 99.99.99.7-99.99.99.10 netmask 255.255.255.0 timeout uauth 01:00:00 aaa authentication include http outbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthOutbound aaa-server RADIUS protocol radius aaa-server AuthOutbound protocol radius aaa-server AuthOutbound (inside) host 171.68.118.101 cisco timeout 5 virtual http 10.31.1.99
可以将PIX配置为对所有入站和出站进行身份验证,但这并不是一个好主意,因为某些协议(如邮件)不容易进行身份验证。当通过PIX的所有通信都通过身份验证时,当邮件服务器和客户端尝试通过PIX通信时,不可身份验证协议的PIX系统日志显示如下消息:
109013: User must authenticate before using this service 109009: Authorization denied from 171.68.118.106/49 to 9.9.9.10/11094 (not authenticated)
不过,如果确实需要对某种异常服务进行身份验证,可使用virtual telnet命令来完成。此命令允许对虚拟Telnet IP地址进行身份验证。经过此身份验证后,异常服务的流量可以传输到实际服务器。
在本示例中,您希望将TCP端口49的流量从外部主机99.99.99.2发送到内部主机171.68.118.106。由于此流量实际上无法进行身份验证,因此请设置虚拟Telnet。对于虚拟Telnet,必须有关联的静态。此处,99.99.99.20和171.68.118.20都是虚拟地址。
ip address outside 99.99.99.1 255.255.255.0 ip address inside 10.31.1.75 255.255.255.0 static (inside,outside) 99.99.99.20 171.68.118.20 netmask 255.255.255.255 0 0 static (inside,outside) 99.99.99.30 171.68.118.106 netmask 255.255.255.255 0 0 conduit permit tcp host 99.99.99.20 eq telnet any conduit permit tcp host 99.99.99.30 eq tacacs any aaa-server TACACS+ protocol tacacs+ aaa-server Incoming protocol tacacs+ aaa-server Incoming (inside) host 171.68.118.101 cisco timeout 5 aaa authentication include telnet inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 Incoming aaa authentication include tcp/49 inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 Incoming virtual telnet 99.99.99.20
在99.99.99.2的用户首先必须远程登录到PIX的地址99.99.99.20进行验证:
109001: Auth start for user '???' from 99.99.99.2/22530 to 171.68.118.20/23 109011: Authen Session Start: user 'cse', Sid 13 109005: Authentication succeeded for user 'cse' from 171.68.118.20/23 to 99.99.99.2/22530 on interface outside
在成功进行身份验证之后,show uauth 命令显示用户“在计量表上有时间显示”:
pixfirewall# show uauth Current Most Seen Authenticated Users 1 2 Authen In Progress 0 1 user 'cse' at 99.99.99.2, authenticated absolute timeout: 0:05:00 inactivity timeout: 0:00:00
当位于99.99.99.2的设备要向位于171.68.118.106的设备发送TCP/49流量时:
302001: Built inbound TCP connection 16 for faddr 99.99.99.2/11054 gaddr 99.99.99.30/49 laddr 171.68.118.106/49 (cse)
可以添加授权:
aaa authorization include tcp/49 inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound
因此,当尝试通过PIX传输TCP/49流量时,PIX还会向服务器发送授权查询:
109007: Authorization permitted for user 'cse' from 99.99.99.2/11057 to 171.68.118.106/49 on interface outside
在TACACS+服务器上,这显示为:
service=shell, cmd=tcp/49, cmd-arg=171.68.118.106
默认情况下因为出站流量允许,没有静态对于对虚拟Telnet出站的使用是必需的。在以下示例中,位于10.31.1.50的内部用户通过Telnet连接到虚拟99.99.99.30并进行身份验证;Telnet连接立即断开。在进行身份验证之后,允许 TCP 流量从 10.31.1.50 流到 99.99.99.2 处的服务器:
ip address outside 99.99.99.1 255.255.255.0 ip address inside 10.31.1.75 255.255.255.0 global (outside) 1 99.99.99.7-99.99.99.10 netmask 255.255.255.0 timeout uauth 0:05:00 absolute aaa-server RADIUS protocol radius aaa-server AuthOutbound protocol radius aaa-server AuthOutbound (inside) host 171.68.118.101 cisco timeout 5 aaa authentication include telnet outbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthOutbound aaa authentication include tcp/49 outbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthOutbound virtual telnet 99.99.99.30
注意:由于这是RADIUS,因此没有授权。
109001: Auth start for user '???' from 10.31.1.50/11034 to 99.99.99.30/23 109011: Authen Session Start: user 'pixuser', Sid 16 109005: Authentication succeeded for user 'pixuser' from 10.31.1.50/11034 to 99.99.99.30/23 on interface inside 302001: Built outbound TCP connection 18 for faddr 99.99.99.2/49 gaddr 99.99.99.8/11036 laddr 10.31.1.50/11036 (pixuser) 302002: Teardown TCP connection 18 faddr 99.99.99.2/49 gaddr 99.99.99.8/11036 laddr 10.31.1.50/11036 duration 0:00:02 bytes 0 (pixuser)
当用户远程登录到虚拟Telnet IP地址时,show uauth命令会显示其用户身份验证情况。如果用户想要在会话完成后防止流量通过uauth剩余时间,则需要再次通过Telnet访问虚拟Telnet IP地址。这将断开会话。
pix3# show uauth Current Most Seen Authenticated Users 1 2 Authen In Progress 0 1 user 'pixuser' at 10.31.1.50, authenticated absolute timeout: 0:05:00 inactivity timeout: 0:00:00 pix3# 109001: Auth start for user 'pixuser' from 10.31.1.50/11038 to 99.99.99.30/23 109005: Authentication succeeded for user 'pixuser' from 10.31.1.50/11038 to 99.99.99.30/23 on interface inside
pix3# show uauth Current Most Seen Authenticated Users 0 2 Authen In Progress 0 1
允许对端口范围(如TCP/30-100)进行授权。如果在PIX上配置虚拟Telnet并授权一系列端口,当使用虚拟Telnet打开该孔后,PIX将向TACACS+服务器发出tcp/30-100命令以进行授权:
static (inside,outside) 99.99.99.75 10.31.1.50 netmask 255.255.255.255 0 0 conduit permit tcp host 99.99.99.75 host 99.99.99.2 static (inside,outside) 99.99.99.75 10.31.1.50 netmask 255.255.255.255 0 0 virtual telnet 99.99.99.75 aaa authentication include any inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound aaa authorization include tcp/30-100 inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound virtual telnet 99.99.99.30
user = anyone { login = cleartext "anyone" cmd = tcp/30-100 { permit 10.31.1.50 } }
在确保虚拟Telnet工作允许流向网络内部主机的TCP/49流量之后,我们决定对此进行统计,因此我们补充说:
aaa accounting include any inbound 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 AuthInbound
这会导致在tcp/49流量通过(此示例来自TACACS+免费软件)时剪切记账记录:
Sun Feb 27 05:24:44 2000 10.31.1.75 cse PIX 99.99.99.2 start task_id=0x14 foreign_ip=99.99.99.2 local_ip=171.68.118.106 cmd=tcp/49
要对从一个DMZ接口流向另一个DMZ接口的用户进行身份验证,请告知PIX对指定接口的流量进行身份验证。在我们的PIX上,安排是:
least secure PIX outside (security0) = 1.1.1.1 pix/intf4 (DMZ - security20) = 4.4.4.4 & device 4.4.4.2 pix/intf5 (DMZ - security25) = 5.5.5.5 & device 5.5.5.8 (static to 4.4.4.15) PIX inside (security100) = 10.31.1.47 most secure
我们要对pix/intf4和pix/intf5之间的Telnet流量进行身份验证:
nameif ethernet0 outside security0 nameif ethernet1 inside security100 (nameif ethernet2 pix/intf2 security10 nameif ethernet3 pix/intf3 security15) nameif ethernet4 pix/intf4 security20 nameif ethernet5 pix/intf5 security25 ip address outside 1.1.1.1 255.255.255.0 ip address inside 10.31.1.47 255.255.255.0 (ip address pix/intf2 127.0.0.1 255.255.255.255 ip address pix/intf3 127.0.0.1 255.255.255.255) ip address pix/intf4 4.4.4.4 255.255.255.0 ip address pix/intf5 5.5.5.5 255.255.255.0 static (pix/intf5,pix/intf4) 4.4.4.15 5.5.5.8 netmask 255.255.255.255 0 0 aaa authentication telnet pix/intf4 5.5.5.0 255.255.255.0 4.4.4.0 255.255.255.0 AuthInbound aaa authentication telnet pix/intf5 5.5.5.0 255.255.255.0 4.4.4.0 255.255.255.0 AuthInbound aaa-server TACACS+ protocol tacacs+ aaa-server AuthInbound protocol tacacs+ aaa-server AuthInbound (inside) host 171.68.118.101 cisco timeout 5
如果使用xauth在PIX中配置sysopt connection permit-ipsec命令(而非sysopt ipsec pl-compatible命令),则记帐对于TCP连接有效,但对ICMP或UDP无效。
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
24-Sep-2001 |
初始版本 |