ACL(Access Control List)
@ ACL(Access Control List)
- Router에 경유하는 Packet들을 IP, TCP, UDP Header를 검사하여 Router에 접근 허용하거나 거부하는 항목을 만든다.
3, 4 계층
- 3계층은 주소를 이용해서 항목을 만든다.
- 4계층은 Port를 이용해서 항목을 만든다.
- ACL생성시 알아야할 정보들 -
*Header 정보
IP Header
=> Source IP
=> Destination IP
TCP Header
=> Source Port
=> Destination Port
=> Flag(syn,ack,fush,fin,res,urg)
UDP Header
=> Source Port
=> Destination Port
*Well Known Port 정보
TCP
=> FTP : 20(DATA), 21(Control)
=> SSH : 22
=> Telnet : 23
=> SMTP : 25
=> HTTP : 80
=> POP3 : 110
=> HTTPs : 443
UDP
=> DNS : 53
=> DHCP : 67(Server), 68(Client)
=> TFTP : 69
- ACL 생성방법 -
=> 내 라우터에 접근 허용할수 있는 Network와 거부할수 있는 Network를 구분하여 List를 생성(Standard)
=> 내 라우터에서 사용할수 있는 Protocol과 사용할수 없는 Protocol을 구분하여 List 생성(Extended)
=> 해당 List를 들을 인터페이스에 인바운드 또는 아웃바운드로 적용
- ACL 종류 -
*Standard ACL(표준 ACL) : 접근제어항목 - 출발지만 가지고 판단
Source IP Address만 검사하여 허용하거나 거부하는 항목을 만든다.
*Extended ACL(확장 ACL) : Application제어항목 - 출발지와 목적지 둘 가지고 판단
Source/Destination IP Address, Protocol, Option을 검사하여 허용하거나 거부하는 항목을 만든다.
@ Standard ACL 설정방법
Router(config)#access-list <list-number> <permit/deny> <Source Network> <Wildcardmask>
Router(config)#ip access-group <list-number> <in/out>
list-number : 1-99
=> 아웃바운드 설정 권장 (인바운드는 들어오는 경로가 여러가지일 수 있다.)
Ex) (1) 일부를 허용하고 나머지 거부, (2) 일부를 거부하고 나머지 허용
=> 권장 (1). 내가 사용하고 싶은 범위만 허용하고 나머지를 거부.
(1) 192.168.1.0 255.255.255.0 Network만 허용하는 항목을 만드시오
Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255
(2) 192.168.1.0 255.255.255.0 Network만 거부하는 항목을 만드시오
Router(config)#access-list 2 deny 192.168.1.0 0.0.0.255
Router(config)#access-list 2 permit any // 일부 거부하고 나머지 전체를 허용하는 것에 적용
@ Extended ACL 설정방법
Router(config)#access-list <list-number> <permit/deny> <Protocol> <Source Network> <Wildcardmask> <Destination> <Wildcardmask> <Option>
Router(config)#ip access-group <list-number> <in/out>
list-number : 100-199
Protocol : IP, ICMP, IGMP, TCP, UDP
Option : IP(X), ICMP/IGMP(type,code), TCP(port,flag), UDP(port)
Ex)
(1) 192.168.1.0/24 Network를 192.168.2.0/24 Network에 접근할수 없도록 설정하여라
Router(config)#access-list 100 deny 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
(2) ITBANK(121.160.70.0/24) 내부 Network에서 HTTP, DNS, Telnet만 사용할수 있도록 설정하여라
Router(config)#access-list 101 permit tcp 121.160.70.0 0.0.0.255 any eq 80 // TCP중에 HTTP(80)
Router(config)#access-list 101 permit tcp 121.160.70.0 0.0.0.255 any eq 23 // TCP중에 DNS(23)
Router(config)#access-list 101 permit udp 121.160.70.0 0.0.0.255 any eq 53 // UDP중에 Telnet(53)
- 주의 사항 -
1. 암시적 거부 : ACL는 자신이 가지고 있지 않은 목록에 대해선 거부한다.
=> 일부만 거부하는 항목을 만들 때 나머지 허용에 대한 항목을 만들어줘야 한다.
2. 먼저 들어온 항목을 먼저 처리한다.
=> 좁은 범위에서 점점 범위가 커지게 끔 설정해주는 것을 권장한다.
3. 부분 수정이 안된다.
=> 해당 그룹에 전체에 적용되어 수정된다.
=> 메모장을 이용해서 작성해주는 것을 권장한다.
- 실습 -
@ Standard ACL 설정 예
1. 172.12.0.0/24 Network에 172.13.1.0/24 Network만 접근 거부하는 항목을 만드시오.
!-- R2
conf t
access-list 1 deny 172.13.1.0 0.0.0.255
access-list 1 permit any
int f0/0
ip access-group 1 out
end
확인
!-- R3
ping 172.12.0.2 source 172.13.0.1
!!!!!
ping 172.12.0.2 source 172.13.1.1
U.U.U
삭제 -> 다음 실습을 위한 준비
!-- R2
conf t
no access-list 1
int f0/0
no ip access-group 1 out
end
2. R1 Router에 172.13.0.0/24, 172.13.1.0/24 Network만 거부하는 항목을 만드시오
!-- R1
conf t
access-list 2 deny 172.13.0.0 0.0.0.255
access-list 2 deny 172.13.1.0 0.0.0.255
access-list 2 permit any
int s1/0
ip access-group 2 in
int s1/1
ip access-group 2 in
end
확인
!-- R2
ping 192.168.1.1 source 172.12.0.1
!!!!!
ping 192.168.1.1 source 172.12.1.1
!!!!!
ping 192.168.1.9 source 172.12.0.1
!!!!!
ping 192.168.1.9 source 172.12.1.1
!!!!!
!-- R3
ping 192.168.1.1 source 172.13.0.1
U.U.U
ping 192.168.1.1 source 172.13.1.1
U.U.U
ping 192.168.1.9 source 172.13.0.1
U.U.U
ping 192.168.1.9 source 172.13.1.1
U.U.U
삭제 -> 다음 실습을 위한 준비
!-- R1
conf t
no access-list 2
int s1/0
no ip access-group 2 in
int s1/1
no ip access-group 2 in
end
3. R2 Router에 172.12.0.0/24, 172.12.1.0/24 Network만 허용하는 항목을 만드시오
=> 자신의 네트워크 말고 모두 거부 (들어왔을때 검사하여 아니면 거부하면다)
!-- R2
conf t
access-list 3 permit 172.12.0.0 0.0.1.255
int s1/0
ip access-group 3 in
int s1/1
ip access-group 3 in
end
확인
!-- R2
ping 192.168.1.1 source 172.12.0.1
!!!!!
ping 192.168.1.1 source 172.12.1.1
!!!!!
!-- R1
ping 192.168.1.1 source 172.11.0.1
U.U.U
ping 192.168.1.1 source 172.11.1.1
U.U.U
!-- R3
ping 192.168.1.1 source 172.13.0.1
U.U.U
ping 192.168.1.1 source 172.13.1.1
U.U.U
삭제 -> 다음 실습을 위한 준비
!-- R2
conf t
no access-list 3
int s1/0
no ip access-group 3 in
int s1/1
no ip access-group 3 in
end
@Extended ACL 설정예
HTTP 설정
!-- R1, R2, R3
conf t
ip http server
ip http authentication local
username admin privilege 15 password cisco
line vty 0 4
login local
end
1. 172.12.0.0/24 Network에서 Ping Test만 할수 없도록 설정
!-- R2
conf t
access-list 100 deny icmp 172.12.0.0 0.0.0.255 any echo // ping 요청과 응답만 존재하므로 eq 없다.
access-list 100 deny icmp 172.12.0.0 0.0.0.255 any echo-reply
access-list 100 permit icmp any any
access-list 100 permit ip any any // 암시적 거부로 인한 나머지 프로토콜의 사용을 위해서
int f0/0
ip access-group 100 in
end
확인
C:\>ping 172.12.0.1
Reply from 172.12.0.1: Destination net unreachable.
C:\>telnet 172.12.0.1
R2>
삭제
!-- R2
conf t
no access-list 100
int f0/0
no ip access-group 100 in
end
2. 172.12.0.0/24 Network에서 Ping과 Telnet만 사용할수 있도록 설정
!-- R2
conf t
access-list 101 permit icmp 172.12.0.0 0.0.0.255 any echo
access-list 101 permit icmp 172.12.0.0 0.0.0.255 any echo-reply
access-list 101 permit tcp 172.12.0.0 0.0.0.255 any eq 23
int f0/0
ip access-group 101 in
end
확인
C:\>ping 172.12.0.1
Reply
C:\>telnet 172.12.0.1
R2>
http://172.12.0.1 -> X
삭제
!-- R2
conf t
no access-list 101
int f0/0
no ip access-group 101 in
end
3.R2 Router에서 172.11.1.0/24 Network와 172.13.0.0/24 Network만 접근 거부하는 항목을 만들고 172.12.0.0/24 Network에서 HTTP, DNS, FTP, SSH만 사용할수 있도록 설정하시오
!-- R2
conf t
access-list 10 deny 172.11.1.0 0.0.0.255
access-list 10 deny 172.13.0.0 0.0.0.255
access-list 10 permit any
access-list 110 permit tcp 172.12.0.0 0.0.0.255 any eq 80
access-list 110 permit tcp 172.12.0.0 0.0.0.255 any eq 20
access-list 110 permit tcp 172.12.0.0 0.0.0.255 any eq 21
access-list 110 permit tcp 172.12.0.0 0.0.0.255 any eq 22
access-list 110 permit udp 172.12.0.0 0.0.0.255 any eq 53
int s1/0
ip access-group 10 in
int s1/1
ip access-group 10 in
int f0/0
ip access-group 110 in
end
'IT > Network' 카테고리의 다른 글
DHCP (Dynamic Host Configration Protocol) (0) | 2019.05.27 |
---|---|
NAT (Network Address Translation) (0) | 2019.05.27 |
Cisco Switch 시스코 스위치 장비 초기화 (0) | 2019.05.27 |
Classfull 과 Classless 하게 광고할 때 (0) | 2019.05.27 |
라우팅 프로토콜 Routing Protocol 우선순위 (0) | 2019.05.27 |
댓글