标签归档:mac

Mac下实现ssh自动登录和主机管理

在从Windows系统迁移到Mac后,ssh登录用的不太顺手。由于用惯了SecureCRT的自动登录和主机管理功能,而正版的SecureCRT for Mac OS X太贵了(99$),秉承着Mac下不用D版软件的想法,一直在寻找可以替代SecureCRT的方法。

Mac下没有类似SecureCRT的软件,自带的终端功能太弱了,就改用了Iterm2
Iterm2确实比较好用:

    支持多tab
      Cmd+left arrow 切换到左边tab
      Cmd+right arrow 切换到邮编tab
      cmd+数字 直接切换到某个tab
      Cmd-Option-E 显示所有tab,以便搜索导航
    可以将窗口水平、垂直布局,分成多个pane
      Cmd-D 垂直切分
      Cmd-Shift-D 水平切分
      Cmd-[ 和 Cmd-] 在不同pane中切换

但是Iterm2也不能像SecureCRT那样方便管理主机和自动登录,只能通过脚本来解决了。在网上找到用expect做自动登录的项目ssh-auto-login,和一个用python写的主机管理程序sshgo,发现把两个工程合并在一起,刚好可以实现SSH自动登录和主机管理功能。

ssh-auto-login其实就是用expect实现自动登录功能。expect的用法如下:

sshgo这个项目是用python脚本写了主机管理的界面,选择相应主机后,会执行ssh命令。我改了下,在选择主机后不是简单的执行ssh,而是调用expect脚本,这样就能免输密码访问了。

感谢Github和两个项目的作者,我只是把两个的功能合在一起而已。修改后的代码放在了github(ssh-auto-login-manage)上,项目的描述为:

SSH auto login in without password and managing hosts

--> 阅读全文