[转]UNIX日志系统

来源:互联网 发布:三星a7root软件 编辑:程序博客网 时间:2024/05/16 14:08

UNIX日志系统


from:  http://kunming.cyberpolice.cn/aqjs/20002.html  
 


基本日志文件
不同版本的Unix日志文件的目录是不同的,最常用的目录是:

/usr/adm 早期版本的
Unix /var/adm 较新版本的
Unix /var/log 用于Solaris,Linux,BSD等
/etc Unix system V早期版本
在这些目录下,或其子目录下,你可以找到以下日志文件(也许是其中的一部分):

lastlog 记录用户最后一次成功登录时间
loginlog 不良的登陆尝试记录
messages 记录输出到系统主控台以及由syslog系统服务程序产生的消息
utmp 记录当前登录的每个用户
utmpx 扩展的utmp
wtmp 记录每一次用户登录和注销的历史信息 wtmpx 扩展的wtmp
vold.log 记录使用外部介质出现的错误
xferkig 记录Ftp的存取情况 sulog 记录su命令的使用情况
acct 记录每个用户使用过的命令
aculog 拨出自动呼叫记录
下面按顺序仔细介绍一下

lastlog文件
Unix在lastlog日志文件中记录每一个用户注册进入系统的最后时间,在你每一次进入系统时,系统会显示出这个时间:

login: blackeyes
password: h3ll0
Last login :Tue Jul 27 09:55:50 on tty01

lastlog告诉用户,要核对一下最后注册进入系统的时间是否争确,若系统显示的时间与你上次进入系统的时间不符,说明发生了非授权用户注册,若这种情况发生了,用户应该马上修改帐户口令,并通知管理员。
在每次注册时,lastlog新的内容冲掉老的内容。
标准版本的Unix没有提供服务程序可以阅读lastlog文件,有些程序可以提供这个服务,跟我们这里要 谈的东西关系不太大,以后再说了。

loginlog文件
Unix system V版本中,可以把不成功的登录行为记录在/var/adm/loginlog中。要登记不成功的注册行为,可以用下列命令建立/var/adm/loginlog文件:
#touch /var/adm/loginlog
#chmod 600 /var/adm/loginlog
#chown root /var/adm/loginlog
如果你知道一个系统的用户名,而你又想猜出密码,/var/adm/loginlog就会记录你的失败的登录尝试 管理员看看/var/adm/loginlog的内容,你的企图就露馅了:
#cat /var/adm/loginlog
hacker: from 202.88.88.xx: Tue Jul 27 02:40:50 1999
hacker: from 202.88.88.xx: Tue Jul 27 02:41:50 1999
hacker: from 202.88.88.xx: Tue Jul 27 02:42:50 1999
hacker: from 202.88.88.xx: Tue Jul 27 02:43:50 1999
hacker: from 202.88.88.xx: Tue Jul 27 02:44:50 1999

messages文件

记录输出到系统主控台以及由syslog系统服务程序产生的消息

先看看syslog问题
syslog采用可配置的、统一的系统登记程序,随时从系统各处
接受log请求,然后根据/etc/syslog.conf中的预先设定把log
信息写入相应文件中、邮寄给特定用户或者直接以消息的方式
发往控制台。值得注意的是,为了防止抢劫服务器者修改、删除messages
里的记录信息,可以采用用打印机记录或跨越网络登记的方式
来挫败抢劫服务器者的企图。

syslog.conf的详细说明

以Sun Solaris operating system, version 2.5.1. 为例

/etc/syslog.conf的一般格式如下:

设备.行为级别 [;设备.行为级别] 记录行为


设备 描述
auth used by authorization systems (login) 认证系统,即询问用户名和口令
cron used for the cron and at systems 系统定时系统
daemon system/netword daemon 其他系统的daemons
kern produced by kernel messages 内核
lpr printing system 打印机系统
mail mail system 邮件系统
mark internally used for time stamps 定时发送消息的时标程序
news reserved for the news system 新闻系统
user default facility, used for any program 正式用户处理程序
uucp reserved for the uucp system uucp子系统
local0..7 reserved for local use 留做指定站点使用


行为级别 描述
debug normally used for debugging 调试程序时的消息
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 应该立即被纠正的情况
emerg any emergency condition 紧急情况
none Do not send messages from the indicated 指定的服务程序未给所选择的
facility to the selected file. 文件发送信息


记录归属(举例) 描述

/dev/console send messages to devices 控制台
/var/adm/messages write messages to files 写入/var/adm/messages
@loghost forward messages to a loghost 其他的日志记录服务器
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
这样就可以记录如不正确口令等信息了。

如果采用跨越网络登记,可以在/etc/syslog.conf中加入配置语句,例如:

auth.* @loghost

可以采用非unix主机来作为日志记录机,这样的话抢劫服务器者就算是得到了root权限也没有办法修改日志文件。

在/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漏洞进攻服务器

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失败


关于messages可以利用tail -f /var/adm/messages命令来查看




原创粉丝点击