Ubuntu 开启 22 端口指南
在使用 Ubuntu 系统时,若发现 22 端口(SSH 远程连接默认端口)无法访问,通常并非系统“故意关闭”,而是源于三个常见原因:未安装 SSH 服务端、本地防火墙未放行,或云服务商安全组未允许。下面按顺序逐一解决,即可顺利开启 22 端口。
博主博客
第一步:安装与启动 SSH 服务
Ubuntu 桌面版或最小化安装版默认不带 SSH 服务端,需要手动安装。
- 更新软件包列表(推荐)
sudo apt update
- 安装 OpenSSH 服务端
sudo apt install openssh-server -y
- 启动 SSH 服务
sudo systemctl start ssh
- 设置开机自动启动(确保重启后依然可用)
sudo systemctl enable ssh
- 验证服务运行状态
sudo systemctl status ssh
若看到 active (running) 字样,则服务已正常运行。
第二步:配置防火墙(UFW)允许 22 端口
Ubuntu 自带的 ufw 防火墙如果启用,会默认阻止所有外部入站连接,需要手动放行。
- 放行 22 端口
sudo ufw allow 22
(也可以写成 sudo ufw allow ssh,效果相同)
- 如果防火墙尚未启用,开启它(已启用则跳过)
sudo ufw enable
- 重载防火墙规则,使更改立即生效
sudo ufw reload
- 查看当前放行规则,确认 22 端口已列入
sudo ufw status
输出中应包含 22/tcp ALLOW 或 22 ALLOW 字样。
注意:若你使用的是
firewalld或其他防火墙工具,请使用对应命令(如firewall-cmd --add-port=22/tcp --permanent)。本文以ufw为例,这是 Ubuntu 默认推荐方案。
第三步:检查云服务器安全组(适用于云环境)
如果你使用的是阿里云、腾讯云、华为云、AWS、Azure 等云厂商的云服务器,即使系统内部配置完毕,云平台自身的安全组(或防火墙)仍会拦截外部流量。这一步经常被忽略,却是最关键的环节。
操作步骤(各家控制台大同小异):
- 登录云服务器管理控制台。
- 找到 安全组(或 防火墙、网络访问控制)配置页面。
- 选择当前实例所绑定的安全组,点击 配置规则(或 添加规则)。
- 添加入方向规则:
- 协议:TCP
- 端口:22
- 授权对象/源 IP:根据需要填写(若允许所有 IP 访问,可填
0.0.0.0/0,生产环境建议限制为特定 IP 段以提升安全性)。
- 保存规则,通常无需重启实例即可生效。
验证与测试
完成以上三步后,可在本地终端使用以下命令测试连接(将 your_server_ip 替换为实际公网 IP):
ssh username@your_server_ip -p 22
若提示输入密码或密钥验证,即表示 22 端口已成功开启。
常见问题排查
- 服务启动失败:检查
/var/log/auth.log或使用journalctl -u ssh查看错误日志。 - 防火墙规则冲突:执行
sudo iptables -L -n检查是否有其他规则拒绝 22 端口。 - 云平台仍无法连接:确认安全组规则已应用,且实例已分配公网 IP;部分平台还需检查“网络 ACL”或“操作系统防火墙”之外的“主机防火墙”设置。
通过以上系统化的三步配置,绝大多数 Ubuntu 系统的 22 端口问题都能得到解决。记得每次修改配置后,通过 status 命令和外部测试来验证效果,确保远程连接稳定可靠。
Ubuntu 开启 22 端口指南
https://blog.uso6.com/archives/ubuntu-kai-qi-22-duan-kou-zhi-nan
评论