前言
相信做开发的同学,对SSH工具都不陌生,经常连接登录各种通道/堡垒机、服务器做部署和开发等。Windows系统下的SSH工具如secureCRT、Xshell等都非常优秀,支持免密码登录。Mac 系统的同学,用的做多的估计除了系统自带的终端外,就是iTerm2了,外观简洁漂亮,支持各种插件的搭配使用,但让很多同学苦恼的时,iTerm2下面的登录服务器每次都需要输入密码,这个比较麻烦,其实也有解决的办法,下面我们就来详细介绍下iTerm2免密码登录的几种方式
一、sshpass
1.安装sshpass支持,具体操作如下:
# 源码包安装
wget https://sourceforge.net/projects/sshpass/files/sshpass/1.10/sshpass-1.10.tar.gz/download
tar xvzf sshpass-1.10.tar.gz
cd sshpass-1.10.tar.gz
./configure
make
make install
# yum安装
yum -y install sshpass
2.配置登录
# 1.直接远程链接某主机
sshpass -p {密码} ssh {用户名}@{主机IP}
# 2.远程链接指定ssh的端口
sshpass -p {密码} ssh -p ${端口} {用户名}@{主机IP}
# 3.从密码文件读取文件内容做为密码去远程链接主机
sshpass -f ${密码文本文件} ssh {用户名}@{主机IP}
/usr/local/bin/sshpass -f /Users/robin/iterm2_pass/test.txt ssh -p22 root@192.168.10.193
二、自定义登录脚本
之前使用sshpass方式,过一段时间后终端登录就会出现莫名奇妙的乱码、屏幕覆盖等问题,退出后正常。咨询其他用过的同学,应该是初始设置的宽高和sshpass登录后动态变化影响,具体也没仔细再了解。换了这种方式,目前为止用的一直比较正常
1.配置iTerm2 Profiles
/Users/robin/iterm2_shell/tongdaoji.sh
2.登录脚本
# !/bin/bash
# description just for weibo jump ssh login
secret="twOXrp6oSLxES"
user="robin"
host="test.ngxcode.com"
port=22
echo $secret | pbcopy
ssh -p$port $user@$host
3.执行登录
点击iTerm2->Profile->test(自定义名称),进入页面后command
+ v
。这种方式使用密码复制的模式,不需要输入具体密码,执行脚本会自动copy到剪切板,粘贴即可。
结语
以上是自己在Mac iTerm2下面使用免密码输入的两种方式,希望能帮助到需要的同学,更多文章请关注本站其他内容,感谢!