我想iptables應該做得到,研究了一下把它做成記錄文件
1.編輯一個檔案myiptables.sh,把它放在/etc/init.d資料夾中(要有管理權限sudo -s),內容大致如下
#!/bin/bash
##網路介面代號
ethnet="eth0"
##清理防火牆規則
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
##把進來的封包全擋掉
/sbin/iptables -P INPUT DROP
##允許出去的封包
/sbin/iptables -P OUTPUT ACCEPT
##允率本機封包
/sbin/iptables -A INPUT -i lo -j ACCEPT
###允許udp封包進入
/sbin/iptables -A INPUT -i $ethnet -p udp -j ACCEPT
##讀取iptables.allow進入
while read line
do
##設定防火牆規則,允許特定網段封包進入
/sbin/iptables -A INPUT -i $ethnet -p tcp -s $line -j ACCEPT
done < iptables.allow
2.建一個iptables.allow檔案,把允許通過的網段列出,內容大致如下
163.20.0.0/16
10.0.0.0/8
3.改變myiptables.sh權限。
chmod +x /etc/init.d/myiptables.sh
4.設定開機時啟動防火牆規則
cd /etc/init.d
update-rc.d myiptables.sh defaults
這樣電腦就只能連上某一些網站,別的網站就stop。
另外一定有人想如果我要臨時改怎麼辦,我想到的是把iptables.allow這個檔案放在個人網站中,用wget把它下載下來,這樣只要學生電腦重新開機就可以套用新電腦,不過要注意的是一開始不要先允許連線 /sbin/iptables -P INPUT ACCEPT,不可以把它擋掉,等到下載下來後再把連線擋掉。