Skip to main content

Konfigurasi DNS Public Master dan Slave

Berikut catatan saya mengenai DNS yang mengunakan IP Public.
Awalnya kita tidak memiliki DNS yang terhubung ke Public. DNS Public hanya ada di ISP dengan menggunakan control Panel.
Untuk memudahkan pengelolaan kita akan membuat DNS yang terhubung ke IP Public. Dan pengelolaan Domain tidak lagi di Control Panel ISP atau Situs Penjual Domain.

Sebelum merubah domain corporate, saya coba membeli domain baru contoh example.xyz Kebetulan domain tersebut tersebut lumayan murah hanya Rp. 16.000/tahun. Yah untuk coba2 dan testing.


Berikut gambarannya (bukan sebenarnya):

NS Godady : ns1.godaddy.com dan ns2.godaddy.com


Lokasi A (Master)
IP Public Mikrotik : 103.4.x.x
Server DNS :192.168.100.3

Lokasi B (Slave)
IP Public Mikrotik 117.102.x.x dan 112.78.x,x
Server DNS : 192,168.200.3



Domain yang saya beli di godaddy.com lantas saya coba rubah untuk NS (Name Server).

Di halaman godaddy sudah ada 2 alamat NS default. Anehnya NS tersebut tidak dapat diedit diganti dengan IP Public A. Jadi ketika kita menambahkan NS, maka NS yang kita buat akan hilang dan masih menggunakan NS default. Dan mungkin ada kesalahan dari saya perihal konfigurasinya.
Berikut konfigurasi setelah beberapa kali Trial Error.

Tahapan :
Lokasi A (Master) Centos 6.5
1. Setting di /etc/named.conf

options {
//      listen-on port 53 { 127.0.0.1; };
        listen-on port 53 { 192.168.100.3; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        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; };
        allow-query     { any; };
//      allow-recursion { 127.0.0.1; };
        allow-transfer  { 127.0.0.1; 117.102.x.x; };
        recursion no;

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
        forwarders {180.131.144.144; 8.8.4.4; };
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "ithighpro.xyz" in {
        type master;
        file "example.xyz.zone";
        allow-update { none; };
};

zone "100.168.192.in-addr.arpa" in {
        type master;
        file "100.168.192.in-addr.arpa.zone";
        allow-update { none; };
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";


!!! Recursion disetting no untuk menghindari Ddos attack

2. Setting file zona /var/named/example.xyz.zone

$TTL 1d

@       600     IN      SOA     ns1.example.xyz. root.ithighpro.xyz. (
                                201611xx
                                28800
                                7200
                                604800
                                600
                                )

;Name server's
@       IN      NS      ns1.ithighpro.xyz.
@       IN      NS      ns2.ithighpro.xyz.

;Name server hostname to IP resolve
@       IN      A       103.4.x.x
@       IN      A       117.102.x.x

;MX Records
@       IN      MX      10      mail.example.xyz.
@       IN      MX      20      mail2.example.xyz.

;Hosts in this Domain

ns1             IN      A       103.4.x.x
ns2             IN      A       117.102.x.x

mail            IN      A       103.4.x.x
mail2           IN      A       117.102.x.x

www             IN      A       117.102.x.x
owncloud        IN      A       112.78.x.x

Untuk mengecek konfigurasi yang sudah pernah kita buat bisa menjalan perintah :

[root@mail named]#named-checkconf /etc/named.conf
[root@mail named]#named-checkzone example.xyz /var/named/example.xyz.zone
zone example.xyz/IN: loaded serial 201611xx
OK

Jika hasilnya sudah seperti diatas berarti konfigurasi sudah dianggap benar.


Lokasi B (Slave) Centos 7.2
1. Edit File /etc.named.conf
options {
        listen-on port 53 { 127.0.0.1; 192.168.200.3; };
#       listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        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     { any; };
        allow-transfer  { 127.0.0.1; 103.4.x.x; };

        /*
         - If you are building an AUTHORITATIVE DNS server, do NOT enable recurs                                                                                        ion.
         - If you are building a RECURSIVE (caching) DNS server, you need to ena                                                                                        ble
           recursion.
         - If your recursive DNS server has a public IP address, you MUST enable                                                                                         access
           control to limit queries to your legitimate users. Failing to do so w                                                                                        ill
           cause your server to become part of large scale DNS amplification
           attacks. Implementing BCP38 within your network would greatly
           reduce such attack surface
        */
        recursion no;

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "named.ca";
};


zone "example.xyz" IN {
        type slave;
        file "slaves/example.xyz.zone";
        masters { 103.4.x.x; };
};


2. Edit File Zona /var/named/slaves/example.xyz.zone

$TTL 86400
@   IN  SOA     ns1.example.xyz. root.example.xyz. (
        201611xxx  ;Serial
        3600        ;Refresh
        1800        ;Retry
        604800      ;Expire
        86400       ;Minimum TTL
)
         NS             ns1.example.xyz.
         NS             ns2.example.xyz.

         A              103.4.x.x
;        A              192.168.200.3
         MX 10          mail.example.xyz.
         MX 20          mail2.example.xyz.


ns1      A              103.4.x.x
ns2      A              192.168.200.3

mail     A              103.4.x.x
mail2    A              117.102.x.x
www      A              117.102.x.x


Tools untuk membantu pengecekan konfigurasi :
- https://intodns.com/example.xyz

Di tools ini kita bisa melihat konfigurasi yang kurang tepat.



Beberapa hal penting :
1. Untuk serial di zona file harus disamakan antara master dan slaves
2. Pengeditan/penambahan NS di Godaddy disebabkan NS yang kita buat belum terbentuk. Dan minimal NS haru ada 2. Jika hanya 1 maka NS masih menggunakan Godaddy
3. Setelah DNS di 2 lokasi terbentuk maka secara otomatis pengelolaan domain ada di Lokasi kita bukan di Godaddy.

Popular posts from this blog

Freenas Snapshots Replication Backup

Mungkin anda sudah mengetahui Freenas sebelumnya. Ya..Freenas adalah salah satu software NAS Storage berbasis FreeBSD. Karena kehandalannya, Freenas banyak digunakan sebagai NAS Storage di dunia IT. Saya pernah berfikir bagaimana jika Freenas yang kita gunakan mengalami masalah, crash misalnya. Mungkin jika hardisknya menggunakan RAID bisa tinggal ganti disknya. Bagaimana jika tidak ada RAID (hari gini Server gak ada Raid hdewww heee) atau hal lain yang membuat data tidak bisa digunakan di Freenas. Tutorial ini saya buat untuk berbagi ilmu kepada rekan2 sekalian. Saya akan coba membuat Replikasi Freenas. Dimana Dataset pada salah satu Freenas (Freenas A) akan di snapshot dan di replikasikan ke Freenas B Hal yang perlu disiapkan : 1.  Freenas A : 192.168.100.1 (Primary) Disk 8GB x 2 2.  Freenas B : 192.168.100.2 (Secondary) Disk 8GB x 2 SETING FREENAS A DAN B Kita akan buat raid mirror untuk 2 disk. Storage - Volume Manager   Volume Name :

Migrasi Nextcloud 19 ke Nextcloud 20.02 (Beda Server)

Server A : 192.168.0.1 (Server lama : Centos 7), port 80 Server B : 192.168.0.2 (Server baru : Centos 8), port 80 Nginx Load Balance : 192.168.0.10, port 443 untuk SSL Tahapan : 1. Upgrade Nextcloud 19.0.3 ke 19.0.5 (server lama) 2. Instalasi server baru (Centos 8) 3. Backup dan restore data nextcloud dan databas ke server baru 4. Konfigurasi Nextcloud di server baru dan Nginx Server 5. Finish A. Upgrade Nextcloud 19.0.3 ke 19.0.5 Untuk Upgrade 19.0.3 ke 20.0.2 tidak dapat dijalankan secara langsung. Harus bertahap upgrade ke versi minor. 19.0.3 -> 19.0.5 secara otomais. Dan upgrade ke 20.0.2 secara manual. 1. Login ke Nextcloud 2. Setting - Administration-Overview 3. Versi yang tersedia 19.0.5 5. Pilih Open updater  4. Start Update 5.  Pilih No (for usage of the web based updater), untuk mode maintenance dan upgrade via console. 6. Masuk ke console dan ke directory /var/www/html/nextcloud 7. Jalankan $ sudo   - u  apache   php occ upgrade 8. Maintenance mode masih dalam keadaan

Zimbra Error Subject : ***UNCHECKED***

Beberapa hari yang lalu Subject email Zimbra selalu di tambahkan tulisan ***UNCHECKED***. Padahal tidak ada perubahan konfigurasi mail server sebelumnya. Cari di google ada beberapa referensi yaitu merubah file /opt/zimbra/. Tahapan : #su root #cd /opt/zimbra/amavisd/bin #cp -pa amavisd amavid.org #vi amavisd Rubah isi file di baris : #su zimbra $undecipherable_subject_tag = '***UNCHECKED*** '; menjadi $undecipherable_subject_tag = '';   $zmamavisdctl restart Di hari berikutnya saya coba cek kembali utilisasi mail dengan 'top'. Terilhat penggunaan clamd sebesar 100%. Coba dicek di log /var/log/zimbra.log |grep clamd hasilnya mail amavis[26778]: (26778-07) ClamAV-clamd: All attempts (1) failed connecting to /opt/zimbra/data/clamav/clamav.sock, retrying (1) Oct 24 10:10:43 mail amavis[26778]: (26778-07) (!)connect to /opt/zimbra/data/clamav/clamav.sock failed, attempt #1: Can't connect to UNIX socket /opt/zimbra/data/clamav/clamav.sock: Co