Soru sshd servisi başlatılamıyor


Neden başlamadığını veya neden bağlanmamı engellediğinden emin değilim, bu hatayı alıyorum:

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'in tavsiyesi üzerine, anahtarın üretilmediğini belirten sshd -t'yi çalıştırdım. Bunu, verilen tavsiyede ssh-keygen -A kullanarak oluşturdum. forum daha sonra systemctl durumunu çalıştırmak, hala Daemon'u çalıştırdığımı gösterdi. Ben hatayı aşağıda ekledim, ne yazık ki bilemiyorum sshd -t şimdi tekrar mesaj atıyor.

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.

23
2017-09-11 10:22


Menşei




Cevaplar:


Sshd -t'yi deneyin (sshd test modu). Bu, başarısızlığın bir sebebine işaret edebilir.

Test modu belgelerine bakın İşte.


22
2017-09-11 10:45



Sshd hakkında hiçbir şey bilmiyordum. Anahtarlar olmadığını gördüm, bu yüzden yeniden başlatma ve yeniden başlatma üzerine bunları oluşturdum. - aCoolBean
Bu benim için çalıştı, "/ etc / ssh / sshd_config line 97: Bad SSH2 mac spec.." Var. " - jeremiah
Gerekli bağımlılıkları eksik bulmaya yardımcı olur. Teşekkürler! - Ivan Chau


Sorun, bizim durumumuzda, SSH için standart olmayan bir port kullandığımız oldu. SELinux, bir servis tarafından hangi portların kullanılabileceğini kısıtlayabilir. Görünüşe göre bazen kafası karışıyor ve limana izin verdiğimizi unutuyor mu?

Portumuzu (22222) mevcut portlar listesine eklemek için aşağıdaki komutu vermemiz gerekiyordu.

semanage port -a -t ssh_port_t -p tcp 22222

Referans: http://sharadchhetri.com/2014/10/15/centos-7-rhel-7-change-openssh-port-number-selinux-enabled/


11
2017-10-16 17:38



Olmalı semanage port -a -t ssh_port_t -p tcp 22222 - FrankerZ
Cevabın başka bir şekilde işe yaramadığı için @FrankerZ tarafından yapılan yorumda yeni düzenledim. - dreua


Eğer SSH port numarasını değiştirirseniz, CentOS 7'de daha fazla şey yapmanız gerekir.

SSH bağlantı noktası düzenleme ssdh_config dosyasını değiştir

vi /etc/ssh/sshd_config

Örneğin, şununla değiştirin: 2323 numaralı liman

SELINUX sadece ssh için 22 numaralı bağlantı noktasına izin verir. Yeni bağlantı noktası 2323 ekleyin. Yüklemediyseniz aşağıdakileri yapın

yum -y install policycoreutils-python
semanage port -a -t ssh_port_t -p tcp 2323

Ssh için bağlantı noktasını kontrol edin

semanage port -l | grep ssh

SSHD hizmetini yeniden başlat

systemctl restart sshd.service

Bağlantı noktasını güvenlik duvarına ekle

firewall-cmd --permanent --zone=public --add-port=2323/tcp

Güvenlik duvarı yeniden yükle

firewall-cmd --reload

Dinlemeyi kontrol et

ss -tnlp|grep ssh

Tekrar bağlanmayı deneyin ssh

ssh root@<ipaddr> -p 2323

6
2018-01-22 15:03





Ben de bu problemi yaşadım ama çözdüm. Benim yapılandırmam aşağıda.

PermitRootLogin no
port 22
MaxAuthTries 3
MaxSessions 2
AllowUsers ravikanth
AddressFamily any
ListenAddress 192.168.1.23

Hizmet başlayamadı, bu yüzden son satırı açıkladım (#ListenAddress 192.168.1.23) sonra sunucum başarıyla başladı.

Not: Güvenlik duvarını (iptables) ve SELinux'u kapattım.


3
2018-06-02 05:52





Cannot bind any address

Bir bağlantı noktasına (örneğin, varsayılan olarak: 22) 1024'ün altına bağlanmaya çalışırsa, bunu yapmak için kök ayrıcalığına gereksinim duyar. Kaçtın mı service sshd start ya da kök gibi bir şey? Sshd.conf yapılandırma dosyasını düzenlemeyi deneyin, bağlantı adresini 1024'ten büyük bir bağlantı noktasına ayarlayın (örn. 1122) ve basit bir kullanıcı olarak çalıştırın!


1
2017-09-11 12:04





Aşağıdaki ayarı kullanmayı deneyebilirsiniz:

RestartSec=5s

Bu, uygulamanızı yeniden başlatma denemesinden önce 5 saniye uyumaya zorlar. Açıkça ayarların sayısını değiştirebilirsiniz.

Görmek İşte detaylar için:


1
2017-10-27 20:18



Bu yanıtı bıktım, çünkü sorun sistemdeyken değil, gerçek hizmet (OP durumunda sshd) olduğunda sorunu nasıl düzeltebileceğiyle ilgili yararlı bilgiler içeriyor. Yeniden başlatma ile hizmetim var = her zaman başarısız ve birkaç kez yeniden başlatılmamış. Bu cevap aslında bu sorunu systemd ile çözebilir. (Doğrudan OP sorusuyla ilgili olmamakla birlikte). - MattBianco


Aynı sorunu yaşadım ve geldiğim en kolay çözüm kaldırmaktı openssh ve tekrar yükleyin.

 yum remove openssh

ve sonra:

 yum install openssh openssh-server openssh-clients

o zaman başlayabilirsin sshd hizmet:

 service sshd start

1
2018-03-16 15:24





Aynı problemim vardı. Sadece SELinux engelli!


0
2018-04-18 16:49