mac 连接linux 服务器
- 云服务器
- 2026-01-02
- 8
在Mac系统连接Linux服务器的过程中,用户通常需要依赖远程终端工具和文件传输协议,以实现命令行操作、文件管理或应用部署等需求,以下是详细的操作步骤、工具选择及常见问题解决方案,帮助用户高效完成连接任务。
连接前的准备工作
在开始连接前,需确保Mac和Linux服务器满足基本条件:
- 网络连通性:Mac与Linux服务器需处于同一局域网或通过公网互通,可通过ping命令测试(如ping 服务器IP地址)。
- 服务器信息:获取Linux服务器的IP地址(或域名)、SSH端口号(默认为22,若修改过需确认)、用户名及密码(或SSH密钥)。
- Mac系统要求:macOS系统默认已安装SSH客户端(通过终端应用),无需额外安装;若需图形化界面,可准备第三方工具(如Remote Desktop、Xquartz等)。
使用SSH命令行连接
SSH(Secure Shell)是Mac连接Linux服务器的最常用方式,支持加密传输,保障数据安全。
基本连接步骤
- 打开Mac终端:通过“启动台”搜索“终端”或使用快捷键Command + 空格输入“终端”打开。
- 输入连接命令: ssh 用户名@服务器IP地址
ssh root@192.168.1.100,首次连接时会提示“Are you sure you want to continue connecting (yes/no)?”,输入yes并回车。
- 输入密码:根据提示输入Linux服务器的用户密码(输入时字符不显示,直接输入后回车即可)。
连接成功后,终端会显示Linux服务器的欢迎信息及命令行提示符(如root@server:~#),此时可执行Linux命令。
高级SSH配置
-
指定端口号:若服务器SSH端口非默认22,可通过p参数指定:
ssh p 2222 root@192.168.1.100。
-
使用SSH密钥免密登录(推荐):
- 在Mac上生成SSH密钥对(若未生成): sshkeygen t rsa b 4096 C "your_email@example.com"
按回车使用默认路径(~/.ssh/id_rsa),可设置密码或直接回车跳过。
- 将公钥传输至Linux服务器: sshcopyid p 端口号 用户名@服务器IP
输入服务器密码后,公钥会自动添加到服务器的~/.ssh/authorized_keys文件中。
- 免密登录:再次执行ssh命令时,无需输入密码即可连接。
- Mac端工具:Screen Sharing(系统自带)、RealVNC Viewer、Remmina等。
- 连接步骤:
- 在Linux服务器启动VNC服务(如vncserver :1),设置访问密码。
- 在Mac的Screen Sharing中,输入服务器IP地址和VNC端口号(默认为5901,对应1),点击“连接”并输入VNC密码。
- 安装XQuartz(Mac端):从官网下载并安装XQuartz(https://www.xquartz.org/)。
- 启用X11转发:SSH连接时添加X或Y参数(X安全性更高,Y性能更好): ssh X 用户名@服务器IP
连接成功后,直接在Linux命令行运行图形应用(如gedit、nautilus),应用窗口会显示在Mac桌面。
- 上传文件(Mac→Linux): scp 本地文件路径 用户名@服务器IP:目标路径
scp ~/Desktop/test.txt root@192.168.1.100:/home/。

- 下载文件(Linux→Mac): scp 用户名@服务器IP:远程文件路径 本地路径
scp root@192.168.1.100:/home/test.txt ~/Desktop/。
SFTP(SSH File Transfer Protocol)
交互式文件传输工具,支持类似FTP的操作:
- 连接SFTP: sftp 用户名@服务器IP
- 常用命令:
| 命令 | 功能 |
|||
| put 本地文件 | 上传文件 |
| get 远程文件 | 下载文件 |
| ls | 列出服务器目录 |
| cd 目录名 | 切换服务器目录 |
| lcd 本地目录 | 切换Mac本地目录 |
| exit | 退出SFTP |
第三方工具
- Cyberduck:支持SFTP、FTP、SCP等协议,图形化界面操作简单,适合新手。
- FileZilla:免费开源的FTP客户端,可通过SFTP协议连接Linux服务器,支持拖拽上传/下载。
常见问题与解决方案
-
连接超时或被拒绝
- 原因:服务器SSH服务未启动、防火墙拦截IP、端口号错误。
- 解决:
- 检查服务器SSH服务状态(Linux端执行systemctl status sshd或service ssh status),未启动则执行systemctl start sshd。
- 检查服务器防火墙规则(如iptables或firewalld),开放SSH端口(如firewallcmd addport=22/tcp permanent)。
- 确认IP地址和端口号是否正确,可通过telnet 服务器IP 端口号测试连通性。
-
权限问题(如无法写入目录)
- 原因:当前用户对目标目录无执行/写权限。
- 解决:
- 使用chmod修改权限(如chmod 755 /目标目录,chown 用户名:用户组 /目标目录)。
- 确认是否使用正确的用户登录(如普通用户无权限操作/root目录,需切换至root或使用sudo)。
FAQs
Q1: 忘记Linux服务器密码怎么办?
A1: 若为root用户,可通过重启服务器进入单用户模式重置密码;若为普通用户,可联系管理员重置,若使用SSH密钥登录,可通过重置密钥或修改~/.ssh/authorized_keys文件解决。
Q2: Mac终端显示“Permission denied (publickey,password)”如何处理?
A2: 通常是由于SSH密钥认证失败或密码错误导致,可尝试以下步骤:
- 确认是否正确设置了SSH密钥并传输至服务器(检查~/.ssh/authorized_keys文件是否存在公钥内容);
- 尝试使用密码登录时,确保输入的密码正确(注意区分大小写);
- 检查服务器SSH配置文件(/etc/ssh/sshd_config)中是否禁用了密码认证(PasswordAuthentication yes需开启)。
使用图形化工具连接
若需图形化界面操作(如使用Linux的桌面环境或图形化应用),可选择以下工具:
VNC(Virtual Network Computing)
VNC适用于远程桌面访问,需在Linux服务器安装VNC服务(如TigerVNC、RealVNC)。


X11转发(适用于Linux图形应用)
若Linux服务器安装了X Window系统,可通过SSH转发图形应用至Mac:
文件传输与管理
连接服务器后,常需传输文件,可通过以下方式实现:
SCP(Secure Copy)
基于SSH协议,用于上传或下载文件:
- 在Mac上生成SSH密钥对(若未生成): sshkeygen t rsa b 4096 C "your_email@example.com"