1) ACL(Access Control List)
- L3 Device는 전송하고자 하는 패킷의 목적지 IP 주소에 대한 경로 정보가 자신의 Routing Table에 등록되어 있는 경우 기본적으로 해당 패킷을 전송 처리한다. (Routing 수행)
- 하지만 보안적인 관점에서 모든 패킷을 전송하는 것은 위험할 수 있다. 공격과 관련된 패킷 혹은 불필요한 패킷의 경우 전송을 차단할 필요가 있다. 이를 수행하는 Device가 Firewall(방화벽)이다.
- Firewall을 사용할 수 없는 경우에는 Router에 Access Control List(ACL)를 구성하게 되면 기본적은 방화벽 기능을 사용할 수 있다. (Packet Filtering을 활용하여 네트워크에서 Packet 이동을 제어할 수 있다.)
2) ACL의 종류 (2가지)
2.1) . Standard ACL(1-99, 1300-1999)
- L3헤더(IP 헤더)의 Source Address를 조건으로 패킷을 분류 후 정책 정의. (어디서 왔는지만 확인한 후 결정)
- 검사 결과에 따라 전체 Protocol Suite에 대한 Packet 출력을 허용하거나 거부한다.
2.2) Extended ACL(100-199, 2000-2699)
- L3헤더(IP 헤더)의 Source Address, Destination Address, Protocol, TTL 등의 정보와 L4헤더(TCP/UDP)의 Source Port, Destination Port, TCP Flag 등의 정보를 기반으로 패킷을 분류 후 정책 정의.
3) ACL 설정 순서
1) access-list를 사용하여 트래픽을 분류 후 허용/거부 정의.
2) 특정 Interface에 위에서 정의한 access-list를 적용.
4) ACL 구성 시 주의할 점
1) 모든 Access-list 마지막에는 모든 트래픽을 차단하라는 의미의 [deny any], [deny ip any any]가 생략되어 있다.
2) Access-list를 적용할 인터페이스를 주의해서 선택해야 한다!
3) 하나의 라우터에 다수의 access-list를 설정하는 것은 가능하지만 실제 Interface 적용은 inbound, outbound 각각 하나씩만 가능하다.
4) Access-list는 하향식으로 순차적인 처리를 한다. 때문에 좁은 범위의 Access-list가 먼저 설정되어야 한다.
5) Numbered ACL의 경우 중간 삭제 및 추가가 불가능했다. 수정이 필요한 경우 no access-list <번호>로 모두 삭제 후 다시 입력한다.
(특정 access-list 한 줄을 삭제하면 해당 번호의 모든 내용이 삭제된다!)
네트워크 구성
ACL 적용
1. Standard ACL
Ex 1) HQ 네트워크 관리자는 HQ 내부 네트워크에 접근하는 트래픽 중 출발지 주소 대역이 [150.100.7.128/27]인 패킷을 차단하고자 한다. 조건에 맞는 ACL을 구성하시오.
HQ Router access-list 설정
HQ(config)#access-list 1 deny 150.100.7.128 0.0.0.31 HQ(config)#access-list 1 permit any HQ(config)#int fa 0/0 HQ(config-if)#ip access-group 1 out |
access-list 1: access list 1번 할당 (1~99번까지 Standard이니 그중 하나를 할당하면 된다.)
assess-list 1 deny 150.100.7.128 0.0.0.31(wildcard mask): 150.100.7.28/27 대역으로 오는 IP를 거부한다.
ip access-group 1 out: fast Ethernet 0/0 포트로 나갈 때 해당 IP 유입을 거부한다.
Wildcard Mask
- 특정 IP 주소 범위를 지정할 수 있는 Mask를 의미
- 표현 방식은 Subnetmask와 반대이다. (고정된 Bit에 0을 채우고 변동 가능한 Bit에 1을 채운다)
ex) /24 Subnet mask: 255.255.255.0 / wildcard mask : 0.0.0.255
- Wildcard mask bit 0은 대응 bit값을 검사하라는 것을 의미한다
- Wildcard mask bit 1은 대응 bit값을 검사하지 말고 무시하라는 것을 의미한다
- 해당 Wildmask는 0.0.0.0으로 설정되어 있으므로 host 172.30.16.29 IP만 검사하는 것이다.
설정 확인
show running-config
HQ#sh running-config interface FastEthernet0/0 ip address 211.100.10.254 255.255.255.0 ip access-group 1 in duplex auto speed auto
access-list 1 deny 150.100.7.128 0.0.0.31 access-list 1 permit any |
show access-lists
HQ#show access-lists Standard IP access list 1 10 deny 150.100.7.128 0.0.0.31 (8 match(es)) 20 permit any |
Ping Test
- 거부한 Network 대역에는 Ping이 나가지 않는다.
- 거부하지 않은 Network 대역에는 Ping이 나간다.
Ex 2) Branch 네트워크 관리자는 [150.100.7.160/27] 네트워크 대역의 사용자 중 [150.100.7.161] IP 주소를 사용하는 PC만 외부와 통신이 가능하기를 원한다. 해당 조건에 맞는 ACL을 설정하시오.
Brunch Router access-list 설정
BRANCH(config)#access-list 1 permit host 150.100.7.161 BRANCH(config)#access-list 1 deny any BRANCH(config)#int fa0/1 BRANCH(config-if)#ip access-group 1 out |
설정 확인
2. Extended ACL
Ex 1) Branch 네트워크 관리자는 [150.100.7.128/27] 네트워크 대역에서 목적지가 [100.1.1.1], [100.1.3.1]로 향하는 패킷을 차단하고 한다. 조건에 맞는 ACL을 설정하시오.
Branch Switch Access-list 설정
Branch(config)#access-list 100 deny ip 150.100.7.128 0.0.0.31 host 100.1.1.1 Branch(config)#access-list 100 deny ip 150.100.7.128 0.0.0.31 host 100.1.3.1 Branch(config)#access-list 100 permit ip any any (default: access-list 100 deny ip any any) |
access-list 100 deny ip 150.100.7.128 0.0.0.31 host 100.1.1.1: 150.100.7.128 네트워크 대역 IP에서 100.1.1.1로 가는 host IP를 거부한다.
Branch Switch Access-list 적용
Branch(config)#interface fa 0/1 Branch(config-if)#ip access-group 100 in |
설정 확인
ping Test
- 차단한 IP로는 Ping이 나가지 않는 것을 확인할 수 있다.
- 만약 차단할 아이피를 추가하고 싶은 경우 기존 Access-list에는 access-list 100 deny ip any any명령어가 마지막에 추가돼 있으므로 Access-list를 삭제 후 재 작성해야 한다.
Ex 2) HQ 라우터에서 다음 조건에 맞는 ACL을 구성하시오.
1) FTP Server(211.100.10.2)는 [150.100.7.161] 장비에서만 FTP 접근이 가능하도록 하시오.
(TCP 21/20)
2) Web Server(211.100.10.3)는 [150.100.7.160/27]와 [150.100.7.128/27] 대역에서만
Web 접근이 가능해야 하고, Internet 망 사용자는 접근이 불가능하도록 하시오.(TCP 80/443)
3) 그 외 나머지 모든 트래픽들은 차단하시오.
HQ Switch Access-list 설정
HQ(config)#access-list 100 permit tcp host 150.100.7.161 host 211.100.10.2 eq 21 HQ(config)#access-list 100 permit tcp host 150.100.7.161 host 211.100.10.2 eq 20 HQ(config)#access-list 100 permit tcp 150.100.7.160 0.0.0.63 host 211.100.10.3 eq 80 HQ(config)#access-list 100 permit tcp 150.100.7.160 0.0.0.63 host 211.100.10.3 eq 443 |
access-list 100 permit tcp host 150.100.7.161 host 211.100.10.2 eq 21: hostIP(150.100.7.161)에서 목적지 IP(211.100.10.2)의 21번 Port로 접근하는 것을 허용한다.
access-list 100 permit 150.100.7.128 0.0.0.31 host 211.100.10.3 eq 80
access-list 100 permit 150.100.7.128 0.0.0.31 host 211.100.10.3 eq 80
위처럼 이렇게 두줄로 표현할 수도 있지만 Wildcard Mask를 통해서 access list 100 permit tcp 150.100.7.160 0.0.0.63 host 211.100.10.3 eq 80으로 2개의 네트워크를 한 줄로 설정이 가능하다.
HQ Switch Access-list 적용
HQ(config)#int fa 0/0 HQ(config-if)#ip access-group 100 out
|
설정 확인
FTP 접속 확인
Web 접속 확인
'Network > Router' 카테고리의 다른 글
EIGRP 개념, 특징, Metric, Packet (0) | 2019.10.14 |
---|---|
NAT(Network Address Translation),PAT 개념 및 구성 (0) | 2019.10.10 |
Router의 Best Path(최적 경로) 선택 조건 (0) | 2019.09.25 |
Routing Loop 발생 원인 (0) | 2019.09.25 |
RIPv2 (0) | 2019.09.25 |
공부&일상 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요! 질문은 언제나 환영입니다😊