Mac Server에 암호 인증으로 SSH 연결할 수 없음
Overview
Mac Server의 SSH 설정에서 매우 빠져서 비망록을 남깁니다.
무슨 일이야?
한 Mac Server에 암호 인증으로 로그인할 수 없습니다.
$ ssh [email protected]
[email protected]'s password:
Permission denied, please try again.
[email protected]'s password:
Permission denied, please try again.
[email protected]'s password:
[email protected]: Permission denied (publickey,password,keyboard-interactive).
$ ssh [email protected]
Password:
mac-002:~ dareka$ # 別の機体はすんなりログインできる...
$ ssh [email protected]
mac-001:~ jibun$ # また自分の private key を使えばすんなりとログインできる...
원인 규명
비밀번호를 들었을 때의 표시가 약간 다르고, 처음에는 당황했지만 원인은
/etc/ssh/sshd_config
의 설정으로, 이 UsePAM yes
가 코멘트 아웃 되고 있었던 것이 원인이었습니다.# 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'.
# UsePAM yes
코멘트 아웃 제외하면 패스워드 인증할 수 있게 되었습니다.
쟈쿠리 번역해 보면 이하와 같은 간지.
この設定を有効にすると、ChallengeResponse 認証とパスワード認証を通して PAM 認証が許可されます。PAM の設定によっては、ChallengeResponse 認証経由の PAM 認証はパスワードなしの RootLogin 設定の迂回路となってしまうかもしれません。ただ PAM 認証なしで PAM アカウントとセッションのチェックがしたいだけだったら、この設定は有効にして PasswordAuthentication と ChallengeResponseAuthentication は no にしてください。
PAM 인증이란,
Pluggable Authentication Module
: 각종 인증 처리를 실행하는 모듈군과 그것을 이용하기 위한 표준 API 를 갖춘 라이브러리로 구성된 사용자 인증 시스템.OS에 의한 유저 인증을 독립시켜, 각 어플리케이션이 사용할 수 있는 공통 부품으로서 모듈화한 것을 PAM이라고 부르며, PAM은 Solaris, HP-UX, FreeBSD, Linux 등 폭넓은 시스템에서 사용되고 있다.
라는 것 같습니다.
sshd를 재시작하는 것이 좋다,라는 기사도 보였지만 자신은 특히 재기동하지 않아도 반영되었습니다.
sudo launchctl stop com.openssh.sshd
덧붙여서,
/private/etc/ssh
에도 sshd_config
가 있습니다만, 이쪽이 실태로 루트 쪽이 symlink 같습니다. (linux와의 호환성을 고려할까요?? 자세한 내용을 알려주세요.mac-001:~ jibun$ ls -l /etc
lrwxr-xr-x@ 1 root admin 11 9 2 15:13 /etc -> private/etc
/private/etc/
바로 아래에도 sshd_config
가 있었지만이 파일을 변경해도 변경 내용이 반영되지 않았습니다. 편집 대상은 /private/etc/ssh
아래의 sshd_config
라는 것에 주의가 필요할 것 같습니다.알아두는 것이 좋았다.
문제는 해결했습니다만, 더 알아 두는 것이 좋았구나, 라고 생각한 것을 적어 둡니다.
SSH 유형
패스워드 인증과 공개키 인증은 필수.
공개키 인증시의 주의점
.ssh
디렉토리의 permission 는 700
authorized_keys
의 permission는 600
authorized_keys
의 소유자가 root
가 아닌가 SSH 구성 파일
/etc/ssh/ssh_config
→ 클라이언트 측 설정 파일 /etc/ssh/sshd_config
→ 서버 측 (SSH되는 측, 데몬) 설정 파일 sshd_config 설정
ChallengeResponseAuthentication
및 PasswordAuthentication
를 no
로 설정 Reference
이 문제에 관하여(Mac Server에 암호 인증으로 SSH 연결할 수 없음), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/att55/items/ef58e066e1048cece39b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)