SSH 클라이언트가 비밀번호 인증 만 사용하도록 강제하는 방법은 무엇입니까? 있습니까? (키로 기본

Ubuntu 11.04와 같은 pubkey auth를 사용하는 경우 ssh 클라이언트가 서버에 암호 인증만을 사용하도록 어떻게 설정할 수 있습니까? (키로 기본 로그인하는 서버에서 비밀번호를 테스트했기 때문에 필요했습니다)

방법을 찾았습니다.

mv ~/.ssh/id_rsa ~/.ssh/id_rsa.backup
mv ~/.ssh/id_rsa.pub ~/.ssh/id_rsa.pub.backup

이제 비밀번호를 묻는 메시지가 표시되지만 공식적인 방법이 있습니까?



답변

나는 최근에 이것도 필요했고 이것을 생각해 냈습니다.

ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no example.com

클라이언트가 비밀번호 인증을 허용하지 않도록 구성되어 있는지 확인해야합니다.


답변

이 목적에 대한 지름길을 발견했습니다.

ssh user:@example.com

콜론 ( :)과 그 뒤에 빈 비밀번호를 적어 둡니다.


답변

scoopr가 게시 한 방법뿐만 아니라 ssh 클라이언트 구성 파일에서 호스트 별 옵션을 설정할 수 있습니다.

귀하의에서 .ssh디렉토리라는 파일을 만들고 config(이미 존재하지 않는 경우)에 대한 권한 설정 600, 당신은 다음 시작 섹션을 만들 수 있습니다

host <some hostname or pattern>

그런 다음 호스트 별 옵션을 설정합니다 (예 :

host bob.specific.foo
user fred

host *.home.example
user billy
port 9191

그래서 당신은 가질 수

host server.to.test
PubkeyAuthentication=no

그 파일에서

ssh server.to.test

옵션이 선택됩니다.


답변

나는 최근에 이것을 필요로했지만 위의 옵션 중 어느 것도 효과 가 없었습니다 ssh -v. -o스위치를 통해 전달 된 명령 행 옵션 이 내 ~/.ssh/config파일에 지정된 값으로 재정의 된 것으로 나타났습니다 .

효과가 있었던 것은 다음과 같습니다.

ssh -F /dev/null <username>@<host>

로부터 ssh매뉴얼 페이지

 -F configfile
     Specifies an alternative per-user configuration file.  If a
     configuration file is given on the command line, the system-wide
     configuration file (/etc/ssh/ssh_config) will be ignored. The default
     for the per-user configuration file is ~/.ssh/config.

이 답변에 대한 크레딧 : 어떻게 ssh가 .ssh / config를 무시하도록 할 수 있습니까?


답변

나는이 답변 중 몇 가지를 시도했지만 ssh -v내 공개 디렉토리에서 공개 키가 뽑히는 것을 계속 보여주었습니다. 그러나 가짜 신원 파일을 지정하면 나에게 속임수가되었습니다.

ssh -i /dev/null host

유지 – 나는 영구적으로 (APC에서 랙 장착 PDU에서 깨진 SSH 서버를 해결하려면 이렇게 할 필요 까지 보안에 관심 있다면 멀리 이런 일에서 – 그래서 내 config 파일에 옵션을 넣어 결국 :

Host apc1 apc2
KexAlgorithms +diffie-hellman-group1-sha1
IdentityFile /dev/null


답변

@scoopr 및 @Halil Özgür 답변이 저에게 효과적이지 않았습니다.

이것은 나를 위해 일했다 :

ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no user@example.com

출처 : http://linuxcommando.blogspot.com/2008/10/how-to-disable-ssh-host-key-checking.html


답변

또한 BatchMode=yes.ssh / config 에는 활성화되어 있지 않습니다 . 그렇지 않으면 대화식 암호 프롬프트가 표시 될 가능성이 없습니다.