一、iptables
1钓试、升級(jí)更新ubuntu
sudo apt-get update && sudo apt-get upgrade
2装黑、清空當(dāng)前iptables規(guī)則:
sudo iptables -F
3、編寫iptables配置文件
sudo vi /etc/iptables.up.rules
配置文件內(nèi)容:
*filter
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#允許所有建立起來的連接
-A OUTPUT -j ACCEPT
#允許所有出去的流量
-A INPUT -p tcp --dport 443 -j ACCEPT
-A INPUT -p tcp --dport 80 -j ACCEPT
#允許http和https協(xié)議下請求的連接
-A INPUT -p tcp -m state --state NEW --dport 39999 -j ACCEPT
#只允許ssh通過39999端口號(hào)登陸
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
#允許外網(wǎng)的服務(wù)器ping當(dāng)前服務(wù)器
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied:" --log-level 7
#記錄被拒絕的請求
-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 150 -j DROP
#攔截可疑的訪問信息(如果某個(gè)ip對我們的80端口在60s內(nèi)發(fā)出了超過150次請求弓熏,我們就將其攔截)
-A INPUT -j REJECT
-A FORWARD -j REJECT
#拒絕所有其他進(jìn)入服務(wù)器的流量
COMMIT
4恋谭、告訴iptables這個(gè)配置文件的位置。
sudo iptables-restore</etc/iptables.up.rules
5挽鞠、查看防火墻有沒有被激活
sudo ufw status
目前沒有被激活
6疚颊、激活ufw
sudo ufw enable
此時(shí)防火墻為激活狀態(tài)
7、創(chuàng)建開機(jī)啟動(dòng)
編輯腳本
sudo vi /etc/network/if-up.d/iptables
腳本內(nèi)容:
#!/bin/sh
iptables-restore /etc/iptables.up.rules
給腳本添加執(zhí)行權(quán)限
sudo chmod +x /etc/network/if-up.d/iptables
二信认、fail2ban
一個(gè)防御性的動(dòng)作庫材义,通過監(jiān)控系統(tǒng)的日志文件,根據(jù)檢測到的任何可疑的行為嫁赏,觸發(fā)不同的防御動(dòng)作母截。如:對可疑行為的目標(biāo)執(zhí)行“ip鎖定”。
1橄教、安裝fail2ban
sudo apt-get install fail2ban
2清寇、打開配置文件
sudo vi /etc/fail2ban/jail.conf
3、查看fail2ban是否在運(yùn)行
sudo service fail2ban status
4护蝶、停掉/開始
sudo service fail2ban stop/start