본문으로 바로가기

[GNS] Router Access List 실습

category Network/GNS 2022. 5. 27. 22:13

Access List

  • 접근을 허용할지 말지 미리 정해놓은 리스트
  • 스탠더드 액세스 리스트(Standard Access List)
    • 출발지 주소만을 이용해 접근을 통제
  • 익스텐디드 액세스 리스트(Extended Access List)
    • 출발지 주소, 목적지 주소, 프로토콜, 포트 번호 등을 이용해 접근을 통제
  • 규칙
    • 액세스 리스트는 윗줄부터 하나씩 차례로 수행
    • 맨 마지막에 permit any를 넣지 않으면 default로 액세스 리스트와 매칭되지 않는 모든 address는 deny
    • 새로 추가하는 라인은 맨 마지막에 추가되므로 access-list line의 선택적 추가(selective add)나 제거(remove)가 불가능
    • interface에 대한 엑시스 리스트가 정의 되지 않은 경우 결과는 permit any
  • 주의사항
// 익스텐디드 엑세스 리스트 추가
Router(config)# access-list 105 permit tcp any host 201.222.11.7 eq domain
Router(config)# access-list 105 permit tcp any host 201.222.11.7 eq ftp

// eq ftp에 대한 ip를 수정하기 위해 삭제하고 다시 추가
Router(config)# no access-list 105 permit tcp any host 201.222.11.7 eq ftp // no를 이용해 삭제
Router(config)# access-list 105 permit tcp any host 101.222.11.7 eq ftp
  • 만약 no 명령어를 이용해 삭제를 하면 정의되어 있는 모든 액세스 리스트가 삭제
  • 따라서 위에는 domain에 대한 리스트도 삭제되고 맨 마지막에 입력한 리스트만 남음

Standard Access List

  • 기본 설정 명령어
Router(config)# access-list access-list-number(1~99) {permit | deny} {source-address [source-wildcard]} | any}   // wildcard는 생략 가능, 생략하면 0.0.0.0
Router(config-if)# ip access-group access-list-number {in | out}   // 설정할 인터페이스에서 실행

Standard Access List 예제

후니의 쉽게 쓴 CISCO 네트워킹 Vol.2 110p

예제 구성

  • access list의 number는 2
  • PC 2를 제외한 210.240.100.0 네트워크의 모든 PC는 PC1에 접속할 수 있다.
  • 210.240.150.0 네트워크에서는 PC 4를 포함해서 나머지 모든 PC들이 PC A를 접속할 수 있다.
  • 이 외의 모든 PC는 PC A를 접속할 수 없다.

호스트 설정

PC1> ip 203.210.100.15 /24 203.210.100.1
PC2> ip 210.240.100.5 /24 210.240.100.1
PC3> ip 210.240.100.10 /24 210.240.100.2
PC4> ip 210.240.150.100 /24 210.240.15.1

RouterA IP 설정

RouterA# conf t 
RouterA(conf)# inter eth 0/0
RouterA(conf-if)# no shutdown
RouterA(conf-if)# ip address 203.210.100.1 255.255.255.0
RouterA(conf)# inter serial 2/0
RouterA(conf-if)# no shutdown
RouterA(conf-if)# ip address 150.100.100.1 255.255.0.0
RouterA(conf)# inter serial 2/1
RouterA(conf-if)# no shutdown
RouterA(conf-if)# ip address 150.200.100.1 255.255.0.0
RouterA(conf)# router rip
RouterA(conf-router)# network 203.210.100.0
RouterA(conf-router)# network 150.100.0.0
RouterA(conf-router)# network 150.200.0.0

RouterB 설정

RouterB# conf t
RouterB(conf)# inter eth 0/0
RouterB(conf-if)# no shutdown
RouterB(conf-if)# ip address 210.240.150.1 255.255.255.0
RouterB(conf)# inter serial 2/0
RouterB(conf-if)# no shutdown
RouterB(conf-if)# ip address 150.200.100.2 255.255.0.0
RouterB(conf)# router rip
RouterB(conf-router)# network 210.240.150.0
RouterB(conf-router)# network 150.200.0.0

RouterC 설정

RouterC# conf t
RouterC(conf)# inter eth 0/0
RouterC(conf-if)# no shutdwon
RouterC(conf-if)# ip address 210.240.100.1 255.255.255.0
RouterC(conf)# inter serial 2/0
RouterC(conf-if)# ip address150.100.100.2 255.255.0.0
RouterC(conf)# router rip
RouterC(conf-router)# network 150.100.0.0
RouterC(conf-router)# network 210.240.100.0

연결 확인

  • PC2 -> PC1
    • ping 203.210.100.15

  • PC3 -> PC1

  • PC4 -> PC1

Access List 설정

RouterA# conf t
RouterA(conf)# access-list 2 deny 210.240.100.5
RouterA(conf)# access-list 2 permit 210.240.100.0 0.0.0.255
RouterA(conf)# access-list 2 permit 210.240.150.0 0.0.0.255
RouterA(conf)# inter eth 0/0
RouterA(conf-if)# ip access-group 2 out

연결 확인

  • PC2 -> PC1

  • PC3 -> PC1

  • PC4 -> PC1

  • access list 확인
    • show ip access-lists

텔넷포트의 액세스 리스트

  • 텔넷 포트 설정
Router(config)# line vty 0 4
Router(config-line)# password cisco
Router(config-line)# login
  • access list 설정
Router(config)# line vty 0 4
Router(config-line)# access-class {access-list-number} {in|out}

Extended Access List

  • Router(config)# access-list access-list-number {permit|deny} protocol source source-wildcard [operator port] destination destination-wildcard [operator port] [established] [log]

Extended Access List 예제

후니의 쉽게 쓴 CISCO 네트워킹 Vol.2 120p

예제 구성

  • 150.100.1.0 255.255.255.0 네트워크에 있는 호스트에 대해서 15.100.2.0 255.255.255.0에 있는 호스트들이 FTP와 TELNET을 못하게 제한한다.
  • 나머지 모든 곳에서 150.100.1.0 255.255.255.0 네트워크로 들어오는 트래픽은 허가하기로 한다.
  • access list number는 110

호스트 구성

PC1> ip 150.100.1.10 /24 150.100.1.1
PC2> ip 150.100.2.10 /24 150.100.2.1

RouterA 구성

RouterA# conf t
RouterA(conf)# inter eth 0/0
RouterA(conf-if)# no shutdown
RouterA(conf-if)# ip address 150.100.1.1 255.255.255.0
RouterA(conf)# inter eth 0/1
RouterA(conf-if)# no shutdown
RouterA(conf-if)# ip address 150.100.2.1 255.255.255.0

Access List 구성

RouterA# conf t
RouterA(conf)# access-list 110 deny tcp 150.100.2.0 0.0.0.255 150.100.1.0 0.0.0.255 eq ftp
RouterA(conf)# access-list 110 deny tcp 150.100.2.0 0.0.0.255 150.100.1.0 0.0.0.255 eq ftp-data
RouterA(conf)# access-list 110 deny tcp 150.100.2.0 0.0.0.255 150.100.1.0 0.0.0.255 eq telnet
RouterA(conf)# access-list 110 permit ip any any
RouterA(conf)# inter eth 0/0
RouterA(conf-if)# ip access-group 110 out