Имя не удалось из-за разрешений и ошибки подключения

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

По какой-то неизвестной причине named больше не работает, несмотря на все мои усилия по устранению проблем, обнаруженных в журналах.

Я получаю эту ошибку всякий раз, когда я пытаюсь запустить rebuilddnsconfig (cpanel)

warn [fixrndc] /usr/sbin/rndc status failed: rndc: connect failed: 127.0.0.1#953: connection refused

И когда я проверяю статус named:

root@host [/etc]# /etc/init.d/named status
rndc: connect failed: 127.0.0.1#953: connection refused

Это мой /var/log/messages tail

root@host [/etc]# tail /var/log/messages
Nov 24 22:32:25 host named[21687]: listening on IPv4 interface eth1, 108.xx.18.18#53
Nov 24 22:32:25 host named[21687]: listening on IPv4 interface eth1:cp1, 108.xx.18.19#53
Nov 24 22:32:25 host named[21687]: listening on IPv4 interface eth1:cp2, 108.xx.18.20#53
Nov 24 22:32:25 host named[21687]: listening on IPv4 interface eth1:cp3, 108.xx.18.21#53
Nov 24 22:32:25 host named[21687]: listening on IPv4 interface eth1:cp4, 108.xx.18.22#53
Nov 24 22:32:25 host named[21687]: listening on IPv4 interface eth1:cp5, 108.xx.18.23#53
Nov 24 22:32:25 host named[21687]: command channel listening on 127.0.0.1#953
Nov 24 22:32:25 host named[21687]: couldn't open pid file '/var/run/named/named.pid': Permission denied
Nov 24 22:32:25 host named[21687]: exiting (due to early fatal error)
Nov 24 22:32:25 host /etc/init.d/named: named startup succeeded

Мои конфиги имеют следующие разрешения:

root@host [/etc]# ls -lh | grep named.conf
-rw-r--r--  1 named root  4.9K Nov 24 22:11 named.conf

Мой named.conf имеет следующий код: (минус зоны)

include "/etc/rndc.key";

controls {
    inet 127.0.0.1 allow { localhost; } keys { "rndc-key"; };
};  

options {
    /* make named use port 53 for the source of all queries, to allow
         * firewalls to block all ports except 53:
         */

    // query-source    port 53;

    recursion no;

    /* We no longer enable this by default as the dns posion exploit
        has forced many providers to open up their firewalls a bit */

    // Put files that named is allowed to write in the data/ directory:
    directory                "/var/named"; // the default
    pid-file                 "/var/run/named/named.pid";
    dump-file                "data/cache_dump.db";
    statistics-file          "data/named_stats.txt";
   /* memstatistics-file     "data/named_mem_stats.txt"; */
    allow-transfer    { "none"; };
};

Разрешения на rndc:

root@host [/etc]# ls -lh | grep rndc
-rw-rw----  1 named named  479 Nov 24 21:29 rndc.conf
-rw-rw----  1 named named  479 Nov 24 21:16 rndc.conf.bak
-rw-rw----  1 named named   77 Nov 24 21:29 rndc.key

Моя именованная папка Permissions:

ls -lh /var/run/named/
total 8.0K
drwxrwxr-x  2 named named 4.0K Jan  7  2013 ./
drwxrwx--- 22 root  root  4.0K Nov 24 22:29 ../

Есть что-нибудь, что выделяется здесь?

Спасибо за вашу помощь!

1 ответ

Решение

Кажется очевидным, что (a) основная проблема с именованной невозможностью записи в файл pid. Возможности, которые приходят на ум,

  1. конфликтующие записи для указанного пользователя в файле passwd
  2. SELinux

Предложения о том, как вы можете проверить эти теории в комментариях.

Поскольку изменение местоположения pid-файла в named.conf исправило ситуацию, все еще кажется вероятным, что существует проблема с разрешениями для папки в /var/run.

Другие вопросы по тегам