CentOS系统安全设置
1.禁止ping [root@zh888 ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all //临时禁止ping [root@zh888 ~]# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all //临时允许ping 如果要永久ping可以把第一句 [root@zh888 ~]# echo "echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all">>/etc/rc.local [root@zh888 ~]# cat /etc/rc.local #!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff.touch /var/lock/subsys/local
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
2.用iptables防火墙禁止(或丢弃) icmp 包
[root@zh888 ~]# iptables -A INPUT -p icmp -j DROP [root@zh888 ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination DROP icmp -- 0.0.0.0/0 0.0.0.0/0Chain FORWARD (policy ACCEPT)
target prot opt source destinationChain OUTPUT (policy ACCEPT)
target prot opt source destination[root@zh888 ~]# iptables -F INPUT //清理INPUT
[root@zh888 ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destinationChain FORWARD (policy ACCEPT)
target prot opt source destinationChain OUTPUT (policy ACCEPT)
target prot opt source destination 3.、更改SSH端口,最好改为10000以上,防止别人扫描顺便建立一个普通用户来登录然后直接切换到root [root@zh888 ~]# echo "port=10000">>/etc/ssh/sshd_config [root@zh888 ~]# echo "PermitRootlogin no">>/etc/ssh/sshd_config [root@zh888 ~]# service sshd restart 停止 sshd: [确定] 启动 sshd: [确定]~]# netstat -ntlp
Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 1631/snmpd tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 1748/smbd tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1607/portmap tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1917/dnsmasq tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1726/vsftpd tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 1748/smbd tcp 0 0 :::10000 :::* LISTEN 3023/sshd //修改了端口22默认端口。[test@zh888 ~]$ su - root//切换到root
口令: [root@zh888 ~]# set|grep LOGNAME//然后查看环境变量的LOGNAME LOGNAME=root 4.[root@zh888 ~]# chattr +i /etc/passwd /etc/group /etc/gshadow /etc/shadow //利用chattr +i或者-i来修改权限. [root@zh888 ~]# chmod 777 /etc/passwd chmod: 更改 “/etc/passwd” 的权限: 不允许的操作 5.[root@zh888 ~]# chmod 600 /etc/xinetd.conf //修改xinetd.conf配置文件权限,因为已经修改好了。主只有读和写。 chmod: 更改 “/etc/xinetd.conf” 的权限: 不允许的操作 [root@zh888 ~]# ll /etc/xinetd.conf -rw------- 1 root root 1001 2011-05-31 /etc/xinetd.conf 6.删除不太常用的用户和组adm lp sync shutdown halt news uucp operator games gopher组groupdel adm groupdel lp groupdel news groupdel uucp groupdel games groupdel dip groupdel pppusers
7.禁止ip原路由也就是ip包包含到达目的地的详细路径信息,是非常危险的。 fro f in /proc/sys/net/ipv4/conf/* /accept_source_route;do echo 0 > $f done 上面是禁止所有网络界面。8.使TCP SYN Cookie保护生效,SYN Attack是一种拒绝服务***方式,会消耗系统所有资源,迫使系统重启,
[root@zh888 ~]# echo "echo 1 >/proc/sys/net/ipv4/tcp_syncookies">>/etc/rc.local //让系统启动可以生效 [root@zh888 ~]# cat /etc/rc.local //查看/etc/rc.local文件 #!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff.touch /var/lock/subsys/local
#/usr/local/mysql/libexec/mysqld --user=root&
#/usr/local/apache/bin/apachectl start #modprobe ip_conntrack_ftp #route add default gw 192.168.20.254 #echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all fro f in /proc/sys/net/ipv4/conf/*/accept_source_route;do echo 0 > done fro f in /proc/sys/net/ipv4/conf/*/accept_source_route;do echo 0 > done echo 1 >/proc/sys/net/ipv4/tcp_syncookies9.[root@zh888 ~]# chattr +i /etc/services //修改/etc/services端口文件的属性
10.[root@zh888 ~]# cat /etc/securetty //注释掉不用的tty前面加#就可以了。只允许root为tty1设备登录,如果其它可以用su - root来切换。
console vc/1 vc/2 vc/3 vc/4 vc/5 vc/6 vc/7 vc/8 vc/9 vc/10 vc/11 tty1 #tty2 #tty3 #tty4 #tty5 #tty6 #tty7 #tty8 #tty9 #tty10 #tty1111.关闭不需要的服务可以用ntsysv来关闭。
[root@zh888 ~]# runlevel N 3 //3级别因为修改了/etc/sysconfig/i18n 所以是中文显示grep最好用on off来比较好。 [root@zh888 ~]# cat /etc/sysconfig/i18n #LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" LANG="zh_CN.GB18030" [root@zh888 ~]# chkconfig --list|grep 3:启用anacron 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
apmd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 auditd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 kudzu 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭 libvirt-guests 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭 libvirtd 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭 mdmonitor 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 network 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 ntpd 0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:关闭 6:关闭 portmap 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 readahead_early 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 readahead_later 0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:启用 6:关闭 restorecond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 smb 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 snmpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 snmptrapd 0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:关闭 6:关闭 sshd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 syslog 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 sysstat 0:关闭 1:关闭 2:启用 3:启用 4:关闭 5:启用 6:关闭 vsftpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 xendomains 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭 xinetd 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭 yum-updatesd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭