基本日志文件 不同版本的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命令来查看
|