Linux系统安全配置的一些规则-Linux服务器安全设置
1.设置口令最小长度和最短使用时间
口令是系统中认证用户的主要手段,系统安装时默认的口令最小长度通常为5,但为保证口令不易被猜测
攻击,可增加口令的最小长度,至少等于8。
修改文件/etc/login.defs中参数PASS_MIN_LEN。同时应限制口令使用时间,保证定期更换口令,修改参
数PASS_MIN_DAYS。
2.用户超时注销
编辑文件/etc/profile,在“HISTFILESIZE=”行的下一行增加如下一行:
TMOUT=600
则所有用户将在10分钟无操作后自动注销。
3.禁止访问重要文件
对于系统中的某些关键性文件如inetd.conf、services和lilo.conf等可修改其属性,防止意外修改和被
普通用户查看。
首先改变文件属性为600:
# chmod 600 /etc/inetd.conf
保证文件的属主为root,然后还可以将其设置为不能改变:
# chattr +i /etc/inetd.conf
这样,对该文件的任何改变都将被禁止。
只有root重新设置复位标志后才能进行修改:
# chattr -i /etc/inetd.conf
4.允许和禁止远程访问
在Linux中可通过/etc/hosts.allow 和/etc/hosts.deny 这2个文件允许和禁止远程主机对本地服务的访
问。通常的做法是:
(1)编辑hosts.deny文件,加入下列行:
# Deny access to everyone. ALL: ALL@ALL
则所有服务对所有外部主机禁止,除非由hosts.allow文件指明允许。
(2)编辑hosts.allow 文件,可加入下列行:
#Just an example: ftp: 192.168.12.10 abc.com
则将允许IP地址为202.84.17.11和主机名为xinhuanet.com的机器作为Client访问FTP服务。
(3)设置完成后,可用tcpdchk检查设置是否正确。
5.禁止不必要的SUID程序
SUID可以使普通用户以root权限执行某个程序,因此应严格控制系统中的此类程序。
找出root所属的带s位的程序:
# find / -type f \( -perm -04000 -o -perm -02000 \) -print less
禁止其中不必要的程序:
# chmod a-s program_name
6.取消不必要的服务
Linux中的大部分TCP或UDP服务都是在/etc/inetd.conf文件中设定。所以取消不必要服务的第一步就是检
查/etc/inetd.conf文件,在不要的服务前加上“#”号。
一般来说,除了http、smtp、telnet和ftp之外,其他服务都应该取消,诸如简单文件传输协议tftp、网
络邮件存储及接收所用的imap/ipop传输协议、寻找和搜索资料用的gopher以及用于时间同步的daytime和
time等。还有一些报告系统状态的服务,如finger、efinger、systat和netstat等,虽然对系统查错和寻
找用户非常有用,但也给黑客提供了方便之门。例如,黑客可以利用finger服务查找用户的电话、使用目
录以及其他重要信息。可以将这些服务全部取消或部分取消,以增强系统的安全性。
Inetd除了利用/etc/inetd.conf设置系统服务项之外,还利用/etc/services文件查找各项服务所使用的
端口。在Linux中有两种不同的服务型态:一种是仅在有需要时才执行的服务,如finger服务;另一种是
一直在执行的永不停顿的服务。这类服务在系统启动时就开始执行,因此不能靠修改inetd来停止其服务
,只能从修改/etc/rc.d/rc[n].d/文件或用Runleveleditor去修改它。提供文件服务的NFS服务器和提供
NNTP新闻服务的news都属于这类服务,如果没有必要,最好取消这些服务。
7.限制系统的出入
- ·Linux procinfo命令使用教程,学习procinfo命令的用法
- ·Linux spell命令使用教程,学习spell命令的用法及spel
- ·Linux df命令使用教程,学习df命令的用法及df命令语法
- ·Linux id命令使用教程,学习id命令的用法及id命令语法
- ·Linux dip命令使用教程学习,dip命令的用法与实例讲解
- ·Linux zipinfo命令使用教程学习,info命令语法动手详
- ·Linux sort命令使用教程学习惯,sort命令语法详细讲解
- ·Linux ar命令的用法及实例学习-ar命令语法的运用技巧
- ·Linux login命令的用法及实例讲解
- ·linux find命令使用教程及find命令的用法与实例讲解
- ·linux dump命令用法详解。dump命令学习心得。dump命令
- ·linux kill命令使用教程,kill函数命令学习心得。
- ·linux awk数组学习心得及awk数组操作详细介绍 用awk进
- ·Linux Unzip命令使用教程,Linux zip命令使用教程
- ·linux中echo命令详解学习,echo命令的使用方法。
- ·uniq命令详解-linux uniq语法使用教程学习-uniq的用法
- ·AngularJS入门教程-AngularJS教程-从零开始学习Angula
- ·AngularJS入门教程快速开始,从零开始学习AngularJS的
- ·AngularJS入门教程:导言和准备
- ·AngularJS入门教程00:引导程序
- ·AngularJS入门教程01:静态模板
- ·AngularJS入门教程02:AngularJS 模板
- ·AngularJS入门教程03:迭代器过滤
- ·AngularJS入门教程04:双向绑定