UNIX操作系统安全
备注:本文选自ChinaITLab网校课程《CIW网络安全工程师V3.0》,点击这里了解更多!
本小节的要点包括:
●常用网络服务安全
■DNS
■WWW
■WEB
■FTP
●LINUX帐户安全
■LINUX系统帐户文件
■LINUX系统帐户安全
●LINUX文件系统安全
■文件权限分类
■文件和目录的访问对象
■UMASK值
■不可改变位
■SUID/SGID文件
■文件完整性
■文件加密
■备份策略
1
常用网络服务安全
1.1
域名(dns)服务
1.1.1
DNS基本原理
1、DNS术语、特性:
●互连网上主机信息的分布式数据库
●域名服务器
●解析器即客户机
●域名查询采用UDP协议,而区域传输采用TCP协议
●域名解析过程分为两种方式:递归模式和交互模式
2、域名解析过程
典型的域名解析过程如图1所示。
域名解析过程
3、BIND主要配置文件
BIND的主要配置文件包括:
●named配置文件:/etc/named.boot、etc/named.conf
●DNS数据文件
●反向解析顺序文件/etc/resolv.conf
1.1.2
DNS服务器的常见攻击方法
DNS服务器的常见攻击方法包括:
●地址欺骗
●远程漏洞入侵
●拒绝服务
1、地址欺骗
如图2所示。
地址欺骗
2、缓冲区溢出漏洞
解决办法:
●安装最新BIND
■http://www.isc.org/products/BIND/bind9.html
3、DNS服务器的拒绝服务攻击
●针对DNS服务器软件本身
●利用DNS服务器作为中间的"攻击放大器",去攻击其它intetnet上的主机
1.1.3
Bind服务器安全配置
●基本安全配置
■隐藏版本信息
■named进程启动选项:
-r:关闭域名服务器的递归查询功能(缺省为打开)。
-u 和-g :定义域名服务器运行时所使用的UID和GID。
-t :指定当服务器进程处理完命令行参数后所要chroot()的目录。
●Bind服务器的访问控制
■限制查询
■限制区域传输
■关闭递归查询
■Bind服务器安全配置
/etc/named.conf
options
{
directory
"/var/named";
allow-query
202.96.44.0/24;
allow-transfer
{
192.168.100.1;
202.96.44.0/24;
recursion no;
};
};
●设置chroot运行环境
■chroot 是 "change root" 的缩写
■chroot重定义了一个程序的运行环境。重定义了一个程序的"ROOT"目录或"/"。也就是说,对于chroot了的程序或shell来说,chroot环境之外的目录是不存在的。
■Chroot方法步骤:
建立"监狱式"目录
拷贝本身服务软件和其他要求的文件
拷贝所需要系统库文件
变换启动脚本,使系统启动正确环境
●及时更新安装bind的最新版本
1.2
WWW服务
1.2.1
常见安全威胁
对于WWW服务,常见安全威胁包括:
■HTTP拒绝服务:攻击者通过某些手段使服务器拒绝对HTTP应答
■缓冲区溢出
1.2.2
Web服务器(apache)配置文件
控制着服务器各个方面的特性的三个配置文件:
■httpd.conf主配置文件,是对守护程序httpd如何运行的技术描述
■srm.conf是服务器的资源映射文件,告诉服务器各种文件的MIME类型,以及如何支持这些文件
■access.conf用于配置服务器的访问权限,控制不同用户和计算机的访问限制
1、Apache的基本安全配置
■及时更新安装Apache的最新版本
■设置chroot运行环境
■隐藏版本信息
2、Apache服务器访问控制
■文件的访问控制
■目录的访问控制
■主机的访问控制
■access.conf文件包含一些指令控制允许某个用户、某个域、IP地址或者IP段的访问访问Apache目录。
■order deny,allow
■deny from all
■allow from sans.org
■使用.htaccess文件,可以把某个目录的访问权限赋予某个用户
1.3
mail服务
1.3.1
Sendmail的主要安全问题
■邮件转发与垃圾邮件
■避免未授权的用户滥用noexpn,novrfy
■限制可以审核邮件队列内容的人员
■(/etc/sendmail.cf: PrivacyOptions=authwarnings,noexpn,novrfy,restrictmailq)
■关闭relay选项
■及时更新安装最新版本的Sendmail
■文件系统安全
■拒绝服务攻击
1、关闭relay选项
sendmail提供了许多在编译期间选择的功能特性
在/etc/sendmail.mc中与安全相关的特性有:
■FEATURE(*)
■promiscuous_relay
■accept_unqualified_senders
■loose_relay_check
■accept_unresolvable_domains
■blacklist_recipients
■relay_entire_domain
2、邮件转发与垃圾邮件
设置smtp身份验证。
3、文件系统安全
重要的文件设置不可更改位
■[root@deep]# chattr +i /etc/sendmail.cf
■[root@deep]# chattr +i /etc/sendmail.cw
■[root@deep]# chattr +i /etc/sendmail.mc
■[root@deep]# chattr +i /etc/aliases
■[root@deep]# chattr +i /etc/mail/access
4、Sendmail配置抵御DOS
■/etc/sendmail.cf üMinFreeBlocks--配置最少的自由块数
■MaxMessageSize--最大邮件大小
■AutoRebuildAliases--自动重建别名
■QueueLA--队列平均负荷
■RefuseLA--平均负荷拒绝临界点
■MaxDaemonChildren--最大的守护进程的子进程数
■MaxHeadersLength --最大的报头长度
■MaxMimeHeaderLength --最大MIME编码报文长度
■MaxRecipientsPerMessage --每封邮件的最多接收者
1.4
FTP
了解那些FTP有安全问题:
■wu-ftpd -(wu-ftpd 2.6.0 输入验证漏洞、site newer 内存耗尽问题)
■proftpd
1.4.1
Ftp安全要点
■使用最新版本 -http://www.wu-ftpd.org/
2.6.2 -http://www.proftpd.org/ 1.2.9
■使用ftpuser限制ftp用户
■使用ftpaccess控制用户行为,流量等等
■设置chroot运行环境 o使用ssh或sftp代替ftp
2
UNIX系统帐号安全
2.1
UNIX系统帐号文件
2.1.1
Passwd文件剖析
■name:coded-passwd:UID:GID:user-info:home-directory:shell
passwd文件字段含义:
■7个域中的每一个由冒号隔开。
■name-给用户分配的用户名。
■Coded-passwd-经过加密的用户口令。如果一个系统管理员需要阻止一个用户登录,则经常用一个星号( : * :)代替。该域通常不手工编辑。
■UID-用户的唯一标识号。习惯上,小于100的UID是为系统帐号保留的。
■UNIX系统帐号安全
■GID-用户所属的基本分组。通常它将决定用户创建文件的分组拥有权。
■User_info-习惯上它包括用户的全名。邮件系统和finger这样的工具习惯使用该