Linux網路安全與主機防護

weixin_34019929發表於2017-05-01

網路資料包進入主機流程

3072403-6a5c51403ab01c25.png
網路資料包進入主機流程

1.預設的Linux防火牆就有兩個機制,這兩個機制都是獨立存在的,因此我們有兩層預設防火牆;第一層是資料包過濾式的Net Filter防火牆,第二層則是通過軟體管理的TCP Wrappers防火牆。

2.如果httpd這個程式本來就又問題的話,那麼Client端將可直接利用httpd軟體的漏洞來入侵主機,而不需要取得主機內root的密碼

3.SELinux可以針對網路服務設定一些規則(Policy),舉例:架設httpd真的被Cracker攻擊而讓對方取得了root使用權,但由於httpd已經被SELinux控制在/var/www/html裡面,且能夠執行的操作已經被限制了,因此Cracker就無法使用該程式來對系統進行進一步的破壞。

4.Rootkit是指可以取得root許可權的一群工具組(Kit)。蠕蟲會讓你的主機一直髮送資料包向外攻擊,結果會讓你的網路頻寬被吃光,例如Nimda、Code Red等。至於木馬程式(Trojan Horse)則會在你的主機中開啟後門(開啟一個Port來讓Cracker主動入侵),結果就是綁架。

5.DDos攻擊法(Distributed Denial of Service)
如果Clinet端在傳送出SYN的資料包後,卻將來自Server端的確認資料包丟棄,那麼你的Server端就會一直空等,而且Clinet端可以通過軟體功能,在短時間內持續傳送這樣的SYN資料包,那麼你的Server端就會持續不斷的傳送確認包,並且開啟大量的Port在空等,等到全部主機的Port都啟用完畢,那麼就掛了。它不是入侵你的系統,而是讓你的系統無法提供正常服務。

6.客戶端啟動的Port是隨機產生的,主要是開啟大於1024以上的埠。所謂的“監聽”是某個服務程式會一直常駐記憶體中,所以該程式啟動的port就會一直存在。沒有所謂的port安全性,因為port的啟用是由服務軟體造成的。

7.Domain:在主體程式(Subject)中則成為域(Domain)

8.setrobuleshoot:將錯誤資訊寫入/var/log/messages。幾乎所有SELinux相關的程式都會以se為開頭,這個服務也是以se為開頭。

路由概念與路由器設定

1.ripd這個服務可以在兩臺Router之間進行路由規則的交換與溝通。

2.什麼是ARP Proxy呢?簡單地說,就是讓我的某張適配卡的MAC代理與其他主機的IP對應,讓想要連線這個IP的MAC資料包由我幫它接下來的意思。舉例:在LInux Router的eth0的介面上,規定192.168.1.10、192.168.1.20、192.168.1.30這三個IP都對應到eth0的MAC上,所以三個IP的資料包就會由eht0收下。

防火牆

1.廣義來說,只要能夠分析與過濾進出我們管理的網路的資料包的資料,就可以稱之為防火牆。

2.所以,防火牆最大的功能就是幫助你限制某些服務的訪問來源,例如:

  • 你可以限制檔案傳輸服務(FTP)只在子域內的主機才能夠使用,而不對整個Internet開放
  • 你可以限制整臺Linux主機僅可以接受客戶端的WWW要求,其他的服務都關閉
  • 你還可以限制整臺主機僅能主動對外連線,也就是說,若有客戶端對我們主機傳送主動連線的資料包狀態(TCP資料包的SYN flag)就予以過濾

3.TCP Wrappers(程式管理):這種機制主要是分析誰對程式進行訪問,然後通過規則去分析該伺服器程式誰能夠連線,誰不能連線。

4.Proxy(代理伺服器)

3072403-fad8c10b0be8cf40.png
Proxy Server的工作原理
  • Proxy就會主動幫助Clinet前往google取得資料
  • google所返回的資料是傳給Proxy Server的
  • 而當有人想要攻擊Clinet端的主機時,除非他能夠攻破Proxy Server,否則是服務與Clinet連線的。

5.NAT(地址轉換):是Network Address Translation的縮寫,這個表格主要用來進行來源於目的地的IP或port的轉換,與Linux本機無關,主要與Linux主機後的區域網內計算機有關。

6.核心2.4後的Linux使用iptable作為防火牆的軟體。

  • iptable的預設table共有3個,分別是Filter、NAT及Mangle,常用的為Filter(本機)和NAT(後端主機)
  • filter table主要為針對本機的防火牆設定,根據資料包流向又分為INPUT、OUTPUT、FORWARD
  • NAT table主要針對後端主機,根據資料流向分為PREROUTING、OUTPUT、POSTROUTING,其中PREROUTING與DNAT有關,POSTROUTING則與SNAT有關。

相關文章