방금 서버에 Ubuntu 14.04를 설치했으며 sshd_config
파일 에서이 파일을 발견했을 때 모든 구성 파일을 설정했습니다 .
# Authentication:
LoginGraceTime 120
PermitRootLogin without-password
StrictModes yes
이것은 나를 매우 걱정하게 만들었습니다. 누군가 비밀번호없이 내 서버에 루트로 로그인 할 수 있다고 생각했습니다.
다음을 통해 루트로 서버에 연결을 시도했습니다.
johns-mbp:~ john$ ssh root@192.168.1.48
The authenticity of host '192.168.1.48 (192.168.1.48)' can't be established.
RSA key fingerprint is 40:7e:28:f1:a8:36:28:da:eb:6f:d2:d0:3f:4b:4b:fe.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.48' (RSA) to the list of known hosts.
root@192.168.1.48's password:
빈 암호를 입력했는데 입력하지 않아 안심이되었습니다. 그래서 내 질문은 : 암호가 없으면 무엇을 의미하며 이것이 우분투 14.04에서 이것이 기본값입니까?
답변
로부터 맨 :
허가 루트 로그인
root가 ssh (1) 를 사용하여 로그인 할 수 있는지 여부를 지정합니다 . 인수는 “yes”, “without-password”, “forced-commands only”또는 “no”여야하며 기본값은 “yes”입니다.
이 옵션을 “암호없이”로 설정하면 루트에 대한 비밀번호 인증이 비활성화됩니다.
이 옵션이 “강제 명령 전용”으로 설정되어 있으면 공개 키 인증을 통한 루트 로그인이 허용되지만
command
옵션이 지정된 경우에만 가능
합니다 (루트 로그인이 일반적으로 허용되지 않은 경우에도 원격 백업을 수행하는 데 유용 할 수 있음) . 다른 모든 인증 방법은 루트에 대해 비활성화되어 있습니다.이 옵션을 “no”로 설정하면 root가 로그인 할 수 없습니다.
따라서 without-password
공개 키 인증으로 만 루트 로그인이 가능합니다. 이것은 종종 셸 스크립트 및 자동화 된 작업과 함께 사용됩니다.
답변
실제로이 설정은 PAM 인증을 사용하는 경우 거의 아무 것도 수행하지 않습니다. sshd_config
구성 파일 의 맨 아래에 다음이 있습니다.
# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication. Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
Ubuntu의 기본 설정은 PAM 인증을 사용하는 것입니다.
UsePAM yes
답변
루트를 통해 로그인하는 데는 합법적 인 이유가 있지만 암호 키는 사용하지만 암호는 사용 하지 마십시오 . 일반적인 예는 두 서버를 원격으로 동기화하는 것입니다 (둘 중 하나를 페일 오버로 사용하기 위해). 구조는 동일해야하므로 종종 루트 암호가 필요합니다.
다음은 동기화를 위해 unison을 사용하는 예입니다. https://serverfault.com/questions/341985/remotely-use-root-over-ssh-for-unison
답변
sshd의 최신 버전에서 “암호없이”가 “암호 금지”로 변경되었습니다.
두 버전 모두 작동하지만 가능하면 “비밀번호”를 사용하는 것이 가장 좋습니다.