Essa pode ser uma pergunta simples, mas como li informações contraditórias de vários recursos (o que? Contradições na internet?), Queria saber se fiz tudo o que deveria.
Então, eu quero configurar uma conexão SSH com o meu RasPi para que eu possa acessá-lo pela Internet.
- Comecei ativando o SSH no Pi, executando o Raspbian, usando a
raspi-config
ferramenta - Em seguida, instalei o cliente no-ip.com no meu Pi para ter um nome de host apontando para o meu endereço IP dinâmico.
- Procurei meu ip da LAN na minha framboesa usando
ifconfig
- Finalmente, no utilitário de configuração do meu roteador, em encaminhamento de porta, ativei o encaminhamento da porta 22 no TCP e UDP para o ip local do meu pi.
Depois disso, eu não consigo SSH para o meu pi via internet. Funciona quando tento conectar- me dentro da minha LAN usando meu IP local, mas não usando meu nome de host ou endereço IP da Internet. Eu também tentei conectar de um local diferente e nada funciona.
Minha pergunta: estou perdendo alguma etapa? Existem arquivos de configuração que devo editar no meu pi para que tudo funcione?
iptables -L
seu Pi.Respostas:
Se você planeja conectar-se apenas ao seu Raspberry Pi via SSH pela Internet, provavelmente o ngrok.com pode atender seu problema da maneira mais confortável.
Encaminha sua porta (s) com algum tipo de túnel invertido e pode até ajudar a contornar firewalls ou restrições do seu ISP. Você precisa se registrar (gratuitamente) no site para encaminhar o tráfego TCP.
Eu não sou afiliado a este projeto de forma alguma; Eu apenas o usei para realizar a mesma idéia (no meu caso encaminhando um servidor OpenVPN) e até agora não encontrei nenhum problema.
fonte
Parte do seu problema pode ser que, porque o Pi está usando um IP dinâmico do DHCP no seu roteador, o encaminhamento de porta configurado não está funcionando, pois o IP local do Pi mudou.
A maneira mais simples de corrigir isso (pelo menos que eu já vi) é configurar um IP estático. É relativamente simples, desde que você não se importe em mexer em um arquivo de configuração. Você pode ler um pouco mais em profundidade aqui e aqui . Também vou explicar a maneira simples abaixo:
Conecte-se ao seu Pi via SSH em sua rede doméstica ou por uma tela, ou funciona.
Pegue uma caneta e um pouco de papel, você escreverá algumas informações.
Execute o comando
ifconfig
. Sei que você já o executou, mas precisamos coletar um pouco mais de informações que o seu IP local neste momento. Isso revela as informações do roteador, o bit que você deseja é após eth0 (a conexão ethernet). . . .Anote as seguintes informações ...
Obviamente, a sua informação será diferente a partir deste tutorial, por isso certifique-se de usar o seu informações do
ifconfig
comando executado no Pi.Agora corra
netstat -nr
ouroute -n
. Nós precisamos:Endereço 'Gateway' - 192.168.1.254 Endereço
'Destination' - 192.168.1.0
Agora que temos essas informações, podemos editar o arquivo de interfaces para configurar o IP dinâmico. Corra
sudo nano /etc/network/interfaces
. Deve ser algo como isto:Mude a linha:
para
Em seguida, diretamente abaixo desta linha, digite o seguinte ( Observe. Você precisará de seus próprios endereços que reunimos acima ). . . .
Basicamente, a parte do endereço é o que você deseja que seu IP seja. Quanto maior, melhor, pois há menos chances de conflitos de IP. netmask - O endereço 'Mask' que escrevemos anteriormente.
rede - O endereço IP do roteador, este é o endereço 'Destino' encontrado anteriormente. Você também pode tirar isso do seu roteador, deve dizer do lado em algum lugar.
broadcast - O endereço 'Bcast' que escrevemos anteriormente.
Gateway - Este é o endereço 'gateway' encontramos anteriormente.
Pressione Ctrl+ Oe ou Enterou Ye depois Enter. Depois de fazer isso, pressione Ctrl+ X.
Execute
sudo reboot
e seu IP deve estar no lugar! Efetue login novamente e execute oifconfig
comando novamente, e deve ficar assim agora:Em seguida, configure o encaminhamento da porta para o seu novo IP estático e tudo funcionará! Melhor da sorte!
fonte
A única coisa que você parece ter configurado incorretamente é que o SSH é um protocolo somente TCP, portanto, não é necessário encaminhar o tráfego UDP na porta 22.
Agora, o motivo pelo qual ele não parece funcionar é provavelmente porque seu roteador não suporta loopback NAT . O que isso significa é que as regras NAT (como a de encaminhamento) não se aplicam quando a origem da conexão é da sua LAN interna. Nem todos os roteadores têm esse recurso ativado. Portanto, se o seu roteador não suportar loopback NAT, você não poderá se conectar ao seu RPi usando SSH ao usar o nome de domínio no-ip.com e ao fazê-lo na sua LAN .
Para tentar se sua configuração está funcionando, se você possui um smartphone com alguma conexão de dados (3G, LTE etc.) e se há um cliente ssh, tente conectar-se ao seu RPi usando o plano de dados e não a sua conexão WiFi. Se você não possui um cliente ssh e tem permissão para fazer o compartilhamento, use o smartphone junto com um de seu computador desconectando-o da rede local e usando o link de compartilhamento.
fonte
Tente usar um nome de domínio livre, por exemplo co.cc ou similar, e freeDNS (eles também fornecer uma grande variedade de subdomínios) para apontar para o seu router. Eu acho que você também pode obter um script de atualização caso o seu roteador tenha um IP dinâmico.
Se isso não funcionar, talvez as configurações do seu encaminhamento de porta estejam incorretas? Que tipo de roteador você tem?
fonte
Try using a free domain name...
Ele fez isso, é isso que o cliente no-ip é. É muito mais simples do que ter que mexer com DNS e roteadores manuais.Eu tenho essa situação aqui na Finlândia: o rpi está conectado ao roteador wifi móvel, huawei e5776, e quero conectar-me ao rpi com SSH pela internet, sem sucesso até agora e, finalmente, sei que é meu provedor de serviços de Internet que está bloqueando as conexões bidirecionais para clientes de banda larga móvel. O tráfego bidirecional para eles é um serviço extra (pelo qual você deve pagar) chamado de portão aberto pelo meu ISP. Então vá ao seu próprio site de ISPs para ver se é esse o caso.
fonte
O Slubbix apontou para um possível problema de que o endereço IP local do Raspberry Pi não foi corrigido. Isso tornaria a porta encaminhada no seu roteador não confiável. Por padrão, o Raspberry Pi está configurado para usar o DHCP. Isso significa que o IP é fornecido pelo roteador. Esse IP por padrão também não é fixo.
Uma solução para esse problema já é indicada pelo Slubbix : corrigir o IP do Raspberry Pi.
Na minha opinião, isso tem duas desvantagens: não há uma lista global de IPs em sua rede que seja facilmente mantida e você não pode usar o Raspberry Pi em outra rede (IP já em uso ou submascarada diferente).
Portanto, proponho o seguinte: configure seu roteador para atribuir um IP fixo ao endereço MAC do seu Raspberry Pi. O endereço MAC pode ser encontrado usando o comando
ifconfig
fonte
O endereço IP local do seu Raspberry Pi não é fixo, a menos que você esteja usando um adaptador sem fio para conectar-se, o que manterá seu endereço IP. Se você deseja usar o SSH para o RPI, pode seguir estas etapas:
Encontrei estes passos daqui e eles trabalharam para mim
Aqui está outra maneira de usar o SSH:
Encontrei estas instruções a partir daqui
fonte
Uma coisa que notei na minha Internet é que, quando eu encaminhava meu servidor da Web e tentava me conectar a ele usando meu IP público, ele dizia que não estava disponível, mas quando conecto a ele no meu telefone ou na rede da minha escola Eu sou capaz de conectar a ele, também uma coisa que você pode tentar fazer é acessar o google e digitar "IP" na barra de pesquisa, copiar o ip que ele fornece e, em seguida, acessar o google tradutor e colar no seu ip, e em seguida, clique no endereço IP azul na janela da direita e isso deve mostrar se você encaminhar com êxito o servidor da web.
fonte
Para permitir o tráfego de entrada na porta SSH padrão (22), você pode dizer ao iptables para permitir a entrada de todo o tráfego TCP nessa porta.
Voltando à lista acima, você pode ver que isso diz ao iptables:
-A INPUT
), para ver o tráfego recebido-p tcp
).--dport ssh
).-j ACCEPT
).Espero que isso funcione para você também, você pode adicionar as portas ftp que são 20-21, basta alterar o
ssh
para20
e21
.fonte
Não tenho certeza se esta pergunta precisa de respostas adicionais, mas é bastante simples.
Instale o OpenSSH ou ative-o em
raspi-config
Vá para a página inicial do seu roteador / firewalls no meu caso 192.168.1.1
Procure o encaminhamento de porta ou servidores virtuais e adicione algo como o seguinte:
Início da porta externa: 1234 Fim da porta externa: 1234
Início e fim da porta interna 22.
IP do servidor é o IP estático do seu RPi no meu caso 192.168.1.50
Quando tudo estiver configurado no lado do roteador, anote seu IP da WAN pesquisando seu IP no Google.
Agora você deve poder fazer o SSH para o pi pela internet. No meu caso, estou usando um Chromebook e o shell seguro é adicionado. Eu digito o nome de usuário no meu caso
pi@mywanip
e a porta 1234.Basicamente, a regra do firewall na etapa 3 encaminha todo o tráfego na porta 1234 da WAN IP para a porta 22 da LAN interna.
fonte
Eu lutei bastante com a configuração do SSH via internet até encontrar esse método simples:
http://raspctl.com
Basta registrar e copiar e colar os comandos. Você pode precisar editar um arquivo de configuração, mas é isso. Eu testei hoje e funciona como charme. Também tentei com diferentes aplicativos para Android SSH.
fonte