![스크립트를 사용하여 VM1에서 VM2로 로그인하는 방법은 무엇입니까?](https://linux55.com/image/66599/%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20VM1%EC%97%90%EC%84%9C%20VM2%EB%A1%9C%20%EB%A1%9C%EA%B7%B8%EC%9D%B8%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
VM1에서 내 VM2에 로그인하기 위해 스크립트를 사용하고 있습니다(VM2의 비밀번호: fifa).
for i in {a..z}{a..z}{a..z}{a..z}
do
# $i as a password
ssh root@ipaddress
read i
echo $i
done
조금 작동하지 않습니다. 항상 내 비밀번호를 묻습니다. 자동으로 비밀번호를 입력하게 하려면 어떻게 해야 하나요?
답변1
read i
해당 명령문이 루프 변수를 파괴하기 때문에 "비밀번호"를 묻습니다 for
. 나는 ssh 클라이언트가 tty에서 읽으려고 시도하고 있다고 생각합니다. ssh에 비밀번호를 전달하는 직접적인 방법을 모르겠습니다. 대안으로는 sshpass 및 Expect가 있습니다. 바라보다일반 텍스트 비밀번호를 매개변수로 사용하여 SSH 로그인을 하시겠습니까?그리고https://stackoverflow.com/questions/233217/pass-password-to-su-sudo-ssh그리고https://stackoverflow.com/questions/12118308/command-line-to-execute-ssh-with-password-authentication