Я пробрал столько страниц HOWTO на DDNS, чтобы попытаться исправить это ... Я в недоумении.BIND9, nsupdate и damn DDNS
WorkstationX = CentOS 6.2 x64 ServerX = Ubuntu 12.04 LTS x64
Я не понимаю, почему это не работает ... Я буквально из идей. Я несколько раз обновлялся и перестраивался.
Я убедился:
- Запуск Ntpd на обоих хостах, я проверил NTP работает
- TZ является правильным для обоих узлов (Аппаратная UTC)
- Я следовал этим направляющие:
- http://linux.yyz.us/nsupdate/
- http://agiletesting.blogspot.com.au/2012/03/dynamic-dns-updates-with-nsupdate-and.html
- http://www.cheshirekow.com/wordpress/?p=457
- https://www.erianna.com/nsupdate-dynamic-dns-updates-with-bind9
- http://consultancy.edvoncken.net/index.php/HOWTO_Manage_Dynamic_DNS_with_nsupdate
- http://blog.philippklaus.de/2013/01/updating-dns-entries-with-nsupdate-or-alternative-implementations-your-own-ddns/
Некоторые из них имеют варьируя способы генерации ключа, но в остальном то же самое ... и до сих пор, когда я пытаюсь 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
Это не вопрос, связанный с программированием. Вам лучше спросить на [Server Fault] (http://serverfault.com) – jgb
не является md5 обычно длиной 128 бит? похоже, что вы каким-то образом создали секрет на 512 бит. не уверен, сможет ли код справиться с этим. также, возможно, используйте более сильную криптограмму, такую как hmac_sha512, тогда бит будет соответствовать (и работает с bind9). Кстати, https://nsupdate.info/ вам интересно. –