O mapeamento reverso do SSHD falha, mas nslookup, dig e host resolvem corretamente

0

Acabei de configurar um servidor dhcp / dns para gerenciar minha rede doméstica. Depois que eu coloquei tudo em funcionamento (e talvez antes - eu não estava prestando muita atenção), notei que o login no ssh era lento. Eu iniciei o sshd no modo de depuração com /sbin/sshd -ddd e iniciei uma segunda instância do PuTTy.

É claro que o culpado ficou imediatamente óbvio:

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!

Não foi possível inverter o mapeamento do meu IP para o meu nome de host. O que é peculiar, considerando que os registros DNS estão todos em ordem de acordo com o 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

host:

[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.

e dig:

[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

E, por questão de verbosidade, meu /etc/resolv.conf :

search local
nameserver 10.0.0.2

Não consigo encontrar nenhum motivo para o mapeamento reverso falhar. E não consigo encontrar nenhum motivo para que ele demore tanto tempo antes de falhar - o servidor DNS está a apenas 0,5 ms de distância.

Sim, sei que posso desativar o mapeamento reverso, mas esse não é o ponto. Eu aprecio toda e qualquer ajuda!

Eu provavelmente deveria notar que isso está em uma rede 10.0.0.0/24; modem / gateway está em 10.0.0.1; dns / dhcp / a caixa que estou falando (mídia) está em 10.0.0.2; e minha área de trabalho (mt) está em 10.0.0.22. O domínio local é .local e tenho um mapeamento DNS reverso vinculado ao DHCP.

    
por Chris 16.07.2014 / 05:12

2 respostas

0

O problema acabou por ser simples e estúpido, e foi causado por erro do operador. Aparentemente, na minha sabedoria infinita, eu tinha a seguinte configuração (no meu dhcpd.conf) para a concessão estática para mt:

host mightyturing {
     hardware ethernet <MAC>;
     option host-name "mightyturing";
     ddns-hostname "mt";
     fixed-address 10.0.0.22;
};

Portanto, o SSHD estava certo - o mapa inverso não corresponde ao nome do host definido. Alterar o ddns-hostname para "mightyturing" corrigiu-o. Alterar option host-name para mt provavelmente teria funcionado bem.

Pelo menos, eu acho que esse era o problema ... ele parou de funcionar depois de consertar a configuração do dhcp e renovar meu IP.

Independente disso, agradeço a todos pelo seu tempo:)

    
por 16.07.2014 / 22:36
2

.local é geralmente considerado um domínio 'especial'. avahi / bonjour / mdns etc usá-lo como o nome de domínio, e enquanto você não diz o que você está usando para servir DNS, eu acho que não é avahi.

Como é a linha 'hosts' no /etc/nsswitch.conf?

nslookup, host e dig estarão usando seus resolvedores configurados, no entanto o ssh usará o nsswitch.conf, que lhe dará uma lista de opções a serem percorridas. Uma dessas opções pode ser mdns ou mdns4, por exemplo:

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4 mdns

Eu sugiro que você mude seu nome de domínio local para algo diferente de .local, ou remova qualquer entrada mdns * dos hosts: line in nsswitch.conf, por exemplo:

hosts:          files dns
    
por 16.07.2014 / 08:37

Tags