간단히 말해서: 서비스를 다시 시작 하면 localhost 관련 문제가 sshd
해결될 수 있을 것 같아서 서비스를 다시 시작하고 싶습니다 .ssh
sshd
하지만 서비스를 다시 시작할 수 없습니다.;이것이 제가 도움을 요청하는 것입니다. 아래 터미널 출력을 참조하세요.
나는 오늘 몇 시간 동안 효과가 있을 것 같은 제안을 찾고 시도했습니다. 심지어 백업에서 컴퓨터를 두 번 복원하기도 했습니다. 오늘 아침 첫 번째 호를 앞두고 한 점. 그것은 도움이 되지 않습니다. 또 다른 하나 ssh
는 구성 작업을 수행하기 전에 어제 수행한 백업 이었습니다 . 해당 백업에서 시스템을 복원한 후에도 서비스를 다시 시작할 수 없으며 localhost에서도 작동 sshd
하지 않습니다 .ssh
로그에서 내가 볼 수 있는 유일한 "단서"는 다음 줄입니다 /etc/ssh/sshd_config: Permission denied
. 하지만 이는 별로 의미가 없는 것 같습니다. 이 파일의 권한은 600입니다. 777까지 권한을 열어보았습니다. 그래도 /etc/ssh/sshd_config: Permission denied
동일한 줄이 로그에 추가됩니다.
이 문제에 대한 단서를 찾을 수 있는 다른 로그 세트를 알고 있다면 알려주시기 바랍니다. 혹시 이 문제를 겪고 해결하셨다면 공유해주세요.
귀하의 제안이 특정 배포판에 대한 것이라면 내 컴퓨터는 현재 Fedora 37을 실행하고 있습니다.
폴리스티렌/usr/sbin/sshd
터미널에서 단독으로 명령을 실행 해 보았습니다 . 내가 아는 한 이는 서비스가 실행하려는 명령과 동일한 명령입니다. 터미널에서 명령을 실행하면 작동합니다! 이 명령은 종료되지 않습니다. 실행하면 ssh
문제 없이 사용할 수 있어요. /usr/sbin/sshd
명령을 종료하려면 crtl+c를 사용해야 합니다 . 그렇다면 sshd.service
일자리는 왜 실패하는가?
다음은 관련 명령과 해당 출력의 일부입니다.
$ sudo systemctl restart sshd
Job for sshd.service failed because the control process exited with error code.
See "systemctl status sshd.service" and "journalctl -xeu sshd.service" for details.
$ systemctl status sshd.service
● sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; preset: disabled)
Active: activating (auto-restart) (Result: exit-code) since Sun 2023-01-22 13:17:17 EST; 13s ago
Docs: man:sshd(8)
man:sshd_config(5)
Process: 101315 ExecStart=/usr/sbin/sshd -D $OPTIONS (code=exited, status=1/FAILURE)
Main PID: 101315 (code=exited, status=1/FAILURE)
CPU: 16ms
$ journalctl -xeu sshd.service
...
Jan 22 13:19:22 fedora systemd[1]: Stopped sshd.service - OpenSSH server daemon.
Subject: A stop job for unit sshd.service has finished
Defined-By: systemd
Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
A stop job for unit sshd.service has finished.
The job identifier is 11286 and the job result is done.
Jan 22 13:19:22 fedora systemd[1]: Starting sshd.service - OpenSSH server daemon...
Subject: A start job for unit sshd.service has begun execution
Defined-By: systemd
Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
A start job for unit sshd.service has begun execution.
The job identifier is 11286.
Jan 22 13:19:22 fedora sshd[101395]: /etc/ssh/sshd_config: Permission denied
Jan 22 13:19:22 fedora systemd[1]: sshd.service: Main process exited, code=exited, status=1/FAILURE
Subject: Unit process exited
Defined-By: systemd
Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
An ExecStart= process belonging to unit sshd.service has exited.
The process' exit code is 'exited' and its exit status is 1.
Jan 22 13:19:22 fedora systemd[1]: sshd.service: Failed with result 'exit-code'.
Subject: Unit failed
Defined-By: systemd
Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
The unit sshd.service has entered the 'failed' state with result 'exit-code'.
Jan 22 13:19:22 fedora systemd[1]: Failed to start sshd.service - OpenSSH server daemon.
Subject: A start job for unit sshd.service has failed
Defined-By: systemd
Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
A start job for unit sshd.service has finished with a failure.
The job identifier is 11286 and the job result is failed.
답변1
로그에서 볼 수 있는 유일한 "단서"는 /etc/ssh/sshd_config: Permission return이라는 줄입니다. 그러나 그것은 별로 의미가 없는 것 같습니다.
이는 SSH를 시작할 수 없음을 의미합니다. 당신의 이유를 찾아보세요!
그러나 그것은 별로 의미가 없는 것 같습니다. 이 파일의 권한은 600입니다. 777까지 권한을 열어보았습니다.
이렇게 하지 마십시오. OpenSSH는 특정 구성 파일이 누구나 쓸 수 없다고 가정할 때 시작을 차단하는 경향이 있습니다(합당한 이유가 있습니다. 777을 사용하면 모든 사용자는 자격 증명을 확인하지 않고 루트 로그인을 허용하도록 sshd를 구성할 수 있습니다).
여기서 힌트는 이런 일이 발생하지 않지만 SSH 서버가 여전히 구성 파일을 읽을 수 없다는 것입니다.
나는 sshd.config의 SELinux 도메인이 엉망이 된 것 같다고 확신합니다.
sudo fixfiles onboot
그런 다음 다시 시작하면 문제가 해결됩니다.