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
Systemd SSHソケットがアクティブで、SSHサービスがソケットでアクティブ化されています。ソケットも無効にする必要があります:
systemctl disable --now ssh.socket
実際、私のArchシステムでは、sshdデーモンは新しい接続が入ったときにのみ実行されます。また、sshdの唯一のインスタンスは、それらの接続を処理するためにフォークされた子プロセスだけです。
以下も参照してください: