我最近从 Ubuntu Server 20 更改为 Ubuntu Sever 23,并希望在新系统上调整我的 SSH 配置,就像在旧系统上一样。
我有几个自定义属性/etc/ssh/sshd_config
,例如
Port 22
PermitRootLogin no
PasswordAuthentication no
Match Address 192.168.1.*
PasswordAuthentication yes
现在据我了解 Ubuntu 23 使用 SSH 套接字而不是服务,这意味着我必须将文件添加到/etc/systemd/system/ssh.service.d/
.
对于系统侦听的端口,这工作得很好,但我在网上找不到任何有关如何限制 root 访问或禁用本地网络外部用户的密码访问的信息。有谁知道这里的语法或者这不能通过套接字实现吗?
答案1
现在据我了解 Ubuntu 23 使用 SSH 套接字而不是服务,这意味着我必须将文件添加到 /etc/systemd/system/ssh.service.d/ 。
您正在混淆两个基本上不相关的事物。
Ubuntu 23 使用套接字激活进行 ssh;这意味着 sshd 不会一直运行,而是仅在有人尝试连接时启动。因为systemd是监听的而不是sshd,所以需要修改配置ssh.socket
来更改监听端口。看起来你并不想这样做,所以你不需要改变你的行事方式。
使用套接字激活有没有影响sshd 配置文件的存储位置;与往常一样,这些仍然位于/etc/ssh
.
就像早期版本一样,您可以/etc/ssh/sshd_config
直接修改,也可以将片段放入/etc/ssh/sshd_config.d
.