--- title: "Ubuntu 24.04 启动 SSH 服务" type: source tags: [ssh, ubuntu, systemd, firewall] date: 2026-04-14 --- ## Source File - [[raw/Home Office/Ubuntu 24.04 enable SSH.md]] ## Summary (用中文描述) - 核心主题:Ubuntu 24.04 中 SSH 服务的安装、启动与配置 - 问题域:Linux 服务器远程访问与网络安全 - 方法/机制: - 安装 OpenSSH Server 软件包 - 使用 systemctl 管理 SSH 服务(含开机自启) - 配置 UFW 防火墙放行 SSH(端口 22) - **Ubuntu 24.04 关键变化:默认使用 ssh.socket 激活机制**,即按需启动(连接请求来时才启动 sshd 守护进程) - 可通过 systemctl edit ssh.socket 修改监听端口 - 可切换回传统 ssh.service 持续运行模式 - 结论/价值:Ubuntu 24.04 SSH 入门完整操作指南,含传统模式切换方案 ## Key Claims (用中文描述) - Ubuntu 24.04 默认使用 **ssh.socket 激活机制**,服务状态 `inactive` 不代表 SSH 不可用,需检查 `ssh.socket` 监听状态 - 修改自定义端口(例 2222)推荐通过 `systemctl edit ssh.socket` 而非仅修改 `/etc/ssh/sshd_config` - 若需 SSH 持续后台运行,可执行 `systemctl disable --now ssh.socket` + `systemctl enable --now ssh.service` ## Key Quotes > "在 Ubuntu 24.04 中,你可以使用以下命令来确保服务处于活动状态并随系统启动:sudo systemctl start ssh; sudo systemctl enable ssh" — 标准启动与自启命令 > "如果你发现 systemctl status ssh 显示服务未运行,别担心。24.04 默认使用 Socket 激活模式。你可以通过 sudo systemctl status ssh.socket 检查监听状态" — Ubuntu 24.04 行为的关键说明 ## Key Concepts - [[Socket Activation]]:systemd 机制,服务按需启动(ssh.socket 监听端口,有连接时才启动 ssh.service) - [[UFW 防火墙]]:Ubuntu 默认防火墙,通过 `ufw allow ssh` 放行 SSH 流量 - [[开机自启]]:systemd enable 命令将服务注册为开机启动 - [[远程访问]]:通过 SSH 协议从另一台设备连接服务器 - [[按需服务]](On-Demand Service):ssh.socket 代表的启动模式,节省资源 ## Key Entities - [[Ubuntu 24.04]]:Canonical Ubuntu LTS 版本,默认引入 ssh.socket 激活机制 - [[OpenSSH Server]]:Ubuntu SSH 服务端软件包,提供 sshd 守护进程 - [[UFW]](Uncomplicated Firewall):Ubuntu 默认防火墙管理工具 - [[ssh.socket]]:systemd 的 socket 单元,负责监听 22 端口并按需触发 ssh.service - [[ssh.service]]:systemd 的 service 单元,实际运行 sshd 守护进程 ## Connections - [[UFW 防火墙]] ← enables ← [[Ubuntu 24.04 启动 SSH 服务]] - [[OpenSSH Server]] ← installed_by ← [[Ubuntu 24.04 启动 SSH 服务]] - [[Socket Activation]] ← is_activated_by ← [[ssh.socket]] - [[ssh.service]] ← substitutes ← [[ssh.socket]](传统模式切换) ## Contradictions - 与旧版 Ubuntu SSH 行为冲突: - 冲突点:旧版 `systemctl status ssh` 显示 `active (running)` 才代表正常;24.04 中服务可能显示 `inactive` 但 SSH 仍可正常工作 - 当前观点:Socket 激活是 Ubuntu 24.04 默认行为,不代表故障 - 对方观点:服务未 running 即认为 SSH 未启用