avatar

tetsai

原创声明

本文由tetsai原创,转载请注明来源

连接ssh每次都要输入**,挺麻烦的

可以通过设置公钥(在被连接的主机上修改.ssh目录下的known_hosts,添加一行公钥就可以替代**)来实现免**连接

但如果一定要用**呢?有没有可以自动输入**的方法?

当时我试图使用echo 'password' | ssh [email protected]

结果不行,然后发现了一个叫sshpass的软件

只需要这一个命令

sshpass -p ** ssh [email protected] 

就可以在连接时自动把**输入进去了,sshpass需要单独安装。

另外还可以指定文件

sshpass -f 存有**的文件.txt ssh [email protected] 

以下是sshpass的help信息:

[@tetsai ~]$ sshpass Usage: sshpass [-f|-d|-p|-e] [-hV] command parameters -f filename Take password to use from file -d number Use number as file descriptor for getting password -p password Provide password as argument (security unwise) -e Password is passed as env-var "SSHPASS" With no parameters - password will be taken from stdin -P prompt Which string should sshpass search for to detect a password prompt -v Be verbose about what you're doing -h Show help (this screen) -V Print version information At most one of -f, -d, -p or -e should be used

发表评论

电子邮件地址不会被公开。 必填项已用*标注