偶然发现CPU一直占用100%,开始还不太在意,后来想想我的程序也没这么多啊
导致机器登录ssh的时候都有点卡了。
开始检查机器,发现原来是被入侵了,有个木马一直占用
这才知道是被别人用来挖矿了,真是无语了
搞了好久没搞定,哎,能力有限,一生气直接保存资料重装系统了,由于比较着急,导致还是有些东西漏了备份,有点后悔。。。
以后安全防范一定要做到位。
希望不要再被入侵了,烦死了
这次算是体会到主机安全的重要性了,公司最近也在说这个问题,看来还是要多多重视。
总结一下:
我之前密码设置得太简单了,导致直接被暴力破解

安全防护做得不够,防火墙也没有打开
22端口一直开放,很容易被人访问到,现在换成别的端口了
CentOS 防火墙快速开放端口配置方法
# 开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 查看端口是否开启
firewall-cmd --query-port=80/tcp
# 重启防火墙
firewall-cmd --reload
# 查询有哪些端口是开启的:
firewall-cmd --list-port
# 关闭firewall:
systemctl stop firewalld.service #停止firewall
# 禁止firewall开机启动
systemctl disable firewalld.service
# 开启开机启动
systemctl enable firewalld.service
命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
CentOs 防火墙开启关闭方法
关于开启关闭防火墙、开机启动等。
我的系统是CentOs7,重装换了CentOs8
- 查看防火墙状态
systemctl |grep firewalld.service
- 关闭防火墙
systemctl stop firewalld.service
- 开启防火墙
systemctl start firewalld.service
systemctl restart firewalld.service
- 自启动
# 关闭自启动
systemctl disable firewalld.service
# 打开自启动
systemctl enable firewalld.service
# 查询自启动服务
systemctl list-unit-files|grep firewalld.service
扩展知识:
systemctl is-enabled iptables.service
#查询服务是否开机启动
systemctl is-enabled servicename.service#开机运行服务
systemctl enable *.service#取消开机运行
systemctl disable *.service#启动服务
systemctl start *.service#停止服务
systemctl stop *.service#重启服务
systemctl restart *.service#重新加载服务配置文件
systemctl reload *.service#查询服务运行状态
systemctl status *.service#显示启动失败的服务
systemctl --failed
CentOs8 新增ssh自定义端口与屏蔽默认22端口
- 修改SSH配置文件
vim /etc/ssh/sshd_config
增加
Port 22
Port 22022
SSH默认监听端口是22,如果你不强制说明别的端口,”Port 22”注不注释都是开放22访问端口。上面我保留了22端口,防止之后因为各种权限和配置问题,导致连22端口都不能访问了,那就尴尬了。等一切都ok了,再关闭22端口。
修改端口时候最好挑10000~65535之间的端口号,10000以下容易被系统或一些特殊软件占用,或是以后新应用准备占用该端口的时候,却被你先占用了,导致软件无法运行。
- 打开 SELinux
SELinux是关闭的,可以忽略这一步
查看SELinux的状态
/usr/sbin/sestatus -v
也可以用
getenforce
# 查看SELinux开放给ssh使用的端口
semanage port -l|grep ssh
# 开放端口
semanage port -a -t ssh_port_t -p tcp 22022
- 防火墙
防火墙最好不要关闭,最好设置为开机启动
# 查看防火墙是否开启了22022端口
firewall-cmd --permanent --query-port=22022/tcp
# 打印no表示没有开放该端口,那么添加下该端口
firewall-cmd --permanent --add-port=22022/tcp
# 重新加载防火墙策略:
firewall-cmd --reload
设置完成后,重启防火墙和ssh服务,最好也重启服务器
systemctl restart sshd
systemctl restart firewalld.service
开启完成后还需要在腾讯云控制台安全组策略中打开对应的端口,不然也不能访问。如果可以访问了就将22的策略也删除掉,使之不能访问。
- 尝试登陆后,关闭默认的22端口
#关闭默认 22端口
firewall-cmd --permanent --zone=public --remove-port=8080/tcp
# 重启防火墙
systemctl reload firewalld
# 查看防火墙端口
firewall-cmd --list-ports