다음 이전 차례

3. Setting This All Up

3.1 하드웨어 요구사항

우리의 예를 들어보면, 컴퓨터는 486-dx66, 메모리는 8메가, 500M의 리눅스 파 티션, 14400 모뎀을 통한 인터넷 제공회사와의 ppp 연결 등이 있다. 이것 이 기본적인 리눅스 박스이다. 여기에 방화벽을 만들기 위해서 NE2000 이서네트 card를 하나 추가한다. 그리고 그것은 windows 3.1을 가동하는 3대의 pc와 SunOS 4.1을 돌리는 2대의 sun에 연결된다. 이런 설정은 선택한 것은 이것이 매우 일반적인 것들이고 두 개의 플랫폼이 모두 나에게 친숙한 것이기 때문이 다. 나는 지금 이야기하는 것들이 매킨토시에서도 가능할것이라고 상상하지만 Mac을 그리 자주 사용하지 않으므로 장담할 수는 없다.

3.2 software의 setting

이제 당신은 14.4 ppp 라인을 통해 네트워크에 접속된 리눅스 박스를 갖게 되었다. 그리고 리눅스와 다른 컴퓨터들로 연결된 이서네트 네트웍을 지녔다. 우선은 적당한 옵션을 주고 리눅스 커널을 다시 컴파일해야 한다. 여기서 나는 Kernel- 하우투, Ethernet-하우투, NET-2 하우투 등을 살펴보고, "make config"을 하였다.

  1. 네트워킹 Sup포트을 켠다
  2. TCP/IP 네트워킹을 켠다
  3. IP Forwarding을 끈다
  4. IP Firewalling을 켠다
  5. IP 계정ing을 켠다. 보안 수단을 설정하고 있으므로 신중하게 보인다
  6. 네트워킹 Device Support를 켠다
  7. 우리는 PPP and 이서네트 support를 켰지만, 이것은 당신의 interface에 달 린 것이다.
그런 뒤 우리는 커널을 다시 컴파일하고, 설치한 후 리부트 했다. 부트 과정에서 인터페이스가 나타날 것이고, 우리는 잘 되었다. 정상적으로 되지 않는다면, 다른 하우투를 참고하며 될 때까지 해보아라.

3.3 네트웍 주소의 조정

이것은 매우 재미있는 부분이다. 우리는 접근를 하기위해 인터넷을 원하지는 않으므로, 실제 주소를 사용할 필요가 없다. 어떤 훌륭한 C class는 192.168.2.xxx라는 것을 사용하는데, 이것은 견본의 test doamin으로 설정된 것 이다. 이와같이, 아무도 그것을 사용하지 않으며, 외부로부터의 어떠한 요청과도 충돌을 일으키지 않을 것이다. 그러므로, 이 설정에서는, 오직 하나의 실제 IP 주소가 필요할 뿐이다. 다른 것은 하던 말던 자유이며, 네트웍에 전혀 영향 을 미치지 않는다.

ppp를 위해 사용되는 시리얼 포트에 실제 IP를 부여하라. 방화벽의 이서네트 카드에 192.168.2.1 을 부여하라. 그리고 보호받는 네트웍의 다른 모든 머신 에 그 도메인의 숫자들을 부여해라.

3.4 테스트하기

첫째로, 방화벽에서 인터넷에 ping을 해보아라. 나는 테스트 지점으로 nic.ddn.mil을 사용하곤 했다. ping은 여전히 훌륭한 테스트 방법이긴 하지만, 내가 기대했던만 큼 믿을만 하지는 않았다. 처음에 제대로 작동하지 않는다면, 당신의 lan에 연결 되지 않은 다른 장소로 시도해 보아라. 그래도 작동하지 않는다면, ppp 설정이 잘못된 것이다. net-2 하우투를 다시한번 읽고, 다시 시도해 보아라. 이제, 보호받는 네트웍 내의 다른 호스트간에 ping을 해봐라. 모든 컴퓨터들은 서로 ping이 가능해야 한다. 그렇지 않다면, net-2 하우투를 다시읽고 네트웍 상에서 좀더 일을 해봐라.

그러면 보호받는 네트웍 내의 모든 컴퓨더에서 방화벽로 ping이 가능하다. 그 렇지 않다면, 되돌아 와라. ppp 주소가 아니라 192.168.2.1로 ping가 가능해야 한다는 것을 기억하라. 그리고, 보호받는 네트웍의 내부로부터 방화벽의 ppp 주소로 ping을 시도 해 보라. 그것이 된다면, IP forwarding을 끄지 않은 것이며, 커널을 다시 컴파 일해야만 한다. 보호받는 네트웍에 192.168.2.1 이라는 도메인을 부여하는 것은 어떤 패킷이라도 이 네트웍으로 라우팅되지 않게 한다는 것을 의미한다. 그러 나 IP forwarding을 꺼놓는 것이 어쨌든 더욱 안전하다. 이것은 콘트롤을 ppp 제공회사가 아닌 당신의 손에 남겨놓는다.

마지막으로, 방화벽로부터 보호받는 네트웍내의 모든 머신에게 ping을 해보 라. 이때 까지 아무런 문제도 없어야 한다. 이제 방화벽의 기본적인 설정이 되 었다.

3.5 방화벽 보호

방화벽은 공격에 대해 많이 개방되어 있다면 아무런 효과가 없다. 우선 /etc/inetd.conf를 살펴보라. 이 파일이 "super 서버"라 불리는 그것이다. 그것 은 요청이 있을 때 한무더기의 서버 데몬을 가동한다.

예:
 + Telnet
 + Talk
 + FTP
 + Daytime
필요치 않은 것은 모두 꺼놓아라. 특히 netstat, systat, tftp, bootp, finger 등은 확실히 끄도록 해라. 또 telnet은 꺼놓고 rlogin 또는 그 반대만을 허용할수도 있다. 그러면, kill -HUP <pid>을 입력하여 해당 프로세스에 SIG-HUP 메시지 를 보낸다. 이것은 inetd로 하여금 config 파일을 다시읽고 재시작 하게 만들 것 이다. 방화벽의 포트 15로 텔넷하여 그것을 테스트해라. 포트 15는 netstat의 포트이다. netstat의 출력이 있다면, 제대로 재시작을 하지 못한 것이다.
다음 이전 차례