不同版本的Unix日志文件的目錄是不同的,最常用的目
錄是:/usr/adm 早期版本的
Unix /var/adm 較新版本的
Unix /var/log 用于Solaris,Linux,BSD等
/etc Unix system V早期版本
在這些目錄下,或其子目錄下,你可以找到以下日志文
件(也許是其中的一部分):
lastlog 記錄用戶最后一次成功登錄時間
loginlog 不良的登陸嘗試記錄
messages 記錄輸出到系統(tǒng)主控臺以及由syslog系統(tǒng)服務(wù)
程序產(chǎn)生的消息
utmp 記錄當前登錄的每個用戶
utmpx 擴展的utmp
wtmp 記錄每一次用戶登錄和注銷的歷史信息 wtmpx 擴
展的wtmp
vold.log 記錄使用外部介質(zhì)出現(xiàn)的錯誤
xferkig 記錄Ftp的存取情況 sulog 記錄su命令的使用
情況
acct 記錄每個用戶使用過的命令
aculog 撥出自動呼叫記錄
下面按順序仔細介紹一下
lastlog文件
Unix在lastlog日志文件中記錄每一個用戶注冊進入系統(tǒng)
的最后時間,在你每一次進入系統(tǒng)時,系統(tǒng)會顯示出這
個時間:
login: blackeyes
password: h3ll0
Last login :Tue Jul 27 09:55:50 on tty01
lastlog告訴用戶,要核對一下最后注冊進入系統(tǒng)的時間
是否爭確,若系統(tǒng)顯示的時間與你上次進入系統(tǒng)的時間
不符,說明發(fā)生了非授權(quán)用戶注冊,若這種情況發(fā)生
了,用戶應(yīng)該馬上修改帳戶口令,并通知管理員。
在每次注冊時,lastlog新的內(nèi)容沖掉老的內(nèi)容。
標準版本的Unix沒有提供服務(wù)程序可以閱讀lastlog文
件,有些程序可以提供這個服務(wù),跟我們這里要 談的東
西關(guān)系不太大,以后再說了。
loginlog文件
Unix system V版本中,可以把不成功的登錄行為記錄在
/var/adm/loginlog中。要登記不成功的注冊行為,可以
用下列命令建立/var/adm/loginlog文件:
#touch /var/adm/loginlog
#chmod 600 /var/adm/loginlog
#chown root /var/adm/loginlog
如果你知道一個系統(tǒng)的用戶名,而你又想猜出密碼,
/var/adm/loginlog就會記錄你的失敗的登錄嘗試 管理
員看看/var/adm/loginlog的內(nèi)容,你的企圖就露餡了:
#cat /var/adm/loginlog
hacker: from 202.88.88.xx: Tue Jul 27 02:40:50
2001
hacker: from 202.88.88.xx: Tue Jul 27 02:41:50
2001
hacker: from 202.88.88.xx: Tue Jul 27 02:42:50
2001
hacker: from 202.88.88.xx: Tue Jul 27 02:43:50
2001
hacker: from 202.88.88.xx: Tue Jul 27 02:44:50
2001
messages文件
記錄輸出到系統(tǒng)主控臺以及由syslog系統(tǒng)服務(wù)程序產(chǎn)生
的消息
先看看syslog問題
syslog采用可配置的、統(tǒng)一的系統(tǒng)登記程序,隨時從系
統(tǒng)各處
接受log請求,然后根據(jù)/etc/syslog.conf中的預(yù)先設(shè)定
把log
信息寫入相應(yīng)文件中、郵寄給特定用戶或者直接以消息
的方式
發(fā)往控制臺。值得注意的是,為了防止入侵者修改、刪
除messages
里的記錄信息,可以采用用打印機記錄或跨越網(wǎng)絡(luò)登記
的方式
來挫敗入侵者的企圖。
syslog.conf的詳細說明
以Sun Solaris operating system, version 2.5.1. 為
例
/etc/syslog.conf的一般格式如下:
設(shè)備.行為級別 [;設(shè)備.行為級別] 記錄行為
設(shè)備 描述
auth used by authorization systems (login)
認證系統(tǒng),即詢問用戶名和口令
cron used for the cron and at systems
系統(tǒng)定時系統(tǒng)
daemon system/netword daemon
其他系統(tǒng)的daemons
kern produced by kernel messages
內(nèi)核
lpr printing system
打印機系統(tǒng)
mail mail system

郵件系統(tǒng)
mark internally used for time stamps
定時發(fā)送消息的時標程序
news reserved for the news system
新聞系統(tǒng)
user default facility, used for any program
正式用戶處理程序
uucp reserved for the uucp system
uucp子系統(tǒng)
local0..7 reserved for local use
留做指定站點使用
行為級別 描述
debug normally used for debugging
調(diào)試程序時的消息
info informational messages
信息消息
notice conditions that may require attention
要注意的消息
warning any warnings
警告
err any errors
一般性錯誤
crit critical conditions like hardware
problems 嚴重情況
alert any condition that demand immediate
attention 應(yīng)該立即被糾正的情況
emerg any emergency condition
緊急情況
none Do not send messages from the
indicated 指定的服務(wù)程序未給所選擇的
facility to the selected file.
文件發(fā)送信息[Page]
記錄歸屬(舉例) 描述
/dev/console send messages to devices
控制臺
/var/adm/messages write messages to files
寫入/var/adm/messages
@loghost forward messages to a
loghost 其他的日志記錄服務(wù)器
fred,user1 send messages to users
傳送消息給用戶
* send messages to all
logged-in users 傳送消息給所有的在線用戶
下面是一個/etc/syslog.conf的模式
*.notice;mail.info /var/log/notice
*.crit /var/log/critical
kern,mark.debug /dev/console
kern.err @server
*.emerg *
*.alert root,operator
*.alert;auth.warning /var/log/auth
如果用打印機來記錄日志文件,可以采用如下方法:
把打印機連接到終端端口/dev/ttya上,在
/etc/syslog.conf中加入配置語句,例如:
auth.* dev/ttya
這樣就可以記錄如不正確口令等信息了。 如果采用跨越網(wǎng)絡(luò)登記,可以在/etc/syslog.conf中加
入配置語句,例如:
auth.* @loghost
可以采用非unix主機來作為日志記錄機,這樣的話入侵
者就算是得到了root權(quán)限也沒有辦法修改日志文件。
在/var/adm/messages中的一些記錄,可以找出入侵者的
痕跡,舉例如下:
1。Jun 21 06:17:55 youserver
/usr/dt/bin/rpc.ttdbserverd[371]:
_Tt_file_system::findBestMount.
Jun 21 06:17:55 youserver inetd[146]:
/usr/dt/bin/rpc.ttdbserverd: Segmentation Fault -
cod
Jun 21 06:17:58 youserver inetd[146]:
/usr/dt/bin/rpc.ttdbserverd: Illegal Instruction
- cd
入侵者利用rpc.ttdbserverd漏洞進攻服務(wù)器
2。"Sep 8 09:08:03 xxx login: REPEATED LOGIN
FAILURES ON /dev/pts/3 FROM xxxxx "
入侵者采用暴力試口令命令失敗
3。"Sep 8 09:08:03 xxx su: 'su root' failed for
xxxxx on /dev/pts/2"
入侵者想利用su命令成為root失敗
關(guān)于messages可以利用tail -f /var/adm/messages命令
來查看
Unix系統(tǒng)的口令文件
/etc/passwd文件是UNIX安全的關(guān)鍵文件之一.該文件用
于用戶登錄時校驗用戶的口令,當然應(yīng)當僅對root可寫.
文件中每行的一般格式為:
LOGNAME:PASSWORD:UID:GID:USERINFO:HOME:SHELL
每行的頭兩項是登錄名和加密后的口令,后面的兩個數(shù)是
UID和GID,接著的一項是系統(tǒng)管理員想寫入的有關(guān)該用戶
的任何信息,最后兩項是兩個路徑名: 一個是分配給用戶
的HOME目錄,第二個是用戶登錄后將執(zhí)行的shell(若為空
格則 缺省為/bin/sh).
(1)口令時效
/etc/passwd文件的格式使系統(tǒng)管理員能要求用戶定期地
改變他們的口令.在口令文件中可以看到,有些加密后的
口令有逗號,逗號后有幾個字符和一個 冒號.如:
steve:xyDfccTrt180x,M.y8:0:0:admin:/:/bin/sh
restrict:pomJk109Jky41,.1:0:0:admin:/:/bin/sh
pat:xmotTVoyumjls:0:0:admin:/:/bin/sh
可以看到,steve的口令逗號后有4個字符,restrict有2
個,pat沒有逗號.
逗號后第一個字符是口令有效期的最大周數(shù),第二個字符
決定了用戶再次修改口信之前,原口令應(yīng)使用的最小周數(shù)
(這就防止了用戶改了新口令后立刻又改回成老口令).其
余字符表明口令最新修改時間.
要能讀懂口令中逗號后的信息,必須首先知道如何用
passwd_esc計數(shù),計數(shù)的方法是: .=0 /=1 0-9=2-11
A-Z=12-37 a-z=38-63
系統(tǒng)管理員必須將前兩個字符放進/etc/passwd文件,以
要求用戶定期的修改口令,另外兩個字符當用戶修改口令
時,由passwd命令填入.
注意:若想讓用戶修改口令,可在最后一次口令被修改時,
放兩個".",則下一次用戶登錄時將被要求修改自己的口
令.
有兩種特殊情況:
. 最大周數(shù)(第一個字符)小于最小周數(shù)(第二個字符),則
不允許用戶修改口令,僅超級用戶可以修改用戶的口令.
. 第一個字符和第二個字符都是".",這時用戶下次登錄
時被要求修改口令,修改口令后,passwd命令將"."刪除,
此后再不會要求用戶修改口令.
(2)UID和GID
/etc/passwd中UID信息很重要,系統(tǒng)使用UID而不是登錄
名區(qū)別用戶.一般來說,用戶的UID應(yīng)當是獨一無二的,其
他用戶不應(yīng)當有相同的UID數(shù)值.根據(jù)慣 例,從0到99的
UID保留用作系統(tǒng)用戶的UID(root,bin,uucp等).
如果在/etc/passwd文件中有兩個不同的入口項有相同的
UID,則這兩個用戶對相互的文件具有相同的存取權(quán)限.
/etc/group文件含有關(guān)于小組的信息,/etc/passwd中的
每個GID在本文件中應(yīng)當有相應(yīng)的入口項,入口項中列出
了小組名和小組中的用戶.這樣可方便地了 解每個小組
的用戶,否則必須根據(jù)GID在/etc/passwd文件中從頭至尾
地尋找同組 用戶.
/etc/group文件對小組的許可權(quán)限的控制并不是必要的,
因為系統(tǒng)用UID,GID(取自/etc/passwd)決定文件存取權(quán)
限,即使/etc/group文件不存在于系統(tǒng)中,具有相同的GID
用戶也可以小組的存取許可權(quán)限共享文件.
小組就像登錄用戶一樣可以有口令.如果/etc/group文件
入口項的第二個域為非空,則將被認為是加密口
令,newgrp命令將要求用戶給出口令,然后將口令加密,再
與該域的加密口令比較.
給小組建立口令一般不是個好作法.第一,如果小組內(nèi)共
享文件,若有某人猜著小組口令,則該組的所有用戶的文
件就可能泄漏;其次,管理小組口令很費事, 因為對于小
組沒有類似的passwd命令.可用/usr/lib/makekey生成一
個口令寫入/etc/group.
以下情況必須建立新組:
(1)可能要增加新用戶,該用戶不屬于任何一個現(xiàn)有的小
組.
(2)有的用戶可能時常需要獨自為一個小組.
(3)有的用戶可能有一個SGID程序,需要獨自為一個小組.
(4)有時可能要安裝運行SGID的軟件系統(tǒng),該軟件系統(tǒng)需
要建立一個新組.
要增加一個新組,必須編輯該文件,為新組加一個入口項.
由于用戶登錄時,系統(tǒng)從/etc/passwd文件中取GID,而不
是從/etc/group中 取GID,所以group文件和口令文件應(yīng)
當具有一致性.對于一個用戶的小組,UID和GID應(yīng)當是相
同的.多用戶小組的GID應(yīng)當不同于任何用戶的UID,一般
為5位數(shù),這樣在查看/etc/passwd文件時,就可根據(jù)5位數(shù)
據(jù)的GID識別多用戶小組,這將減少 增加新組,新用戶時
可能產(chǎn)生的混淆.
愛華網(wǎng)



