linux虛擬機器器中僅主機模式下橋接網路的四種方法及iptables使用細節!

2020-10-27 11:00:03

虛擬機器器橋接網路

vmware為我們提供了三種網路工作模式,它們分別是:Bridged(橋接模式)、NAT(網路地址轉換模式)、Host-Only(僅主機模式)。

開啟vmware虛擬機器器,我們可以在選項欄的「編輯」下的「虛擬網路編輯器」中看到VMnet0(橋接模式)、VMnet1(僅主機模式)、VMnet8(NAT模式),那麼這些都是有什麼作用呢?其實,我們現在看到的VMnet0表示的是用於橋接模式下的虛擬交換機;VMnet1表示的是用於僅主機模式下的虛擬交換機;VMnet8表示的是用於NAT模式下的虛擬交換機。
在這裡插入圖片描述
同時,在主機上對應的有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8兩塊虛擬網路卡,它們分別作用於僅主機模式與NAT模式下。在「網路連線」中我們可以看到這兩塊虛擬網路卡,如果將這兩塊解除安裝了,可以在vmware的「編輯」下的「虛擬網路編輯器」中點選「還原預設設定」,可重新將虛擬網路卡還原。此次選擇僅主機模式
在這裡插入圖片描述
在這裡插入圖片描述
設定ip地址的網段為11,等下一步測試

接下來,我們就來實際操作,如何設定僅主機。
首先,安裝完系統之後,在開啟系統之前,點選「編輯虛擬機器器設定」來設定網路卡模式。
在這裡插入圖片描述
點選「網路介面卡」,選擇「僅主機模式」,然後「確定」
在進入系統之前,我們先確認一下主機的ip地址、閘道器、DNS等資訊。

1.組態檔方法

然後,進入系統編輯網路卡組態檔,命令是vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
設定如下:
在這裡插入圖片描述
使用systemctl restart neiwork 命令重新載入網路卡
在這裡插入圖片描述
在外部主機中測試成功!
在這裡插入圖片描述

2.使用nmtui命令操作

在這裡插入圖片描述
這次使用頻段的ip地址:192.168.11.45地址作區別

在這裡插入圖片描述
主機測試45段成功!
在這裡插入圖片描述

3.使用nm-connection-editor命令修改ip地址

此次使用192.168.11.84地址
在這裡插入圖片描述
點選Edit新增
在這裡插入圖片描述
在外部主機中測試成功
在這裡插入圖片描述

4.在虛擬機器器外設中選擇儲存,此次使用192.168.11.56

在這裡插入圖片描述
選擇Network Settings

在這裡插入圖片描述
點選設定 更改地址再試一次
在這裡插入圖片描述
將192.168.11.84修改成1、92.168.11.65,實驗結果如下:
在這裡插入圖片描述

試驗成功。

防火牆管理工具

防火牆策略可以基於流量的源目地址、埠號、協定、應用等資訊來客製化,然後防火牆使用預先客製化的策略規則監控出入的流量,若流量與某一條策略規則相匹配,則執行相應的處理,反之則丟棄。這樣一來,就可以保證僅有合法的流量在企業內網和外部公網之間流動了。
在這裡插入圖片描述

在RHEL 7系統中,firewalld防火牆取代了iptables防火牆。iptables與firewalld都不是真正的防火牆,它們都只是用來定義防火牆策略的防火牆管理工具而已,或者說,它們只是一種服務。iptables服務會把設定好的防火牆策略交由核心層面的netfilter網路過濾器來處理,而firewalld服務則是把設定好的防火牆策略交由核心層面的nftables包過濾框架來處理。換句話說,當前在Linux系統中其實存在多個防火牆管理工具,旨在方便運維人員管理Linux系統中的防火牆策略,我們只需要設定妥當其中的一個就足夠了。

iptables

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

各個防火牆管理工具的設定思路是一致的,在掌握了iptables後再學習其他防火牆管理工具時,也有借鑑意義。

策略與規則鏈

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

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

在進行路由選擇前處理封包(PREROUTING);
處理流入的封包(INPUT);     *外網-->內網
處理流出的封包(OUTPUT);    *外網<--內網
處理轉發的封包(FORWARD);   *通過第三方
在進行路由選擇後處理封包(POSTROUTING)。

匹配策略規則採取的動作:

ACCEPT(允許):允許流量通過
LOG(登記):允許流量通過,但記錄紀錄檔資訊
REJECT(拒絕):拒絕流量通過且明確給予拒絕的響應(考試時務必用REJECT,讓系統明確知道流量被拒絕)
DROP(丟棄):拒絕流量通過但不響應

基本的命令引數

iptables是一款基於命令列的防火牆策略管理工具,具有大量引數。

iptables命令可以根據流量的源地址、目的地址、傳輸協定、服務型別等資訊進行匹配,一旦匹配成功,iptables就會根據策略規則所預設的動作來處理這些流量。另外,再次提醒一下,防火牆策略規則的匹配順序是從上至下的,因此要把較為嚴格、優先順序較高的策略規則放到前面,以免發生錯誤。

iptables中常用的引數以及作用
在這裡插入圖片描述

iptables -L                                                         #檢視已有的防火牆規則鏈
iptables -F                                                         #清空已有的防火牆規則鏈
iptables -L                                                         #再次檢視防火牆規則鏈,發現之前存在的規則鏈均已被刪除
iptables -P INPUT DROP                                              #把INPUT規則鏈的預設策略設定為拒絕,規則鏈的預設拒絕動作只能是DROP,不能是REJECT
iptables -L                                                         #檢視規則鏈,顯示Chain INPUT (policy DROP)
iptables -I INPUT -p icmp -j ACCEPT                                 #向INPUT鏈頭部中新增允許ICMP流量進入的策略規則
ping -c 4 192.168.10.10                                             #此時可以ping通,但是其餘的ssh什麼的是不行的
iptables -D INPUT 1                                                 #刪除INPUT規則鏈的第1條規則(即剛剛允許ICMP那條)
iptables -P INPUT ACCEPT                                            #把INPUT規則鏈預設策略設定為允許
iptables -L                                                         #檢視規則鏈,顯示Chain INPUT (policy ACCEPT),ping,ssh什麼的都允許
iptables -I INPUT -s 192.168.10.0/24 -p tcp --dport 22 -j ACCEPT    #將INPUT規則鏈設定為只允許指定網段的主機存取本機的22埠(必須先指明協定才能指明埠號)
iptables -A INPUT -p tcp --dport 22 -j REJECT                       #向INPUT規則鏈尾部新增拒絕來自所有主機存取本機22埠的規則(結合上一條規則的效果就是隻允許指定網段主機存取本機22埠,拒絕其他主機存取)
iptables -L                                                         #檢視已有規則鏈,此時應有2條,一條允許一條拒絕
iptables -I INPUT -p tcp --dport 12345 -j REJECT                    #向INPUT規則鏈中新增拒絕所有人存取本機12345埠(tcp+udp)的策略規則
iptables -I INPUT -p udp --dport 12345 -j REJECT
iptables -L
iptables -I INPUT -p tcp -s 192.168.10.5 --dport 80 -j REJECT       #向INPUT規則鏈中新增拒絕192.168.10.5主機存取本機80埠(Web服務)的策略規則
iptables -L
iptables -A INPUT -p tcp --dport 1000:1024 -j REJECT                #向INPUT規則鏈中新增拒絕所有主機存取本機10001024埠的策略規則
iptables -A INPUT -p udp --dport 1000:1024 -j REJECT
iptables -L
service iptables save                                               #讓設定的防火牆策略永久生效(防火牆規則預設會在系統下一次重新啟動時失效)

問題描述:

[root@lizhiqiang Desktop]# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
[root@lizhiqiang Desktop]# iptables -F
[root@lizhiqiang Desktop]# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
[root@lizhiqiang Desktop]# iptables -P INPUT DROP
[root@lizhiqiang Desktop]# iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)

在這裡插入圖片描述

[root@lizhiqiang Desktop]# iptables -I INPUT -p icmp -j ACCEPT
[root@lizhiqiang Desktop]# iptables -D INPUT 1

在這裡插入圖片描述

[root@lizhiqiang Desktop]# iptables -P INPUT ACCEPT

在這裡插入圖片描述

root@lizhiqiang Desktop]# iptables -I INPUT -s 192.168.11.1/24 -p tcp --dport 22 -j ACCEPT
[root@lizhiqiang Desktop]# iptables -I INPUT -s 192.168.11.1/24 -p tcp --dport 22 -j ACCEPT

在這裡插入圖片描述
在這裡插入圖片描述
模擬虛擬機器器成功

service iptables save 儲存到開機啟動項