引言:現在網絡安全防護中,防止設備的非法接入,是網絡安全保護中的第一道防線。在網絡安全的防護中,我們需要在非法終端進入網絡前就能夠對設備進行識別。在筆者單位的各個項目中,通過終端設備的控制,保證了服務安全穩定的運行。
現在網絡安全防護中,防止設備的非法接入,是網絡安全保護中的第一道防線。我們需要在非法終端進入網絡前就能夠對設備進行識別。
經常用到的一些接入控制為ACL限制、AAA認證等,但除了這種常規性的接入控制外,我們單位在增強網絡安全方面,進行了更深入的限制,大致分為如下幾種:
1.DHCP協議控制;
2.接入層IPVLAN限定;
3.終端硬件識別。
終端設備可以通過多種方式獲取接入用的IP地址,如PPPOE撥號、L2TPVPN等,這些協議最終會通過DHCP服務向終端提供合法的IP信息。設備進行DHCP認證中,在RFC2131協議的VLAN子接口中描述了全部的階段,其中基本階段有四個:
終端首先向本地子網中廣播發送“DHCPDIS COVER”,尋找DHCP服務器。
DHCP服務器向終端發回“DHCPOFFER”響 應,yiaddr字段中包含可以提供的IP地址,由于網絡中可能有多臺DHCP服務器,終端一般只會響應第一條。
終端繼續向本地子網中廣播發送“DHCPREQUEST”,包 含“server identifier”用來聲明自己選擇了哪一臺DHCP服務器,以及“yiaddr”字段聲明自己確認使用這個IP地址。
最終,DHCP服務器向終端發送“DHCPACK”,包含相應的網絡配置。
當然,完整的協議交互中,還包含DHCPNAK、DHCPDECLI NE、DHCPRELEASE、DHCPINFO RM等過程,本文在此不在贅述。
DHCP的附加協議中定義了一些OPTION,可以對DHCP進行進一步的控制。我們可以選擇使用供應商類別識別符來進行終端的接入控制。這種方法規定在RFC2132之中,位于“Vendor class identifier”,其數據包中的Code字段為60,故俗稱為“OPTION 60協議”。
我們使用Centos系統搭建DHCP服務器,安裝方法只需要利用如下命令即可:yum -y install dhcp。同時,將相應的防火墻端口也打開。
DHCP服務器的配置文件位于/etc/dhcp/dhcpd.conf中。
在配置文件中定義一個class,用來標識限定用的字符串:

然后就可以在各個subnet中 啟 用“Vendor class identifier”了。以我們某業務為例,定義了一個17位掩碼的子網(為了網絡安全,相關的真實IP地址用C類子網代替):

然后定義給終端提供的附加網絡信息:

然后,不使用東八區的標準北京時間,也可以剔除部分非法設備(我們某項目使用電纜傳輸時間,可以完全自定義):

最后定義一下租約時間,通過設備認證后,IP地址的租約時間可以設置長一些,筆者設置了6小時:

上一步中已經定義好了限制OPTION 60用的class,那么只需要建立一個pool地址池,并在上述subnet中分配地址池的時候指定就可以了。

最后,再設置host的識別:

至此,終端的DHCP接入能力控制就完成了。只有符合規范的終端能夠獲取IP地址,其他終端申請時,服務器會用“no free leases”的理由而不響應其“DHCPDISCOVER”的 請求,并在日志中保留本次記錄。
接入層的限制,最常用的就是限制VLAN和IP,除了上述DHCP自動獲取以外,在項目運作中還存在給終端手動設置IP地址的情況。以某個項目為例,總共有一萬多個終端設備全部需要手動調試,為了確保設備的安全,我們將這個業務的IP地址同樣規劃為手動設置。其中共需要手動設置的部分為:
將接入的數據業務封裝在了各個VLAN中,同時全部的物理端口都啟用聚合,防止單點故障。
例如某個接口“interface smartgroup3”,里面只配置一個description描述,不做其他配置。
然后給這個接口啟用VLAN smartgroup3.500的子接口。給這個接口配置VCC,并封裝QinQ為同樣的 VLAN:encapsulationdot1q range 500。
首先啟用用戶側虛接口,例如“interface vbui3”。在“interface vbui3”之 中開 啟“ARP proxy”來 用于接口之間的通訊,然后給接口分配一個地址“ip address 192.168.0.1” ,“255.255.255.0”來作為網關(為了保證安全,在這里的全部接口編號以及真實IP地址用C類子網地址來代替)。
接下來給這個“interface vbui3”接口設置一個地址池“ip-pool pool-name leniyspool pool-id 3”,并往地址池中注入多個地址網段:member 1 startip 192.168.0.1 end-ip 192.168.0.254。
由于我們的目的是通過靜態IP來增強設備接入的安全,因此需要將整個地址池中除了網關以外的其他地址全部標記為靜態。
最后,接口的綁定就非常簡單了,直接在這個vbui接口中,配置“ip-host 192.168.0.5 smartgroup3.500 vlan 500”,就可以將一個IP地址綁定在這個聚合端口,其他沒有綁定的IP地址則無法通過端口通訊。
當終端成功的接入網絡中后,我們還需要在向其提供業務之前,最后確認其合法性。
互聯網上經常用到的方法,有賬號密碼識別、來源IP識別、工作時間段識別、session識別、cookie識別等。但這些方法都是基于軟件的識別。
我們除了使用上述識別方法之外,額外添加了終端硬件識別,再次強化終端設備接入能力。
首先是終端向服務器發起請求時,包含其CAID信 息(Conditional Access Identification),數據的調制方式采用64QAM相正交振幅調制,然后通過前面所述的DHCP或固定地址,將接收到的認證信息和CAID本身利用HTTPS加密發送給服務器。
接下來,服務器認證完畢上述信息后,僅僅允許終端與服務器之間進行數據傳輸,但傳輸什么內容,還需要再經過一步硬件的識別,也即MAC地址判定以及SN序列號判定。只有在兩者與數據庫中的數據都匹配了,才能正確的判斷出來這個終端屬于哪個權限組中,然后服務器才會向其提供相應的服務。
在筆者單位的各個項目中,以上通過終端設備的控制,保證了服務安全穩定的運行。
在網絡安全的防護中,不讓非法終端接入網絡中,是整個防御網的第一層。而終端設備接入能力的控制,既減少了多數非法設備的接入,又降低了網絡中設備的攻擊次數,減緩了網內防護設備的壓力。
而且通過上述的各種方法的限制,成功接入網內的設備的來源比較容易定位,從而為今后一旦發生網絡安全入侵事件時能夠通過入侵定位、業務快速恢復等提供了幫助。