我正在为windows powershell编写一个bash脚本。
我通过ssh远程连接到服务器,但问题是连接需要密码,我必须通过脚本给它。
我也尝试通过echo "password" | ssh user@remote.host
进行流水线操作。
但是它仍然要求输入密码user@remote.host's password:
。有没有办法只通过命令行或bash脚本输入密码?
答案 0 :(得分:4)
使用ssh-keygen
生成新的SSH密钥对,并使用ssh-copy-id user@machine
将其复制到远程主机。
这将允许您在没有密码的情况下登录,并且不会通过将密码作为字符串传递来引入任何安全问题。
答案 1 :(得分:0)
使用sshpass将密码传递给ssh
$ sshpass -p 'password' ssh username@server.example.com