刚接触远程连接命令,很多人会觉得门槛高,黑底终端界面,输错一个字母就报错。实际日常使用常用命令不多,熟练之后操作比图形界面更顺手。下面按不同使用场景梳理常用远程连接命令。
SSH是最经典的远程连接工具,用于Linux服务器。基础命令格式ssh 用户名@IP地址,示例ssh root@192.168.1.100。首次连接,系统询问是否信任主机密钥,输入yes,填写密码登录。默认端口22,服务器修改端口之后增加-p参数,ssh -p 2222 root@192.168.1.100。不想反复输入密码,可以在本地用ssh-keygen生成密钥对,ssh-copy-id推送公钥到服务器,后续免密登录,比密码登录更安全便捷。

Windows服务器使用的体系不一样。早期依靠Telnet,现在基本被RDP替代。RDP图形客户端叫远程桌面连接,Windows搜索框输入mstsc打开,填写IP、账号密码,登录之后获得完整桌面。命令行版本使用频率低,脚本批量管理Windows服务器,一般用PowerShell的Enter-PSSession或是WinRM协议。Enter-PSSession写法Enter-PSSession -ComputerName 192.168.1.100 -Credential 用户名,执行之后弹窗输入密码。
macOS和Linux之间互通,SSH通用。macOS自带终端,直接运行ssh命令。Windows系统连接Linux,Win10及以上版本PowerShell内置ssh客户端,不用额外安装PuTTY。偏好图形工具,可以选用MobaXterm、Xshell、FinalShell,界面友好,支持保存会话、多标签、文件传输,底层依旧调用SSH,只是封装图形操作。
文件传输命令独立于远程登录。SCP基于SSH协议,格式scp 本地文件 用户名@IP:远程路径。示例scp test.txt root@192.168.1.100:/root/,把本地test.txt上传至服务器/root目录。从服务器下载文件,调换两端路径即可。SCP操作简单,缺点是传输大文件看不到进度,不支持断点续传。这种场景适合rsync,rsync -avz 本地目录 用户名@IP:远程目录,-a代表归档模式,-v展示传输进度,-z开启压缩传输。rsync支持增量同步,第二次传输只上传改动文件,速度优于SCP。
SFTP是另一种文件传输方案,开启交互式会话。输入sftp 用户名@IP进入会话,命令和本地文件操作类似,ls查看目录,cd切换文件夹,put上传,get下载。适合一边浏览远程目录一边传输文件。图形化SFTP客户端包含FileZilla、WinSCP,拖拽文件传输,不用记忆命令。
跳板机属于远程连接特殊场景。企业内网服务器不直接对公网开放,先连接跳板机,再从跳板机访问内网主机。SSH的ProxyJump参数实现一键跳转,ssh -J 跳板机用户@跳板机IP 目标用户@目标IP。一条命令完成两次登录,不用先登录跳板再手动连接目标服务器。老旧SSH版本不支持-J参数,可以使用ProxyCommand,实现效果一致。
连接空闲超时断开是常见问题。SSH保持连接一段时间无操作,几分钟之后断开,来自服务器空闲超时配置。解决方式在本地SSH配置文件增加ServerAliveInterval 60,每60秒发送心跳包,通知服务器连接存活。配置文件路径~/.ssh/config,可以单独为每台服务器设置参数,主机别名、账号、端口、密钥路径全部配置完成,直接ssh 别名就能连接,不用重复输入长串地址。
命令执行失败无法连接,优先查看报错提示。Connection refused一般端口错误或是服务未启动。Connection timed out代表网络不通,检查防火墙与IP连通性。Permission denied是账号密码错误或是密钥不匹配。Host key verification failed代表服务器密钥变动,可能重装系统或是遭遇中间人攻击,确认安全之后删除本地known_hosts内对应条目重试。
这些命令工具,刚开始接触参数多,不容易记全。日常高频使用的就ssh、scp、rsync,其余用到再查阅文档。核心思路比背诵命令更重要:连不上优先排查网络,再检查服务状态,接着核对权限和密钥。这条排查顺序更实用。