하나의 특정 SSH 키를 사용하여 일시적으로 로그인을 비활성화합니다.

하나의 특정 SSH 키를 사용하여 일시적으로 로그인을 비활성화합니다.

내 서버에는 여러 개의 공개 SSH 키가 있습니다 ~/.ssh/authorized_keys.

하나의 키를 일시적으로 차단/허용하지 않음/비활성화하고 싶습니다. 지금은 사용자가 이 키를 사용하여 로그인하는 것을 방지하고 싶습니다. 하지만 나중에 다시 활성화하고 싶을 수도 있습니다(즉, 키를 완전히 삭제하고 싶지는 않습니다).

올바른/권장 방법은 무엇입니까?

키 앞의 #줄 시작 부분에 주석을 달까요 ?authorized_keys

명확히 말하면 특정 사용자를 차단하고 싶지 않습니다. 하나의 사용자 계정은 여러 사람이 공유하며 각 사람은 자신의 SSH 키로 연결됩니다. 하나의 특정 SSH 키를 차단하고 싶습니다.

답변1

사용자에게 무슨 일이 일어나고 있는지 알려주는 강제 명령을 키 앞에 붙일 수 있습니다. 예를 들어:

restrict,command="printf 'Your key has been disabled\n'" ssh-rsa AAAAB2...19Q== [email protected]

또는 v7.2 이전 Openssh의 경우:

command="printf 'Your key has been disabled\n'",no-pty,no-port-forwarding ssh-rsa AAAAB2...19Q== [email protected]

그러면 그들은 다음을 얻습니다:

$ ssh servername
PTY allocation request failed on channel 0
Your key has been disabled
Connection to servername closed.

답변2

예 , 관련 줄 앞에 #(또는 초기 항목이 더 이상 유효하지 않은 한 다른 문자 ) 넣을 수 있습니다 .ssh-rsa

그렇게 하고 시스템에서 일반 텍스트 비밀번호 로그인도 허용하면 사용자에게 로그인할 비밀번호를 묻는 메시지가 표시됩니다. 따라서 계정과 관련된 (알려진) 비밀번호가 없는지 확인하고 싶을 수도 있습니다.

관련 정보