020-29133788
    资 讯
    您的位置:首页 >> 资 讯 >> LINUX应用 >> LINUX安装 >> 正文
    UNIX安全构架的实操经验

    点击:   发布日期:2013-01-05

    本文来自 www.020fix.com
    下面是一些个人的经验的总结,相信对于是否受到入侵的UNIX或者UNIX-clonefreebsd,openbsd,netbsd,linux,etc)都是有用的:

    首先大家可以通过下面的系统命令和配置档来跟踪入侵者的来源路径:

    1.who------(查看谁登陆到系统中)

    2.w--------(查看谁登陆到系统中,且在做什么)

    3.last-----(显示系统曾经被登陆的用户和TTYS)

    4.lastcomm-(显示系统过去被运行的命令)

    5.netstat--(可以查看现在的网路状态,如telnet到你机器上来的用户的IP位址,还有一些其他的网路状态。)

    6.查看router的信息。

    7./var/log/messages查看外部用户的登陆状况

    8.用finger 查看所有的登陆用户。

    9.查看用户目录下/home/username下的登陆历史档(.history.rchist,etc).后注:'who','w','last',和'lastcomm'这些命令依靠的是/var/log/pacct,/var/log/wtmp,/etc/utmp来报告资讯给你。许多精明的系统管理员对于入侵者都会遮罩这些日志资讯(/var/log/*,/var/log/wtmp,etc)建议大家安装tcp_wrapper非法登陆到你机器的所有连接)

    接下来系统管理员要关闭所有可能的后门,一定要防止入侵者从外部访问内部网路的可能。如果入侵者发现系统管理员发现他已经进入系统,他可能会通过rm -rf /*试着隐蔽自己的痕迹.

    第三,我们要保护下面的系统命令和系统配置档以防止入侵者替换获得修改系统的权利。

    1. /bin/login

    2. /usr/etc/in.*档(例如:in.telnetd)

    3.inetd超级守护进程(监听埠,等待请求,派生相应伺服器进程)唤醒的服务.(下列的伺服器进程通常由inetd启动:

    fingerd(79),ftpd(21),

    rlogind(klogin,eklogin,etc),rshd,talkd,telnetd(23),tftpd. inetd还可以启动其他内部服务,

    /etc/ inetd.conf中定义的服务.

    4.不允非常ROOT用户使用netstat,ps,ifconfig,su

    第四,系统管理员要定期去观察系统的变化(如:档,系统时间,等)

    1. #ls -lac去查看档真正的修改时间。

    2. #cmp file1 file2来比较文件大小的变化。

    第五,我们一定要防止非法用户使用suid(set-user-id)程式来得到ROOT 的许可权。

    1.首先我们要发现系统中所有的SUID程式。

     #find / -type f -perm -4000 -ls

    2.然后我们要分析整个系统,以保证系统没有后门。

    第六,系统管理员要定时的检查用户的.rhosts,.forward文件

    1.#find / -name .rhosts -ls -o -name .forward -ls

    来检查.rhosts档是否包含'++',有则用户可以远端修改这个档而不需要任何口令。

    2.#find / -ctime -2 -ctime +1 -ls

    来查看不到两天以内修改的一些档,从而判断是否有非法用户闯入系统。

    第七,要确认你的系统当中有最新的sendmail守护程式,因为老的sendmail守护程式允许其他UNIX机器远端运行一些非法的命令。

    第八,系统管理员应当要从你机器,作业系统生产商那里获得安全补丁程式,如果是自由软体的话(如Linux平台,建议大家可以到linux.box.sk来获得最好的安全程式和安全资料。)

    第九,下面有一些检查方法来监测机器是否容易受到攻击。

    1.#rpcinfo -p来检查你的机器是否运行了一些不必要的进程。

    2.#vi /etc/hosts.equiv档来检查你不值得信任的主机,去掉。

    3.如果没有遮罩/etc/inetd.conf中的tftpd,请在你的/etc/inetd.conf加入tftp dgram udp wait nobody /usr/etc/in.tftpd

    in.tftpd -s /tftpboot

    4.建议你备份/etc/rc.conf档,写一个shell script定期比较 cmp rc.conf backup.rc.conf

    5.检查你的 inetd.conf和/etc/services文件,确保没有非法用户在里面添加一些服务。

    6.把你的系统的/var/log/*下面的日志档备份到一个安全的地方,以防止入侵者#rm /var/log/*

    7.一定要确保匿名FTP伺服器的配置正确,我的机器用的是proftpd,在proftpd.conf一定要配置正确。

    8.备份好/etc/passwd,然后改变root口令。一定要确保此档不能够入侵者访问,以防止它猜测。

    9.如果你还不能够防止入侵者的非法闯入,你可以安装ident后台守护进程和TCPD后台守护进程来发现入侵者使用的帐号!

    10.确保你的控制台终端是安全的,以防止非法用户能够远端登陆你的网路上来。

    11.检查hosts.equiv,.rhosts,hosts,lpd都有注释标识#,如果一个入侵者用它的主机名代替了#,那么就意味着他不需要任何口令就能够访问你的机器。