SSHpass用法

SSHpass用法

shpass用处

当将ssh、scp等命令做成自动化脚本时,可能需要非交互式的登录过程,此时可以用sshpass。 sshpass 免输密码执行命令,安装

  • Ubuntu/Debian:
    apt-get install sshpass
    
  • Fedora/CentOS:
    yum install sshpass
    
  • Arch:
    pacman -S sshpass
    

选项有 -p:跟明文密码; -f 跟明文密码文件; -e 通过设置密码变量SSHPASS

忽略RSA Key检查信息

第一次认证时,一般会有RSA key检查的提示: 可以使用 -o StrictHostKeychecking=no选项来忽略key检查信息。

sshpass -e ssh root@192.168.0.123 -o StrictHostKeyChecking=no "$@" 2>/dev/null

sshpass -e ssh root@192.168.0.122 -o StrictHostKeyChecking=no

sshpass支持从文件中导入密码或者从环境变量中导入密码

使用举例:

从文件读取密码

echo "password" > userpasswd
sshpass -f userpasswd ssh username@x.x.x.x

从环境变量获取密码

export SSHPASS="password"
sshpass -e ssh username@x.x.x.x