ssh(secure shell)是一种安全的远程登录协议,允许您通过网络连接到linux系统并进行管理操作。默认情况下,ssh使用22端口进行通信。为了增强系统的安全性,有时我们需要更改ssh端口,以减少潜在的攻击。
本文将详细介绍在Linux系统中如何更改SSH端口。
步骤 1:备份 SSH 配置文件在进行任何更改之前,强烈建议您备份SSH配置文件,以防意外情况发生。您可以使用以下命令创建SSH配置文件的备份:
代码语言:shell复制“`shell sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
这将在相同目录下创建一个名为`sshd_config.bak`的备份文件。 <p>步骤 2:编辑 SSH 配置文件使用文本编辑器(例如vi或nano)打开SSH配置文件sshd_config:</p><p>代码语言:shell<svg fill="none" height="16" viewbox="0 0 16 16" width="16" xmlns="<a href="https://www.php.cn/link/c9041cfd2a40932691855abd98fd219a">http://www.w3.org/2000/svg"><path</a> clip-rule="evenodd" d="M4.5 15.5V3.5H14.5V15.5H4.5ZM12.5 5.5H6.5V13.5H12.5V5.5ZM9.5 2.5H3.5V12.5H1.5V0.5H11.5V2.5H9.5Z" fill="currentcolor" fill-rule="evenodd"></path></svg>复制shell sudo vi /etc/ssh/sshd_config</code>
找到以下行:
代码语言:shell复制shell
Port 22
默认情况下,这一行被注释掉了,表示SSH使用的是默认的22端口。删除行首的注释符号#,然后将端口号修改为您想要使用的新端口号。例如,如果您想将SSH端口更改为2222,则将该行修改为:</p><p>代码语言:shell<svg fill="none" height="16" viewbox="0 0 16 16" width="16" xmlns="<a href="https://www.php.cn/link/c9041cfd2a40932691855abd98fd219a">http://www.w3.org/2000/svg"><path</a> clip-rule="evenodd" d="M4.5 15.5V3.5H14.5V15.5H4.5ZM12.5 5.5H6.5V13.5H12.5V5.5ZM9.5 2.5H3.5V12.5H1.5V0.5H11.5V2.5H9.5Z" fill="currentcolor" fill-rule="evenodd"></path></svg>复制shell Port 2222</code>
请注意,您可以选择任何未被其他服务使用的端口号,但建议选择高于1024的端口号以避免与已知服务冲突。
步骤 3:保存并关闭 SSH 配置文件完成对SSH配置文件的更改后,保存文件并关闭文本编辑器。
步骤 4:重新启动 SSH 服务在更改了SSH配置文件后,您需要重新启动SSH服务以使更改生效。使用以下命令重新启动SSH服务:
代码语言:shell复制shell sudo systemctl restart sshd
步骤 5:更新防火墙规则如果您的Linux系统启用了防火墙,那么您还需要更新防火墙规则以允许新的SSH端口通过。否则,您将无法通过新的端口进行SSH连接。</p><p>如果您使用的是iptables防火墙,可以使用以下命令允许新的SSH端口通过:</p><p>代码语言:shell<svg fill="none" height="16" viewbox="0 0 16 16" width="16" xmlns="<a href="https://www.php.cn/link/c9041cfd2a40932691855abd98fd219a">http://www.w3.org/2000/svg"><path</a> clip-rule="evenodd" d="M4.5 15.5V3.5H14.5V15.5H4.5ZM12.5 5.5H6.5V13.5H12.5V5.5ZM9.5 2.5H3.5V12.5H1.5V0.5H11.5V2.5H9.5Z" fill="currentcolor" fill-rule="evenodd"></path></svg>复制shell sudo iptables -A INPUT -p tcp --dport <new_port> -j ACCEPT</code>
如果您使用的是ufw
防火墙,可以使用以下命令允许新的SSH端口通过:
代码语言:shell复制shell sudo ufw allow
请将<new_port>替换为您在步骤2中设置的新SSH端口号。</p><p>步骤 6:验证 SSH 端口更改完成了上述步骤后,您可以尝试使用新的SSH端口连接到您的Linux系统。在SSH客户端中,使用以下命令连接到目标系统:</p><p>代码语言:shell<svg fill="none" height="16" viewbox="0 0 16 16" width="16" xmlns="<a href="https://www.php.cn/link/c9041cfd2a40932691855abd98fd219a">http://www.w3.org/2000/svg"><path</a> clip-rule="evenodd" d="M4.5 15.5V3.5H14.5V15.5H4.5ZM12.5 5.5H6.5V13.5H12.5V5.5ZM9.5 2.5H3.5V12.5H1.5V0.5H11.5V2.5H9.5Z" fill="currentcolor" fill-rule="evenodd"></path></svg>复制```shell ssh <username>@<hostname> -p <new_port>
其中,
如果一切顺利,您应该能够通过新的SSH端口成功连接到目标系统。
注意事项在更改SSH端口时,请注意以下几点:
确保选择一个未被其他服务使用的端口号。记住您更改的SSH端口号,以便以后使用。在进行任何更改之前,始终备份重要的配置文件。在更改SSH端口后,确保更新防火墙规则以允许新端口通过。总结通过更改SSH端口,您可以增强Linux系统的安全性,减少潜在的攻击。本文详细介绍了在Linux系统中更改SSH端口的步骤,包括备份SSH配置文件、编辑配置文件、保存并关闭配置文件、重新启动SSH服务、更新防火墙规则以及验证SSH端口更改。
请记住,在更改任何关键系统配置之前,始终要小心,并确保对相关文件进行备份。同时,确保您能够通过新的SSH端口成功连接到系统,以确保更改生效。祝您在Linux系统中成功更改SSH端口,并加强系统的安全性!