2023-11-28 docker添加防火墻限制訪問(wèn)

注意:服務(wù)器為CentOS 7路媚,并且CentOS 7自帶iptables斟或,但不自帶iptables-services

現(xiàn)在需要用iptables限制一個(gè)mysql服務(wù)只能由指定的ip訪問(wèn)

似乎不難,于是網(wǎng)上查了一波框弛,首先查到了這個(gè)

# 配置IPTABLES

iptables -A INPUT -s 允許訪問(wèn)的ip -p tcp --dport 3306 -j ACCEPT

iptables -A INPUT -p tcp --dport 3306 -j REJECT

執(zhí)行完后使用iptables -L -n命令可以查看當(dāng)前所有的iptables規(guī)則

我們剛才執(zhí)行的命令設(shè)置的是INPUT,所以我們這里只看INPUT【演示截圖中我執(zhí)行了兩句十饥,允許127.0.0.1,禁止其他】結(jié)果如下圖所示

iptables-input鏈

看起來(lái)沒(méi)問(wèn)題對(duì)吧祖乳,但是其實(shí)它就有問(wèn)題了(說(shuō)簡(jiǎn)單點(diǎn)就是逗堵,防火墻沒(méi)有起作用,啥ip都能訪問(wèn)他)

于是我再測(cè)試了一次眷昆,這次我只執(zhí)行禁止所有ip訪問(wèn)的命令蜒秤,一個(gè)ip我都不允許

很遺憾,并沒(méi)有什么卵用亚斋,不管是別的服務(wù)器的登錄mysql或著百度搜出來(lái)的端口掃描作媚,統(tǒng)統(tǒng)都能訪問(wèn)

所以是為什么呢

因?yàn)閙ysql服務(wù)是用docker起的,docker自己會(huì)往系統(tǒng)中注冊(cè)一個(gè)虛擬網(wǎng)卡叫docker0帅刊,訪問(wèn)docker服務(wù)的流量會(huì)直接被轉(zhuǎn)發(fā)到docker0這張網(wǎng)卡上掂骏,所以iptables規(guī)則是獨(dú)有的,剛才設(shè)置的INPUT對(duì)docker服務(wù)是不生效的

未完成需求再次執(zhí)行下圖是docker規(guī)則

iptables -I DOCKER -p tcp --dport 3306 -j DROP

iptables -I DOCKER -s 127.0.0.1 -p tcp --dport 3306 -j ACCEPT

iptables -L -n

就可以看到DOCKER規(guī)則中新增了兩條厚掷,一條是禁止所有訪問(wèn),一條是允許127.0.0.1訪問(wèn)

iptbales-Docker鏈

這時(shí)再測(cè)試就如我們所愿了

如果細(xì)心的話應(yīng)該會(huì)發(fā)現(xiàn)這次執(zhí)行的命令是先禁止级解,后允許冒黑,而上面第一個(gè)代碼塊中的命令順序是先允許后禁止,這兩個(gè)順序其實(shí)都是對(duì)的勤哗,

因?yàn)榈谝粋€(gè)代碼塊中是iptables -A抡爹,-A的意思是加在最后,而iptables的匹配順序是從上到下芒划,所以用-A往最后追加的話冬竟,那就是【先寫先匹配】

而第二個(gè)代碼塊中的寫法是iptables -I欧穴,-I的意思是加在最前,也就是上面截圖中的效果泵殴,可以看到我加的這兩條涮帘,明顯是在規(guī)則鏈的最前面,那用-I往前追加的話笑诅,就是【先寫后匹配】

到這里调缨,通過(guò)iptables限制3306端口只允許指定ip訪問(wèn),已經(jīng)實(shí)現(xiàn)了.

補(bǔ)充:

上面進(jìn)行的設(shè)置系統(tǒng)重啟后就會(huì)消失吆你,可以保存iptables的配置文件:

保存配置:

1)iptables-save > /etc/sysconfig/iptables

2)用iptables-service保存【這個(gè)做法需要安裝iptables-services弦叶,實(shí)際效果和上面那句一樣

? ? ? service iptables save

還原配置:

1)iptables-restore < /etc/sysconfig/iptables

2)手動(dòng)重啟iptables【這個(gè)做法需要安裝iptables-services

? ? ?systemctl restart iptables

出現(xiàn)的現(xiàn)象:包含docker規(guī)則鏈的iptables防火墻是無(wú)法完成開(kāi)機(jī)生效的,開(kāi)機(jī)生效的只能是系統(tǒng)自帶的INPOUT妇多、FORWORD伤哺、OUTPUT、PREROUTING規(guī)則者祖。

這是原因: 服務(wù)器重啟后立莉,iptables服務(wù)先啟動(dòng),啟動(dòng)后會(huì)去加載備份的配置文件咸包,但是此時(shí)桃序,docker服務(wù)還未啟動(dòng),DOCKER規(guī)則鏈還未創(chuàng)建烂瘫,所以雖然iptables有加載我們備份的配置媒熊,但他沒(méi)法加載DPOCKER規(guī)則鏈上的內(nèi)容,從而導(dǎo)致DOCKER規(guī)則鏈上的規(guī)則沒(méi)有成功加載坟比。而docker啟動(dòng)后芦鳍,DOCKER規(guī)則鏈就存在了,這時(shí)不管是手動(dòng)讓iptables加載配置文件還是直接重啟iptables葛账,之前備份的DOCKER規(guī)則就都能成功加載了柠衅。

################################################################################################

1)iptables常用命令小計(jì):

?#列出所有iptables規(guī)則? ? ??

iptables -L -n? ? ? ?

#列出所有iptables規(guī)則,并顯示編號(hào)【有編號(hào)才好刪】

iptables -L -n --line-number

#備份iptables防火墻規(guī)則到指定的文件中

iptables-save > 文件絕對(duì)路徑將當(dāng)前iptables規(guī)則保存到指定文件中

#從指定文件還原iptables防火墻規(guī)則

iptables-restore < 文件絕對(duì)路徑從指定文件中加載iptables規(guī)則

2)iptables防火墻添加小計(jì):

#禁用192.168.116.1~192.168.116.20 經(jīng)過(guò)網(wǎng)卡eno1的目的 IP為192.168.116.116的IP段 的 22-29 端口

iptables -I INPUT -m iprange --src-range 192.168.116.1-192.168.116.20 -p tcp -i eno1 -d 192.168.116.116 --dport 22:29? -j DROP

#刪除規(guī)則:

先查詢:iptables -L -n --line-number

在刪除:iptables -D INPUT? ?2

其中INPUT 指的是鏈籍琳,2指的是編號(hào)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末菲宴,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子趋急,更是在濱河造成了極大的恐慌喝峦,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,682評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件呜达,死亡現(xiàn)場(chǎng)離奇詭異谣蠢,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門眉踱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)挤忙,“玉大人,你說(shuō)我怎么就攤上這事谈喳〔崃遥” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 165,083評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵叁执,是天一觀的道長(zhǎng)茄厘。 經(jīng)常有香客問(wèn)我,道長(zhǎng)谈宛,這世上最難降的妖魔是什么次哈? 我笑而不...
    開(kāi)封第一講書人閱讀 58,763評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮吆录,結(jié)果婚禮上窑滞,老公的妹妹穿的比我還像新娘。我一直安慰自己恢筝,他們只是感情好哀卫,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著撬槽,像睡著了一般此改。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上侄柔,一...
    開(kāi)封第一講書人閱讀 51,624評(píng)論 1 305
  • 那天共啃,我揣著相機(jī)與錄音,去河邊找鬼暂题。 笑死移剪,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的薪者。 我是一名探鬼主播纵苛,決...
    沈念sama閱讀 40,358評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼言津!你這毒婦竟也來(lái)了攻人?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 39,261評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤悬槽,失蹤者是張志新(化名)和其女友劉穎贝椿,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體陷谱,經(jīng)...
    沈念sama閱讀 45,722評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了烟逊。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片渣窜。...
    茶點(diǎn)故事閱讀 40,030評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖宪躯,靈堂內(nèi)的尸體忽然破棺而出乔宿,到底是詐尸還是另有隱情,我是刑警寧澤访雪,帶...
    沈念sama閱讀 35,737評(píng)論 5 346
  • 正文 年R本政府宣布详瑞,位于F島的核電站,受9級(jí)特大地震影響臣缀,放射性物質(zhì)發(fā)生泄漏坝橡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評(píng)論 3 330
  • 文/蒙蒙 一精置、第九天 我趴在偏房一處隱蔽的房頂上張望计寇。 院中可真熱鬧,春花似錦脂倦、人聲如沸番宁。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,941評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)蝶押。三九已至,卻和暖如春火欧,著一層夾襖步出監(jiān)牢的瞬間棋电,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,057評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工布隔, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留离陶,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,237評(píng)論 3 371
  • 正文 我出身青樓衅檀,卻偏偏與公主長(zhǎng)得像招刨,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子哀军,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容