一.centos 系统安全方面
1、用防火墙关闭不须要的任何端口,别人PING不到服务器,威胁自然减少了一大半
2、更改SSH端口,最好改为10000以上,别人扫描到端口的机率也会下降
3、删除系统臃肿多余的账号:
userdel adm
userdel lp
userdel sync
userdel shutdown
userdel halt
userdel news
userdel uucp
userdel operator
userdel games
userdel gopher
userdel ftp 如果你不允许匿名FTP,就删掉这个用户帐号
groupdel adm
groupdel lp
groupdel news
groupdel uucp
groupdel games
groupdel dip
groupdel pppusers
4、更改下列文件权限,使任何人没有更改账户权限:
chattr +i /etc/passwd
chattr +i /etc/shadow
chattr +i /etc/group
chattr +i /etc/gshadow
5、chmod 600 /etc/xinetd.conf
6、关闭FTP匿名用户登陆
二.PHP 安全篇
1、开启安全模式(做为商业应用的服务器不建议开启)
#vi /usr/local/Zend/etc/php.ini (没装ZO时php.ini文件位置为:/etc/php.ini)
safe_mode = On
2、锁定PHP程序应用目录
#vi /etc/httpd/conf.d/virtualhost.conf
加入
php_admin_value open_basedir /home/*** (***为站点目录)
3、千万不要给不必要的目录给写权限,也就是777权限,根目录保持为711权限,如果不能运行PHP请改为755
4、屏蔽PHP不安全的参数(webshell)
#vi /usr/local/Zend/etc/php.ini (没装ZO时php.ini文件位置为:/etc/php.ini)
disable_functions = system,exec,shell_exec,passthru,popen
以下为我的服务器屏蔽参数:
disable_functions = passthru,exec,shell_exec,system,set_time_limit,ini_alter,dl,
pfsockopen,openlog,syslog,readlink,symlink,link,leak,fsockopen,popen,escapeshell
cmd,error_log
一般就用:
disable_functions = dl,exec,passthru,proc_open,proc_close,shell_exec,system