Tripwire如何為Linux文件系統(tǒng)保駕護(hù)航
譯文【51CTO.com快譯】雖然Linux被認(rèn)為是最安全的操作系統(tǒng)(安全性勝過Windows和MacOS),但仍然容易受到rootkit及其他惡意軟件的攻擊。因此,Linux用戶需要知道如何保護(hù)自己的服務(wù)器或PC免遭破壞,他們需要采取的第一步就是保護(hù)好文件系統(tǒng)。
我們在本文中將介紹Tripwire(https://www.tripwire.com/)這款保護(hù)Linux文件系統(tǒng)的出色工具。Tripwire是一款完整性檢查工具,采用GPLv2許可證的開源軟件,讓系統(tǒng)管理員、安全工程師及其他人員能夠檢測對系統(tǒng)文件所做的改動(dòng)。雖然Tripwire不是唯一的選擇(AIDE和Samhain提供類似的功能),卻稱得上是最常用的Linux系統(tǒng)文件完整性檢查工具。
Tripwire如何工作?
有必要知道Tripwire如何運(yùn)行,以便了解它在安裝后能派什么用場。Tripwire的工作原理是,定期將目錄和文件與數(shù)據(jù)庫中的快照進(jìn)行比較,報(bào)告任何改動(dòng)的現(xiàn)象。
Tripwire包括這兩大部分:策略和數(shù)據(jù)庫。策略列出了這款完整性檢查工具應(yīng)該拍攝快照的所有文件和目錄,并創(chuàng)建用于識(shí)別改動(dòng)目錄和文件這一違規(guī)操作的規(guī)則。數(shù)據(jù)庫由Tripwire拍攝的快照組成。
Tripwire還有一個(gè)配置文件,指定了數(shù)據(jù)庫、策略文件和Tripwire可執(zhí)行文件的位置。它還提供了兩個(gè)加密密鑰:站點(diǎn)密鑰和本地密鑰,保護(hù)重要文件以免被篡改。站點(diǎn)密鑰保護(hù)策略和配置文件,而本地密鑰保護(hù)數(shù)據(jù)庫和生成的報(bào)告。
安裝Tripwire
想使用Tripwire,我們就要先下載并安裝它。Tripwire在幾乎所有的Linux發(fā)行版上都可以運(yùn)行;可以從Sourceforge(http://sourceforge.net/projects/tripwire)下載一個(gè)開源版本,如下安裝,具體取決于你的Linux版本。
Debian和Ubuntu用戶可以使用apt-get直接從軟件包存儲(chǔ)庫安裝Tripwire。非root用戶應(yīng)輸入sudo命令,通過apt-get來安裝Tripwire。
- sudo apt-get update
- sudo apt-get install tripwire
CentOS及其他基于rpm的發(fā)行版遵循類似的過程。一個(gè)最佳實(shí)踐是,在安裝Tripwire之類的新軟件包之前,先更新存儲(chǔ)庫。yum install epel-release這個(gè)命令只是意味著,我們想要安裝額外的存儲(chǔ)庫。(epel的全稱是Extra Packages for Enterprise Linux。)
- yum update +z
- yum install epel-release
- yum install tripwire
該命令促使安裝過程對Tripwire正常發(fā)揮功效所需要的軟件包進(jìn)行配置。此外,它會(huì)詢問你是否想在安裝過程中選擇口令短語。這兩個(gè)提示都可以選擇“Yes”。
另外,提示是否需要構(gòu)建配置文件,選擇“Yes”。為站點(diǎn)密鑰和本地密鑰選擇并確認(rèn)口令短語(建議使用復(fù)雜的口令短語,比如Il0ve0pens0urce。)
建立并初始化Tripwire的數(shù)據(jù)庫
下一步初始化Tripwire數(shù)據(jù)庫,如下所示:
- tripwire --init
你需要提供本地密鑰口令短語,才能運(yùn)行這些命令。
使用Tripwire執(zhí)行基本的完整性檢查
你可以使用下列命令,指令Tripwire檢查你的文件或目錄是否被改動(dòng)。Tripwire能夠?qū)⑽募湍夸浥c數(shù)據(jù)庫中的初始快照進(jìn)行比較,有賴于在活動(dòng)策略中創(chuàng)建的規(guī)則。
- tripwire --check
還可以限制-check命令只適用于特定的文件或目錄,如下例所示:
- tripwire --check /usr/tmp
此外,如果你需要獲得使用Tripwire的-check命令方面的更多幫助,該命令讓你可以查閱Tripwire的使用手冊:
- tripwire --check --help
使用Tripwire生成報(bào)告
想輕松地生成每天的系統(tǒng)完整性報(bào)告,可使用該命令創(chuàng)建crontab:
- crontab -e
之后可以編輯該文件(用你選擇的文本編輯器),明確由cron運(yùn)行的任務(wù)。比如說,你可以使用這個(gè)命令,創(chuàng)建一個(gè)計(jì)劃任務(wù)(cron job),以便每天早上5:40將Tripwire報(bào)告發(fā)到你的電子郵箱:
- 40 5 * * * usr/sbin/tripwire --check
無論你決定使用Tripwire還是使用功能相似的其他完整性檢查工具,一個(gè)關(guān)鍵問題是,確保有辦法來保護(hù)你的Linux文件系統(tǒng)的安全。
原文標(biāo)題:Securing the Linux filesystem with Tripwire,作者:Michael Kwaku Aboagye
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】