通过Windows命令提示符通过密码身份validation执行ssh
我需要通过以非交互方式提供密码从Windows命令行执行ssh 。 我可以实现基于密钥的身份validation,并能像执行ssh命令一样
ssh <user>@<host> <command>
有没有类似的命令?
ssh <user>@<host> -P <password> <command>
我不知道这是否可行。 但是,也可以有一些相同的工作。 抛出一些想法来实现这一点。
PuTTY的plink有一个用于密码的命令行参数 。 在这个问题的答案中已经提出了一些其他build议:使用Expect(可用于Windows)或者用Paramiko在Python中编写启动程序。
sshpass实用程序就是为了这个。 首先,input以下命令来安装sshpass:
sudo apt-get install sshpass
然后用你的ssh / scp命令
sshpass -p '<password>' <ssh/scp command>
这个程序在使用Linux时最容易安装。
用户应该考虑使用SSH更安全的公钥authentication(使用ssh
命令)。
这个期望的脚本呢?
#!/usr/bin/expect -f spawn ssh root@myhost expect -exact "root@myhost's password: " send -- "mypassword\r" interact