2013-08-14 2 views
2

Я пробрал столько страниц HOWTO на DDNS, чтобы попытаться исправить это ... Я в недоумении.BIND9, nsupdate и damn DDNS

WorkstationX = CentOS 6.2 x64 ServerX = Ubuntu 12.04 LTS x64

Я не понимаю, почему это не работает ... Я буквально из идей. Я несколько раз обновлялся и перестраивался.

Я убедился:

Некоторые из них имеют варьируя способы генерации ключа, но в остальном то же самое ... и до сих пор, когда я пытаюсь nsupdate - даже на сервере, где был запущен dnssec-keygen (и где есть привязка), я получаю те же записи журнала:

Aug 14 11:20:38 vps named[31247]: 14-Aug-2013 11:20:38.032 security: error: client 127.0.0.1#29403: view public: request has invalid signature: TSIG domain2.com.au.: tsig verify failure (BADKEY) 

из этого nsupdate:

nsupdate -k Kdomain2.com.au.+157+35454.key 
server localhost 
zone domain2.com.au. 
update add test.domain2.com.au. 86400 IN A 10.20.30.40 
show 
send 

Что я собираю это ПРАВИЛЬНО генерируется метод:

dnssec-keygen -a HMAC-MD5 -b 512 -n HOST domain2.com.au. 

named.conf (IP-адреса были изменены для обеспечения конфиденциальности):

acl ipv4    { 0.0.0.0/0; }; 
acl ipv6    { 2000::/3; ::1; fe80::/10; fec0::/10; }; 
acl safehosts   { 127.0.0.0/8; 3.2.2.40; 44.44.14.12; }; 

include "/etc/bind/rndc.key"; 

controls { 
     inet * port 953 
     allow { safehosts; } keys { "rndc-key"; }; 
}; 

options 
{ 
     auth-nxdomain   yes; 
     empty-zones-enable  no; 
     zone-statistics   yes; 
     dnssec-enable   yes; 
     listen-on    { any; }; 
     listen-on-v6   { any; }; 
     directory    "/etc/bind/db"; 
     managed-keys-directory "/etc/bind/keys"; 
     memstatistics-file  "/etc/bind/data/bind.memstats"; 
     statistics-file   "/etc/bind/data/bind.qstats"; 
}; 

logging 
{ 
## CUT ## 
}; 

view "public" 
{ 
    recursion   yes; 
    allow-query-cache { safehosts; }; 
    allow-recursion  { safehosts; }; 

zone "." IN { 
    type   hint; 
    file   "root.zone"; 
}; 

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

zone "localhost" { 
    type   master; 
    allow-update { none; }; 
    allow-transfer { none; }; 
    file   "localhost.zone"; 
}; 

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

zone "domain1.com.au" { 
    type   master; 
    notify   yes; 
    allow-update { key "rndc-key"; }; 
    allow-transfer { key "rndc-key"; }; 
    file   "domain1.com.au.zone"; 
}; 

zone "domain2.com.au" { 
    type   master; 
    notify   yes; 
    allow-update { key "rndc-key"; }; 
    allow-transfer { key "rndc-key"; }; 
    file   "doomain2.com.au.zone"; 
}; 
}; 

/и т.д. /bind/rndc.key:

key "rndc-key" { 
    algorithm hmac-md5; 
    secret "vZwCYBx4OAOsBrbdlooUfBaQx+kwEi2eLDXdr+JMs4ykrwXKQTtDSg/jp7eHnw39IehVLMtuVECTqfOwhXBm0A=="; 
}; 
. 10

Kdomain1.com.au + 157 + 35454.private

Private-key-format: v1.3 
Algorithm: 157 (HMAC_MD5) 
Key: vZwCYBx4OAOsBrbdlooUfBaQx+kwEi2eLDXdr+JMs4ykrwXKQTtDSg/jp7eHnw39IehVLMtuVECTqfOwhXBm0A== 
Bits: AAA= 
Created: 20130814144733 
Publish: 20130814144733 
Activate: 20130814144733 
+1

Это не вопрос, связанный с программированием. Вам лучше спросить на [Server Fault] (http://serverfault.com) – jgb

+0

не является md5 обычно длиной 128 бит? похоже, что вы каким-то образом создали секрет на 512 бит. не уверен, сможет ли код справиться с этим. также, возможно, используйте более сильную криптограмму, такую ​​как hmac_sha512, тогда бит будет соответствовать (и работает с bind9). Кстати, https://nsupdate.info/ вам интересно. –

ответ

2

РЕШЕНИЕ:

Я понятия не имею, почему, но она сейчас работает. Единственное, что я сделал, это следующее:

# chown -R named:named /var/named 

# find . -type d -exec chmod 770 {} \; 

# find . -type f -exec chmod 660 {} \; 
Смежные вопросы