快捷搜索:   服务器  安全  linux 安全  MYSQL  dedecms

Linux服务器部署高效防毒软件

Linux对病毒的抵抗能力是人所共知的。这主要得力于其优秀的技术设计,这不仅使它的作业系统难以宕机,而且也使其难以被滥用。首先,Linux早期的使用者一般都是专业人士,就算是今天,虽然其使用者激增,但典型的使用者仍为那些有着很好的电脑背景且愿意协助他人的人,Linux高手更倾向于鼓励新手支持这样一种文化精神。正因为如此,Linux使用群中一种内化的倾向就是以安全的经验尽量避免感染病毒。其次,年轻,也是Linux很少受到病毒攻击的原因之一。事实上,所有的操作系统(包括DOS和Windows)在其产生之初,也很少受到各种病毒的侵扰。 Unix经过27年的发展和完善,已经变得非常坚固,而Linux基本上继承了它的优点。在Linux里,如果不是超级用户,那么恶意感染系统文件的程序将很难得逞。随着Linux在服务器上的广泛应用,各种针对它病毒也纷至沓来。



一、Linux 下病毒分类

    Linux操作系统一直被认为是Windows系统的劲敌,因为它不仅安全、稳定、成本低,而且很少发现有病毒传播。但是,随着越来越多的服务器、工作站和个人电脑使用Linux软件,电脑病毒制造者也开始攻击这一系统。对于Linux系统无论是服务器,还是工作站的安全性和权限控制都是比较强大的,这主要得力于其优秀的技术设计,不仅使它的作业系统难以宕机,而且也使其难以被滥用。当然,这并不是说Linux就无懈可击,病毒从本质上来说是一种二进制的可执行的程序。速客一号(Slammer)、冲击波(Blast)、霸王虫(Sobig)、米虫(Mimail)、劳拉(Win32.Xorala)病毒等恶性程序虽然不会损坏Linux服务器,但是却会传播给访问它的Windows系统平台的计算机。

    Linux平台下的病毒分类:

    1.可执行文件型病毒:可执行文件型病毒是指能够寄生在文件中的,以文件为主要感染对象的病毒。病毒制造者们无论使用什么武器,汇编或者C,要感染ELF文件都是轻而易举的事情。这方面的病毒有Lindose。

    2.蠕虫(worm)病毒:1988年Morris蠕虫爆发后,Eugene H. Spafford 为了区分蠕虫和病毒,给出了蠕虫的技术角度的定义,“计算机蠕虫可以独立运行,并能把自身的一个包含所有功能的版本传播到另外的计算机上。”在Linux 平台下,蠕虫病毒极为猖獗,像利用系统漏洞进行传播的ramen,lion,Slapper等,这些病毒都感染了大量的Linux系统,造成了巨大的损失。

    3.脚本病毒:目前出现比较多的是使用shell脚本语言编写的病毒。此类病毒编写较为简单,但是破坏力同样惊人。我们知道,Linux系统中有许多的以.sh结尾的脚本文件,而一个短短十数行的shell脚本就可以在短时间内遍历整个硬盘中的所有脚本文件,进行感染。

    4.后门程序:在广义的病毒定义概念中,后门也已经纳入了病毒的范畴。活跃在Windows系统中的后门这一入侵者的利器在Linux平台下同样极为活跃。从增加系统超级用户账号的简单后门,到利用系统服务加载,共享库文件注射,rootkit工具包,甚至可装载内核模块(LKM),Linux平台下的后门技术发展非常成熟,隐蔽性强,难以清除。是Linux系统管理员极为头疼的问题。

二、Linux 服务器病毒防范策略

    综合以上介绍,可以看到总体来说计算机病毒对Linux系统存在较小的危险。但是由于各种原因在企业应用中往往是Linux和Windows操作系统共存形成异构网络。在服务器端大多使用Linux和Unix的,桌面端使用Windows 。所以为Linux的防范病毒策略分成两个部分:

    1. 针对Linux本身(服务器和使用其作为桌面的计算机)防范策略。

    可执行文件型病毒、蠕虫(worm)病毒、脚本病毒的防范通过安装GPL查杀病毒软件基本可以防范。服务器端可以使用f-prot(http: //www.f-prot.com/  )它是工作在命令行下的,运行时可以较少占用系统资源。桌面用户可以选择tkantivir(http://www.sebastian- geiges.de/tkantivir/ )是用Tcl/Tk写的,可以运行在任何X-Windows环境下面,比如KDE或Gnome等。

    对于后门程序防范可以采用LIDS(http://www.lids.org/ )和Chkrootkit(http://www.chkrootkit.org/ ),LIDS是Linux内核补丁和系统管理员工具(lidsadm),它加强了Linus内核。可以保护dev/目录下的重要文件。而 Chkrootkit可以检测系统的日志和文件,查看是否有恶意程序侵入系统,并且寻找关联到不同恶意程序的信号。最新版本的 Chkrootkit0.45可以检测出sniffers、Trojans、worms、rootkit等59种。

    此外对于Linux服务器来说运行的软件大都是开源软件,而且都在不停升级,稳定版和测试版交替出现。在www.apache.org 等网站上,最新的ChangeLog中都写着:bug fix, security bug fix的字样。所以Linux系统管理员要经常的关注相关网站的bug fix和升级,及时升级或添加补丁。千万不要报侥幸心理,否则一个Shell脚本就可能拿下你的网站。套用一句名言:你的服务器永远可能在第二天被黑客接管。

    2.针对使用Linux服务器后端的Windows系统的病毒防范策略。

    许多企业使用代理服务器接入互联网,许多用户Windows系统进行都是在进行HTTP网页浏览和文件下载时感染病毒,所以可以在代理服务器上加挂一个病毒过滤器,对用户浏览的HTTP网页进行病毒检测,发现有用户浏览网页感染病毒的状况即由代理服务器进行阻断,丢弃带有病毒的请求,将不安全的进程阻止在代理服务器内,禁止带有病毒的数据向客户端计算机传播。

    squid是一款非常优秀的代理服务器软件,但是并没有专门的病毒过滤功能。可以考虑使用德国开放源码爱好者开发的一款基于Linux的病毒过滤代理服务器——HAVP(http://www.server-side.de/ )。HAVP病毒过滤代理服务器软件既可以独立使用,也可以与Squid串联使用,增强Squid代理服务器的病毒过滤功能。提供邮件服务是Linux服务器中重要应用。可以使用ClamAV(http://www.clamwin.com/ ),ClamAV 全名是 Clam AntiVirus,它跟Liunx一样强调公开程序代码、免费授权等观念,ClamAV 目前可以侦测超过40,000 种病毒、蠕虫、木马程序,并且随时更新数据库,有一组分布在世界各地的病毒专家,24小时更新及维护病毒数据库,任何人发现可疑病毒也可以随时跟她们取得联系,立刻更新病毒码,在极短的时间内,网络上采用ClamAV的邮件服务器就完成最新的防护动作。

三、安装配置f-prot

    系统要求:硬件: 中央处理器:兼容 Intel X86处理器Pentium 200 以上 ,32 兆(推荐64兆)内存,100兆硬盘空间 ,显示内存4兆。软件: 内核版本 2.2以上 ,perl语言版本5。8以上。

    f-prot 官方网址:http://www.f-prot.com/ ...,是著名的冰岛F-Port杀毒软件,具有即时病毒扫描、定期病毒扫描、自定义病毒扫描等功能。这是一个简单使用的抗滤过性病原体的工具,将透过发现及移动的病毒入侵中,保护你的资料。它目前可以发觉出64000不寻常及有害的计算机害虫。除了存取和要求扫描外,此工具也包含更新功能,自动的得到最新的病毒码程序。任何新的病毒都可以直接的加入到查觉数据库及解毒数据库。更新及病毒扫描可以自动执行。f-prot免费版为Home版,Linux版免费,windows收费,下载地址: Linux版本:http://www.f-prot.com/downl... ,填写基本资料后才能下载,下载后,安装过程中不会要求输入序列号等。f-prot主要用于文件服务器(NFS和Samba)和邮件服务器(sendmail、postfix、Qmail)。

    1. 软件下载

    #wget http://files.f-prot.com/fil...

    2. 软件安装升级

    软件安装完成后会自动连接到官方网站进行升级,操作如下:

#rpm -ivh fp-linux-ws.rpm
Preparing...                ########################################### [100%]
   1:fp-linux-ws            ########################################### [100%]
***************************************
* F-Prot Antivirus Updater            *
***************************************

There's a new version of:
"Application/Script viruses and Trojans" signatures on the web.
Starting to download...
Download completed.

Preparing to install Application/Script viruses and Trojans signatures.
Application/Script viruses and Trojans signatures have successfully been installed.

Preparing to install Document/Office/Macro viruses signatures.
Document/Office/Macro viruses signatures have successfully been installed.

**********************************
* Update completed successfully. *
**********************************
默认软件包安装在/usr/local/f-prot 目录下。

    3. 查看f-prot手册页

    f-prot是命令行下工作软件,软件提供请详细的手册页面。使用前请详细阅读。使用过Unix的用户比较熟悉man手册页。在Linux系统中存储着一部联机使用的手册,以供用户在终端上查找。man 是manual(手册)的缩写,使用man这个命令可以调阅其中的帮助信息,非常方便和实用。在您有输入命令有困难时, 您可以立刻得到这个文档. 例如, 如果您使用ps命令时遇到困难, 您可以输入man   f-prot得到帮助信息. 这会显示出f-prot的手册页。由于手册页man page是用less程序来看的(可以方便地使屏幕上翻和下翻), 所以在man page里可以使用less的所有选项。

    在less中比较重要的功能键有: [q]退出 ;[Enter]一行行地下翻 ;[Space]一页页地下翻 ;[b]上翻一页;[/]后跟一个字符串和[Enter]来查找字符串 ;[n]发现上一次查找的下一个匹配。手册页man page在很少的空间里提供了很多的信息。

总结:

    到此为止我们介绍了Linux 下病毒特点以及f-prot的安装方法,下篇文章笔者会介绍f-prot的使用方法和技巧,敬请关注。

本文着重介绍linux环境下的f-prot防病毒软件的具体应用技巧。

一、 修改相关参数

    f-prot主要用于文件服务器(NFS和Samba)和邮件服务器(sendmail、postfix、Qmail)。对于文件服务器(NFS和Samba)可以直接使用,而邮件服务器(sendmail、postfix、Qmail)需要作相应修改,这里笔者以 Postfix邮件服务器为例。Postfix 邮件服务器使用MailScanner 调用f-prot 与SpamAssassin, MailScanner配置比较直观简单。

    1. 安装、配置MailScanner

    # tar xzf MailScanner-4.48.4-2.rpm.tar.gz
    # cd MailScanner-4.48.4-2
    # ./install.sh

    2. 修改 /etc/MailScanner/MailScanner.conf

    Run As User = postfix
    Run As Group = postfix
    Incoming Queue Dir = /var/spool/postfix/hold
    Outgoing Queue Dir = /var/spool/postfix/incoming
    MTA = postfix
    Virus Scanners = f-prot
    Always Include SpamAssassin Report = yes
    Use SpamAssassin = yes
    Required SpamAssassin Score = 4
    SpamAssassin User State Dir = /var/spool/MailScanner/spamassassin
    SpamAssassin Install Prefix = /usr/bin
    SpamAssassin Local Rules Dir = /etc/MailScanner

    3. 让Postfix 调用MailScanner,在/etc/postfix/main.cf 加入以下一行

    header_checks = regexp:/etc/postfix/header_checks

    4. 编辑/etc/postfix/header_checks 为以下内容

    /^Received:/ HOLD

    5. 修正权限

    # chown postfix.postfix /var/spool/MailScanner/incoming
    # chown postfix.postfix /var/spool/MailScanner/quarantine

二、 f-prot命令行参数

    f-prot是基于命令行下的工具,配合一些参数可以更有效查杀Linux、Windows病毒。
    格式:f-prot [drive, file or directory] [options]
    [options]

   应用说明:目前的防病毒产品普遍应用了一种被称为启发式扫描的技术,这是一种基于人工智能领域启发式( heuristic )搜索技术和行为分析手段的病毒检测技术。启发式扫描能够发现一些应用了已有机制或行为方式的病毒,根据“图灵试验”所获得的理论基础来分析,完全防御未知病毒是不可能的,只有当计算机拥有了超越人类的智能才可能检测出所有的未知病毒。智能主动防御可以有效防御针对未知的威胁及网络攻击;启发式扫描技术主要针对未知的病毒。这两种技术是可以并存的。

    [drive, file or directory] 方便代表驱动器名称、文件名称或者目录名称。

三、 测试f-prot



    您可以从网址(http://www.eicar.org/anti_v... )下载一个测试感染文件 http://www.eicar.org/downlo... 将其放在一个临时目录中。使用f-prot扫描该目录。然后查看结果,如果出现图2 界面表示安装fprot安装工作成功。
我们可以看到f-port程序版本、扫描引擎版本。病毒库版本:“VIRUS SIGNATURE FILES”包括:SIGN.DEF、SIGN2.DEF、MARCO.DEF 以及生成日期。

四、 应用实例



    例如需要可以检查系统加载的Windows分区,如果要检查C盘:使用命令(扫描结果见图-2):

    #f-prot /mnt/winc -report=cjh

    上面这个命令还会生成一个名称cjh是报表文件。如果你能确认你的电子邮件服务器支持8—bit的字节,可以直接用命令发送报表到管理员邮箱 :

    cat <附件文件名> | mail <邮件地址>
    cat(“concatenate”的缩写)命令是将几个文件处理成一个文件并将这种处理的结果保存到一个单独的输出文件,这里我们用它来合并邮件的文本。
    cat cjh | mail Roger

    上面的命令表示把内容为cjh文件内容的邮件给用户Roger。

五、 升级软件

    f-prot是依赖当前信息来防止计算机受到新的安全威胁。通过在线升级可以给您的f-prot提供这些新信息,将程序更新和防护更新下载到您的计算机。 f-prot安装目录包含一个tools子目录,进入这个目录执行一个perl语言脚步会自动连接到updates.f-prot.com:80端口进行系统的扫描引擎版本和病毒库版本升级,操作如下:

    #./check-updates.pl

目前,f-prot杀毒软件平均五到七天升级一次。

六、 定时启动f-prot方法

    在 Linux 中,任务可以被配置在指定的时间段、指定的日期、或系统平均载量低于指定的数量时自动运行。Linux 随带几个自动化任务的工具:cron、at。

    1. 使用cron命令定时启动f-prot

    cron 是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程。cron 假定系统持续运行。如果当某任务被调度时系统不在运行,该任务就不会被执行。要使用 cron 服务,你必须安装了 vixie-cron RPM 软件包,而且必须在运行 crond 服务。要判定该软件包是否已安装,使用 rpm -q vixie-cron 命令。要判定该服务是否在运行,使用 /sbin/service crond status 命令。如果没有打开可以运行命令:ntsysv,打开窗口在crond服务选项加上*(用空格键),然后重新启动系统,这样系统会启动cron服务。 cron 的主配置文件是 /etc/crontab,/etc/crontab 文件中的每一行都代表一项任务,它的格式是:

    minute   hour   day   month   dayofweek   command
    • minute — 分钟,从 0 到 59 之间的任何整数。
    • hour — 小时,从 0 到 23 之间的任何整数。
    • day — 日期从 1 到 31 之间的任何整数(必须是该月份的有效日期)。
    • month — 月份,从 1 到 12 之间的任何整数(或使用月份英文简写如 jan)。
    • dayofweek — 星期从 0 到 7 之间的任何整数(或使用星期的英文简写如 sun等)。
    • command — 要执行的命令。

    应用实例:

    首先建立定时器设置文件,文件名称mytype(名称自己设定):
#crontab -e
文件内容:
19 00 * * * /usr/local/f-prot/f-prot /mnt/winc -report=/root/.xfprot/xfprot.log -dumb -archive -noserver
用vi或其他编辑器存盘退出。使用 crontab命令添加到任务列表中:
#crontab -u mytype
这样用户在每天的19点00分会自动对目录/mnt/wic进行病毒扫描并且产生一个报表文件xfprot.log。

    2. 使用at命令定时启动f-prot

    cron 被用来调度重复的任务,at 命令被用来在指定时间内调度一次性的任务。要使用 at 命令,你必须安装了 at RPM 软件包,并且 atd 服务必须在运行。要判定该软件包是否被安装了,使用 rpm -q at 命令。要判定该服务是否在运行,使用 /sbin/service atd status 命令。
顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论