如何在 Linux 中更改默认 SSH 端口 [Properly and Safely]

如果您了解 SSH 基础知识,那么您已经知道 SSH 默认使用端口 22。

当您通过 SSH 连接到服务器时,大多数时候您不提供任何端口信息。 在这种情况下,您的连接会转到 SSH 服务器的 22 端口。

您可以使用以下步骤将默认端口从 22 更改为您选择的端口号:

  • 打开 /etc/ssh/sshd_config 文件进行编辑。
  • 找到具有 Port 22 (如果它用# 注释掉,也删除#)。
  • 将线路更改为端口 2522(或您在 1024 和 65535 之间选择的任何数字)。
  • 确保防火墙允许新端口(如果有)。
  • 重启 ssh 守护进程 sudo systemctl restart sshd.
  • 从现在开始,您必须指定端口以建立 ssh 连接 ssh [email protected]_address_of_server -p 2522.

让我告诉你详细的步骤,并告诉你为什么你可以考虑改变

为什么要更改默认 SSH 端口?

保护 SSH 服务器的最基本技巧之一是更改默认 SSH 端口号 22。

为什么? 因为许多 bot 脚本尝试对默认端口 22 进行暴力攻击。这些脚本中的大多数并不总是扫描开放端口,而是针对各种已知服务(如 SSH)的默认端口。

更改默认 SSH 端口可减少此类攻击的数量。 还有其他方法可以提高 SSH 服务器的安全性。 如果有兴趣,请按照这些可操作的提示来提高 SSH 服务器的安全性。

现在您知道了为什么要更改默认 SSH 端口,让我们看看如何去做。

通过更改防火墙设置允许新端口上的流量

如果您设置了防火墙或自定义 ipconfig 或 ifconfig,或者您使用的是 selinux,则必须在进行更改之前允许新的 ssh 端口。 否则,您可能会在没有 SSH 访问权限的情况下将自己锁定。

现在这部分取决于您使用的是哪种防火墙或路由。

如果您正在使用 UFW,您可以使用以下命令允许端口 2522:

sudo ufw allow 2522/tcp

如果你使用 iptables,你应该使用这个命令:

sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 2522 -j ACCEPT

在 Fedora, 中央操作系统, 红色的帽子防火墙由 防火墙 你可以使用这个命令:

sudo firewall-cmd --permanent --zone=public --add-port=2522/tcp
sudo firewall-cmd --reload

在 CentOS 和 Red Hat 上,您可能还需要更改 SELinux 规则:

sudo semanage port -a -t ssh_port_t -p tcp 2522

现在您已经设置了正确的防火墙设置,让我们继续更改 SSH 端口。

更改默认 SSH 端口

通常,ssh 配置文件位于 /etc/ssh/sshd_config. 您必须使用基于终端的编辑器,如 Vim、Nano 或 Emacs 来编辑文件。

像 Ubuntu 这样的发行版默认安装了 Nano,因此您可以使用它在编辑模式下打开文件,如下所示:

sudo nano /etc/ssh/sshd_config

如您所见,您必须是 sudo 用户或 root 编辑 ssh 配置。

向下滚动一点,你会看到一行 Port 22. 如果它以 #,这意味着该行已被注释掉。 注释掉的行为您提供默认设置。

所以如果你看到 # Port 22表示默认端口为 22。

使用您选择的端口号更改此行。 在 Linux 中,端口号 0-1023 通常是为各种服务保留的。 最好避免使用 0 到 1023 之间的任何值以避免冲突。

您可以使用 1024 到 65535 之间的任何其他端口号。我使用的是 2522 example. 确保删除 # 在港口线之前。

Save 您的更改并退出编辑器。 如果您使用的是 Nano,请使用 Ctrl+X 保存并退出。

下一步是重新启动 ssh 服务。 大多数现代系统使用 systemd 服务,因此您可以使用以下命令:

sudo systemctl restart sshd

现在如果你想访问 SSH 服务器,你必须指定端口号:

ssh [email protected]_address_of_server -p 2522

有帮助吗?

我希望您发现本教程有助于更改 SSH 端口。 既然您已经更改了端口,那么您将不得不一直使用它来通过 SSH 连接到服务器,这可能会很烦人。

这就是为什么我建议使用 SSH 配置文件来保存设置以便于快速访问。