通过Windows命令提示符下执行具有密码验证的SSH(Execute ssh with passw

2019-06-27 08:58发布

我需要在非交互方式提供密码,以执行从Windows命令行 SSH。 我可以实现基于密钥的认证和能够执行SSH命令一样

ssh <user>@<host> <command>

有没有像任何命令

ssh <user>@<host> -P <password> <command>

我不知道这是否是可行的。 然而,可以有一些工作,对同一。 扔我的一些想法来完成相同的。

Answer 1:

PuTTY的砰砰有密码的命令行参数 。 其他一些建议已经做出了这个问题的答案 :使用期待(这是适用于Windows),或用Python写的paramiko用一个发射器。



Answer 2:

该sshpass工具是为正是这一点。 首先,通过键入以下命令进行安装sshpass:

sudo apt-get install sshpass

然后前面加上您的SSH / SCP命令

sshpass -p '<password>' <ssh/scp command>

这个程序是最容易使用Linux时安装。

用户应该考虑使用SSH的更加安全的公共密钥验证(使用ssh命令)来代替。



Answer 3:

关于这个有什么期待脚本?

#!/usr/bin/expect -f
spawn ssh root@myhost
expect -exact "root@myhost's password: "
send -- "mypassword\r"
interact


Answer 4:

的Windows解决方案

  1. 安装腻子
  2. 按下Windows-Key + R
  3. 输入putty.exe -ssh [username]@[hostname] -pw [password]


Answer 5:

PowerShell的解决方案

使用辣妹-SSH:

New-SSHSession -ComputerName 0.0.0.0 -Credential $cred | Out-Null
Invoke-SSHCommand -SessionId 1 -Command "nohup sleep 5 >> abs.log &" | Out-Null


文章来源: Execute ssh with password authentication via windows command prompt