用Debian打造簡易防火牆
家裡是使用一台linux PC, 寫了一些shell script 及iptables 來當作防火牆及router使用, 最近將它稍微整理了一下, 並放在GitHub 供有興趣的人可以拿去修改使用.
這個程式名稱取名叫做defender.安裝方式如下. 從GitHub 將程式clone 一份到local disk.
# cd /root
# git clone https://github.com/haotseng/Defender.git
拷貝裡面的defender 目錄到/root中
# cd Defender
# cp -a defender /root
# cd /root/defender
建立並修改設定檔以符合你自己的環境.
# cp defender.conf.sample defender.conf
# vi defender.conf
拷貝firewall.modules 裡面的自己想要的iptables 設定檔放到firewall.d 目錄中. 並且修內容以符合自己的需求.
cp ./firewall.modules/*.sh ./firewall.d
使用以下指令來啟動程式
./defender start
也可以使用以下指令來reset 所有的設定.
./defender stop
裡面也附了一個適用於debian 的init script, 可以用於開機時自動啟動. 當你的防火牆都已經設定好了的時候, 可以使用下列方式安裝, 使其能夠開機時自動啟動.
# cd /Defender
# cp ./init_script/defender /etc/init.d
# update-rc.d defender defaults
如此, 開機時, 就能夠自己啟動了.
有興研究這個shell script 的人可以發現, 它可以自動偵測機器對外的IP, 並且自動修改iptables的設定.
對於家中非固定IP的人, 還蠻適用的.
這個程式尚未完備, 還在思考Qos及Router的應用.