在mac终端连接服务器的操作中,掌握正确的方法和工具能够显著提升工作效率,macOS系统自带的终端应用(Terminal)提供了强大的命令行界面,支持通过多种协议与远程服务器建立连接,包括SSH、FTP、SFTP等,本文将详细介绍不同连接方式的操作步骤、参数配置及注意事项,帮助用户快速实现mac终端与服务器的稳定连接。

通过SSH协议连接Linux/Unix服务器
SSH(Secure Shell)是目前最常用的远程服务器连接协议,采用加密传输保障数据安全,适用于Linux、Unix及macOS系统。
基本连接命令
在mac终端中,使用ssh命令即可建立连接,基本语法为:
ssh [用户名]@[服务器IP地址或域名]
以用户admin连接IP为168.1.100的服务器:
ssh admin@192.168.1.100
首次连接时,终端会提示服务器的主机密钥指纹,输入yes确认即可。
指定端口号与密钥登录
若服务器SSH端口非默认的22,或需通过密钥文件(如id_rsa)登录,可使用以下参数:
ssh -p [端口号] -i [密钥文件路径] [用户名]@[服务器IP]
示例:
ssh -p 2222 -i ~/.ssh/server_key.pem admin@192.168.1.100
SSH配置文件优化
为避免每次输入冗长命令,可编辑~/.ssh/config文件(若不存在则创建),添加服务器别名配置:

Host myserver
HostName 192.168.1.100
User admin
Port 2222
IdentityFile ~/.ssh/server_key.pem
配置后,直接通过ssh myserver即可连接,无需重复输入IP和端口。
通过SFTP/FTP协议传输文件
若需在mac与服务器间传输文件,SFTP(基于SSH的安全文件传输)或FTP(文件传输协议)是常用选择。
使用SFTP传输文件
SFTP集成于SSH协议,无需额外安装,终端命令如下:
sftp [用户名]@[服务器IP]
连接成功后,可使用以下命令操作文件:
ls:列出服务器端文件get [远程文件]:下载文件到本地put [本地文件]:上传文件到服务器exit:退出SFTP会话
使用FTP工具(需安装客户端)
若服务器仅支持FTP,可安装macOS兼容的FTP客户端,如Cyberduck或FileZilla,以Cyberduck为例:
- 下载并打开Cyberduck,选择“连接至服务器 > FTP”。
- 输入服务器地址、用户名、密码及端口(默认21)。
- 连接后可通过图形界面拖拽文件,支持加密传输(FTPS)。
高级配置与故障排查
SSH代理转发
若需通过跳板机(中间服务器)访问目标服务器,可配置SSH代理转发:
ssh -J [跳板机用户]@[跳板机IP] [目标服务器用户]@[目标服务器IP]
或在~/.ssh/config中添加:

Host targetserver
HostName 目标服务器IP
User 目标用户
ProxyJump 跳板机用户@跳板机IP
常见问题解决
| 问题 | 可能原因及解决方案 |
|---|---|
Connection refused |
检查服务器IP、端口是否正确;确认SSH服务是否运行(服务器端执行systemctl start sshd)。 |
Permission denied |
验证用户名、密码或密钥文件权限(密钥文件需设置chmod 600 ~/.ssh/server_key.pem)。 |
Connection timed out |
检查网络连通性(使用ping [服务器IP]);确认防火墙是否放行SSH端口。 |
相关问答FAQs
Q1:如何避免每次SSH连接时输入密码?
A1:可通过SSH密钥对实现免密登录,步骤如下:
- 在mac终端生成密钥对(默认生成
id_rsa私钥和id_rsa.pub公钥):ssh-keygen -t rsa -b 4096
- 复制到服务器的
~/.ssh/authorized_keys文件中:ssh-copy-id -i ~/.ssh/id_rsa.pub [用户名]@[服务器IP]
- 若
ssh-copy-id不可用,可手动将公钥内容追加至服务器authorized_keys文件。
Q2:SSH连接后如何保持会话持久化(避免超时断开)?
A2:可通过以下方法延长或避免会话超时:
- 客户端配置:在
~/.ssh/config中添加:Host * ServerAliveInterval 60 ServerAliveCountMax 3表示每60秒发送一次心跳包,最多发送3次。
- 服务器端配置:编辑服务器SSH配置文件
/etc/ssh/sshd_config,调整以下参数:ClientAliveInterval 60 ClientAliveCountMax 3
保存后重启SSH服务(
systemctl restart sshd)。
通过以上方法,用户可高效实现mac终端与服务器的稳定连接,并根据实际需求灵活调整配置,提升远程操作体验。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/78511.html