羅彩君
(陜西職業技術學院 計算機科學系,陜西 西安 710100)
Linux是一種開放源代碼的免費正版操作系統,基于它的自由性、開放性、安全性、穩定性、網絡負載力強、占用硬件資源少等特點,目前采用Linux網絡操作系統作為服務器的用戶日益增多,同時Linux也被廣泛應用于嵌入式開發、個人工作站和商業開發等各個領域,已發展為當今世界的主流操作系統之一。隨著Internet的快速發展,網絡本身的安全面臨著重大的挑戰,Linux與其它網絡操作系統一樣,也面臨著更多的安全隱患,其系統的安全問題也受到人們的日益關注。分析Linux系統的安全機制,找出它可能存在的安全隱患,采取相應的安全策略、措施是十分必要的。
Linux是一套自由軟件、用戶可以無償得到它及其源代碼和大量的相關應用程序,而且可以按照自己的意圖和需求進行修改和補充,無償使用,無限制地傳播。Linux不僅具備功能強大、性能穩定的UNIX網絡操作系統的全部優點,而且還提供了豐富的應用軟件[1]。Linux的網絡功能、安全性、穩定性和應用絕不次于任何商業化的操作系統,現在已有眾多的用戶用它來構建安全、穩健的站點,提供各種關鍵業務的網絡服務。
Linux網絡操作系統提供了用戶賬號、文件系統權限和系統日志文件等基本安全機制[2],如果這些安全機制配置不當,就會使系統存在一定的安全隱患。
1)Linux系統的用戶賬號
在Linux系統中,用戶賬號是用戶的身份標志,它由用戶名和用戶口令組成。系統將輸入的用戶名存放在/etc/passwd文件中,而將輸入的口令以加密的形式存放在/etc/shadow文件中[3]。在正常情況下,這些口令和其他信息由操作系統保護,能夠對其進行訪問的只能是超級用戶(root)和操作系統的一些應用程序。
2)Linux的文件系統權限
Linux文件系統的安全主要是通過設置文件的權限來實現。每一個Linux的文件或目錄,都有3組屬性,分別定義文件或目錄的所有者,用戶組和其他人的使用權限[4]。
3)Linux的日志文件
Linux的日志文件用來記錄整個操作系統使用狀況,作為一個Linux網絡系統管理員要充分使用好/var/log/lastlog、/var/log/secure、/var/log/wtmp幾個日志文件。
隨著Linux操作系統在全世界范圍內的廣泛應用,其安全隱患也日益突出。目前,針對Linux網絡系統的攻擊越來越多,主要攻擊方式有拒絕服務攻擊、口令破解攻擊、緩沖區溢出攻擊、IP欺騙攻擊、網絡監聽攻擊、欺騙用戶攻擊、端口掃描攻擊等[5],其攻擊范圍可以從服務拒絕直至完全危害和破壞Linux服務器。
1)拒絕服務攻擊
拒絕服務(DoS)攻擊是指黑客采取具有破壞性的方法阻塞目標網絡的資源,使網絡暫時或永久癱瘓,從而使Linux網絡服務器無法為正常的用戶提供服務[6]。例如,黑客可以利用偽造的源地址或受控的其他地方的多臺計算機同時向目標計算機發出大量、連續的TCP/IP請求,從而使目標服務器系統癱瘓。大多數拒絕服務攻擊導致相對低級的危險,即便是那些可能導致系統重啟的攻擊也僅僅是暫時性的問題。
拒絕服務攻擊包括簡單拒絕服務攻擊、分布式拒絕服務攻擊、DNS分布拒絕服務攻擊和FTP攻擊[7]。由于拒絕服務攻擊工具的泛濫,及所針對的協議層的缺陷短時無法改變,拒絕服務也就成為了流傳最廣、最難防范的攻擊方式。
2)口令破解攻擊
口令破解攻擊的目的是為了破解用戶的口令,從而可以取得已經加密的信息資源。口令安全是保衛自己系統安全的第一道防線,但在實際應用過程中,用戶常常忽略他們的密碼,密碼政策很難得到實施。黑客有多種工具可以擊敗技術和社會所保護的密碼,主要包括字典攻擊(Dictionary attack)、混合攻擊(Hybrid attack)、蠻力攻擊(Brute force attack)[8]。例如,黑客可以利用一臺高速計算機,配合一個字典庫,嘗試各種密碼組合,直到最終找到能夠進入系統的密碼,打開網絡資源。
3)緩沖區溢出攻擊
緩沖區溢出攻擊是指攻擊者向一個有限空間的緩沖區拷貝過長的字符串,覆蓋相鄰的存儲單元,這種覆蓋往往會導致程序運行的失敗,甚至是死機或是系統的重啟。緩沖區溢出漏洞廣泛存在于應用軟件和操作系統中,其危害是非常巨大的。
4)IP欺騙攻擊
IP欺騙攻擊是利用TCP/IP協議中不檢查返回地址的這個安全漏洞,從而達到攻擊網絡的目的。IP欺騙,就是指偽造他人的IP地址,其實質就是讓一臺計算機來扮演另一臺計算機。IP欺騙是利用主機之間正常信任關系來發動的,所謂信任關系就是網絡上的兩臺計算機P1和P2,P2可以利用遠程登錄工具,無需口令驗證就可以登錄到P1主機上,假如攻擊者能冒充P2的IP地址,就可以利用遠程登錄工具登錄P1,而不需要任何口令的驗證。
5)網絡監聽攻擊
網絡監聽也是黑客們常用的一種方法,當成功地登錄到一臺網絡上的主機,并取得了這臺主機的超級用戶控制權之后,黑客就可以利用網絡監聽收集敏感數據或者認證信息,以便日后奪取網絡中其他主機的控制權。
6)欺騙用戶攻擊
欺騙用戶攻擊是指網絡黑客偽裝成網絡公司或計算機服務商的工程技術人員,向用戶發出呼叫,并在適當的時候要求用戶輸入口令,有時黑客會向用戶發送郵件,要求用戶給他系統升級的口令。這是用戶較難對付的一種攻擊方式,一旦用戶口令失密,黑客就可以利用該用戶的賬號進入系統。
7)端口掃描攻擊
端口掃描是通過發送特定類型的TCP/UDP報文給所要掃描的目標主機的全部或特定端口,誘發目標主機回復響應報文,分析返回的響應報文來推斷目標主機端口的狀態等信息[9]。利用端口掃描工具黑客能找出目標主機上各種各樣的漏洞,并利用這些漏洞對系統實施攻擊。
Linux是一種公開源碼的操作系統,要想在技術日益發展、紛繁蕪雜的網絡環境中保證Linux系統的網絡安全性,系統管理員一定要有安全防范意識,對系統采取一定的安全措施,這樣才能提高Linux系統的網絡安全性。下面主要從Linux系統的用戶管理、文件管理、預防攻擊、數據備份等方面給出Linux系統的網絡安全解決策略。
1)確保root賬號的安全
root賬號是Linux系統中享有特權的賬號,具有管理員的權限。root賬號是不受任何限制和制約的,因此,使用root賬號的時候,要非常小心,以免造成誤操作。通常情況下,不要使用root賬號登錄,系統管理員輕易不要在別人的計算機上用root登錄自己的服務器。
2)設置用戶賬號的安全等級
在Linux系統上每個賬號可以被賦予不同的權限,在建立一個新用戶ID時,系統管理員應該根據需要賦予該賬號不同的權限,并且歸并到不同的用戶組中。?除了一些重要的用戶外,建議屏蔽掉其他用戶的telnet權限,只給ftp權限,這樣可以防止一些人利用其他賬號登錄到系統上。此外,Linux系統會自動把允許進入或不允許進入的結果記錄到/rar/log/secure文件中,系統管理員可以據此查出可疑的進入記錄。
3)確保用戶口令的安全
對于網絡系統而言,口令是比較容易出問題的,作為系統管理員應告訴用戶在設置口令時要使用安全口令,并適當增加口令的長度。系統管理員要保護好/etc/passwd和/etc/shadow這兩個文件的安全,不讓無關人員獲得這兩個文件,這樣黑客利用John等程序對/etc/passwd和/etc/shadow文件進行字典攻擊獲取用戶口令的企圖就無法進行[10]。系統管理員要定期對本系統的/etc/passwd和/etc/shadow文件進行模擬字典攻擊,一旦發現有不安全的用戶口令,要強制用戶立即修改。
4)刪除不必要的賬號和組號
Linux提供了許多默認賬號,賬號越多,系統就越容易受到攻擊。可以用以下命令來刪除sync、shutdown、halt、news、games、adm、lp、mail、operator、uucp等不必要的賬號。
#userdel用戶名
用以下命令刪除adm、lp、mail、news、games、dip等不必要的組號。
#groupdel用戶名
1)加密重要的文件
在Linux系統中,將重要的文件進行加密。使用#gPg—gen—key產生密鑰對,將公鑰發布,以便其他用戶下載該公鑰加密發回文件,收到加密文件后,用配對的私鑰解密為明文。
2)設置文件系統的訪問權限
Linux文件系統的安全主要是通過設置文件的權限來實現。使用chown或chgrp命令正確設置文件的所有權或用戶組關系[11]。使得文件的不同用戶(文件主、組用戶和其它用戶)只能對必需的文件具有必須的訪問權限(讀、寫和可執行),提高文件訪問的安全性。
1)設置防火墻
防火墻的主要功能是實現兩個或多個網絡間透明訪問,阻止非授權用戶進人系統。同時,防火墻也能使被保護網的入口點盡可能少的暴露出來,從而有效地減少外部網對被保護網的非授權訪問和惡意攻擊,并保護系統。因此,防火墻在主機安全中有非常重要的作用,一個配置適當的防火墻不僅是系統有效應對外部攻擊的第一道防線,也是最重要的一道防線,它可以彌補由于設置不當或軟件存在漏洞而引發的安全問題。在Linux系統中,常采用系統自帶的Iptables完成防火墻的配置,利用防火墻能有效的防御IP地址欺騙、特洛伊木馬攻擊、口令探尋攻擊、Internet蠕蟲、郵件攻擊等。
2)關閉不必要的服務
Linux系統在安裝時包含了較多網絡服務,有時會出現嚴重的安全問題,用戶應當關閉不需要的服務。Linux中的大部分網絡服務都是在/etc/inetd.conf文件中設定,它保存了系統提供Internet服務的數據庫,通過這個文件,可以關閉系統中不需要的某項服務,使它們更為安全的運行。
3)禁止系統對ping命令的反應
TCP協議本身有很多的弱點,黑客可以利用一些技術把傳輸正常數據包的通道用來偷偷地傳送數據,將系統設置為對ping請求沒有反應,能很好的避免黑客利用其漏洞攻擊用戶,可將計算機的網絡安全風險降到最低。
4)禁止提供finger服務
在Linux系統下,使用finger命令,可以顯示本地或遠程系統中目前已登錄用戶的詳細信息,黑客可以利用這些信息,增大侵入系統的機會。為了系統的安全,建議禁止提供finger服務,即從/usr/bin下刪除finger命令[12]。
5)合理利用Linux的日志文件
Linux的日志文件用來記錄整個操作系統使用狀況,作為一個Linux系統管理員要充分用好日志文件。/var/log/secu re文件記錄登入系統存取數據的文件,/var/log/wtmp文件記錄當前和歷史上登錄到系統的用戶的登錄時間、地點和注銷時間等信息,/var/log/messages文件記錄系統發生的所有錯誤信息(或重要信息)。
6)定期對Linux網絡進行安全檢查
Linux網絡系統的運轉是動態變化的,因此,對它的安全管理也是變化的。作為Linux網絡系統的管理員,在為系統設置了安全防范策略后,應定期對系統進行安全檢查,并嘗試對自己管理的服務器進行攻擊,如果發現安全機制中的漏洞應立即采取措施補救,不給黑客以可乘之機。
7)預防病毒入侵
雖然目前在Linux系統上并未出現廣泛傳播的病毒,但隨著Linux的廣泛應用,各種針對它的病毒也紛至沓來。系統管理員應及時了解病毒預告及預防病毒的技術和發展,以防止系統受到病毒的攻擊。
為了防止不能預料的系統故障,或用戶不小心的非法操作,必須對系統進行安全備份。除了應對全系統進行每月一次的備份外,還應該對修改過的數據進行每周一次的備份。同時應該將修改過的重要的系統文件存放在不同的服務器上,以便在系統萬一崩潰時,可以及時將系統恢復到最佳狀態。
采用以上的網絡安全策略,雖然可以使Linux系統的網絡安全性大大提高,但不能完全杜絕黑客入侵。隨著Linux系統的發展,對Linux系統的攻擊方式也在不斷改變,因此Linux網絡安全工作需要跟隨技術和管理的發展而更新,應隨時關注安全技術的發展,不斷提高安全意識與安全防范技能,制定合理有效的安全策略,定期對系統進行安全檢查,發現漏洞要立即采取措施,保證Linux系統的安全性。
[1]胡耀民,厲偉.Linux系統及網絡管理[M].北京:人民郵電出版社,2012.
[2]陳勇勛.Linux網絡安全技術與實現[M].北京:清華大學出版社,2012.
[3]李洋.淺析Linux安全管理技巧[J].職業技術,2012(2):118.LI Yang.Analysis of security management skills based on Linux[J].Vocational Technology,2012(2):118.
[4]易著梁,鄧志龍.Linux網絡管理[M].北京:人民郵電出版社,2010.
[5]曾斯.Linux操作系統下的安全性研究[J].福建電腦,2010(11):78-79.ZENG Si.Security research based on Linux operating system[J].Fujian Computer,2010(11):78-79.
[6]萬為軍.淺談Linux系統網絡安全[J].中國科技信息,2011(11):107.WAN Wei-jun.Analysis of network security based on Linux System[J].China Science and Technology Information,2011(11):107.
[7]閻映炳,劉雪潔.Linux系統與網絡管理教程[M].北京:電子工業出版社,2010.
[8]范魯娜.基于Linux操作系統的網絡服務器安全管理[J].科技創新導報,2011(10):17.FAN Lu-na.Security management of network server based on Linux operating system[J].Science and Technology Innovation Herald,2011(10):17.
[9]李洋.Linux安全技術內幕[M].北京:清華大學出版社,2010.
[10]李文風.淺析Linux操作系統的安全策略[J].信息與電腦,2011(4):8-10.LI Wen-feng.Analysis of security policies based on Linux operating system[J].China Computer&Communication,2011(4):8-10.
[11]韓曉紅.淺析Linux操作系統的網絡安全及防范策略[J].電腦知識與技術,2011,13(7):3014-3016.HAN Xiao-hong.Analysis of network security and prevention strategies based on Linux operating system[J].Computer Knowledge and Technology,2011,13(7):3014-3016.
[12]楊牧.基于Linux網絡操作系統的安全策略[J].網絡安全技術與應用,2010(2):19-20.YANG Mu.Security policies based on Linux network operating system[J]. Network Security Technology &Application,2010(2):19-20.