快捷搜索:

Linux系统下的安全工具详细介绍

安然是系统治理员忧虑的主要问题之一,然而,因为internet激发的侵入危险变得越来越高。

据统计,假如联接的用户数量增添,骇客的数量随之增添.是以,安然对象呈指数增添.再一次多谢自由软件社区,由于他们给我们供给了我们能见到的最好的对象和大年夜量的文档。

在本文停止部分的参考文献区你将会发明许多有趣的联接,显而易见解,本文将要提到的弗成能没有疏漏之处,我提到的只是我遴选的一些好对象.

这篇文章不只写给小我用户,同样也是给系统治理员供给的,只管一些对象是为保护主机和前进收集安然专门设计的.大年夜部分对象可以在许多unix上事情(假如不是整个的unix上),不管这些unix是商业的照样免费的。

着末,这篇文章不是一篇"若何使你的收集或主机安然"的文章,而是一篇关于你能够(必须)用来前进一个收集或机械安然性的各类对象的先容.

一、通用的对象

让我们把这部分称为"白帽子保护红帽子,击退黑帽子的对象(tools for whitehats to protect redhat from blackhats)":-).大年夜多半linux发行版(不仅仅是redhat)都保含了一些好的安然对象,它们被用来使你的机械加倍安然.

在这些对象中,我们能数出TCPWrapper,PAM,影子口令对象等,由于它们是发行版的一部份,你可以找到关于它们的许多器械:HOWTO,man手册,以是我们不想在它们身上化太多光阴.

让我们从影子口令对象开始,简单来说,它们容许口令加密,文件/etc/passwd被文件/etc/shadow代替.

比影子口令对象更风雅的是PAM,就象名字所说的那样,这是别的一种认证措施,被用来设置设置设备摆设摆设对办事的造访节制.

可以在一些文件中定义许多限定,这样能轻易地进行治理.这些文件平日放在/etc/pam.d目录中.

TCPWrapper,简单来说,是经由过程ip地址或主机名来限定办事造访权限.倚靠两个文件来抉择允许造访照样回绝造访,这两个文件是/etc/host.allow和/etc/host.deny

TCPWrapper可以设置设置设备摆设摆设为两种事情模式:经由过程运行看管进程,或者是改动/etc/inetd.conf文件.假如你的unix系统没有包孕TCPWrapper,你可以从ftp://ftp.porcupine.org/pub/security/得到它.

现在,我要奉告你们,为什么我不详悉先容上面提到的这些对象,由于有一个对象可以完成上叙所有的功能,这便是Bastille-Linux,假如你只想安装一个安然对象,那么就安装它吧,今朝的常见的linux版本还没有包孕它, 但你可以到http://bastille-linux.sourceforge.net网站高低载.

顺便说一下,我们不会在本文先容Bastille-Linux,这样做毫无意义,由于我的同事在玄月份的LinuxFocus上有一篇相称不错的文章已经先容了它.他已经先容了所有的器械.去那看看吧,让我们把Bastille-Linux加入你生活中必弗成少的紧张对象中吧!

别的一个常用的来前进安然性的对象是xinetd,它存在于http://www.xinetd.org,对不起,我也不盘算先容它,同样是是由于我的同事在十一月份的LinuxFocus上做完了这项事情.

现在,让我们来看一看一些特其余器械。

二、防火墙对象

自由软件Linux带有把你机械变成防火墙的软件.2.2内核是iptables,而2.0内核则是ipfwadm.为了使iptables或ipfwadm事情,内核必需精确选择选项进行编译.关于这个问题,除了HOWTOS,还有很多相关文章,以是,同样我不盘算多提.

简单地说,我们可以把防火墙看作包过滤对象,事情最紧张的部分是关心防火墙的设置设置设备摆设摆设,同样,一个差错设置设置设备摆设摆设的防火墙会变得异常危险.

不管怎么说,防火墙相称紧张.

举个例子来说,Bastille-Linux可以给你供给一个基于ipchains的防火墙.

假如你造访http://www.linuxapps.com,并在搜索区中键入"firewall",你至少能获得40个以上的谜底.此中许多是基于ipchains或ipfwadm治理的图形化界面,别的一些是真正的大年夜对象,含有大年夜量的功能,举个例子,象T.REX,http://www.opensourcefirewall.com上的对象便是这样的器械.再提醒一次,一个防火墙在一个收集中必弗成少,然则收集安然不能仅仅寄托它,奉告你,一个骇客可以在十五分钟之内攻破它.

三、端口扫描

在这里我们打仗问题的核心部分,这个思惟是:象一个骇客干的那样,应用同样的对象,来监测你机械或收集的弱点所在.

在这个领域,我们能够在两个巨大年夜的对象上受益,但还有其它更多的.

第一个叫作nmap,你可以从http://www.insecure.org高低载到,同时还有大年夜量的信息和链接等等.

用nmap你可以反省你的收集或机械哪些端口是开放的.当然,你可以用其它的敕令做到这点,例如lsof或netstat,然则只能检测你自己的机械.显而易见的,nmap当然也可以反省你自己的机械.

nmap能供给给你许多信息,例如,它能奉告你运行的是哪种操作系统,看护你所开放的端口的危险性,着末,至少,nmap相称轻易应用.

nmap既可在shell下运行,也可以经由过程一个叫nmapfe的图形界面来运行.这个图形界面是基于gtk库的,nmap确当前版本是2.53,它可以在许多unix平台上运行,供给原代码,rpm包,带或不带图形界面.

nmap是系统治理必不缺少的对象.

多谢Fyodor老师,以及恭贺他的巨大年夜事情.

第二个叫作nessus,可从网站http://www.nessus.org高低载,nessus应用客户/办事器布局来事情,源代码遵照posix标准,能在许多unix版本上运行.以致还有基于win32的客户端.nessus依附nmap(要知道,没有nmap,nessus就不能运行),GUI客户端还必要GTK库函数的支持.

nessus当前版本是1.06,经由过程nessus,你可一用一个敕令扫描全部收集.这个敕令便是收集地址,例如,在目标框中键入192.168.1.0/24,将会扫描全部子网的255台机械。

只管nessus比nmap繁杂不少,但它不只轻易应用,功能很多.比方说,它可以天生申报,对照各申报的差异...,别的一个功能相称有趣:nessus为端口扫描中发明的问题供给办理规划,只要这些机械是unix系统,这些建议平日有用,对其它操作系统,就没这么恰当,但这不是一个问题.

下面是一台异常轻易受进击的机械的例子

nessus还有另一项巨大年夜的功能,它可以运行插件,这样,每次在任何地方发明新的安然破绽,它都可以很快进级.

nessus是另一个系统治理真的必要的对象,Deraison老师和Merci beaucoup做的棒极了.

两个对象都在一个linux机械和其它不合操作系统的收集中测试过,有Linux RH 6.2, Irix 6.5.7, Solaris 2.6, NeXTStep 3.3,QNX RT, BeOS 5.0, Amiga OS 3.5,Not Terminated 4.0.在大年夜多半平台上测试结果给人留下深刻印象,当然Amiga系统没有真正被认证,(由于它看起来象一台打印机或路由器!),然则有谁现在的收集中还有这种操作系统呢(除了我们)?

不管怎么说,整些对象是本日收集中必须有的对象.

为告终束这个章节,让我们来提一提其它一些对象象SARA(http://www-arc.com/sara/),或者是它的父辈SATAN(http://www.porcupine.org/satan/)或AINT(http://www.wwdsi.com).它们不只是端口扫瞄器而且它们都对前进收集安然异常有用。

四、嗅探系统

有些对象能发明端口扫描或入侵.标准的系统治理不能没有这种对象(这有点偏执!).

第一套对象集来自算盘工程.你可以从http://www.psionic.com得到这些对象.此中包孕三个对象:

logcheck,portsentry和hostsentry.

Logcheck版本是1.1.1,portsentry版本是1.0,hostsentry版本是0.0.2alpha.

Portsentry是一个端口扫描发明对象,就象名字所说的那样,假如端口被某处扫描,portsentrt就会急速堵赛主机,要么便是应用防火墙扔掉落路由(或者是一个不用的ip地址),或者只要TCPWrapper安装在你机械上,就把骇客的ip地址写进文件/etc/hosts.deny中,反映相称有效率! Portsentry依附一个主要的设置设置设备摆设摆设文件和一些特殊的文件,这些特殊文件是用来漠视一些主机(也便是不堵塞它们),或者是堵塞某些主机的某些端口。经由过程设置设置设备摆设摆设文件,你可以定义portsentry的事情要领。

首先,你要选择梆定到portsentry上的端口,是TCP照样UDP(或者两者都是),留意,假如你应用X11,就不能绑定到端口6000上!

按照你应用的unix系统,你有两种不合的操作要领来监视端口,现在只有linux支持先辈模式。

下一步是堵塞选项,要么堵塞要么不堵塞扫描,或着运行外部敕令。

接着选择扔掉落路由,或者把进击者重定向到一个收集上不应用的ip地址或者是防火墙上。

下一步是与TCPWrapper有关,那便是你得抉择是不是写一个回绝条款进文件/etc/hosts.deny中。

接下来你可以定义一个外部敕令来运行,着末,你可以为扫描选一个触发器值,(缺省为0)。

以上便是你必须做的,我们假设你相识关于日志记录的统统器械。由于,显而易见,所有的警告被记录下来。这意味着,假如你想把终极的警告放到/var/log/messages或var/log/syslog或/var/adm/messages等文件

之外的某个地方,你可以改动你的syslog.conf文件。

你可以选择在后台运行portsentry,这个选项取决于你得系统,在大年夜多半unix版本上可以应用-tcp,-udp选项,在linux机械上可以用-atcp,-audp选项.(a代表先辈)

让我们来看一看扫描一台运行有portsentry的机械时的结果.

假如你是一个每个礼拜看一越日志的系统治理员(你应该换个事情了),算盘工程供给了别的一个对象:logcheck.假如在日志中发明非常的征象时,这个对象经由过程cron义务和发邮件给治理员.

这个套件中最新的对象叫作hostsentry,看起来相称有趣,但我没有测试过.

假如你想要一个巨大年夜,简单和高效的对象时,选portsentry!

感谢Rowland老师,他的事情异常巨大年夜,顺便说一下,我爱好他的风趣.

别的一个系统治理员真的弗成少的对象叫snort.

snort是一个IDS(入侵检测系统)并且异常正确的轻量级的对象.你能从http://www.snort.org网站高低载1.6.3版本的snort.听说可以在任何能和libpcap事情的平台上运行.最好应用最新版的libpcap.顺便说一下,你可以获得win32版的snort.

snort可以阐发ip数据流,供给异常壮实的日志功能.snort依附规则脚本,你可以监视你想要监视的器械.

以致供给给你一个规则数据库,这样,你就得做一个紧张的抉择:把探测器放在何处,或者你会提出,啦种流量要监控?今,出,在防火墙外照样内部?

我们宁愿建议在任何一个地方!!!这对我而言,是个严肃的问题,假如你是一个"标准"的系统治理员,探测器越多越好.

现在你抉择 监听某处,你必须选择利用的规则.snort带有许多基础的规则,后门,ddos,finger,ftp...这些规则被放在snort-lib文件中,你可以从snort的网站上获得新的和进级的规则.

你只要把snort设置好选项作为后台义务运行就可以了,假如要把snort当做守护进程运行,选项便是-D由于你可以重定向日志,以是你也能定义日志记录在哪里,以致是别的一台机械.

在这篇文章中提到snort的所有功能是弗成能的,这篇文章只能奉告你一部份.不管这么说。

nort是别的一个你必弗成少的对象.snort是异常巨大年夜的对象.多谢Roesch老师.

一些免费对象:比方说http://www.cs.tut.fi/~rammer/aide.html先容的AIDE。

五、加密

在这个领域有许多对象,我们不能整个说到它们,不管如何,我们至少要说一说SSH,分外是免费版本的openSSH.从http://www.openssh.com上能获得它.现在版本是2.3.0,这个巨大年夜的产品本来是在openbsd上开拓的,现在可以运行在许多unix版本上.

openssh是telnet和其它远程敕令如rsh,rlogin等的替代品.它包孕scp这一ftp和rcp的替代品.openssh可以对收集上传输的数据进行加密.telnet,rsh等用明文传输,当然包孕口令的传输!

以是,你不应该再应用上述对象,而应改用openssh.这有点逼迫,就让我们少少法西斯吧!

问题是这种对象和加密法有关,有些国家异常严格,不允许这类软件.工作正在发生了变更,然则在许多国家你照样不能自由应用这些软件。举个例子来说,一段光阴曩昔,假如你在象法国这类国家中应用ssh,你就被算作一个特工,(根据国家人权法)幸运的是现在不是这样了,不管怎么说, 我建议在应用这类对象时先读一下有关

规定。你可以在http://www2.epic.org/reports/crypto2000/countries.html 网页上找到不合国家关于这种环境的申报。

终究,加密是一个异常关注的话题,有许多对象可供斟酌,让我们提一下http://www.openssl.org上的openssl(安然套接层),或者是http://www.strongcrypto.com上的Strong Crypto,一个公开原码的linux上的VPN对象。

vpn是别的一种办理规划,值得用别的一篇文章来具体先容。(象上面题及的大年夜多半对象)是以,我们不想在这里多说什么。

显而易见解,我们不会忘怀提一下在http://www.ietf.org/html.charters/openpgp-charter.html网页上的

openPGP和网站http://www.gnupg.org中的GNUpg.

六、脚本

在这里,我们不想提什么对象,脚本编写是任何一个系统治理员的主要技能之一。在你治理收集时,shell脚本,perl脚本等都是你天天事情的一部份。

显而易见解,脚本可被用在义务自动履行上,然则,我们同样可以把它利用在安然监控上,每个系统治理员都有他自己的必要,而且他老是试图用得当他的要领来治理这些。这平日没那么轻易,有一样器械能给你赞助:

订阅系统治理员杂志!这本杂志是系统治理员写给系统治理员的,供给给你许多法度榜样和脚本,每一期以致还配有一张电脑光碟,当然包孕所有的法度榜样和脚本。

这不是广告,只不过奉告大年夜家一条找到前进安然的许多办理规划的图解。假如你是一个系统治理员,去http://www.samag.com看一看吧,你应该试一试,当然,这仅仅是一个建议。

七、还有什么

本文已相称多地讲述安然问题,然则,就如我们开始就说过,这篇文章不是一篇“若何使你的收集或主机安然”的文章。关于这个题目,一本书都不敷,安然不仅仅依附对象,也与许多行径有关,比如,一些平日的习气让我们犯错。什么时刻人们会明白M$ office文件实际上是一个安然炸弹,它们不只体形伟大年夜,而且可能满是宏病毒。

wintel用户,请不要把word,execl文件作为邮件附件通报,此外,假如你收到它们,请不要打开它,这仅仅是一个建议,然则,你已经被警告过,它们和你收到或下载的可履行文件一样危险(在我看来,更危险)。顺便说一句,纯文本和html文件在大年夜小上比office文件小得多,而且它们没有危险性。

当然,我知道wintel word这样事情:当你下载一个零丁的驱动,它平日是可履行的,让我们承认,我们可以信托这个大年夜公司...,然则你知道你下载下来的文件可能发生了什么?诚然,这样想有点偏执了,然则不是猖狂呢?为什么你觉得许多文件有一个校对值来查验精确性呢?

下面所说的可能“危害”许多人,但这是事实,JAVA是危险的!applet不安然,javascript不安然,虽然如斯,有趣的是许多网站应用JAVA,此外,JAVA是当你造访网站时,浏览器常常逝世掉落的问题根源。这是网站的目的吗?

更不要提来自M$的ActiveX了!

建议,用Rebol代替它。(http://www.rebol.com)

由于基于这样的事实:请新的internet专家,竣事用wintel word和IE5来建站。我留意到,这样的网站四处伸展,终究许多人用许多不合的操作系统和许多不合的浏览器联接internet,那样做,即是回绝人们造访你的网站。internet的目标

是共享,应用专用的器械是无意义的,以我的粗见,当扶植一个网站时,首先要做的是查清造访者是哪种操作系统,哪种浏览器...,但这只是我小我的不雅点。想一想吧,假如你用unix机械和netscape造访那样的网站,你连首页都看不到!

对不起,有点离题了。

别的一个紧张的不雅点是弗成能做到100%安然。我们离那还早呢。你所能做的仅仅是前进它,事实上,你有可能可以把我们提到的对象都用上,然则把后门开的大年夜大年夜的!别傻了,骇客们不会首先就去试图解开128位的密钥,然则他们可以在某个地方找到一个小破绽。以是要小心suid或sgid法度榜样,以及造访权限,运行的没用的办事,取消的账号等。

的unix版本有许多相似之处,它们有许多不合的安然隐患要关。有些就象个筛子一样破绽百出,你必须留意到这点。比方说,有一个internet cable联接的M$是了不起的,然则你就会呈现在骇客机械上的网上邻居上,M$将会把你出卖给骇客,我不是在开玩笑...

收集和谋略机安然有一条很长的路要走,假如你对这个领域感兴趣,你天天都可以学到新器械。幸运的是,下面有一些资本可以使用。

参考

httpp://www.linuxsecurity.com

http://www.sans.org

http://www.infosyssec.org

http://www.securityfocus.com

http://www.cs.purdue.edu/coast/hotlist/

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