내 시스템에서 실행될 스크립트 파일을 사용하여 우분투의 원격 시스템에 로그인하고 싶습니다. 스크립트에는 다음 명령이 포함되어 있습니다.
#!/bin/bash
echo 'systemPwd' | ssh [email protected]
이 스크립트를 실행하면 시스템에 로그인할 수 없습니다. echo 명령에서는 비밀번호를 가져오지 않습니다. 그런데 대체품을 어떻게 사용하는지 모르겠어요.
하지만 나는 이 스크립트를 시도했다
#!/bin/bash
sshpass -p 'systemPwd' ssh [email protected] <<-'ENDSSH'
#commands to run on remote host
echo 'systemPwd' | sudo -S shutdown-h now
ENDSSH
위 스크립트에서는 sshpass
이미 사용되었습니다 . 문제는 sshpass
먼저 설치해야한다는 것입니다. 누구든지 sshpass
.
답변1
를 사용하는 것이 좋습니다 SSH Keys
.
생성하려면 SSH Keys
클라이언트 컴퓨터에서 다음 명령을 사용합니다.
ssh-keygen -t rsa
authorized_keys
그런 다음 다음 명령을 사용하여 공개 키를 새 컴퓨터의 파일에 복사할 수 있습니다 ssh-copy-id
.
ssh-copy-id [email protected]
그러면 비밀번호 없이 원격 컴퓨터에 로그인할 수 있습니다.
자세한 내용은:https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2