云服务器防止被攻击(Ubuntu/Debian)

最近云server部署不到一天就被暴力攻击了,甚至直接登录了root账户,还把我自己的本地ip封禁了,现在正好列举一些防止被网络攻击的方法

公网ip实属难得,有利有弊,一方面可以让自己非常快地连接server并且搭建网站,另一方面非常容易被坏人攻击

SSH安全性加强

1.只允许密钥登录(非密码登录)

编辑SSH配置文件

1
sudo vim /etc/ssh/sshd_config

找到并修改内容

1
2
PasswordAuthentication no #root密码登录
PubkeyAuthentication yes #ssh密钥登录

重启SSH服务

1
sudo systemctl restart ssh

2.修改默认SSH端口

讲默认的22端口改为不常见的端口(防止被扫)

1
2
#sshd_config
Port 22222 #防火墙也要放行端口

防火墙配置

启动并配置UWF防火墙

1
2
3
4
5
6
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH # 或你自定义的 SSH 端口
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

Fail2ban防爆破

安装并启用Fail2ban

1
2
3
sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

可以屏蔽多次失败登录的IP,但自己不要故意去试,因为我已经试过了