Download presentation
Presentation is loading. Please wait.
1
제 10장 Access-List
2
1 2 3 4 5 6 Contents Access-list Wildcard Mask 표준 액세스 리스트 확장 액세스 리스트
VTY 접속 관리 6 Named 액세스 리스트
3
1 액세스 리스트(Access-List) 1) 액세스 리스트의 개념
과거에는 시스코 라우터에서 보안 설정 용도로 사용였으나 지금은 다양한 방법을 이용하여 네트워크 필터링을 할 때 많이 사용하고 있음 2) 액세스 리스트의 구분 액세스 리스트는 제어하려는 트래픽의 종류( 인터페이스 모든 정보 , Routing 경로정보)에 따라 다음과 같이 구분한다. Access Group Access Group은 인터페이스를 경유하는 모든 패킷을 제어할 수 있어, 인터페이스 관련 트래픽에 적용한다. 그러나 모든 패킷을 점검하여 불필요한 트래픽을 차단할 수 있다는 장점이 있지만 라우터의 성능이 저하될 수 있다는 단점도 있으므로 너무 많은 액세스리스트의 사용은 자제해야 한다. Distribute List Distribute List는 라우터 간에 교환되는 경로정보를 제어할 수 있으므로, 주로 라우팅 프로토콜 관련 트래픽에 적용한다. Access-Class 가상터미널에 적용한다.
4
1 액세스 리스트(Access-List) 3) 액세스 리스트의 종류
3) 액세스 리스트의 종류 (1) 표준 액세스 리스트 (Standard Access List) 표준 액세스 리스트는 프로토콜 전체를 허용(Permit)하거나 거부(Deny)할 수 있으며, 발신지의 IP 주소로 패킷을 필터링한다. 출력 패킷 S0 S1 입력 패킷 액세스 리스트 조건 비교 IP 주소분석 (발신지) Router
5
1 액세스 리스트(Access-List) 3) 액세스 리스트의 종류
3) 액세스 리스트의 종류 (2) 확장 액세스 리스트 (Extended Access List) 확장 액세스 리스트는 발신지 IP주소와 목적지 IP주소로 패킷을 필터링하며, IP 헤더의 프로토콜 번호와 세그먼트 헤더의 포트 번호를 확인하여 패킷을 필터링한다. 출력 패킷 S0 S1 입력 패킷 액세스 리스트 조건 비교 IP 주소분석 (발신지,목적지) Router
6
1 액세스 리스트(Access-List) 액세스 리스트의 패킷 필터링 원리
아래 그림은 액세스 리스트에서 패킷을 필터링하는데 사용되는 기준 정보를 보여주고 있다. 표준 액세스 리스트는 IP 패킷 헤더에 있는 목적지 주소를 이용하며, 확장 액세스 리스트는 목적지 주소외에도 발신지 주소와 프로토콜 번호, 그리고 TCP 세그먼트 헤더에 있는 포트번호를 이용하여 데이터를 필터링한다 목적지 주소 발신지 주소 프로토콜 번호 포트 번호 Segment (for example, TCP header) Data Packet (IP header) Frame Header (for example, HDLC) Use access list statements 1-99 or to test the packet 거부 허용
7
1 액세스 리스트(Access-List) 4) 액세스 리스트의 처리 절차
<라우터에 Access Group 이 등록되어 있는 경우 패킷의 처리 절차> N Y #5액세스 리스트 #6조건비교? 소실된 패킷 #8 패킷 출력 #7 S0 패킷 E0 #1 패킷 입력 #2라우팅 테이블 등록여부? #3인터페이스 선택 #4액세스 그룹 등록여부 ? #9
8
<다중 액세스 리스트의 처리 절차>
1 액세스 리스트(Access-List) 5) 다중 액세스 리스트의 처리 절차 여러 개의 액세스 리스트가 등록되었을 경우에는 라우터에 액세스 리스트를 등록한 순서대로 조건을 비교하여 전달된 패킷을 처리합니다. 액세스 그룹이 등록되어 있는 인터페이스에서 온 패킷 Y 목적지 인터페이스 거부 첫번째 비교 ? 허용 N 두번째 비교? 세번째 비교 ? 만약 조건을 만족하지 않는다면 모두 거부 Y : 비교에서 거부조건에 등록된 패킷을 찾아내어 거부 Y : 비교에서 허용조건에 등록된 패킷을 찾아내어 허용 N : 비교대상에 없다면 다음 등록조건과 비교하고 끝까지 없다면 소실 소실된 패킷 <다중 액세스 리스트의 처리 절차>
9
Router(config)#access-list 1 deny any
6) 액세스 리스트의 규칙 규칙 1 순차적으로 액세스 리스트의 조건을 비교한다 첫 번째 문장에서부터 시작하여 조건이 맞으면 다음 문장을 실행하지 않고 바로 첫 번째 문장을 실행한다. 그러나 조건이 맞지 않으면 두 번째를 실행한다. 규칙 2 설정한 작업이 서로 일치할 때까지 계속 실행한다. 만약 일치하면 그 해당 작업을 실행하고 나머지 부분은 더 이상 작업을 진행하지 않는다. (예: 조건문) 거부로 설정하면 IP주소와 상관없이 모두 거부하므로 반드시 나머지 IP 주소에 대해서는 허용하도록 명령을 지정해야 한다. 예를 들어 아래와 같이 액세스 리스트를 설정했다고 했을 때 항상 허용(Permit)을 해야 한다. Router(config)#access-list 1 deny Router(config)#access-list 1 permit any 규칙 3 액세스 리스트는 디폴트 값이 항상 거부(Deny)로 설정되어 있기 때문에 설정시 주의해야 한다. Router(config)#access-list 1 deny any
10
와일드 카드 마스크(Wildcard Mask)
2 와일드 카드 마스크(Wildcard Mask) 1) 와일드 카드 마스크의 개념 액세스 리스트에서는 송신자 주소를 확인하여 필터링 할 때 와일드카드 마스크라는 것을 이용 서브넷 마스크 (Subnet Mask) Network Address 와일드 카드 마스크 (Wildcard Mask) - 서브넷 마스크를 으로 지정하면 ~ 사이의 IP주소를 모두 동일한 네트워크로 인정한다. - 와일드 카드 마스크를 로 지정하면 ~ 사이의 IP 주소를 액세스 리스트로 제어할 수 있다. 그리고 위의 네트워크 사이에 있는 호스트들에게 데이터의 전송을 허용하거나, 거부할 수 있다.
11
와일드 카드 마스크(Wildcard Mask)
2 와일드 카드 마스크(Wildcard Mask) 2) 와일드 카드 마스크의 원리 = 1 128 64 32 16 8 4 2 호스트 주소와 반드시 일치해야 함. 주소에서 마지막 6 비트를 무시한 범위 주소에서 마지막 4 비트를 무시한 범위 마지막 2비트를 주소와 체크 주소 체크 안함 네트워크 주소와의 의미 - 0 의미 : 반드시 일치해야 하는 비트 - 1 의미 : 일치하지 않아도 되는 비트
12
와일드 카드 마스크(Wildcard Mask)
2 와일드 카드 마스크(Wildcard Mask) 2) 와일드 카드 마스크의 원리 만약 액세스 리스트에서 IP주소와 와일드 카드 마스크가 다음과 같이 지정되었다면 액세스 리스트의 제어 범위는 어디까지 일까요? 1 Wildcard mask: | match >|< don’t care ----->| = = = : : = Access list : 15 와일드 카드 마스크 범위지정 범위 결과값은 /24 ~ /24이다.
13
와일드 카드 마스크(Wildcard Mask)
2 와일드 카드 마스크(Wildcard Mask) 3) 와일드 카드 마스크 표기 방식 (1) 특정 IP호스트와 매칭하기 와일드 카드 마스크의 32개 비트가 전부 0이라면 조건으로 지정한 주소와 반드시 일치해야 된다는 것을 의미하며, 이는 특정 호스트를 제어하기 위해 사용된다. 이와 같이 특정 호스트를 제어하고자 하는 경우, 와일드 카드 마스크를 다음과 같이 2가지 방식으로 표기할 수 있다. 또는 host 와일드 카드 마스크 (호스트 주소와 반드시 일치) host 호스트 으로부터 들어오는 패킷은 모두 거부하겠다는 내용이며, 액세스 리스트에서 Host 명령어는 디폴트로 설정되어 있다. 즉 아래와 같이 Host 명령어를 빼고 표현할 수도 있다. Router(config)#access-list 1 deny
14
와일드 카드 마스크(Wildcard Mask)
2 와일드 카드 마스크(Wildcard Mask) 3) 와일드 카드 마스크 표기 방식 (2) 모든 IP주소와 매칭하기 와일드 카드 마스크의 32개 비트가 전부 1이라면 조건으로 지정한 주소와 관계없이 어떤 주소도 된다는 것을 의미하며, 이는 모든 호스트 컴퓨터를 제어하기 위해 사용된다. 이와 같이 모든 호스트를 제어하고자 하는 경우, 와일드 카드 마스크를 다음과 같이 2가지 방식으로 표기할 수 있다. 또는 any Wildcard mask: (모든 Host를 지정한다는 의미) 여기서 이라는 주소는 아무 의미가 없으므로, 주로 을 많이 사용한다. 액세스 리스트에서 any라고 표현된 경우는 와일드 카드 마스크가 이다.
15
3 표준 액세스 리스트 명령어 형식 Router(config)#Access-list ① {access-list-number}
1) 표준 액세스 리스트 명령어 형식 (1) 액세스 리스트 정의하기 Router(config)#Access-list ① {access-list-number} ② {permit | deny } ③{ source-address } ④{ wildcard-mask} ① Access-list-number: 시스코 라우터가 표준 IP 액세스 리스트인지 확장 IP 액세스 리스트인지를 구분할 수 있게 하기 위해서 사용되는 액세스 리스트 번호이며, 표준 IP 액세스 리스트에서 사용되는 번호 1~99까지 이다. ② permit | deny: 액세스 리스트를 선언한 후 허용할 것인지 또는 차단할 것인지 지정하는 것이다. ③ Source-address: 출발지 IP 주소를 지정하는 것이다. ④[ wildcard-mask ] 출발지 IP 주소의 와일드 카드마스크를 지정하는 곳이다. 즉, 어디까지 허용할 것인지 또는 차단을 할 것인지 지정을 해 주어야 한다.
16
3 표준 액세스 리스트 명령어 형식 1) 표준 액세스 리스트 명령어 형식 (2) 표준 액세스 리스트 제거하기
표준 액세스 리스트를 제거하기 위해서는 no 명령어를 사용한다. Router(config)# no Access-list {access-list-number} 설정했던 표준 IP 액세스 리스트를 삭제하기 위해서는 “no”라는 명령어를 사용하여 삭제를 할 수가 있으며, 반드시 삭제하고 하는 표준 IP 액세스 리스트 번호를 지정을 해주어야 한다. (3) 액세스 그룹 설정하기 표준 액세스 리스트를 설정한 후 액세스 그룹을 설정하지 않으면, 아무 필요가 없게 된다. 액세스 그룹은 어느 인터페이스로 들어오는 패킷을 차단을 할 것인지 지정하는 것이다. Router(config-if)# IP access-group {access-list-number} { in | out } Access-list-number: 액세스 리스트 번호는 표준 IP 액세스 리스트에서 사용한 번호를 지정을 해야 합니다. 만약 다른 번호를 지정을 하게 되면 아무 필요가 없게 된다. in | out: 해당 인터페이스로 들어오는 패킷을 허용할 것인지 또는 차단을 할 것인지를 선택하는 것이다.
17
3 표준 액세스 리스트 명령어 형식 2) 표준 액세스 리스트 사용 예제
(1) 의 모든 네트워크들은 E0과 E1로 접근하는 것을 차단하고자 하는 설정 Non S0 E0 E1 ① Router(config)#access-list 1deny ② Router(config)#access-list 1 permit any ③ Router(config)#interface ethernet 0 ④ Router(config-if)#ip access-group 1 out ⑤ Router(config-if)#interface ethernet 1 ⑥ Router(config-if)#ip access-group 1 out
18
3 표준 액세스 리스트 명령어 형식 2) 표준 액세스 리스트 사용 예제
(2) 특정한 호스트만 E0 인터페이스로 전송되는 패킷을 차단하고, 나머지 인터페이스는 모두 허용 하고자 하는 설정 Non S0 E0 E1 ① Router(config)#access-list 1deny ② Router(config)#access-list 1 permit any ③ Router(config)#interface ethernet 0 ④ Router(config-if)#ip access-group 1 out
19
3 표준 액세스 리스트 명령어 형식 2) 표준 액세스 리스트 사용 예제
(3) 네트워크는 E0 인터페이스로 나가는 패킷을 차단하고, 나머지 인터페이스로는 허용 하는 설정 Non S0 E0 E1 ① Router(config)#access-list 1deny ② Router(config)#access-list 1 permit any ③ Router(config)#interface ethernet 0 ④ Router(config-if)#ip access-group 1 out
20
4 확장 액세스 리스트 1) 확장 액세스 리스트의 개념
- 발신지 IP주소와, 수신지 IP주소, 프로토콜, 포트 번호로 트래픽에 대한 네트워크 필터링 가능 100~199까지 숫자 사용 표준 IP 액세스 리스트보다는 조금 복잡하지만 다양한 방법으로 설정 명령어 형식 Router(config)#access-list ①{ access-list-number } ②{ permit | deny } ③{ protocol } ④{ source-address } ⑤{ source-mask } ⑥{ destination-address } ⑦{ destination-mask } ⑧{ protocol-options }
21
4 확장 액세스 리스트 1) 확장 액세스 리스트의 개념
① Access-list-number: 시스코 라우터가 표준 IP 액세스 리스트인지 확장 IP 액세스 리스트인지를 구분할 수 있게 하기 위해서 사용되는 액세스 리스트 번호이며, 확장 IP 액세스 리스트에서 사용되는 번호 100~199까지 이다. ② permit | deny: 액세스 리스트를 선언한 후 허용할 것인지 또는 차단할 것인지 지정하는 것이다. ③ Protocol: 확장 IP 액세스 리스트는 부분별로 액세스 리스트를 설정할 수가 있다. 예를 들어, Telnet은 TCP 포트를 사용하며, Ping은 ICMP 프로토콜을 사용한다. 즉, 확장 IP 액세스 리스트 명령어를 사용하여 차단하고자 하는 프로토콜을 선언하는 것이다. ④ source-address : 소스 IP 주소는 발신지 IP 주소라는 의미이다. 즉, 어디서 부터 시작을 할 것인지 지정하는 것이다. ⑤ source-mask : 소스 IP 주소의 네트워크 부분과 호스트 부분을 지정하기 위해 사용되는 와일드 카드 마스크 이다. ⑥ destination-address : 목적지 IP 주소를 의미한 것이다. ⑦ destination-mask : 목적지 IP 주소의 네트워크 부분과 호스트 부분을 구분하기 위해서 사용되는 와일드 카드 마스크이다. ⑧ protocol-options : 프로토콜 포트번호를 사용하거나 또는 어플리케이션을 사용하는 것이다. - Gt (greater than) : ~보다 크다 - Lt (less than): ~보다 작다 - Eq (equal) : ~와 같다 - Neq (not equal):, ~와 같지않다
22
4 확장 액세스 리스트 2) 확장 액세스 리스트의 사용 예제
(1) 네트워크에서 으로 FTP를 접근하는 것을 차단하기 위한 설정 Non S0 E0 E1 ① Router(config)#access-list 101 deny tcp eq 21 ② Router(config)#access-list 101 deny tcp eq 20 ③ Router(config)#access-list 101 permit ip any any ④ Router(config)#interface ethernet 0 ⑤ Router(config-if)#ip access-group 101 out
23
4 확장 액세스 리스트 2) 확장 액세스 리스트의 사용 예제
(2) 네트워크에서 으로 Telnet을 사용하여 접근하는 것을 차단하기 위한 설정 S0 E0 E1 ① Router(config)#access-list 101 deny tcp any eq 23 ② Router(config)#access-list 101 permit ip any any ③ Router(config)#interface ethernet 0 ④ Router(config-if)#ip access-group 101 out
24
4 확장 액세스 리스트 2) 확장 액세스 리스트의 사용 예제
(3) 연구팀에서 Data Server로 FTP와 Telnet 접속을 불가능하게 하는 설정 Router#config terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)#access-list 101 deny tcp any eq 20 Router(config)#access-list 101 deny tcp any eq 21 Router(config)#access-list 101 deny tcp any eq 23 Router(config)#access-list 101 permit ip any any Router(config)#int e0 Router(config-if)#ip access-group 101 in Internet /24 E0 S1 S0 E1 연구팀 인사팀 Data Server
25
5 VTY(telnet) 접속관리 1) VTY [Telnet]접속관리 명령어 형식
VTY (virtual terminal line ) A B 명령어 형식 Router(config)#line vty {vty # | vty-range } Router(config-line)#access-class { number } { in | out } vty # :특정한 가상터미널 번호를 선언하여, 외부 사용자가 Telnet 명령어를 사용하여 접근하는 것을 차단하거나 허용하기 위한 것이다. 예를 들어, VTY 1번 회선으로 들어오는 사용자를 차단하고 싶을 경우 line vty 1 이와 같이 설정을 할 수가 있다. vty-range : 가상터미널의 범위를 지정하는 것이다. 시스코 IOS에 따라 가상터미널 범위가 다르다. 예를 들어, 가상터미널 0~2까지 접속을 차단하고 싶을 경우, line vty 0 2 이와 같이 설정을 할 수가 있다. number : Access-class 명령어를 사용하기 위해서는 액세스 리스트 번호를 선언해야 한다. 액세스 리스트 번호는 표준 IP 액세스 리스트 번호인 1~99까지 사용을 할 수가 있다. in | out 들어오는 패킷을 차단할 것인지 허용할 것인지 또는 나가는 패킷을 차단할 것인지 허용할 것인지 선택한다.
26
5 VTY(telnet) 접속관리 2) VTY 설정방법 예
/24 VTY (virtual terminal line ) A B /24 /24 /24 ① RouterB(config)#access-list 1 permit ② RouterB(config)#line vty 0 4 ③ RouterB(config-line)#access-class 1 in
27
6 이름(Named) 액세스 리스트 1) 이름(named) 액세스 리스트의 개념
액세스 리스트를 식별하기 위해 번호를 사용하지 않고 알기 쉬운 문자열을 사용하는 액세스 리스트를 의미 표준과 확장 액세스 리스트를 지원 - 액세스 리스트에 정의된 임의의 문장을 삭제 이름 액세스 리스트를 만드는 명령어 형식 Router(config)#ip access-list {standard | extended} name Router(config {std- |ext-}nacl)#{permit | deny} {test conditions} Router(config {std-|ext-}nacl)#no {permit | deny} {test conditions}
28
6 이름(Named) 액세스 리스트 2) 이름(named) 액세스 리스트의 예제
망에서 Telnet으로 망을 액세스하지 못하도록 하는 예제 Router(config)#ip access-list extended test Router(config ext-nacl)#deny tcp eq 80 Router(config ext-nacl)#deny tcp eq 23 Router(config ext-nacl)#no deny tcp eq 80 Router(config ext-nacl)#permit ip any any Router(config ext-nacl)#exit Router(config)#int s0 Router(config-if)#ip access-group test in 위의 명령어 형식과 예제의 프롬프트가 다른데, 표준일 때 프롬프트는 std-nacl로, 확장일 경우 프롬프트는 ext-nacl 로 표시된다. 또한 예제의 내용을 보면 잘못 정의한 액세스 리스트는 쉽게 제거가 가능하다는 것도 알 수 있다. 이름 액세스 리스트를 인터페이스에 적용하는 방법도 기존 방법과 동일하며 액세스 리스트 번호가 아닌 이름으로서 적용이 가능하다.
29
7 액세스 리스트 확인 명령어 1) Show access-list
설정된 액세스 리스트의 모든 정보를 확인하고자 할 때 사용하며, 어떤 인터페이스에 적용이 되어 있는지도 확인 할 수 있는 명령어 Router#show access-list Extended IP access list 101 deny tcp host any eq www (8 matches) permit tcp any any Extended IP access list 110 deny tcp any host eq ftp deny tcp any host eq telnet permit ip any any Router# 확장 액세스 리스트라는 것을 확인할 수 있으며, 또한 각각의 액세스 리스트 번호에 설정되어 있는 보안정책들을 모두 출력하여 보여준다.
30
7 액세스 리스트 확인 명령어 2) show access-list 110
설정된 액세스 리스트 중 액세스 리스트 번호 110번에 적용된 보안정책을 보여주는 메시지를 확인하고자 할 때 사용하는 명령어 Router#show access-list 110 Extended IP access list 110 deny tcp any host eq ftp deny tcp any host eq telnet permit ip any any Router# 3) show ip access-list 라우터에 설정된 IP 액세스 리스트 설정에 대한 전체적인 보안정책을 모두 확인할 수 있는 명령어 Router#sh ip access-list Extended IP access list 101 deny tcp host any eq www (8 matches) permit tcp any any Extended IP access list 110 deny tcp any host eq ftp deny tcp any host eq telnet permit ip any any Router#
31
7 액세스 리스트 확인 명령어 4) show ip interface
이더넷 인터페이스에 어떠한 액세스 리스트가 설정되어 있는지 확인할 수 있는 명령어 Router#show ip interface Ethernet0 is up, line protocol is up Internet address is /24 Broadcast address is Address determined by setup command MTU is 1500 bytes Helper address is not set Directed broadcast forwarding is disabled Outgoing access list is 110 Inbound access list is 101 Proxy ARP is enabled Security level is default Split horizon is enabled ICMP redirects are always sent ICMP unreachables are always sent ICMP mask replies are never sent IP fast switching is enabled IP fast switching on the same interface is disabled IP Feature Fast switching turbo vector [생략]
32
7 액세스 리스트 확인 명령어 5) Show running-config
액세스 리스트가 어떻게 설정되어 있는지 확인할 수 있으며, 또한 어떤 인터페이스에 어떻게 적용이 되어 있는지 확인할 수 있다 Router#show running-config Building configuration... Current configuration: [생략] interface Ethernet0 ip address ip access-group 101 in ip access-group 110 out no ip directed-broadcast [생 략] ip http server ip classless ! access-list 101 deny tcp host any eq www access-list 101 permit tcp any any access-list 110 deny tcp any host eq ftp access-list 110 deny tcp any host eq telnet access-list 110 permit ip any any
Similar presentations