Como seguramente ssh em uma máquina em casa pela internet O

7

Eu estarei viajando em breve, e eu tenho uma máquina que roda um monte de tarefas agendadas, etc. Eu preciso logar remotamente para verificar os resultados das tarefas executadas e fazer algum trabalho na máquina.

Aqui estão os principais fatos:

  1. A máquina a ser conectada (mothership) está executando o Ubuntu 14.0.4 LTS
  2. A nave mãe está conectada à internet por meio de uma LAN em casa, então tem um endereço IP voltado para o público.
  3. O endereço IP é atribuído dinamicamente.
  4. Eu me conectarei à nave mãe usando um laptop com o Ubuntu 15.10

Eu prefiro usar o ssh ao invés do VNC, por causa dos problemas de largura de banda - mais, tudo que eu preciso é da linha de comando de qualquer maneira.

Qual é a melhor maneira de conectar-se remotamente à minha máquina?

    
por Homunculus Reticulli 20.03.2016 / 14:05

2 respostas

12

Sua melhor aposta é provavelmente executar um servidor SSH em uma porta não padrão, como 2020. Isso evita a maioria das tentativas de ataques de força bruta da Web, já que esses bots tendem a procurar apenas nas portas padrão.

Você também precisará atribuir ao servidor um endereço IP estático na LAN, pois ele precisa estar acessível o tempo todo. Você pode definir isso em System Settings --> Network . Para evitar conflitos de endereço IP, também é aconselhável que você informe ao seu servidor DHCP (o roteador na maioria dos casos) que esse endereço IP foi obtido. O método varia de acordo com o modelo, mas deve haver uma área em algum lugar na configuração do roteador que permita reservar endereços IP.

O motivo do IP estático é que você precisa configurar o encaminhamento de porta na configuração do roteador. Isso permite que as conexões da porta para o seu IP externo sejam roteadas para essa porta no seu servidor.

Se o seu endereço IP público é dinâmico, o que provavelmente é, você vai querer configurar algum tipo de serviço DNS dinâmico. Minha recomendação para este serviço é No-IP . Ele oferece um subdomínio gratuito que sempre aponta para o seu IP público. Esta configuração requer a instalação de um programa em uma máquina sempre ativa em sua LAN (chamada DUC, fornecida pelo No-IP).

Uma vez que você tenha o servidor SSH configurado como deseja, digite SSH nele inserindo

ssh user@remotehostip -p XXX

ou usando qualquer cliente SSH / SFTP de sua preferência.

Se alguma dessas seções precisar de instruções mais detalhadas, comente e eu as adicionarei.

Se alguém tiver problemas para seguir, aqui está uma sala de bate-papo com etapas adicionais / mais detalhadas: link

    
por TheWanderer 20.03.2016 / 14:25
1

Além da resposta do Zacharee1, você deve instalar o Fail2ban ou o DenyHosts (obter o .deb do repositório preciso). Você não deve autenticar com chaves se estiver viajando. Use uma senha "segura" também. Talvez configure uma conta de usuário dedicada com acesso reduzido nos horários em que você não precisa ser administrador.

Eu não tocaria nas configurações de rede no servidor, o IP estático pode ser atribuído a partir do roteador. O endereço IP do roteador deve ser o endereço "gateway" atribuído no DHCP. Nos casos em que não é (!) O endereço padrão deve ser escrito abaixo dele em algum lugar. Se você mudou isso, você deve ter deixado o último valor sozinho. Portanto, se você tiver uma rede doméstica de classe C, o endereço será a.b.c.x, onde a.b.c corresponde a todos os outros endereços IP e x é o valor final do adesivo do roteador. O ISP deve ter páginas de ajuda para isso em qualquer caso.

Quando você usa uma porta não padrão, evite '22' como os dígitos finais (digamos, 8122). Deixa pistas.

NB. você pode acessar aplicativos baseados em X em SSH sem VNC, outro tópico inteiramente.

    
por mckenzm 21.03.2016 / 03:13