[摘 要] Linux系統(tǒng)使用越來越廣泛,關(guān)系Linux的安全越來越受到人們的重視,本文結(jié)合筆者在Linux系統(tǒng)安全管理方面的一些經(jīng)驗體會,從賬戶、密碼策略、文件權(quán)限,日志管理、遠程訪問等5個方面,對linux系統(tǒng)安全談?wù)勛约旱捏w會,供大家參考。
[關(guān)鍵詞] LINUX 賬號 密碼 日志
一、引言
隨著Internet/Intranet網(wǎng)絡(luò)的日益普及,Linux作為一個現(xiàn)代的操作系統(tǒng),正在各個方面得到廣泛的應(yīng)用。Linux在服務(wù)器、嵌入式等方面已經(jīng)取得不俗的成績,在桌面系統(tǒng)方面,也逐漸受到歡迎。于是Linux的安全問題也逐漸受到人們的重視。
Linux是一個開放式系統(tǒng),可以在網(wǎng)絡(luò)上找到許多現(xiàn)成的程序和工具,這既方便了用戶,也方便了黑客,因為他們也能很容易地找到程序和工具來潛入 Linux系統(tǒng),或者盜取Linux系統(tǒng)上的重要信息。因此,詳細分析Linux系統(tǒng)的安全機制,找出它可能存在的安全隱患,給出相應(yīng)的安全策略和保護措施是十分必要的。針對Linux的基本安全防護,筆者這里稍做介紹。
二、Linux系統(tǒng)的安全策略
1.Linux系統(tǒng)的用戶賬號策略
管理員的工作中,相當重要的一環(huán)就是管理賬號。在管理 Linux 主機的賬號時,一個最重要的方面就是確保每一個UID僅僅使用一次。
另外就是設(shè)置有限的登陸次數(shù)來預防無休止的登陸攻擊,通過編輯/etc/pam.d/system-auth,添加下面兩句可以設(shè)置賬戶最多連續(xù)登陸5次,超過5次賬戶將被鎖定,只有管理員才能幫助解鎖。
auth required pam_tally.so deny=5
account required pam_tally.so
2.密碼策略要求
(1)口令時效和口令長度的設(shè)置。口令時效和口令長度是一種系統(tǒng)機制,用于強制口令在特定的時間長度后失效。對用戶來說,這可能帶來了一些麻煩,但是它確保了口令會定期進行更改,是一項很好的安全措施。默認情況下,絕大多數(shù)的Linux版本并沒有打開口令時效,不過要想打開卻非常簡單。通過編輯/etc/login.defs,你可以指定幾個參數(shù),來設(shè)置口令實效和口令長度的默認設(shè)定:
PASS_MAX_DAYS99999
PASS_MIN_DAYS 0
PASS_MIN_LEN5
PASS_WARN_AGE7
當設(shè)置口令時效的天數(shù)為99999時,實際上相當于關(guān)閉了口令時效。一般設(shè)定為90天或者更短時間來更改一次。PASS_MIN_DAYS參數(shù)則設(shè)定了在本次密碼修改后,下次允許更改密碼之前所需的最少天數(shù)。PASS_MIN_LEN是指密碼設(shè)置的最小長度,一般定義為8位以上。PASS_WARN_AGE的設(shè)定則指明了在口令失效前多少天開始通知用戶更改密碼(一般在用戶剛剛登陸系統(tǒng)時就會收到警告通知)。
(2)控制密碼使用頻率??刂七m度的密碼重用頻率,也可以為密碼的安全策略提供良好的保護,可以通過編輯/etc/pam.d/system-auth設(shè)定密碼重用。一般設(shè)置重用密碼前更換密碼的最小次數(shù)為4次。
password required pam_unix.so remember=3 use_authtok md5 shadow 或者 password sufficient pam_unix.so remember=3 use_authtok md5 shadow。
3.Linux的基本文件權(quán)限要求
Linux中每一個文件都具有特定的屬性,主要包括文件類型和文件權(quán)限兩個方面??梢苑譃?種不同的類型:普通文件、目錄文件、鏈接文件、設(shè)備文件和管道文件。所謂的文件權(quán)限,是指對文件的訪問權(quán)限,包括對文件的讀、寫、刪除、執(zhí)行。Linux 是一個多用戶操作系統(tǒng),它允許多個用戶同時登錄和工作。因此正確的文件權(quán)限設(shè)定是非常重要的。與系統(tǒng)安全關(guān)系較為密切的幾個文件目錄權(quán)限設(shè)置要求如下表:
4.Linux日志文件管理
日志對于系統(tǒng)安全來說,非常重要,它記錄了系統(tǒng)每天發(fā)生的各種各樣的事情,你可以通過它來檢查錯誤發(fā)生的原因,或者受到攻擊時攻擊者留下的痕跡。因此,保護系統(tǒng)日志安全,不被內(nèi)部用戶或外部入侵者修改或刪除顯得尤為重要。
在Linux系統(tǒng)中,有三個主要的日志子系統(tǒng):
連接時間日志——由多個程序執(zhí)行,把紀錄寫入到/var/log/wtmp和/var/run/utmp,login等程序更新wtmp和utmp文件,使系統(tǒng)管理員能夠跟蹤誰在何時登錄到系統(tǒng)。
進程統(tǒng)計——由系統(tǒng)內(nèi)核執(zhí)行。當一個進程終止時,為每個進程往進程統(tǒng)計文件(pacct或acct)中寫一個紀錄。進程統(tǒng)計的目的是為系統(tǒng)中的基本服務(wù)提供命令使用統(tǒng)計。
錯誤日志——由syslogd(8)執(zhí)行。各種系統(tǒng)守護進程、用戶程序和內(nèi)核通過syslog(3)向文件/var/log/messages報告值得注意的事件。另外有許多UNIX程序創(chuàng)建日志。像HTTP和FTP這樣提供網(wǎng)絡(luò)服務(wù)的服務(wù)器也保持詳細的日志。
Linux的日志文件很多,但是/var/log/wtmp,/var/log/messages,/var/log/faillog(權(quán)限設(shè)置為600) ,/var/log/secure (如果是Debian,/var/log/auth.log將代替它)最好是存在的。
如果服務(wù)器支持很多的用戶的話,這些日志文件的大小會很快地增加,在服務(wù)器硬盤不是非常充足的情況下,必須采取措施限制日志文件的大小,定期做好日志備份和清除是非常重要的。
5.Linux的遠程登錄:使用OPENSSH代替FTP和Telnet
我們通常使用的網(wǎng)絡(luò)傳輸程序FTP和Telnet等在本質(zhì)上都是不安全的,因為它們在網(wǎng)絡(luò)上用明文傳送口令和數(shù)據(jù),黑客利用嗅探器非常容易截 獲這些口令和數(shù)據(jù)。SSH的英文全稱是Secure SHell。通過使用SSH,用戶可以把所有傳輸?shù)臄?shù)據(jù)進行加密,這樣即使網(wǎng)絡(luò)中的黑客能夠劫持用戶所傳輸?shù)臄?shù)據(jù),如果不能解密的話,也不能對數(shù)據(jù)傳輸構(gòu)成真正的威脅。另外,傳輸?shù)臄?shù)據(jù)是經(jīng)過壓縮的,所以可以加快傳輸?shù)乃俣取SH有很多功能,它既可以代替Telnet,又可以為FTP提供一個安全的“傳輸通道”。在不安全的網(wǎng)路通信環(huán)境中,它提供了很強的驗證機制與非常安全的通信環(huán)境。SSH(Secure Shell)最初由芬蘭的一家公司開發(fā),但由于受版權(quán)和加密算法的限制,很多人轉(zhuǎn)而使用免費的替代軟件OpenSSH。命令行使用OPENSSH比較麻煩。這里介紹gFTP和OPENSSH整合在一齊,提供一個圖形化加密傳輸方案。gFTP和Windows下的 CuteFTP一樣使用非常簡單,而且?guī)缀跛械腖inux發(fā)行版本都帶有g(shù)FTP,不需要安裝就可以使用。Windows下支持SSH的客戶端軟件不少,推薦使用Putty和Filezilla。
目前很多公司企業(yè)對信息安全問題日益重視,完善的信息安全控制架構(gòu),先進的管理和技術(shù)的結(jié)合,才能真正滿足公司企業(yè)的需要。
參考文獻:
[1]王一川 Linux黑客大曝光:Linux安全機密與解決方案[M].清華大學出版社,2002~10~1
[2]汪 輝等:Linux安全最大化(第二版)[M].電子工業(yè)出版社, 2002~1~1
[3]前導工作室 Linux安全:入侵防范、檢測、恢復[M].機械工業(yè)出版社,2002~1~1