摘 要:為提高企業(yè)內(nèi)部網(wǎng)絡(luò)安全管理需要,作者從實(shí)踐經(jīng)驗(yàn)中總結(jié)出在企業(yè)已淘汰的普通計(jì)算機(jī)上安裝Linux系統(tǒng)來實(shí)現(xiàn)VLAN間的單臂路由及安全網(wǎng)關(guān)的功能,既節(jié)省企業(yè)成本又能達(dá)到舊設(shè)備的有效利用。
關(guān)鍵詞:Linux;VLAN;vconfig;NAT;iptables
中圖分類號:TP393.1
1 基本網(wǎng)絡(luò)示意圖
圖1
1.1 交換機(jī)上創(chuàng)建3個(gè)VLAN
(1)VLAN20為管理VLAN,用于交換機(jī)的遠(yuǎn)程管理;
(2)VLAN30包含eth1—eth10號端口,屬于A部門;
(3)VLAN40包含eth11—eth20號端口,屬于B部門;
1.2 交換機(jī)上配置Trunk端口
交換機(jī)24號端口的端口類型配置為Trunk端口,Trunk端口能夠轉(zhuǎn)發(fā)不同VLAN的數(shù)據(jù)。
1.3 各部門客戶端
(1)A1客戶端:IP:192.168.130.1/24
(2)A2客戶端:IP:192.168.130.2/24
(3)B1客戶端:IP:192.168.140.1/24
(4)B2客戶端:IP:192.168.140.2/24
其中A部門網(wǎng)關(guān)地址是192.168.130.254,B部門網(wǎng)關(guān)地址是192.168.140.254,各部門客戶端DNS設(shè)置為Internet上的DNS服務(wù)器地址(如:8.8.8.8和4.4.4.4)。
2 交換機(jī)配置
2.1 VLAN的作用
VLAN是把同一物理局域網(wǎng)內(nèi)的不同用戶邏輯地劃分成不同的廣播域,每一個(gè)VLAN都包含一組有著相同需求的計(jì)算機(jī)工作站,一個(gè)VLAN內(nèi)部的廣播和單播流量都不會(huì)轉(zhuǎn)發(fā)到其他VLAN中,從而有助于控制流量、減少設(shè)備投資、簡化網(wǎng)絡(luò)管理、提高網(wǎng)絡(luò)的安全性。
2.2 在交換機(jī)上具體配置VLAN
在交換機(jī)的系統(tǒng)視圖下輸入下列命令行創(chuàng)建所需的VLAN和相應(yīng)配置:
vlan 30
port Ethernet 0/1 to Ethernet 0/10
quit
vlan 40
port Ethernet 0/11 to Ethernet 0/20
quit
interface Ethernet 0/24
port link-type trunk
port trunk permit vlan all
quit
vlan 20
quit
interface vlan-interface 20
ip address 192.168.120.253 255.255.255.0
quit
ip route-static 0.0.0.0 0.0.0.0 192.168.120.254
user-interface vty 0 4
set authentication password simple 123456
user privilege level 0
quit
super password simple 321123
3 Linux系統(tǒng)的安裝與配置
3.1 安裝Linux系統(tǒng)
(1)準(zhǔn)備一臺(tái)淘汰的P4級別的臺(tái)式計(jì)算機(jī),內(nèi)存512MB并安裝兩塊使用性能及兼容性好的網(wǎng)卡。
(2)Linux系統(tǒng)可以選擇免費(fèi)的開源系統(tǒng)CentOS 6。從http://www.centos.org網(wǎng)址上找minimal的iso鏡像文件,保存到本地并刻錄光盤,通過光驅(qū)引導(dǎo)安裝Linux系統(tǒng)。
(3)升級Linux系統(tǒng)并安裝vconfig組件
把安裝好的Linux系統(tǒng)先連接到互聯(lián)網(wǎng)上,再通過yum命令進(jìn)行升級和安裝組件:
yum -y update
yum -y install vconfig
3.2 配置Linux VLAN
(1)連接兩個(gè)網(wǎng)卡
其中eth0接口連接到交換機(jī)的24號端口(trunk端口),eth1接口連接互聯(lián)網(wǎng)。
(2)eth0接口配置
/etc/sysconfig/network-scripts/ifcfg-eth0是eth0接口的配置文件。
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=static
IPADDR=0.0.0.0
ONBOOT=yes
(3)給eth0物理接口添加VLAN
vconfig set_name_type VLAN_PLUS_VID
vconfig add eth0 20
vconfig add eth0 30
vconfig add eth0 40
ip address add 192.168.120.254/24 broadcast + dev vlan0020
ip address add 192.168.130.254/24 broadcast + dev vlan0030
ip address add 192.168.140.254/24 broadcast + dev vlan0040
ip link set dev vlan0020 up
ip link set dev vlan0030 up
ip link set dev vlan0040 up
為了便于系統(tǒng)下次啟動(dòng)時(shí)使用此配置,我們可以把上面的配置保存到腳本文件里,然后在系統(tǒng)啟動(dòng)時(shí)加載即可。
若想刪除已經(jīng)建立好的VLAN則使用vconfig rem [VLAN名稱]命令。
(4)eth1接口配置
eth1的配置與eth0類似,根據(jù)圖示配置參數(shù)即可。
3.3 打開Linux系統(tǒng)的包轉(zhuǎn)發(fā)功能
/etc/sysctl.conf
net.ipv4.ip_forward = 1
3.4 配置接口的NAT功能
iptables -t nat -A POSTROUTING -s 192.168.130.0/24 -o eth1 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.140.0/24 -o eth1 -j MASQUERADE
service iptables save
service iptables restart
3.5 添加默認(rèn)路由
ip route add default via 202.99.224.1 dev eth1
3.6 配置Linux防火墻
防火墻配置之前清除原來的規(guī)則。
(1)防御外網(wǎng)接口的攻擊
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth1 -m state --state NEW,INVALID -j DROP
iptables -A INPUT -i eth0 -p tcp -m state --state NEW –m tcp --dport 22 -j ACCEPT
service iptables save
service iptables restart
(2)防御TCP洪水攻擊和ICMP洪水攻擊
編輯/etc/sysctl.conf文件修改下列兩個(gè)值,若沒有此屬性則直接添加。
net.ipv4.tcp_syncookies=1
net.ipv4.icmp_echo_ignore_broadcasts=1
service iptables restart
通過以上配置不僅能夠?qū)崿F(xiàn)VLAN間的單臂路由及安全網(wǎng)關(guān)的功能,還可以做到DNAT、策略路由、流量控制等??傊⑹褂秘S富的Linux系統(tǒng)功能使我們找到既經(jīng)濟(jì)又實(shí)用的解決安全網(wǎng)關(guān)的方案。
參考文獻(xiàn):
[1]張輝,譯.Evi Nemeth.Linux.系統(tǒng)管理技術(shù)手冊[M].北京:人民郵電出版社,2003:191-266.
[2]李瑞江,張冀紅.基于VLAN的策略路由的應(yīng)用[J].電子設(shè)計(jì)工程,2009,8(03):95-96.
作者簡介:秦寶龍(1980.04-),男,蒙古族,內(nèi)蒙古興安盟人,講師,工科學(xué)士學(xué)位,研究方向:計(jì)算機(jī)網(wǎng)絡(luò)。
作者單位:內(nèi)蒙古警察職業(yè)學(xué)院,呼和浩特 010051