Linux防火墻iptables簡明教程
發(fā)布時(shí)間:2012-11-14 19:13:11 作者:佚名
我要評論

本著簡明化學(xué)習(xí)的目的,微魔為大家剔除了許多冗余的內(nèi)容,提取出盡量多的精華部分成文,和大家共同學(xué)習(xí),本文涉及的內(nèi)容包括如下
前幾天微魔部落再次遭受到個(gè)別別有用心的攻擊者的攻擊,順便給自己充個(gè)電,復(fù)習(xí)了一下linux下常見的防火墻iptables的一些內(nèi)容,但是無奈網(wǎng)上的很多教程都較為繁瑣,本著簡明化學(xué)習(xí)的目的,微魔為大家剔除了許多冗余的內(nèi)容,提取出盡量多的精華部分成文,和大家共同學(xué)習(xí),本文涉及的內(nèi)容包括如下
Linux防火墻iptables簡明教程
1.安裝iptables
2.查看現(xiàn)有的iptables規(guī)則
3.刪除某iptables規(guī)則
4.清除現(xiàn)有iptables規(guī)則
5.創(chuàng)建規(guī)則
6.設(shè)置開機(jī)啟動(dòng)
7.保存iptables規(guī)則
8.iptables在手動(dòng)防CC攻擊中的簡單應(yīng)用
1.安裝iptables
很多Linux已經(jīng)默認(rèn)安裝iptables,可使用后文的查看命令測試是否安裝
CentOS/RedHat下執(zhí)行:
yum install iptablesDebian/Ubuntu下執(zhí)行:
apt-get install iptables
2.查看現(xiàn)有的iptables規(guī)則
命令后面的line-number為顯示行號(hào)(將規(guī)則一則一則輸出,并顯示行號(hào)),可選,方便后文的刪除指令。
iptables -L -n --line-numbers
3.刪除某iptables規(guī)則
例如,刪除第12行的規(guī)則,行號(hào)可由之前的命令查看
iptables -D INPUT 12
4.清除現(xiàn)有iptables規(guī)則
iptables -F
iptables -X
iptables -Z
5.創(chuàng)建規(guī)則
a).開放端口
命令iptables -A INPUT -j REJECT將屏蔽其他未授權(quán)的端口,因此請務(wù)必開放22端口以保障SSH連接正常~
#允許本機(jī)訪問
iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
# 允許已建立的或相關(guān)連的通行
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#允許所有本機(jī)向外的訪問
iptables -A OUTPUT -j ACCEPT
# 允許訪問22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#允許訪問80端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#允許FTP服務(wù)的21和20端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
#如果有其他端口的話,規(guī)則也類似,稍微修改上述語句就行
#禁止其他未允許的規(guī)則訪問
iptables -A INPUT -j REJECT
iptables -A FORWARD -j REJECT
b).屏蔽ip
iptables -I INPUT -s 123.123.123.123 -j DROP可通過更換上述ip為ip段來達(dá)到屏蔽ip段的目的~
若需屏蔽整個(gè)ip段(123.0.0.1到123.255.255.254)則換為123.0.0.0/8
若需屏蔽ip段123.123.0.1到123.123.255.254,則換為124.123.0.0/16
若需屏蔽ip段123.123.123.1到123.123.123.254則換為123.123.123.0/24
6.設(shè)置開機(jī)啟動(dòng)
一般在安裝iptables完成后,開機(jī)啟動(dòng)會(huì)自動(dòng)設(shè)置成功,但在個(gè)別CentOS系統(tǒng)上,貌似還有些問題,可以使用如下命令手動(dòng)設(shè)置
chkconfig --level 345 iptables on
7.保存iptables規(guī)則
service iptables save
8.iptables在手動(dòng)防CC攻擊中的簡單應(yīng)用
關(guān)于獲取攻擊者ip的方法,可以通過很多方法獲取,如查看網(wǎng)站日志等,本文不再贅述。
a).建立要屏蔽的ip/ip段文件,名為ip.txt
#屏蔽的ip
123.4.5.6
#屏蔽的ip段(編寫方法,同前文)
123.4.5.6/24b).建立block_ip.sh腳本文件
#!/bin/sh
# Filename: block_ip.sh
# Purpose: blocks all IP address/network found in a text file
# The text file must have one IP address or network per line
#################################################################
# Change the following path/filename to match yours
IP_LIST_FILE=/path/to/ip.txt
#################################################################
# Don't change anything below unless you are a smarty pant!
#################################################################
IPTABLES_BIN=/sbin/iptables
# Get the IP address/network from the file and ignore any line starting with # (comments)
BAD_IP_ADDR_LIST=$(grep -Ev "^#" $IP_LIST_FILE)
# Now loop through the IP address/network list and ban them using iptabels
for i in $BAD_IP_ADDR_LIST
do
echo -n "Blocking $i ...";
$IPTABLES_BIN -A INPUT -s $i -j DROP
$IPTABLES_BIN -A OUTPUT -d $i -j DROP
echo "DONE.";
done
##################################################################
# END OF SCRIPT - NOTHING TO SEE HERE - THAT'S ALL FOLKS!
##################################################################
c).運(yùn)行腳本
sh /path/to/block_ip.sh
d).查看iptables規(guī)則是否生效/正確,這一步的命令,之前有提到哦,開動(dòng)腦筋,實(shí)在忘了,點(diǎn)擊此處~
Linux防火墻iptables簡明教程
1.安裝iptables
2.查看現(xiàn)有的iptables規(guī)則
3.刪除某iptables規(guī)則
4.清除現(xiàn)有iptables規(guī)則
5.創(chuàng)建規(guī)則
6.設(shè)置開機(jī)啟動(dòng)
7.保存iptables規(guī)則
8.iptables在手動(dòng)防CC攻擊中的簡單應(yīng)用
1.安裝iptables
很多Linux已經(jīng)默認(rèn)安裝iptables,可使用后文的查看命令測試是否安裝
CentOS/RedHat下執(zhí)行:
yum install iptablesDebian/Ubuntu下執(zhí)行:
apt-get install iptables
2.查看現(xiàn)有的iptables規(guī)則
命令后面的line-number為顯示行號(hào)(將規(guī)則一則一則輸出,并顯示行號(hào)),可選,方便后文的刪除指令。
iptables -L -n --line-numbers
3.刪除某iptables規(guī)則
例如,刪除第12行的規(guī)則,行號(hào)可由之前的命令查看
iptables -D INPUT 12
4.清除現(xiàn)有iptables規(guī)則
iptables -F
iptables -X
iptables -Z
5.創(chuàng)建規(guī)則
a).開放端口
命令iptables -A INPUT -j REJECT將屏蔽其他未授權(quán)的端口,因此請務(wù)必開放22端口以保障SSH連接正常~
復(fù)制代碼
代碼如下:#允許本機(jī)訪問
iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
# 允許已建立的或相關(guān)連的通行
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#允許所有本機(jī)向外的訪問
iptables -A OUTPUT -j ACCEPT
# 允許訪問22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#允許訪問80端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#允許FTP服務(wù)的21和20端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
#如果有其他端口的話,規(guī)則也類似,稍微修改上述語句就行
#禁止其他未允許的規(guī)則訪問
iptables -A INPUT -j REJECT
iptables -A FORWARD -j REJECT
b).屏蔽ip
iptables -I INPUT -s 123.123.123.123 -j DROP可通過更換上述ip為ip段來達(dá)到屏蔽ip段的目的~
若需屏蔽整個(gè)ip段(123.0.0.1到123.255.255.254)則換為123.0.0.0/8
若需屏蔽ip段123.123.0.1到123.123.255.254,則換為124.123.0.0/16
若需屏蔽ip段123.123.123.1到123.123.123.254則換為123.123.123.0/24
6.設(shè)置開機(jī)啟動(dòng)
一般在安裝iptables完成后,開機(jī)啟動(dòng)會(huì)自動(dòng)設(shè)置成功,但在個(gè)別CentOS系統(tǒng)上,貌似還有些問題,可以使用如下命令手動(dòng)設(shè)置
chkconfig --level 345 iptables on
7.保存iptables規(guī)則
service iptables save
8.iptables在手動(dòng)防CC攻擊中的簡單應(yīng)用
關(guān)于獲取攻擊者ip的方法,可以通過很多方法獲取,如查看網(wǎng)站日志等,本文不再贅述。
a).建立要屏蔽的ip/ip段文件,名為ip.txt
#屏蔽的ip
123.4.5.6
#屏蔽的ip段(編寫方法,同前文)
123.4.5.6/24b).建立block_ip.sh腳本文件
復(fù)制代碼
代碼如下:#!/bin/sh
# Filename: block_ip.sh
# Purpose: blocks all IP address/network found in a text file
# The text file must have one IP address or network per line
#################################################################
# Change the following path/filename to match yours
IP_LIST_FILE=/path/to/ip.txt
#################################################################
# Don't change anything below unless you are a smarty pant!
#################################################################
IPTABLES_BIN=/sbin/iptables
# Get the IP address/network from the file and ignore any line starting with # (comments)
BAD_IP_ADDR_LIST=$(grep -Ev "^#" $IP_LIST_FILE)
# Now loop through the IP address/network list and ban them using iptabels
for i in $BAD_IP_ADDR_LIST
do
echo -n "Blocking $i ...";
$IPTABLES_BIN -A INPUT -s $i -j DROP
$IPTABLES_BIN -A OUTPUT -d $i -j DROP
echo "DONE.";
done
##################################################################
# END OF SCRIPT - NOTHING TO SEE HERE - THAT'S ALL FOLKS!
##################################################################
c).運(yùn)行腳本
sh /path/to/block_ip.sh
d).查看iptables規(guī)則是否生效/正確,這一步的命令,之前有提到哦,開動(dòng)腦筋,實(shí)在忘了,點(diǎn)擊此處~
相關(guān)文章
SUSE Linux Enterprise Server 設(shè)置防火墻開啟ssh遠(yuǎn)程端口的方法
這篇文章主要介紹了在SUSE Linux Enterprise Server系統(tǒng)下設(shè)置防火墻開啟ssh遠(yuǎn)程端口的方法,需要的朋友可以參考下2013-06-29- 這篇文章主要介紹下如何下freebsd下配置防火墻開啟SSH服務(wù)的方法,需要的朋友可以參考下2013-06-29
windows系統(tǒng)打開網(wǎng)頁被阻止通過windws防火墻可以輕松解決
打開一個(gè)網(wǎng)頁被WINDOWS阻止了怎么辦,想必有很多的朋友都有遇到過這樣的情況吧,究竟是什么原因呢?下面為大家一一介紹下,感興趣的朋友可不要錯(cuò)過了哈2013-06-27- Linux核心本身內(nèi)建了一種稱作”偽裝”的簡單機(jī)制,除了最專門的黑客攻擊外,可以抵擋住絕大部分的攻擊行動(dòng)2013-06-24
利用命令行配置Windows XP系統(tǒng)防火墻(保護(hù)電腦安全)
防火墻是每臺(tái)電腦必備的軟件之一,為了保護(hù)電腦的安全,配置防火墻是必要的,下面為大家介紹下使用命令行配置XP系統(tǒng)防火墻,具體參數(shù)如下,感興趣的朋友可以參考下哈,希望2013-06-13Redhat(CentOS)下配置iptables防火墻的方法
在CentOS下配置iptables防火墻,是非常必要的。來我們學(xué)習(xí)如何配置2013-06-07- 最近在CentOS Linux下安裝配置 ORACLE 數(shù)據(jù)庫的時(shí)候,總顯示因?yàn)榫W(wǎng)絡(luò)端口而導(dǎo)致的EM安裝失敗,遂打算先關(guān)閉一下防火墻2013-06-07
使用windows防火墻時(shí)報(bào)錯(cuò)0x80070422解決方案
啟用Windows防火墻報(bào)錯(cuò)0x80070422,解決方法為:方法一 開啟Windows Defender服務(wù),方法二 運(yùn)行Fix it,方法三 運(yùn)行msert等等,感興趣的朋友可以參考下哈,希望對你有所幫2013-04-22Linux防火墻偽裝機(jī)制抵抗惡意黑客的詳細(xì)介紹
在Linux中,由于有許多不同的防火墻軟件可供選擇,安全性可低可高,最復(fù)雜的軟件可提供幾乎無法滲透的保護(hù)能力。不過,Linux核心本身內(nèi)建了一種稱作”偽裝”的簡單機(jī)制,除2013-04-17winxp/win7系統(tǒng)自帶的防火墻關(guān)閉方法讓你暢通網(wǎng)絡(luò)
windows xp/win7系統(tǒng)安裝后,默認(rèn)情況下防火墻就處于啟動(dòng)狀態(tài)的,他有個(gè)不好的地方就是阻止軟件對網(wǎng)絡(luò)的訪問,很是麻煩的特別是在聯(lián)網(wǎng)局域網(wǎng)游戲的時(shí)候,更不要提了,感興趣的2013-02-27