溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux防火墻iptables怎么用

發(fā)布時(shí)間:2021-10-15 09:19:02 來源:億速云 閱讀:134 作者:小新 欄目:系統(tǒng)運(yùn)維

這篇文章給大家分享的是有關(guān)Linux防火墻iptables怎么用的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

前幾天微魔部落再次遭受到個(gè)別別有用心的攻擊者的攻擊,順便給自己充個(gè)電,復(fù)習(xí)了一下linux下常見的防火墻iptables的一些內(nèi)容,但是無奈網(wǎng)上的很多教程都較為繁瑣,本著簡(jiǎn)明化學(xué)習(xí)的目的,微魔為大家剔除了許多冗余的內(nèi)容,提取出盡量多的精華部分成文,和大家共同學(xué)習(xí),本文涉及的內(nèi)容包括如下

Linux防火墻iptables簡(jiǎn)明教程
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攻擊中的簡(jiǎn)單應(yīng)用

1.安裝iptables

很多Linux已經(jīng)默認(rèn)安裝iptables,可使用后文的查看命令測(cè)試是否安裝
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)的端口,因此請(qǐng)務(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ī)則也類似,稍微修改上述語(yǔ)句就行
#禁止其他未允許的規(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攻擊中的簡(jiǎn)單應(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

感謝各位的閱讀!關(guān)于“Linux防火墻iptables怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI