방금 홈 네트워크를 관리하기 위해 dhcp / dns 서버를 설정했습니다. 모든 것을 준비하고 실행 한 후 (그리고 아마도주의를 기울이지 않았을 때) ssh에 로그인하는 것이 느리다는 것을 알았습니다. 디버그 모드에서 sshd를 시작 /sbin/sshd -ddd
하고 두 번째 PuTTy 인스턴스를 시작했습니다.
물론 범인은 즉시 분명해졌습니다.
debug3: Trying to reverse map address 10.0.0.22.
reverse mapping checking getaddrinfo for mt.local [10.0.0.22] failed - POSSIBLE BREAK-IN ATTEMPT!
내 IP를 내 호스트 이름으로 되돌릴 수 없습니다. DNS 레코드가 모두 nslookup에 따라 순서대로 정렬되었다는 점을 고려하면 특이합니다.
[root@media] # nslookup mt.local
Server: 10.0.0.2
Address: 10.0.0.2#53
Name: mt.local
Address: 10.0.0.22
[root@media] # nslookup 10.0.0.22
Server: 10.0.0.2
Address: 10.0.0.2#53
22.0.0.10.in-addr.arpa name = mt.local
숙주:
[root@media] # host mt.local
mt.local has address 10.0.0.22
[root@media] # host 10.0.0.22
22.0.0.10.in-addr.arpa domain name pointer mt.local.
발굴 :
[root@media] # dig mt.local
; <<>> DiG 9.9.4-P2-RedHat-9.9.4-12.P2.fc20 <<>> mt.local
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12144
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;mt.local. IN A
;; ANSWER SECTION:
mt.local. 300 IN A 10.0.0.22
;; AUTHORITY SECTION:
local. 300 IN NS media.local.
;; ADDITIONAL SECTION:
media.local. 300 IN A 10.0.0.2
;; Query time: 0 msec
;; SERVER: 10.0.0.2#53(10.0.0.2)
;; WHEN: Tue Jul 15 23:02:34 EDT 2014
;; MSG SIZE rcvd: 89
[root@media] # dig -x 10.0.0.22
; <<>> DiG 9.9.4-P2-RedHat-9.9.4-12.P2.fc20 <<>> -x 10.0.0.22
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5476
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;22.0.0.10.in-addr.arpa. IN PTR
;; ANSWER SECTION:
22.0.0.10.in-addr.arpa. 300 IN PTR mt.local.
;; AUTHORITY SECTION:
0.0.10.in-addr.arpa. 300 IN NS media.local.
;; ADDITIONAL SECTION:
media.local. 300 IN A 10.0.0.2
;; Query time: 1 msec
;; SERVER: 10.0.0.2#53(10.0.0.2)
;; WHEN: Tue Jul 15 23:03:59 EDT 2014
;; MSG SIZE rcvd: 109
그리고 자세한 설명을 위해 /etc/resolv.conf
:
search local
nameserver 10.0.0.2
역 매핑이 실패 해야하는 이유를 찾을 수 없습니다. 그리고 그것이 실패하기 오래 전에 중단 된 이유를 찾을 수 없습니다-DNS 서버는 0.5ms 떨어져 있습니다.
예, 역 매핑을 끌 수 있다는 것을 알고 있지만 실제로는 그렇지 않습니다. 모든 도움을 주셔서 감사합니다!
아마도 이것이 10.0.0.0/24 네트워크에 있다는 것을 알아야합니다. 모뎀 / 게이트웨이는 10.0.0.1입니다. dns / dhcp / 내가 말한 (미디어) 상자는 10.0.0.2입니다. 내 데스크탑 (mt)은 10.0.0.22입니다. 로컬 도메인은 .local이며 DHCP에 연결된 역방향 DNS 매핑이 있습니다.
답변
.local은 종종 ‘특별한’도메인으로 간주됩니다. avahi / bonjour / mdns 등은 도메인 이름으로 사용하며 DNS를 제공하는 데 사용하는 것을 말하지는 않지만 avahi가 아닌 것 같습니다.
/etc/nsswitch.conf의 ‘hosts’줄은 어떻게 생겼습니까?
nslookup, host 및 dig는 구성된 리졸버를 사용하지만 ssh는 nsswitch.conf를 사용하여 단계별 옵션 목록을 제공합니다. 이러한 옵션 중 하나는 mdns 또는 mdns4 일 수 있습니다. 예 :
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 mdns
로컬 도메인 이름을 .local 이외의 이름으로 변경하거나 호스트에서 mdns * 항목을 제거하는 것이 좋습니다. nsswitch.conf의 line : 예 :
hosts: files dns
답변
문제는 간단하고 어리석은 것으로 판명되었으며 운영자 오류로 인해 발생했습니다. 분명히, 무한한 지혜로, mt의 정적 임대에 대해 다음 구성 (dhcpd.conf에)이 있습니다.
host mightyturing {
hardware ethernet <MAC>;
option host-name "mightyturing";
ddns-hostname "mt";
fixed-address 10.0.0.22;
};
따라서 SSHD가 맞았습니다. 리버스 맵이 설정된 호스트 이름과 일치하지 않습니다. ddns-hostname
를 “mightyturing”으로 변경하면 문제가 해결 되었습니다. 변경 option host-name
하는 mt
아마 잘 작동 것입니다.
적어도, 나는 그것이 문제 라고 생각 합니다 … dhcp 구성을 수정하고 내 IP를 갱신 한 후에 중단되었습니다.
어쨌든 시간 내 주셔서 감사합니다 🙂