歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Linux 網絡安全問題及其對策

  文章摘要:     Linux作為開放式操作系統具有很多優點,但也存在一些安全隱患。關於如何解決這些隱患,為應用提供一個安全的操作平台,本文會告訴你一些最基本、最常用,同時也是最有效的招數。 正文: Linux 網絡安全問題及其對策   背景    Linux不論在功能上、價格上或性能上都有很多優點,然而,作為開放式操作系統,它不可避免地存在一些安全隱患。關於如何解決這些隱患,為應用提供一個安全的操作平台,本文會告訴你一些最基本、最常用,同時也是最有效的招數。    Linux是一種類Unix的操作系統。從理論上講,Unix本身的設計並沒有什麼重大的安全缺陷。多年來,絕大多數在Unix操作系統上發現的安全問題主要存在於個別程序中,所以大部分Unix廠商都聲稱有能力解決這些問題,提供安全的Unix操作系統。但Linux有些不同,因為它不屬於某一家廠商,沒有廠商宣稱對它提供安全保證,因此用戶只有自己解決安全問題。    Linux是一個開放式系統,可以在網絡上找到許多現成的程序和工具,這既方便了用戶,也方便了黑客,因為他們也能很容易地找到程序和工具來潛入Linux系統,或者盜取Linux系統上的重要信息。不過,只要我們仔細地設定Linux的各種系統功能,並且加上必要的安全措施,就能讓黑客們無機可乘。    一般來說,對Linux系統的安全設定包括取消不必要的服務、限制遠程存取、隱藏重要資料、修補安全漏洞、采用安全工具以及經常性的安全檢查等。本文以紅旗Linux為例,講述一些提高Linux系統安全性的方法,相信對於提高用戶 Linux 系統的安全性大有裨益。 一、取消不必要的服務    早期的Unix版本中,每一個不同的網絡服務都有一個服務程序在後台運行,後來的版本用統一的/etc/inetd服務器程序擔此重任。Inetd是Internetdaemon的縮寫,它同時監視多個網絡端口,一旦接收到外界傳來的連接信息,就執行相應的TCP或UDP網絡服務。    由於受inetd的統一指揮,因此Linux中的大部分TCP或UDP服務都是在/etc/inetd.conf文件中設定。所以取消不必要服務的第一步就是檢查/etc/inetd.conf文件,在不要的服務前加上"#"號。    一般來說,除了http、smtp、telnet和FTP之外,其他服務都應該取消,諸如簡單文件傳輸協議tftp、網絡郵件存儲及接收所用的imap/ipop傳輸協議、尋找和搜索資料用的gopher以及用於時間同步的daytime和time等。    還有一些報告系統狀態的服務,如finger、efinger、systat和netstat等,雖然對系統查錯和尋找用戶非常有用,但也給黑客提供了方便之門。例如,黑客可以利用finger服務查找用戶的電話、使用目錄以及其他重要信息。因此,很多Linux系統將這些服務全部取消或部分取消,以增強系統的安全性。    Inetd除了利用/etc/inetd.conf設置系統服務項之外,還利用/etc/services文件查找各項服務所使用的端口。因此,用戶必須仔細檢查該文件中各端口的設定,以免有安全上的漏洞。    在Linux中有兩種不同的服務類型:一種是僅在有需要時才執行的服務,如finger服務;另一種是一直在執行的永不停頓的服務。這類服務在系統啟動時就開始執行,因此不能靠修改inetd來停止其服務,而只能從修改/etc/rc.d/rc[n].d/文件或用Runleveleditor去修改它。提供文件服務的NFS服務器和提供NNTP新聞服務的news都屬於這類服務,如果沒有必要,最好取消這些服務。


二、口令安全    在進入Linux系統之前,所有用戶都需要登錄,也就是說,用戶需要輸入用戶賬號和密碼,只有它們通過系統驗證之後,用戶才能進入系統。    與其他Unix操作系統一樣,Linux一般將密碼加密之後,存放在/etc/passwd文件中。Linux系統上的所有用戶都可以讀到/etc/passwd文件,雖然文件中保存的密碼已經經過加密,但仍然不太安全。因為一般的用戶可以利用現成的密碼破譯工具,以窮舉法猜測出密碼。比較安全的方法是設定影子文件/etc/shadow,只允許有特殊權限的用戶閱讀該文件。    在 RedFlag Linux 中提供為影子口令有很好的支持,提供了豐富的工具:    1、把正常口令轉換成shadow口令, 並轉回(pwconv,pwunconv)。    2、較驗口令、組和相應的shadow文件(pwck,grpck)。    3、增加、 刪除和修改用戶帳號的工業標准方式(useradd, usermod,,和userdel)。    4、增加,刪除和修改用戶組的工業標准方式(groupadd,,groupmod, 和groupdel)。    5、管理/etc/group文件的工業標准方式(gpasswd)。    請注意: 關於這些工具, 還有一點有趣的地方::不管是否用了shadow, 這些工具都能正常工作。    在RedFlag Linux 中,系統缺省情況已經將密碼放在 /etc/shadow 文件中,該文件只有超級用戶(root)可以讀。可以使用命令 /usr/sbin/pwconv 或 /usr/sbin/grpconv 來建立 /etc/shadow 或 /etc/gshadow 文件。    在Linux系統中,如果要采用影子文件,必須將所有的公用程序重新編譯,才能支持影子文件。這種方法比較麻煩,比較簡便的方法是采用插入式驗證模塊(PAM)。很多Linux系統都帶有Linux的工具程序PAM,它是一種身份驗證機制,可以用來動態地改變身份驗證的方法和要求,而不要求重新編譯其他公用程序。這是因為PAM采用封閉包的方式,將所有與身份驗證有關的邏輯全部隱藏在模塊內,因此它是采用影子檔案的最佳幫手。    此外,PAM還有很多安全功能:它可以將傳統的DES加密方法改寫為其他功能更強的加密方法,以確保用戶密碼不會輕易地遭人破譯;它可以設定每個用戶使用電腦資源的上限;它甚至可以設定用戶的上機時間和地點。 Linux系統管理人員只需花費幾小時去安裝和設定PAM,就能大大提高Linux系統的安全性,把很多攻擊阻擋在系統之外。在後面我們將對 PAM 進行介紹。 三、保持最新的系統核心    由於Linux流通渠道很多,而且經常有更新的程序和系統補丁出現,因此,為了加強系統安全,一定要經常更新系統內核。    Kernel是Linux操作系統的核心,它常駐內存,用於加載操作系統的其他部分,並實現操作系統的基本功能。由於Kernel控制計算機和網絡的各種功能,因此,它的安全性對整個系統安全至關重要。    早期的Kernel版本存在許多眾所周知的安全漏洞,而且也不太穩定,只有2.0.x以上的版本才比較穩定和安全,新版本的運行效率也有很大改觀。在設定Kernel的功能時,只選擇必要的功能,千萬不要所有功能照單全收,否則會使Kernel變得很大,既占用系統資源,也給黑客留下可乘之機。    在Internet上常常有最新的安全修補程序,Linux系統管理員應該消息靈通,經常光顧安全新聞組,查閱新的修補程序。 四、檢查登錄密碼    設定登錄密碼是一項非常重要的安全措施,如果用戶的密碼設定不合適,就很容易被破譯,尤其是擁有超級用戶使用權限的用戶,如果沒有良好的密碼,將給系統造成很大的安全漏洞。    在多用戶系統中,如果強迫每個用戶選擇不易猜出的密碼,將大大提高系統的安全性。但如果passwd程序無法強迫每個上機用戶使用恰當的密碼,要確保密碼的安全度,就只能依靠密碼破解程序了。    實際上,密碼破解程序是黑客工具箱中的一種工具,它將常用的密碼或者是英文字典中所有可能用來作密碼的字都用程序加密成密碼字,然後將其與Linux系統的/etc/passwd密碼文件或/etc/shadow影子文件相比較,如果發現有吻合的密碼,就可以求得明碼了。    在網絡上可以找到很多密碼破解程序,比較有名的程序是crack。用戶可以自己先執行密碼破解程序,找出容易被黑客破解的密碼,先行改正總比被黑客破解要有利。 五、設定用戶賬號的安全等級    除密碼之外,用戶賬號也有安全等級,這是因為在Linux上每個賬號可以被賦予不同的權限,因此在建立一個新用戶ID時,系統管理員應該根據需要賦予該賬號不同的權限,並且歸並到不同的用戶組中。    在Linux系統上的tcpd中,可以設定允許上機和不允許上機人員的名單。其中,允許上機人員名單在/etc/hosts.allow中設置,不允許上機人員名單在/etc/hosts.deny中設置。設置完成之後,需要重新啟動inetd程序才會生效。此外,Linux將自動把允許進入或不允許進入的結果記錄到/rar/log/secure文件中,系統管理員可以據此查出可疑的進入記錄。    每個賬號ID應該有專人負責。在企業中,如果負責某個ID的職員離職,管理員應立即從系統中刪除該賬號。很多入侵事件都是借用了那些很久不用的賬號。    在用戶賬號之中,黑客最喜歡具有root權限的賬號,這種超級用戶有權修改或刪除各種系統設置,可以在系統中暢行無阻。因此,在給任何賬號賦予root權限之前,都必須仔細考慮。

   Linux系統中的/etc/securetty文件包含了一組能夠以root賬號登錄的終端機名稱。最好不要修改該文件,如果一定要從遠程登錄為root權限,最好是先以普通賬號登錄,然後利用su命令升級為超級用戶。 六、清除黑客犯罪的溫床    在Linux 系統中,有一系列r字頭的公用程序,可以使用戶在不需要提供密碼的情況下執行遠程操作。因此,在提供方便的同時,也帶來了潛在的安全問題,它們常被黑客用做入侵的武器,非常危險。    在 Linux 系統中,系統是通過查看 /etc/hosts.equiv 及$HOME/.rhosts文件來控制可以使用"r"命令的節點和用戶。所以,這兩個文件的正確設置是安全使用"r



Copyright © Linux教程網 All Rights Reserved