![[ 永远的UNIX::UNIX技术资料的宝库 ]](/images/title.gif)
|
| 首页 > 编程技术 > Shell > 正文 |
 |
| Linux程式设计-11.Shell Script(bash)--(4)档案系统检查 |
| http://www.openchess.org/noitatsko/programming/ (2001-05-25 11:00:00) |
系统安全一向是大多数电脑用户关心的事,在UNIX系统中,最重视的事,即系统中有没有"木马"(Trojan horse)。不管Trojan horse如何放进来的,有一点始终会不变,即被放置木马的档案,其档案日期一定会被改变,甚至会有其它的状态改变。此外,许多状况下,系统会多出一些不知名的档案。因此,平日检查整个档案系统的状态是否有被改变,将所有状态有改变的档案,以及目前有那些程式正在执行,自动报告给系统管理员,是个避免坐上"木马"的良方。
--------------------------------------------------------------------------------
#!/bin/sh
# Filename : whatever_you_name_it
DIRS="/etc /home /bin /sbin /usr/bin /usr/sbin /usr/local /var /your_directory"
ADMIN="email@your.domain.com"
FROM="admin@your.domain.com"
# 写入Sendmail的标头
echo "Subject: $HOSTNAME filesystem check" > /tmp/today.mail
echo "From: $FROM" >> /tmp/today.mail
echo "To: $ADMIN" >> /tmp/today.mail
echo "This is filesystem report comes from $HOSTNAME" >> /tmp/today.mail
# 报告目前正在执行的程式
ps axf >> /tmp/today.mail
# 档案系统检查
echo "File System Check" >> /tmp/today.mail
ls -alR $DIRS | gzip -9 > /tmp/today.gz
zdiff /tmp/today.gz /tmp/yesterday.gz >> /tmp/today.mail
mv -f /tmp/today.gz /tmp/yesterday.gz
# 寄出信件
sendmail -t < /tmp/today.mail
然後把它放到一个不显眼的地方去,让别人找不到。
把它加入crontab中。
30 7 * * * /full_check_script_path/whatever_you_name_it 1> /dev/null 2> /dev/null #上班前检查
有些档案是固定会更动的,像/var/log/messages、/var/log/syslog、/dev/ttyX等等,不要太大惊小怪。
(http://www.fanqiang.com)
进入【UNIX论坛】
|
|
| 相关文章 |
Linux程式设计-31.工作群资讯管理(grp) (2001-05-27 22:08:00) Linux程式设计-30.使用者资讯管理(pwd) (2001-05-27 21:04:00) Linux程式设计-29.时间处理 (2001-05-27 20:10:01) Linux程式设计-28.GNU Make (2001-05-27 19:00:00) Linux程式设计-27.GNU Debugger (2001-05-27 18:08:01) Linux程式设计-26.PIPE (2001-05-27 17:04:00) Linux程式设计-25.Message Queues (2001-05-27 16:10:00) Linux程式设计-24.Semaphores (2001-05-27 15:00:00) Linux程式设计-23.共享记忆体(Shared Memory) (2001-05-27 14:08:00) Linux程式设计-20.getopt (2001-05-27 13:04:00)
|
===更多相关=== |
|
|
 |
★ 樊强制作 欢迎分享 ★ |