CentOS安全设置 II
时间:2014-11-20 21:26 来源:linux.it.net.cn 作者:IT
1、用防火墙关闭不须要的任何端口,别人PING不到服务器,威胁自然减少了一大半。
防止别人ping的方法:
1)命令提示符下打,0表示允许,1表示禁止
echo 1 > /proc/sys/net/ipv4/icmp_ignore_all
2)用防火墙禁止(或丢弃) icmp 包
iptables -A INPUT -p icmp -j DROP
3)对所有用ICMP通讯的包不予响应,比如:
PING TRACERT
2、开启安全模式(做为商业应用的服务器不建议开启)
#vi /usr/local/Zend/etc/php.ini(没装ZO时php.ini文件位置为:/etc/php.ini) . safe_mode = On
3、锁定PHP程序应用目录
#vi /etc tpd/conf.d irtualhost.conf php_admin_value open_basedir /home/*** (***为站点目录) !
4、千万不要给不必要的目录给写权限,也就是777权限,根目录保持为711权限,如果不能运行PHP请改为755 。
5、屏蔽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 .
以上的方法,就很轻松的解决了CentOS服务器的安全问题。
6、更改SSH端口并限制SSH登陆的IP
更改SSH端口,最好改为10000以上,别人扫描到端口的机率也会下降
vi /etc/ssh/sshd_config
将PORT改为1000以上端口。同时,创建一个普通登录用户,并取消直接root登录
useradd 'username' passwd 'username' vi /etc/ssh/sshd_config
在最后添加如下一句:
PermitRootLogin no #取消root直接远程登录
7、更改下列文件权限,使任何人没有更改账户权限:
chattr +i /etc/passwd chattr +i /etc/shadow chattr +i /etc/group chattr +i /etc/gshadow chmod 600 /etc/xinetd.conf
8、删除系统臃肿多余的账号:
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
更改下列文件权限,使任何人没有更改账户权限:
chattr i /etc/passwd chattr i /etc/shadow chattr i /etc/group chattr i /etc/gshadow
最后记得关闭FTP匿名用户登陆。
(责任编辑:IT)
1、用防火墙关闭不须要的任何端口,别人PING不到服务器,威胁自然减少了一大半。 防止别人ping的方法: 1)命令提示符下打,0表示允许,1表示禁止 echo 1 > /proc/sys/net/ipv4/icmp_ignore_all 2)用防火墙禁止(或丢弃) icmp 包 iptables -A INPUT -p icmp -j DROP 3)对所有用ICMP通讯的包不予响应,比如: PING TRACERT 2、开启安全模式(做为商业应用的服务器不建议开启) #vi /usr/local/Zend/etc/php.ini(没装ZO时php.ini文件位置为:/etc/php.ini) . safe_mode = On 3、锁定PHP程序应用目录 #vi /etc tpd/conf.d irtualhost.conf php_admin_value open_basedir /home/*** (***为站点目录) ! 4、千万不要给不必要的目录给写权限,也就是777权限,根目录保持为711权限,如果不能运行PHP请改为755 。 5、屏蔽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 . 以上的方法,就很轻松的解决了CentOS服务器的安全问题。 6、更改SSH端口并限制SSH登陆的IP 更改SSH端口,最好改为10000以上,别人扫描到端口的机率也会下降 vi /etc/ssh/sshd_config 将PORT改为1000以上端口。同时,创建一个普通登录用户,并取消直接root登录 useradd 'username' passwd 'username' vi /etc/ssh/sshd_config 在最后添加如下一句: PermitRootLogin no #取消root直接远程登录 7、更改下列文件权限,使任何人没有更改账户权限: chattr +i /etc/passwd chattr +i /etc/shadow chattr +i /etc/group chattr +i /etc/gshadow chmod 600 /etc/xinetd.conf 8、删除系统臃肿多余的账号: 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 更改下列文件权限,使任何人没有更改账户权限: chattr i /etc/passwd chattr i /etc/shadow chattr i /etc/group chattr i /etc/gshadow 最后记得关闭FTP匿名用户登陆。 (责任编辑:IT) |