以下是 Mac 连接 Linux 服务器的完整指南,涵盖 SSH 连接、文件传输、配置优化及常见问题解决:
一、SSH 连接(命令行方式)
1. 基础连接
步骤:
打开 Mac 终端(Applications → Utilities → Terminal)。
输入命令:
ssh 用户名@服务器IP地址
例如:ssh root@192.168.1.100。
首次连接需确认服务器指纹,输入 yes继续。
输入密码完成登录。
指定端口:
若 SSH 服务未使用默认端口(22),需添加 -p参数:
ssh -p 端口号 用户名@IP
例如:ssh -p 2222 user@192.168.1.100。
2. 密钥认证(免密登录)
生成密钥对:
ssh-keygen -t ed25519 # 生成密钥(默认保存在 ~/.ssh/id_ed25519)
上传公钥到服务器:
ssh-copy-id -p 端口号 用户名@IP
或手动将 ~/.ssh/id_ed25519.pub内容追加到服务器的 ~/.ssh/authorized_keys文件中。
3. 配置别名(简化命令)
编辑 ~/.ssh/config文件,添加:
Host myserver
HostName 192.168.1.100
User root
Port 2222
之后只需输入 ssh myserver即可连接。
二、文件传输
1. SCP 命令
上传文件:
scp -P 端口号 本地文件路径 用户名@IP:服务器目标路径
示例:scp -P 2222 /Users/file.txt root@192.168.1.100:/home/。
下载文件:
scp -P 端口号 用户名@IP:服务器文件路径 本地目标路径
示例:scp -P 2222 root@192.168.1.100:/home/file.txt /Users/。
传输文件夹:
添加 -r参数递归传输:
scp -r -P 2222 /Users/folder root@192.168.1.100:/home/
2. FileZilla(图形化工具)
配置 SFTP:
打开 FileZilla,填写 Host(IP)、Username、Password、Port。
点击 快速连接,即可通过拖拽文件传输。
三、常见问题解决
1. 连接失败
检查 SSH 服务状态:
在 Linux 服务器执行:
sudo systemctl status ssh
若未运行,启动服务:
sudo systemctl start ssh
防火墙/端口限制:
确保服务器防火墙开放 SSH 端口(默认 22 或自定义端口)。
2. 密钥认证失败
权限问题:
确保服务器端 ~/.ssh目录权限为 700,authorized_keys文件权限为 600:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
3. 虚拟机网络配置
若通过虚拟机(如 VMware/VirtualBox)连接,需设置虚拟机网络为 桥接模式 或 NAT 模式,并确认 IP 地址可被 Mac 访问。
四、高级配置
1. 允许 Root 登录
修改服务器 SSH 配置:
sudo vim /etc/ssh/sshd_config
找到 PermitRootLogin,改为 yes并重启服务:
sudo systemctl restart ssh
2. 多服务器管理
使用 ~/.ssh/config文件为不同服务器定义别名,简化连接命令。
五、安全建议
禁用密码登录:在服务器 SSH 配置中设置 PasswordAuthentication no,仅允许密钥登录。
定期更新密钥:若密钥泄露,及时生成新密钥并替换旧密钥。
通过上述方法,可高效、安全地实现 Mac 与 Linux 服务器的远程连接与文件传输。

