LINUX安全加固手册_第1页
LINUX安全加固手册_第2页
LINUX安全加固手册_第3页
LINUX安全加固手册_第4页
LINUX安全加固手册_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、最新资料欢迎阅读LINUX安全加固手册用 户帐号安全 Password and account security43、1密码安全策略43、2检查密码是否安全3 Password Shadowing43、4管理密码43、5 其它 54 网络服务安全(Network Service Security)54、1 服务过滤 Filtering2/etc/inetd、 conf64、3R服务4Tcp_wrapper74、5/etc/hosts、equiv 文件84、 6 /etc/services84、 7/etc/aliases84、8 NFS94、 9Trivial ftp (tftp)94、 10

2、 Sendmail94、 11 finger104、 12UUCP104、 13World Wide Web (WWW)-httpd104、14FTP 安全问题 115 系统设置安全(System Setting Security)125、1限制控制台的使用125、2系统关闭Ping125、3关闭或更改系统信息125、4 /etc/securetty 文件 135、5 /etc/host、conf 文件 135、6禁止IP源路径路由135、7资源限制135、8 LILO 安全 145、9 Control-Alt-Delete 键盘关机命令 1最新资料欢迎阅读45、10日志系统安全155、11修

3、正脚本文件在“/etc/rc、d/init、d”目录下的权限156文件系 统安全(File System Security)156、1文件权限156、2控制mount上的文件系统166、3备份与恢复167其它167、1使用防火墙167、2使用第三方安全工具161概述近几年来Internet变得更加不安全了。 网络的通信量日益加大,越来越多的重要交易正在通过网络完成,与此同时数据 被损坏、截取和修改的风险也在增加。只要有值得偷窃的东西就会有想办法窃取它的人。Internet的今天比过去 任何时候都更真实地体现出这一点,基于Linux的系统也不能摆脱这个“普遍规 律”而独善其身。因此,优秀的系统应

4、当拥有完善的安全措施,应当足够坚固、 能够抵抗来自Internet的侵袭,这正是Linux之所以流行并且成为Internet 骨干力量的主要原因。但是,如果你不适当地运用Linux的安全工具,它们反而 会埋下隐患。配置拙劣的安全系统会产生许多问题,本文将为你解释必须掌握的 Linux安全知识。本文讲述了如何通过基本的安全措施,使Linux系统变得可靠。 2安装使系统处于单独(或隔离)的网络中。以防止未受保护的系统连接到其它 网络或互联网中受到可能的攻击安装完成后将下面软件卸载 pumpapmdlsapnptoolsredhat-logosmt-stkernel-pcmcia-csSetseri

5、alredhat-r eleseejectlinuxconfkudzugdbcgetty_psraidtoolspciutilsmailcapsetconsol egnupg用下面的命令卸载这些软件:rootdeep#rpm - e softwarename卸载 它们之前 最好停 掉三个 进程:rootdeep# /etc/rc、d/init、d/apmd stoprootdeep# /etc/rc、 d/init、 d/sendmail stoprootdeep# /etc/rc、 d/init、d/kudzu stop3、用户帐号安全 Password and account securi

6、ty3、1密码安全策略1口令至少为6位,并且包括特殊字符l 口令不要太 简单,不要以你或者有关人的相关信息构成的密码,比如生日、电话、姓名的拼 音或者缩写、单位的拼音或者英文简称等等。l 口令必须有有效期l发现有人最新资料欢迎阅读长时间猜测口令,需要更换口令3、2检查密码是否安全可以使用以下几种工具检查自己的密码是否安全:1 JOHN,crack等暴力猜测密码工具1在线穷举工具,包括Emailcrk、流光等3、3 Password Shadowingl使用shadow来隐藏密文(现在已经是默认配 置)l定期检查shadow文件,如口令长度是否为空。#awkG10 admin来将用户 力口入wh

7、eel组3、5其它l清除不必要的系统帐户rootdeep# userdel admrootdeep# userdel lprootdeep# userdel syncrootdeep# userdel shutdownrootdeep# userdel haltrootdeep# userdel newsrootdeep# userdel uucprootdeep# userdel operatorrootdeep# userdel games (如 果不使用 X Window,则删除)rootdeep# userdel gopherrootdeep# userdel ftp (如果不使用ft

8、p服务则删除)l尽量不要在passwd文件中包含 个人信息,防止被finger之类程序泄露。l修改shadow,passwd,gshadow文件 不可改变位rootdeep# chattr +i /etc/passwdrootdeep# chattr +i /etc/shadowrootdeep# chattr +i /etc/grouprootdeep# chattr +i /etc/gshadowl不要使用、netrc文件,可以预先生成$HOME/、netrc。设置为 0000o touch/、rhosts ; chmod0/、rhosts l 使用 ssh 来代替 telnetd,ftp

9、d、 pop等通用服务。传统的网络服务程序,如:ftp、pop和telnet在本质上都是 不安全的,因为它们在网络上用明文传送口令和数据。4网络服务安全(Network Service Security)Linux系统对外提供强大、多样的服务,由于服务的多样性 及其复杂性,在配置和管理这些服务时特别容易犯错误,另外,提供这些服务的 软件本身也存在各种漏洞,所以,在决定系统对外开放服务时,必须牢记两个基 本原则:l只对外开放所需要的服务,关闭所有不需要的服务。对外提供的服务 越少,所面临的外部威胁越小。l将所需的不同服务分布在不同的主机上,这样 不仅提高系统的性能,同时便于配置和管理,减小系统的

10、安全风险。在上述两个 基本原则下,还要进一步检查系统服务的功能和安全漏洞。这里针对主机所提供 的服务进行相应基本安全配置,某些常用服务的安全配置请参考相关文档。4、1服务过滤Filteringl在SERVER上禁止这些服务l如果一定要开放 这些服务,通过防火墙、路由指定信任IP访问。l要确保只有真正需要的服务最新资料欢迎阅读才被允许外部访问,并合法地通过用户的路由器过滤检查。尤其在下面的服务不 是用户真正需要时候,要从路由器上将其过滤掉NAME PORT PROTOCOL echo7TCP/UDP systat11 TCP netstat15 TCP bootp67 UDP tftp69 UD

11、P link87 TCP supdup95 TCP sunrpc111 TCP/UDP news144 TCP snmp161 UDP xdmcp177 UDP exec512 TCP login513 TCP shell514 TCP printer515 TCP biff512 UDP who513 UDP syslog514 UDP uucp540 TCP route520 UDP openwin2000 TCP nfs2049 UDP/TCP x116000 to6000+n TCP注意:有些UDP服务可以导致DOS攻击和远程溢出,如 rpc、 ypupdated rpcbindrpc

12、、 cmsd rpc、 statd rpc、 ttdbserver sadmind /10 l配置完成以后,利用网络扫描器模拟入侵者从外部进行扫描测试。如利用nmap4、2/etc/inetd、confl确保文件权限设置为600l确保文件属主设置为 rootl注释掉所有不需要的服务,需要重新启动inetd进程l使用netstat - an命令,查看本机所提供的服务。确保已经停掉不需要的服务4、3 R服务不必使用R服务l关闭R服务,Red hat6、2在/etc/inetd、conf文件中注释以下服务,并且重新启动inetd服务。Red hat7、0 在/etc/xinetd、d 目录中删除 e

13、xec512TCPRlogin513TCPRshell514TCPl 预先生成$HOME/、rhosts, /etc/hosts、equiv文件,并且设置为0000,防止被 写入 + +”。(攻击者经常使用类似符号链接或者利用ROOTSHELL写入,并且远 程打开受保护主机的R服务)必须使用R服务l使用更安全版本的r服务。如 Wietse Venema的logdaemon程序等。l在路由或者防火墙上禁止外部网络访问 受保护主机的512,513 and514 (TCP)端口。l使用TCP WRAPPERS设置可访问受 保护主机R服务的信任机器。4、4 Tcp_wrapper该软件的作用是在Uni

14、x平台上过滤TCP/UDP服务,它 目前已被广泛用于监视并过滤发生在主机上的ftp、telnet、rsh、rlogin、tftp、 finger等标准TCP/UDP服务。当系统安装TCP_wrapper之后,in、conf文件中 /usr/sbin/in、telnetd 的 in、telnetd 会被 TCP_wrapper 附带的 tcpd 程序取 代。该程序截获来自客户端的服务请求、记录请求发生的时间和IP地址,并按最新资料欢迎阅读访问控制进行检查。当本次连接的用户、请求源的IP等信息符合管理员的预设 值时,才将该次请求传递给系统in、telnetd,由系统in、telnetd完成后续工

15、作;若连接不符合要求,该连接请求将被拒绝。同样,ftp、rsh等TCP/UDP服 务均可被tcpd取代,由tcpd充当二传手。l使用PARANOID模式,用此参数后 需要在/etc/hosts文件中加上允许使用telnet或ftp服务的客户端的名字和IP 地址l在/etc/hosts、deny中设置为all:all,默认所有不允许Access is denied by default、 # Deny access to everyone、 ALL: ALLALL, PARANOID #Matches any host whose name does not match its address,

16、 seebellow、l 在/etc/hosts、 allow中设置允许的服务和地址如:sshd:208、164、186、1 gate、openarchZZZl 使用 tcpdchk 检查 l UDP 服务使用 tcpwrapper 时要使用/etc/inetd、conf中的nowait选项。4、5/etc/hosts、equiv 文件不必使用/etc/hosts、equiv 文件 l 从系统 中删除此文件l预先生成/etc/hosts、equiv文件,并且设置为0000,防止被写 入” + +”。(攻击者经常使用类似符号链接或者利用ROOTSHELL写入,并且远程 打开受保护主机的R服务)必

17、须使用/etc/hosts、equiv文件l确保此文件中可 信赖主机为必须的。l预先生成/etc/hosts、equiv文件,并且设置为0000,防 止被写入“ + +”。(攻击者经常使用类似符号链接或者利用ROOTSHELL写入,并 且远程打开受保护主机的R服务)l如果使用NIS或者NIS+的话,此文件中的 组应该是容易管理的。l信赖主机必须确保可靠l信赖主机使用全名,如例如 hostname、domainname、cnl任何时候都不应该出现+字符,因为这样会使 任何一台主机上的任何用户都可以不加口令地访问系统l文件中不要使用!和 #符号,因为在该文件中那并不表示注释信息】文件开始字符不应该

18、为-、,请查 阅C8l确保该文件的访问权限被设置成600。l文件属主确保为ROOT。l在每 次安装补丁程序或操作系统之后,都应该重新检查该文件夹的设置情况4、6 /etc/servicesl确保文件权限设置为600l确保文件属主设置为 rootl如果需要提供一些常见服务,如telnetd等,可以在此修改端口此文件为 端口号和服务的对应关系,给此文件加上保护,避免没有授权的修改和删除 rootdeep# chattr +i /etc/services最新资料欢迎阅读4、7 /etc/aliasesl 修改 /etc/aliases 文件,注释掉decode “games,ingress,syst

19、em,toor,manager,、“、等 l 使用/usr/bin/newaliases 命令激活新配置l确保文件权限设置为755l确保文件属主设置为root4、8 NFSNFS文件系统应注意以下几方面的安全l在外部路由上过滤端口 111. 2049 (TCP/UDP),不允许外部访问。l检查PATCH更新情况。l检 查/etc/exports输出路径的权限,确定只有root能修改,all user只能readl 用exportfs去增加或删除directoriesexportfsu /usrl假如你的机器没有 NIS(YP server)的服务,当更改资料时记得修改 /etc/passwd/

20、etc/group/etc/hosts/etc/ethersl 不允许 export 出去包含本地 入口的目录l确定对方机器是完全可信赖的。使用全名l确保输出列表没有超 过256个字符。l使用showmount - e命令查看自己的export设置l将 /etc/exports 权限设置为 644,属主为 rootl 使用 noexec,nodev、nosuid 等选 项控制mount的文件系统,在/etc/fstab中设置。4、9 Trivial ftp (tftp)无论何种情况下都不应该启动这个服务进程。4、10Sendmailsendmail提供了许多在编译期间选择的功能特性。通常情 况

21、下,按照其缺省配置,即可满足一般用户的需要。但是,了解研究其提供的特 性,可以实现对sendmail许多功能的更为准确的配置使用。从网络安全的角度 考虑,通过合理地配置有关特性,可以在提供服务和保证安全之间找到更为准确 的平衡点(配置特性的方法是将需要的特性加入到相应系统的、mc文件中,然后 利用工具m4生成最终的sendmail、cf文件。目前最新版本是sendmail11、1、(www、sendmail、org)l 最新的发行包 l promiscuous_relay: 该 特性打开任意转发功能,也即关闭8、9带来的邮件转发方面的安全增强控制。此特性的使用会对电子邮件服 务的滥用留下许多隐

22、患,建议除非特别情况,不要使用此特性。l accept_unqualified_senders:缺省情况下,该特性被关闭,即当MAIL FROM: 参数中的地址表明属于网络连接,但是却不包含合法的主机地址时,sendmail将 拒绝继续通信。打开此特性则不再根据MAIL FROM:参数拒绝接收邮件。建议不最新资料欢迎阅读可轻易使用该特性。l loose_relay_check :通常情况下,当邮件使用了源路由 功能,例如user%siteothersite,如果othersite属于转发邮件的范围,则 sendmail将分离othersite,继续检查site是否属于转发范围、使用该特性将改

23、变上述缺省操作、建议不要轻易使用该特性l accept_unresolvable_domains : 通常情况下,当MAIL FROM:参数中的主机地址部分无法解析,即无法判定为合法 主机地址时,sendmail将拒绝连接、使用该特性将改变上述操作、在某些情况 下,例如,邮件服务器位于防火墙后面,无法正常解析外部主机地址,但是仍然希 望能够正常接收邮件时,可能需要利用该特性、l blacklist_recipients :打开 接收黑名单功能。接收黑名单可以包括用户名、主机名、或其它地址。lrelay_entire_domain :缺省配置下,sendmail只为在转发控制数据库(access

24、 db)中定义为RELAY的主机提供转发邮件服务、该特性的使用,将使sendmail 为本地域内(由$=m类定义)的所有主机上面的用户提供转发功能l sendmail 的受限shell程序smrsh可以防止内部用户恶意操作。l防止系统信息泄漏,如 修改62口口6广,禁止expn,vrfy命令l建议配置为需要smtp认证功能。l其他相 关的 mailserverqmail: www、 qmail、 orgpostfix: www、 postfix orgqpop: http:/www、 qpopper、 org/Imail: http:/www、 imailboxZZZ/4、11 fingerl

25、不应该启动这个服务进程。l如果一定要使用,请使用最 新的版本。4、12 UUCPl建议不要使用l删除所有的rhosts文件(UUCP目录下 的)l确保、cmds文件属主为rootl对UUCP登陆进行限制l确保UUCP 文件没有被设置为所有人可写13 World Wide Web (WWW)-httpdl使用你选择的WEBSERVER的最新版本l不要使用区0 01用户运行httpdl在chroot环境中运行httpdl尽量不要使用CGI脚本l 对CGI脚本进行安全审计 l链接使用静态库l过滤危险字符,如n r (、,/;!)|telnet stream tcp nowait root /usr/

26、sbin/tcpd in telnetd - h加上参数-h可以关闭telnet信息Red Hat7、0 中,编辑/etc/xinetd、d/telnet 加上 server_args =r)最新资料欢迎阅读on $a $(unamef /etc/issue /etc/issue、 net#echo /etc/issue5、4 /etc/securetty 文件/etc/securetty 文件规定 root 从哪个 TTY 设备 登录,列出的是允许的tty设备,将不允许的tty设备行注释掉、5、5 /etc/host、 conf文件/etc/host、conf定义主机名怎样解析,使用什么服务

27、,什么顺序解析# Lookup names via DNS first then fall back to /etc/hosts、order bind,hosts# We have machines with multiple IP addresses multi on# Check for IP address spoofing、nospoof onorder指定选择服务的顺序multi指定主机能不能有多个 IP地址,ON代表允许nospoof指定不允许IP伪装,此参数必须设置为ON5、6禁止IP源路径路由允许IP源路径路由(IP source routing)会使得 黑客能够欺骗你的计算机

28、,截取信息包、强烈建议禁止,使用如下命令:for f in /proc/sys/net/ipv4/conf/*/accept_source_route; doecho 0 $fdone 将 accept_source_route 设置为 0,并将上述命令加到/etc/rc、d/rc、local 中去, 每次重启动将自动执行5、7资源限制为了避免拒绝服务攻击,需要对系统资源的使用做一些限制。 首先,编辑/etc/security/limits、四口九加入或改变如下* hard core 0 (禁 止创建core文件)* hard rss5000 (除root外,其他用户最多使用5M内存) * h

29、ard nproc20 (最多进程数限制为20)编辑/etc/pam、d/login,在文件末尾 加上:session required /lib/security/pam_limits、 so 对 TCP SYN Cookie 的 保护:(防 止 SYN Flood 攻击)rootdeep# echo1 /proc/sys/net/ipv4/tcp_syncookies5、8 LILO 安全在 “/etc/lilo、conf” 文件中添加 3 个参数:time-out、 restricted和password。这些选项会在启动时间(如“linux single”)转到 启动转载程序过程中,要

30、求提供密码。步骤1编辑lilo、conf文件(/etc/lilo、 conf ), 添加和更改这三个选项:boot=/dev/hda map=/boot/map install=/boot/boot 、 b time-out=00 #change this line to 00prompt Default=linux restricted #add this linepassword= #add this line and put your password image=/boot/vmlinuz-2、 2、 14-12 label=linux initrd=/boot/initrd-2、 2

31、、 14-最新资料欢迎阅读12、img root=/dev/hda6 read-only 步骤2由于其中的密码未加密, “/etc/lilo、conf”文件只对根用户为可读。rootkapil /# chmod600 /etc/lilo、conf (不再为全局可读)步骤 3 作了上述修改后,更新配置文件/etc/lilo、conf”。Rootkapil /# /sbin/liloAlt-Delete 键盘关机命令编辑 “ /etc/inittab ”文件,只要在下面行前面加“ # ,改为注释行。 ca:ctrlaltdel:/sbin/shutdownrnow改 为:#ca:ctrlaltde

32、l:/sbin/shutdownr now然后,为使更改生效,在提示符下输入: rootkapil /# /sbin/init q5、10日志系统安全为了保证日志系统的完整性,防止黑客删除日志,需 要对日志系统进行安全配置。本专题将有专门文档来讲述日志系统的安全。5、11修正脚本文件在“/etc/rc、d/init、d”目录下的权限对脚本文件 的权限进行修正,脚本文件用以决定启动时需要运行的所有正常过程的开启和停 止。添加:rootkapil/# chmodtype f (04000permexec ls - lg ;通过 下面的命令来去掉不需要的程序的s位rootdeep# chmod a-

33、s /usr/bin/commandnamel 重 要 的 配 置 文 件 如 /etc/passwd,/etc/shadow,/etc/inetd、conf 等设置为 0755,并设置为不可更改 l /etc, /usr/etc, /bin, /usr/bin, /sbin, /usr/sbin, /tmp and/var/tmp 的属主是root,并且设置粘滞。l/dev目录下没有特殊文件。l查找任何人可写 的文件和目录rootdeep# find /permo20 )lg 置,比如:将/dev/sda11 /tmp ext2 defaults12/dev/sda6 /home ext2

34、defaults12 改为: /dev/sda11 /tmp ext2 nosuid,nodev,noexec12/dev/sda6 /home ext2 nosuid,nodev12noexec表示不允许可执行,nodev表示不允许块设 备,nosuid表示不允许suid位6、3备份与恢复定期对文件系统进行备份,可以将损失减小到最小程度。 Linux下有多种方法进行备份,如:dd, cpio, tar, dump等7其它7、1使用防火墙防火墙是网络安全的重要方面,我们将另有专题来详细阐 述防火墙,包括防火墙的原理,linux最新资料欢迎阅读2、2 内核下 IPChains 实现,linux2

35、、4内核下netfilter实现,商业防火墙产品应用等。7、2使用第三方安全工具Linux下有很多很好的安全工具,比如:Tripwire, SSH, Sudo, Tcpdump, nmap, nessus, snort, sniffit我们将安排专题来具体讲述这些非常实用的安全工具。$ /proc/sys/net/ipv4/icmp_echo_ignore_all 可 以 将这一 行加至U /etc/rc、d/rc、local文件中去,这样系统重启动后会自动执行恢复系统的Ping 响应:rootdeep#echo 0 /proc/sys/net/ipv4/icmp_echo_ignore_al

36、l5、3关闭或更改系统信息关闭telnet系统信息Red Hat6、2 中,编辑/etc/inetd、conftelnet stream tcp nowait root /usr/sbin/tcpd in、telnetd -h 加上参数-h 可以关闭 telnet 信息 Red Hat7、0 中,编辑/etc/xinetd、d/telnet 加上 server_args =r)on $a $(unamef /etc/issue /etc/issue、 net#echo /etc/issue5、4 /etc/securetty 文件/etc/securetty 文件规定 root 从哪个 TTY

37、 设备 登录,列出的是允许的tty设备,将不允许的tty设备行注释掉、5、5 /etc/host、 conf文件/etc/host、conf定义主机名怎样解析,使用什么服务,什么顺序解析# Lookup names via DNS first then fall back to /etc/hosts、order bind,hosts# We have machines with multiple IP addresses multi on# Check for IP address spoofing、nospoof onorder指定选择服务的顺序multi指定主机能不能有多个 IP地址,ON

38、代表允许nospoof指定不允许IP伪装,此参数必须设置为ON5、6禁止IP源路径路由允许IP源路径路由(IP source routing)会使得 黑客能够欺骗你的计算机,截取信息包、强烈建议禁止,使用如下命令:for f in /proc/sys/net/ipv4/conf/*/accept_source_route; doecho 0 $fdone 将 accept_source_route 设置为 0,并将上述命令加到/etc/rc、d/rc、local 中去, 每次重启动将自动执行5、7资源限制为了避免拒绝服务攻击,需要对系统资源的使用做一些限制。最新资料欢迎阅读首先,编辑/etc/

39、security/limits、健底,加入或改变如下* hard core 0 (禁 止创建core文件)* hard rss5000 (除root外,其他用户最多使用5M内存) * hard nproc20 (最多进程数限制为20)编辑/etc/pam、d/login,在文件末尾 加上:session required /lib/security/pam_limits、 so 对 TCP SYN Cookie 的 保护:(防 止 SYN Flood 攻击)rootdeep# echo1 /proc/sys/net/ipv4/tcp_syncookies5、8 LILO 安全在 “/etc/l

40、ilo、conf” 文件中添加 3 个参数:time-out、 restricted和password。这些选项会在启动时间(如“linux single”)转到 启动转载程序过程中,要求提供密码。步骤1编辑lilo、conf文件(/etc/lilo、 conf ), 添加和更改这三个选项:boot=/dev/hda map=/boot/map install=/boot/boot 、 b time-out=00 #change this line to 00prompt Default=linux restricted #add this linepassword= #add this line and put your password image=/boot/vmlinuz-2、 2、 14-12 label=linux initrd=/boot/in

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论