[FUG-BR] SSH não conecta

Paulo Pires pappires em gmail.com
Sexta Janeiro 5 03:49:47 BRST 2007


On 1/3/07, Mirela Lisboa <mirlisboa at gmail.com> wrote:
> Oi Paulo,
>
> bem vamos lá.....
>
> Primeiro gostaria de fazer um adendo: Agora ele conecta, mas é lento a
> pampas... :-(
>
> A topologia da rede é 192.168.1.0/28
> O Gateway é 192.168.1.1 (D-Link)
> O Servidor freebsd é 192.168.1.2
> Reservei os ips 192.168.1.8 ao 13 para o DHCP do D-Link
> No etc/hosts eu coloquei assim:
> ALL : 192.168.1.0/28 : allow   <-- depois que eu coloquei isso ele
> comecou a aceitar a conexão, mas continua lento.

Este tipo de configuração não deveria estar em /etc/hosts, mas sim em
/etc/hosts.allow.  Verifique.

>
> Eu ativei o nat no D-link, mas que eu saiba ele na verdade serve para
> acesso de fora da rede... me corriga se eu estiver errada..... e eu
> estou tentando acessar o servidor da própria rede, no caso o
> computador 192.168.1.3.

Você mesma pode constatar o que está havendo através de monitoração
nos pacotes de rede (no servidor FreeBSD, coloque um tcpdump rodando
durante uma tentativa da acesso via SSH).  Provavelmente o que você
vai ver é que após as primeiras trocas de pacotes da conexão SSH
(porta TCP 22), o FreeBSD vai tentar algumas consultas ao DNS (porta
UDP 53), perguntando sobre o nome ligado ao IP de origem do SSH (no
seu caso, 192.168.1.3), não apenas para colocar tal informação nos
logs, mas porque alguns tipos de autenticação do SSH podem necessitar
de tais informações.  Como as respostas demoram a chegar (ou nunca
chegam), após um timeout (que deve ser de cerca de dois minutos) o SSH
desiste da consulta, permitindo o acesso (se a conexão ainda não tiver
caído).

> Histórico.... Antes eu estava com o Modem da Velox roteado e tudo
> funcionava que era uma beleza, depois que eu retonei ele para brigde e
> coloquei o D-Link é que o acesso ao servidor FreeBSD ficou lento, o
> resto está funcionado perfeitamente.
>
> Eu estou desconfiada de uma coisa, mas gostaria que você me
> ajudasse.... Antes, com o modem como roteado, eu colocava no DNS o ip
> do roteador (Modem velox), e mantive essa configuração com o D-Link,
> ou seja todo mundo aponta para o D-Link como servidor de DNS, pode ser
> isso? Mas se for isso, o D-Link não consegue resolver nem os ip da
> própria rede? Desculpe a ignorancia mas estou confusa.

Como você não mexeu na configuração do SSH, mas apenas na topologia da
rede, é razoável pensar que o comportamento dele não mudou.  Antes,
quando o modem se conectava ao Velox, ele obtinha um endereço IP e
quais servidores de DNS *externos* ele deveria consultar (mesmo quando
uma máquina interna pergunta ao modem, ele reencaminha a consulta).
Com o roteador D-Link, o que acontece deve ser parecido com o que
ocorria antes.

O problema é o que acontece quando uma máquina (no caso, o FreeBSD,
que acredito que esteja usando o roteador D-Link como servidor DNS,
assim como as estações) pergunta a respeito de um endereço que está na
rede interna.  Se o roteador repassar a consulta para fora, você
deveria receber uma resposta negativa do DNS (pois não faz sentido
falar em 192.168/16 na Internet, apenas em redes internas), e a
resposta negativa provavelmente seria suficiente para o SSH decidir se
deixa você entrar ou se derruba a conexão, sem grande demora.

A demora deve estar ocorrendo porque nunca chega uma resposta, nem
negativa nem, muito menos, positiva.  Pode ser que isto ocorra porque
o roteador reconhece que é um endereço interno e decide não
reencaminhar, mas seria bom ver na documentação como é o comportamento
do servidor de DNS do roteador -- até porque as máquinas Windows, após
se registrarem no DHCP, provavelmente fazem um "upload" de seus nomes
no DNS dinâmico no servidor informado pelo DHCP, que deve ser o
próprio roteador.

> Me disseram para habilitar o servidor de Dns de cache do Freebsd que
> resolvia o problema... só queria entender o porque, já que ele
> funcionava perfeitamente com o modem roteado, sem o Dns de cache
> habilitado. Isso pode até funcionar, mas não vai me tirar da minha
> ignorância, gostaria de entender o porque. :-)

Possivelmente o comportamento do DNS interno do modem e do roteador
tem alguma diferença.

Eu vi que outras pessoas já lhe sugeriram desabilitar consultas ao DNS
na configuração do SSH.  Isso deve bastar para resolver o problema de
lentidão do SSH, mas é possível que outras aplicações ainda apresentem
problemas.  Eu costumo trabalhar sempre com resolução de nomes
funcionando.  Se não der para configurar um servidor DNS decente (seu
FreeBSD realmente poderia ser usado para este fim), pelo menos populo
o /etc/hosts (ou \WINDOWS\system32\drivers\etc\hosts) com os endereços
usados mais freqüentemente.

-- 
Um abraço.
        Paulo A. P. Pires

... Qui habet aurem audiat quid Spiritus dicat ecclesiis.


Mais detalhes sobre a lista de discussão freebsd