# 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
```
