[修改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连接服务器即可。

相关推荐
yolo_guo4 分钟前
sqlite 使用: 03-问题记录:在使用 sqlite3_bind_text 中设置 SQLITE_STATIC 参数时,处理不当造成的字符乱码
linux·c++·sqlite
m0”-“0m21 分钟前
MySQL、Nignx和Docker在Linux上的安装详解
linux·数据库·mysql
野犬寒鸦23 分钟前
从零起步学习Redis || 第十章:主从复制的实现流程与常见问题处理方案深层解析
java·服务器·数据库·redis·后端·缓存
luopandeng24 分钟前
amd npt技术 对比 intel ept 技术
java·linux·网络
---学无止境---1 小时前
Linux中kmalloc内存分配函数的实现
linux
海底列车2 小时前
ubuntu-20.04.6升级OpenSSH_10.2p1
linux·服务器·ubuntu
陳錄生2 小时前
ubuntu 24.10安装MongoDB
linux·mongodb·ubuntu
风清再凯2 小时前
01-iptables防火墙安全
服务器·网络·安全
做运维的阿瑞2 小时前
从传统Linux部署到容器化:实践对比与工程化指南
linux·运维·服务器
NiKo_W2 小时前
Linux 进程通信——基于建造者模式的信号量
linux·设计模式·建造者模式·system v