1 sshpass工具简介
2 实验环境搭建
如果已经存在ssh客户顿与sshd服务器交互环境,就忽略本节,本节搭建的实验环境为:
PC(win 11 )《----- 》 vmware workstation pro + Ubuntu 16.04.6 LTS
2.1 vmware workstation pro + Ubuntu 16.04.6 LTS(待补充)
2.2 PC与Ubuntu虚拟通信
当前需求:
1、Ubuntu自身可以与互联网进行通信
2、PC与Ubuntu可实现通信
3、Ubuntu与PC可实现通信
根据上述需求,虚拟机采用的是“NAT 模式”,设置完网络后,当前的网络状态是:
1、我的PC和Ubuntu均可以与互联网通信(ping www.baidu.com可以通)
2、Ubuntu可以ping通PC,但是PC无法ping通Ubuntu(但是在PC端通过ssh可以登陆ubuntu虚拟机,目前还不清楚为什么)
2.3 windows 11 开启ssh服务
开始菜单-》打开设置-》系统-》可选功能,下图所示中已经安装了 “Openssh客户端”,这个是之前安装的,我们本次再安装“Openssh服务端”,具体如下图所示
注:“可选功能”也有可能在开始菜单-》打开设置-》应用-》可选功能
2.3.1 win11 可选功能位置
2.3.2 安装“Openssh服务端”
2.3.3 开启sshd服务+开启自启动
1、开启sshd服务
2、开机自启动
点击计算机管理-》服务-》OpenSSH Server双击-》设置为启动类型为“自动”
图1
图2
2.4 在ubuntu 虚拟机上通过ssh登陆设备
直接在虚拟机命令行输入下面命令进行登陆:
ssh username@PC的IP
然后输入密码即可
2.5 ubuntu 虚拟机安装sshpass工具+免密登陆
2.5.1 下载源码
方式1:直接执行下述命令即可下载:
wget http://sourceforge.net/projects/sshpass/files/latest/download -O sshpass.tar.gz
方式2:点击sshpas下载
2.5.2 编译安装
tar -zxvf sshpass-1.06.tar.gz
cd sshpass-1.06
./configure
make
sudo make install
2.5.3 使用sshpass工具进行ssh免密登陆
sshpass -p “密码” ssh username@PC的IP
2.5.4 使用sshpass远程执行PC上的命令
sshpass -p “密码” ssh username@PC的IP “PC上的命令”
2.5 sshpass工具交叉编译
参考文章交叉编译 sshpass即可
参考文章:
1 sshpass工具介绍