Назад | Перейти на главную страницу

Служба sshd не запускается

Я не уверен, почему он не запускается или почему он мешает мне подключиться, я получаю эту ошибку:

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!