将 sshd 端口更改为 2222 仍然只接受端口 22 ubuntu 23.04

将 sshd 端口更改为 2222 仍然只接受端口 22 ubuntu 23.04

我将 /etc/ssh/sshd_config 中的端口更改为端口 2222 在此处输入图片描述 但是当我尝试登录 ssh -p 2222 myuser@hostname_ip 时,它给了我: 在此处输入图片描述

但是当我尝试使用端口 22 一切正常时,我确实在更改后重新启动了虚拟机。我在这里遗漏了什么?

答案1

简而言之,sshd 由 Systemd 控制。这在三行注释中概述了多于您的 Port 声明。阅读配置文件中的注释通常很有用,尤其是当事情没有按您预期的方式进行时。

如果您阅读建议的文件,它将包含以下代码片段:

The provided ssh.socket unit file sets ListenStream=22.  If you need to have
it listen on a different address or port, then you will need to do this as
follows (modifying ListenStream to match your requirements):

  mkdir -p /etc/systemd/system/ssh.socket.d
  cat >/etc/systemd/system/ssh.socket.d/listen.conf <<EOF
  [Socket]
  ListenStream=2222
  EOF
  systemctl daemon-reload

See systemd.socket(5) for details.

我或许会建议这样做。我还强烈建议实际阅读文档。

相关内容