SSH를 사용한 인증 순서


22

ssh를 통해 로그인하면 -vssh가 다음과 같은 방식으로 인증되고 있음을 알 수 있습니다

debug1: Authentications that can continue: publickey,gssapi-with-mic,password,hostbased

순서를 변경하고 싶습니다 ... 어떻게 생각하십니까?

내 큰 문제는 계정이 잠긴 사용자가 여전히 공개 키를 통해 로그인 할 수 있다는 것입니다. "ssh-locked"그룹에 사용자를 추가하여 sshing에서 해당 그룹을 거부 할 수 있음을 발견했지만 여전히 ssh'd에게 알리는 방법이 있는지 궁금합니다. 키 전에 비밀번호를 확인하십시오 ...


1
열쇠가 암호보다 안전합니다 (보통). 계정이 잠겨 있으면 인증 방법에 관계없이 사용자가 로그인하지 못하도록 sshd 데몬에 지시해야합니다.
— EightBitTony

내가 말했듯이 DenyGroups를 통해 해결책을 찾았습니다. 나는 그것을 위해 그것을 요구하고 있습니다.
— Oz123

답변:


31

ssh 서버는 허용되는 인증 옵션을 결정하고 ssh 클라이언트는 시도 순서를 결정하도록 구성 할 수 있습니다.

ssh 클라이언트는 PreferredAuthenticationsssh 구성 파일 의 옵션을 사용하여 이를 판별합니다.

에서 man ssh_config( 여기에서 온라인 참조 ) :

PreferredAuthentications
             Specifies the order in which the client should try protocol 2 authentication methods.  This allows a client to prefer
             one method (e.g. keyboard-interactive) over another method (e.g. password).  The default is:

                   gssapi-with-mic,hostbased,publickey,
                   keyboard-interactive,password

소스를 가지고 놀지 않고 OpenSSH 서버에 특정 순서를 선호하도록 지시하는 것이 가능하지 않다고 생각합니다.


Windows 용 Git Bash를 사용하는 경우 ssh 구성을 다음 위치에 저장하십시오.~/.ssh/config
— Spencer Williams

한 방법이 이전 방법에 의존하는 경우 순서가 의미가 있습니다. 예를 들어, 키보드 대화 형의 2FA는 유효한 암호를 처음 제공 한 사용자에 따라 달라질 수 있습니다.
— steveayre

위의 PreferredAuthentications 정보를 복사하여 붙여 넣은 소스를 게시 할 수 있습니까? 나는 그것을에서 표시되지 않습니다 man ssh에없고, /etc/ssh/ssh_config없고에 /etc/ssh/sshd_config. 이 정보를 어디서 얻었습니까?
— 가브리엘 스테이 플스

그것을 발견! 에있었습니다 man ssh_config. 이 출처를 포함하도록 답변을 업데이트하기 위해 검토를 위해 수정 사항을 제출했습니다. 다음 번에 출처를 인용하십시오! 많은 감사합니다.
— 가브리엘 스테이 플스

18

이것을 추가 :

PreferredAuthentications keyboard-interactive,password,publickey,hostbased,gssapi-with-mic

... /etc/ssh/ssh_config이 문제를 해결하고 많은 시간을 절약했습니다!

"verbose"를 나타내는 ssh -v user@host연결 명령을 사용하여 작동하는지 확인할 수 있습니다 -v.


2
이 파일을 올바른 파일에 추가 ssh_config하고 아닌지 확인하십시오 sshd_config. 후자는 ssh가 실패하게합니다!
— Oranges13

0

PreferredAuthentications옵션을 이미 언급 한 다른 두 가지 답변 에 추가하고 싶지 않다면이 설정을 설정하기 위해 파일을 편집 할 필요가 없습니다 . 오히려, 당신은 단지 수 에 대한 개별 호출에 대한 명령 줄에서 설정할ssh 로, -o다음과 같이 옵션 :

ssh -o PreferredAuthentications=publickey,gssapi-with-mic,hostbased,keyboard-interactive,password user@hostname

참고 문헌 :

  1. 더에 대한 읽으려면 PreferredAuthentications옵션을 참조하십시오 man ssh_config( 여기 온라인 참조 ). 또한 매뉴얼 페이지 ( 여기 온라인 ) ssh -o에서 옵션에 대해 읽으십시오 .man ssh
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.