권한 및 연결 실패 오류로 인해 이름이 실패했습니다.

권한 및 연결 실패 오류로 인해 이름이 실패했습니다.

서버가 다운되는 심각한 문제에 직면했습니다.

로그에서 발견된 문제를 해결하기 위해 최선을 다했음에도 불구하고 알 수 없는 이유로 명명된 항목이 더 이상 작동하지 않습니다.

실행하려고 할 때마다 이 오류가 발생합니다.재구축 구성(c패널)

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

그리고 이름이 지정된 상태를 확인하면 다음과 같습니다.

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

이것은 내 /var/log/messages 꼬리입니다.

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

내 명명된.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

내 이름이 지정된 폴더 권한:

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. 세리눅스

댓글로 이러한 이론을 테스트할 수 있는 방법에 대한 제안.

명명된.conf에서 pid 파일의 위치를 ​​변경하면 문제가 해결되었으므로 /var/run 아래의 폴더 권한에 문제가 있는 것 같습니다.

관련 정보