歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> 關於Unix

構築Unix系統內防火牆體系的多種方案


近一段時間,某銀行地市級分行計算機中心的某些服務器,如儲蓄服務器、本地服務器多次出現了相同的奇怪現象:正常運行的計算機被意外關掉。經檢查機器的各方面資源都沒有明顯的故障,而且相同配置的服務器也只是個別機器被關掉,最關鍵的是被關的機器上除了關機信息外沒有其他報錯信息。綜合種種跡象確定,是市分行下屬的某縣支行機房中有人用telnet登錄到市分行的服務器,進入一個菜單用戶後,執行了菜單中的關機選項而關掉了正在運行的機器。通過這件事例,使人警覺到利用遠程計算機進行高科技作案的潛在危險。
目前銀行系統的計算機網絡發展迅猛,由於全省乃至全國通存通兌的需要,地市級分行的計算機系統對上要與省分行的計算機網絡相連,對下連通了全市所轄的數十家縣市工行或辦事處的計算機;又由於代理業務和電子商務的需要,銀行內部網絡必須與越來越多的被代理企事業單位的計算機相連。這樣一個龐大的網絡,要防范“黑客”的偷襲確實有一定的困難。為了使Unix服務器或前置機能安全正常地運行,必須及時地根據業務的不同應用和需求,有針對性地構築Unix系統內的防火牆體系,對遠程登錄和遠程數據傳輸進行過濾,從而實現Unix防火牆的作用, 同時能保障合法計算機遠程業務操作的正常進行。下面把多種防火牆體系的具體實現方案介紹給讀者。
方案一 禁止其他任何計算機向本機的遠程登錄和遠程數據傳輸。
特點 網絡中其他計算機都無法遠程登錄和傳輸數據到本機,但本機卻可以登錄到其他計算機,也可向其他計算機收發數據。對本機來說,遠程登錄和數據傳輸變為單向操作,雖然其設置非常簡單,但它的應用范圍極為有限。
方案二 禁止其他任何計算機向本機的遠程登錄,允許其他計算機向本機部分用戶的遠程傳輸數據。
設置方法 以允許用ftp到本機的普通用戶而禁止用ftp到超級用戶為例。
(2)用vi修改/etc/passwd文件,把第一行
root:x:0:1:Superuser:/:
改為 root:x:0:1:Superuser:/:/bin/shcheck
(3)用vi創建/etc/shcheck文件,內容如下
/bin/sh /etc/profile
/bin/sh /.profile
/bin/sh -sh
(4)修改/etc/profile文件,把其中的一行
-sh | -rsh | -ksh | -rksh)
改為 -sh | -rsh | -ksh | -rksh | /etc/profile)
(5)執行命令
chmod a-w /etc/shcheck
chmod u+x /etc/shcheck
方案三 以IP地址為對象,允許部分計算機向本機的遠程登錄,允許其他計算機向本機普通用戶的遠程傳輸數據。
設置方法 設置步驟如下:
(2)參照方案二中的(2)、(3)兩步的做法進行設置。
(3)把/etc/profile文件修改成以下內容
trap “”1 2 3
umask 022
fhq=‘netstat -n|grep ESTABLISHED|awk‘{print $5}'|cut -f1-4 -d. |head -1'
fhq=“(“$fhq”)”
fhqchk=‘grep $fhq /etc/.safe'
if [“$fhq”=“$fhqchk”]
then
echo
else
echo “警告:你的地址為$fhq禁止非法登錄!”
exit
fi
case “$0” in
-sh | -rsh | -ksh | -rksh | /etc/profile)
[“X$HUSHLOGIN” !=“XTRUE”] && [ -s /etc/motd ] && {
trap : 1 2 3
echo “”# skip a line
cat /etc/motd
trap “”1 2 3
}
if [“X$HUSHLOGIN”!=“XTRUE”]
then
[ -x /usr/bin/mail ] && { # if the program is installed
[ -s “$MAIL”] && echo “you have mail”
}
if [“$LOGNAME”!=“root”-a -x /usr/bin/news ] # be sure it's there
then news -n
fi
fi
;;
-su)
:
;;
esac
trap 1 2 3
(4)創建/etc/.safe文件,加入允許登錄的計算機的IP地址,一個地址占一行,格式如下所示
(195.1.2.3)
(194.10.2.4)
(5)執行下列命令
chmod a-w /etc/shcheck /etc/.safe
chmod u+x /etc/shcheck
chmod 0100 /bin/su
特點 允許經過定義的部分計算機用telnet、login登錄,允許其他計算機用ftp進入本機的普通用戶進行數據傳輸,未經定義的計算機將被禁止登錄到本機。本方案的應用范圍比較廣,可使經過定義的多台計算機形成一個內部寬松而對外嚴防的安全系統。
方案四 以IP地址為對象,允許部分計算機向本機的部分用戶的遠程登錄,允許其他計算機向本機普通用戶的遠程傳輸數據。
設置方法 設置步驟如下:
(1)參照方案三中的(1)、(2)兩步的做法進行設置。
(2)對只允許部分計算機登錄本機的某一用戶的宿主目錄下的.profile文件進行修改,加入以下內容
fhq=‘netstat -n|grep ESTABLISHED|awk‘{print $5}'|cut -f1-4 -d. |head -1'
fhq=“(“$fhq”)”
fhqchk=‘grep $fhq /etc/.safe'
if [“$fhq”=“$fhqchk”]
then
echo
else
echo “警告:你的地址為$fhq禁止非法登錄!”
exit
fi
(3)對禁止其他任何計算機登錄本機的某一用戶的宿主目錄下的.profile文件進行修改,加入以下內容
ttychk=‘tty|grep ttyp'
if [“$ttychk” !=“”]
then
echo “警告:禁止非法登錄!"
exit
fi
(4)參照方案三中的(4)、(5)兩步的做法進行設置。
特點 對計算機的IP地址和用戶同時進行過濾處理,應用范圍更為廣泛,可滿足各種業裨誦械男枰?並具有較高的安全性。
方案五 以以太網地址為對象,允許部分計算機向本機的遠程登錄,允許其他計算機向本機普通用戶的遠程傳輸數據。
設置方法 設置步驟如下:
(1)參照方案三中的(1)、(2)兩步的做法進行設置。
(2)把/etc/profile文件修改成以下內容
trap “”1 2 3
umask 022
fhq=‘netstat -n|grep ESTABLISHED|awk ‘{print $5}'|cut -f1-4 -d. |head -1'
fhq=“(“$fhq”)”
ether=‘arp -a |grep $fhq |head -1|awk‘{print $4}''
ether=“(“$ether”)”
fhqchk=‘grep $ether /etc/.safe'
if [“$ether”=“$fhqchk”]
then
echo
else
echo “警告:你的以太網地址為$ether禁止非法登錄!”
exit
fi
case “$0” in
-sh | -rsh | -ksh | -rksh | /etc/profile)
[“X$HUSHLOGIN”!=“XTRUE”] && [ -s /etc/motd ] && {
trap : 1 2 3
echo“”# skip a line
cat /etc/motd
trap“”1 2 3
}
if [“X$HUSHLOGIN” !=“XTRUE”]
then
[ -x /usr/bin/mail ] && { # if the program is installed
[ -s “$MAIL” ] && echo “nyou have mail”
}
if [“$LOGNAME”!=“root” -a -x /usr/bin/news ] # be sure it's there
then news -n
fi
fi
;;
-su)
:
;;
esac
trap 1 2 3
(3)創建/etc/.safe文件,加入允許登錄的計算機的以太網地址,一個地址占一行,格式如下所示
(0:90:27:d3:b3:21)
(0:80:c8:e0:43:8e)
(4)執行下列命令
chmod a-w /etc/shcheck /etc/.safe
chmod u+x /etc/shcheck
chmod 0100 /bin/su
特點 以太網地址是計算機硬件地址,是每台計算機唯一確定的,而IP地址在一台計算機中可以有兩個或更多,所以以以太網地址為對象對遠程登錄和遠程傳輸數據進行過濾比用IP地址為對象要安全得多。
以上五種方案都已在Unix3.2/4.2和SCO Open Server5.0.4中測試通過,Unix系統管理者可以根據自己機器的實際情況從中任選一種建立Unix防火牆體系。以上方案中第三種和第四種應用較廣,需要注意的是:如果選擇了第三、第四和第五種方案,那麼最好在多台相互間需要用telnet、login、ftp方式登錄而又不允許其他計算機登錄的機器上同時設置,從而組成一個局部的防火牆內控系統,以防止其他計算機非法間接登錄,即先登錄到已定義的計算機,再通過已定義的計算機最終登錄到目標計算機。
Copyright © Linux教程網 All Rights Reserved