1-1.ACL 사용 목적
분류
- 라우터는 특정 트래픽을 식별하기 위해
ACL
을 사용- 식별된 데이터를 암호화,
PBR
,QoS
,DDR
,NAT
,PAT
과 같은 특징을 적용필터링
- 라우터의 인터페이스를 경유하는 트래픽을 허용 또는 거부
- 인바운드
ACL
& 아웃바운드ACL
ACL
구문이 일치하면 나머지 구문은 바로 건너뛰고 패킷을 일치하는 구문의 조건에 따라 허용 또는 거부ACL
구문이 일치하지 않는 경우 거부(묵시적인 거부)
ACL
은 적어도 하나 이상의 허용 구문을 포함 시켜야 하며 그렇지 않은 경우ACL
은 모든 트래픽을 차단합니다.
넘버드 표준 ACL
- 숫자를 식별자로 사용(
1~99
)ACL
조건으로출발지 IP 주소
만을 사용
넘버드 확장 ACL
- 숫자를 식별자로 사용(
100~199
)ACL
조건으로출발지 IP주소
,목적지 IP주소
,포트번호
,프로토콜
사용
네임드 표준 ACL
- 문자를 식별자로 사용
ACL
조건으로출발지 IP주소
만을 사용
네임드 확장 ACL
- 문자를 식별자로 사용
ACL
조건으로출발지 IP주소
,목적지 IP주소
,포트번호
,프로토콜
사용
1
=> 0
, 0
=> 1
로 바꾸면 와일드 마스크)0
: IP
주소 안의 대응 비트와 반드시 일치1
: IP
주소 안의 대응 비트를 검사하지 않고 무시
192.168.10.0
0.0.0.255
=>192.168.10.0
~192.168.10.255
1
개의IP
주소를 나타내는 와일드 마스크192.168.10.100
0.0.0.0
=>192.168.10.100
=>host
192.168.10.100
0.0.0.0
=>host
- 모든
IP
주소를 나타내는 와일드 마스크0.0.0.0
255.255.255.255
=>0.0.0.0
~255.255.255.255
=>any
넘버드 표준 ACL
- 넘버드 표준
ACL
구문 작성Router(config)#access-list 식별자번호(1~99) {permit | deny} 출발지IP 와일드마스크
- 넘버드 표준
ACL
적용Router(config)#interface 인터페이스 번호 Router(config-if)#ip access-group 식별자번호(1~99) {in | out}
ACL
확인 명령어Router#show running-config
Numberd 표준 ACL 예제 1
172.16.3.0
네트워크는172.16.4.0
네트워크와 통신 허용172.16.3.0
네트워크는192.168.10.0
네트워크와 통신 거부
Router(config)#access-list 1 permit 172.16.4.0 0.0.0.255 Router(config)#access-list 1 deny 192.168.10.0 0.0.0.255 Router(config)#int g0/0 Router(config-if)#ip access-group 1 out
- 출발지 네트워크가
192.16.10.0
이고 목적지 네트워크가172.16.3.0
이기 때문에 목적지 네트워크에 가까운g0/0
인터페이스에out
바운드로 설정 하여192.16.10.0
네트워크가g0/0
인터페이스 밖으로 나가는것을 차단합니다.- 출발지 네트워크가
172.16.4.0
이고 목적지 네트워크가172.16.3.0
이기 때문에 목적지 네트워크에 가까운g0/0
인터페이스에out
바운드로 설정 하여172.16.4.0
네트워크가g0/0
인터페이스 밖으로 나가는것을 허용합니다.Numberd 표준 ACL 예제 2
172.16.3.13
서버는 다른 네트워크로 통신 거부- 다른 모든
PC
들 간에는 통신 허용
Router(config-if)#no ip access-group 1 out // ACL 설정을 제거 Router(config)#access-list 2 deny 172.16.3.13 0.0.0.0 Router(config)#access-list 2 permit 0.0.0.0 255.255.255.255 Router(config)#int g0/0 Router(config-if)#ip access-group 2 in
g0/0
인터페이스에in
바운드를 설정 하였으므로g0/0
인터페이를 통해 밖에서 들어오는IP
주소 중에서172.16.3.13
만을 거부하고0.0.0.0
~255.255.255.255
까지의IP
주소 즉, 모든IP
주소는 허용 하도록 필터링 한다.
넘버드 확장 ACL
- 넘버드 확장
ACL
구문 작성Router(config)#access-list 식별자번호(100~199) {permit | deny} 프로토콜(TCP,UDP,IP) 출발지IP 출발지와일드마스크 목적지IP 목적지와일드마스크 eq 포트번호
- 넘버드 확장
ACL
적용Router(config)#interface 인터페이스 번호 Router(config-if)#ip access-group 식별자번호(100~199) {in | out}
Numberd 확장 ACL 예제 1
172.16.4.0/24
네트워크에서FTP
서버(172.16.3.13)
으로 접속 거부- 다른 모든
PC
들 간에는 통신 허용
Router(config)#access-list 100 deny tcp 172.16.4.0 0.0.0.255 host 172.16.3.13 eq 20 Router(config)#access-list 100 deny tcp 172.16.4.0 0.0.0.255 host 172.16.3.13 eq 21 Router(config)#access-list 100 permit ip any any Router(config)#int g0/0 Router(config-if)#ip access-group 100 out
g0/0
에out
바운드로 설정 했으므로 밖에서g0/0
인테페이스로 들어오는 출발지IP
주소172.16.4.0
~172.16.4.255
까지는 모두deny
으로 거부하고 출발지 주소와 목적지 주소를 모두any
로 설정하여permit
으로 모든PC
들 간에는 통신을 허용하도록 필터링한다.FTP Server
는 포트 번호가2
개(20
번,21
번) 이므로2
개 모두 설정 해줘야 합니다.
Numberd 확장 ACL 예제 2
172.16.3.0/24
네트워크에서Web
서버(172.16.4.13)
으로 접속 거부- 다른 모든
PC
들 간에는 통신 허용
Router(config-if)#no ip access-group 100 out // ACL 설정을 제거 Router(config)#access-list 101 deny tcp 172.16.3.0 0.0.0.255 host 172.16.4.13 eq 80 Router(config)#access-list 101 permit ip any any Router(config)#int g0/0 Router(config-if)#ip access-group 101 in
g0/0
에in
바운드로 설정 했으므로g0/0
인테페이스에서 밖으로 나가는 출발지IP
주소172.16.3.0
~172.16.3.255
까지는 모두deny
으로 거부하고 출발지 주소와 목적지 주소를 모두any
로 설정하여permit
으로 다른 모든PC
들은 통신을 허용하도록 필터링한다.