Я не уверен, почему он не запускается или почему он мешает мне подключиться, я получаю эту ошибку:
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.
По совету #amrith я запустил sshd -t, который показал, что ключ не был сгенерирован. Я сгенерировал это с помощью ssh-keygen -A по совету, данному в этом Форум затем запуск systemctl status показал, что я все еще не запускаю демон. Я прикрепил ошибку ниже, к сожалению, я не знаю, но повторный запуск sshd -t теперь не дает никаких сообщений.
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.
Попробуйте sshd
тестовый режим. Это может указать вам причину неудачи:
$ sshd -t
См. Документацию по режиму тестирования. Вот.
Проблема в нашем случае заключалась в том, что мы использовали нестандартный порт для SSH. SELinux может ограничивать, какие порты могут использоваться службой. Видимо иногда путается и забывает, что мы разрешили этот порт?
Нам пришлось выполнить следующую команду, чтобы добавить наш порт (22222) в список доступных портов.
semanage port -a -t ssh_port_t -p tcp 22222
Ссылка: http://sharadchhetri.com/2014/10/15/centos-7-rhel-7-change-openssh-port-number-selinux-enabled/
Что ж, если вы измените номер порта SSH, вам нужно будет сделать еще кое-что в CentOS 7.
Изменить файл ssdh_config редактирования порта SSH
vi /etc/ssh/sshd_config
Например, измените на: Порт 2323
В SELINUX разрешен только порт 22 для ssh. Добавьте новый контекст порта 2323. Если вы еще не установили, сделайте следующее
yum -y install policycoreutils-python
semanage port -a -t ssh_port_t -p tcp 2323
Проверьте контекст порта для ssh
semanage port -l | grep ssh
Перезапустить службу SSHD
systemctl restart sshd.service
Добавьте порт в брандмауэр
firewall-cmd --permanent --zone=public --add-port=2323/tcp
Перезагрузить брандмауэр
firewall-cmd --reload
Проверить прослушивание
ss -tnlp|grep ssh
Попробуйте снова подключиться через ssh
ssh root@<ipaddr> -p 2323
У меня тоже была эта проблема, но я ее решил. Моя конфигурация ниже.
PermitRootLogin no
port 22
MaxAuthTries 3
MaxSessions 2
AllowUsers ravikanth
AddressFamily any
ListenAddress 192.168.1.23
Служба не запустилась, поэтому я закомментировал последнюю строку (#ListenAddress 192.168.1.23
), то мой сервер успешно запустился.
Примечание. Я отключил брандмауэр (iptables) и SELinux.
Вы можете попробовать использовать следующую настройку:
RestartSec=5s
Это заставит ваше приложение спать на 5 секунд до попытки перезапуска. Очевидно, вы можете варьировать количество настроек.
Видеть Вот для подробностей:
Cannot bind any address
Если он пытается выполнить привязку к порту (например, по умолчанию: 22) ниже 1024, ему необходимы привилегии root для этого. Вы бежали service sshd start
или что-то подобное как root? Попробуйте отредактировать файл конфигурации sshd.conf, установите адрес привязки на порт больше 1024 (например, 1122) и запустите его как простой пользователь!
У меня была та же проблема, и самым простым решением, которое я нашел, было удалить openssh
и установите его снова.
yum remove openssh
а потом:
yum install openssh openssh-server openssh-clients
тогда вы можете начать sshd
служба:
service sshd start
Просто следуй за этим,
mkdir -p /var/run/sshd
и
/usr/sbin/sshd -ddd
Это должно решить вашу проблему.
У меня была такая же проблема. Просто отключил SELinux!