Network/Network

Network - ACL(Access Control List)

잇(IT) 2022. 4. 22. 13:00

이번 포스팅은 ACL에 대해 알아 볼 것이다.

 

ACL(Access Control List)

1. 1개 이상의 서브넷 내부와 외부의 트래픽을 제어하기 위한 방화벽 역할을 한다. (라우터 방화벽)

2. Interface로 들어오고 나가는 패킷을 분석해서 정해진 규칙에 따라 패킷을 전송 또는 차단함으로써 네트워크 접근을 제어한다. (패킷 필터링)

 

​1. ACL 종류

1.1 표준 ACL

1.2 확장 ACL

 

1.1 표준 ACL

- 출발지 IP 주소만 참조하여 패킷을 필터링

- 1~99, 1300~1999 번호 사용

- 3계층

 

단점 : 패킷 자체를 막기 때문에 특정 서비스를 막고 싶어도 다른 서비스들까지 모두 막는다.

 

* 텔넷 접속시 관리자만 접근 가능하게 할 때 사용한다.

 

1.1 표준 ACL 명령어 구문

- access-list 1 : 표준 ACL 번호는 1~99번, 1300~1999번 사이의 번호를 사용

- deny : 조건에 맞는 트래픽을 전달(permit)할 것인지 버릴(deny)것인지 결정

 

1.2 확장 ACL

- 출발지, 목적지, IP주소, TCP, UDP, 포트번호를 참조하여 패킷을 필터링

- 100~199, 2000~2699 번호 사용

 

* 원하는 포트 혹은 서비스를 허용 또는 거부할 수 있다.

 

3. ACL 설정 순서

3.1 access-list를 사용하여 트래픽을 분류 후 허용/거부를 정의한다.

3.2 특정 Interface에 위에서 정의한 access-list를 적용한다.

 

4. ACL 구성 시 주의할 점

4.1 모든 access-list 마지막에는 묵시적으로 deny any, deny ip any any가 생략되어 있다.

4.2 access-list를 적용할 인터페이스를 주의해서 선택해야 한다

4.3 하나의 라우터에 다수의 access-list를 설정하는 것은 가능하지만 실제 Interface 적용은 in, out 각 하나씩만 가능하다.

4.4 access-list는 하향식으로 순차처리 한다. 때문에 좁은 범위의 access-list가 먼저 설정되어야 한다.

 

5. Named ACL

5.1 Named 표준 ACL : 표준 ACL과 같음, ACL 선언시 번호가 아닌 사용자 설정 값을 이용한다.

5.2 Named 확장 ACL : 확장 ACL과 같으면, ACL 선언시 번호가 아닌 사용자 설정값을 사용한다.

 

6. 방화벽 방식

6.1 화이트 리스트 방식 : 모두 거부해놓고 허용할 접속자만 허용하는 방식이다.

6.2 블랙 리스트 방식 : 모두 허용해놓고 거부할 접속자들만 거부하는 방식이다.


기본 토폴로지 구성

 

1. 표준 ACL

2. 확장 ACL

 

[ 1. 표준 ACL ]

 

1.1 시나리오

가장 우측 PC에서 200.200.200.0 대역으로 통신이 불가능하도록 설정한다.

 

1.2 표준 ACL 설정

- 이전에 통신이 잘되는 것을 먼저 확인한다.

 

- access-list로 PC ip 주소를 입력하여 제한한다.

 

access-list 1 deny host 200.200.202.2

int se0/0/0

ip access-group 1 in

 

- ACL 적용 후 통신이 불가능 한 것을 확인 할 수 있다.

- 단, 표준 ACL을 사용할 경우 모든 것이 막힌다.

- 표준 ACL은 설정하기 쉽지만 세분화가 되지 않는다.

 

[ 2. 확장 ACL ]

 

2.1 시나리오

2.1.1 가장 우측 PC에서 WEB Server(가장 왼쪽 Server)에 WEB 접속만 불가능하도록 설정한다.

2.1.2 중간 PC에서 가장 왼쪽 Server로 Ping만 불가능하도록 설정한다.

 

2.2 확장 ACL 설정

 

- 2.1.1 설정

 

Seoul_R1(config)#access-list 100 deny tcp host 200.200.202.2 host 200.200.200.1 eq 80

Seoul_R1(config)#access-list 100 permit ip any any

Seoul_R1(config)#int se0/0/0

Seoul_R1(config-if)#ip access-group 100 in

 

- 가장 우측 PC에서 ping은 가고, PC와 같은 대역의 Server에서도 WEB Server 접속이 잘되는 것을 확인 할 수 있다.

 

- 하지만 가장 우측 PC에서 WEB Server로 접속이 안되는 것을 볼 수 있다.

 

- 2.1.2 설정

 

Seoul_R1(config)#access-list 101 deny icmp host 200.200.201.2 host 200.200.200.1

Seoul_R1(config)#access-list 101 permit ip any any

Seoul_R1(config)#int se0/0/0

Seoul_R1(config-if)#ip access-group 101 in

 

- 중간 PC에서 WEB Server로 ping은 안가지만 WEB 접속은 되는 것을 확인 할 수 있다.


- 표준 ACL은 설정하기 편하지만 모든 것이 제한되기 때문에 주의해서 사용해야 한다.

- 확장 ACL은 일일히 다 설정해야 하기 때문에 사전에 포트 번호 서비스 등 체계적인 계획을 세우고 설정해야 한다.

728x90