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,如下所示:

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

Mac使用iTerm2 一键免密登录的更多相关文章
- 【转】MAC 配置ssh免密登录
配了挺多次免密登录,老是忘了,备份一下 转载自知乎,如侵删.https://zhuanlan.zhihu.com/p/32279976 -------------------------------- ...
- Linux入门——SSH免密登录
SSH免密登录 1.简介 SSH是一种网络协议,用于计算机之间的加密登录. 本文针对的实现是OpenSSH,它是自由软件,应用非常广泛. 2.初始化公钥私钥 有rsa,dsa两种加密方式,生成的公钥私 ...
- SSH 免密登录服务器
本文详解如何以多种方法实现ssh免密码登陆远程服务器 阅读须知: 1.以下方法操作时请不要随意切换目录. 2.xxx为私钥,xxx.pub是公钥(默认一般文件名为id_rsa和id_rsa.pub,可 ...
- Git (一)预设环境和免密登录
背景 一直用的svn,这段时间换了之后才发现git的强大功能.缺点就是可能上手比较难一点. 接下来就带你Git入门 Git是什么? Git是目前世界上最先进的分布式版本控制系统 Git有什么特点?好用 ...
- ubuntu16.04服务器配置ssh免密登录
原版资料英文,链接在此 https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2 在客户端操作 ssh-k ...
- 基于vagrant工具在win7下免密登录linux
一.SSH加密方式 SSH采用的是"非对称密钥系统",即耳熟能详的公钥私钥加密系统,其安全验证又分为两种级别. 1. 基于口令的安全验证 这种方式使用用户名密码进行联机登录,一般情 ...
- openstack私有云布署实践【11.3 计算nova - compute节点-nova用户免密登录(用于云主机冷迁移+扩展云主机大小)】
云主机迁移+扩展云主机大小 ,官方说它依赖nova用户之间的免密登录.确保每个resion区域的compute节点服务器他们可以相互SSH免密 compute1-7 他们相互SSH免密 k ...
- 关于Ubuntu的ssh免密登录
1.打开"终端窗口",输入"sudo apt-get update"-->回车-->"输入当前登录用户的管理员密码"--> ...
- linux(十)配置ssh免密登录实现
知道ssh的朋友应该知道它是用来干什么的,如果你不知道什么是ssh远程登录的话,可以去看一下我的上一篇博客,关于linux的网络基础的知识.备注:ssh是用于远端登入.执行ssh指令开启终端机阶段作业 ...
随机推荐
- Ubuntu 16.04 安装 CUDA10.1 (解决循环登陆的问题)
0. 前言 这里直接用 cuda安装文件同时安装 NVIDIA 驱动和 CUDA,没有单独安装更高版本的 NVIDIA 驱动: 此安装是在 Intel 集显下的图形化界面,即用集显做 display, ...
- Linux查看哪些进程占用的系统 buffer/cache 较高 (hcache,lsof)命令
原文内容来自于LZ(楼主)的印象笔记,如出现排版异常或图片丢失等问题,可查看当前链接:https://app.yinxiang.com/shard/s17/nl/19391737/9652651a-7 ...
- 利用PyInstaller打包exe文件
前言 平常我们通过Python写完一些小脚本之后,如果使用不频繁的话,一般会选择在DOS界面直接跑脚本,或者在IDE中运行.但当我们需要频繁使用某些脚本,或者在没有Python环境的机器上也能顺利运行 ...
- 在cnetos7上搭建mysql主从服务
本文主要是介绍在centos上搭建mysql的主从服务器.如果没有搭建过的,可以查看我以前的博客,里面有详细的安装centos和在centos上安装mysql的说明. 一.安装从虚拟机: 1.右键—& ...
- How to: Display a List of Non-Persistent Objects in a Popup Dialog 如何:在弹出对话框中显示非持久化对象列表
This example demonstrates how to populate and display a list of objects that are not bound to the da ...
- js Set对象
1.将数组转换成Set对象 let arr1 = new Set([1,2,3,4]) console.log(arr1) //{1,2,3,4} 2.数组去重 let arr2 = new Set( ...
- TimeSpan的用法
TimeSpan的属性和方法: 下面的列表涵盖了其中的一部分: 属性: Add:与另一个TimeSpan值相加. Days: 返回用天数计算的TimeSpan值.Hours: 返回用小时计算的Time ...
- DOMContentLoaded vs jQuery.ready vs onload, How To Decide When Your Code Should Run
At a Glance Script tags have access to any element which appears before them in the HTML. jQuery.rea ...
- C语言复习上
通常开始学习C语言的时候,第一句写的就是"helloword" int main(){ printf("hello word"); } 接下来的日子里需要注意的 ...
- 一天两道pat(3)1007,1008
1007没什么好说的,就是注意暴力求素数的时候,循环到(根号n)+1就好: 重点说说1008,不用新开一个数组就实现循环移位的操作 一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下 ...