한 걸음 두 걸음

네트워크 Network ] PacketTracer 방화벽 ACI설정 본문

CSE/Network

네트워크 Network ] PacketTracer 방화벽 ACI설정

언제나 변함없이 2019. 11. 18. 18:53
반응형

네트워크 구조도

1. 표준번호 ACL 설정 및 패킷 필터링 확인

2. 확장번호 ACL 설정 및 패킷 필터링 확인을 해보겠습니다.


1. 표준번호 ACL 설정 및 패킷 필터링 확인

DNS, DHCP, OSFT가 설정되어 있다는 가정 하에 진행되었습니다.
PC0이 220.10.6.0네트워크에 접근할 수 없도록 방화벽 설치

Router>
Router>enable
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.

//access-list(ACL)설정

Router(config)#access-list 1 deny 220.10.1.2 0.0.0.0
Router(config)#access-list 1 permit 220.10.1.0 0.0.0.255

// ACL 적용

Router(config)#int fa1/0
Router(config-if)#ip access-group 1 out

// ACL 확인

Router(config-if)#exit
Router(config)#exit
Router#
%SYS-5-CONFIG_I: Configured from console by console

Router#
Router#show access-lists 1
Standard IP access list 1
deny host 220.10.1.2 (4 match(es))
permit 220.10.1.0 0.0.0.255

Router#


설명

access-list의 이름을 1로 주고, 220.10.1.2 호스트를 deny하고 그 외의 220.10.1.0 네트워크의 접근을 허락하도록 해주었습니다. 이는 라우터1의 인터페이스fa1/0 out방향에 적용되었습니다. 이제, 라우터 기준으로 fa1/0으로 나가는 모든 패킷들 중 출발지가 220.10.1.2인 호스트는 막고 220.10.1.0으로부터 온 패킷은 보내줍니다. 여기서 와일드카드 마스크는 해석법을 아시는 것이 좋습니다. 여기선 간단하게 쓰였으니, 서브넷마스크의 반대로 쓰였다고만 이해하셔도 될 것 같아요ㅎㅎ 이 상태에서는 PC0에서 PC2로 ping 해보면 방화벽에 막혀 가지 못하는 것을 확인하실 수 있습니다.

하지만 permit을 220.10.1.0 네트워크에서 온 데이터만 받기로 설정했기 때문에 타 네트워크(220.10.3.0 / 220.10.5.0 에서 온 데이터를 받지 못합니다. 이러한 데이터까지 받기 위해서는

Router(config)#*access-list 1 permit any *
Router(config)#int fa1/0
Router(config-if)#ip access-group 1 out

으로 설정하고 적용시켜주어야 합니다.


2. 확장번호 ACL 설정 및 패킷 필터링 확인

access-list [ACL-번호] {permit | deny} [프로토콜] [출발지 주소] [와일드카드 마스크] [출발지 포트번호] [목적지 IP 주소] [와일드카드 마스크] [목적지 포트번호]

로 쓰이는 것이 확장번호인데 모두 다 써주지 않아도 생략된 부분은 default값으로 설정되어 들어갑니다.

PC0이 www.a.com에 접근하지 못하도록 ACL방화벽을 설치해볼까요?

Router>
Router>enable
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.

//access-list(ACL)설정

Router(config)#access-list 101 deny tcp host 220.10.1.2 host 220.10.5.248 eq www
Router(config)#access-list 101 permit ip any any

// ACL 적용

Router(config)#int fa0/0
Router(config-if)#ip access-group 101 in


설명

확장번호에서 ACL-번호는 100~199를 쓰거나, 2000~2699를 사용합니다. 그래서 101로 주었고, 웹서버에 접속하는 것이므로 tcp프로토콜을 통해서 접속하는 출발지host(220.10.1.2) 목적지(220.10.5.248)인 패킷을 deny시켜주었습니다.

여기서 eq는 equal이라는 뜻입니다.

operator

(Optional) Operator is used to compare source or destination ports. Possible operands are lt (less than), gt (greater than), eq (equal), neq (not equal), and range (inclusive range).

If the operator is positioned after the source and source-wildcard values, it must match the source port.

If the operator is positioned after the destination and destination-wildcard values, it must match the destination port.

If the operator is positioned after the ttl keyword, it matches the TTL value.

The range operator requires two port numbers. All other operators require one port number.

이 외에도 위와같은 명령어가 더 있으니, 공식문서를 참고해주시면 좋습니다.

그리고 access-list 101 permit ip any any를 해주어서 icmp, dns 등으로 접속하는 모든 것들을 허락해주었습니다.  이와 관련된 것은 OSI 7Layer를 공부하시는 것이 좋습니다. 

라우터1의 interface fa0/0으로 들어가는 패킷에 대해 적용시켜서 불필요하게 패킷이 네트워크상을 돌아다니지 않도록 설정해주었습니다ㅎㅎ!

 


참고 : Cisco 공식문서 https://www.cisco.com/c/en/us/td/docs/routers/asr9000/software/asr9k_r4-0/addr_serv/command/reference/ir40asrbook_chapter1.html#wp2050610028

반응형