找回密码
 注册
搜索
查看: 6604|回复: 0

IIS安全保卫战

[复制链接]
发表于 2007-1-1 20:42:12 | 显示全部楼层 |阅读模式
 信息服务器IIS是BACKOFFICE系列产品中功能最强大、最流行的应用程序,它与整个BACKOFFICE组件一样,IIS也是围绕WINDOWS NT体系而生成的。它作为WINDOWS NT SERVER提供的一组服务而运行,允许它利用WINDOWS NT的各项软件功能。
' g8 Q, e/ }& h0 R  不过,确保你数据完整性仍是一个必须认真对待的关键性安全问题。IIS凭借丰富而又强大的验证、访问控制和审核功能可以保证数据的完整性,因为它以WINDOWS NT SERVER作系统为基础。此外,它还支持安全插接层SSL,它通过对IIS和支持SSL的所有浏览器之间的对话进行加密来保证安全通信更加保密。5 i3 z6 K/ M0 r
  黑客们知道大多数WEB和FTP网站都允许匿名访问。这些网站常常错误配置,这样就存在安全漏洞。下面介绍须采取哪些措施才能保证保证IIS使你的网络和数据完全避免黑客入侵。$ I& Q3 ?# a) B2 V7 t+ D) a7 l
  一、利用现有的WINDOWS NT安全性能来保护IIS ISS通过WINDOWS NT安全模型提供安全性,也就说,安全帐户管理器数据库中定义的用户帐户和组将确定一旦用户接入IIS机器,他们能进行什么操作。你不仅要核查现有的帐户权限和许可权,并且要限制匿名访问使用的帐户权限和许可权,这非常重要。* n* b( Y- m# r! t& O+ U3 K
  记录IIS的所有服务程序都支持广泛的记录功能。记录功能很重要,因为它能用来监视可疑的活动,从而决定应当保留什么、应当取消什么,以便进行容量规划。4 S. I3 d) I* V% }
  启动记录功能很容易,每项服务的事件都共同记录在同一个公用文件中。若要启动记录功能,请打开IIS MANEGER,双击你要启动其记录功能的服务器,显示PROPERTIES对话框。接着单击LOGGING标签,将弹出一个对话框。该标签的用法相当直接,你只须单击ENABLE LOGGING选项,然后你选择是记录到一个文本文件,还是记录到SQL数据库,并确定日志文件多长时间更新一次。6 I& p+ y1 P0 P  Q
  提示当你第一次安装服务器时,要设置为DAILY LOGGING(日志),这样你可以每天看到结果。过一段时间后,你再选择最合适的记录方式。
: G6 @# I0 G2 s8 i, a$ [! L  ADVANCED选项通过单击SERVICE PROPERTIED对话框的ADVANCED标签,IIS还支持简单过滤功能。你可使用ADVANCED OPTIONS标签来限制或允许某些IP地址对WEB服务器的访问。在弹出的ADVANCED标签中,激活By default all computer will be granted access(缺省时,所有计算机将获得访问权)你可以使用ADD钮将应当拒绝访问的某些特定的IP地址范围输入进来。: ]/ X6 P: G" V5 X/ N3 ?' L
  或者,如果你想强制执行严格的安全保护,你可以选择By Default all computer will be den access(缺省时,所有的计算机将被拒绝访问),然后根据应当能访问这台机器的IP地址确定主机表。这是一个功能强大而且价值较高的工具,有助于确保你网站的安全,所以不应忽视。
: K2 n; t& h3 o9 O4 z+ Y  二、IIS Advanced安全性能与Exchange Server一样,Internet信息服务器提供Advanced安全性能,使你通信绝对安全。它们由SSL(安全插接层)2.0版和3.0版以及PCT(保密通信技术)1.0组成。SSL可对TCP/IP通信进行数据加密、服务器验证和邮件集成功能。
- e% i3 S$ Z8 ?! G/ `) u安全插接层安全插接层(SSL)是一个由Netscape通信公司开发的协议,并提交环球网联盟(W3C)作为保证Internet通信安全的标准。当支持SSL的一台客户机(Internet Explorer2.0和3.x和Netscape 3.x)与支持SSL的服务器连接时,在TCP/IP连接时就出现“信号交换的交接关系”来进行验证,以确定在通信中将实施哪一级安全保护。
" C/ e( C/ l2 |9 y# m6 Y  在建立连接后,SSL接着对流经使用中的应用协议的数据进行加密和解密。所有请示和响应信息都应该加密,其中包括客户机下在请示的统一资源定位符(URL)、其它形式的数据(如你的地址或食用卡号码)、任何验证信息(用户名和口令)以及所有由服务器返回到客户机的数据。- y$ o" ]' D. Q  d, D
  SSL是位于应用协议(如HTTP)之下,SMTP位于连接协议TCP/IP之上。MICROSOFT INTERNET信息服务器支持超文本传输协议保密(HTTPS)访问方式。尽管SSL能提供实际不可破译的加密功能,但SSL加密传输的速度要低于非加密传输。因此,为了防止你整个WEB网站的性能下降,你可以考虑只把SSL作为虚拟的文件夹用来处理高度机密信息,如提交的包含信用卡信息的表格。
' f! k/ w/ a  b  你可以在你WEB网站的根目录(\InetPub\Wwwroot是缺省值)或在一个或多个虚拟文件夹中启动SSL安全功能。一旦SSL配置好和启动后,只有支持SSL的客户机能与支持SSL的WWW公文夹进行通信交流。: T& F* J) C1 o2 W& n' @8 g- ]6 U& V  T
  在WEB服务器上启动SSL安全性能,需要进行以下几步工作:
) ~5 I- w8 q" s3 v% y  1、使用密钥管理器来生成一个密钥对文件和一个请求文件。
! j0 l  K' t3 \' g' E  2、从一个认证机构获得一个证书。0 N& S' Z1 W* v, K7 o8 v, \
  3、在你的服务器上安装新获得的证书。0 K( r* ~0 A  E) H) C8 C
  4、激活WEB服务文件夹中的SSL安全功能。% p4 j  L! ?9 k9 T
  对于保密和公用内容,微软公司建议你使用公开的目录。比如,c:\InetPub\Wwwroot\Secure和C:\InetPub\Wwwroot\Public。) x2 A8 C& y! Z1 e6 h
  应注意以下几点:6 ^5 Q) q% ^: x: ^2 |
  (1)为IIS生成一个密钥对时,在任何域中不要使用逗号,原因是逗号被解释为字段的结尾。它们会在没有警告的情况下产生无效请求。( p' q! s! U- f+ L
  (2)如果你拥有多台具有IIS的虚拟服务器功能的WEB服务器在安装你的证书时,要确定具体服务器的IP地址,否则系统创建的所有虚拟服务都适用同一个证书。
) E- M& C- e/ N  (3)如果你启动SSL,任何指向支持SSL的WWW文件夹中文档的URL必须使用http://,而不是在URL中的http://。使用在URL中的http://的任何链路不支持安全文件夹。% F( W9 g3 ]& `
  IIS的一般性安全提示你使用IIS随意向INTERNET发布信息时,要确保网络安全性。除了我们以前讲座过后IIS功能外,你还要做到以下各点:! h: P# Z: H' e
  (1)为系统分区和各项IIS服务程序生成分开的区,这样黑客无法轻易地从某项服务程序的某个漏洞对整个机器访问。
# ?9 `% B  N9 H/ c2 O4 d; @) O& g1 e! Q' ]  (2)对机器的所有分区使用NTFS,要保证用户权限设置正确。: l8 N' B* ]! [( F
  (3)将IIS服务器放置于其自己的域中,并与你的帐户建立一种单向委托关系。如果黑客能得到某个有效帐户的信息,那个帐户也无法对你的用户域进行访问。
! {# l2 ^7 J, L! F* |安全插接层安全插接层(SSL)是一个由Netscape通信公司开发的协议,并提交环球网联盟(W3C)作为保证Internet通信安全的标准。当支持SSL的一台客户机(Internet Explorer2.0和3.x和Netscape 3.x)与支持SSL的服务器连接时,在TCP/IP连接时就出现“信号交换的交接关系”来进行验证,以确定在通信中将实施哪一级安全保护。
8 V- o9 Z5 K6 K+ n  在建立连接后,SSL接着对流经使用中的应用协议的数据进行加密和解密。所有请示和响应信息都应该加密,其中包括客户机下在请示的统一资源定位符(URL)、其它形式的数据(如你的地址或食用卡号码)、任何验证信息(用户名和口令)以及所有由服务器返回到客户机的数据。) v, ]+ T2 t1 \
  SSL是位于应用协议(如HTTP)之下,SMTP位于连接协议TCP/IP之上。MICROSOFT INTERNET信息服务器支持超文本传输协议保密(HTTPS)访问方式。尽管SSL能提供实际不可破译的加密功能,但SSL加密传输的速度要低于非加密传输。因此,为了防止你整个WEB网站的性能下降,你可以考虑只把SSL作为虚拟的文件夹用来处理高度机密信息,如提交的包含信用卡信息的表格。
# y8 [' R4 E4 s) y  你可以在你WEB网站的根目录(\InetPub\Wwwroot是缺省值)或在一个或多个虚拟文件夹中启动SSL安全功能。一旦SSL配置好和启动后,只有支持SSL的客户机能与支持SSL的WWW公文夹进行通信交流。
, @* f1 \* W6 H  在WEB服务器上启动SSL安全性能,需要进行以下几步工作:/ R, x6 y5 v/ l+ C5 k" l2 }
  1、使用密钥管理器来生成一个密钥对文件和一个请求文件。
$ Z! l& K: C- a; I: [% S  2、从一个认证机构获得一个证书。
- J3 P* Z6 ~: m$ \  3、在你的服务器上安装新获得的证书。
$ \& x: p& X' L- O  4、激活WEB服务文件夹中的SSL安全功能。0 C( _8 E$ M5 r- c, J1 m. S6 Z
  对于保密和公用内容,微软公司建议你使用公开的目录。比如,c:\InetPub\Wwwroot\Secure和C:\InetPub\Wwwroot\Public。2 r' ]) q+ Y4 p. G+ L. \5 ^+ e
  应注意以下几点:& w. d1 N: B$ c: U  Y- @
  (1)为IIS生成一个密钥对时,在任何域中不要使用逗号,原因是逗号被解释为字段的结尾。它们会在没有警告的情况下产生无效请求。! O9 f2 I0 N5 N2 X8 y9 O/ w
  (2)如果你拥有多台具有IIS的虚拟服务器功能的WEB服务器在安装你的证书时,要确定具体服务器的IP地址,否则系统创建的所有虚拟服务都适用同一个证书。
$ }+ ^6 x1 ?" x' O4 O) m  (3)如果你启动SSL,任何指向支持SSL的WWW文件夹中文档的URL必须使用http://,而不是在URL中的http://。使用在URL中的http://的任何链路不支持安全文件夹。
& R+ n, |$ {& b$ ]  IIS的一般性安全提示你使用IIS随意向INTERNET发布信息时,要确保网络安全性。除了我们以前讲座过后IIS功能外,你还要做到以下各点:7 Y* u) f5 Z+ L: n
  (1)为系统分区和各项IIS服务程序生成分开的区,这样黑客无法轻易地从某项服务程序的某个漏洞对整个机器访问。
( Y7 |; F. c/ b) S# W  (2)对机器的所有分区使用NTFS,要保证用户权限设置正确。
: q6 x# o/ G+ Q1 |  Y& t" U  (3)将IIS服务器放置于其自己的域中,并与你的帐户建立一种单向委托关系。如果黑客能得到某个有效帐户的信息,那个帐户也无法对你的用户域进行访问。4 `! i3 j% k6 A; I4 f
3、Web服务器安全提示如果你正运行WEB服务器,尽管你已根据以前所讨论过的内容采取了预防措施,也许仍有些安全漏洞有待于你填补。以下列出当提供WEB服务时,你应当采取的一般措施:1 v0 @- n& C+ z! J4 @) Q: O( z
  *停用.bat和.cmd文件的映射功能。如果黑客们拿到这些Web服务器上的可执行文件的话,他们就可运行这些Web文件。你通过取消对脚本程序的所有目录的阅读许可权,就可以停用某些文件夹映射功能。; V% N; t7 K, }
  *总是将你的脚本程序和数据存储在不同的目录,务必使包含脚本程序的目录只拥有执行许可权。/ a$ q% x& t5 \) d& r; Z
  *禁止使用Directory Browsing Allowed(允许目录浏览)。这一功能启动后会给出一个浏览器,该浏览器含有某个目录中的超文本文件列表,从而使黑客能篡改目录中的文件。
" [. j9 i$ c! \" V! o* M9 M) @; |- @  *避免使用Remote Virtual Directories(远程虚拟目录)。务必将IIS所有的可执行文件以及数据安装在同一台机器上,并利用NTFS来保护。当用户试图从远程目录访问文档时,总是使用输入到属性页上的用户名和口令,这就有可能绕过访问控制列表。*当编写和使用CGI脚本程序时,一定要小心。有经验的黑客也许会利用编写拙劣的CGI脚本程序来对你的系统进行访问。; e+ x" h) d$ j1 A" `2 M7 V
  *牢记特权最小的原则,如果你计划只运行Web服务器,那么请只激活Web服务器主机的端口80。5 ^) ?- \; c1 O) y* {
  *全面测试你的Web服务器——设法发现并弥补任何漏洞。最好的方法是,让可靠而且内行的同事设法破坏你网络的安全性。
7 D0 f0 h+ [5 t/ ]9 f0 A  *想了解额外的情况,请上网www.ncsa.com/webcert/sgl_site.html去查看NCSA Web Site Certification Program文档,寻求使你的Web服务器安全的灵丹妙药。$ V0 E: v* r" g% p1 `2 C
  四、安全性与FTP服务器FTP服务器是唯一一项允许用户通过INTERNET将文件传输至你服务器的IIS服务程序。设置FTP安全性能、用户和口令验证与WEB服务器大致相似。但是有一点值得你**注意**:用户名和口令将以明文(非加密)形式传输至FTP服务器服务程序,这意味着如果使用网络嗅探器就可以捕捉到这一信息,从而破坏网络的安全!
& b3 D1 I9 ?3 P  在你允许大众进行访问时,一定要熟悉FTP Service Properties页的Current Session钮。它告诉你哪个用户与FTP服务器相连,他们何时连接,以及他们已连接多长时间。, N, R6 L2 A7 }* e2 [& y& R2 u" Z
  虚拟目录设置FTP服务器的目录与设置Web服务器服务程序十分类似,一定要保证用户不能访问FTPRoot目录之外的目录,并要正确设置FTP目录的访问许可。" z+ V4 U+ c/ a/ v7 a, r$ S% _: h$ V
  FTP服务器安全提示运行FTP服务器时,为保证安全你应当了解的以下事项:
$ D& I2 R9 ~# [! f$ B! U8 J" O4 G6 Q' q6 z  1、谨记用户可以修改FTP服务器的目录。一定要确保他们无法进入FTPRoot目录以外的目录,同时要使用NTFS来保证你服务器的安全。
5 e/ }* l5 G  X' D1 \7 n) o  2、避免使用远程虚拟目录。当用户度图从远程目录访问文档时,总是要求其提供输入到属性页的用户名和口令,这就有可能绕过访问控制表表。
- H" a2 T, G. d- v* {8 H' D( ?+ i  3、一定要启动记录功能,查找可疑活动,如在日志和事件查看器中查找没有成功的登录4、如果你只计划运行FTP服务器,只启动FTP主机的端口20和端口21。9 [/ u7 c7 J- _/ H- [
  5、全面测试你的FTP服务器,并设法找到任何漏洞。你还可以让一个可靠的内行的同事设法打入系统。
0 U/ y$ h3 z* m/ T  五、安全性和Gopher服务器保护Gopher服务器与保护FTP服务程序和Web服务程序很类似,差别在于Gopher只允许匿名登录。+ Q$ p% B0 f2 f/ t* v- Y2 v0 d

& Q$ ~2 s! |% X# l
. E5 N/ y7 r; S" H8 O% d/ P5 ^& H

, V! W8 R* k& w2 N; }3 i( I. c8 T; |4 ~4 T% l& r; O0 ?
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1451562
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2026-8-14 02:07 , Processed in 0.021681 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表