如何在阿里云Linux服务器上配置Ubuntu的远程SSH登录?

在阿里云 Linux 服务器上配置 Ubuntu 远程 SSH 登录,实际上需要先确认当前系统是否为 Ubuntu。阿里云默认提供多种镜像(如 CentOS、Alpine、Ubuntu 等),不能直接“配置成 Ubuntu”,但可以:

  1. 确认当前系统是否为 Ubuntu
  2. 若已是 Ubuntu:配置 SSH 服务并放行安全组即可远程登录
  3. 若不是 Ubuntu:需重装为 Ubuntu 镜像(推荐方式)或手动安装 Ubuntu 环境(不推荐,易出错)

✅ 正确步骤(推荐方案)

步骤 1:确认当前系统

cat /etc/os-release
  • 若输出包含 ID=ubuntu,说明已是 Ubuntu,跳至步骤 2
  • 若不是(如 ID=centosID=alibabacloud),强烈建议重新创建实例并选择 Ubuntu 镜像(见下方说明)

⚠️ 注意:阿里云 ECS 不支持将 CentOS/其他发行版“转换”为 Ubuntu。强行安装 Ubuntu 包管理器(如 apt)会导致系统混乱。


步骤 2:确保 SSH 服务已安装并运行(Ubuntu 系统)

# 更新软件源
sudo apt update

# 安装 OpenSSH 服务器(Ubuntu 通常预装,但可确认)
sudo apt install openssh-server -y

# 检查服务状态
sudo systemctl status ssh
# 若未运行,启动它
sudo systemctl enable --now ssh

步骤 3:配置防火墙与安全组(关键!)

A. 本地防火墙(UFW,若启用)
sudo ufw allow 22/tcp
sudo ufw reload
B. 阿里云控制台安全组(必须配置)
  1. 登录 阿里云 ECS 控制台
  2. 找到你的实例 → 点击「更多」→ 「网络和安全组」→ 「安全组」
  3. 编辑该安全组的 入方向规则
    • 协议:TCP
    • 端口范围:22/22(或自定义如 2200/2200
    • 授权对象:0.0.0.0/0(允许所有 IP,生产环境建议限制为具体 IP)
    • 策略:允许

🔒 安全提示:生产环境务必限制授权 IP,避免暴力破解。


步骤 4:重启实例(可选,但推荐)

sudo reboot

步骤 5:从本地连接测试

ssh ubuntu@<你的公网IP>
# 或使用你创建的自定义用户名(如 admin)
ssh <用户名>@<公网IP>

首次连接会提示指纹确认,输入 yes 后输入密码即可。


❌ 常见误区澄清

误区 事实
“把 CentOS 改成 Ubuntu” 不可行;不同发行版内核/库不兼容,强行替换会导致系统崩溃
“安装 ubuntu-base 包就能变 Ubuntu” 错误;仅安装部分工具无法改变系统本质,仍非真正 Ubuntu
“修改 /etc/os-release 文件就行” 无效;这只是标识文件,实际行为由包管理器和内核决定

🔄 如果当前不是 Ubuntu?正确做法

  1. 停止当前实例(不影响数据)
  2. 更换操作系统
    • 控制台 → 实例 → 更多 → 更换操作系统
    • 选择 Ubuntu Server LTS(如 22.04/24.04)
    • 注意:更换系统会清空根磁盘数据,请先备份重要数据到 OSS 或快照
  3. 新实例自动支持 SSH + Ubuntu 环境,按上述步骤配置即可

💡 建议:首次部署时直接选择 Ubuntu 镜像,避免后续迁移麻烦。


需要我帮你:

  • 生成一份 Ubuntu 安全加固的 SSH 配置模板(禁用 root、改用密钥认证等)?
  • 编写一键初始化脚本(含安全组 API 调用示例)?
  • 指导如何制作自定义 Ubuntu 镜像用于批量部署?

欢迎告诉我你的具体场景 😊

云服务器