如何修改配置文件:CentOS下SSH端口修改

CentOS各发行版中SSH端口默认为22,如果正式做站或其它用途,为了提高安全性就需要修改掉默认的SSH端口号,防止被有心人穷举密码。部分VPS提供商,若您的VPS服务器SSH遭受多次的暴力破解,可能会遭到罚款或临时终止服务,所以修改SSH的默认端口是有必要的。

有的朋友不知道“穷举”是什么意思,这里给这些朋友扫盲下 :

穷举法,或称为暴力破解法,是一种针对于密码的破译方法,即将密码进行逐个推算直到找出真正的密码为止。例如一个已知是四位并且全部由数字组成的密码,其可能共有10000种组合,因此最多尝试10000次就能找到正确的密码。理论上利用这种方法可以破解任何一种密码,问题只在于如何缩短试误时间。因此有些人运用计算机来增加效率,有些人辅以字典来缩小密码组合的范围。详细请看百度百科:穷举法

废话不多说,先通过当前的SSH端口(默认为:22)登陆。

1、修改配置文件:/etc/ssh/sshd_config ,找到#port 22 (如图)

2、先将Port 22 前面的 # 号去掉,并另起一行。如定义SSH端口号为26611 ,则输入

Port 26611

自定义端口选择建议在万位的端口(如:10000-65535之间)

也许您会问为什么要先把port 22前面的 # 去掉呢?因为在配置文件中,# 是Linux的注释字符。注释字符后的代码程序是不会执行的。SSH默认的(即非手动指定)端口为22,所以配置文件在默认的情况下以注释字符出现。当需要指定其它端口或多端口同时访问时,就要删掉注释符号,告知程序按照您的意愿来执行响应操作。

以上操作,手动指定SSH端口为22和26611(双端口号),保留22是为了防止个别防火墙屏蔽了其它端口导致无法连接VPS(如没单独指定22,新指定的26611端口防火墙也没放行,那么可能无法通过SSH连接VPS或服务器)。为了防止不必要问题的产生,所以要给自己保留条“后路”。

3、

添加端口到防火墙

firewall-cmd --zone=public --add-port=XXXX/tcp --permanent    //XXXX为新的 SSH 端口

如防火墙未运行,需要手动启动:

systemctl start firewalld.service

重启防火墙:

firewall-cmd --reload

确认端口是否添加成功:

firewall-cmd --zone=public --query-port=XXXX/tcp    //XXXX为新的 SSH 端口

添加成功会返回 yes,否则返回 no。

删除默认的 22 端口

至此,如无意外,重启 sshd 就可以使用新端口连接。

systemctl restart sshd.service

 

4、重启完毕,尝试使用新端口登陆

连接成功,需要重新添加SSH-RSA验证,点击是(或Yes)即可。

5、若能正常访问,返回第一步,根据第二步的操作将原port 22整段删掉,再按第三步重启SSH即可。

以上步骤重启后使用默认22号端口无法进入SSH,达到目的。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注