如何在Linux中更改SSH端口

SSH服务使用的标准端口是22 / TCP。但是,您可能需要更改Linux服务器中的SSH默认端口,以实现某种安全性。

SSHSecure Shell守护进程是一种网络协议,用于通过安全通道使用强大的加密技术通过不安全的网络对Linux系统执行远程安全登录。

SSH协议最基本的功能之一是能够访问远程Linux机器上的Unix shell并执行命令。 但是,SSH协议可以提供其他的实现,例如通过协议创建安全的TCP隧道,在机器之间远程安全地传输文件或者充当FTP服务。

SSH服务使用的标准端口是22 / TCP 但是,您可能需要更改Linux服务器中的SSH默认端口,以便通过默默无闻的方式实现某种安全性,因为标准22 / TCP端口持续针对因特网中的黑客和漫游器造成的漏洞。

要在Linux中更改SSH服务的默认端口,首先需要打开主要的SSH守护进程配置文件,使用您最喜欢的文本编辑器进行编辑,方法是发出以下命令并进行以下更改。

# vi /etc/ssh/sshd_config

sshd_config文件中,搜索并注释以端口22开头的行,在行前添加(#)标签。 在这一行下面,添加一个新的端口行并指定您希望的端口来绑定SSH。

在这个例子中,我们将配置SSH服务来绑定和监听端口34627 / TCP 确保选择一个随机端口,最好高于1024 (标准知名端口的上限)。 可以为SSH设置的最大端口是65535 / TCP

#Port 22
Port 34627
在Linux中更改SSH端口

在Linux中更改SSH端口

完成上述更改后,重新启动SSH守护程序以反映更改并发出netstatss命令以确认SSH服务监听新TCP端口。

# systemctl restart ssh
# netstat -tlpn| grep ssh
# ss -tlpn| grep ssh

在基于CentOSRHEL Linux的发行版中,安装policycoreutils软件包并添加以下规则以放松SELinux策略,以使SSH守护程序绑定到新端口。

# yum install policycoreutils
# semanage port -a -t http_port_t -p tcp 34627
# semanage port -m -t http_port_t -p tcp 34627
# systemctl restart sshd
# netstat -tlpn| grep ssh
# ss -tlpn| grep ssh
验证SSH新端口

验证SSH新端口

此外,不要忘记更新特定于您自己安装的Linux发行版的防火墙规则,以便允许在新添加的SSH端口上建立传入连接。