网络通信 频道

Linux服务器系统潜在风险服务及建议

    【IT168专稿】Linux作为一个网络操作系统,最主要的功能就是提供各种网络服务,而每个网络服务都是带着各种各样的安全等级进入系统的一扇门。为了方便用户建立Linux服务器系统,绝大部分Linux分版默认安装了尽可能多的服务。而这些服务有一些是用户不需要、不想了解的服务,或是必须改变其默认配置和安装修补版本才能保证其安全的。Linux所开放的服务器都是由/ETC/INETD.CONF文件决定的,开启的服务越多,开放的端口也就越多,Linux服务器的安全风险就越高。

    从进程及脚本入手
    要控制Linux开放哪些服务,就要从/ETC/INETD.CONF文件入手。基于TCP/IP的不同网络服务都是以端口来区别的。对于某种服务,Linux的服务守护进程(daemon)随时监听特定端口的连接请求。当请求到来的时候,一般产生一个新进程来处理这个连接。例如,www守护进程随时监听端口80的连接,一旦检测到连接请求后就马上打开一个进程处理这个连接请求,送出指定页面后返回。但是如果要实际启动相应的守护进程,需要另一个文件/etc/inetd.conf。不过现在新版本中全部改为了这样的形式:由/etc/xinetd.d目录中的相关服务的配置文件来决定是否启动相关服务。

    Linux系统启动时会运行.rc这个脚本,决定init进程要启动哪些服务。如果Linux默认以多用户模式启动(这是Linux系统的默认运行级),此脚本文件是/etc/rc.d/rc5.d。我们查看/etc/rc.d/rc3.d目录,此目录下都是各进程的脚本名字,脚本名字中的数字是init进程启动这些进程的顺序。如果要在系统启动的时候不启动某些服务,只要把该服务的脚本名字中的大写字母S改写成小写字母s就可以了。例如,如果用户不希望系统启动的时候自动运行smb服务,把/etc/rc.d/rc3.d/S91smb 改成 /etc/rc.d/rc3.d/s91smb就能达到预期的效果了。脚本名字中以大写字母K开头的,是杀死进程用的。

    安全风险服务及建议
    要保证服务器的安全,就要关掉不必要的服务。因为高安全性要求最小数量的服务。

    Wu-ftpd
    Wu-ftpd是FTP服务器软件的至尊王者,是我们平时经常可以用到的一个软件,但是并不代表它是一个无懈可击的服务器程序,即使在最新的版本中,也可能存在严重的安全漏洞,而这些安全漏洞很可能是致命的。通过FTP服务的安全漏洞,黑客很容易发起远程攻击,这种攻击可以是针对服务器程序的漏洞发起的。例如,利用服务器程序的bug获得root权限,也可能是因为FTP服务器文件权限设置不当,使客户可以访问本不因该公开的文件及目录,甚至恶意删除系统中的文件。所以如果用户不需要FTP服务的话最好把它关掉。

    Sendmail
    Sendmail是以功能强大和漏洞百出而著称的E-mail服务器软件,经历了数次改版后,现在已将发展到了V8版本,通常情况下,Linux自带的Sendmail就带有完整的配置文件它决定了Sendmail的各项属性。按照其默认配置,可以满足一般用户的需要,从网络安全的角度考虑,通过合理的配置有关特性,可以在提供服务和保证安全之间找到更为准确的平衡点。但是Sendmail的安全性笔者不敢恭维,这里建议最好使用Qmail或是Smail代替,这两者都比较安全且好用。如果不做邮件服务器应该将Sendmail关闭。
    
    当然主动防御也是可行的,Sendmail总是乐于将它的版本号登录信息告知每一台计算机。但是过分热情的背后就向恶意用户泄漏了版本号,让恶意用户对全世界可用的Sendmail一览无余,并等待某个版本的新漏洞公布,然后,他们就可以马上知道哪个Sendmail系统是可以攻破的。要防治这种情况的发生,必须隐匿Sendmail公布的自己的版本号等信息。方法如下:
在Sendmail.mc文件中去掉$v、$z这两个宏,并包含:
define(‘confSMTP_LOGIN_MSG’,$j Sendmail Secure/Rabid;$b)。
然后再生成Sendmail.cf文件即可。

    不仅如此。防治Sendmail被未授权用户滥用也是很重要的。8.9.3版本以后的Sendmail加入了防治欺骗的特性。该特性可以防治服务器被未授权的用户滥用。为使服务器能够但主欺骗邮件,在/etc/Sendmail.cf文件中将下面一行:
O PrivacyOptions=authwarnings
改为:
O PrivaryOptions=authwarnings,noexpn,novrfy
 
    设置“onexpn”使Sendmail禁止所有SMTP的“EXPN”命令,它也使Sendmail拒绝所有SMTP的“VERB”命令。设置“novrfy”使Sendmail禁止所有SMTP的“VRFY”命令。这种更改可以防治欺骗者使用“EXPN”和VRFY命令,而这些命令恰恰被那些不守规矩的人们所滥用。
注意,只要更改了Sendmail的配置文件,都必须重新启动Sendmail使配置生效。

    其他进程及命令
   
Httpd是运行Web服务的进程,问题也比较多。如果用户的服务器不做Web服务器应将其关闭。
    Innd使运行新闻组服务。用户的服务器如果不做Usenet服务器,请将此服务关闭。
    Rwhod允许远程用户查看有谁登陆了系统。用户可以用r命令rwho进行查看。恶意的入侵者用rwho确认没有其他用户登录系统的时候会开始实施入侵,并且也可以通过rwho得到其他账户。这个服务有很大的安全风险,应该关闭或移除。

    Snmp是简单网络管理协议。这个协议已经被证实是不安全的。当发送口令的时候,snmp发送的是明文形式。别有用心的入侵者可以通过运行嗅探工具Sniffer之类的工具探听到用户的口令,所以应当关闭snmpd进程。

    R字开头的命令,如rexec、rhnsd、rlogin、rsh、rstatd、rsync等等,都是Berkeley远程命令,因为都是以字母r开头的,故称r*命令。它们的主要作用是使一台计算机上的某个用户以相同的账户远程执行另一台计算机上面的程序。但是,如果被入侵者探听到,会造成严重的安全问题,应该将其关闭,如果用户不愿关闭,笔者建议使用SSH替换r命令。

    后记
   
笔者从网络管理员和用户的角度分别对一些常用的服务软件以及系统配置上讨论并总结了其一些不安全的风险因素,给大家提供一些重要的安全忠告以帮助用户保护号自己系统的安全。Linux的确给我们提供了很全面且完善的网络服务和系统配置,但是始终不是最人性化,最安全化的。我们在搭建网络、配置网络的时候,往往根本就用不到系统所提供的所有服务项目,但是这些多余无用的网络服务却给恶意之人撑起了踏板利用其中的一些漏洞,对用户进行攻击。这时我们就要自己动手将这些无用的和多余的项目一一关闭,降低风险,从而更好的保证网络的安全,畅通。

0
相关文章