FTP, 텔넷 및 HTTP 연결에 대해 RADIUS 및 TACACS+ 인증을 수행할 수 있습니다. 일반적으로 덜 일반적인 다른 프로토콜에 대한 인증은 작동하도록 만들 수 있습니다. TACACS+ 권한 부여는 지원되며 RADIUS 권한 부여는 지원되지 않습니다. 이전 버전에 대한 PIX 5.1 AAA(authentication, authorization, and accounting)의 변경 사항에는 Cisco Secure VPN Client 1.1에서 IPSec 터널을 인증하는 xauth(확장 인증)가 포함됩니다.
이 문서에 대한 특정 요건이 없습니다.
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
인증은 사용자가 누구인지를 나타냅니다.
권한 부여는 사용자가 수행할 수 있는 작업입니다.
인증은 권한 부여 없이 유효합니다.
인증이 없으면 권한 부여가 유효하지 않습니다.
사용자가 수행한 작업입니다.
내부에 100명의 사용자가 있고 이 사용자 중 6명만 네트워크 외부에서 FTP, 텔넷 또는 HTTP를 수행할 수 있게 하려는 경우를 가정해보겠습니다. PIX에 아웃바운드 트래픽을 인증하도록 지시하고 TACACS+/RADIUS 보안 서버에 있는 6명의 사용자 ID를 모두 제공할 수 있습니다. 간단한 인증으로 이 여섯 명의 사용자를 사용자 이름과 비밀번호로 인증한 다음 나갈 수 있습니다. 나머지 94명의 사용자는 외출할 수 없었습니다. PIX는 사용자에게 사용자 이름/비밀번호를 묻는 프롬프트를 표시한 다음 사용자 이름과 비밀번호를 TACACS+/RADIUS 보안 서버에 전달하며, 응답에 따라 연결을 열거나 거부합니다. 이 6명의 사용자는 FTP, 텔넷 또는 HTTP를 수행할 수 있습니다.
그러나 이 6명의 사용자 중 하나인 "페스투스"가 신뢰받지 못할 것이라고 가정합니다. Festus가 FTP를 수행하도록 허용하되, 외부에 대한 HTTP 또는 텔넷은 허용하지 않습니다. 즉, 권한 부여를 추가해야 합니다. 즉, 사용자가 수행할 수 있는 작업을 인증하고 사용자를 인증해야 합니다. 이는 TACACS+에서만 유효합니다. PIX에 권한 부여를 추가하면 PIX는 먼저 Festus의 사용자 이름과 비밀번호를 보안 서버로 전송한 다음, Festus가 수행하려고 하는 "명령"을 보안 서버에 알리는 권한 부여 요청을 보냅니다. 서버가 올바르게 설정되면 Festus는 "ftp 1.2.3.4"를 허용할 수 있지만 HTTP 또는 텔넷을 어디에서나 사용할 수 있는 기능은 거부됩니다.
인증/권한 부여를 켠 상태에서 내부에서 외부로(또는 그 반대로) 이동하려고 할 때:
Telnet - 사용자에게 사용자 이름 프롬프트가 표시된 다음 비밀번호 요청이 표시됩니다. PIX/server에서 인증(및 권한 부여)이 성공하면 이후 대상 호스트에서 사용자 이름 및 비밀번호를 입력하라는 메시지가 표시됩니다.
FTP - 사용자에게 사용자 이름 프롬프트가 표시됩니다. 사용자는 사용자 이름에 local_username@remote_username을 입력하고 비밀번호에 local_password@remote_password을 입력해야 합니다. PIX는 local_username 및 local_password를 로컬 보안 서버로 전송합니다. PIX/server에서 인증(및 권한 부여)이 성공하면 remote_username 및 remote_password는 이후 대상 FTP 서버로 전달됩니다.
HTTP - 브라우저에 사용자 이름 및 비밀번호를 요청하는 창이 표시됩니다. 인증(및 권한 부여)이 성공하면 사용자는 다음 단계를 거쳐 대상 웹 사이트에 도착합니다. 브라우저는 사용자 이름과 비밀번호를 캐시합니다. PIX가 HTTP 연결을 시간 초과해야 하지만 시간 초과가 되지 않는 경우, 브라우저에 캐시된 사용자 이름과 비밀번호를 PIX로 보낸 다음 이를 인증 서버로 전송하는 방법으로 재인증이 실제로 수행되고 있을 가능성이 높습니다. PIX syslog 및/또는 서버 디버그는 이러한 현상을 보여줍니다. 텔넷과 FTP가 정상적으로 작동하는 것 같지만 HTTP 연결이 작동하지 않는 경우 그 이유가 여기에 있습니다.
Tunnel(터널) - VPN 클라이언트 및 xauth를 켠 상태로 IPSec 트래픽을 네트워크로 터널링하려는 경우 사용자 이름/비밀번호에 대해 "User Authentication for New Connection(새 연결을 위한 사용자 인증)"이라는 회색 상자가 표시됩니다.
참고: 이 인증은 Cisco Secure VPN Client 1.1부터 지원됩니다. 도움말 > 정보 메뉴에 버전 2.1.x 이상이 표시되지 않으면 작동하지 않습니다.
이 섹션에서는 보안 서버를 구성하기 위한 정보를 제공합니다.
CSU.cfg 파일에 PIX IP 주소 또는 정규화된 도메인 이름 및 키가 있는지 확인합니다.
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 .* } } }
PIX IP 주소 및 키를 NAS(Network Access Server) 목록에 추가하려면 GUI를 사용합니다.
user=adminuser { radius=Cisco { check_items= { 2="all" } reply_attributes= { 6=6 } } }
다음 단계를 사용하여 Windows 2.x RADIUS용 Cisco Secure ACS를 구성합니다.
User Setup GUI(사용자 설정 GUI) 섹션에서 비밀번호를 가져옵니다.
Group Setup GUI(그룹 설정 GUI) 섹션에서 특성 6(Service-Type)을 Login(로그인) 또는 Administrative(관리)로 설정합니다.
NAS Configuration(NAS 컨피그레이션) 섹션 GUI에서 PIX IP 주소를 추가합니다.
EasyACS 설명서에서는 설정에 대해 설명합니다.
그룹 섹션에서 Shell exec를 클릭하여 exec 권한을 부여합니다.
PIX에 권한 부여를 추가하려면 그룹 설정의 하단에서 Deny unmatched IOS commands(일치하지 않는 IOS 명령 거부)를 클릭합니다.
허용할 각 명령에 대해 Add/Edit new 명령(예: Telnet)을 선택합니다.
특정 사이트에 텔넷할 수 있는 경우 인수 섹션의 IP 주소를 "permit #.#.#.#" 형식으로 입력합니다. 그렇지 않은 경우 텔넷을 허용하려면 Allow all unlisted arguments(나열되지 않은 모든 인수 허용)를 클릭합니다.
편집 완료 명령을 클릭합니다.
허용되는 각 명령(예: 텔넷, HTTP 또는 FTP)에 대해 단계 1~5를 수행합니다.
NAS Configuration GUI 섹션에서 PIX IP를 추가합니다.
사용자는 User Setup GUI(사용자 설정 GUI) 섹션에서 비밀번호를 가져옵니다.
그룹 섹션에서 Shell exec를 클릭하여 exec 권한을 부여합니다.
그룹 설정의 하단에서 PIX에 권한 부여를 추가하려면 Deny unmatched IOS commands(일치하지 않는 IOS 명령 거부)를 클릭합니다.
허용할 각 명령(예: 텔넷)에 대해 Add/Edit new 명령을 선택합니다.
특정 사이트에 대한 텔넷을 허용하려면 인수 섹션에 "permit #.#.#.#" 형식으로 IP 주소를 입력합니다. 모든 사이트에 텔넷을 허용하려면 목록에 없는 모든 인수 허용을 클릭합니다.
편집 완료 명령을 클릭합니다.
허용되는 각 명령(예: 텔넷, HTTP 또는 FTP)에 대해 1~5단계를 수행합니다.
PIX IP 주소가 NAS Configuration GUI 섹션에 추가되었는지 확인합니다.
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 명령은 Output Interpreter Tool(등록된 고객만 해당)에서 지원되며, 이를 통해 show명령 출력의 분석을 볼 수 있습니다.
AAA를 추가하기 전에 PIX 컨피그레이션이 작동하는지 확인합니다. 인증 및 권한 부여를 시작하기 전에 트래픽을 전달할 수 없는 경우 이후에는 전달할 수 없습니다.
PIX에서 로깅을 활성화합니다.
로그 콘솔 디버깅은 로드가 많은 시스템에서 사용할 수 없습니다.
로깅 버퍼링된 디버깅을 사용한 다음 show logging 명령을 실행할 수 있습니다.
로깅은 syslog 서버로 전송되어 그곳에서 검사될 수도 있습니다.
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를 통해 인증됩니다(즉, 인바운드 트래픽은 TACACS 서버 171.68.118.101을 포함하는 서버 목록 "AuthInbound"를 사용합니다).
아래 예는 인증이 양호한 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
아래 예는 서버가 ping할 수 있지만 PIX와 통신할 수는 없는 PIX 디버그를 보여줍니다. 사용자에게는 사용자 이름이 한 번 표시되지만 PIX에서는 비밀번호를 요청하지 않습니다(텔넷에 있음). 사용자에게 오류가 표시됩니다. 최대 시도 횟수가 초과되었습니다.
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에서는 비밀번호를 요청하지 않습니다(텔넷에 있음). 다음 메시지가 표시됩니다. Timeout to TACACS+ server and Error: Max number of tries exceeded(TACACS+ 서버로 시간 초과 및 오류)(컨피그레이션에서 위조 서버가 스왑됨).
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 디버그를 보여줍니다. 사용자는 사용자 이름 및 비밀번호에 대한 요청을 확인하고 이를 입력할 수 있는 세 가지 기회를 가집니다. 입력이 실패하면 다음 메시지가 표시됩니다. 오류: 최대 시도 횟수 초과됨.
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
아래 예에서는 서버가 ping할 수 있지만 데몬이 다운되어 PIX와 통신하지 않는 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 디버그를 보여줍니다. 사용자에게는 사용자 이름, 비밀번호, RADIUS 서버 시간 초과 메시지 및 Error: Max number of tries exceeded message a bogus server wap in configuration(컨피그레이션에서 위조 서버가 스왑된 경우 최대 시도 횟수 초과 메시지)가 표시됩니다.
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
장점 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" 또는 "logged-in users 보기" 기능이 있습니다. 최대 세션 또는 로그인된 사용자를 확인하는 기능은 어카운팅 레코드에 따라 달라집니다. 계정 관리 "시작" 레코드가 생성되었지만 "중지" 레코드가 없는 경우 TACACS+ 또는 RADIUS 서버는 사용자가 여전히 로그인되어 있다고 가정합니다(즉, 사용자가 PIX를 통해 세션을 가지고 있음).
이는 연결의 특성상 텔넷 및 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
서버에 시작 레코드가 있지만 중지 레코드가 없으므로 이 시점에서 텔넷 사용자가 로그인되어 있음을 서버에 표시합니다. 사용자가 인증이 필요한 다른 연결(예: 다른 PC에서)을 시도하고 서버에서 이 사용자에 대해 max-sessions가 1로 설정된 경우(서버에서 max-sessions를 지원한다고 가정) 서버에서 연결을 거부합니다.
사용자는 대상 호스트에서 텔넷 또는 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에 게시된다. 이 다운로드는 1초(즉, 시작 레코드와 중지 레코드 사이에 1초 미만)가 소요되었습니다. 사용자가 웹 사이트에 계속 로그인되어 있으며 웹 페이지를 읽을 때 연결이 여전히 열려 있습니까? 아니요. max-sessions 또는 view logged-in users가 여기에서 작동합니까? HTTP에서 연결 시간("빌드"와 "분해" 사이의 시간)이 너무 짧기 때문에 아닙니다. 시작 및 중지 레코드는 초 미만입니다. 기록이 사실상 동일한 순간에 발생하기 때문에 중지 기록이 없는 시작 기록은 없습니다. uauth가 0 이상으로 설정되었든 아니면 더 크게 설정되었든 모든 트랜잭션에 대해 서버에 전송되는 시작 및 중지 레코드는 계속 존재합니다. 그러나 HTTP 연결의 특성상 max-sessions 및 view logged-in 사용자는 작동하지 않습니다.
앞의 설명에서는 PIX를 통해 텔넷(및 HTTP, FTP) 트래픽을 인증하는 방법에 대해 설명합니다. PIX에 대한 텔넷이 인증 없이 작동하는지 확인합니다.
telnet 10.31.1.5 255.255.255.255 passwd ww
그런 다음 PIX에 사용자 텔넷을 인증하는 명령을 추가합니다.
aaa authentication telnet console AuthInbound
사용자가 PIX에 텔넷할 때 텔넷 비밀번호(WW)를 입력하라는 메시지가 표시됩니다. PIX는 TACACS+ 또는 RADIUS 사용자 이름 및 비밀번호도 요청합니다. 이 경우 AuthInbound 서버 목록이 사용되므로 PIX는 TACACS+ 사용자 이름 및 비밀번호를 요청합니다.
서버가 다운된 경우 사용자 이름에 pix를 입력한 다음 enable password(enable password)를 입력하여 PIX에 액세스할 수 있습니다. 명령을 사용하여 다음을 수행합니다.
aaa authentication enable console AuthInbound
사용자는 TACACS 또는 RADIUS 서버로 전송되는 사용자 이름 및 비밀번호를 입력하라는 프롬프트를 받습니다. 이 경우 AuthInbound 서버 목록이 사용되므로 PIX는 TACACS+ 사용자 이름 및 비밀번호를 요청합니다.
활성화할 인증 패킷은 로그인할 인증 패킷과 동일하므로 사용자가 TACACS 또는 RADIUS를 사용하여 PIX에 로그인할 수 있는 경우 동일한 사용자 이름/비밀번호를 사용하여 TACACS 또는 RADIUS를 통해 활성화할 수 있습니다. 이 문제는 Cisco 버그 ID CSCdm47044(등록된 고객만 해당)에 할당되었습니다.
서버가 다운된 경우 PIX에서 사용자 이름에 대한 pix 및 일반 enable 비밀번호(enable password는 무엇이든)를 입력하여 PIX enable 모드에 액세스할 수 있습니다. PIX 컨피그레이션에 없는 비밀번호를 활성화하는 경우 사용자 이름에 pix를 입력하고 Enter를 누릅니다. enable 비밀번호가 설정되었지만 알려지지 않은 경우 비밀번호를 재설정하기 위해 비밀번호 복구 디스크를 작성해야 합니다.
다음 명령이 있는 경우
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]
최종 대상에 도착하면 대상 상자에 표시된 사용자 이름: 및 비밀번호: 프롬프트가 표시됩니다. 이 프롬프트는 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"
이 기능은 현재 작동하지 않으며 문제에 Cisco 버그 ID CSCdp93492(등록된 고객만)가 할당되었습니다.
PIX 외부 사이트뿐 아니라 PIX 자체에서도 인증이 필요한 경우, 브라우저에서 사용자 이름과 비밀번호를 캐시하므로 가끔 비정상적인 브라우저 동작이 관찰될 수 있습니다.
이를 방지하려면 다음 명령을 사용하여 PIX 컨피그레이션에 RFC 1918 주소(인터넷에서 라우팅할 수 없지만 PIX 내부 네트워크에 대해 유효하고 고유한 주소)를 추가하여 가상 HTTP를 구현할 수 있습니다.
virtual http #.#.#.# [warn]
사용자가 PIX 외부로 나가려고 하면 인증이 필요합니다. warn 매개변수가 있는 경우 사용자는 리디렉션 메시지를 수신합니다. 인증은 uauth의 기간 동안 유효합니다. 설명서에 나와 있는 것처럼 가상 HTTP를 사용하는 경우 timeout uauth 명령 지속 시간을 0초로 설정하지 마십시오. 이렇게 하면 실제 웹 서버에 대한 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 syslog에 다음과 같은 메시지가 표시됩니다.
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 명령을 사용하여 인증할 수 있습니다. 이 명령을 사용하면 가상 텔넷 IP 주소에 대한 인증이 수행됩니다. 이 인증 후 비정상적인 서비스에 대한 트래픽은 실제 서버로 이동할 수 있습니다.
이 예에서는 TCP 포트 49 트래픽이 외부 호스트 99.99.99.2에서 내부 호스트 171.68.118.106으로 흐르도록 할 수 있습니다. 이 트래픽은 실제로 인증 가능하지 않으므로 가상 텔넷을 설정합니다. 가상 텔넷의 경우 연결된 static이 있어야 합니다. 여기서 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의 사용자는 먼저 Telnetting에서 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 명령은 사용자에게 "meter의 시간"을 표시합니다.
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
아웃바운드 트래픽은 기본적으로 허용되므로 가상 텔넷 아웃바운드를 사용하는 데 고정 트래픽은 필요하지 않습니다. 다음 예에서는 10.31.1.50의 내부 사용자가 가상 99.99.99.30에 텔넷하고 인증합니다. 텔넷 연결이 즉시 끊어집니다. 인증된 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)
사용자가 가상 텔넷 IP 주소에 텔넷할 때 show uauth 명령은 자신의 uauth를 표시합니다. uauth에 시간이 남아 있을 때 세션이 종료된 후 트래픽이 통과하지 못하도록 하려면 가상 텔넷 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에서 가상 텔넷이 구성되고 포트 범위에 대한 권한 부여가 구성된 경우, 가상 텔넷을 사용하여 구멍이 열리면 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 } }
가상 텔넷이 네트워크 내의 호스트로 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 인터페이스에서 다른 인터페이스로 이동하는 사용자를 인증하려면 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 간의 텔넷 트래픽을 인증하려고 합니다.
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
sysopt ipsec pl-compatible 명령이 아닌 sysopt connection permit-ipsec 명령이 xauth를 사용하는 PIX에서 구성된 경우 어카운팅은 ICMP 또는 UDP가 아닌 TCP 연결에 유효합니다.
개정 | 게시 날짜 | 의견 |
---|---|---|
1.0 |
24-Sep-2001 |
최초 릴리스 |