Triển khai dịch vụ DNS trên Linux

Thảo luận trong 'Hệ điều hành Linux' bắt đầu bởi chip, 29 Tháng chín 2010.

  1. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    Giới thiệu:Hệ thống DNS chuyển đổi tên miền của một trang web thành một địa chỉ IP .Bước này quan trọng , vì địa chỉ IP của một máy chủ chứ không phải trang web được sử dụng trong định tuyến giao thông trên internet.Phần này sẽ giải thích làm thế nào để cấu hình một DNS server cho riêng bạn để giúp người lướt web và trang web cục bộ của bạn.
    Chuẩn bị: để chuẩn bị cấu hình một DNS server cho riêng bạn, bạn cần chuẩn bị những gì.

    Mã:
    [root@localhost ~]# rpm -qa bind*
    bind-chroot-9.7.0-9.P1.fc13.i686
    bind-libs-9.7.0-9.P1.fc13.i686
    bind-9.7.0-9.P1.fc13.i686
    bind-utils-9.7.0-9.P1.fc13.i686
    Các chú ý trước khi cấu hình:nếu bạn có bind-chroot-9.7.0-9.P1.fc13.i686 thì các file cấu hình bạn cần cấu hình sẽ nằm trong /var/named/chroot/etc và /var/named/chroot/var/named, nếu không có thì nằm tròn /etc và /var/named.

    Cấu hình:để cấu hình một DNS server bạn cần biết mình sẽ cấu hình lên những file nào và nằm ở đâu.
    -named.conf
    -named.rfc*.zone (* là một dãy số bất kỳ tùy theo phiên bản).
    -zone thuận
    -zone nghịch

    File named.conf:

    Mã:
    //
    // named.conf
    //
    // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
    // server as a caching only nameserver (as a localhost DNS resolver only).
    //
    // See /usr/share/doc/bind*/sample/ for example named configuration files.
    // --->luôn chú ý dòng trên nếu không có file named.conf thì vô thư mục này lấy.
    
    options {
            listen-on port 53 { 127.0.0.1;192.168.137.222; };
     //cổng lắng nghe, giao diện nào được lằng nghe
            listen-on-v6 port 53 { ::1; }; //dành cho IP v6
            directory       "/var/named"; //thư mục chứa các file cơ sở dữ liệu
            dump-file       "/var/named/data/cache_dump.db";
            statistics-file "/var/named/data/named_stats.txt";
            memstatistics-file "/var/named/data/named_mem_stats.txt";
            //allow-query     { localhost; }; //cho phép truy vấn đến domain nào.
            recursion yes;
    
            dnssec-enable yes;
            dnssec-validation yes;
            dnssec-lookaside auto;
    
            /* Path to ISC DLV key */
            bindkeys-file "/etc/named.iscdlv.key";
    };
    
    logging {
            channel default_debug {
                    file "data/named.run";
                    severity dynamic;
            };
    };
    
    zone "." IN {
            type hint;
            file "named.ca";
    };
    //Chú ý dòng này, nếu đằng trước có //, thì cấu hình các zone trong này luôn, nếu không //xem tiếp phần tiếp theo.
    include "/etc/named.rfc1912.zones";
    
    //include -->hàm gọi file ví dụ, có 1 file a có nội dung là abc, 1 file b có nội dung d, dùng //hàm include gọi file b:include “b” trong file a, lúc này file a sẽ có nội dung là abcd.
    
    //---------------Kết thúc quá trình cấu hình cho file named.conf
    Cấu hình file named.rfc*.zone .

    /
    Mã:
    / named.rfc1912.zones:
    //
    // Provided by Red Hat caching-nameserver package
    //
    // ISC BIND named zone configuration for zones recommended by
    // RFC 1912 section 4.1 : localhost TLDs and address zones
    // and [url]http://www.ietf.org/internet-drafts/draft-ietf-dnsop-default-local-zones-02.txt[/url]
    // (c)2007 R W Franks
    //
    // See /usr/share/doc/bind*/sample/ for example named configuration files.
    //
    
    zone "localhost.localdomain" IN {
            type master;
            file "named.localhost";
            allow-update { none; };
    };
    //zone thuận localhost 
    zone "localhost" IN {
            type master;
            file "named.localhost";
            allow-update { none; };
    };
    //zone nghich localhost dành cho địa chỉ IPV6
    zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
            type master;
            file "named.loopback";
            allow-update { none; };
    };
    //zone nghịch localhost dành cho ip v4
    zone "1.0.0.127.in-addr.arpa" IN {
            type master;
            file "named.loopback";
            allow-update { none; };
    };
    
    zone "0.in-addr.arpa" IN {
            type master;
            file "named.empty";
            allow-update { none; };
    };
    
    //ZONE thuan network.com
    zone "network.com" IN {
            type master;
            file "network.zone"; 
    //file cơ sở dữ liệu chứa các bản ghi . tí nữa tạo file này trong
    //    /var/named/chroot/var/named
            allow-update { none; };
    };
    zone "137.168.192.in-addr.arpa" IN {
            type master; //DNS chính
            file "network.rev"; //file cơ sở dữ liệu chứa các bản ghi 
    //    /var/named/chroot/var/named
            allow-update { none; }; //update
    };
    
    Chú ý:những zone nào không cấu hình đặt dấu ghi chú phía trước, không nên xóa. Để ý các dấu ;.

    Cấu hình file network.zone:

    Mã:
    $TTL 86400
    @       IN SOA  ns.network.com. root.ns.network.com. (
                                            2010091101      ; serial
                                            1D      ; refresh
                                            1H      ; retry
                                            1W      ; expire
                                            3H )    ; minimum
    @       NS      ns.network.com.
    ns      A       192.168.137.222
    www     A       192.168.137.222
    
    Cấu hình file network.rev:không nhất thiết tên file như thế này
    Mã:
    $TTL 86400
    @       IN SOA  ns.network.com. root.ns.network.com. (
                                            2010091101      ; serial
                                            1D      ; refresh
                                            1H      ; retry
                                            1W      ; expire
                                            3H )    ; minimum
    @       NS      ns.network.com.
    222     PTR     ns.network.com.
    222     PTR     www.network.com.
    Chú thích
    Serial-no: một số serial cho cấu hình hiện tại. bạn có thể dùng định dạng ngày tháng YYYYMMDD, theo sau là 1 chữ số.

    Refresh: Khoảng thời gian mà slave DNS server sẽ check master DNS Server.

    Retry: Khoảng thời gian Slave sẽ thử kết nối lại đến master sau khi bị lỗi

    Expiry: Tổng khoảng thời gian slave nên thử lại để contact đến master trước khi data bị expired.

    Minimum-TTL: Khi client tạo một query khôgn tồn tại trong sub domain, DNS server của bạn sẽ response là NXDOMAIN. Giá trị này định nghĩa thời lượng caching DNS của bạn bao gồm reponse đó.


    NS: địa chỉ IP hoặc CNAME của name server

    MX: tên mail server DNS

    A: IP address của server

    CNAME: tên bí danh của server

    PTR: tên server đầy đủ khi phân giải ngược từ 1 địa chỉ IP


    Đến đây xem như ta đã xong phần cấu hình cơ bản, nếu có time sẽ quyết tiếp phần hai với nội dung :cấu hình iptables và Troubleshooting BIND

    tmd
    Chiefree, Ronaldosunboy thích bài này.
  2. Offline

    sunboy

    • Thành viên sáng lập

    • No thing
    Số bài viết:
    1.616
    Đã được thích:
    1.340
    Điểm thành tích:
    1.000
    Ở bài này của chip đang thực hiện trên fedora 13. Các OS khác của Red Hat như CentOS.. thực hiện tương tự chỉ khác gói cài đặt.
    Trong bài này file named.conf cần được đặt trong /etc/named/conf/named.conf
    Các file còn lại cần đặt trong /var/named/
    Các file mẫu thì nằm trong thư mục như chip đã nói
  3. Offline

    Ronaldo

    • Friends

    Số bài viết:
    1.313
    Đã được thích:
    321
    Điểm thành tích:
    220
    Thanks chip 1000 cái nè :001::001::001::001:
    Tui làm được rồi, mà không hiểu lắm + với mấy cái file của FC11 hơi khác với FC13 nên một số cái ghi bậy mà nó cũng start được !

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí