[修改Linux下ssh端口号]解决无法修改sshd_config无法修改

前言:写本文的前因是本人的阿里云服务器经常被黑客暴力破解ssh的22端口号。再网络上搜索解决都是说使用root权限进行修改,但本人在root下也无法成功进行修改sshd_config文件。所以在大量搜索下终于找到了解决方案,现在分享出来给有需要的人使用。

普通解决方案:

  • root权限远程进入Linux
  • sshd_config是在/etc/ssh目录下
  • 修改文件操作vim /etc/ssh/sshd_config(正常情况或许可以打开修改,但如果被黑客黑过后可能导致无法修改)

如果修改操作失败尝试关闭selinux系统:

bash 复制代码
vi /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled

关闭后再重复上步操作,如果还失败你大概率可能是被黑后权限锁定问题。

那么被黑后如何处理呢?

  • 使用lsattr命令查看sshd_config文件是否被+i权限锁定了。
  • 尝试使用chattr命令解锁,但报Permission denied错误,提示没权限,尝试使用chmod命令修改权限但报错:chmod: changing permissions of chattr': Operation not permitted错误。

查阅资料找到解决方案:

原因:chattr命令权限被修改且被锁定。

解决方案:

分别执行如下命令即可恢复chattr命令的权限,权限恢复后可以使用该命令做操作了。

bash 复制代码
cp /usr/bin/chattr /usr/bin/chattr2
chmod 755 /usr/bin/chattr2
chattr2 -i /usr/bin/chattr
chmod 755 /usr/bin/chattr
ls -la /usr/bin/chattr
lsattr /usr/bin/chattr

恢复chattr命令的权限后对sshd_config文件进行解锁。

修改端口号:

1.修改sshd_config文件

vim打开sshd_config文件输入e进入后shift+i进入底行模式找到#Port(如果新端口确认可以使用后删除原始22端口的Port),另新写一行Port。

对Port的端口进行修改,修改10000-65535之间的端口号,大大减少被暴力破解的概率,因为大部分黑客都是直接对22端口进行破解,并且你要避免与其他服务协议端口号冲突。

修改完毕后:wq!保存即可。

2.重启sshd服务

bash 复制代码
systemctl restart sshd.service

3.查看开放端口

bash 复制代码
netstat -tupln

4.把端口添加到防火墙开放端口列表

bash 复制代码
添加端口:firewall-cmd --zone=public --add-port="修改的Port"/tcp --permanent

5.重新加载防火墙

bash 复制代码
firewall-cmd --reload

6.查看端口防火墙放行状态

bash 复制代码
firewall-cmd --permanent --query-port="端口号"/tcp

7.查看防火墙已放行的端口号列表

bash 复制代码
firewall-cmd --zone=public --list-ports

如果以上步骤都没问题,防火墙也已放行,在云服务器官网添加ssh协议的端口号,最后使用Xshell连接服务器即可。

相关推荐
‍理我8 分钟前
Linux系统编程(基础指令)上
linux·服务器
-杀意感知-11 分钟前
Linux 开发工具(vim、gcc/g++、make/Makefile)+【小程序:进度条】-- 详解
linux
周湘zx37 分钟前
k8s中的存储
linux·运维·云原生·容器·kubernetes
Linux猿38 分钟前
828华为云征文 | 云服务器Flexus X实例:one-api 部署,支持众多大模型
服务器·大模型·llm·华为云·flexus云服务器x实例·华为云服务器·one-api
_平凡之路_1 小时前
解决ubuntu22.04 gnome-terminal 无法启动的问题
linux·运维·python
凯子坚持 c1 小时前
0基础带你入门Linux之使用
linux·运维·服务器
hgdlip2 小时前
电脑ip会因为换了网络改变吗
服务器·网络·tcp/ip·电脑
EterNity_TiMe_2 小时前
【Linux基础IO】深入Linux文件描述符与重定向:解锁高效IO操作的秘密
linux·运维·服务器·学习·性能优化·学习方法
python-码博士2 小时前
Rosetta 一:手把手教你用Linux安装Rosetta(全网最简洁)
linux·运维·服务器
你可以自己看2 小时前
python中函数式编程与高阶函数,装饰器与生成器,异常处理与日志记录以及项目实战
服务器·开发语言·python