openssh-server未安装是securecrt连接ubuntu失败的首要原因,需用dpkg -l | grep openssh-server确认安装状态,未安装则执行sudo apt update && sudo apt install -y openssh-server,并用sudo systemctl enable --now ssh启动服务,同时配置ufw放行22端口。

openssh-server 没装,ssh 服务就起不来——这是绝大多数人卡住的第一步。Ubuntu桌面版默认不装这个包,服务器版也未必预装,别猜,直接查。
确认是否已安装 openssh-server
运行这条命令:dpkg -l | grep openssh-server。如果有输出且状态是 ii(installed),说明已装;如果没输出或显示 un,就是没装。
别用 which ssh 或 ssh localhost 判断——那只是客户端,和服务端无关。
常见错误现象:
-
ssh: connect to host localhost port 22: Connection refused→ 服务根本没跑 -
sudo systemctl status ssh显示Unit ssh.service could not be found→ 包都没装,自然没服务单元
安装并启动 ssh 服务
装包+启用一步到位,推荐用:sudo apt update && sudo apt install -y openssh-server
装完后,systemd 通常会自动启动 ssh 服务,但必须验证:
- 运行
sudo systemctl status ssh,看到active (running)才算真起来了 - 如果状态是
inactive (dead),手动启动:sudo systemctl enable --now ssh - 别用
sudo service ssh start—— 在 systemd 系统里它只是兼容层,行为不如systemctl可控
注意:enable --now 同时做两件事:开机自启 + 立即启动。少一个都可能重启后连不上。
Ubuntu 26.04 LTS(代号“Resolute Raccoon”)是Canonical于2026年4月23日发布的下一代长期支持版操作系统,提供长达10年的技术支持。它搭载Linux 7.0内核与GNOME 50桌面环境,全面转向Wayland协议,并引入Rust重写的核心工具以增强安全性。官方提供适用于AMD64和ARM64架构的桌面及服务器ISO镜像,是追求前沿技术与极致稳定的开发者
防火墙放行 22 端口(或自定义端口)
Ubuntu 默认启用 ufw,哪怕你没主动开过,也可能处于 active 状态。不放行,外网连得再对也超时。
检查:sudo ufw status verbose。如果输出里 Status: active,就必须加规则:
- 允许默认端口:
sudo ufw allow ssh(等价于sudo ufw allow 22/tcp) - 如果改过端口(比如设成
2222),必须明确写:sudo ufw allow 2222/tcp - 别只信
ufw status的“inactive”字样——有些镜像或重装系统后ufw实际是 enabled 但规则为空,仍需显式 allow
获取本机 IP 并测试连接
hostname -I 是最稳的命令,输出空格分隔的 IPv4 地址(如 192.168.1.105)。别依赖 ifconfig(已弃用)或 ip a 的全部输出——容易看错网卡或 IPv6 地址。
从另一台机器连接前,先本地测通:ssh $USER@$(hostname -I | awk '{print $1}')
如果本地能连但外部连不上,重点排查:
- 路由器是否做了端口转发(跨局域网时)
- 目标机器是否在虚拟机里,网络模式是不是 NAT 而非桥接
-
/etc/ssh/sshd_config里ListenAddress是否被改成127.0.0.1(这会让服务只监听本地环回)
改配置后必须 sudo systemctl restart ssh,reload 不生效。










