Linux運維之旅第十天(2023年5月22日)

2021-10-06 18:29:01 字數 2729 閱讀 4711

今天是學習linux運維技術的第十天,在此做乙個簡短的小結:

1、防火牆管理工具

在rhel 7系統中,firewalld防火牆取代了iptables防火牆。對於接觸linux系統比較早或學習過rhel 6系統的運維人員來說,當他們發現曾經掌握的知識在rhel 7中不再適用,需要全新學習firewalld時,難免會有牴觸心理。其實,iptables與firewalld都不是真正的防火牆,它們都只是用來定義防火牆策略的防火牆管理工具而已,或者說,它們只是一種服務。iptables服務會把配置好的防火牆策略交由核心層面的netfilter網路過濾器來處理,而firewalld服務則是把配置好的防火牆策略交由核心層面的nftables包過濾框架來處理。換句話說,當前在linux系統中其實存在多個防火牆管理工具,旨在方便運維人員管理linux系統中的防火牆策略,我們只需要配置妥當其中的乙個就足夠了。雖然這些工具各有優劣,但它們在防火牆策略的配置思路上是保持一致的

①iptables

在早期的linux系統中,預設使用的是iptables防火牆管理服務來配置防火牆。儘管新型的firewalld防火牆管理服務已經被投入使用多年,但是大量的企業在生產環境中依然出於各種原因而繼續使用iptables

策略與規則鏈

防火牆會從上至下的順序來讀取配置的策略規則,在找到匹配項後就立即結束匹配工作並去執行匹配項中定義的行為(即放行或阻止)。如果在讀取完所有的策略規則之後沒有匹配項,就去執行預設的策略。一般而言,防火牆策略規則的設定有兩種:一種是「通」(即放行),一種是「堵」(即阻止)。當防火牆的預設策略為拒絕時(堵),就要設定允許規則(通),否則誰都進不來;如果防火牆的預設策略為允許時,就要設定拒絕規則,否則誰都能進來,防火牆也就失去了防範的作用。

iptables服務把用於處理或過濾流量的策略條目稱之為規則,多條規則可以組成乙個規則鏈,而規則鏈則依據資料報處理位置的不同進行分類,具體如下:

在進行路由選擇前處理資料報(prerouting)

處理流入的資料報(input)

處理流出的資料報(output)

處理**的資料報(forward)

在進行路由選擇後處理資料報(postrouting)

②firewalld

rhel 7系統中整合了多款防火牆管理工具,其中firewalld(dynamic firewall manager of linux systems,linux系統的動態防火牆管理器)服務是預設的防火牆配置管理工具,它擁有基於cli(命令列介面)和基於gui(圖形使用者介面)的兩種管理方式。

相較於傳統的防火牆管理配置工具,firewalld支援動態更新技術並加入了區域(zone)的概念。簡單來說,區域就是firewalld預先準備了幾套防火牆策略集合(策略模板),使用者可以根據生產場景的不同而選擇合適的策略集合,從而實現防火牆策略之間的快速切換。例如,我們有一台膝上型電腦,每天都要在辦公室、咖啡廳和家裡使用。按常理來講,這三者的安全性按照由高到低的順序來排列,應該是家庭、公司辦公室、咖啡廳。當前,我們希望為這台膝上型電腦指定如下防火牆策略規則:在家中允許訪問所有服務;在辦公室內僅允許訪問檔案共享服務;在咖啡廳僅允許上網瀏覽。在以往,我們需要頻繁地手動設定防火牆策略規則,而現在只需要預設好區域集合,然後只需輕點滑鼠就可以自動切換了,從而極大地提公升了防火牆策略的應用效率

與linux系統中其他的防火牆策略配置工具一樣,使用firewalld配置的防火牆策略預設為執行時(runtime)模式,又稱為當前生效模式,而且隨著系統的重啟會失效。如果想讓配置策略一直存在,就需要使用永久(permanent)模式了,方法就是在用firewall-cmd命令正常設定防火牆策略時新增–permanent引數,這樣配置的防火牆策略就可以永久生效了。但是,永久生效模式有乙個「不近人情」的特點,就是使用它設定的策略只有在系統重啟之後才能自動生效。如果想讓配置的策略立即生效,需要手動執行firewall-cmd --reload命令

例子:把原本訪問本機888埠的流量**到22埠,要且求當前和長期均有效:

流量**命令格式為firewall-cmd --permanent --zone=《區域》 --add-forward-port=port=《源埠號》:proto=《協議》:toport=《目標埠號》:toaddr=《目標ip位址》

2、snat

前面在講解firewall-config工具的功能時,曾經提到了snat(source network address translation,源網路位址轉換)技術。snat是一種為了解決ip位址匱乏而設計的技術,它可以使得多個內網中的使用者通過同乙個外網ip接入internet。該技術的應用非常廣泛,甚至可以說我們每天都在使用,只不過沒有察覺到罷了。比如,當我們通過家中的閘道器裝置(比如無線路由器)訪問本書配套站點www.linuxprobe.com時,就用到了snat技術。

最後附上幾張吧!

實習第十天

今天電梯有點慢,等得我半小時才到公司。今天弄資料庫介面工具的時候,被松哥按在地上摩擦了。今天加班,在下班的時候,久久等不到電梯,想起了 上有個應該需要修改,然後回公司修改,改了半天,發現還是原來的好,於是恢復原樣,我就下班了,有點搞笑。這段時間上火非常嚴重,整個人的狀態都不好,做事情也沒精神。面對各...

學習第十天

一 介面 jdk1.8及之後新增了2中可以定義存在方法體的方法 預設方法 default關鍵字修飾的方法 使用 通過實現類物件使用 靜態方法 使用 通過介面名去呼叫 二 單例模式 保證類只能存在乙個例項 餓漢式 先建立物件,然後需要的人要這個物件,保證永遠使用的都是這個建立好的物件 執行緒安全的,效...

前端第十天

function 1000,swing fn 小公尺輪播圖 設定5個div 通過給乙個類名定義屬性達到動畫效果,有左右點選事件及索引決定將類名新增給誰,且在索引達到極限時,重新將索引賦值,且同時將其他兄弟div移除類名,通過設定z index達到最上面為顯示的div 小公尺 定義建立列表函式 引數為...