Redhat ES나 fedora를 설치하는 경우 bind 설정에서 변경되는 부분이 있습니다.
bind 보안이 강화되어 기본적으로 chroot를 이용하도록 bind-chroot 패키지가 설치됩니다.

[root@ns named]# rpm -qa | grep bind
bind-utils-9.2.4-2
bind-9.2.4-2
bind-chroot-9.2.4-2

(bind-chroot-9.2.4-2가 기본적으로 설치된 것을 확인할 수 있습니다)

chroot(Change Root Directory)는 특정 디렉토리가 / (루트 디렉토리) 인 것처럼 속여 만약 서버의 취약점으로 인해 침입을 당한 경우 제한된 영역의 시스템 디렉토리에만 그 피해를 국한시키기 위한 메커니즘입니다.

bind의 named 프로세스를 chroot환경에서 실행하게 되면, named는 ~/chroot 디렉토리를 시스템의 루트 디렉토리로 여기게 되고 따라서 ~/chroot 하위 디렉토리에 대해서만 접근할 수 있습니다.

[root@ns named]# pwd
/var/named
[root@ns named]# ls -l
total 12
drwxrwx--- 5 root named 4096 Apr 25 11:08 chroot
drwxrwx--- 2 named named 4096 Oct 19 2004 data
lrwxrwxrwx 1 root root 44 May 26 21:02 localdomain.zone -> /var/named/chroot/var/named/localdomain.zone
lrwxrwxrwx 1 root root 42 May 26 21:02 localhost.zone -> /var/named/chroot/var/named/localhost.zone
lrwxrwxrwx 1 root root 43 May 26 21:02 named.broadcast -> /var/named/chroot/var/named/named.broadcast
lrwxrwxrwx 1 root root 36 May 26 21:02 named.ca -> /var/named/chroot/var/named/named.ca
lrwxrwxrwx 1 root root 43 May 26 21:02 named.ip6.local -> /var/named/chroot/var/named/named.ip6.local
lrwxrwxrwx 1 root root 39 May 26 21:02 named.local -> /var/named/chroot/var/named/named.local
lrwxrwxrwx 1 root root 38 May 26 21:02 named.zero -> /var/named/chroot/var/named/named.zero
drwxrwx--- 2 named named 4096 Oct 19 2004 slaves
(/var/named 안에 chroot 디렉토리를 확인할 수 있습니다)



[root@ns chroot]# pwd
/var/named/chroot
[root@ns chroot]# ls -l
total 12
drwxrwxr-- 2 root named 4096 Apr 25 11:08 dev
drwxrwx--- 2 root named 4096 Jul 1 11:30 etc
drwxrwx--- 5 root named 4096 Apr 25 11:08 var
(/var/named/chroot 디렉토리)

이전과는 달리 모든 bind 설정 관련 파일들은 /var/named/chroot 안에 존재하고 있습니다.

기존 /etc/named.conf는
/var/named/chroot/etc/named.conf에

기존 /var/named의 zone file은
/var/named/chroot/var/named 안에 위치하게 됩니다.

설정이 끝나고 chroot를 이용한 bind를 구동하면

[root@ns chroot]# ps -aux | grep named
named 13316 0.0 1.3 37896 3528 ? Ssl Jun23 0:00 /usr/sbin/named -u named -t /var/named/chroot

위에서와 같이 -t /var/named/chroot 옵션(-t chrootdir)이 적용된 것을 확인 할 수 있습니다.

만약, chroot가 적용된 bind를 사용하지 않고 예전 방식대로 운영하려면 bind-chroot 패키지만 삭제합니다.
2006/11/10 14:07 2006/11/10 14:07

트랙백 주소 :: 이 글에는 트랙백을 보낼 수 없습니다