我使用 systemctl disable ssh 禁用 ssh 服务器,然后重新启动。重启后,我仍然可以通过ssh登录远程服务器。我使用 systemctl status ssh 检查服务器状态,它处于非活动状态。
$ systemctl -a | grep ssh
ssh.service loaded inactive dead OpenBSD Secure Shell server
[email protected]:22-192.168.0.104:31079.service loaded active running OpenBSD Secure Shell server per-connection daemon (192.168.0.104:31079)
system-ssh.slice loaded active active system-ssh.slice
ssh.socket loaded active listening OpenBSD Secure Shell server socket
答案1
systemd SSH 套接字处于活动状态,并且 SSH 服务是套接字激活的。您还需要禁用套接字:
systemctl disable --now ssh.socket
事实上,在我的 Arch 系统上,sshd 守护进程仅在新连接进入时运行。在其他时候,sshd 的唯一实例是为处理这些连接而分叉的子进程。
另请参阅: