Linux日誌系統(Logcheck)的安裝預配置

概述 
   確保系統安全的一項很重要的工作就是定期查看日誌文檔。系統管理員一般比較忙,沒有時間定期完成這項工作,這樣就可能帶來一些安全問題。 

    審覈和記錄系統的事件是很重要的。特別是當您的電腦連接到Internet上之後,系統管理員假如對“異常”的事件保持警覺,就能防止系統被入侵。在Unix系統中假如僅僅把系統事件作爲日誌記錄下來,而不去查看,還是無濟於事。Logchek能夠自動地檢查日誌文檔,先把正常的日誌信息剔除掉,把一些有問題的日誌保留下來,然後把這些信息email給系統管理員。Logcheck被設計成自動運行,定期檢查日誌文檔以發現違反安全規則連同異常的活動。Logcheck用logtail程式記住上次已讀過的日誌文檔的位置,然後從這個位置開始處理新的日誌信息。 

注意事項 
  下面任何的命令都是Unix兼容的命令。 
    源路徑都爲“/var/tmp”(當然在實際情況中也能夠用其他路徑)。 
    安裝在RedHat Linux 6.1和6.2下測試通過。 
    要用“root”用戶進行安裝。 
    Logcheck的版本是1.1.1。 
    軟件包的來源Logcheck的主頁:http://www.psionic.com/abacus/logcheck/。 
    下載:logcheck-1.1.1.tar.gz。 

安裝軟件包需要注意的問題 
   最好在編譯前和編譯後都做一張系統中任何文檔的列表,然後用“diff”命令去比較他們,找出其中的差別並知道到底把軟件安裝在哪裏。只要簡單地在編譯之前運行一下命令“find /* >Logcheck1”,在編譯和安裝完軟件之後運行命令“find /* > Logcheck2”,最後用命令“diff Logcheck1 Logcheck2 > Logcheck-Installed”找出變化。 

解壓軟件包 
   把軟件包(tar.gz)解壓: 

[root@deep /]# cp logcheck-version.tar.gz /var/tmp/ 
   [root@deep /]# cd /var/tmp 
   [root@deep tmp]# tar xzpf logcheck-version.tar.gz 

編譯和優化 
   必須修改“Makefile”文檔,配置Logcheck的安裝路徑、編譯標記,還要根據您的系統進行優化。必須根據RedHat的文檔系統結構來修改“Makefile”文檔,並且在“PATH”環境變量的設定的路徑中安裝Logcheck的腳本文檔。 

第一步 

轉到Logcheck所在的目錄。 
編輯“Makefile”文檔(vi Makefile)並改變下面這些行: 
CC = cc 
改爲: 
CC = egcs 

CFLAGS = -O 
改爲: 
CFLAGS = -O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer -fno-exceptions 

INSTALLDIR = /usr/local/etc 
改爲: 
INSTALLDIR = /etc/logcheck 

INSTALLDIR_BIN = /usr/local/bin 
改爲: 
INSTALLDIR_BIN = /usr/bin 

INSTALLDIR_SH = /usr/local/etc 
改爲: 
INSTALLDIR_SH = /usr/bin 

TMPDIR = /usr/local/etc/tmp 
改爲: 
TMPDIR = /etc/logcheck/tmp 

上面這些修改是爲了把“Makefile”配置爲使用“egcs”編譯器,使用適應於我們系統的編譯優化標記,並且把Logcheck的安裝目錄配置成遵循RedHat的文檔系統結構。 

第二步 

編輯“Makefile”文檔(vi +67 Makefile)改變下面這些行: 
@if [ ! -d $(TMPDIR) ]; then /bin/mkdir $(TMPDIR); fi 
改爲: 
@if [ ! -d $(TMPDIR) ]; then /bin/mkdir -p $(TMPDIR); fi 
加上“-p”參數是讓安裝程式根據需要自動創建目錄。 

第三步 

安裝Logcheck: 
[root@deep logcheck-1.1.1]# make linux 
上面的命令爲Linux操作系統配置Logcheck,然後把源文檔編譯成二進制文檔,最後把二進制文檔和配置文檔拷貝到相應的目錄。 
清除不必要的文檔,用下面的命令刪除不必要的文檔: 
[root@deep /]# cd /var/tmp 
[root@deep tmp]# rm -rf logcheck-version/ logcheck-version_tar.gz 
“rm”命令刪除任何編譯和安裝Logcheck所需要的源程式,並且把Logcheck軟件的壓縮包刪除掉。 
配置“/usr/bin/logcheck.sh”文檔 
因爲我們不使用“/usr/local/etc”這個路徑,所以必須改變“logcheck.hacking”、“logcheck.violations”、“logcheck.ignore”、“logcheck.violations.ignore”和“logtail”中任何的路徑到要改變。Logcheck的腳本文檔“/usr/bin/logcheck.sh”允許配置一些選項,能夠改變路徑和程式的運行。這些都有周詳的註釋,也很簡單。 

第一步 
編輯“logcheck.sh”文檔(vi /usr/bin/logcheck.sh)並且改變: 
LOGTAIL=/usr/local/bin/logtail 
改爲: 
LOGTAIL=/usr/bin/logtail 

TMPDIR=/usr/local/etc/tmp 
改爲: 
TMPDIR=/etc/logcheck/tmp 

HACKING_FILE=/usr/local/etc/logcheck.hacking 
改爲: 
HACKING_FILE=/etc/logcheck/logcheck.hacking 

VIOLATIONS_FILE=/usr/local/etc/logcheck.violations 
改爲: 
VIOLATIONS_FILE=/etc/logcheck/logcheck.violations 

VIOLATIONS_IGNORE_FILE=/usr/local/etc/logcheck.violations.ignore 
改爲: 
VIOLATIONS_IGNORE_FILE=/etc/logcheck/logcheck.violations.ignore 

IGNORE_FILE=/usr/local/etc/logcheck.ignore 
改爲: 
IGNORE_FILE=/etc/logcheck/logcheck.ignore 

第二步 

把Logcheck放到crontab中,使之成爲cronjob: 
安裝完Logcheck之後,必須以“root”權限編輯本地的“crontab”文檔,並把Logcheck配置成每小時運行一次(當然您也能夠把時間設長一點或設短一點)。 

l 用下面的命令編輯crontab: 
[root@deep /]# crontab -e 
# Hourly check Log files for security violations and unusual activity. 
   00 * * * * /usr/bin/logcheck.sh 

注意:假如沒有必要的話,Logcheck是不會用email報告任何東西的。 

安裝到系統中的文檔 
   > /etc/logcheck 
   > /usr/bin/logcheck.sh 
   > /etc/logcheck/tmp 
   > /etc/logcheck/logcheck.hacking 
   > /etc/logcheck/logcheck.violations 
   > /etc/logcheck/logcheck.violations.ignore 
   > /etc/logcheck/logcheck.ignore 
   > /usr/bin/logtail 
   > /var/log/messages.offset 
   > /var/log/secure.offset 
   > /var/log/maillog.offset 

版權說明 
   這篇文章翻譯和改編自Gerhard Mourani的《Securing and Optimizing Linux: RedHat Edition》,原文及其版權協議請參考:www.openna.com。
發佈了5 篇原創文章 · 獲贊 4 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章