一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統 - Centos - linux設置iptables防火墻的詳細步驟(centos防火墻設置方法)

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

2019-09-27 14:40centos技術網 Centos

這篇文章主要介紹了linux設置iptables防火墻的詳細步驟,這里以centos防火墻設置為例,需要的朋友可以參考下

我們 來討論一下如何為你的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

 

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

延伸 · 閱讀

精彩推薦
  • Centoscentos不小心刪除/root目錄該如何解決?

    centos不小心刪除/root目錄該如何解決?

    一些朋友最近在問小編centos不小心刪除/root目錄該如何解決?今天小編就為大家分享centos不小心刪除/root目錄解決辦法;希望對大家會有幫助,有需要的朋友...

    腳本之家8022019-05-29
  • CentosCentOS6.5下Redis安裝與配置詳細步驟

    CentOS6.5下Redis安裝與配置詳細步驟

    本篇文章主要介紹了CentOS6.5下Redis安裝與配置詳細步驟,詳細介紹redis單機單實例安裝與配置,服務及開機自啟動。有興趣的可以了解一下。...

    飛流11452021-12-24
  • CentosCentOS 6.6實現永久修改DNS地址的方法

    CentOS 6.6實現永久修改DNS地址的方法

    這篇文章主要介紹了CentOS 6.6實現永久修改DNS地址的方法,涉及針對CentOS配置文件的相關設置技巧,具有一定參考借鑒價值,需要的朋友可以參考下 ...

    Linux社區4472020-08-21
  • Centoscentos 安裝與操作方法

    centos 安裝與操作方法

    這篇文章主要介紹了centos 安裝與操作方法,需要的朋友可以參考下...

    centos之家5272019-07-11
  • CentosCentos 7開啟網卡自動獲取IP的詳細方法

    Centos 7開啟網卡自動獲取IP的詳細方法

    本篇文章主要介紹了Centos 7開啟網卡自動獲取IP的詳細方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    凌鋒8972021-12-29
  • CentosCentOS7設置日期和時間方法以及基本概念介紹

    CentOS7設置日期和時間方法以及基本概念介紹

    這篇文章主要介紹了CentOS7設置日期和時間方法以及基本概念介紹,本文講解使用CentOS7中的新命令timedatectl設置日期時間方法,需要的朋友可以參考下 ...

    CentOS之家6522019-09-19
  • CentosCentos7運用/dev/shm進行網站優化

    Centos7運用/dev/shm進行網站優化

    這篇文章主要介紹了LINUX中Centos7運用/dev/shm進行網站優化相關知識點,對此有興趣的朋友參考學習下。...

    彬菌9912022-03-02
  • CentosCentOS下Uptime命令詳解

    CentOS下Uptime命令詳解

    在Linux下,我們可以使用uptime命令,而且此命令不必使用root權限。uptime命令在系統中已經默認安裝了。今天小編為大家帶來的是CentOS下Uptime命令詳解;希望...

    CentOS之家11482019-06-19
主站蜘蛛池模板: 公交车上插入 | 蝴蝶传媒免费安装 | 国产实拍会所女技师在线 | 99久久综合给久久精品 | 99精品国产高清一区二区三区香蕉 | 2022最新国产在线 | 猛操女人| www.av在线视频| 高清欧美不卡一区二区三区 | 深夜福利影院 | 逼逼流水了 | 日本高清在线不卡 | 婚前试爱免费观看 | 国产成人精品系列在线观看 | 国产成人一区二区三区视频免费蜜 | 天天干夜夜玩 | 交换朋友夫妇3中文字幕 | 午夜亚洲WWW湿好大 午夜想想爱 | 性欧洲女人18 | 黄网在线观看免费网站台湾swag | 9191精品国产观看 | 69天堂网 | 果冻传媒天美传媒在线小视频播放 | 日韩去日本高清在线 | 久久婷婷五月综合色精品首页 | 91久久国产视频 | 欧美一级特黄刺激大片视频 | 国产成人精品免费午夜 | 动漫美女日批 | 久久久久国产一级毛片高清片 | 日韩毛片免费线上观看 | 欧美男同猛男 videos 同性 | 1769在线观看 | 4444kk在线看片 | 日韩毛片免费 | 亚洲精品青青草原avav久久qv | 天天射天天舔 | 四虎在线免费播放 | 成免费视频 | 午夜私人福利影院 | 四虎在线免费播放 |