麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統 > CentOS > 正文

linux設置iptables防火墻的詳細步驟(centos防火墻設置方法)

2020-07-08 12:56:54
字體:
來源:轉載
供稿:網友

我們 來討論一下如何為你的CentOS 服務器來設置簡單的防火墻。 這里我們以DigitalOcean的CentOS 6 VPS為基礎來討論的,同樣也適用于 阿里云上其他類型的LINUX系統。 (阿里云有個云盾系統,因此在你自己的VPS上不設置防火墻也是可以的)

需要說明的是: 本文只涉及最基礎最常用的防火墻設置,能屏蔽一些常用的攻擊,但并不能徹底保證你的服務器的安全。

系統的隨時更新 以及 關閉不必要的服務 仍然是保證系統安全非常重要的步驟。

如果你需要更全面的了解iptables,閱讀本文后,請google或是閱讀更加深入的資料!

首先簡單介紹一下什么是IPTables:

iptables是Linux內核中內置的防火墻,可以允許管理員通過設置table, chain以及相關的規則來進行數據包過濾和NAT。 一般來講,iptables防火墻已經內置于CentOS 6及其他Linux版本中,而且iptables服務默認都是啟動的。  iptables應用于IPv4, 如果要用IPv6,需要使用ip6tables.

iptables的命令格式:


復制代碼
代碼如下:

iptables[-ttable]command[chain][rules][-jtarget]

[-ttable]:用來指明使用的表,有三種選項:filter,nat和mangle,如果未指定,則使用filter作為缺省表。事實上,對于單個服務器的防火墻配置,一般來講,我們只需要對filter表進行配件就OK了。filter表包括INPUT,OUTPUT,和FORWARD三個chain.

command表明iptables命名要做什么,比如

-A(–append):該命令會把一條規則附件到chain的末尾。

-D(–delete)用來刪除某個規則。

-F(–flush)如果指定了chain,刪除該chain中的所有規則,如果未指定chain,則刪除所有chain中的所有規則。

target:是由規則指定的操作。包括下面幾種:

ACCEPT:接收信息包(允許它前往目的地),并且將停止遍歷chain.

DROP:拒絕,

此外還有REJECT,RETURN,LOG,REDIRECT,MARK,MIRROR,MAQUERADE等。

具體的iptables的語法和概念就不再多說了,請參照iptablesmanpage官方文檔.

簡單來說,iptables防火墻是由一系列的規則(rule)組成,一個數據請求進來,會依次和這些規則進行比較,如果正好符合規則的定義,那這個數據請求要么會被接收ACCEPT,要么被拒絕DRIP。如果不符合任何規則的定義,最后缺省的規則會被應用。

開始操作之前:

注意:一定要把你在DigitalOcean/Linode/阿里云上的服務器做一下快照備份,否則一旦你iptables的配置出了問題,極有可能把你自己擋在門外,你自己都無法連接到服務器了!!出現這種情況可是會欲哭無淚呀,除了重新做系統好像沒有更好的辦法了。(DigitalOcean提供了一個webconsole的界面,有時候會給你反悔和擦除iptables設置的機會,但阿里云沒有)

決定哪些端口需要開放

首先,SSH的端口22自然是需要開放的,否則我們就無法登錄服務器了。

一般來講,CentOS的VPS經常作為用LAMP搭建的Web服務器,FTP服務器,Mail服務器等。

對于Web服務來說,需要開放80端口,如果是HTTPS/SSL協議的話,還需用開放443端口

對于Mail服務來說,由于涉及SMTP,POP3,IMAP協議,需要開放的端口如下:

SMTP:25SecureSMTP:465POP3:110SecurePOP3:995IMAP:143IMAPoverSSL:993

對于FTP服務來說,需要開放20,21兩個端口

第一步:屏蔽最常見的攻擊

缺省情況下,CentOS的iptables的設置是允許任何數據通過的。

我們首先要清空iptables中的所有的規則:


復制代碼
代碼如下:

iptables-F

然后我們加上阻止簡單掃描和攻擊的規則


復制代碼
代碼如下:

iptables-AINPUT-ptcp--tcp-flagsALLNONE-jDROP#NONE包(所有標識bit都沒有設置)主要是掃描類的數據包
iptables-AINPUT-ptcp!--syn-mstate--stateNEW-jDROP#防止sync-flood攻擊
iptables-AINPUT-ptcp--tcp-flagsALLALL-jDROP#ALL包(所有的標注bit都被設置了)也是網絡掃描的數據包

關于sync-flood,請參照wikipedia的解釋。

第二步:為相應的服務開放對應的端口

首先我們應該接受本機localhost的任何請求,否則,數據庫連接等將無法工作

1
iptables-AINPUT-ilo-jACCEPT
對于不同的服務需要開放不同的端口


復制代碼
代碼如下:

iptables-AINPUT-ptcp--dport22-jACCEPT#SSH
iptables-AINPUT-ptcp--dport80-jACCEPT#HTTP
iptables-AINPUT-ptcp--dport443-jACCEPT#HTTPS
iptables-AINPUT-ptcp--dport25-jACCEPT#SMTP
iptables-AINPUT-ptcp--dport465-jACCEPT#SecureSMTP
iptables-AINPUT-ptcp--dport110-jACCEPT#POP3
iptables-AINPUT-ptcp--dport995-jACCEPT#SecurePOP3
iptables-AINPUT-ptcp--dport143-jACCEPT#IMAP
iptables-AINPUT-ptcp--dport993-jACCEPT#SecureIMAP

第三步:加上通用的規則

首先要允許所有從服務器端發起的連接,由此返回的響應數據應該是允許的!比如VPS發起的yumupdate,必須要允許外部的update數據進來


復制代碼
代碼如下:

iptables-IINPUT-mstate--stateESTABLISHED,RELATED-jACCEPT

最后,設置缺省的策略:屏蔽任何進入的數據請求,允許所有從Server發出的請求


復制代碼
代碼如下:

iptables-POUTPUTACCEPT</p><p>iptables-PINPUTDROP

至此,規則設置完畢

第四步:保存設置

首先通過下面的命令查看一下我們的設置是否正確!


復制代碼
代碼如下:

iptable-L-n

確認沒有問題后,執行下面的命令


復制代碼
代碼如下:

serviceiptablessave

執行上述命令后,相應的規則會寫入/etc/sysconfig/iptables這個文件,你可以檢查一下看看。

最后執行


復制代碼
代碼如下:

serviceiptablesrestart.

重新啟動iptables防火墻,以使上述設置生效。

最佳的方法:

為了更方便的修改和維護自己的iptables的設置,我一般是把所有的iptables的設置先寫到一個單獨文件中,測試沒有問題后。然后再保存到iptable的配置文件中。

下面是我自己的iptables文件~/script/firewall.sh


復制代碼
代碼如下:

#!/bin/bash
#Asimpleiptablesfirewallconfiguration</p><p>PATH=/sbin:/bin:/usr/sbin:/usr/bin;exportPATH</p><p>#flush/eraseoriginalrules
iptables-F#清除所有已制定的rule
iptables-X#清除用戶自定義的chain/table
iptables-Z#將所有的chain的計數和流量統計歸零</p><p>#Acceptlocalhostconnetting,nomatterwhatitis
iptables-AINPUT-ilo-jACCEPT</p><p>#Acceptanyresponsepackagewhichisinitiatedfrominside
iptables-AINPUT-mstate--stateESTABLISHED,RELATED-jACCEPT</p><p>#blockmostcommonnetworkattacks(reconpacketsandsyn-floodattack)
iptables-AINPUT-ptcp--tcp-flagsALLNONE-jDROP
iptables-AINPUT-ptcp!--syn-mstate--stateNEW-jDROP
iptables-AINPUT-ptcp--tcp-flagsALLALL-jDROP</p><p>#openportsfordifferentservices
iptables-AINPUT-ptcp--dport22-jACCEPT#SSH
iptables-AINPUT-ptcp--dport80-jACCEPT#HTTP
#iptables-AINPUT-ptcp--dport443-jACCEPT#HTTPS
#iptables-AINPUT-ptcp--dport25-jACCEPT#SMTP
#iptables-AINPUT-ptcp--dport465-jACCEPT#SecureSMTP
#iptables-AINPUT-ptcp--dport110-jACCEPT#POP3
#iptables-AINPUT-ptcp--dport995-jACCEPT#SecurePOP</p><p>#ICMPconfiguration
#TopreventICMPDDOS,wedonotallowICMPtype8(echo-request)orlimitthisrequestwith1/second
#someICMPrequestsareallowed.
icmp_type="0341112141618"
forticmpin$icmp_type
do
iptables-AINPUT-picmp--icmp-type$ticmp-jACCEPT
done
#iptables-AINPUT-picmp--icmp-type8-mlimit--limit1/second-jACCEPT</p><p>#defaultpolicies
iptables-POUTPUTACCEPT
iptables-PINPUTDROP</p><p>#saveto/etc/sysconfig/iptables
/etc/init.d/iptablessave

你可以根據你的需要進行相應的修改。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 毛片一区二区三区 | 欧美乱码精品一区 | 欧美一级黄带 | 国产精品久久久久久久久久久天堂 | 成人性爱视频在线观看 | 在线播放免费人成毛片乱码 | 久草久视频 | aa国产视频一区二区 | 免费国产羞羞网站视频 | 一级毛片在线观看免费 | 视屏一区 | www.9191.com| 深夜福利久久久 | 蜜桃麻豆视频 | 91久久99热青草国产 | wankz100%videos| 久久久久久久久久美女 | 欧美性生活久久 | 亚洲成人自拍电影 | 一级色毛片| 中国妞xxxhd露脸偷拍视频 | 日韩中文字幕三区 | 日本在线免费观看视频 | 国产精品亚洲综合一区二区三区 | 欧美日韩在线看片 | 精品国产一级毛片 | 狠狠操操 | 国产中文一区 | 成人福利软件 | 免费观看亚洲视频 | 日本精品视频一区二区三区四区 | 久久久久亚洲精品国产 | 久久精品com| hdbbwsexvideo | 俄罗斯16一20sex牲色另类 | 久久久电影电视剧免费看 | 欧美wwwwww | 欧美a视频 | 视频一区二区视频 | 女18一级大黄毛片免费女人 | 九九热精品在线 |