SSH "conexão recusada" no Raspberry pi - não consegue descobrir por que

13

Eu tenho o seguinte problema SSH "conexão recusada". Funcionaria bem, mas enquanto eu estiver trabalhando no SSH, obteria "conexão recusada" e teria que me reconectar (o que não ocorre por 5 a 10 minutos). Eu tentei de tudo (reinicie o linux, reinicie o ssh), mas ainda não ajuda. Eu verifiquei var / log também, mas nada útil lá ...

NOTA: A observação interessante que encontrei é que, quando tento ssh no meu ip externo (277 ...), ele passa para a tela cmd preta, fecho-a e tento meu endereço 192.168.0.13 e me permite entrar .. mas curto enquanto, novamente a conexão recusada ... É claro que se eu abrir meu servidor e o sudo sshd restart, minha ssh "conexão recusada" desaparece ...

Minha porta ssh é aberta às 23, e eu também a configure no modem / roteador

sudpi@raspberrypi:~$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1817/apache2
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      2227/vsftpd
tcp        0      0 127.0.0.1:3350          0.0.0.0:*               LISTEN      1784/xrdp-sesman
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      3115/sshd
tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN      1781/xrdp
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2397/mysqld

Quando eu me desconecto, faço o login novamente e verifico "OMS", apenas vejo minha conexão anterior, minha raiz e a conexão atual

whopi@raspberrypi:~$ who  
pi       tty1         2013-01-28 09:20
pi       pts/0        2013-01-28 10:28 (192.168.0.12)
pi       pts/1        2013-01-28 10:32 (192.168.0.12)

Isto é o que eu tenho no meu ssh_config que eu modifiquei (SSH para 23 porque os rogers usam 22 ...)

#   Port 23
...    
#Keep my damn connection alive!
KeepAlive yes
ServerAliveInterval 60

É isso que recebo quando executo o arp-scan

pi@raspberrypi:/etc$ sudo arp-scan -I eth0 -l | grep 192.168.0.13
192.168.0.13    a0:6c:ec:ec:bb:5b       (Unknown)

Encontrei on-line esta parte que dizia que eu deveria postar as duas informações a seguir

pi@raspberrypi:~$ ps afxu | grep sshd
root      2838  0.0  0.7   9800  3168 ?        Ss   10:27   0:00 sshd: pi [priv]                                                                                   
pi        2845  0.0  0.3   9800  1628 ?        S    10:28   0:00  \_ sshd: pi@pt                                                                                   s/0
root      2854  0.0  0.7   9800  3168 ?        Ss   10:32   0:00 sshd: pi [priv]                                                                                   
pi        2861  0.0  0.3   9800  1628 ?        S    10:32   0:00  \_ sshd: pi@pt                                                                                   s/1
root      2900  0.3  0.7   9800  3168 ?        Ss   10:44   0:00 sshd: pi [priv]                                                                                   
pi        2907  0.0  0.3   9800  1628 ?        S    10:44   0:00  \_ sshd: pi@pt                                                                                   s/2
root      2934  0.0  0.2   6204  1060 ?        Ss   10:45   0:00 /usr/sbin/sshd
root      2954  0.7  0.7   9800  3164 ?        Ss   10:45   0:00  \_ sshd: pi [p                                                                                   riv]
pi        2961  0.1  0.3   9800  1624 ?        S    10:46   0:00      \_ sshd: p                                                                                   i@pts/3
pi        2970  0.0  0.1   3536   796 pts/3    S+   10:46   0:00              \_                                                                                    grep sshd

EDIT: pi @ raspberrypi: ~ $ ssh -vvv 192.168.0.13 (Isso pode demorar ... Obrigado Bart Friederichs)

pi@raspberrypi:~$ ssh -vvv 192.168.0.13 -p 23
OpenSSH_6.0p1 Debian-3, OpenSSL 1.0.1c 10 May 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.0.13 [192.168.0.13] port 23.
debug1: Connection established.
debug1: SELinux support disabled
...
debug1: match: OpenSSH_6.0p1 Debian-3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.0p1 Debian-3
debug2: fd 3 setting O_NONBLOCK
debug3: put_host_port: [192.168.0.13]:23
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
...
debug1: Next authentication method: publickey
debug1: Trying private key: /var/www/.ssh/id_rsa
debug3: no such identity: /var/www/.ssh/id_rsa
debug1: Trying private key: /var/www/.ssh/id_dsa
debug3: no such identity: /var/www/.ssh/id_dsa
debug1: Trying private key: /var/www/.ssh/id_ecdsa
debug3: no such identity: /var/www/.ssh/id_ecdsa
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
[email protected]'s password: - I TYPED PASSWORD -
...
debug2: channel_input_status_confirm: type 99 id 0
debug2: PTY allocation request accepted on channel 0
debug2: channel 0: rcvd adjust 2097152
debug2: channel_input_status_confirm: type 99 id 0
debug2: shell request accepted on channel 0
Linux raspberrypi 3.6.11+ #350 PREEMPT Mon Jan 7 21:51:11 GMT 2013 armv6l
user5673
fonte
Execute netstat -tlpncomo root (ou com sudo) se desejar ver os nomes dos programas / PIDs. Mover o SSH de sua porta padrão não parece ser uma boa idéia se você não estiver suficientemente familiarizado com a administração do Linux.
Bruno
1
As linhas iniciadas com # são comentários; portanto, na linha que você especificar a porta 23 que você possui #, ela não será processada e, portanto, usará a porta padrão (22). Você também pode ter algo em /etc/hosts.allow ou /etc/hosts.deny controlando quem pode se conectar ao sshd. Você verificou se não tem colisão com o endereço IP na sua rede?
Pipe

Respostas:

8

Você sshdestá ouvindo na porta 23, mas está se conectando à porta 22 (padrão do ssh).

Tente o seguinte:

  pi@raspberrypi:~$ ssh -vvv 192.168.0.13 -p 23

Um erro de "conexão recusada" significa que a camada TCP no kernel não está aceitando nenhuma conexão nessa porta. Não tem nada a ver com manter vivo ou algo assim.

Além disso, você está usando arppara descobrir coisas, mas seria uma ferramenta melhor nmap. arpinforma apenas se o IP está no seu domínio de broadcast, e não se alguma porta está aberta.

Bart Friederichs
fonte
Olá, obrigado pela sua resposta, tentei pi @ raspberrypi: ~ $ nmap -bash: nmap: comando não encontrado ... eu precisaria instalá-lo? e existe tal para framboesa? Igualmente obrigado pela correção, Eu editei com -p 23, mas Ele não tem qualquer coisa que parece fora do lugar ...
nmapnão é realmente necessário, apenas uma ferramenta útil. A atualização que você fez parece ter funcionado?
Bart Friederichs
5

Citando a documentação :

Desde a versão de novembro de 2016, o Raspbian tem o servidor SSH desativado por padrão. Você precisará habilitá-lo manualmente.

Para habilitar o SSH em máquinas por meio do console:

Entre sudo raspi-configno terminal, primeiro selecione advanced optionse depois navegue até ssh, pressione Entere selecione Enable or disable ssh server.

Para habilitar o SSH para máquinas sem cabeça:

Para configuração sem cabeça, o SSH pode ser ativado colocando um arquivo nomeado ssh, sem nenhuma extensão, na partição de inicialização do cartão SD.


Copie e cole da resposta de @techraf nesta pergunta relacionada: SSH não está funcionando com a instalação nova .

Delgan
fonte
Embora isso possa responder tecnicamente à pergunta, não tenho certeza se o techraf ficará feliz por você ter copiado e colado a resposta. No entanto, se você solicitasse a permissão deles antes de fazer esta postagem, isso seria diferente.
Darth Vader
1
Parte dos "termos de serviço" (seção 3) é que as contribuições aqui são consideradas como tendo uma licença Creative Commons Attribution ShareAlike , e essa reapropriação está dentro desses termos. No entanto, não há muita resposta aqui, pois é bastante claro na pergunta que sshdestá sendo executada, e o problema era anterior a 2016. #
goldilocks
@DarthVader Eu postei isso como uma resposta da comunidade, creditando corretamente o autor, achei que seria o suficiente.
Delgan
1
@goldilocks Como você deve ter adivinhado, esta pergunta está no topo dos resultados de pesquisa do Google sobre a conexão ssh recusada pelo Raspberry Pi. Eu acreditava que isso ajudaria as pessoas a descobrir mais rapidamente o que poderia ser o problema.
Delgan
No mais novo (Raspbian estiramento) de configuração SSH atual está localizado abaixo de 5) Opções de interface -> P2) SSH
R2RT
1

Eu tive o mesmo problema esta manhã e o corrigi removendo e instalando o openssh-server:

sudo apt-get remove openssh-server 
sudo apt-get install openssh-server
Brian Leung
fonte
Olá e bem-vindo ao Stack Exchange! Por favor, considere adicionar uma explicação mais aprofundada para o benefício de futuros leitores.
NULL
0

Eu tive o mesmo problema e minha solução foi desativar e desinstalar o iptables.

execute esses comandos:

(como sudoer)

iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT

sudo apt-get remove --purge iptables

Jibrilat
fonte
0

Para mim, o seguinte funcionou: foi para / etc / ssh / ssh_config e / etc / ssh / sshd_config e, em seguida, permitiu o acesso sem senha.

Reiniciou o serviço e pronto, funcionando!

Mário Coelho
fonte
0

Atualizando a resposta de Delgan para Raspberry pi 3, RASPBIAN JESSIE WITH PIXEL OS

No terminal

sudo raspi-config 

Selecione Opções de interface -> SSH. Pressione Enter e selecione Ativar ou desativar servidor ssh

user65260
fonte
0

Não tenho certeza se minha dica será útil. Eu tive o mesmo problema e sou novo no mundo linux. Depois de ler a documentação do Raspberry Pi, descobri que o problema estava na configuração do Pi, onde o SSH estava desativado.

Clique no menu Raspberry Pi -> Preferências -> Iniciar configuração do Raspberry Pi Navegue até a guia Interfaces Selecione Ativado ao lado de SSH Clique em OK. Isso resolveu meu problema. Por favor, tente e me avise.

JAYARAJ SIVADASAN
fonte
-1

com

sudpi@raspberrypi:~$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1817/apache2
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      2227/vsftpd
tcp        0      0 127.0.0.1:3350          0.0.0.0:*               LISTEN      1784/xrdp-sesman
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      3115/sshd
tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN      1781/xrdp
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2397/mysqld
user5673
fonte
É um bom começo para verificar qual é o problema, mas não o suficiente para responder à pergunta :-(
Morgan Courbet
-1

Eu tive o mesmo problema, mas foi resolvido depois que executei o comando

sudo apt-get remove --purge iptables. e desligando a conectividade sem fio.

user14634
fonte
-1

Existem 2 arquivos de configuração / etc / ssh / ssh_config e / etc / ssh / sshd_config

Mude a porta de 22 para o que você quiser nos dois arquivos.

reinicie o serviço sudo service ssh restart

Adão
fonte
Mas ... isso só funcionará se você estiver na mesma máquina. Qua seria o ponto disso?
Bex