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

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

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


SSH

SSH

1.教程开始

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

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

vi /etc/ssh/sshd_config

向下找到#Port 22这段

SSH端口修改

SSH端口修改

键盘上按一下 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.教程结束

本文到此结束,还不会的可以联系QQ:2378462931

目录
相关文章
|
23天前
|
网络协议 API
检测指定TCP端口开放状态免费API接口教程
此API用于检测指定TCP端口是否开放,支持POST/GET请求。需提供用户ID、KEY、目标主机,可选指定端口(默认80)和地区(默认国内)。返回状态码、信息提示、检测主机、端口及状态(开放或关闭)。示例中ID和KEY为公共测试用,建议使用个人ID和KEY以享受更高调用频率。
41 14
|
17天前
|
网络协议 Ubuntu Linux
解决ssh: connect to host IP port 22: Connection timed out报错(scp传文件指定端口)
解决 `ssh: connect to host IP port 22: Connection timed out` 报错涉及检查 SSH 服务状态、防火墙配置、网络连通性和主机名解析等多个方面。通过逐步排查上述问题,并在 `scp` 命令中正确指定端口,可以有效解决连接超时的问题,确保文件传输的顺利进行。希望本文提供的解决方案能帮助您快速定位并解决该错误。
45 3
|
22天前
|
运维 网络安全
解决ssh: connect to host IP port 22: Connection timed out报错(scp传文件指定端口)
通过这些步骤和方法,您可以有效解决“ssh: connect to host IP port 22: Connection timed out”问题,并顺利使用 `scp`命令传输文件。
121 7
|
1月前
|
网络协议 API
检测指定TCP端口开放状态免费API接口教程
该API用于检测目标主机指定TCP端口是否开放,适用于检测连通状态等场景。支持指定大陆、美国、香港等检测节点。请求地址为 `https://cn.apihz.cn/api/wangzhan/port.php`,支持POST和GET请求方式。请求参数包括 `id`、`key`、`type`、`host` 和 `port`。返回参数包含检测结果和状态码。示例请求:`https://cn.apihz.cn/api/wangzhan/port.php?id=88888888&key=88888888&type=1&host=49.234.56.78&port=80`。
|
3月前
|
安全 Linux 网络安全
Linux端的ssh如何升级?
Linux端的ssh如何升级?
349 59
|
1月前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
2月前
|
JSON 网络协议 Linux
Shadowsocks多端口启用教程方法
【10月更文挑战第19天】Shadowsocks多端口启用教程方法
151 1
|
4月前
|
机器学习/深度学习 存储 Linux
【机器学习 Azure Machine Learning】使用VS Code登录到Linux VM上 (Remote-SSH), 及可直接通过VS Code编辑VM中的文件
【机器学习 Azure Machine Learning】使用VS Code登录到Linux VM上 (Remote-SSH), 及可直接通过VS Code编辑VM中的文件
|
4月前
|
监控 网络协议 Linux
在Linux中,如何实时抓取并显示当前系统中tcp 80 端口的网络数据信息?
在Linux中,如何实时抓取并显示当前系统中tcp 80 端口的网络数据信息?
|
4月前
|
监控 安全 Ubuntu
在Linux中,如何进行SSH服务配置?
在Linux中,如何进行SSH服务配置?