클라이언트에서 ssh 공개 키 인증을 일시적으로 비활성화


36

ssh 할 때 공개 키 인증을 일시적으로 비활성화하고 대신 비밀번호 인증을 사용하는 방법이 있습니까?

현재 원격 서버에 액세스하고 싶지만 내 노트북이 아닌 다른 랩톱을 사용하고 있습니다.

해당 링크를 찾아 보면 명령 ssh -o PreferredAuthentications=keyboard-interactive -o PubkeyAuthentication=no host1.example.org이 모든 곳에서 작동하지 않는다는 것을 알았습니다 . 그리고 네, 그것은 효과가 없습니다. 사용중인 : OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 2012 년 3 월 14 일

편집 : 나는 또한 입력하려고 ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no 했지만 여전히 "권한이 거부되었습니다 (공개 키)".

그렇다면 원격 서버에서 수행 할 특정 구성이 있습니까? 해당 명령이 작동합니까? 아니면 언제 그 명령이 예상대로 작동합니까?

조언을 많이 주셔서 감사합니다.


30
만약 당신이 링크를 다시 따라 갔다면, 당신의 방법이 효과가 없다고 말하는 누군가가 있었지만, 이렇게하였습니다 :ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no
NickW

@NikW 고마워요, 아마 언급 했어야했는데, 당신이 제안한 명령을 시도했지만 여전히 "Permission denied (publickey)"가 있습니다.
Nsukami _

1
내 노트북에는 TON의 키가 있었고 ssh는 모든 키를 시도했기 때문에이 문제를 겪었으므로 암호를 입력하기 전에 거부되었습니다. 질문 주셔서 감사합니다.
Dallaylaen

3
@NickW 당신이 당신의 코멘트를 답으로하면, 나는 그것을 찬성합니다.
미로

답변:


9

이것은 서버 측의 구성 문제처럼 들립니다.

서버가 공개 키 및 비밀번호 인증을 모두 허용하는 경우 클라이언트에 개인 키 파일이 없으면 연결을 시도하더라도 비밀번호를 묻는 프롬프트가 표시됩니다.

오류 메시지가 표시되면 "Permission denied (publickey)" 서버에서 비밀번호 인증이 지원되지 않는 것 같습니다.

/ etc / sshd_config 파일을 보지 않으면 알기가 어렵지만 다음 줄이 있는지 확인해야합니다.

PasswordAuthentication yes

ssh 서버를 다시 시작하고 클라이언트에서 연결할 때 개인 키가 없거나 개인 키가 서버의 공개 키와 일치하지 않으면 비밀번호를 묻는 프롬프트가 표시되어야합니다.

물론 이보다 안전한 대안은 개인 키를 사용중인 랩톱에 복사하거나 실제로 해당 랩톱에서 사용할 새 개인 키를 생성하여 공개 키를 추가하는 것입니다. .ssh/authorized_keys


5

비어있는 ID 파일을 만드십시오.

touch $HOME/.ssh/blank

권한 640 또는 644를 그대로두면 ssh는 권한이 충분히 안전하지 않아서 사용하지 않는다고 불평합니다. 600으로 chmod하면 암호가 3 번 표시되고 암호가 없기 때문에 실패합니다. 640 또는 644로 그대로 두십시오.

그런 다음 ssh 일 때이 명령을 사용하십시오.

ssh -i $HOME/.ssh/blank servername-or-ip

.ssh / config를 사용하고 키를 사용하지 않도록 호스트 항목을 설정할 수 있지만 일시적이지 않거나 server 및 server-nokey에 대한 별칭을 만들 수 있지만 시간이 오래 걸리고 유지 관리하기가 어렵습니다.


5
-i /dev/null작동하며 권한을 확인할 필요가 없습니다.
svvac

빈 / 널 파일은 작동하지 않는다고 ssh말하면서 Load key "/dev/null": invalid format어쨌든 구성한 다른 키를 계속 사용하고 너무 많은 인증 실패로 인해 로그인에 실패합니다.
Malvineous

나에게 이것은 효과가 없었다. 내 자격 증명이 그놈 키링에 저장되었을 수 있습니다.
Yaroslav Nikitenko
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.