티스토리 뷰

GNS3

GNS3 v2.1 Appliance (3) : AAA Server

쏠라구구 2018.06.21 15:53

# GNS3에서 제공하는 다양한 Appliance 를 사용해보자
 
0. GNS3 Appliance 사용하기
사용하고자 하는 appliance 를 선택 후 *.gns3a 다운로드 이후 GNS3에서 File - Import appliances 로 등록하자
 
 
1. AAA Server
AAA(인증, 권한부여, 감사/로그)를 구현하는 인증 프로토콜에 RADIUS 와 TACACS+ 서버 기능을 제공함
보통 네트워크장비/네트워트보안 장비와 VPN클라이언트에 접속 시 사용자에 대한 접근을 관리함
사용 SW : TACACS 서버(tac_plus), RADIUS 서버(free radius)

 
 
2. TACACS+
AAA 기능을 제공하는 인증 프로토콜이며 최초 1984년 BBN Technologies 에 의해 개발되었고,
이후 Cisco에서 기능을 보완/확장하여 TACACS+ 자체 형식으로 구현함.
RADIUS 에 비해 tcp 기반인 TACACS+가 많이 사용됨에 따라 시스코에서 TACACS+ 개발킷을 공개하였고,
shrubbery networks 에서 해당 소스를  기반으로 tac_plus 서버를 개발함
 
 
2.1 구성도
AAA_Srv(Container) 1대와 2대의 Cisco Router 로 구성

 
 
2.2 AAA_Srv (TACACS+)
tacacs+ 프로세스 확인
ps -ef | grep tacacs

 
tac_plus 버전 확인
root@AAA_Srv:~# tac_plus -v
tac_plus version F4.0.4.27a
 
tacacs+ 설정 파일 확인
grep ^[^#] /etc/tacacs+/tac_plus.conf
-------------------------------------------
# tacacs+ 서버와 통신 시 사용하는 암호키
key = gns3
 
# gns3 라는 유저 설정 내용 : admin(멤버=그룹)소속, 암호는 gns3(des 결과)
user = gns3 {
    name = "Admin User"
    member = admin
    login = des AxKP5aUynXxrg
                service = junos-exec {
                        local-user-name = remote-admin
        }
}
 
# admin 그룹 설정 내용 : 기본 서비스 허용, exec 권한 레벨 15
group = admin {
        default service = permit
        service = exec {
                priv_lvl = 15
                }
        }
 
# readonly 유저 : 암호(gns3), cmd 권한(특정 지정된 cmd만 사용하게 설정)
-------------------------------------------
 
 
2.3 Cisco1 장비에 AAA(TACACS+) 설정 - 인증 Authentication
local 계정(sola/soal99) , enable 암호(sola99), telnet 접속 허용
tacacs+ 서버 설정 : IP(192.168.254.180), 서버와 통신 시 암호키(gns3)
AAA 설정 : 인증 시 tacacs+ 사용하며, tacacs+ 통신 fail 시 local 계정으로 인증
 
username sola password sola99
username sola privilege 15
enable password sola99
line vty 0 4
 transport input all
 
tacacs-server host 192.168.254.180
tacacs-server key gns3
 
aaa new-model
aaa authentication login default group tacacs+ local
 
 
2.4 외부에서 Cisco1 접속 확인
외부에서 telnet 으로 Cisco1(192.168.254.181) 접속 확인 : 접속계정(gns3/gns3)

 
Cisco1 Console 확인 : tacacs 디버그로 확인
debug tacacs authentication
 
tacacs 패킷 캡쳐 확인 : 메시지 내용은 암호화되어 볼 수 없음 (=맨 아래 Encrypted Request 부분)

 
2.5 Authorization 권한 설정 확인
Cisco1 장비에 AAA(TACACS+) 설정
aaa authorization exec default group tacacs+
aaa authorization commands 15 default group tacacs+
 
AAA_Srv Container tac_plus config 설정 오타 수정 필요
gns3 권한 실패 원인(debug tacacs authorizion) : 아래처럼 AV priv_lvl=15 가 아니라 priv-lvl=15 (admin group 부분) 수정 필요(nano)
수정 후 reload 및 stop/start 는 제대로 적용이 되지 않아서, gns3 를 close 후 다시 실행해서 확인
*Mar  1 00:35:51.191: TPLUS: Failed to decode AV priv_lvl=15

 
Cisco1 Console 확인 : 디버그로 확인
debug tacacs authorization
 
계정별 권한 확인 : gns3(admin 그룹), readonly(read-only 그릅, 특정 cmd만 실행됨)
각각 gns3, readonly 로그인 후 conf t 실행 시 readonly 계정은 실행 차단됨

 
 
2.6 Accounting 감사/로그 설정 확인
Cisco1 장비에 AAA(TACACS+) 설정
aaa accounting exec default start-stop group tacacs+
aaa accounting commands 15 default stop-only group tacacs+
 
외부에서 접속하여 cmd 등 실행
 
AAA_Srv 에서 log 확인 : tail -F /var/log/tac_plus.acct

 
 
2.7 AAA 전체 설정(참고용)
aaa new-model
aaa authentication login default group tacacs+ local
aaa authorization exec default group tacacs+
aaa authorization commands 15 default group tacacs+
aaa accounting exec default start-stop group tacacs+
aaa accounting commands 15 default stop-only group tacacs+
 
 
 
3. RADIUS
RADIUS(RemoteAuthenticationDial-InUserService)는 네트워크 서비스를 연결하고 사용하는 사용자에게
중앙 집중식 인증/인가/감사(AAA) 기능을 제공하는 프로토콜이다.
RADIUS는 1991년 LivingstonEnterprises에 의해 액세스 서버 인증 프로토콜로 개발되었고 이후에 IETF 표준으로 도입되었음.
 
 
3.1 구성도
TACACS+와 구성환경과 동일
 
 
3.2 AAA_Srv (RADIUS)
RADIUS 프로세스 확인
ps -ef | grep freeradius

 
freeradius 버전 확인
root@AAA_Srv:~# freeradius -v
radiusd: FreeRADIUS Version 3.0.16
 
freeradius 설정 파일 확인 : alice 와 bob 계정 확인
more /etc/freeradius/3.0/users
-------------------------------------------
root@AAA_Srv:/etc/freeradius/3.0# more users
alice    Cleartext-Password := "gns3"
         Reply-Message = "Hello, %{User-Name}"
 
bob      Cleartext-Password := "gns3"
         Reply-Message = "Hello, %{User-Name}"
 
 
3.3 Cisco2 장비에 AAA(RADIUS) 설정 - 인증 Authentication
local 계정(sola/soal99) , enable 암호(sola99), telnet 접속 허용
RADIUS 서버 설정 : IP(192.168.254.180), 서버와 통신 시 암호키(gns3)
AAA 설정 : 인증 시 RADIUS 사용하며, RADIUS 통신 fail 시 local 계정으로 인증
 
username sola password sola99
username sola privilege 15
enable password sola99
line vty 0 4
 transport input all
 
radius-server host 192.168.254.180 auth-port 1812 acct-port 1813 key gns3
 
aaa new-model
aaa authentication login default group radius local
 
 
3.4 외부에서 Cisco1 접속 확인
외부에서 telnet 으로 Cisco2(192.168.254.182) 접속 확인 : 접속계정(alice or bob / 암호 gns3)

 
Cisco2 Console 확인 : radius 디버그로 확인
debug radius authentication
 
radius 패킷 캡쳐 확인 : 계정암호 부분만 암호화되어서 전달됨

 
 
3.5 AAA 서버 - service freeradius start 실행 fail
관련 파일들의 권한 수정
chmod 644 /etc/freeradius/3.0/certs/dh
cd /etc/freeradius/3.0/mods-config/attr_filter/
chmod 644 *
cd /etc/freeradius/3.0/mods-config/files/
chmod 644 *
cd /etc/freeradius/3.0/mods-config/preprocess/
chmod 644 *
 
 
# 참고링크


댓글
댓글쓰기 폼
공지사항
Total
382,659
Today
17
Yesterday
123
링크
«   2018/12   »
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
글 보관함