SSH 서버가 작동하지 않습니다 (중지 될 때까지 다시 나타남)


12

Ubuntu Server 10.04.1을 실행 중입니다. ssh를 통해 서버에 로그인하려고 할 때 할 수 없었습니다. 대신 connection refused오류 가 발생했습니다. 기계를 핑하려고했는데 답장을 받았습니다! 따라서 SSH 데몬이 중지 되었기 때문입니다.

재부팅 후 ssh를 통해 서버에 로그인 할 수있었습니다. 얼마 후, 나는 통나무를보고 /var/log/syslog다음 기록을 발견했다.

Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2465) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2469) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2473) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2477) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2481) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2485) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2489) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2493) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2497) terminated with status 255
Jan 16 10:57:09 myserver init: ssh main process ended, respawning
Jan 16 10:57:09 myserver init: ssh main process (2501) terminated with status 255
Jan 16 10:57:09 myserver init: ssh respawning too fast, stopped

비슷한 문제 / 해결 방법을 검색했습니다. 어떤 사람들이이 네트워크 전에 시작하려는 디먼 SSH에 의한 그들은 변화를 제안하고 있다고 말했다 ListenAddress에서 /etc/ssh/sshd_config할 수 0.0.0.0. 시스템이 시작되고 실행 된 후에 문제가 발생하기 때문에 이것이 내 경우에는 원인이 아니라고 생각합니다.

이 문제의 원인이 무엇입니까? 이것은 Ubuntu 서버이며 SSH를 사용하여 원격으로 실행되고 액세스되어야합니다.

최신 정보:

여기에서 찾은 로그 스 니펫이 /var/log/auth.log있습니다.

Jan 16 10:56:38 myserver sudo:     user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/usr/bin/vim /etc/ssh/sshd_config
Jan 16 10:57:09 myserver sudo:     user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/etc/init.d/ssh reload
Jan 16 10:57:09 myserver sshd[1465]: Received SIGHUP; restarting.
Jan 16 10:57:09 myserver sshd[2461]: Server listening on 0.0.0.0 port 22.
Jan 16 10:57:09 myserver sshd[2465]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2465]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2469]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2469]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2473]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2473]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2477]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2477]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2481]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2481]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2485]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2485]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2489]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2489]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2493]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2493]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2497]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2497]: fatal: Cannot bind any address.
Jan 16 10:57:09 myserver sshd[2501]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jan 16 10:57:09 myserver sshd[2501]: fatal: Cannot bind any address.

SSH 데몬을 다시로드 한 후이 오류가 발생하기 시작한 것 같습니다. 대신 사용 ssh reload하고 사용 ssh restart하지 않아야합니까?


이것도 체크 아웃하십시오. 그것은 sshd_config를 sintaxis에 문제가있을 수 있습니다 bugs.launchpad.net/ubuntu/+source/openssh/+bug/911753

답변:


7

SSH가 시작 되기 직전에 무슨 일이 있었는지 확인해야합니다 syslog. 네트워킹 하위 시스템이 사망 한 경우 sshd실패한 이유를 설명 할 수 있습니다.

나는 또한 확인 /var/log/auth.log합니다. 그것은이다 sshd의 로그 및 그것은 당신에게 더 나은 오류 메시지를 줄 수 있습니다.


감사! auth.log파일 에서 많은 항목을 찾았고 질문을 업데이트했습니다.
— Khaled

reload유효한 조치 여야합니다. 그것은 해야 내부 다시 시작 트리거 (바로 붙어있어 것을 시도 것으로 보인다). 다시로드 해보고 다시 끼어 있는지 확인하십시오.
— Oli

실제로, 다시로드는 유효하지만 버그가 있습니다. 자세한 내용은 내 답변을 참조하십시오.
— SpamapS

16

12.04 상자에서 같은 문제가 발생했습니다. 즉 같은 증상입니다. 아아, 항상 및 주소가 있는 ListenAddress절을 소개 할 ​​때 항상 발생 했습니다 . 요컨대, 로그 파일에 이와 같은 내용이 표시되지 않았지만 이것은 기형의 증상 인 것 같습니다.inetinet6sshd_configsshd_config

문제 해결 sshd

그런 경우에 일반적으로 매우 유용한 sshd것은 데몬을 사용하지 않고 시작 하는 것입니다. 내 경우의 문제는 의미있는 syslog것도 auth.log보여 주지도 않았다 .

터미널에서 시작했을 때 나는 얻었습니다.

# $(which sshd) -Ddp 10222
/etc/ssh/sshd_config line 8: address family must be specified before ListenAddress.

훨씬 낫다! 이 오류 메시지를 통해 무엇이 잘못되었는지 확인할 수있었습니다. 로그 파일 중 어느 것도이 출력을 포함하지 않았습니다.

NB : 최소한 우분투에서는 절대 경로의 요구 사항 $(which sshd)을 충족시키는 가장 좋은 방법 sshd입니다. 그렇지 않으면 다음과 같은 오류가 발생 sshd re-exec requires execution with an absolute path합니다.. -p 10222차종은 sshd이 잠재적으로 실행에 충돌하지 않도록이다 - 구성 파일을 무시하고 그 대안 포트에서 수신 대기 sshd인스턴스. 여기에서 빈 포트를 선택하십시오.

이 방법은 인증 문제 또는 다른 유형과 같은 문제를 찾는 데 여러 번 도움이되었습니다. 에 대한 자세한 정보를 얻으려면을 stdout사용하십시오 $(which sshd) -Ddddp 10222(추가 dd정보를 표시하여 자세한 정보 표시). 더 좋은 디버깅 확인을 위해 man sshd.


이 방법의 주요 장점은 기본 포트 에서 다시 시작 하지 않고도 sshd구성 을 확인할 수 있다는 것 입니다. 일반적으로 이것은 기존 SSH 연결을 방해하지 않아야하지만 그것을 보았습니다. 따라서 원격 서버에 대한 액세스를 차단하기 전에 구성 파일의 유효성을 검사 할 수 있습니다. 기계에).sshd


3
당신의 직접적인 호출 트릭은 내 베이컨을 구했습니다. 이 기술을 사용하여 해결할 수있는 sshd_config 파일 (Chef에서 생성)에 오류가 있습니다. 시간을내어 모든 사람에게 게시 해 주셔서 감사합니다.
— Peter Laird

4

이것은 최근 natty로 수정되어 버그 # 687535의 결과 인 것으로 보이며, 제안 된 업데이트로 maverick 및 lucid에 업로드되었습니다.

https://bugs.launchpad.net/ubuntu/lucid/+source/openssh/+bug/687535

모두가 거기에 가서 테스트 케이스 (TEST CASE 검색)를 시도하고 제안 된 수정 사항을 설치하기 전후에 결과를 게시하도록 권장합니다. 이를 통해 SRU 팀은 확인이 완료되었다고 결정하고이를 업데이트로 릴리스 할 수 있습니다.


2

에서 /etc/ssh/sshd_config모든 예와 아니요 옵션이 모두 소문자인지 확인하십시오. 예를 PermitRootLogin No들어을 설정 하면 ssh가 시작되지 않습니다. 실제로이어야 PermitRootLogin no합니다.


1

다시 시작한 후 Linode에서 Ubuntu 11.10 이미지와 비슷한 문제가 발생했습니다. ssh 서비스는 syslog에서 생성합니다.

Mar 18 06:31:33 servername kernel: init: ssh main process ended, respawning
Mar 18 06:31:33 servername kernel: init: ssh main process (3419) terminated with status 255
Mar 18 06:31:33 servername kernel: init: ssh main process ended, respawning
Mar 18 06:31:33 servername kernel: init: ssh main process (3422) terminated with status 255
Mar 18 06:31:33 servername kernel: init: ssh respawning too fast, stopped

테스트 상자이며 약 60 일의 가동 시간이 있었으므로 어딘가에 sshd_config의 맨 아래에 추가 된 것을 설치했습니다.

ClientAliveInterval 60
ClientCountAliveMax 60

이 줄을 주석 처리하면 ssh를 시작할 수있었습니다.


0

Ubuntu ssh가 시작되지 않고 syslog에서 "init : ssh 기본 프로세스 (2044)가 상태 255로 종료되었습니다"

/ usr / sbin / sshd -Ddp 10222

확실히 sshd_config 라인 오류를 확인하기 위해 일했습니다.


-1

같은 문제가 발생했지만 상단 솔루션이 작동하지 않지만 해결 방법이 있습니다.

root@imt:~# sshd
sshd re-exec requires execution with an absolute path
ssh localhost
ssh: connect to host localhost port 22: Network is unreachable

문서마다 경로가 정상이므로 수동으로 sshd를 실행합니다.

root@imt:~# /usr/sbin/sshd 
/var/run/sshd must be owned by root and not group or world-writable

/ var / run / sshd 권한입니다.

root@imt:~# ls -ld /var/run/sshd
drwsrwsrwt 2 root root 40 Jan  5 12:58 /var/run/sshd

root@imt:~# chmod 755 /var/run/sshd

그런 다음 괜찮습니다. ssh localhost를 실행하고 확인하십시오.

root@imt:~# ssh localhost 
The authenticity of host 'localhost (127.0.0.1)' can't be established.
RSA key fingerprint is 64:93:fd:ab:4c:f9:7b:8a:86:60:22:f7:56:fa:ea:cc.
Are you sure you want to continue connecting (yes/no)? yes

1
유용한 가이드이지만 sshd로그의 매우 다른 오류 메시지에서 볼 수 있듯이 OP가 올바르게 실행되지 않은 것은 아닙니다. -1
— David Foerster
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.