앞서서 기초해킹 과정에서는 내부단에서 여러가지 과거 해킹기법의 원리와 테스트를 해보았다고 한다면, 네트워크 해킹 파트에서는 이제 본격적으로 GNS3 에서 스위치-라우터를 모의 연결하여 DHCP-NAT-을 거친 외부 인터넷 환경을 구성해 두고, 내부의 사설아이피를 이용하여 내/외부 다양한 네트워크 보안과정을 거치게 됩니다.

CISCO 의 Packet Tracer 이외에 실제의 스위치와 라우터의 os 를 가상화하여 모의환경을 실습하는 유명한 프로그램으로 GNS3 라는 것이 있습니다.

 

 

[ 구성 내용 ]

가상머신들을 GNS3 의 토플로지를 구성하여, 스위치와 라우터에 연결하고, 그 라우터를 외부 인터넷(실제로는 자신의 로컬 컴퓨터의 랜카드가 되겠죠?) 에 연결하여 NAT - DHCP 처리를 거쳐서 최종적으로는 내부의 가상머신들 ( 10.0.0.x/24) 사설 대역대가 인터넷이 가능하도록 설정하는 환경 구성입니다.

 

[ 세팅 준비 ]

앞의 기초해킹과정과 아이피를 좀 다르게 설정할 것입니다.

기초해킹 과정에서는 내부단으로 모두 같은 네트워크 어댑터인 WMnet1을 썼지만

이번에는 스위치와 라우터로 각각 별도의 랜카드 구성을 합니다.

사전에 만들어 두었던 VMnet1 , 2 , 3 으로 각각 설정합니다.

Backtrack R3 - 10.0.0.3 - 네트워크 어댑터 VMnet3

CentOS Linux - 10.0.0.2 - 네트워크 어댑터 VMnet2

Windows XP - 10.0.0.1 - 네트워크 어댑터 VMnet1

Windows NT 2000 - 10.0.0.100 - 네트워크 해킹 과정에서는 거의 쓰지 않습니다.

 

GNS3의 토플로지는 다음과 같이 구성합니다.

( 클릭하면 크게 보입니다 )

 

 

GNS3의 기초 세팅법은 차후에 다루도록 합니다. 

각 머신들은 자신들의 VMnet 1,2,3 을 달고, 스위치에 연결된 상태이며, 구름 모양의

Internet 이라는 부분은 결국 외부 인터넷이 가능한 공인 아이피를 갖고 있는, 현 로컬 컴퓨터의 실제 랜카드 가 되겠습니다.

아무튼, 라인에 우클릭하면 Wireshark가, 장치를 더블클릭하면 SecureCRT 가 자동으로 뜨도록 세팅해주세요.

 

 

 

보시다시피 스위치는 정해진 포트로 뿌려주는 역할을 맡게 되는데, 도달할 지점이

라우터의 FA0/0 부분이지요? 즉, 라우터의 Default Route 설정을, 각 운영체제의 환경설정에서 지정해 주어야, 문제없이 라우터까지 도달할 수 있습니다.

물론 선행으로 라우터 관리자모드에서 해당 인터페이스에 아이피를 지정해 주어야지요.

 

윈도우즈에서는 마찬가지로 ncpa.cpl 로 아이피 설정하는 부분에 게이트웨이 지정이 있습니다.

리눅스에서는 route 명령어로 확인 후, 지정되어 있지 않다면

환경설정 파일에서 GATEWAY= 로 지정해 주시던지, 아니면 직접

route add default gw 10.0.0.254 라고 필히 입력해 주십시오.

 

[ 라우터와 스위치 설정 과정 ]

[1] 토플로지의 스위치는 라우터 기기이다.

= 라우터는 조건을 따지고, 모르는 패킷을 DROP 시켜 버리기 때문에, 저대로 냅두면

옆으로 보내지 못합니다. 조건없이 플러딩 수준으로 낮추기 위해서, 라우팅 기능을 끄면 됩니다.

Switch 더블클릭하여 시큐어CRT 창을 여신 후 글로벌 컨피그(전역 : 관리자모드 )로 갑니다.

다음의 입력으로 라우팅 기능을 꺼주면, 스위치 역할을 임시로나마 하게 됩니다.

no ip routing

 

[2] 라우터의 인터페이스에 아이피 할당.

패스워드는 알아서 나중에 지정하십시오.

설정을 마친 후 꼭 #copy run running-config startup-config 로 설정 내용을 저장해주세요

불러오기 : copy run start

 

라우터의 양 인터페이스 FA 0/0 과 0/1번에 각각 게이트웨이 주소 , DHCP 할당 임대 아이피를 지정해 주어야 합니다. 그래야  내부단 사설 아이피의 핑이 FA 0/0 을 디폴트 게이트웨이로 알고 찾아오겠죠?  라우터에 도착한 패킷이 이제 외부로 나가려면, 공인 NAT 을 거친 DHCP 랜덤 임대 아이피로 변환되어야 하는데, 외부로 나갈 FA 0/1 라인에 DHCP 임대 아이피를 설정하는 것입니다. 그러면 인터넷까지 나갈 수 있겠죠?

 

 

라우터의 fa0/0 에 게이트웨이 주소를 할당하고, 라인을 열어주었습니다.

핑을 넣어서 스위치를 거쳐 내부단에 핑이 도달하는지 확인합시다

처음에 . 으로 핑이 도달하지 않는 이유는 간단합니다.

처음에 테이블에 등록되어 있지 않기 때문이겠지요? 라우터는 학습했습니다!

이제 라우터의 fa0/1 부분을  dhcp 임대아이피를 받아와야 하는데, 굉장히 간단합니다.

이 쪽에서 DHCP 서버를 구성하는 것이 아니라, 그냥 외부에서 받아오는 것이기 때문이지요.

해당 인터페이스에 들어가서 입력해 줍니다. 

 

IP 주소 세팅을 그냥 DHCP 에서 받아오겠다고 선언하시면 끝납니다.

참 위에 그림이 하나 빠졌는데 반드시 인터페이스는 no shutdown 으로 열어주세요.

이제 show ip interface brief ( 줄여서 sh ip int bri 가능합니다 ) 로 확인해 봅시다.

 

알아서  ip를 DHCP 로 따왔음을 볼 수 있습니다.

하지만 여전히 외부로 인터넷을 할 수 없습니다. 핑이 통해도 안 됩니다.

이유는 간단 합니다. DHCP 로 받아온 192.168.31.X 단의 네트워크의 정보가

외부 로컬 실제 랜카드의 테이블 정보에 "없기" 때문입니다.

외부 랜카드가 내부단에서 올라온 새로운 사설 아이피를 알 리가 없죠.

라우터는 모르는 누가 쑤시면 핑까지는 받지만 다음으로 보내지 않고

그냥 "DROP" 해 버리죠? 결국 인터넷이 여전히 안 되게 됩니다.

 

 

해결 방법은 디폴트 스태틱으로 범위를 잡아준 후 NAT 설정으로 라우터가 DHCP 로 받아온 FA 0/1 부분의 아이피를 실제 로컬 랜카드의 네트워크 범위로 잡아주면 해결됩니다.

 

자신의 로컬 환경의 실제 게이트웨이를 확인해 봅니다.

저는 192.168.47.254 군요!

디폴트 스태틱을 설정하여, 내부단의 모든 네트워크를 라우터의 다음 hop인 실제 외부 랜카드의 첫 인터페이스... 즉 실제 외부 게이트웨이까지 연결해 줍니다.

( 일반적인 공유기의 게이트웨이는 호스트가 254지만 VMware 가상 어댑터의 경우는 2번입니다. 나중에 커스텀하실때 참조하세요 )

 

 

이제 NAT 을 설정해야 할 차례입니다.

NAT 을 설정하려면 ACL을 지정해야 합니다. 내부단의 사설 IP 전체가 대상이지요.

그 ACL 로 사설(내부)/공인(외부) 위치를 라우터에게 정확히 알려주면 됩니다.

NAT 의 일반적인 방법은

1. 공인 ip 대역 : pool ( 공유기에서 따온다 ) 이름 설정

2. 변경시켜줄 사설 IP 대역 지정 : ACL 묶기

3. 앞에서 지정한 사설 IP 공인 IP Mapping. (PORT 옵션 : overload)

4. 인터페이스에서 inside / outside 라우터에게 사설/공인 위치를 알려주기

 

입니다만, 지금 우리는 DHCP 임대된 아이피 위에는 랜카드 1개에 할당된 외부 공인아이피 하나만 가지고 있으므로 1번의 경우는 의미가 없습니다. 그래서 생략해도 됩니다.

 

 

 

[ ACL 지정 ]

 

access-list 1 permit 10.0.0.0 0.0.0.255

 

1이라는 넘버의 ACL 영역에 [허용] 합니다. 다음의 네트워크 영역 10.0.0.0 0.0.0.255 를.

 

이란 의미입니다. 뒤의 넷마스크는 서브넷이 아닌 와일드카드 마스크 입니다.

 

간단히 말해서 255.255.255.0 이라는 서브넷 마스크(/24)는 앞의 8/8/8 비트의 네트워크 영역을 "고정" 하고 호스트만 나누는 "네트워크 분리" 를 목적으로 하는 것이고, 와일드카드 마스크는 거꾸로 0.0.0(0~255)의 네트워크단의 영역을 "지정" 하겠다는 의미라고 보시면 되겠습니다.

 

 

다음은 이제 NAT 설정입니다

 

ip nat inside source list 1 interface fa 0/1 overload

=[내부단 안쪽의] [ACL 리스트 넘버 1] 을 라우터의 [인터페이스 FA 0/1] 영역에 NAT 를 걸겠다.

 

 

라는 의미가 됩니다.

중요한건 다 끝났구요. 이제 마지막으로 라우터에게

내부가 어디고, 외부가 어디냐? 를 알려주면 됩니다.

안쪽 / 바깥쪽의 기준은 Router 를 한 가운데에 두고 생각하시면 됩니다

당연히 왼쪽 fa 0/0 은 inside 내부단, dhcp 로 나가는 fa0/1 은 외부단이 되겠죠?

 

설정을 마쳤으면 이제 각 가상서버에서 ping www.google.co.kr 를 때려봅시다.

정상적으로 가지 않는다면, 무언가 잘못된 것!

단, 8.8.8.8 로는 외부 핑이 나가는데, 네임 google.co.kr 로 가지 않는다면, 그것은

자신의 가상머신이 외부의 DNS 서버에 연결되어 있지 않기 때문입니다.

 

윈도우즈 같은 경우는 아이피 설정 밑에 dns 서버 설정이라고 있는데

그곳에서 KT 의 수퍼DNS 인 168.126.63.1 을 입력해 줍니다.

리눅스에서는 /etc/resolve.conf 파일을 열어서

nameserver 168.126.63.1 을 추가해 주면 되겠습니다.

 

이상 끝!

 

ps. 토플로지에서 외부 인터넷 구름(랜카드)이 유선이 아닌, 무선 네트워크일 경우에는 GNS3 토플로지에서 무선 랜카드를 잡으면, 인터넷이 죽어도 안 됩니다. 무선 인터넷 환경에서 구성하시고 싶은 경우에는 Internet 부분의 랜카드를 VMnet8 (NAT) 로 잡으시고, 디폴트 스태틱 설정을 192.168.31.2 ( 게이트웨이 ) 로 잡아주시면 되겠습니다.

 

 

 

 

 

 

블로그 이미지

늙은M군

개인 저장공간입니다. 해당 일부 과정들을 공인 인터넷 환경에서 악성적으로 응용할 시 피해가 발생할 수 있으며, 그에 대해 책임은 사용자에게 있습니다!! 주의해주세요.

,