본문 바로가기
정보보안

정보보안5 4차시

by IT매니절 2024. 8. 11.

access-group
인터페이스에서의 트래픽을 제어
access-class
VTY 라인에서의 접근을 제어
(= 텔넷, ssh 등의 원격접속)

 

ip access-group <acl번호> <in|out>
int 인터페이스명
ip access-group 1 in

 

ip access-class <acl번호> <in|out>
int 인터페이스명
ip access-class 1 in

 

* standard ACL은 출발지 주소만 확인한다. 목적지 주소를 확인하려면 확장 ACL 사용

 

(config)#ip access-list standard 1
(config-std-nacl)#11 permit 1.1.1.3
(config-std-nacl)#do sh ac
Standard IP access list 1
    10 permit host 1.1.1.1 (4 match(es))
    11 permit host 1.1.1.3
    20 permit host 1.1.1.2

 

시퀀스 번호는 중간삽입이 가능하도록 10단위로 설정되는데, 번호를 지정하여 룰 추가 가능

 

(config-std-nacl)#10 deny host 1.1.1.4
% Duplicate sequence numbe

 

시퀀스 번호 중복 불가능

 

 

확장 ACL Numbered
출발지와 목적지 IP 주소뿐만 아니라 프로토콜, 출발지 포트, 목적지 포트 번호 등을 지정해서 트래픽을 세밀하게 제어

access-list <ACL number> {permit|deny} <프로토콜>
   <출발지 IP> <와일드카드 마스크> [연산자 <출발지 포트>] 
   <목적지 IP> <와일드카드 마스크> [연산자 <목적지 포트>]

* [] 대괄호는 생략 가능

 

연산자
eq 일치 gt 지정된 것보다 큼 lt 지정된 것보다 작음
neq 일치하지 않음 range 지정된 두 포트 사이

 

ex)

access-list 100 permit tcp 1.1.1.0 0.0.0.255 1.1.1.0 0.0.0.255 eq 22

tcp 1.1.1.0 대역에서 1.1.1.0 대역의 22포트로 가는 패킷은 허용

access-list 100 deny ip any any

모든 ip deny

 

(config)#int g0/0

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

(config)#int g0/1

(config-if)#ip ac 100 in

적용

 

ssh용 포트 22만 허용했기 때문에, 1.1.1.1 -> 1.1.1.254 ssh 접속은 가능하고 ping 메시지는 불가능한 상태

 

do sh run | section int

=> 인터페이스에 설정된 ac 정책 확인

 

erase startup-config

라우터 초기화

 

ip access-list extended 100
ACL 번호 100에 대한 ACL을 수정할 수 있는 모드로 진입

 

---------------- 여기까지 배운것은 numbered 방식

 

named 실습

no ip ac extended 100

=> 기존 100번 룰 삭제

 

#ip access-list ?

extended Extended Access List

standard Standard Access List

 

#ip access-list extended ?

<100-199> Extended IP access-list number

WORD name

 

WORD name 방식을 사용할 수 있다

 

(config)#ip access-list extended myacl

(config-ext-nacl)#permit tcp 1.1.1.1 0.0.0.0 1.1.1.254 0.0.0.0 eq 22

(config-ext-nacl)#deny tcp any 1.1.1.254 0.0.0.0 eq 22

 

#do sh ac

Extended IP access list myacl

10 permit tcp host 1.1.1.1 host 1.1.1.254 eq 22

20 deny tcp any host 1.1.1.254 eq 22

=> 조회하면 지정했던 이름인 myacl로 나온다

 

#int g0/0

#ip access-group myacl in

 

 

* line vty에 acl을 적용할 경우, 포트번호가 들어간 ACL 명령은 배운 명령어로는 적용불가능하다

그것도 모르고 line vty에 access-class로 설정하고 왜 안되지 하고 있었음

포트번호를 빼면 아마 적용 가능하지 않을까?

관련 설정은 강사님이 확인 후 알려주시기로 함

 

+

ip access-class 이름

access-class acl숫자

 

 

NAT 네트워크 주소 변환기술

집, 카페, 호텔 등의 공유기에서 사설 ip를 NAT를 통해 변환하여 통신

 

ip nat inside source static <사설IP주소> <공인IP주소>

int 인터페이스명
ip nat inside
ip nat outside

사설 네트워크 : inside
공용 네트워크 : outside

 

실습)

라우터1, 2에 연결된 각 사설망이 있을때

10.10.10.1 -> server1.com(100.100.12.21, 사설 10.10.10.1) 접속시

 

라우터1

Inbound
Outbound

인바운드 패킷에서는 출발지 주소가 10.10.10.1(사설)이었는데,

아웃바운드 패킷에서는 100.100.12.11로 변경되었다.

 

라우터2

Inbound
Outbound

인바운드 패킷의 목적지 주소가 100.100.12.21이었다가

아웃바운드 패킷에서는 10.10.10.1(사설)로 변경되었다

 

요청과 마찬가지로 응답메시지는 거꾸로 변경된다

 

실습환경은 static NAT (정적, 관리자가 직접 설정) 이다.

 

정적NAT 설정하기

그림을 보면 내부망에 해당하는 인터페이스는 f0/0이고

외부망에 해당하는 인터페이스는 s0/0/0이다

먼저 사설 ip 주소와 공인 ip 주소를 매칭시켜 정책을 적용

(config)#ip nat inside source static 10.10.10.1 100.100.12.11
(config)#ip nat inside source static 10.10.10.2 100.100.12.12
(config)#ip nat inside source static 10.10.10.3 100.100.12.13
(config)#int f0/0
(config-if)#ip nat inside
(config-if)#int s0/0/0
(config-if)#ip nat outside
(config-if)#exit

내부망에 ip nat inside

외부망에 ip nat outside

 

R1과 R2에 각각의 사설망 ip를 매칭하여 적용해주면 끝

 

 

 

 

동적dynamic NAT

access-list <ACL number> permit <사설 IP> <wildcard mask> 
ip nat pool <pool name> <start ip> <end ip> netmask [subnet mask]
ip nat inside source list <ACL number> pool <pool name>

내부망 인터페이스에 ip nat inside

외부망 인터페이스에 ip nat outside

 

access-list 1 permit 10.10.10.0 0.0.0.255

=> acl 1번에서 10.10.10.0.24 대역을 허용한다

 

ip nat pool nattest 100.100.12.11 100.100.12.13 netmask 255.255.255.0

=> pool 이름은 nattest이고 100.100.12.11부터 100.100.12.13까지 /24 대역을 지정한다

 

ip nat inside source list 1 pool nattest

=> 내부 정책 소스를 1번으로 지정하고 pool이름은 nattest이다

 

라우터1이 연결된쪽은 사설망이 연결되고, 라우터2가 연결된쪽은 공인망을 사용하는 상황.

라우터1에만 동적 NAT를 설정해주면 된다 (NAT는 사설망에 필요한 것이므로)

 

그 외 route는 rip이나 ospf를 사용하면 된다

 

단, 이 경우 11 12 13의 IP 3개를 사용하는데, PC가 3개를 초과할 경우 그 이후의 PC들은 공인 IP가 할당되지 못한다

이를 위해 나온 것이 NAT PAT로, 공인 IP 하나를 포트번호를 이용해 구분하여 여러 PC가 사용하는 방식이다

 

NAT PAT 형식

access-list 1 permit [사설 IP] [wildcard mask]
ip nat inside source list [ACL number] interface [outside interface]

 

설정 (인터페이스를 활용)
access-list 1 permit 10.10.10.0 0.0.0.255
ip nat inside source list 1 interface s0/0/0
int f0/0
ip nat inside
int s0/0/0
ip nst outside

 

10.10.10.1 -> 100.100.12.1

왜 100.100.12.1로 변환되느냐면, 100.100.12.1이 라우터 ip이기 때문

PC1과 PC2에서 출발한 Ping의 변환된 주소가 같다

 

#sh ip nat translations

Pro Inside global Inside local Outside local Outside global

icmp 100.100.12.1:5 10.10.10.2:5 100.100.20.1:5 100.100.20.1:5

 

보면 PC2에서 출발한 ping은 5번포트로 발송되었다

 

 

'정보보안' 카테고리의 다른 글

정보보안5 6차시  (0) 2024.08.18
정보보안5 5차시  (0) 2024.08.17
정보보안5 3차시  (0) 2024.08.10
정보보안5 2차시  (0) 2024.08.04
정보보안4 8차시  (0) 2024.07.29