手握多台小鸡怎么管?SSH别名 + tmux保会话,登录效率翻倍


导读:VPS玩家少则两三台、多则十几台机器。每次登录还在背IP、记端口、翻密码备忘?SSH一断线,编译到一半的进程直接没?多台机器的日志想同时盯着,只能开十几个窗口?这篇用两个工具解决全部问题:SSH config管登录别名,tmux管会话不掉线。都是系统自带或一条命令能装的工具,配完之后管理一堆小鸡像管理一台一样轻松。


一、SSH config:给每台机器起名字


先看痛点。多机直连的命令长这样:


ssh root@103.x.x.x -p 2222


IP要背、端口要记、密钥文件要指定,三台以上就开始痛苦。


编辑(或创建)本地的 ~/.ssh/config 文件,给每台机器写一段:


Host web1

HostName 103.x.x.x

Port 2222

User root

IdentityFile ~/.ssh/id_ed25519


Host db1

HostName 45.x.x.x

User ubuntu


保存后,登录变成:


ssh web1


scp传文件同样受益:


scp backup.tar.gz web1:/root/


机器越多,收益越大。给别名起有规则的名字(按用途、按地区),十几台机器也能闭眼登录。


二、进阶:跳板机一行配置


安全做得好的玩家会把机器藏在一台入口机后面,其余机器不暴露公网SSH。传统做法要两步登录,config里一行搞定:


Host web1

HostName 10.0.0.5

User root

ProxyJump bastion


ProxyJump指定跳板别名后,ssh web1 自动先连bastion再穿到内网机器,体验和直连完全一致。


三、别把鸡蛋放一个文件里:config拆分


机器多了以后单文件难维护,config支持Include指令:


Include ~/.ssh/hosts/*


把不同用途的机器配置拆成多个文件放进这个目录,主文件只留全局默认项。整理机器清单时再也不用在几百行里翻。


四、tmux:让会话不随断线消失


第二个痛点:SSH断线(网络抖动、合盖睡眠)时,正在跑的命令直接阵亡。编译、备份、下载,跑到90%挂掉是最疼的。


tmux的解法:把会话放在服务器上跑,断线只是暂时看不见,重连后原样恢复。


上手三板斧:


新建会话:


tmux new -s work


进去后正常敲命令。此时按 Ctrl+b 再按 d(先松开Ctrl+b再按d),会话被剥离,你安全退出SSH,服务器上的任务继续跑。


重连后找回会话:


tmux attach -t work


屏幕回到断线前的现场,任务还在跑、输出都在。


列出所有会话:


tmux ls


配合第四节的SSH别名,完整工作流是两条命令:


ssh web1

tmux attach -t work


这就是多机玩家的日常:两下键盘,回到每台机器的现场。


五、tmux多窗格:一块屏幕干两件事


会话内还可以分屏。常用三个快捷键(都是先按Ctrl+b松开,再按下一个键):


% 左右分屏;

双引号键 上下分屏;

方向键 在窗格间移动光标。


典型用法:左窗格盯实时日志 tail -f,右窗格敲命令重启服务,一块屏幕同时看输入和输出。 x 关闭当前窗格。


再进一步,把常用布局保存成tmux配置(~/.tmux.conf),每台机器复制同一份,所有小鸡的操作手感完全统一。


六、组合出完整工作流


把两个工具串起来,多机管理的完整姿势:


1. 所有机器写进 ~/.ssh/config,统一别名;

2. 长任务一律先进tmux再执行,断线零损失;

3. 服务器上常驻一个work会话,attach即回现场;

4. 配置文件本身放进Git仓库管理,换电脑十分钟恢复全部习惯。


顺带一提:这些配置的备份和同步,正好可以纳入本站之前讲的restic自动备份体系,把 ~/.ssh 和 ~/.tmux.conf 一起纳入备份清单,换机无忧。


结语


多机管理的关键不是更强大的监控面板,而是把登录和会话这两个高频动作优化到极致。SSH config解决怎么进得快,tmux解决怎么不断线,两个都是零成本工具,配一次受益终身。


机器超过三台还没用上这套组合的,今天就可以花二十分钟配置起来——这是回报率最高的一次运维投资。


手机扫码阅读

微信或手机浏览器扫一扫,随时随地随心阅读与分享

忘了root密码怎么办?VNC模式重置密码实录,别急着DD重装

ARM架构VPS悄然兴起:同价位配置高一截,但下单前先想清楚三件事

评 论
更换验证码