Je ne sais pas pourquoi il ne démarre pas ou pourquoi cela m'empêche de me connecter, j'obtiens cette erreur:
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.
Sur les conseils de #amrith, j'ai exécuté sshd -t qui a indiqué que la clé n'avait pas été générée. J'ai généré cela en utilisant ssh-keygen -A sur les conseils donnés dans ce forum puis l'exécution de status systemctl a montré que je n'exécutais toujours pas le démon. J'ai joint l'erreur ci-dessous, malheureusement, je ne sais pas ho La relance de sshd -t ne donne aucun message maintenant.
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.
Essayez sshd -t (le mode de test sshd). Cela peut vous indiquer une raison d'échec.
Reportez-vous à la documentation du mode test ici .
Le problème, dans notre cas, était que nous utilisons un port non standard pour SSH. SELinux peut restreindre les ports pouvant être utilisés par un service. Apparemment, cela devient parfois confus et oublie que nous avions autorisé ce port?
Nous avons dû émettre la commande suivante pour ajouter notre port (22222) à la liste des ports disponibles
semanage port -a -t ssh_port_t -p tcp 22222
Référence: http://sharadchhetri.com/2014/10/15/centos-7-rhel-7-change-openssh-port-number-selinux-enabled/
Eh bien, si vous changez le numéro de port SSH, vous devez faire plus de choses dans CentOS 7.
Modifier le fichier ssdh_config d'édition du port SSH
vi /etc/ssh/sshd_config
Par exemple, changez en: Port 232
SELINUX autorise uniquement le port 22 pour ssh. Ajouter un nouveau contexte de port 2323. Si vous ne l'avez pas installé, procédez comme suit
yum -y install policycoreutils-python
semanage port -a -t ssh_port_t -p tcp 2323
Vérifiez le contexte du port pour ssh
semanage port -l | grep ssh
Redémarrez le service SSHD
systemctl restart sshd.service
Ajouter le port au pare-feu
firewall-cmd --permanent --zone=public --add-port=2323/tcp
Recharger le pare-feu
firewall-cmd --reload
Vérifier l'écoute
ss -tnlp|grep ssh
Essayez de vous reconnecter via ssh
ssh root@<ipaddr> -p 2323
J'ai également eu ce problème mais je l'ai résolu. Ma configuration est ci-dessous.
PermitRootLogin no
port 22
MaxAuthTries 3
MaxSessions 2
AllowUsers ravikanth
AddressFamily any
ListenAddress 192.168.1.23
Le service n'a pas pu démarrer, je viens donc de commenter la dernière ligne (#ListenAddress 192.168.1.23
) puis mon serveur a démarré avec succès.
Remarque: j'ai désactivé le pare-feu (iptables) et SELinux.
Vous pouvez essayer d'utiliser le paramètre suivant:
RestartSec=5s
Cela forcerait votre application à s'endormir pendant 5 secondes avant une tentative de redémarrage. Vous pouvez évidemment faire varier le nombre de paramètres.
Voir ici pour plus de détails:
J'ai eu le même problème et la solution la plus simple que j'ai trouvée a été de supprimer openssh
et de le réinstaller.
yum remove openssh
et alors:
yum install openssh openssh-server openssh-clients
alors vous pouvez démarrer le service sshd
:
service sshd start
Cannot bind any address
S'il essaie de se lier à un port (par exemple, par défaut: 22) en dessous de 1024, il a besoin du privilège root pour le faire. Avez-vous exécutez service sshd start
ou quelque chose comme ça en tant que root? Essayez de modifier le fichier de configuration sshd.conf, définissez l'adresse de liaison sur un port supérieur à 1024 (par exemple 1122) et exécutez-le en tant qu'utilisateur simple!
Suivez juste ceci,
mkdir -p /var/run/sshd
et
/usr/sbin/sshd -ddd
Cela devrait résoudre votre problème.