歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux管理 >> Linux安全

如何做到Linux系統安全

現在發行的各種linux中,red hat的企業版相對來說比較安全。對於一般的linux版本來說,我們如何保證系統的安全。或者系統安全需要關注哪些方面?這就是本次要討論的要點。
linux系統的安全主要通過以下幾個部分進行重點保護:文件系統保護、用戶管理安全、進程的保護、以及日志的管理。

文件系統保護
首先linux系統中有這麼一個概念:“一切皆文件”。那麼對文件的管理就是通過文件系統進行實現的。如何對文件系統進行管理?linux中已經存在了基本的對文件權限的設置。現在主要介紹一款檢測文件系統的工具。tripwire。
Tripwire是目前最為著名的unix下文件系統完整性檢查的軟件工具,這一軟件采用的技術核心就是對每個要監控的文件產生一個數字簽名,保留下來。當文件現在的數字簽名與保留的數字簽名不一致時,那麼現在這個文件必定被改動過了。
那麼知道了tripwire是干什麼的了,現在介紹如何安轉。不是一般軟件安裝都是三部曲嗎?./configure    、 make、 make install
對,該軟件的安裝頁需要上述幾步,但是該軟件還需要生成一個基准數據庫。使用命令 #tripwire --init
該軟件的工作原理是:首先使用特定的特征碼函數,為需要監視的系統文件和目錄建立一個特征數據庫,這裡的特征碼就是使用了hash函數,使得任意長度的文件產生固定大小的值。通過保存該值與現有的文件或目錄的hash值進行比較,如果結果相同,則說明該文件沒有被改動,否則視文件被改動。
具體的安裝步驟可以在網上查看。安裝好之後就可以使用該工具對系統進行檢查,默認是對整個系統進行檢測,這裡我們可以在某個目錄下對文件進行檢測,使用命令#tripwire --check.運行該命令之後會產生哪些文件是新增的、哪些改動過。

用戶管理安全
用戶管理這裡主要涉及用戶登錄密碼和用戶管理。這裡主要介紹一款工具來查看自己的密碼是否相對安全。john the ripper
John the Ripper免費的開源軟件,是一個快速的密碼破解工具,用於在已知密文的情況下嘗試破解出明文的破解密碼軟件,支持目前大多數的加密算法, 如DES、MD4、MD5等。它支持多種不同類型的系統架構,包括Unix、Linux、Windows、DOS模式、BeOS和OpenVMS,主要目 的是破解不夠牢固的Unix/Linux系統密碼。目前的最新版本是John the Ripper 1.7.3版,針對Windows平台的最新免費版為John the Ripper 1.7.0.1版。
John the Ripper的官方網站: http://www.openwall.com/john/
如何安裝,首先解壓源碼包之後進入解壓包中的src目錄,然後執行make、make clean linux-x86-any.
安裝好之後可以進入到run目錄下進行測試,執行./john -test.該結果給出了解密需要的一些時間

上面的salts指用戶數,針對傳統的DES解密速度為413414次/秒。

測試完之後就可以進行解密,該命令含有很多參數,這裡只講述簡單的方式。使用命令#./john -single "/etc/shadow"就可以顯示存在/etc/shadow中的用戶及對應密碼。

該結果顯示了我的密碼之前已經被破解了(這運行之前我已經運行了該命令一次)。如果john已經破解了用戶的密碼,她就回將解密的密碼放到當前目錄的john.pot文件中。
比如查看這個文件顯示
$6$V04bcTXNnRgUepZa$SFlIYTUDAkC9rlajU1oO4AozREGzGZrZvKocUkBtOOnlS9qJ/tt8VpV5jk9YIdEhPfIjs7LJ0IDUkI6sGxCZq0:wuyaalan
:前面的部分是用戶的密文,後面是對應用戶的密碼。

當然如果簡單的方式不能破解,可以使用字典解密。字典解密的成功與否是由字典是否完整為依據的。如果再有比較強的密碼可以結合-rules、-incremental、-rexternal等等。基本命令的使用查看john手冊。

進程安全
很多的入侵都是通過進程實現的,所以我們要時刻監視某些比較重要的進程。看其是否有不尋常的變化。這裡主要通過linux裡面的命令查看:主要有:who 、w 、ps、top

日志管理
如果系統被入侵了,並且入侵者在沒修改日志的情況下,我們可以通過查看日志來回放入侵行為。
在linux中主要有3個主要的日志子系統:鏈接時間日志、進程統計日志、錯誤日志。
鏈接時間日志記錄在/var/log/wtmp和/var/log/utmp中,用於跟蹤誰何時登錄了系統。其中utmp記錄當前登錄用戶的信息;wtmp記錄了用戶登錄系統和退出的時間記錄。以上兩個文件都是二進制文件。
進程統計日志給系統中的基本服務提供命令使用統計。
錯誤日志有syslogd後台進程記錄,系統中各種守護進程、用戶程序需要通過調用syslog向文件/var/log/messages記錄相關事件。

用戶程序以及內核如何通過syslog記錄消息。
用戶程序首先通過syslog庫函數將用戶消息通過syslogd後台進程輸出到log文件。
內核裡面產生日志通過printk將消息寫入到一個環形緩沖區,如果環形緩沖區填滿,printk在緩沖區的開始位置填寫數據。然後通過系統調用syslog將消息發送到klogd後台進程,klogd監聽    並得到內核消息之後,發送到syslogd後台進程,最後寫入到log中。
這裡使用的基本命令有:who、users、last、ac、lastlog等等。
Copyright © Linux教程網 All Rights Reserved