通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 MY小屋
联系我们
设为首页
加入收藏

 

QQ,ASP,PHP,JSP,XML,SQL,.Net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>服 务 器>>Linux服务器>>正文 新版上线![旧版]
注:打开慢时请稍等

一个安全Web服务器的安装(三)

http://www.iyit.net  日期:2006-6-2 11:51:11  来源:转载   点击:
参加讨论】一个安全Web服务器的安装(三):第六步:Step 6: sudo程序与多个管理员

  每一个管理员都应该有一个自己的帐号。如果每个人都使用root身份进行操作,那么就无法知道谁做了些什么。另外,如果使用root口令输入了一个不正确的命令可能对整个系统都产生严重的影响。应该仅仅在绝对需要时才使用具有高授权的操作。先前的harden_suse脚本已经将系统配置进行了必要的修改,它禁止了root用户的直接远程登录。仅仅以加密形式的SSH进行远程登录才可以执行管理任务。下一个需要做的事是配置sudo,这个程序可以帮助管理员记录执行过的命令。这个程序也提供了一个详细的授权结构,例如,象oracle用户一样,用户A可以被授权为可以重新启动数据库和查看root目录下的系统日志文件,但是不能做除此以外的任何事。可用用下面的命令行为每一个管理员设置一个用户:erde# adduser -m -g trusted username

  将用户包含在”trusted”用户组是非常关键的,因为根据harden_suse所确定的安全标准,sudo仅能够被trusted组所使用。

  随后,管理员就可以利用visudo程序,在编辑器中加入允许管理员可以做任何他想做的事的脚本行如下:
  username ALL=(ALL) ALL
  “man 5 sudoers”

  设置了一个可以限制授权的主机。

  当然,管理员应该使用sudo并且不应该使用”su root”命令转换到root身份,只有这样,才能保证让尽量少的人知道root口令。

  第七步:最后的调整

  完成所有的系统配置之后,应该使用tripwire程序产生一个包含所有文件的校验和的数据库:
  erde# cp/usr/doc/packages/tripwire/tw.conf.example.linux
  /var/adm/tripwire/tw.config
  erde#/var/adm/tripwire/bin/tripwire -initialize

  在连接Internet之前,产生文件/databases/tw.db_HOSTNAME应该备份到一个安全的存储介质(如CD-ROM)上。

  一旦怀疑有攻击者已经入侵并操作了系统,可以用tripwire跟踪所有的操作。但是,应该隔一段时间就用tripware重新生成一次校验和数据库,因为这是对付高智商的攻击者的最有效方法。

  在连接Internet之间的最后工作是对系统进行备份而后reboot。

  但这些还不够,所有的系统管理员都应该订阅关于WEB安全的最重要的邮件列表:

  suse-security:这是包含安全相关专题和安全公告的SuSE讨论组列表,要订阅这个列表,只需要发送一个空邮件到suse-security-subscribe@suse.com邮箱就可以了;

  suse-security-announce:仅仅包含安全公告,要订阅这个列表,需要发一个空邮件到suse-security-announce-subscribe@suse.com邮箱;

  bugtraq:致力于最新的安全问题的讨论区列表,要订阅这个列表,需要发送一个包含”subscribe bugtraq surname@firstname”内容的空白邮件到:listserv@securityfocus.com邮箱。

  其它选择

  由于没有安装本地入侵检测系统,所以只能从攻击者留下的可以痕迹跟踪成功入侵的黑客行为。对于这种措施,也没有什么现成的解决方案,但是还是有很多人开发了针对这种工作的程序和发布了一些窍门。然而,有关这些方面的细节描述远非本文的主题所能涵盖了。

  如果WEB服务器上的几个文件需要定期更新,scp——cp函数在SSH中的安全版本——就显得不是很好用了。一个更合适的方法是使用SSLftp,它具有FTP的功能并且象SSH一样对数据进行了加密。

  日志数据很重要,所有的从WEB服务器和路由器所记录的重要日志记录都应该送到一个集中管理的日志主机,这个日志主机主要用来监视所有计算机的运行状态。通过这种方法,攻击者就就很难遁形灭迹了。

  另外,将Solar Designer [13]设计的安全内核补丁集成到系统中是个很好的主意,有了这个安全补丁,利用缓冲区溢出做手脚的攻击方式将变得更困难。

  应该剥夺那些suid和sgid程序所具有的没必要的过高特权。这可以通过将那些不再需要具有特权的程序逐个输入到/etc/permissions.local然后手工去掉程序的授权(或启动SuSEconfig)的方法实现。

  这个工作直到没有sgid程序并且仅仅有下面列出的少数几个suid程序时结束:
  -rwsr-xr-x 1 root shadow 27920 Mar 11 11:50 /usr/bin/passwd
  -rwsr-x--- 1 root trusted 56600 Mar 11 18:41 /usr/bin/sudo
  -rwsr-xr-x 1 root root 6132 Mar 11 09:36 /usr/lib/pt_chown

  如果系统由几个分区,通过使用mount选项ro(只读)、nodev(无设备)、nosuid (没有高特权的suid文件)和noexec (没有可执行文件)显著地提高系统的安全级别。

  除此之外,可以使用ext2文件系统标志”append-only”和”immutable”(通过chattr命令设置)定义内核能力,这样就可以保护日志和引导文件等不被篡改。

  如果服务器需要具有防止本地攻击的能力,必须为LILO引导装载器配备一个口令,这可以通过在/etc/lilo.conf文件的顶端输入下面的脚本行实现:
  password=something_difficult_to_guess
  restricted

  最后,WEB服务器不仅仅只是Apache。通常要包括1到2个数据库,还要引入一些附加的模块和程序,或者需要激活其它一些服务(如DNS服务器)。Linux包过滤(参见第二步中的例子)可以方便有效地提供保护支持。一个称为”隔离间”(”compartment”:可以从这里获得)的程序支持chroot、特权分配以及Linux能力配置等任务。

  当然,还可以做很多其它的事情,但我所能想到的只有这些了。

最后的提示

  更新!一个没有采用最新的安全补丁进行更新的系统会很快称为攻击者的目标。

  已经完成配置安全系统所需的所有工作之后,要记住:CGI脚本将是最大的安全隐患。大多数成功的攻击都是通过这些脚本实现的。简明的建议是:最好使用那些公开发布并且已经被不同的网站使用了一段时间的CGI脚本;如果管理员不得已需要写一些CGI脚本程序的话,这些程序应该由其它人对其安全因素进行例行检查。

  结论

  一个非常安全且高可用的WEB服务器——这似乎有些矛盾,但确实是很好的折中——能够在短短45分钟的时间内配置完。当然您可以通过更多的工作以提高系统的安全级别,但是这里配置的系统对大多数应用来说已经足够了。

  Linux与安全的更多信息

  如果您决定选用Linux,您应该感到庆幸,因为您可以免费使用非常多且优秀的安全程序,这是其它UNIX和Windows平台所无法比拟的。为找到合适的工具,您会发现安全焦点[9]和包风暴(Packetstorm [10])是两个比较好的起点。

  迄今为止,SuSE Linux是所有商用Linux发布中最专注与安全的。下面一些工具是SuSE所开发的,您可以根据需要自由下载:


  --------------------------------SuSE安全软件------------------------------
  ---------------------------------------------------------------------------------
  程序名称(rpm)---功能-----------从哪一版本------能否运行-----下载地址-----------
  -------------------------------开始包含在--------于其它发布
  -------------------------------Linux发布中----------------
  ———————————————————————————————————————
  FTP代理套件--一个非常--------6.3------------------http://proxy-suite.suse.de----
  ---------------安全的FTP---------------------------------------------------
  ---------------代理,它还----------------------------------------------
  (fwproxys)-----支持SSL--------------------------------------------
  SuSE防火墙-----一个包过滤器---6.3-------http://www.suse.de/~marc-(betas)
  ---------------,能够创建一----------------(如果是其它--------------------------
  (firewals)------复杂的防火墙----------------发布,init.d------
  -----------------系统并且非常----------------和startup脚本-------
  ------------------容易配置--------------------要重新调整)----------------------------
  -------------------------------------------------------------------------
  加固SuSE-------配置一个非常-----6.1------------否------------http://www.suse.de/~marc-(betas)----
  ---------------安全的SuSE------------------(专门为SuSE----------------------
  (hardsuse)----------------------------------所设计)--------------
  ---------------------------------------------------------------
  安全模块-------一个防止symlink--6.3------------是-------------SuSE-FTP-server----
  ---------------,hardlink,-pipe-------------------------------------------------------
  (secumod)------和许多其它安全
  -------------------略的内核模块
  ----------------------------------------------------
  安全检查器-----每天对本地安全------6.2---------大部分--------------SuSE-FTP-server----
  ---------------进行一次例行检----------------------------------------------------
  (seccheck)-----查---------------------------------------------http://www.suse.de/~marc-(betas)------
  Compartment----程序的安全包装------计划在------是-------------http://www.suse.de/~marc-(betas)
  (-)------------器,支持chroot------7.0中采用----------------------------------
  ---------------ing,特权和能力--------------------------------------------------------
  ---------------分配
  --------------------------------------------------------------------
  Auditdisk-(-)--安全产生校验和------计划在------是-------------现在还没有发布beta版-------
  ---------------与Tripwire不同------7.0中采用---------------------------
  ---------------它不能被回避---------------------------------------------------
  -------------------------------------------------------------------------------
  SCSLogger------能够记录向内和------6.2---------是-------------SuSE-FTP-server---- ---------------向外连接日志的---------------------------------http://www.suse.de/~thomas-
  (betas)-----------------------
  (scslog)-------内核模块-----------------------------------
  ----------------------------------------------------------
  安全库---------一个为程序员准------计划在------是-------------http://www.suse.de/~thomas-(betas)
  (-)------------备的函数库,它------7.0中采用--------------------------------
  ---------------为不安全的函数----------------------------------------------------
  ---------------提供了安全功能---------------------------------------------------
  ---------------提示--------------------------------------------------------
  CD上提供的其它安全程序还有:Nessus, Saint, nmap, PGP, GNU Privacy Guard, OpenSSH, Tripwire, FreeSWAN,等等。

  另外,除随SuSE Linux发布的操作手册中广泛深入地涉猎安全内容之外,还有suse-security和suse-security-announce两个邮件列表可供参考。

  当然,也有其它的选择。比如说Trustix[6] Linux发布就是新近出现的完全面向安全的产品。令人失望的是,这个发布还处在初级阶段。不过,它的一个大约150 MB ISO文件的第一个Alpha已经提供下载了。

  如果您不信任Linux,那就看看OpenBSD [5]。就在几年前,人们为了安全问题逐行地检查了NetBSD发布的程序。通过比较关于Unix变种(当然还有Windows)的安全问题的消息的数量和质量,人们发现OpenBSD是无可争议的优胜者。那么主要障碍是什么呢?其中的一个原因是应用软件太少。把所有的OpenBSD汇集在一起,甚至还不能填满一张CD。其它需要集成到系统中的程序都需要用户通过一种所谓的接口(ports)或者称为引入(imported)的方法实现。这些都没能被验证是安全的。另外一个问题是,它的代码基础是BSD,受Linux热潮的影响,BSD平台已经不再是软件工业的战略目标。但是,OpenBSD在安全专家中间仍然有很好的口碑。如果不需要运行一些特殊的软件的话,OpenBSD仍然是配置安全服务器的正确选择。

  当然,也有很多商用的高度安全的Unix系统。他们被称为Trusted {Solaris, Irix, SCO, ...}。不同的系统实现了美国C2、B1甚至B2安全标准。这些系统除了非常昂贵以外,其安全也根本没有达到他们宣称的那样高。虽然安全标准的实现显著地增强了系统的安全性,但受到缺少开放源码和质量声誉极佳的源码的影响,期望它100%的安全是不现实的(但还是要比Windows强很多)。



编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:解读Linux文件权限的设置方法
下一篇:一个安全Web服务器的安装(二)
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
浅谈Linux优化及安全配置的个人体会 一个安全Web服务器的安装(一) 一个安全Web服务器的安装(二)
设定Linux Web 服务器(1) 设定Linux Web 服务器(2) 设定Linux Web 服务器(3)
设定Linux Web 服务器(4) 设定Linux Web 服务器(5) 设定Linux Web 服务器(6)
Linux服务器日志管理详解(1) Linux服务器日志管理详解(2) Linux服务器日志管理详解(3)
Linux服务器日志管理详解(4) Linux服务器日志管理详解(5) Linux服务器日志管理详解(6)
Linux服务器日志管理详解(7) 构建网络安全长城之烽火台的建立(1) 构建网络安全长城之烽火台的建立(2)
构建网络安全长城之烽火台的建立(3) 构建网络安全长城之烽火台的建立(4) 构建网络安全长城之烽火台的建立(5)
构建网络安全长城之烽火台的建立(6) 构建网络安全长城之烽火台的建立(7) 构建网络安全长城之烽火台的建立(8)
最新更新 热点排行 推荐新闻
Linux操作系统12则经典应用技巧
Windows和Linux的“鹊桥会”
给Linux新手
在Linux下访问MSSQLServer数据库
Linux环境下发现并阻止系统攻击 (1)
Linux操作系统12则经典应用技巧
Windows和Linux的“鹊桥会”
给Linux新手
在Linux下访问MSSQLServer数据库
Linux环境下发现并阻止系统攻击 (1)
Linux环境下发现并阻止系统攻击 (2)
Linux环境下发现并阻止系统攻击 (3)
Linux环境下发现并阻止系统攻击 (4)
LINUX下MYSQL完全安装使用指南
Linux的防火墙配置!
Windows2000下安装Apache PHP4 MySQL 
IIS的使用                          
WIN2000 + PHP + MYSQL + TOMCAT + JS
Linux阅读材料 下篇
一个安全Web服务器的安装(二)
优秀公益广告作品欣赏(8)
java数据类型转换
Windows XP专业版IIS连接数的更改
QQ最新版下载 2006 beta2 体验新感受 
优秀公益广告作品欣赏(7)
Office2007简体中文版浮出水面 美图抢
WEB服务器配置全攻略(三)
优秀公益广告作品欣赏(6)
优秀公益广告作品欣赏(4)
优秀公益广告作品欣赏(1)
解决局域网不能互相访问之全攻略
WIN 2000简单的入侵常识
用Win 2003架设邮件服务器
硬盘分区消失,解决方法!
传统计算机病毒传播能力破坏性在提高
内存为何有“两面性”
AMD水货盒装CPU识别方法
IP地址资源2012年枯竭 部署IPv6很紧迫
古老问题有新解:世上先有鸡蛋后有鸡
Dreamweaver MX 2004从零开始(1)
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyrights © 2004-2006 iYiT.Net All Rights Reserved.
网站合作、广告联系QQ:147007642、466949678
易特网络技术 点击这里给我发消息