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 -t (sshd 테스트 모드)를 시도하십시오. 고장의 원인이 될 수 있습니다.

여기 에서 테스트 모드 설명서를 참조 하십시오 .


답변

문제는 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에서 더 많은 작업을 수행해야합니다.

SSH 포트 편집 ssdh_config 파일 변경

vi /etc/ssh/sshd_config

예를 들어 다음과 같이 변경하십시오. 포트 2323

SELINUX는 ssh에 포트 22 만 허용합니다. 새 포트 컨텍스트 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

1024 아래의 포트 (예 : 기본적으로 22)에 바인딩하려고하면 루트 권한이 필요합니다. service sshd start루트로 실행 했습니까 ? sshd.conf 구성 파일을 편집하고 바인드 주소를 1024보다 큰 포트 (예 : 1122)로 설정하고 간단한 사용자로 실행하십시오!


답변

나는 같은 문제가 있었고 가장 쉬운 해결책은 openssh그것을 제거 하고 다시 설치하는 것이 었습니다.

 yum remove openssh

그리고:

 yum install openssh openssh-server openssh-clients

그런 다음 sshd서비스 를 시작할 수 있습니다 .

 service sshd start