나는 어딘가에서 여러 호스트 이름을 가져와 각 호스트에서 명령을 실행할 것으로 예상되는 스크립트를 작성했습니다.
ssh "$host" some command
ssh
비밀번호 없이 연결을 설정하는 데 필요한 구성이 있습니다 . 그러나 때로는 비밀번호를 요구하는 호스트를 만나 스크립트가 중단되는 경우가 있습니다.
비밀번호를 기다리는 동안 SSH 시간 초과를 만드는 방법이 있습니까? 나는 그 명령을 사용하고 싶지 않습니다 timeout
.
답변1
이러한 옵션 중 하나는 클라이언트 측에서 작동하여 비밀번호 요청을 완전히 방지할 수 있으며 이는 귀하의 경우에 작동할 것 같습니다. (일부 로그에서 실패한 호스트를 찾아서 대화형으로 다시 실행할 수 있다고 가정합니다.)ssh_config(5)
:
BatchMode If set to yes, passphrase/password querying will be disabled. ... PasswordAuthentication Specifies whether to use password authentication. The argument to this keyword must be yes (the default) or no.
그래서,
ssh -oBatchMode=yes someuser@somehost ...
또는
ssh -oPasswordAuthentication=no someuser@somehost ...
답변2
당신이 찾고있는로그인 유예 시간당신의 sshd_config
.
에서 sshd_config(5)
:
LoginGraceTime
The server disconnects after this time if the user has not successfully logged in. If the value is 0, there is no time
limit. The default is 120 seconds.