установка связывает для работы с nsupdate (SERVFAIL)

Возможно, это добилось бы цели?

RewriteCond  %{REQUEST_URI}  !^/index\.php
RewriteRule  ^/(.*)/?$       /index.php/$1  [L]
5
задан 6 August 2012 в 18:29
4 ответа

У меня было почти такая же проблема на сервере Ubuntu, и оказалось, что это две проблемы:

(1) apparmor

Я не знаю, верно ли то же самое для Debian, но в Ubuntu bind9 запускается с включенным apparmor. Это означает, что разрешено писать только в определенные места. Эти места перечислены в /etc/apparmor.d/usr.sbin. named , и обычно рекомендуется оставаться в этих каталогах. Вы можете установить пакет apparmor-utils и (временно) отключить apparmor для привязки, чтобы проверить, не вызывает ли это ваша проблема:

sudo aa-status

должен отображать / usr / sbin / named в списке армированных профилей. Затем запустите

sudo aa-complain /usr/sbin/named

, чтобы перевести его в режим жалобы.

(2) файл зоны

Это почти не упоминается в руководстве / учебнике, но bind9 ожидает, что (ранее) существующий файл зоны будет работать правильно. Ошибка конца файла может быть вызвана тем, что файл зоны еще не существует ( /etc/bind/primary/example.com и / etc / bind /primary/sub.example.com в вашем примере). Вы можете просто создать его следующим образом:

echo "; DO NOT EDIT MANUALLY - use the \"nsupdate\" utility to prevent data loss
;
\$ORIGIN example.com.
\$TTL 86400  ; 1 day
@    IN SOA  ns1.example.com. hostmaster.example.com. (
       2009074711 ; serial
       7200       ; refresh (2 hours)
       300        ; retry (5 minutes)
       604800     ; expire (1 week)
       60         ; minimum (1 minute)
       )
   IN  NS  ns1.example.com.
ns1    IN  A  <IP of your bind server>" | sudo -u bind tee /etc/bind/primary/example.com
5
ответ дан 3 December 2019 в 01:10

См. Раздел в nsupdate

   With the -k option, nsupdate reads the shared secret from the file
   keyfile. Keyfiles may be in two formats: a single file containing a
   named.conf-format key statement, which may be generated automatically
   by ddns-confgen, or a pair of files whose names are of the format
   K{name}.+157.+{random}.key and K{name}.+157.+{random}.private, which
   can be generated by dnssec-keygen. The -k may also be used to specify a
   SIG(0) key used to authenticate Dynamic DNS update requests. In this
   case, the key specified is not an HMAC-MD5 key.

Так что, если вы переформатируете его в форму

key sub.example.com. {
        algorithm HMAC-MD5;
        secret "xxxx xxxx";
};

и оставите в файле, он будет работать, или, как вариант, -k K { name}. + 157. + {random}. *

1
ответ дан 3 December 2019 в 01:10

Для обновлений dyndns BIND должен иметь возможность записи в папки, используемые зонами. Мне кажется, что / etc - неподходящее место для хранения такой информации, и просмотр ваших разрешений и т. Д. Недоступен для записи с помощью bind.

Я предлагаю попробовать каталог / var / bind, чтобы bind мог писать в это.

0
ответ дан 3 December 2019 в 01:10

У меня были очень похожие проблемы, пока я не изменил место хранения файлов зоны.

У Bind было разрешение на запись в / var / cache / bind , но ваши файлы зон хранятся в / etc / bind / ... . Bind в настоящее время не имеет разрешения на запись в файлы в / etc / bind / ... , поэтому вам нужно будет обновить разрешения Bind или сохранить файлы зоны в каталоге, где Bind имеет соответствующие разрешения. Я расскажу о простых шагах по перемещению файлов зоны в каталог, рекомендованный для динамических зон ( / var / lib / bind / ).

  1. Переместите файлы зоны с помощью mv ( скорее всего, необходимо выполнить как root)

     mv /etc/bind/primary/example.com / var / lib / bind / primary /
    mv /etc/bind/primary/sub.example.com / var / lib / bind / primary /
     
  2. Обновите путь к файлу в конфигурациях named.conf . В вашем случае это означает обновление /etc/bind/ named.conf.local

     зоны "example.com" {
      тип мастер;
      файл "/var/lib/bind/primary/example.com";  // эта строка изменилась
      // прочее удалено для ясности
     };
    
    зона "sub.example.com" {
      тип мастер;
      файл "/var/lib/bind/primary/sub.example.com";// эта строка изменилась
      // прочее удалено для ясности
     };
     
  3. Перезапустите Bind с помощью service bind9 restart

4
ответ дан 3 December 2019 в 01:10

Теги

Похожие вопросы