Tente sshd -t (o modo de teste sshd). Pode indicar um motivo para o fracasso.
Consulte a documentação do modo de teste aqui .
Não sei por que não está começando ou porque está me impedindo de me conectar. Recebo este erro:
sshd.service - OpenSSH Daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled)
Active: failed (Result: start-limit) since Wed 2013-09-11 08:45:13 BST; 1min 21s ago
Process: 701 ExecStart=/usr/bin/sshd -D (code=exited, status=1/FAILURE)
Sep 11 08:45:13 alarmpi systemd[1]: sshd.service: main process exited, code=exited, status=1/FAILURE
Sep 11 08:45:13 alarmpi systemd[1]: Unit sshd.service entered failed state.
Sep 11 08:45:13 alarmpi systemd[1]: sshd.service holdoff time over, scheduling restart.
Sep 11 08:45:13 alarmpi systemd[1]: Stopping OpenSSH Daemon...
Sep 11 08:45:13 alarmpi systemd[1]: Starting OpenSSH Daemon...
Sep 11 08:45:13 alarmpi systemd[1]: sshd.service start request repeated too quickly, refusing to start.
Sep 11 08:45:13 alarmpi systemd[1]: Failed to start OpenSSH Daemon.
Sep 11 08:45:13 alarmpi systemd[1]: Unit sshd.service entered failed state.
Seguindo o conselho do #amrith, rodei o sshd -t, que indicava que a chave não havia sido gerada. Gerei isso usando o ssh-keygen -A seguindo o conselho dado neste fórum . Depois, a execução do status systemctl mostrou que Eu ainda não estou executando o Daemon. Eu anexei o erro abaixo, infelizmente eu não sei ho Re-running sshd -t não dá mensagens agora.
sshd.service - OpenSSH Daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled)
Active: inactive (dead)
Sep 11 12:04:42 alarmpi systemd[1]: Started OpenSSH Daemon.
Sep 11 12:04:42 alarmpi sshd[289]: fatal: Cannot bind any address.
Sep 11 12:04:42 alarmpi systemd[1]: sshd.service: main process exited, code=exited, status=255/n/a
Sep 11 12:04:42 alarmpi systemd[1]: Unit sshd.service entered failed state.
Sep 11 12:04:42 alarmpi systemd[1]: sshd.service holdoff time over, scheduling restart.
Sep 11 12:04:42 alarmpi systemd[1]: Stopping OpenSSH Daemon...
Sep 11 12:04:42 alarmpi systemd[1]: Starting OpenSSH Daemon...
Sep 11 12:04:42 alarmpi systemd[1]: sshd.service start request repeated too quickly, refusing to start.
Sep 11 12:04:42 alarmpi systemd[1]: Failed to start OpenSSH Daemon.
Sep 11 12:04:42 alarmpi systemd[1]: Unit sshd.service entered failed state.
Tente sshd -t (o modo de teste sshd). Pode indicar um motivo para o fracasso.
Consulte a documentação do modo de teste aqui .
O problema, no nosso caso, é que usamos uma porta não padrão para o SSH. O SELinux pode restringir quais portas podem ser usadas por um serviço. Aparentemente, fica confuso às vezes e esquece que tínhamos permitido essa porta?
Tivemos que emitir o seguinte comando para adicionar nossa porta (22222) à lista de portas disponíveis
semanage port -a -t ssh_port_t -p tcp 22222
Referência: link
Bem, se você alterar o número da porta SSH, precisará fazer mais algumas coisas no CentOS 7.
Altere o arquivo ssdh_config de edição da porta SSH
vi /etc/ssh/sshd_config
Por exemplo, mude para: Porta 2323
O SELINUX só permite a porta 22 para o ssh. Adicione novo contexto de porta 2323. Se você não tiver instalado, faça o seguinte
yum -y install policycoreutils-python
semanage port -a -t ssh_port_t -p tcp 2323
Verifique o contexto da porta para ssh
semanage port -l | grep ssh
Reinicie o serviço SSHD
systemctl restart sshd.service
Adicione a porta ao firewall
firewall-cmd --permanent --zone=public --add-port=2323/tcp
Recarregue o firewall
firewall-cmd --reload
Verifique a escuta
ss -tnlp|grep ssh
Tente conectar-se novamente pelo ssh
ssh root@<ipaddr> -p 2323
Eu também tive esse problema, mas resolvi isso. Minha configuração está abaixo.
PermitRootLogin no
port 22
MaxAuthTries 3
MaxSessions 2
AllowUsers ravikanth
AddressFamily any
ListenAddress 192.168.1.23
O serviço falhou ao iniciar, por isso acabei de comentar a última linha ( #ListenAddress 192.168.1.23
) e meu servidor foi iniciado com êxito.
Nota: Eu desliguei o firewall (iptables) e o SELinux.
Cannot bind any address
Se ele tentar se ligar a uma porta (por exemplo, por padrão: 22) abaixo de 1024, ele precisa de privilégios de root para fazer isso. Você rodou service sshd start
ou algo assim como root? Tente editar o arquivo de configuração sshd.conf, defina o endereço de ligação para uma porta maior que 1024 (por exemplo, 1122) e execute-o como um usuário simples!
Você pode tentar usar a seguinte configuração:
RestartSec=5s
Isso forçaria seu aplicativo a dormir por 5 segundos antes de uma tentativa de reinicialização. Você pode obviamente variar o número de configurações.
Veja aqui para detalhes:
Eu tive o mesmo problema e a solução mais fácil que obtive foi remover openssh
e instalá-lo novamente.
yum remove openssh
e depois:
yum install openssh openssh-server openssh-clients
então você pode iniciar sshd
service:
service sshd start
Eu tive o mesmo problema. Apenas desativou o SELinux!