Trang chủ > VPS - KVM > Hệ điều hành Centos > CÀI ĐẶT DNS SEVER – BIND9 TRÊN CENTOS

CÀI ĐẶT DNS SEVER – BIND9 TRÊN CENTOS

DNS server có thể nói là một dịch vụ xương sống của hệ thống mạng, nếu không có DNS thì có lẽ chiếm quá nửa số lượng trang web trên thế giới không thể vào được. Hiện nay có rất nhiều phần mềm cho phép chúng ta xây dựng một DNS server như trên windows có Microsoft DNS, hay trên Linux có BIND9, PowerDNS, MyDNS… Nhưng có lẽ phần mềm được dùng để xây dựng DNS phổ biến nhất thế giới và cũng có thể nói là mạnh nhất hiện nay là BIND9.

Trong bài viết này chúng ta sẽ cùng nhau xây dựng một DNS server bằng phần mềm BIND9 (http://www.bind9.org) trên nền tảng hệ điều hành CentOS. Phiên bản mới nhất của phần mềm Bind9 đi theo bản phân phối của CentOS là 9.3.6 còn trên trang chủ của Bind9 thì hiện tại đang là 9.6.1. Chúng ta cùng bắt đầu cài:

1. Cài đặt:

yum install bind-chroot

2. Phân quyền thư mục:

chmod 755 /var/named/
chmod 775 /var/named/chroot/
chmod 775 /var/named/chroot/var/
chmod 775 /var/named/chroot/var/named/
chmod 775 /var/named/chroot/var/run/
chmod 777 /var/named/chroot/var/run/named/

3. Tạo các file cấu hình mẫu:

cp /usr/share/doc/bind-9.3.6/sample/var/named/named.local /var/named/chroot/var/named/
cp /usr/share/doc/bind-9.3.6/sample/var/named/named.root /var/named/chroot/var/named/
touch /var/named/chroot/etc/named.conf

4. Đến đây chúng ta có thể khởi động dịch vụ và cấu hình để dns server tự chạy khi hệ điều hành khởi động:

chkconfig named on
service named start

Đến đây dịch vụ đã chạy bình thường. Tuy nhiên file cấu hình đang trắng tinh nên dịch vụ chưa phân giản cho bất kỳ một truy vấn nào.

Tiếp theo chúng ta sẽ cấu hình các bản ghi cần thiết để hệ thống có thể phân giải được tên miền:

Chuyển vào thư mục chứa file cấu hình:

cd /var/named/chroot/etc/

Tại đây ta dùng lênh: vi name.conf với nội dung như sau:

options {
directory “/var/named”;

forwarders {203.162.0.181; 203.162.0.11; 210.245.0.11; 210.245.0.58; 208.67.222.222; 208.67.220.220;};
};

zone “.” IN {
type hint;
file “named.root”;
};

zone “localhost” IN {
type master;
file “localhost.zone”;
};

zone “0.0.127.in-addr.arpa” IN {
type master;
file “named.local”;
};

zone “1.168.192.in-addr.arpa” IN {
type master;
file “192.168.1.0.db”;
};

zone “hanhtv.local” {
type master;
file “hanhtv.local”;
};

Kiểm tra trong thư mục /var/named/chroot/var/named/ và tạo các file với nội dung như sau:

named.root: file này đã có sẵn

name.local: file này đã có sẵn.

localhost.zone

$TTL    86400
$ORIGIN localhost.
@                       1D IN SOA       @ root (
42              ; serial (d. adams)
3H              ; refresh
15M             ; retry
1W              ; expiry
1D )            ; minimum

1D IN NS        @
1D IN A         127.0.0.1

192.168.1.0.db:

$TTL    86400
@       IN      SOA     hanhtv.local. root.hanhtv.local.  (
1997022700 ; Serial
28800      ; Refresh
14400      ; Retry
3600000    ; Expire
86400 )    ; Minimum
IN      NS      ns1.hanhtv.local.
253       IN      PTR     dns.hanhtv.local.

hanhtv.local

$TTL 14400
@       IN      SOA     root.hanhtv.local.      hostmaster.hanhpro.local. (
2009102800
14400
3600
1209600
86400 )

IN      NS      hanhtv.local.
IN      NS      hanhtv.local.

ftp        IN      A       192.168.1.253
hanhtv.local.       IN      A       192.168.1.253
localhost          IN      A       127.0.0.1
mail       IN      A       192.168.1.253
pop        IN      A       192.168.1.253
smtp       IN      A       192.168.1.253
www        IN      A       192.168.1.253

hanhtv.local.      IN      MX      10 mail

Sau khi tạo xong các file trên chúng ta lưu lại và dùng lệnh

service named restart

để khởi động lại dịch vụ. Lúc này Server đã sẵn sàng phục vụ các truy vấn trong mạng và các tên miền bên ngoài.