나는 열심히 노력했다
echo yes | ssh [email protected]
yes | ssh [email protected]
ssh -y [email protected]
이들 중 아무것도 작동하지 않는 것 같나요?
편집 #1
ssh
내 문제의 일부는 해당 명령 이후의 모든 명령이 실제로 로컬 명령인 경우 원격 명령이라고 생각했다는 것입니다 . 원격 명령은 ssh 명령에 매개변수로 전달되는 문자열로 선언되어야 한다고 생각합니다.
$ ssh [email protected] 'remote command'
답변1
이것은 의도적으로 설계된 것입니다. ssh
호스트 확인 및 인증 상호 작용의도적으로파이프로부터의 입력을 받아들이지 않습니다. 그러나 호스트 키에 확신이 있는 경우 다음을 수행할 수 있습니다.
ssh-keyscan host.example.com >> $HOME/.ssh/known_hosts
ssh host.example.com
답변2
SSH를 통해 호스트에 인증하고 서버에서 맹목적으로 키를 수락하거나 무시해도 괜찮다면 무시하는 것이 가장 좋습니다.
$ ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no <user>@<host>
SSH의 보호 기능이 제한된다는 점을 명심하십시오. 그러나 이는 외부 수단을 통해 이러한 도구를 강제로 사용하는 것보다 의도한 대로 이러한 도구를 사용하는 더 적절한 방법입니다.