Ubuntu+Cpolar配置Ubuntu服务器
在 Ubuntu 上使用 SSH 和 cpolar 配置远程访问,通常分为三个核心步骤:先在 Ubuntu 上安装并启用 SSH 服务,再安装 cpolar 并创建隧道将本地 22 端口映射到公网,最后在客户端进行公网 SSH 连接。下面是完整的详细操作指南。
🔧 一、Ubuntu 服务端:安装与启用 SSH
SSH 是进行远程登录的基础服务。默认情况下,Ubuntu 桌面版可能未预装 SSH 服务,需要手动安装。
-
更新软件包列表
sudo apt update -
安装 OpenSSH 服务端
sudo apt install openssh-server -y安装完成后,SSH 服务通常会自动启动,其配置文件位于
/etc/ssh/sshd_config。 -
设置 SSH 开机自启并检查状态
# 启用并立即启动 SSH 服务 sudo systemctl enable --now ssh # 验证 SSH 是否正常运行(应显示 active (running)) sudo systemctl status ssh -
配置防火墙放行 SSH 端口
如果启用了ufw防火墙,需要允许 SSH(默认 22 端口):sudo ufw allow ssh sudo ufw enable # 若防火墙未启用,可省略 -
本地测试 SSH 连接
在同一局域网内,先用另一台设备测试是否能正常连接:# 找到 Ubuntu 的内网 IP ip addr show | grep inet # 在客户端执行连接测试 ssh 你的Ubuntu用户名@内网IP地址
⚠️ 注意:此时只能在同一局域网内访问,离开本地网络即失效。下一步利用 cpolar 解决公网访问问题。
🌐 二、Ubuntu 服务端:安装 cpolar 并创建 SSH 隧道
cpolar 是一款内网穿透工具,能将本地 SSH 端口(22)映射到一个公网地址,实现外网访问。
1. 注册 cpolar 并获取 Token
- 访问 cpolar 官网 注册账号。
- 登录后进入「验证」或「Token」页面,复制你的认证 Token(一串形如
xxxxxxxxxxxx的字符串)。
2. 在 Ubuntu 上安装 cpolar
打开终端,执行以下命令(使用官方一键安装脚本):
# 国内用户推荐使用此命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
# 若在国外,可使用短链接
curl -sL https://git.io/cpolar | sudo bash
安装完成后,验证版本以确认安装成功:
cpolar version
3. 配置 Token 认证并启动服务
# 替换为你在 cpolar 后台获取的真实 Token
cpolar authtoken 你的真实Token
# 将 cpolar 添加为系统服务并设置为开机自启
sudo systemctl enable cpolar
# 启动 cpolar 服务
sudo systemctl start cpolar
# 查看服务状态,确保为 active (running)
sudo systemctl status cpolar
4. 登录 cpolar Web UI 并创建 SSH 隧道
- 在 Ubuntu 浏览器中访问本地管理界面:
http://127.0.0.1:9200,使用 cpolar 账号登录。 - 进入「隧道管理」→「创建隧道」,按以下参数填写:
- 隧道名称:自定义,如
ubuntu-ssh - 协议:选择
tcp - 本地地址:填写
22(SSH 默认端口) - 域名类型:免费用户选择「随机域名」
- 地区:选择
China VIP(以获得更好连接速度)
- 隧道名称:自定义,如
- 点击「创建」。
- 创建成功后,进入「状态」→「在线隧道列表」,找到刚创建的隧道,复制其公网地址,格式如:
5.tcp.cpolar.cn:10971。
💡 提示:cpolar 安装后可能已默认生成一条名为
ssh的 TCP 隧道。若有,可直接在「在线隧道列表」中查看并使用。
💻 三、客户端:公网远程 SSH 连接 Ubuntu
在任意能上网的设备(Windows、macOS、Linux、手机等)上打开终端,使用以下格式连接:
ssh -p 公网端口号 你的Ubuntu用户名@公网地址
命令拆解:
| 部分 | 示例值 | 说明 |
|---|---|---|
| 公网地址 | 5.tcp.cpolar.cn |
cpolar 提供的域名(去掉 tcp:// 前缀) |
| 公网端口号 | 10971 |
地址中冒号 : 后面的数字 |
| Ubuntu 用户名 | ubuntu(需自行确认) |
你的 Ubuntu 系统登录用户名 |
完整示例:
ssh -p 10971 ubuntu@5.tcp.cpolar.cn
首次连接时,系统会提示验证主机指纹,输入 yes 并回车,然后输入 Ubuntu 用户的密码即可成功登录。
🛡️ 四、进阶安全配置(强烈推荐)
公网暴露后,SSH 服务将面临潜在的暴力破解风险,建议完成以下加固操作。
1. 配置 SSH 密钥登录(替代密码)
① 在客户端生成 SSH 密钥对:
# 推荐使用 ed25519 算法(安全且性能更好)
ssh-keygen -t ed25519 -C "your_email@example.com"
一路回车即可,会在 ~/.ssh/ 目录下生成 id_ed25519(私钥)和 id_ed25519.pub(公钥)。
② 将公钥复制到 Ubuntu 服务器:
ssh-copy-id 你的Ubuntu用户名@内网IP地址
输入一次密码,公钥即被安全地添加到服务器的 ~/.ssh/authorized_keys 中。
③ 测试密钥登录:
ssh 你的Ubuntu用户名@内网IP地址
若无需输入密码即可登录,说明密钥配置成功。
2. 禁用密码登录(进一步加固)
确认密钥登录成功后,编辑 SSH 配置文件以禁用密码认证:
# 先备份原始配置文件
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
# 编辑配置文件
sudo nano /etc/ssh/sshd_config
找到或添加以下行,确保值为:
PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin no
保存并退出后,重启 SSH 服务使配置生效:
sudo systemctl restart ssh
3. 可选:修改 SSH 默认端口
将 SSH 端口从默认的 22 改为其他端口(如 2222),可降低被扫描的概率:
# 在 /etc/ssh/sshd_config 中添加或修改
Port 2222
修改后需重启 SSH 服务,并在 cpolar 中将隧道的「本地地址」从 22 改为 2222。
🔄 五、长期维护建议
-
固定公网地址(升级套餐)
免费隧道的公网端口每 24 小时会变化。如需长期稳定的固定地址,可在 cpolar 官网「预留」功能中保留一个固定的 TCP 端口,并将隧道配置中的「域名类型」改为「固定 TCP 端口」(需升级套餐)。 -
使用 autossh 保持连接稳定
若隧道偶尔断开,可安装autossh自动重连:sudo apt install autossh -y -
定期更新系统
保持 Ubuntu 系统和 SSH 服务处于最新版本,以获取安全补丁:sudo apt update && sudo apt upgrade -y
📌 小结
| 阶段 | 核心操作 | 验证方式 |
|---|---|---|
| 一、SSH 配置 | 安装 openssh-server,放行防火墙 |
局域网内能正常 SSH 登录 |
| 二、cpolar 隧道 | 安装 cpolar,创建 TCP 隧道指向 22 端口 | 在 cpolar Web UI 中看到「在线」的公网地址 |
| 三、公网连接 | 客户端使用 ssh -p 端口 用户@地址 |
外网环境下能成功登录 Ubuntu |
| 四、安全加固 | 配置密钥登录,禁用密码,可选改端口 | 密钥登录正常,密码登录被拒绝 |
完成以上步骤后,你即可在任何有网络的地方,安全地远程管理 Ubuntu 服务器。

浙公网安备 33010602011771号