在阿里云 Linux 服务器上配置 Ubuntu 远程 SSH 登录,需要先明确一个关键点:阿里云服务器运行的是你选择的操作系统(如 CentOS、Alibaba Cloud Linux、Ubuntu 等),不能“配置成 Ubuntu”如果它本身不是 Ubuntu。但如果你是想在已运行的 Ubuntu 系统上开启 SSH 远程登录,或在非 Ubuntu 系统上安装 Ubuntu 环境并配置 SSH,以下是分场景的清晰方案:
✅ 场景一:服务器本身就是 Ubuntu 系统(最常见)
若你的阿里云 ECS 实例镜像是 Ubuntu(如 ubuntu_20_04 / ubuntu_22_04),只需确保 SSH 服务已安装并启动:
1. 检查 SSH 服务状态
sudo systemctl status ssh
# 或(旧版 Ubuntu)
sudo systemctl status sshd
2. 安装/启用 SSH 服务(如未安装)
sudo apt update
sudo apt install openssh-server -y
sudo systemctl enable --now ssh
3. 配置防火墙(安全组 + 本地防火墙)
-
阿里云控制台:
进入【ECS 实例】→【安全组】→ 添加入方向规则:- 协议:TCP
- 端口:22
- 授权对象:
0.0.0.0/0(生产环境建议限制为具体 IP)
-
本地防火墙(UFW):
sudo ufw allow OpenSSH sudo ufw enable # 如尚未启用
4. 测试连接
从本地终端执行:
ssh username@<你的公网IP>
💡 首次连接会提示指纹确认,输入
yes即可。
⚠️ 场景二:服务器是其他系统(如 CentOS/Alibaba Cloud Linux),想“变成 Ubuntu”
⚠️ 不建议直接转换系统!原因:
- 包管理器不同(
aptvsyum/dnf) - 系统库冲突风险高
- 可能导致系统不稳定
✅ 正确做法:重新创建 Ubuntu 实例
- 在阿里云控制台 → 【实例】→ 【更换系统盘】或【创建新实例】
- 选择 Ubuntu 镜像(如 Ubuntu 22.04 LTS)
- 设置 root 密码或密钥对
- 按上述「场景一」配置 SSH
🔐 推荐方式:使用 SSH 密钥对 登录,更安全(避免密码暴力破解)。
🔒 安全加固建议(生产环境必做)
| 项目 | 操作 |
|---|---|
| 禁用 root 登录 | /etc/ssh/sshd_config 中设置 PermitRootLogin no |
| 修改默认端口 | Port 2222(配合安全组同步修改) |
| 仅允许特定用户 | AllowUsers your_username |
| 启用 fail2ban | sudo apt install fail2ban 防止暴力破解 |
| 强制密钥登录 | PasswordAuthentication no + 配置公钥 |
示例 sshd_config 片段:
Port 2222
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
AllowUsers deploy_user
修改后重启服务:
sudo systemctl restart ssh
需要我帮你生成一份完整的 SSH 配置脚本(含密钥对初始化、安全加固步骤),或指导如何通过阿里云控制台创建带 SSH 密钥的 Ubuntu 实例吗?
CLOUD云枢