Mac使用iTerm2 一键免密登录

2019-11-26 16:08:19来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Mac使用iTerm2 一键免密登录

iTerm是mac平台很好用的ssh管理工具,今天给大家介绍一种使用iTerm一键登陆服务器优雅的方式,这样就不需要每次连接服务器时都需要输入端口号、用户名、ip地址、密码(为了安全,服务器密码都好长好长)。

脚本

我们先准备一个脚本:

#!/usr/bin/expect

set timeout 30
spawn ssh -p [lindex $argv 0] [lindex $argv 1]@[lindex $argv 2]
expect {
        "(yes/no)?"
        {send "yes\n";exp_continue}
        "password:"
        {send "[lindex $argv 3]\n"}
}
interact

这个脚本需要传入服务器的四个参数:端口号、服务器用户名、服务器地址 、对应用户名的密码 。

当我们看懂这个脚本后,其实就可以简化一下,比如服务器ssh端口号默认为22,因此有时候不需要指定端口的情况下,就可以在脚本中删除-p [lindex $argv 0],同时记得修改后面argv的索引,比如argv1 改为 argv0,以此类推,不过为了保证脚本的通用性,不推荐大家这样做,因为为了服务器安全,避免被暴力破解,服务器是不使用默认的22端口号的。

接下来我们把这个脚本放到$PATH 下,这样就可以直接使用这个脚本(不用通过文件路径就可以直接使用,像/usr/local/bin//usr/bin下面的命令),因此小明建议直接放/usr/local/bin下面,也可以通过命令

echo $PATH

查看一下你自己的PATH路径,小明的PATH路径如下所示

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

然后我们使用chmod让文件变成可执行文件:

sudo chmod +x login.exp

注意:最新Mac os 可能对这些目录权限限制比较严格,因此需要sudo 才能成功

配置iTerm2

我们打开iTerm2->菜单Profiles->Open Profiles->Edit Profiles,如下所示:

配置profile

红色标注的命令就是我们要连接服务器的配置信息,按着顺序输入即可。下次我们就可以在Profiles下面一键连接自己的服务器啦。另外,我们可以使用Tags标注该服务器,在服务器比较多的场景下(小明公司的服务器就比较多)就能很快找到自己想要的服务器。今天的Mac 使用 iTerm2文章就分享到这里啦,小伙伴们有什么问题都可以在下方留言!

欢迎关注微信公众号”程序员小明”,获取更多资源。
程序员小明


原文链接:https://www.cnblogs.com/coderxx/p/11935869.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:分库分表就能无限扩容吗,解释得太好了

下一篇:【设计模式】单例模式的八种姿态写法分析