As outras respostas parecem ter esquecido uma coisa na sua pergunta:
Once that happens, I'm no longer able to connect remotely even using the new IP address
O DDNS ajudará você a descobrir o novo endereço IP, mas esse não parece ser o problema aqui.
Infelizmente, o servidor que está obtendo um novo IP não deve ser um problema na configuração padrão em que o ISP fornece um roteador, o servidor tem um endereço interno atrás do roteador e o roteador faz a porta encaminhamento. Pode ser necessário fornecer mais informações sobre a topologia da rede para obter uma boa resposta.
O que eu posso imaginar é o servidor não estar atrás de um roteador e fazer sua própria conexão PPPoE, e a) a ligação do servidor ssh ao endereço da interface específica no ponto de reinicialização do servidor, b) um firewall na máquina que permite ssh de entrada para apenas o IP do servidor com o firewall não atualizando quando o IP muda.
Para verificar o primeiro caso, faça um netstat -nta | grep -w 22 | grep LISTEN
. Se ele diz 0.0.0.0:22, tudo bem; se ele listar um IP específico, verifique o arquivo de configuração sshd ( /etc/sshd.conf
) para ListenAddress
.
Para verificar o segundo caso, faça iptables -L -n
e verifique se uma das regras na cadeia INCOMING
corresponde ao IP e à porta 22 do seu servidor.
Se um deles tiver o endereço do servidor atual, você precisará alterá-lo para 0.0.0.0 (verifique se sabe as implicações de segurança) ou atualize a regra / configuração sempre que o IP for alterado.
Editar
Como o servidor está atrás de um roteador, as idéias acima provavelmente não se aplicam (*). Nesta configuração, o roteador tem um IP externo (que muda diariamente), e seus dispositivos internos devem ter alguns endereços 10.x.y.z ou 192.168.x.y que não devem mudar. Você se conecta ao endereço externo e o roteador deve encaminhar uma regra de encaminhamento de porta para o endereço interno.
Este encaminhamento de porta não deve quebrar quando o IP externo muda (conexões ssh existentes serão descartadas), mas talvez é uma regra que não foi configurada por você, mas por alguma mágica UPNP , com o roteador removendo o UPNP para frente quando ele recebe um novo endereço, e o sshd apenas invocando a regra quando ela é reiniciada. Você configurou um encaminhador de porta no próprio roteador?
Ou é o IP interno do servidor que é alterado - nesse caso, algo está seriamente comprometido com o seu DHCP. Dê ao seu servidor um endereço interno fixo.
Ou você está usando o IPV6? Existem algumas configurações em que um dispositivo continua mudando seu IP para torná-lo menos fácil de rastrear. Veja, por exemplo, link - mas, nesse caso, que vergonha por não mencioná-lo no seu post original. Isso pode significar que seu roteador não está fazendo NAT, e minhas ideias originais ainda são válidas mesmo atrás de um roteador.