基于network filter的虛擬機(jī)訪問控制
時(shí)間:2023-06-25 16:54:02 | 來源:網(wǎng)站運(yùn)營(yíng)
時(shí)間:2023-06-25 16:54:02 來源:網(wǎng)站運(yùn)營(yíng)
基于network filter的虛擬機(jī)訪問控制:
什么是nwfilter
在公有云的環(huán)境中,經(jīng)常需要對(duì)云主機(jī)的網(wǎng)絡(luò)環(huán)境進(jìn)行控制,實(shí)現(xiàn)對(duì)虛擬機(jī)網(wǎng)絡(luò)流量的接收或者拒收。而nwfilter就可以實(shí)現(xiàn)這樣的功能,目前已經(jīng)被廣泛地嵌套在KVM中,可以精準(zhǔn)的實(shí)現(xiàn)以上的功能。
nwfilter目的是讓管理員在host上控制vm的每塊網(wǎng)卡。同一個(gè)nwfilter規(guī)則可以被不同vm重復(fù)使用,也可以為每個(gè)VM創(chuàng)建不同的filter規(guī)則。并且進(jìn)入或者流出VM的流量無法避開nwfilter機(jī)制,因此這種限制就成為了強(qiáng)制性的,有點(diǎn)像linux中的iptables的功能。
nwfilter文件路徑
默認(rèn)存放在/etc/libvirt/nwfilter的文件夾中,一個(gè)xml文件代表一個(gè)設(shè)定的nwfilter規(guī)則,當(dāng)你想指定一條nwfilter規(guī)則的時(shí)候,在這個(gè)目錄中新增一個(gè)xml文件即可。
如何應(yīng)用nwfilter
Nwfilter是需要配置在虛擬機(jī)的xml文件中生效的,通過過虛擬機(jī)的xml文件增加一個(gè)<filterref filter='name-of-nwfilter'/>的參數(shù),就可以實(shí)現(xiàn)對(duì)應(yīng)的效果。
比如對(duì)“bridge1”這個(gè)虛擬機(jī)網(wǎng)橋,新增一個(gè)“drop80”的nwfilter的規(guī)則,這個(gè)規(guī)則的作用是將虛擬機(jī)的80端口進(jìn)行封阻。那么,我們就可以這么做:
編寫一個(gè)drop80.xml的nw文件
<filter name='drop80' chain='root'>
<uuid>a1dadb35-3a7d-417d-8ca1-17d63036179b</uuid>
<rule action='drop' direction='out' priority='500'>
<tcp dstportstart='80' dstportend='80'/>
</rule>
</filter>
編輯完成之后聲明這個(gè)nw規(guī)則生效
virsh nwfilter-define limit
查看目前已經(jīng)定義的nw規(guī)則
virsh nwfilter-list
將其應(yīng)用到應(yīng)用到虛擬機(jī)中
編輯某臺(tái)虛擬機(jī)的XML文件,在network部分中,加入以下的參數(shù),就可以生效了。
[...]
<interface type='bridge'>
<source bridge='bridge1'/>
<filterref filter='drop80'/>
</interface>
[...]
以上就是關(guān)于nwfilter的基礎(chǔ)用法,下面我再舉個(gè)例子,希望可以幫助你更好地理解nwfilter的用法;
連接數(shù)限制
假設(shè)一個(gè)虛擬機(jī)只允許一個(gè)IP在同一之間發(fā)起一個(gè)ping鏈接。防止某個(gè)IP對(duì)虛擬機(jī)惡意攻擊。
<rule action='drop' direction='out' priority='400'>
<icmp connlimit-above='1'/>
</rule>
<rule action='accept' direction='out' priority='500'>
<icmp/>
</rule>
<rule action='drop' direction='inout' priority='1000'>
<all/>
</rule>
好了,關(guān)于nwfilter的用法已經(jīng)介紹完了,希望對(duì)你有幫助,具體的學(xué)習(xí)明細(xì),你可以參考nwfilter的官方用法解析:
https://libvirt.org/formatnwfilter.html#nwfelemsRulesAdvorg/formatnwfilter.html#nwfelemsRulesAdv睿江云官網(wǎng)鏈接:
https://www.eflycloud.com/home?from=RJ0027