1. tcpd( Tcp_wrapper ) 의 두가지 역할

– 특정 IP 나 도메인으로부터 서버로의 telnet, ftp, pop 등의 접속을 차단할 수 있음.

– 접속기록이나 접속시도기록을 특정한 파일에 로그로 기록함.

2. xinetd 는 tcp_wrapper 를 내장하고 있기 때문에 xinetd 모드에서 실행되는 서비스들( ex. ftp, telnet, ssh 등 ) 은 거의 대부분 tcpd 라는 Tcp_wrapper 의 데몬에 의해 접속제어를 받게 됨. 개별서비스들( ex. ftp, telnet 등 ) 의 접근허용을 설정하는 파일은 /etc/hosts.allow 이며 접근허용이 되지 않도록 설정하는 파일이 /etc/hosts.deny 임.

3. /etc/hosts.allow 와 /etc/hosts.deny 파일의 설정항목

– /etc/hosts.allow 및 /etc/hosts.deny 파일의 설정항목은 크게 두가지로 나뉘어 짐.

구분      |               왼쪽부분 설정항목               |                 오른쪽부분 설정항목
—————————————————————————————————————————-
대상        | 접근제어 대상 서비스                       |   접근제어 대상
————————————————————————————————————————–
설정값       | xinetd 기반에서 제어되는 모든 서  | 특정 도메인명
| 비스 명들.                                           | 특정 호스트명
|  /etc/services 내의 각 서비스이름과| 특정 IP 주소
|/etc/xinetd.d/ 디렉토리에 존재하는 | 특정 네트워크
| 파일명과 동일한 이름을 사용한다.  |
——————————————————————————————————————————
설정예       | telnet                                                   | pchero21.com
| sshd                                                    | host1
| proftpd                                                | 192.168.0.100
|                                                              | 192.168.1.0/24
|                                                              | 192.168.2.0/255.255.255.0
——————————————————————————————————————————-
실제예        | proftpd : 192.168.10.0/255.255.255.0 EXCEPT 192.168.10.100
| proftpd : 192.168.10.100 : twist /bin/echo “Access Denied!”
| sshd : 192.168.0.100
| sshd : 192.168.1.0/24
——————————————————————————————————————————-

– 왼쪽항목과 오른쪽 항목은 콜론( : ) 으로 구분을 한다. 또한 세번째 항목을 계속 설정할 때에도 콜론으로 구분하여 설정을 한다.

– /etc/hosts.allow 내의 설정과 /etc/hosts.deny 내의 설정이 중복되었을 경우에 /etc/hosts.allow 파일의 내용이 적용된다. 즉, /etc/hosts.allow 파일과 /etc/hosts.deny 파일에 동일한 설정을 해두면 /etc/hosts.allow 파일의 내용이 적용되어 접속이 허용됨.

– # 문자로 시작되면 주석문으로 인식함.

– 각 대상리스트들의 나영을 스페이스( space ) 나 콤마( , ) 로 구분함

4. hosts.deny 의 예

–  ALL : ALL

– hosts.allow 파일과 hosts.deny 파일의 해석은 : 을 기점으로 하여 왼쪽에는 서비스될 대상데몬들이며 오른쪽에는 대상 IP 및 호스트 정보임.

– 왼쪽의 서비스에 대해서 오른쪽의 IP 나 호스트에 대해서 접근을 허용한다는 설정이라고 해석하면 됨. 위의 예처럼 ALL : ALL 로 설정되어 있으면 xinetd 모드하에서 서비스되는 모든 서비스에 대해서 모든 IP 및 모든 호스트의 접근을 허용하지 않는다는 설정임.

5. hosts.allow 의 예

– in.telnetd : 210.101.112.240 210.101.112.241 211.123.12.12 168.`16.3.
in.ftpd : 210.101.112.240 210.101.112.241 211.123.12.12 168.126.3.
ipop3d : ALL

– 위의 hosts.allow 파일에 설정되어 있는 첫번째 행의 설정은 telnet 서비스에 대해서 210.101.112.240 210.101.112.241 211.123.12.12 168.126.3. 에 대한 접근만을 허용한다는 설정이며, 두번째 행의 설정은 ftp 서비스에 대해서 210.101.112.240 210.101.112.241 211.123.12.12 168.126.3. 에 대한 접근만을 허용한다는 설정임. 그리고 ipop3d 에 대해서는 모든 곳에서의 접근을 허용한다는 설정임

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.