Dalam artikel ini kita akan membahas cara menginstall bin9 di linux Ubuntu dan Debian dan juga konfigursi server DNS untuk resolve IP atau alamat domain IP Bind dengan menggunakan port 53/TCP,UDP.
BIND9 atau di kenal dengan istilah Berkeley Internet Name Domain Versi 9 merupakan software yang biasa digunakan untuk membuat ataupun membangun dan mengatur sebuah DNS (Domain Name Server) pada sistem operasi Linux.
Berikut cara menginstall bind9
Pertama silahakan install paackage bind9, dengan menggunakan perintah di bawah ini
apt-get install bind9 bind9utils dnsutils -y
Jika sudah, kemudian melakukan configurasi pada package bind9. Kamu dapat menggunakan perintah di bawah ini untuk melakukan configurasinya.
vim /etc/bind/named.conf
Next, isi filenya dengan paket perintah di bawah ini…
include "/etc/bind/rndc.key"; controls { inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; }; }; options { /* make named use port 53 for the source of all queries, to allow * firewalls to block all ports except 53: */ // query-source port 53; recursion no; /* We no longer enable this by default as the dns posion exploit has forced many providers to open up their firewalls a bit */ // Put files that named is allowed to write in the data/ directory: directory "/var/named"; // the default pid-file "/var/run/named/named.pid"; dump-file "data/cache_dump.db"; statistics-file "data/named_stats.txt"; /* memstatistics-file "data/named_mem_stats.txt"; */ allow-transfer { "none"; }; }; logging { channel default_log { file "/var/log/named/named.log" versions 5 size 128M; print-time yes; print-severity yes; print-category yes; severity warning; }; category default { default_log; }; category general { default_log; }; }; // All BIND 9 zones are in a "view", which allow different zones to be served // to different types of client addresses, and for options to be set for groups // of zones. // // By default, if named.conf contains no "view" clauses, all zones are in the // "default" view, which matches all clients. // // If named.conf contains any "view" clause, then all zones MUST be in a view; // so it is recommended to start off using views to avoid having to restructure // your configuration files in the future. view "localhost_resolver" { /* This view sets up named to be a localhost resolver ( caching only nameserver ). * If all you want is a caching-only nameserver, then you need only define this view: */ match-clients { 127.0.0.0/24; }; match-destinations { localhost; }; recursion yes; zone "." IN { type hint; file "/var/named/named.ca"; }; /* these are zones that contain definitions for all the localhost * names and addresses, as recommended in RFC1912 - these names should * ONLY be served to localhost clients: */ include "/var/named/named.rfc1912.zones"; }; view "internal" { /* This view will contain zones you want to serve only to "internal" clients that connect via your directly attached LAN interfaces - "localnets" . */ match-clients { localnets; }; match-destinations { localnets; }; recursion yes; zone "." IN { type hint; file "/var/named/named.ca"; }; // include "/var/named/named.rfc1912.zones"; // you should not serve your rfc1912 names to non-localhost clients. // These are your "authoritative" internal zones, and would probably // also be included in the "localhost_resolver" view above : zone "gemaroprek.com" { type master; file "gemaroprek.net.db"; }; }; view "external" { /* This view will contain zones you want to serve only to "external" clients * that have addresses that are not on your directly attached LAN interface subnets: */ recursion no; additional-from-cache no; // you'd probably want to deny recursion to external clients, so you don't // end up providing free DNS service to all takers // all views must contain the root hints zone: zone "." IN { type hint; file "/var/named/named.ca"; }; // These are your "authoritative" external zones, and would probably // contain entries for just your web and mail servers: // BEGIN external zone entries zone "gemaroprek.com" { type master; file "gemaroprek.com.db"; }; };
Nah untuk selanjutnya, siahkan atur limit IPnya dengan menggunakan perintah berikut
vim /etc/bind/named.conf.options
Dan masukkan data berikut untuk mengedit IPnya, silahkan sesuaikan dengan di bawah ini
options { directory "/var/cache/bind"; // If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/800113 // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder. // forwarders { // 0.0.0.0; // }; # query range you allow allow-query { localhost; 10.0.0.0/24; }; # the range to transfer zone files allow-transfer { localhost; 10.0.0.0/24; }; # recursion range you allow allow-recursion { localhost; 10.0.0.0/24; }; dnssec-validation auto; auth-nxdomain no; # conform to RFC1035 # change if not use IPV6 listen-on-v6 { none; }; };
Jika sudah, kamu buat lokal zonenya. Untuk membuat lokal zone berikut perintahnya
/etc/bind/gemaroprek.db
Nah berikut local zonenya
$TTL 14400 idnblogger.id. 86400 IN SOA ns1.idnblogger.id. servernya.arielfx.com. ( 2016100810 ;Serial Number 3600 ;refresh 7200 ;retry 1209600 ;expire 86400 ;minimum ) idnblogger.id. 86400 IN NS ns1.idnblogger.id. idnblogger.id. 86400 IN NS ns2.idnblogger.id. idnblogger.id. 14400 IN A 192.168.2.1 idnblogger.id. 14400 IN MX 10 mail.idnblogger.id. mail 14400 IN A 192.168.2.1 www 14400 IN A 192.168.2.1 ftp 14400 IN A 192.168.2.1 server 14400 IN A 192.168.2.1 ns1 14400 IN A 192.168.2.1 ns2 14400 IN A 192.168.2.2
Oke dengan demikian bind9 telah terinstall dan telah di configurasi. Silahkan di coba……