一 禁止系统响应任何从外部/内部来的ping操作
如果没有人能ping通机器并收到响应,那么就可以大大增强服务器的安全性。Linux可以执行如下设置,禁止ping操作。
[root@localhost ~]# echo "1">/proc/sys/net/ipv4/icmp_cho_ignore_all
禁ping命令见下截图:
默认情况下icmp_echo_ignore_all值为0,表示响应ping操作。
可以添加上面那条命令到/etc/rc.d/rc.local文件中,以使每次系统重启后自动运行它。
二 限制Shell记录的历史命令条数
默认情况下,Bash Shell会在$HOME/.bash_history中存放多达1000条命令记录。系统中每个用户的主目录下都有这样一个文件。
存放这么多的历史命令记录,是不安全,因此必须限制该文件的大小。
可以编辑/etc/profile文件,修改其中的如下选项。
HISTSIZE=30
这表示在文件$HOME/.bash_history中记录了最近30条历史命令。如果“HISTSIZE”设置为0,则表示不记录历史命令,于是也就不能用键盘的上下键查找历史命令了。
三 删除系统中不必要的用户和组
Linux系统提供了各种系统账户,在系统安装完毕后,如果不需要某些用户和组,就要立即删除它,因此账户越多,系统就越不安全,越容易受到攻击。
删除系统不必要的用户用如下命令。
[root@localhost ~]# userdel usename
删除系统不必要的组用如下命令。
[root@localhost ~]# groupdel groupname
Linux中可以删除的默认用户有:adm、lp、sync、shutdown、halt、news、uucp、operator、games、gopher等,可以删除的组有adm、lp、news、uucp、games、dip、pppusers、popusers、slipusers等。
四 关闭SELinux
SELinux是Security-Enhanced Linux的简称,是一种内核强制访问控制(MAC)安全系统,目前
SELinux已经集成到Linux 2.6主线和大多数Linux发行版上。由于
SELinux与现有Linux应用程序和Linux内核模块兼容性还存在一些问题,因此建议初学者先关闭
SELinux,等到Linux有了深入的认识后,再对
SELinux深入研究也不迟。
要查看Linux系统
SELinux是否启动,可以使用getenforce命令。
[root@localhost ~]# getenforce
Enforcing
要关闭
SELinux,在CentOS系列发行版中,可以直接修改如下文件。
[root@localhost ~]# vi /etc/sysconfig/selinux
SELINUX=disabled,重启系统后会停止SELinux。