unix服务器安全策略

来源:互联网 发布:淘宝开书店没证咋办 编辑:程序博客网 时间:2024/06/05 03:37

 

/etc/profile运行umask 077

chmod 550 gcc,gdb,

 vi /etc/ssh/sshd_config

最后一行加入AllowUser root sysadmin

主机直接暴露在Internet或者位于其它危险的环境,有很多shell帐户或者提供HTTP和FTP等网络服务,一般应该在安装配置完成后使用 如下命令:

  chattr -R +i /bin /boot /etc /lib /sbin

  chattr -R +i /usr/bin /usr/include /usr/lib /usr/sbin

  chattr +a /var/log/messages /var/log/secure (...)

不让/有suid权利

1步mount -o remount,nosuid /

2步mount

3步 mount -o remount /

禁止所有ping的外出和进入的封包echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

 通过分析Web服务器的类型,大致可以推测出操作系统的类型,比如,Windows使用IIS来提供HTTP服务,而Linux中最常见的是Apache。

  默认的Apache配置里没有任何信息保护机制,并且允许目录浏览。通过目录浏览,通常可以获得类似 “Apache/1.3.27 Server at apache.linuxforum.net Port 80”或“Apache/2.0.49 (Unix) PHP/4.3.8”的信息。

  通过修改配置文件中的ServerTokens参数,可以将Apache的相关信息隐藏起来。但是,Red Hat Linux运行的Apache是编译好的程序,提示信息被编译在程序里,要隐藏这些信息需要修改Apache的源代码,然后,重新编译安装程序,以实现替换里面的提示内容。

  以Apache 2.0.50为例,编辑ap_release.h文件,修改“#define AP_SERVER_BASEPRODUCT / "Apache/"”为“#define AP_SERVER_BASEPRODUCT /"Microsoft-IIS/5.0/"”。编辑 os/unix/os.h文件,修改“#define PLATFORM /"Unix/"”为“#define PLATFORM /"Win32/ "”。修改完毕后,重新编译、安装Apache。

  Apache安装完成后,修改httpd.conf配置文件,将“ServerTokens Full”改为 “ServerTokens Prod”;将“ServerSignature On”改为“ServerSignature Off”,然后存盘退出。重新启动Apache后,用工具进行扫描,发现提示信息中已经显示操作系统为Windows。

 

DNS服务器安全配置useradd -s /bin/false -d /dev/null named

mkdir /var/run/named

chown named.named /var/run/named

chmod 700 /var/run/named

named -u named

echo "/usr/local/sbin/named -u named" >> /etc/rc.local

 

md5sum检验

md5sum文件的内容

/bin/bash

/bin/sh

/bin/pwd

/bin/uname

然后执行md5sum `cat md5sum` >list.md5

然后执行md5sum -c list.md5就能看出是否有改动的文件了

 

 

ssh的IP登陆访问限制

首先编辑/etc/pam.d/sshd

#%PAM-1.0
auth       include      system-auth
account    required     pam_nologin.so
account    include      system-auth
account    required     pam_access.so
password   include      system-auth
session    optional     pam_keyinit.so force revoke
session    include      system-auth
session    required     pam_loginuid.so

注意上面添加的account    required     pam_access.so
然后到/etc/security/access.conf里面编辑

-: cnbird : ALL EXCEPT 192.168.0.

只能让cnbird从192.168.0.这个网段访问


log日志的变态设置方法

首先介绍的是syslog的替代品,rsyslogd可以记录进mysql数据库

下载地址:http://www.rsyslog.com/

Syslog-ng

http://www.balabit.com/network-security/syslog-ng/

注意:绝对不要以root来运行日志检查程序。相反,应当先构造一个logs组,并将所有的日志文件chgrp为该组并赋予其读权限,然后以该组中的某个用户来执行日志检查程序.

日志分析软件:

logsentry:http://sourceforge.net/projects/sentrytools/

swatch:http://packetstormsecurity.org/UNIX/IDS/swatch-3.0b4.tar.gz

logsurfer:http://www.crypt.gen.nz/logsurfer/

http://tech.ddvip.com/2007-03/117338249620416.html 用LogSurfer+在Linux上监督登录文件


愚蠢的黑客cat /dev/null > /var/log/messages

防止这样的垃圾黑客chattr +a /var/log/messages]


最最变态的log日志服务器可以使用passlogd这个工具来进行伪造,passlogd把网卡设置成混杂模式,来监听和记录所有的syslog包.如果是交换环境中把交换机配置为向这一主机对应的端口转发所有包就可以了.


加密syslog传输过程

使用stunnel来进行双向加密

stunnel下载地址www.stunnel.org


原创粉丝点击