linux之sshpass命令

采得百花成蜜后,为谁辛苦为谁甜。这篇文章主要讲述linux之sshpass命令相关的知识,希望能为你提供帮助。

  • 1.密码认证
  • 2.公钥认证
什么是sshpass
安装sshpass
> yum install sshpass -y

使用sshpass
sshpass [-f filename | -d num | -p password | -e] [options]

命令选项
-p 密码 密码在命令行中给出。 -f 文件名 密码是文件名的第一行。 -d number number是sshpass从运行程序继承的文件描述符。从打开的文件描述符中读取密码。 -e 密码来自环境变量"SSHPASS"。

用于sshpass通过SSH登录到远程服务器。假设密码为4u2tryhack。以下是使用sshpass选项的几种方法。
> sshpass -p "4u2tryhack" ssh username@rumenz.com

> sshpass -p "4u2tryhack" ssh -o StrictHostKeyChecking=no username@rumenz.com

使用-f选项(密码应该是文件名的第一行):
> echo\'4u2tryhack\' > pass_file > chmod 0400 pass_file > sshpass -f pass_file ssh username@rumenz.com

-f 在shell脚本中使用以下选项:
> sshpass -f pass_file ssh -o StrictHostKeyChecking=no username@rumenz.com

使用-e选项(密码应该是文件名的第一行)
$ SSHPASS=\'4u2tryhack\' sshpass -e ssh username@rumenz.com

-e在shell脚本中使用时,该选项如下所示:
> SSHPASS =\'4u2tryhack\' sshpass -e ssh -o StrictHostKeyChecking=no username@rumenz.com

示例2:Rsync
sshpass搭配使用rsync
> SSHPASS=\'4u2tryhack\' rsync --rsh="sshpass -e ssh -l username" /rumenz/ rumenz.com:/opt/rumenz/

我们可以-f像这样使用开关:
> rsync --rsh="sshpass -f pass_file ssh -l username" /rumenz/ rumenz.com:/opt/rumenz/

示例3:Scp
使用sshpassscp:
> scp -r /var/www/html --rsh="sshpass -f pass_file ssh -l user" rumenz.com:/var/www/html

范例4:GPG
> echo \'4u2tryhack\'> .sshpasswd

> gpg -c .sshpasswd

> rm .sshpasswd

最后,如下使用它:
> gpg -d -q .sshpassword.gpg > pass_file; sshpass -f pass_file ssh root@rumenz.com

【linux之sshpass命令】原文链接:https://rumenz.com/rumenbiji/linux-sshpass.html
微信公众号:入门小站

    推荐阅读