Category: 安全加固

2008-11-19

正确配置和维护Apache安全性

归类于: 安全加固 - 19 Nov 2008

【简 介】
   在目前的Internet时代,主页已成为树立公司形象和展示自我天地的一个重要手段,配置一台强大且安全的Web Server就显得尤其重要。在众多的Web Server产品中,Apache是应用最为广泛的一个产品,同时也是一个设计上非常安全的程序。但是,同其它应用程序一样,Apache也存在安全缺陷。本文将详细介绍如何正确配置和维护Apache WEB Server的安全性问题等。

一,Apache服务器的介绍

Apache服务器它是Internet网上应用最为广泛的Web服务器软件之一。Apache服务器源自美国国家超级技术计算应用中心(NCSA)的Web服务器项目中。目前已在互联网中占据了领导地位。Apache服务器得经过精心配置之后,才能使它适应高负荷,大吞吐量的互联网工作。快速、可靠、通过简单的API扩展,Perl/Python解释器可被编译到服务器中,且完全免费,完全源代码开放。如果你需要创建一个每天有数百万人访问的Web服务器,Apache可能是最佳选择。

二,Apache服务器的主要安全缺陷

正如我们前言所说尽管Apache服务器应用最为广泛,设计上非常安全的程序。但是同其它应用程序一样,Apache也存在安全缺陷。毕竟它是完全源代码,Apache服务器的安全缺陷主要是使用HTTP协议进行的拒绝服务攻击(denial of service)、缓冲区溢出攻击以及被攻击者获得root权限三缺陷和最新的恶意的攻击者进行“拒绝服务”(DoS)攻击。合理的网络配置能够保护Apache服务器免遭多种攻击。我们来介绍一下主要的安全缺陷:

(1)使用HTTP协议进行的拒绝服务攻击(denial of service)的安全缺陷

这种方法攻击者会通过某些手段使服务器拒绝对HTTP应答。这样会使Apache对系统资源(CPU时间和内存)需求的剧增,最终造成Apache系统变慢甚至完全瘫痪。

(2)缓冲区溢出的安全缺陷

该方法攻击者利用程序编写的一些缺陷,使程序偏离正常的流程。程序使用静态分配的内存保存请求数据,攻击者就可以发送一个超长请求使缓冲区溢出。比如一些Perl编写的处理用户请求的网关脚本。一旦缓冲区溢出,攻击者可以执行其恶意指令或者使系统宕机。

(3)被攻击者获得root权限的安全缺陷

该安全缺陷主要是因为Apache服务器一般以root权限运行(父进程),攻击者会通过它获得root权限,进而控制整个Apache系统。

(4)恶意的攻击者进行“拒绝服务”(DoS)攻击的安全缺陷

这个最新在6月17日发现的漏洞,它主要是存在于Apache的chunk encoding中,这是一个HTTP协议定义的用于接受web用户所提交数据的功能。 利用黑客程序可以对于运行在FreeBSD 4.5, OpenBSD 3.0 / 3.1, NetBSD 1.5.2平台上的Apache服务器均可进行有效的攻击.

所有说使用最高和最新安全版本对于加强Apache Web服务器的安全是至关重要的。请广大Apache服务器管理员去http://www.apache.org/dist/httpd/下载补丁程序以确保其WEB服务器安全!

三, 正确维护和配置Apache服务器

虽然Apache服务器的开发者非常注重安全性,由于Apache服务器其庞大的项目,难免会存在安全隐患。正确维护和配置Apache WEB服务器就很重要了。我们应注意的一些问题:

(1)Apache服务器配置文件

Apache …

配置安全的SCO UNIX网络系统

归类于: 安全加固 - 19 Nov 2008

一个网络系统的安全程度,在很大程度上取决于管理者的素质,以及管理者所采取的安全措施的力度。在对系统进行配置的同时,要把安全性问题放在重要的位置。

  SCO UNIX,作为一个技术成熟的商用网络操作系统,广泛地应用在金融、保险、邮电等行业,其自身内建了丰富的网络功能,具有良好的稳定性和安全性。但是,如果用户没有对UNIX系统进行正确的设置,就会给入侵者以可乘之机。因此在网络安全管理上,不仅要采用必要的网络安全设备,如:防火墙等,还要在操作系统的层面上进行合理规划、配置,避免因管理上的漏洞而给应用系统造成风险。

  下面以SCO UNIX Openserver V5.0.5为例,对操作系统级的网络安全设置提几点看法,供大家参考。

  合理设置系统安全级别

  SCO UNIX提供了四个安全级别,分别是Low、Traditional、Improved和High级,系统缺省为Traditional级;Improved级达到美国国防部的C2级安全标准;High级则高于C2级。用户可以根据自己系统的重要性及客户数的多少,设置适合自己需要的系统安全级别,具体设置步骤是:scoadmin→system→security→security profile manager。

  合理设置用户

  建立用户时,一定要考虑该用户属于哪一组,不能随便选用系统缺省的group组。如果需要,可以新增一个用户组并确定同组成员,在该用户的主目录下,新建文件的存取权限是由该用户的配置文件.profile中的umask的值决定。umask的值取决于系统安全级, Tradition安全级的umask的值为022,它的权限类型如下:

  文件权限: - r w - r — r –

  目录权限: d r w x r - x r - x

  此外,还要限制用户不成功登录的次数,避免入侵者用猜测用户口令的方法尝试登录。为账户设置登录限制的步骤是:Scoadmin–〉Account Manager–〉选账户–〉User–〉Login Controls–〉添入新的不成功登录的次数。

  指定主控台及终端登录的限制

  如果你希望root用户只能在某一个终端(或虚屏)上登录,那么就要对主控台进行指定,例如:指定root用户只能在主机第一屏tty01上登录,这样可避免从网络远程攻击超级用户root。设置方法是在/etc/default/login文件增加一行:CONSOLE=/dev/tty01。

  注意:设置主控台时,在主机运行中设置后就生效,不需要重启主机。 …

Linux安全配置步骤简述

归类于: 安全加固 - 19 Nov 2008

一、磁盘分区  

  1、如果是新安装系统,对磁盘分区应考虑安全性:

  1)根目录(/)、用户目录(/home)、临时目录(/tmp)和/var目录应分开到不同的磁盘分区;

  2)以上各目录所在分区的磁盘空间大小应充分考虑,避免因某些原因造成分区空间用完而导致系统崩溃;

  2、对于/tmp和/var目录所在分区,大多数情况下不需要有suid属性的程序,所以应为这些分区添加nosuid属性;
  
方法一:修改/etc/fstab文件,添加nosuid属性字。例如:
/dev/hda2 /tmp ext2 exec,dev,nosuid,rw 0 0

 方法二:如果对/etc/fstab文件操作不熟,建议通过linuxconf程序来修改。
* 运行linuxconf程序;
* 选择\”File systems\”下的\”Access local drive\”;
* 选择需要修改属性的磁盘分区;
  * 选择\”No setuid programs allowed\”选项;
  * 根据需要选择其它可选项;
 * 正常退出。(一般会提示重新mount该分区)

   二、安装

1、对于非测试主机,不应安装过多的软件包。这样可以降低因软件包而导致出现安全漏洞的可能性。
  2、对于非测试主机,在选择主机启动服务时不应选择非必需的服务。例如routed、ypbind等。

  三、安全配置与增强

  
  内核升级。起码要升级至2.2.16以上版本。
  GNU libc共享库升级。(警告:如果没有经验,不可轻易尝试。可暂缓。)
  关闭危险的网络服务。echo、chargen、shell、login、finger、NFS、RPC等
  关闭非必需的网络服务。talk、ntalk、pop-2等
  常见网络服务安全配置与升级
  确保网络服务所使用版本为当前最新和最安全的版本。 …

让FreeBSD更安全

归类于: 安全加固 - 19 Nov 2008

作者: Allan

前几天我整理了过去的一些笔记,以及近几年收集的一些安全建议。所以我就写一点关于使你的FreeBSD系统安全方面的内容。
  很明显,在这个领域我不可能用一篇文章全面地介绍所有的事情。另外,也不可能给出一个防止四海皆准的,保证任何系统都安全的方案。

  在我整理笔记的过程中,我注意到很多都是关于如何让FreeBSD服务器(如,Web服务器,邮件服务器,等等)更安全的方法。如果你用FreeBSD做为个人系统,并希望完全的桌面功能的话,这就不太够用了。你肯定不愿意因为某些强化安全的设置,造成某些功能无法使用,并在此后的一周内孤立无援地与计算机进行搏斗,直到找到问题的所在。

  因此,你将注意到,和许多其它安全教程不同,这篇文章并不建议你修改FreeBSD系统中文件的权限。这是有意的。除非你正在强化一台生产服务器的安全性,并且十分明白自己在做什么,否则绝不要修改文件的权限。(如果你一定要做做实验的话,请在自己的home文件夹中作)。不然的话,一些东西可能就会停止工作,例如,电子邮件,X Window系统,声音。怪事会在不经意的时刻发生,让你头疼良久之后才意识到可能是一周前的某个权限设置造成的问题。

  我们都知道Internet并不总是一个友好的地方,而且你可能也不想让另一个地方的人拥有与你一样的访问许可权限。这意味着你可能不希望在没有某种防火墙的前提下访问Internet。幸运的是,你的FreeBSD系统支持良种防火墙:ipfw 和 ipfilter。更令人振奋的是,通俗易懂的文档正在迅速增加。如果你不在防火墙后面,那么请花一个周六下午的时间读一读如何在你的系统上配置防火墙的文章,并操练一把。你将为此感到愉快,以下是一部分可用的资源:

  man ipfw
  FreeBSD Handbook: Section 10.7 — Firewalls
  Setting Up a Dual-Homed Host using IPFW and NATD

  man ipf
  IPFilter and PF resources

  好的安全总是“层层设防”,这意味着如果一个机制失效了,仍然有备用的机制。即使你的系统已经受到了防火墙的保护,你仍然需要禁用所有服务,除了那些绝对需要的。在桌面系统中,不需要很多的服务。

  用下面的命令可以查看哪些服务正在试图监听连接你的系统:
  sockstat -4

  输出的差别可能很大,这取决于在安装的最后阶段选择的软件,以及之后自行安装的port和package。

  端口6000(X Window服务器)是输出中非常常见的;如果没看到它的话,启动一个X Window会话,然后重新运行 sockstat -4。不幸的是,在过去的几年中有很多针对X Window的攻击。幸运的是,使用X并不需要打开6000端口,不必担心,即使关闭了这个端口,仍然可以使用图形界面!

  许多方法可以关掉这个端口。我发现的最简单的方法是成为超级用户,并编辑 /usr/X11R6/bin/startx。找到 serverargs 那一行,并把它改为类似下面的样子:
  serverargs=\”-nolisten tcp\”

  保存修改之后,以普通用户身份运行X并执行 sockstat -4。如果没有打字错误,那么X会像往常那样启动,但 sockstat -4 输出中不会再出现端口6000。

  如果想了解6000端口打开的后果,请阅读 …

IIS安全配置方案

归类于: 安全加固 - 19 Nov 2008

一、 IIS设置

1. 安装IIS时应该注意只安装Option Pack中必须的服务,建议不要安装Index Server、FrontPage
Server Extensions、示例WWW站点等功能。
2. 关闭不必要的服务,服务开的多不是好事,将没必要的服务通通关掉,特别是连管理员都不知道
的和一些危险的服务,免得给系统带来灾难,同时也能节约一些系统资源。以下服务是一定要关闭
的:
Schedule
FTP publishing service
Telnet
Terminal Services
RunAs Service
Telphony
Remote Access Server
Remote Procedure Call (RPC) locater
Spooler
TCP/IP Netbios Helper
Telphone Service

3. 打开管理工具中的Internet服务管理器,删除“默认Web站点”及其下的所有目录,并且将这些
文件彻底清理出硬盘!在非系统分区建立Web根目录,假设为:D:\\webroot\\ 。

4. 在“管理Web站点”上单击鼠标右键,选择“新建?站点”。根据提示操作,站点说明假设为“
Web”,目录输入 D:\\webroot\\ ,只给读取权限。

5. 在“web”的属性“主目录”中设置执行许可为“无”,“应用程序设置”、“配置”中删除不
必要的IIS扩展名映射。最好去掉 .IDC、.HTR、.STM、.IDA、.HTW应用程序映射,.shtml、.shtm
等如果 无用也应去掉。如果需要ASP,那么就建立一个D:\\webroot\\cgi-bin目录,在“属性”“目
录”里允许脚本资源访问,应用程序设置里点击“创建”,“应用程序配置”里添加对ASP的映
射,所有ASP文件都放在 这个目录下,在“应用程序调试”中选取“发送文本错误消息给客户”。
注意:安装Service Pack后,IIS的应用程序映射应重新设置。

安装新的Service Pack后,某写应用程序映射又会重新出现,导致出现安全漏洞。这是较易疏忽的
一点。

二、 帐号策略

1. 帐号应尽可能少,且尽可能少用来登录;网站帐号一般只能用来做系统维护,多余的的帐号一个
也不要,因为多一个帐号就多一分危险。

2. …

Windows 2000 安全加固配置流程

归类于: 安全加固 - 19 Nov 2008

1.系统的选用
建议使用win2000 prefessional,因为windows 95、98、me无安全性可言。

2.口令安全
使用14位或7位的口令长度,不要少于7位,也不要使用8-13位的口令,口令不要使用姓名或生日的缩写,也不要使用常见的单词。口令中最好包括大小写字母、数字、怪字符(如@#$%等)。可以用lc3来检查自己的口令是否足够健壮。

3.如何打补丁
先点击开始菜单里的windows update,从http://windowsupdate.microsoft.com/下载安装最新的升级文件。然后下载HFNetChk,执行hfnetchk -v,会将你系统中尚未打的补丁显示出来,依照提示提示从http://www.microsoft.com/technet … ecurity/current.asp 下载最新的安全补丁。

4.关闭不必要的服务
可以用fport检查系统中有没有不必要的端口打开,用pslist检查系统中有没有不必要的进程运行。

5.运行autoruns,看看在系统启动时,有没有非法的程序加载。

6.运行杀毒软件,看看系统中有没有病毒,运行cleaner看看系统中有没有木马。

7.用漏洞扫描器扫描系统中有没有安全漏洞,如iss、cybercop scanner、nessus、火眼等。

8.使用个人防火墙,建议使用tpf,当别人要访问你的计算机时,会先询问你是否允许访问。感兴趣的还可以试一试zonealarm pro。

2008-11-18

基于Linux的网络安全策略和保护措施

归类于: 安全加固 - 18 Nov 2008

1、引言

  随着Internet/Intranet网络的日益普及,采用Linux网络操作系统作为服务器的用户也越来越多,这一方面是因为Linux是开放源代码的免费正版软件,另一方面也是因为较之微软的Windows NT网络操作系统而言,Linux系统具有更好的稳定性、效率性和安全性。在Internet/Intranet的大量应用中,网络本身的安全面临着重大的挑战,随之而来的信息安全问题也日益突出。以美国为例,据美国联邦调查局(FBI)公布的统计数据,美国每年因网络安全问题所造成的经济损失高达75亿美元,而全球平均每20秒钟就发生一起Internet计算机黑客侵入事件。一般认为,计算机网络系统的安全威胁主要来自黑客攻击和计算机病毒2个方面。那么黑客攻击为什么能够经常得逞呢?主要原因是很多人,尤其是很多网络管理员没有起码的网络安全防范意识,没有针对所用的网络操作系统,采取有效的安全策略和安全机制,给黑客以可乘之机。在我国,由于网络安全研究起步较晚,因此网络安全技术和网络安全人才还有待整体的提高和发展,本文希望就这一问题进行有益的分析和探讨。

  我们知道,网络操作系统是用于管理计算机网络中的各种软硬件资源,实现资源共享,并为整个网络中的用户提供服务,保证网络系统正常运行的一种系统软件。如何确保网络操作系统的安全,是网络安全的根本所在。只有网络操作系统安全可靠,才能保证整个网络的安全。因此,详细分析Linux系统的安全机制,找出它可能存在的安全隐患,给出相应的安全策略和保护措施是十分必要的。

  2、Linux网络操作系统的基本安全机制

  Linux网络操作系统提供了用户帐号、文件系统权限和系统日志文件等基本安全机制,如果这些安全机制配置不当,就会使系统存在一定的安全隐患。因此,网络系统管理员必须小心地设置这些安全机制。

  2.1 Linux系统的用户帐号

  在Linux系统中,用户帐号是用户的身份标志,它由用户名和用户口令组成。在Linux系统中,系统将输入的用户名存放在/etc/passwd文件中,而将输入的口令以加密的形式存放在/etc/shadow文件中。在正常情况下,这些口令和其他信息由操作系统保护,能够对其进行访问的只能是超级用户(root)和操作系统的一些应用程序。但是如果配置不当或在一些系统运行出错的情况下,这些信息可以被普通用户得到。进而,不怀好意的用户就可以使用一类被称为“口令破解”的工具去得到加密前的口令。

  2.2 Linux的文件系统权限

  Linux文件系统的安全主要是通过设置文件的权限来实现的。每一个Linux的文件或目录,都有3组属性,分别定义文件或目录的所有者,用户组和其他人的使用权限(只读、可写、可执行、允许SUID、允许SGID等)。特别注意,权限为SUID和SGID的可执行文件,在程序运行过程中,会给进程赋予所有者的权限,如果被黑客发现并利用就会给系统造成危害。

  2.3 合理利用Linux的日志文件

  Linux的日志文件用来记录整个操作系统使用状况。作为一个Linux网络系统管理员要充分用好以下几个日志文件。

2.3.1 /var/log/lastlog文件

  记录最后进入系统的用户的信息,包括登录的时间、登录是否成功等信息。这样用户登录后只要用lastlog命令查看一下/var/log/lastlog文件中记录的所用帐号的最后登录时间,再与自己的用机记录对比一下就可以发现该帐号是否被黑客盗用。

  2.3.2 /var/log/secure文件

  记录系统自开通以来所有用户的登录时间和地点,可以给系统管理员提供更多的参考。

  2.3.3 /var/log/wtmp文件

  记录当前和历史上登录到系统的用户的登录时间、地点和注销时间等信息。可以用last命令查看,若想清除系统登录信息,只需删除这个文件,系统会生成新的登录信息。

3、Linux网络系统可能受到的攻击和安全防范策略

  Linux操作系统是一种公开源码的操作系统,因此比较容易受到来自底层的攻击,系统管理员一定要有安全防范意识,对系统采取一定的安全措施,这样才能提高Linux系统的安全性。对于系统管理员来讲特别是要搞清楚对Linux网络系统可能的攻击方法,并采取必要的措施保护自己的系统。

  3.1 Linux网络系统可能受到的攻击类型

  3.1.1 “拒绝服务”攻击

  所谓“拒绝服务”攻击是指黑客采取具有破坏性的方法阻塞目标网络的资源,使网络暂时或永久瘫痪,从而使Linux网络服务器无法为正常的用户提供服务。例如黑客可以利用伪造的源地址或受控的其他地方的多台计算机同时向目标计算机发出大量、连续的TCP/IP请求,从而使目标服务器系统瘫痪。

  3.1.2 “口令破解”攻击

  口令安全是保卫自己系统安全的第一道防线。“口令破解”攻击的目的是为了破解用户的口令,从而可以取得已经加密的信息资源。例如黑客可以利用一台高速计算机,配合一个字典库,尝试各种口令组合,直到最终找到能够进入系统的口令,打开网络资源。

  3.1.3 “欺骗用户”攻击

  “欺骗用户”攻击是指网络黑客伪装成网络公司或计算机服务商的工程技术人员,向用户发出呼叫,并在适当的时候要求用户输入口令,这是用户最难对付的一种攻击方式,一旦用户口令失密,黑客就可以利用该用户的帐号进入系统。

3.1.4 “扫描程序和网络监听”攻击

  许多网络入侵是从扫描开始的,利用扫描工具黑客能找出目标主机上各种各样的漏洞,并利用之对系统实施攻击。

  网络监听也是黑客们常用的一种方法,当成功地登录到一台网络上的主机,并取得了这台主机的超级用户控制权之后,黑客可以利用网络监听收集敏感数据或者认证信息,以便日后夺取网络中其他主机的控制权。

  3.2 Linux网络安全防范策略

  纵观网络的发展历史,可以看出,对网络的攻击可能来自非法用户,也可能来自合法的用户。因此作为Linux网络系统的管理员,既要时刻警惕来自外部的黑客攻击,又要加强对内部网络用户的管理和教育,具体可以采用以下的安全策略。

  3.2.1 仔细设置每个内部用户的权限

  为了保护Linux网络系统的资源,在给内部网络用户开设帐号时,要仔细设置每个内部用户的权限,一般应遵循“最小权限”原则,也就是仅给每个用户授予完成他们特定任务所必须的服务器访问权限。这样做会大大加重系统管理员的管理工作量,但为了整个网络系统的安全还是应该坚持这个原则。

  3.2.2 确保用户口令文件/etc/shadow的安全

  对于网络系统而言,口令是比较容易出问题的地方,作为系统管理员应告诉用户在设置口令时要使用安全口令(在口令序列中使用非字母,非数字等特殊字符)并适当增加口令的长度(大于6个字符)。系统管理员要保护好/etc/passwd和/etc/shadow这两个文件的安全,不让无关的人员获得这两个文件,这样黑客利用John等程序对/etc/passwd和/etc/shadow文件进行了字典攻击获取用户口令的企图就无法进行。系统管理员要定期用John等程序对本系统的/etc/passwd和/etc/shadow文件进行模拟字典攻击,一旦发现有不安全的用户口令,要强制用户立即修改。

  3.2.3 加强对系统运行的监控和记录

  Linux网络系统管理员,应对整个网络系统的运行状况进行监控和记录,这样通过分析记录数据,可以发现可疑的网络活动,并采取措施预先阻止今后可能发生的入侵行为。如果进攻行为已经实施,则可以利用记录数据跟踪和识别侵入系统的黑客。

  3.2.4 合理划分子网和设置防火墙

  如果内部网络要进入Internet,必须在内部网络与外部网络的接口处设置防火墙,以确保内部网络中的数据安全。对于内部网络本身,为了便于管理,合理分配IP地址资源,应该将内部网络划分为多个子网,这样做也可以阻止或延缓黑客对整个内部网络的入侵。

3.2.5 定期对Linux网络进行安全检查

  Linux网络系统的运转是动态变化的,因此对它的安全管理也是变化的,没有固定的模式,作为Linux网络系统的管理员,在为系统设置了安全防范策略后,应定期对系统进行安全检查,并尝试对自己管理的服务器进行攻击,如果发现安全机制中的漏洞应立即采取措施补救,不给黑客以可乘之机。

  3.2.6 制定适当的数据备份计划确保系统万无一失

  没有一种操作系统的运转是百分之百可靠的,也没有一种安全策略是万无一失的,因此作为Linux系统管理员,必须为系统制定适当的数据备份计划,充分利用磁带机、光盘刻录机、双机热备份等技术手段为系统保存数据备份,使系统一旦遭到破坏或黑客攻击而发生瘫痪时,能迅速恢复工作,把损失减少到最小。

4、加强对Linux网络服务器的管理,合理使用各种工具

  4.1 利用记录工具,记录对Linux系统的访问

  Linux系统管理员可以利用前面所述的记录文件和记录工具记录事件,可以每天查看或扫描记录文件,这些文件记录了系统运行的所有信息。如果需要,还可以把高优先级的事件提取出来传送给相关人员处理,如果发现异常可以立即采取措施。

  4.2 慎用Telnet服务

  在Linux下,用Telnet进行远程登录时,用户名和用户密码是明文传输的,这就有可能被在网上监听的其他用户截获。另一个危险是黑客可以利用Telnet登入系统,如果他又获取了超级用户密码,则对系统的危害将是灾难性的。因此,如果不是特别需要,不要开放Telnet服务。如果一定要开放Telnet服务,应该要求用户用特殊的工具软件进行远程登录,这样就可以在网上传送加密过的用户密码,以免密码在传输过程中被黑客截获。

  4.3 合理设置NFS服务和NIS服务

  NFS(Network File System)服务,允许工作站通过网络共享一个或多个服务器输出的文件系统。但对于配置得不好的NFS服务器来讲,用户不经登录就可以阅读或者更改存储在NFS服务器上的文件,使得NFS服务器很容易受到攻击。如果一定要提供NFS服务,要确保基于Linux的NFS服务器支持Secure RPC(Secure Remote Procedure Call),以便利用DES(Data Encryption Standard)加密算法和指数密钥交换(Exponential Key Exchange)技术验证每个NFS请求的用户身份。

  NIS(Network Information System)服务,是一个分布式数据处理系统,它使网络中的计算机通过网络共享passwd文件,group文件,主机表文件和其他共享的系统资源。通过NIS服务和NFS服务,在整个网络中的各个工作站上操作网络中的数据就像在操作和使用单个计算机系统中的资源一样,并且这种操作过程对用户是透明的。但是NIS服务也有漏洞,在NIS系统中,不怀好意的用户可以利用自己编写的程序来模仿Linux系统中的ypserv 响应ypbind的请求,从而截获用户的密码。因此,NIS的用户一定要使用ypbind的secure选项,并且不接受端口号小于1024(非特权端口)的ypserv响应。

4.4 小心配置FTP服务

  FTP服务与前面讲的Telnet服务一样,用户名和用户密码也是明文传输的。因此,为了系统的安全,必须通过对/etc/ftpusers文件的配置,禁止root,bin,daemon,adm等特殊用户对FTP服务器进行远程访问,通过对/etc/ftphosts的设定限制某些主机不能连入FTP服务器,如果系统开放匿名FTP服务,则任何人都可以下载文件(有时还可以上载文件),因此,除非特别需要一般应禁止匿名FTP服务。

  4.5 …

如何保障Unix系统安全

归类于: 安全加固 - 18 Nov 2008

Unix系统的安全等级
Unix系统经过40年左右的发展,已使其自身具备了良好的安全性能,按照可信计算机评价标准达到C2级,它具有以下安全特征:

1、访问控制
系统通过访问控制表ACL使得用户可以自行改变文件的安全级别和访问权限 。

如: -rwxr-xr– 1 john test 4月9日17:50 cm
上面的例子表示文件cm对于用户john来说可读、可写、可执行,对test这个组的其他用户只有读和执行的权限,而对除此以外的所有用户只有读的权限。系统管理员可用umask命令为每个用户设置默认的权限值,用户可用chmod命令来修改自己拥有的文件或目录的权限。

2、对象的可用性
当一个对象不再使用时,在它回到自由对象之前,TCB (Trusted Computing Base) 将要清除它,以备下次需要时使用。

3、个人身份标识与认证
其目的是为了确定用户的真实身份, 在用户登录时它采用扩展的DES算法对输入的口令进行加密,然后把口令的密文与存放在/etc/password中的数据进行比较,如果二者的值完全相同则允许用户登录到系统中,否则禁止用户的登录。

4、审计记录
Unix系统能够对很多事件进行记录,比如:文件的创建和修改以及系统管理的所有操作和其他有关的安全事件(登录失败,以root身份进行登录的情况),通过这些记录系统管理员就可以对安全问题进行跟踪。

5、操作的可靠性
操作的可靠性是指Unix系统用于保证系统的完整性的能力。Unix系统通过对用户的分级管理,通过对运行级别的划分,以及前面提到的访问控制加之自带的一些工具,能够很好地保证系统操作的可靠性。

Unix的安全体系结构

Unix的安全体系结构可以按照ISO/OSI网络模型的层次结构将它分成七层,如下表所示:

层次 名称 含义
7 Policy 安全策略定义、指导
6 Personnel 使用设备和数据的人员
5 LAN 计算机设备和数据 …

Apache 2.0手册中文版翻译项目-安全方面的提示

归类于: 安全加固 - 18 Nov 2008

本文中的提示和技巧有些是针对网络服务器的建立的, 有些是综合性的,其余的则是针对Apache的。

ServerRoot目录的权限
一般情况下,Apache由root用户启动,在提供服务时切换为由User指令所指定的用户。 正如root所执行的任何命令那样,你必须注意它是受保护的,不允许非root用户对它修改。 不仅文件本身,目录及其父目录都必须只能由root来改写。 例如,如果将ServerRoot指定为/usr/local/apache,则,推荐以root身份来建立此目录,如:

mkdir /usr/local/apache
cd /usr/local/apache
mkdir bin conf logs
chown 0 . bin conf logs
chgrp 0 . bin conf logs
chmod 755 . bin conf logs

这里已经假定了 /, /usr, 和 /usr/local 只能由root来改写。 在安装httpd执行文件时,应该确保它也受到了这样的保护:

cp httpd /usr/local/apache/bin
chown …

让 Linux 更安全

归类于: 安全加固 - 18 Nov 2008

惟有谨小慎微者方可幸存,与其他领域一样,在确保 Linux® 系统的安全时,这句话也同样适用。幸运的是,有很多安全部件,或者已经编译到内核中,或者已经加入到很多 Linux 发行版本中,或者可以以开放源代码应用程序的形式单独获得。作为本系列的第 1 部分,本文将使您开始理解安全的概念及潜在的危险,并为您真正需要知道的内容做好准备:如何保护和加固基于 Linux 的安装。
在这三篇系列文章中,您将看到如何以一种安全的方法来计划、设计、安装、配置和维护运行 Linux 的系统。除了安全概念的理论概述、安装问题、潜在的危险及其作用以外,您还将得到关于如何保护和加固基于 Linux 的系统的实用建议。我们将讨论最小化安装、加固 Linux 安装、授权/认证、本地和网络安全、攻击和如何防御攻击,以及数据安全、病毒和恶意程序。

在第一篇文章中,我们将首先回顾保护数据及保护数据的系统的考虑。我们的目标是对安全的实际含义的更深入理解。

安全的定义

安全是当今 IT 相关头条新闻的一个重要话题。经常出现的系统漏洞和安全补丁以及病毒和蠕虫是每个使用计算机的人都耳熟能详的名词。因为几乎每台计算机系统都连接到另外的计算机或者连接到 Internet,因此确保这些计算机的安全,对于减少入侵、数据窃取或丢失、误用甚至对第三方的责任而言是至关重要的。

确保安全即使对于没有连接到网络的独立的计算机也是很重要的。必须自可信赖的来源安装应用程序,比如经过验证的并检查过病毒的光盘。对应用程序数据也必须同样小心。例如,对于可以执行强大的宏语言或者引入非法数据的软件程序包(office 套件等等),其软件缺陷可能会被利用来执行任意的代码。因此,应用程序数据在拷贝到计算机之前必须经过完整性检查。可以通过将数据放置在一个安全的地方来控制对系统的访问(当然,不考虑来自已授权人员的攻击)。

当系统连接到网络并向其他计算机提供服务(有意地或无意地)时,事情会变得更为棘手。在那种情况下,数据可能不只是来自系统管理员,因为客户机程序要使用所提供的服务,而系统漏洞可能会让入侵者控制计算机。

这就是为什么安全是从开始计划直到拆除系统的整个系统生命周期中最基本的问题。但是,安全的确切含义是什么?

通常,数据安全和系统安全可以分开来考虑。 数据安全通常被认为是确保以下方面的所有努力:

机密性(Confidentiality)。
完整性(Integrity)。
可用性(Availability)。

综合起来,这些被称作是存储在计算机上的数据的“CIA”。对 /etc/passwd 等配置数据的保护可以归类为数据安全。 系统安全 指的是计算机平台本身。美国 National Information Systems Security Glossary(参阅 参考资料 以获得链接)对系统安全的定义如下:

系统安全。对信息系统的保护,防止未授权的访问及对信息(不论是存储中的、正在处理的还是正在传输的)的修改,并防止对授权用户服务的拒绝或对未授权用户服务的允许,包括那些检测、记录和反击此类威胁的措施。

重要的是要认识到系统安全强调的是一个反复的过程,这个过程包括应用安全补丁、经常审计、控制,同时最起码要有一个安全的系统配置。就此而言,不可能保证绝对的安全,也不可能提供百分之百安全的服务。目标更应该是在安全性、系统可用性和维护这个安全层级所需要的努力这三者之间找到一个折衷点。这个折衷取决于安全对于存储在计算机中的数据来说的重要性以及这些数据预期的使用情形(阅读 …

下一页 »