mac下没有xshell等连接linux服务器的工具,当需要管理的服务器越来越多之后,密码管理就成了一个很头疼的问题,每次都需要去复制粘贴密码,浪费了很多时间,在网上查了不少资料,发现mac下可以使用iterm2+sshpass来实现免密登陆,特此记录下。
一、安装iterm2
直接到官网下载安装: http://iterm2.com/
一、安装sshpass
1)下载:http://sourceforge.net/projects/sshpass/files/
2)解压后,进入sshpass目录,个人习惯直接将目录放到/usr/local/Cellar/目录下去了
3)安装
./configure make make install
4)安装完成后,进行下验证,在终端输入:
sshpass -h
出现下图即表示已经安装成功
![](http://upload-images.jianshu.io/upload_images/5640460-da387f8f4d46d5ae.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1000/format/webp)
image.png
三、准备密码
连接方式有两种,一种是通过命令行直接连接,第二种是通过密码进行连接
1)通过文件连接,将密码写入到文件,如在桌面创建文件sshpwd,文件内容为连接密码,如123456
![](http://upload-images.jianshu.io/upload_images/5640460-5150a974c04d55c8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/900/format/webp)
image.png
![](http://upload-images.jianshu.io/upload_images/5640460-5b558bbd6426ae20.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/540/format/webp)
image.png
命令为:
/usr/local/bin/sshpass -f 文件全路径 ssh -p端口号 用户名@IP
如:
/usr/local/bin/sshpass -f /Users/gemini/Desktop/sshpwd ssh -p22 root@192.168.1.166
在配置前,可以在终端先执行下,确保命令没有问题。
文件创建完成后,开始配置iterm2。
点击菜单->Profiles->Open Profiles
![](http://upload-images.jianshu.io/upload_images/5640460-d85e1e4cebb60f33.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/738/format/webp)
image.png
弹出窗口后,点击Edit Profiles
![](http://upload-images.jianshu.io/upload_images/5640460-eb250c71636dfa45.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1000/format/webp)
image.png
然后如图操作即可。输入完命令后,直接点击任意处即可生效。
![](http://upload-images.jianshu.io/upload_images/5640460-5524d3c6d15ee0c5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1000/format/webp)
image.png
2)在命令中直接配置明文密码。
整体上与第一种模式是类似,唯一的差异点就在于命令上
/usr/local/bin/sshpass -p 密码 ssh -p端口号 用户名@IP 如: /usr/local/bin/sshpass -p 123456 ssh -p22 root@192.168.1.168
作者:Gemkey
链接:https://www.jianshu.com/p/5e2505245c8b
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。