手记

【超详细】Linux系统修改SSH端口教程

在linux中,默认的SSH端口号为22,由于这是咱们都知道的端口号,一旦有入侵者进行端口扫描的时候扫描出22端口,就立马知道这是进行SSH登录的端口号,因而咱们需要修改默认的端口号。

1.教程开始

云服务器一到手,第一件事就是更改ssh端口,防止被扫描破解。

修改端口号是通过修改SSH的配置文件实现的,登录ssh后,输入:

vi /etc/ssh/sshd_config

向下找到#Port 22这段

键盘上按一下 i 进入编辑模式

删除掉Port 22前面的#,然后键盘按一下回车键【如果没有#可不必删除,直接下一步】

输入新的端口号如:Port 10000 (这个你自己定,最大不能超过65535)

编辑好,先按ESC键,再输入 wq 保存退出.

接着重新启动ssh,代码如下:

systemctl restart sshd.service
#删除或新增都需重启SSH服务,否则不生效。

然后再使用已修改的端口登录 【教程演示的是10000端口】 ,看是否可以连接成功,连接成功后在删除22端口.

2.端口放行

不过在这有一个问题,一般的linux服务器都有自带的防火墙iptables规则,把端口10000 在规则中设置备放行。

【如果没有使用iptables,请在服务商安全组放行你修改的端口号】蓝易云安全组默认端口全开


如果安装了宝塔面板请在:宝塔-安全-系统防火墙,放行一下端口。否则无法使用


iptables -I INPUT  -p tcp --dport 10000 -j ACCEPT

参数 -I 是把上面那条规则插入到iptables规则的最前面,然后删除ssh默认的22端口,保存规则,重启防火墙,到此大功告成。

下面说一下,怎么删除iptables规则,有时候有些规则太长,删除时要写一大串,既浪费时间又容易写错,这时我们可以先使用–line-number查看出该条规则的行号,再通过行号删除,代码如下:

[root@test ~]# iptables -nL --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    DROP       all  --  192.168.1.1          0.0.0.0/0
2    DROP       all  --  192.168.1.2          0.0.0.0/0
3    DROP       all  --  192.168.1.3          0.0.0.0/0

比如删除第二条规则,输入 :

[root@test ~]# iptables -D INPUT 2

3.教程结束

0人推荐
随时随地看视频
慕课网APP