ACL(access-list) 표준,확장 방식

Mola·2024년 9월 20일

L3

목록 보기
11/25

access-list

특정 네트워크 장비에 대한 접근 권한을 제한하는것
ip주소, 프로토콜, 포트 등에 접근을 허용(permit) 또는 차단(deny)이 가능하다
ACL을 통해 네트워크 보안성을 높일 수 있다.

ACL은 Standard(표준)과 Extended(확장) 방식이 있다.

각 ACL의 특징은

standard는 출발지 주소(source ip) 만 보고 결정
extended source ip, 목적지 주소 (destination ip) 모두 판단,
기본으로 설정한 ACL은 부분 추가와 삭제가 불가능,

named ACL로 문자를 기입한 ACL만 부분 추가 및 삭제가 가능하다.

Q. standard,extended 방식으로 출발지 : 10.1.1.241 , 목적지 : 10.1.1.242 만 허용, 나머지는 차단

standard 방식풀이

standard의 범위는 다음과 같다

범위 내 숫자 외 ex) PERMIT과 같은 단어로도 표준 방식으로 설정이 가능하다

표준 단어방식으로 한번 설정해보자

R2(config)#ip access-list standard PERMIT
R2(config-std-nacl)#permit host 10.1.1.241
R2(config-std-nacl)#deny any
R2(config-std-nacl)#int g2/0
R2(config-if)#ip access-group PERMIT in

access-group은 정의된 ACL을 특정 인터페이스에 적용하는 명령어를 의미

PERMIT이라는 표준 방식을 인터페이스 g2/0 (10.1.1.242) 에 적용한것

R1에서 g2/0(10.1.1.241)에 핑이 보내지는지 확인하기

R1에서 g2/0(10.1.1.241)은 핑 전송이 되지만, g1/0(10.1.1.129)에서는 안보내짐

표준 숫자 방식과 주석, 우선순위 변경하기

Standard의 숫자 범위는 1~99, 1300~1999

R2(config)#access-list 1 permit host 10.1.1.241
R2(config)#access-list 1 deny any
R2(config)#access-list 1 remark #Standard ACL#
R2(config)#ip access-list resequence 1 20 30
R2(config-std-nacl)#int g2/0
R2(config-if)#ip access-group 1 in

ACL 1번에 #Standard ACL#로 주석처리
우선순위 기본값 첫번째 10, 두번째 20 에서
첫번째 20 두번째 50 (20+30) 으로 변경

확인하기

sh run | s access

sh access-list

extended 방식풀이

숫자방식은 위에 표준방식을 참조

extended의 범위는 100~199, 2000~2699

확장 단어방식

R2(config)#ip access-list extended PERMIT
R2(config-ext-nacl)#permit ip host 10.1.1.241 host 10.1.1.242
R2(config-ext-nacl)#deny ip any any log
R2(config-ext-nacl)#int g2/0
R2(config-if)#ip access-group PERMIT in

출발지가 10.1.1.241인것만 10.1.1.242에 허용하겠다는 의미
나머지는 모두 차단하고, 차단된 패킷의 정보를 로그에 기록하라는 의미

R1에서 10.1.1.241에서 핑이 보내지는지 확인하기

extended 방식풀이 2

g2/0만 허용하므로 나머지 포트를 차단하는 방식으로 풀이

순서

허용/차단 포트 네트워크주소 와일드카드 host 목적지

와일드카드는 255.255.255.255 - 프리픽스
ex) /24 이면 255.255.255.255 - 255.255.255.0 = 0.0.0.255

R2(config-ext-nacl)#deny ip 10.1.1.0 0.0.0.127 host 10.1.1.242 log
R2(config-ext-nacl)#deny ip 10.1.1.128 0.0.0.63 host 10.1.1.242 log
R2(config-ext-nacl)#permit ip any any
R2(config-ext-nacl)#int g2/0
R2(config-if)#ip access-group PERMIT in

10.1.1.0 대역의 ip를 차단하고 차단된 로그를 기록
10.1.1.128 대역의 ip를 차단하고 차단된 로그를 기록
나머지는 허용

확인

PC1에서 핑보내보기

10.1.1.0 대역이므로 차단

? access-list를 한개만 작성해도 됨

묵시적 차단(implicit deny)

extended 방식풀이2에서

R2(config-ext-nacl)#deny ip 10.1.1.0 0.0.0.127 host 10.1.1.242 log
R2(config-ext-nacl)#deny ip 10.1.1.128 0.0.0.63 host 10.1.1.242 log

위에 차단 값만 입력하고 허용 값인 permit ip any any 써주지 않아도

sh ip access-list

를 입력하면
permit ip any any 가 숨겨져 있다

이것을 'implicit deny' 라고함

통상적으로 써주는게 좋긴하고, 로그를 보기 위해서는 꼭 입력해야한다.

자바에서 부모클래스의 인자가 없는 생성자를 호출하지 않았음에도 참조하는 느낌

★ 그래서 ACL을 입력할 때 좁은범위를 먼저 입력해줘하는게 중요하다.

profile
모르는게 많아 작성시작

0개의 댓글