bind tidak akan berfungsi kecuali allow-query adalah "any"

13

Saya memiliki ini di /etc/named.conf, saya berkomentar nilai-nilai default dan mengatur nilai saya sendiri di bawahnya. Domain saya tidak akan dimuat di peramban kecuali jika saya menetapkan allow-query ke "any", apakah ini OK, apa yang harus saya edit? Jika is localhostatau 127.0.0.1; 10.0.1.0/24;domain tidak mau memuat. Saya mencoba 127 .. hal karena disebutkan di sini: http://wiki.mandriva.com/en/Testing:Bind

Versi Bind adalah 9.7.0-P2-RedHat-9.7.0-5.P2.el6_0.1 OS adalah CentOS 6.0.

options {
        // listen-on port 53 { 127.0.0.1; };
        listen-on port 53 { any; };
        //listen-on-v6 port 53 { ::1; };
        listen-on-v6 port 53 { any; };
        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; };

        recursion yes;

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

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

Jawaban:

13

Saat Anda mendengarkan-127.0.0.1 atau localhost atau :: 1, dan / atau allow-query dari localhost saja, bind hanya akan menjawab pertanyaan yang berasal dari komputer yang sama yang menjalankan bind. (Ini mengatur cara ini dalam "pengujian" mungkin karena mereka mungkin hanya dimaksudkan untuk menguji bahwa mengikat bekerja tanpa membukanya ke luar karena alasan keamanan.)

Adalah normal untuk mengatur mereka menjadi "apa saja" sehingga dapat diakses dari luar.

Sandman4
sumber
Beberapa artikel online menyebutkan bahwa itu mungkin terkena serangan DOS jika "ada". Jika saya mengerti dengan benar.
adrianTNT
1
Yah, bahkan jika itu benar, tanpa "apa pun" itu tidak akan berhasil;)
Sandman4
1
Btw, apa tujuan server Anda? Apakah hanya otoritatif untuk beberapa zona Anda? Siapa yang seharusnya dapat mengakses server Anda?
Sandman4
Ini adalah situs hosting gambar, itu akan meng-host beberapa domain pada IP yang sama. Domain ada di godaddy tempat saya menetapkan dua "host" ns1.domain ns2.domain dan menghubungkan NS ini dengan IP server saya.
adrianTNT
1
Ok, jadi itu harus dapat diakses dari luar. Jadi itu harus "apa saja". Dan Anda lebih baik mengatur "rekursi tidak" jika Anda takut akan serangan. Tetapi bukankah godaddy menyediakan server nama untuk Anda?
Sandman4
3

Jika server DNS Anda adalah server caching lokal, setel

allow-query { <your subnet>; }; 

dalam opsi. Dan, di setiap zona:

allow-query { any; };

Jika Anda tidak menggunakannya sebagai server caching, atur pada opsi untuk tidak ada;

allow-query { none; };

Pada dasarnya, Anda tidak ingin server Anda menjawab domain yang tidak Anda otorisasi.

rsd
sumber
-3

Hati-hati - ini tidak benar:

Jika Anda tidak menggunakannya sebagai server caching, atur pada opsi untuk tidak ada;

allow-query { none; };

Server seperti itu tidak membalas paket apa pun, bahkan untuk domain yang merupakan otoritatif untuknya.

Dalibor Straka
sumber