首页 » 服务器 » 正文

CentOS系统安全设置

防止别人ping的方法:

1)命令提示符下打
echo 1 > /proc/sys/net/ipv4/icmp_ignore_all

2)用防火墙禁止(或丢弃) icmp 包
iptables -A INPUT -p icmp -j DROP

3)对所有用ICMP通讯的包不予响应
比如PING TRACERT

2、更改SSH端口,最好改为10000以上,别人扫描到端口的机率也会下降

vi /etc/ssh/sshd_config
将PORT改为1000以上端口

同时,创建一个普通登录用户,并取消直接root登录
useradd ‘username’
passwd ‘username’

vi /etc/ssh/sshd_config
在最后添加如下一句:
PermitRootLogin no         #取消root直接远程登录

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匿名用户登陆

CentOS安装好,默认只打开了22端口,如果希望开放其他端口的话,需要打开所需端口。
比如打开http的默认端口80
编辑iptables

vi /etc/sysconfig/iptables

添加

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3001 -j ACCEPT

重新启动服务

/sbin/service iptables restart

查看端口是否开放

/sbin/iptables -L -n 本文来自起源网

5服务器 bnxb.com

一.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匿名用户登陆

二. 安全篇

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 bnxb.com

linux修改ssh端口22
vi /etc/ssh/ssh_config
vi /etc/ssh/sshd_config

然后修改为port 8888
以root身份service sshd restart (redhat as3)
使用putty,端口8888 bnxb.com

Linux下SSH默认的端口是22,为了安全考虑,现修改SSH的端口为1433,修改方法如下:
/usr/sbin/sshd -p 1433

===============================================================================

第一 种:
01假如要改SSH的默认端口(22),那么你只要修改:/etc/ssh/sshd_config中Port 22,这里把22改成自己要设的端口就行了,不过千万别设和现已有的端口相同哦,以防造成未知后果。 bnxb.com

02假如要限制SSH登陆的IP,那么可以如下做:

先:修改/etc/hosts.deny,在其中加入sshd:ALL

然后:修改:/etc/hosts.allow,在其中进行如下设置:sshd:192.168.0.241

这样就可以限制只有192.168.0.241的IP通过SSH登陆上LINUX机器了。当然在做为服务器方面,我都不装gnome和KDE的,而且很多东东都不装,这样增加安全系数。 bnxb.com

第二种:
首先修改配置文件
vi /etc/ssh/sshd_config
找到#Port 22一段,这里是标识默认使用22端口,修改为如下:
Port 22
Port 50000
然后保存退出
执行/etc/init.d/sshd restart
这样SSH端口将同时工作与22和50000上。 本文来自起源网

现在编辑防火墙配置:vi /etc/sysconfig/iptables
启用50000端口。
执行/etc/init.d/iptables restart

现在请使用ssh工具连接50000端口,来测试是否成功。
如果连接成功了,则再次编辑sshd_config的设置,将里边的Port22删除,即可。

之所以先设置成两个端口,测试成功后再关闭一个端口,是为了方式在修改conf的过程中,
万一出现掉线、断网、误操作等未知情况时候,还能通过另外一个端口连接上去调试
以免发生连接不上必须派人去机房,导致问题更加复杂麻烦。

本文链接地址: CentOS系统安全设置

转载请注明: 转载自技安后院

本文共 2 个回复

  • techniki relaksacyjne 2013/06/07 16:28

    Useful information. Fortunate me I naked your internet situate by opportunity, and I am shocked why this coincidence did not happened in advance! I bookmarked it.

  • Lore 2011/09/17 04:47

    Cool! That's a cleevr way of looking at it!

发表评论