不知道小伙伴们是不是拥有一台自己的云服务器呢?如果有请“点赞”,如果没有请点击“在看”。
我拥有的第一台云服务器其实是在我大学的时候,也就是在云服务等一众概念推向市场的时候,特别是阿里云的产品,没用过但也有听说过,但我的的确确拥有的人生第一台云服务器是一台欧洲的一个VPS(虚拟专用服务器 Virtual Private Server),记得是1核512MB内存,尽管配置很低,但从此被Linux这个东西深深的吸引。
服务器可以做很多事,包括最基础的建站、跑应用,跑服务、做爬虫、代理等,比如我就为自己建立了一个网站,还注册了一个花哨的域名:
aaa.al
感兴趣的朋友不妨拷贝到浏览器,访问试试。
言归正传,其实今天想分享的是如何保护好自己的云主机!之前也有分享过,主要的方式有:
-
1.设置特殊端口,比如把22端口修改为2222
-
2.禁止root用户直接登录
-
3.建立普通用户,设置复杂的密码(包含特殊字符)
-
4.不使用普通用户登录,采用公钥-私钥模式
-
5.开启防火墙,仅仅放行安全或必要的端口
但是作为管理员,这些都比较被动,不能任由“入侵者”攻击我们的服务器,使用fail2ban这款工具来做一些应对措施。
比如上图,在登录时可以发现,系统提示自上一次登录成功后,系统有10022次失败的登录,说明有人(机器)在不断尝试登录我们的服务器。
应对措施,安装fail2ban:
# Ubuntu
sudo apt update && sudo apt install fail2ban
# CentOS
yum install fail2ban
进入fail2ban的目录,复制一份配置文件:
cd /etc/fail2ban
sudo cp fail2ban.conf fail2ban.local
sudo cp jail.conf jail.local
修改jail.local配置文件启动sshd策略。
sudo vim jail.local
定位到285行左右,添加一行:
enabled = true
相对位置如上图所示。完成之后修改sshd策略。
sudo vim fail2ban.local
定位到最后一行,添加如下内容(CentOS使用如下配置)
[sshd]
enable = ture
port = 22 # 注意改成自己对应的ssh端口
filter =sshd
# CentOS
logpath = /var/log/secure
# Ubuntu
# logpath = /var/log/auth.log
maxretry = 5 # 最大尝试次数
bantime = 1800 #封禁时间,单位s。-1为永久封禁
保存配置,重启生效。
sudo systemctl restart fail2ban #重启
sudo fail2ban-client status #查看状态
sudo fail2ban-client status sshd #查看sshd的详细状态
尝试错误登录服务器5次,发现再也登录不上了,服务器返回连接超时。
再次查询ip发现已经被封禁了。
sudo fail2ban-client status sshd
小伙伴们注意不要把自己给挡在服务器外面了哦!