自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

16個系統(tǒng)管理員常用的iptables技巧

系統(tǒng) Linux 服務(wù)器
現(xiàn)代Linux內(nèi)核附帶了一個名為Netfilter的包過濾框架。Netfilter可以允許,刪除和修改進(jìn)出系統(tǒng)的流量。iptables用戶空間命令行工具以此功能為基礎(chǔ),提供強大的防火墻,可以通過添加規(guī)則來配置防火墻以形成防火墻策略。

iptables提供強大的功能來控制進(jìn)出系統(tǒng)的流量。

現(xiàn)代Linux內(nèi)核附帶了一個名為Netfilter的包過濾框架。Netfilter可以允許,刪除和修改進(jìn)出系統(tǒng)的流量。iptables用戶空間命令行工具以此功能為基礎(chǔ),提供強大的防火墻,可以通過添加規(guī)則來配置防火墻以形成防火墻策略。iptables因其豐富的功能和巴洛克式命令語法而非常令人生畏。讓我們探討其中的一些為系統(tǒng)管理員可能遇到許多情況的一套iptables技巧和竅門。

避免鎖定自己

場景:你將對公司主服務(wù)器上的iptables策略規(guī)則進(jìn)行更改。你想避免鎖定自己 ,可能還有其他所有人。(這會花費時間和金錢,導(dǎo)致半夜手機(jī)響起。)

[[245654]]

提示#1:在開始處理iptables配置之前先備份它。

使用以下命令備份配置:

  1. /sbin/iptables-save > /root/iptables-works 

提示#2:更好的方法是,在文件名中包含一個時間戳。

使用以下命令添加時間戳:

  1. /sbin/iptables-save > /root/iptables-works-`date +%F` 

你得到一個名稱如下的文件:

  1. /root/iptables-works-2018-09-11 

如果你做了阻止系統(tǒng)工作的事情,你可以快速恢復(fù)它:

提示#3:每次創(chuàng)建iptables策略的備份副本時,都要在名稱中創(chuàng)建一個指向“latest”的文件的鏈接。

  1. ln –s /root/iptables-works-`date +%F` /root/iptables-works-latest 

提示#4:將特定規(guī)則放在底部的策略和通用規(guī)則的頂部。

避免在策略規(guī)則的頂部使用這樣的通用規(guī)則:

  1. iptables -A INPUT -p tcp --dport 22 -j DROP 

在規(guī)則中指定的條件越多,鎖定自己的機(jī)會就越少。而不是上面的非常通用的規(guī)則,使用這樣的內(nèi)容:

  1. iptables -A INPUT -p tcp --dport 22 –s 10.0.0.0/8 –d 192.168.100.101 -j DROP 

此規(guī)則將(-A)附加到INPUT鏈中,規(guī)則將DROP任何源自TCP(-p tcp)端口22( - 端口22)上的CIDR塊10.0.0.0/8的數(shù)據(jù)包發(fā)往IP地址192.168.100.101 (-d 192.168.100.101)。

有很多方法可以更具體。例如,使用-i eth0會將處理限制為服務(wù)器中的單個NIC。這樣,過濾操作將不會將規(guī)則應(yīng)用于eth1。

提示#5:在策略規(guī)則頂部將你的IP地址列入白名單。

這是一種不會鎖定自己的非常有效的方法。

  1. iptables -I INPUT -s -j ACCEPT 

需要將此作為其正常工作的第一條規(guī)則。 記住,-I將其作為第一條規(guī)則插入; -A將其附加到列表的末尾。

提示#6:了解并理解當(dāng)前的所有規(guī)則。

首先不犯錯誤就是成功的一半。如果了解iptables策略背后的內(nèi)部工作原理,它將使你的生活更輕松。如果必須,繪制流程圖。 還要記?。翰呗缘淖饔煤蛻?yīng)該做的事情可能是兩件不同的事情。

設(shè)置工作站防火墻策略

場景:你希望設(shè)置具有限制性防火墻策略的工作站。

提示#1:將默認(rèn)策略設(shè)置為DROP。

  1. Set a default policy of DROP 
  2. *filter 
  3. :INPUT DROP [0:0] 
  4. :FORWARD DROP [0:0] 
  5. :OUTPUT DROP [0:0] 

提示#2:允許用戶完成工作所需的最少量服務(wù)。

iptables規(guī)則需要允許工作站通過DHCP獲取IP地址,網(wǎng)絡(luò)掩碼和其他重要信息(-p udp --dport 67:68 --sport 67:68)。對于遠(yuǎn)程管理,規(guī)則需要允許入站SSH(--dport 22),出站郵件(--dport 25),DNS( - export 53),出站ping(-p icmp),網(wǎng)絡(luò)時間協(xié)議(--dport 123 --sport 123),以及出站HTTP(--dport 80)和HTTPS(--dport 443)。

  1. Set a default policy of DROP 
  2. *filter 
  3. :INPUT DROP [0:0] 
  4. :FORWARD DROP [0:0] 
  5. :OUTPUT DROP [0:0] 
  6.  
  7. # Accept any related or established connections 
  8. -I INPUT  1 -m state --state RELATED,ESTABLISHED -j ACCEPT 
  9. -I OUTPUT 1 -m state --state RELATED,ESTABLISHED -j ACCEPT 
  10.  
  11. # Allow all traffic on the loopback interface 
  12. -A INPUT -i lo -j ACCEPT 
  13. -A OUTPUT -o lo -j ACCEPT 
  14.  
  15. # Allow outbound DHCP request 
  16. -A OUTPUT –o eth0 -p udp --dport 67:68 --sport 67:68 -j ACCEPT 
  17.  
  18. # Allow inbound SSH 
  19. -A INPUT -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW  -j ACCEPT 
  20.  
  21. # Allow outbound email 
  22. -A OUTPUT -i eth0 -p tcp -m tcp --dport 25 -m state --state NEW  -j ACCEPT 
  23.  
  24. # Outbound DNS lookups 
  25. -A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT 
  26.  
  27. # Outbound PING requests 
  28. -A OUTPUT –o eth0 -p icmp -j ACCEPT 
  29.  
  30. # Outbound Network Time Protocol (NTP) requests 
  31. -A OUTPUT –o eth0 -p udp --dport 123 --sport 123 -j ACCEPT 
  32.  
  33. # Outbound HTTP 
  34. -A OUTPUT -o eth0 -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT 
  35. -A OUTPUT -o eth0 -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT 

COMMIT

限制IP地址范圍

場景:貴公司的首席執(zhí)行官認(rèn)為員工在Facebook上花費了太多時間而沒有完成任何工作。 首席執(zhí)行官告訴CIO要對員工在Facebook上浪費時間做些什么。 首席信息官告訴CISO要對員工在Facebook上浪費時間做些什么。 最后,你被告知員工在Facebook上浪費了太多時間,你必須對此做些什么。 你決定阻止對Facebook的所有訪問。首先,使用host和whois命令查找Facebook的IP地址。

  1. host -t a www.facebook.com 
  2. www.facebook.com is an alias for star.c10r.facebook.com. 
  3. star.c10r.facebook.com has address 31.13.65.17 
  4. whois 31.13.65.17 | grep inetnum 
  5. inetnum:        31.13.64.0 - 31.13.127.255 

然后使用CIDR到IPv4轉(zhuǎn)換頁面將該范圍轉(zhuǎn)換為CIDR表示法。 你得到31.13.64.0/18。 要阻止對www.facebook.com的傳出訪問,請輸入:

  1. iptables -A OUTPUT -p tcp -i eth0 –o eth1 –d 31.13.64.0/18 -j DROP 

按時間設(shè)置規(guī)則

場景:拒絕公司員工訪問Facebook的強烈反對導(dǎo)致首席執(zhí)行官放松一點(這和他的行政助理提醒他,她讓HIS Facebook頁面保持最新狀態(tài))。首席執(zhí)行官決定僅在午餐時間(中午12點至下午1點)允許訪問Facebook.com。 假設(shè)默認(rèn)策略是DROP,請使用iptables的時間功能打開訪問權(quán)限。

  1. iptables –A OUTPUT -p tcp -m multiport --dport http,https -i eth0 -o eth1 -m time --timestart 12:00 --timestart 12:00 –timestop 13:00 –d  
  2. 31.13.64.0/18  -j ACCEPT 

此命令將策略設(shè)置為允許(-j ACCEPT)http和https(-m multiport --dport http,https)在中午(--timestart 12:00)和13PM(--timestop 13:00)之間到Facebook.com (-d 31.13.64.0/18)。

按時間調(diào)整-Take 2

場景:在計劃的系統(tǒng)維護(hù)停機(jī)期間,需要在凌晨2點到凌晨3點之間拒絕所有TCP和UDP流量,這樣維護(hù)任務(wù)就不會受到傳入流量的干擾。 這將采取兩個iptables規(guī)則:

  1. iptables -A INPUT -p tcp -m time --timestart 02:00 --timestop 03:00 -j DROP  
  2. iptables -A INPUT -p udp -m time --timestart 02:00 --timestop 03:00 -j DROP 

根據(jù)這些規(guī)則,TCP和UDP流量(-p tcp和-p udp)在輸入的2AM(--timestart 02:00)和3AM(--timestop 03:00)之間被拒絕(-j DROP)( - IUPUT)。

限制與iptables的連接

場景:你的互聯(lián)網(wǎng)連接的Web服務(wù)器受到來自世界各地的不良攻擊,他們試圖使用DoS(拒絕服務(wù))。要減輕這些攻擊,你可以限制單個IP地址與Web服務(wù)器之間的連接數(shù):

  1. iptables –A INPUT –p tcp –syn -m multiport -–dport http,https –m connlimit -–connlimit-above 20 –j REJECT -–reject-with-tcp-reset 

讓我們來看看這條規(guī)則的作用。如果主機(jī)在一分鐘內(nèi)向Web服務(wù)器(-dport http,https)發(fā)出超過20個(--connlimit-大于20)個新連接(-p tcp -syn),則拒絕新連接(-j REJECT),并告訴連接主機(jī)你拒絕連接(--reject-with-tcp-reset)。

監(jiān)控iptables規(guī)則

場景:由于iptables在鏈條中遍歷規(guī)則,因此iptables在“首次匹配獲勝”的基礎(chǔ)上運行,因此經(jīng)常匹配的規(guī)則應(yīng)該接近策略的頂部,而不太頻繁匹配的規(guī)則應(yīng)該接近底部。 你怎么知道哪些規(guī)則最多或最少,所以可以在頂部或底部附近訂購?

提示#1:查看每個規(guī)則被擊中的次數(shù)。

使用此命令:

  1. iptables -L -v -n –line-numbers 

該命令將列出鏈中的所有規(guī)則(-L)。由于沒有指定鏈,所有鏈都將列出詳細(xì)輸出(-v),顯示數(shù)字格式的數(shù)據(jù)包和字節(jié)計數(shù)器(-n),每個規(guī)則開頭的行號對應(yīng)于該規(guī)則在鏈中的位置。

使用數(shù)據(jù)包和字節(jié)計數(shù),您可以將最常訪問的規(guī)則排序到頂部,將最不頻繁遍歷的規(guī)則排在最后。

提示#2:刪除不必要的規(guī)則。

哪些規(guī)則根本沒有獲得任何匹配? 這些將是從政策中刪除的良好候選人。你可以用這個命令找到它:

  1. iptables -nvL | grep -v "0 0" 

注意:這不是零之間的標(biāo)簽; 零之間有五個空格。

提示#3:監(jiān)控正在發(fā)生的事情。

不想要實時監(jiān)控iptables的情況,例如top。 使用此命令動態(tài)監(jiān)視iptables活動的活動,并僅顯示正在遍歷的規(guī)則:

  1. watch --interval=5 'iptables -nvL | grep -v "0 0"' 

看跑'iptables -nvL | grep -v“0 0”'每五秒鐘顯示一次輸出的第一個屏幕。 這使可以觀察數(shù)據(jù)包和字節(jié)數(shù)隨時間的變化。

關(guān)于iptables的報告

場景:你的經(jīng)理認(rèn)為這個iptables防火墻的東西很棒,但每日活動報告會更好。有時寫報告比做工作更重要。

使用數(shù)據(jù)包過濾器/防火墻/ IDS日志分析器FWLogwatch根據(jù)iptables防火墻日志創(chuàng)建報告。 FWLogwatch支持許多日志格式并提供許多分析選項。 它生成日志文件的每日和每月摘要,使安全管理員可以節(jié)省大量時間,更好地控制網(wǎng)絡(luò)安全,并減少未被注意的攻擊。

以下是FWLogwatch的示例輸出:

 

不僅僅是ACCEPT和DROP

我們已經(jīng)涵蓋了iptables的許多方面,從確保在使用iptables監(jiān)視iptables以可視化iptables防火墻的活動時確保你沒有鎖定自己。這些將讓你開始實現(xiàn)更多的iptables提示和技巧。

責(zé)任編輯:武曉燕 來源: 云技術(shù)實踐
相關(guān)推薦

2012-11-01 11:33:11

IBMdw

2014-07-31 14:50:40

Linux系統(tǒng)管理員

2013-03-30 21:59:13

系統(tǒng)管理員必備工具iftop

2018-08-01 08:12:34

Linux管理員網(wǎng)絡(luò)管理

2014-08-21 10:09:53

Linux管理

2010-04-12 09:33:58

系統(tǒng)管理員

2018-08-15 14:00:18

LinuxBash系統(tǒng)管理員

2013-06-26 09:29:30

系統(tǒng)管理員

2013-09-29 09:50:21

系統(tǒng)管理員Ubuntu JujuJuju

2010-08-10 09:13:52

Unix系統(tǒng)管理員Ubuntu

2010-05-06 18:07:33

Unix命令

2010-08-11 17:11:15

2019-09-09 14:45:29

系統(tǒng)管理員SRE

2022-11-28 10:12:57

系統(tǒng)systemd

2010-05-10 18:28:11

Unix系統(tǒng)

2010-05-07 16:35:44

2019-08-13 19:34:45

容器鏡像DockerLinux

2011-06-16 09:35:28

系統(tǒng)管理員iPad應(yīng)用

2013-06-27 09:19:08

2011-02-25 09:48:40

點贊
收藏

51CTO技術(shù)棧公眾號