Win2003下IIS安全配置整理

Win2003IIS安全配置整理html

 

1、系统的安装
1、按照Windows2003安装光盘的提示安装,默认状况下2003没有把IIS6.0安装在系统里面。

2、IIS6.0的安装
开始菜单—>控制面板—>添加或删除程序—>添加/删除Windows组件
应用程序 ———ASP.NET(可选)
|——启用网络 COM+ 访问(必选)
|——Internet 信息服务(IIS)———Internet 信息服务管理器(必选)
|——公用文件(必选)
|——万维网服务———Active Server pages(必选)
|——Internet 数据链接器(可选)
|——WebDAV 发布(可选)

|——万维网服务(必选)
|——在服务器端的包含文件(可选)
而后点击肯定—>下一步安装。(具体见本文附件1
linux

3、系统补丁的更新
点击开始菜单—>全部程序—>Windows Update
按照提示进行补丁的安装。
shell

4、备份系统
GHOST备份系统。
数据库

5、安装经常使用的软件
例如:杀毒软件、解压缩软件等;安装完毕后,配置杀毒软件,扫描系统漏洞,安装以后用GHOST再次备份系统。
windows

6、先关闭不须要的端口 开启防火墙 导入IPSEC策略
网络链接里,把不须要的协议和服务都删掉,这里只安装了基本的Internet协议(TCP/IP),因为要控制带宽流量服务,额外安装了Qos数据包计划程序。在高级tcp/ip设置里--"NetBIOS"设置"禁用tcp/IP上的NetBIOSS"。在高级选项里,使用"Internet链接防火墙",这是windows 2003 自带的防火墙,在2000系统里没有的功能,虽然没什么功能,但能够屏蔽端口,这样已经基本达到了一个IPSec的功能。
安全

修改3389远程链接端口
修改注册表.
开始--运行
--regedit
依次展开
HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/
TERMINAL SERVER/WDS/RDPWD/TDS/TCP
右边键值中 PortNumber 改成你想用的端口号.注意使用十进制( 10000 )
服务器

HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/TERMINAL SERVER/
WINSTATIONS/RDP-TCP/
右边键值中 PortNumber 改成你想用的端口号.注意使用十进制( 10000 )
注意:别忘了在WINDOWS2003自带的防火墙给+10000端口

修改完毕.从新启动服务器.设置生效。
网络

2、用户安全设置
1、禁用Guest帐号
在计算机管理的用户里面把Guest帐号禁用。为了保险起见,最好给Guest加一个复杂的密码。你能够打开记事本,在里面输入一串包含特殊字符、数字、字母的长字符串,而后把它做为Guest用户的密码拷进去。

2
、限制没必要要的用户

去掉全部的Duplicate User用户、测试用户、共享用户等等。用户组策略设置相应权限,而且常常检查系统的用户,删除已经再也不使用的用户。这些用户不少时候都是黑客们入侵系统的突破口。

3
、把系统Administrator帐号更名

你们都知道,Windows 2003 Administrator用户是不能被停用的,这意味着别人能够一遍又一遍地尝试这个用户的密码。尽可能把它假装成普通用户,好比改为Guesycludx

4
、建立一个陷阱用户

什么是陷阱用户?即建立一个名为“Administrator”的本地用户,把它的权限设置成最低,什么事也干不了的那种,而且加上一个超过10位的超级复杂密码。这样可让那些 Hacker们忙上一段时间,借此发现它们的入侵企图。

5
、把共享文件的权限从Everyone组改为受权用户

任什么时候候都不要把共享文件的用户设置成“Everyone”组,包括打印共享,默认的属性就是“Everyone”组的,必定不要忘了改。

6
、开启用户策略

使用用户策略,分别设置复位用户锁定计数器时间为20分钟,用户锁定时间为20分钟,用户锁定阈值为3次。 (该项为可选)

7
、不让系统显示上次登陆的用户名
默认状况下,登陆对话框中会显示上次登陆的用户名。这使得别人能够很容易地获得系统的一些用户名,进而作密码猜想。修改注册表能够不让对话框里显示上次登陆的用户名。方法为:打开注册表编辑器并找到注册表“HKLMSoftwareMicrosoftWindows TCurrentVersionWinlogonDont-DisplayLastUserName”,把REG_SZ的键值改为1
 
密码安全设置

1
、使用安全密码

一些公司的管理员建立帐号的时候每每用公司名、计算机名作用户名,而后又把这些用户的密码设置得太简单,好比“welcome”等等。所以,要注意密码的复杂性,还要记住常常改密码。

2
、设置屏幕保护密码

这是一个很简单也颇有必要的操做。设置屏幕保护密码也是防止内部人员破坏服务器的一个屏障。

3
、开启密码策略

注意应用密码策略,如启用密码复杂性要求,设置密码长度最小值为6位 ,设置强制密码历史为5次,时间为42天。

4
、考虑使用智能卡来代替密码

对于密码,老是使安全管理员进退两难,密码设置简单容易受到黑客的攻击,密码设置复杂又容易忘记。若是条件容许,用智能卡来代替复杂的密码是一个很好的解决方法。
tcp

3、系统权限的设置编辑器



3、系统权限的设置
1、磁盘权限
系统盘及全部磁盘只给 Administrators 组和 SYSTEM 的彻底控制权限
系统盘Documents and Settings 目录只给 Administrators 组和 SYSTEM 的彻底控制权限
系统盘Documents and SettingsAll Users 目录只给 Administrators 组和 SYSTEM 的彻底控制权限
系统盘WindowsSystem32cacls.execmd.exenet.exenet1.exe
ftp.exetftp.exetelnet.exe netstat.exeregedit.exeat.exeattrib.exeformat.comdel文件只给 Administrators 组和SYSTEM 的彻底 控制权限
另将<systemroot>System32cmd.exeformat.com
ftp.exe转移到其余目录或改名
Documents and Settings下全部些目录都设置只给adinistrators权限。而且要一个一个目录查看,包括下面的全部子目录。

删除c:inetpub目录

2、本地安全策略设置
开始菜单—>管理工具—>本地安全策略
A、本地策略——>审核策略
审核策略更改 成功 失败

审核登陆事件 成功 失败
审核对象访问 失败
审核过程跟踪 无审核
审核目录服务访问 失败
审核特权使用 失败
审核系统事件 成功 失败
审核帐户登陆事件 成功 失败
审核帐户管理 成功 失败

B、本地策略——>用户权限分配
关闭系统:只有Administrators组、其它所有删除。
经过终端服务容许登录:只加入Administrators,Remote Desktop Users组,其余所有删除

C、本地策略——>安全选项
交互式登录:不显示上次的用户名 启用
网络访问:不容许SAM账户和共享的匿名枚举 启用
网络访问:不容许为网络身份验证储存凭证 启用
网络访问:可匿名访问的共享 所有删除
网络访问:可匿名访问的命 所有删除
网络访问:可远程访问的注册表路径 所有删除
网络访问:可远程访问的注册表路径和子路径 所有删除

账户:重命名来宾账户 重命名一个账户

账户:重命名系统管理员账户 重命名一个账户

3、禁用没必要要的服务 开始-运行-services.msc
TCP/IPNetBIOS Helper
提供 TCP/IP 服务上的 NetBIOS 和网络上客户端的 NetBIOS 名称解析的支持而使用户可以共享

文件、打印和登陆到网络
Server
支持此计算机经过网络的文件、打印、和命名管道共享
Computer Browser 维护网络上计算机的最新列表以及提供这个列表
Task scheduler
容许程序在指定时间运行

Messenger
传输客户端和服务器之间的 NET SEND 和 警报器服务消息

Distributed File System: 局域网管理共享文件,不须要可禁用

Distributed linktracking client:用于局域网更新链接信息,不须要可禁用

Error reporting service:禁止发送错误报告

Microsoft Serch:提供快速的单词搜索,不须要可禁用

NTLMSecuritysupportprovidetelnet服务和Microsoft Serch用的,不须要可禁用

PrintSpooler:若是没有
打印机可禁用
Remote Registry:禁止远程修改注册表

Remote Desktop Help Session Manager:禁止远程协助

Workstation
关闭的话远程NET命令列不出用户组

以上是在Windows Server 2003 系统上面默认启动的服务中禁用的,默认禁用的服务如没特别须要的话不要启动。

4、修改注册表
修改注册表,让系统更强壮
1)
隐藏重要文件/目录能够修改注册表实现彻底隐藏
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows Current-VersionExplorerAdvancedFolderHi-ddenSHOWALL”
,鼠标右击 “CheckedValue”,选择修改,把数值由1改成0

2) 防止SYN洪水攻击
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters
新建DWORD值,名为SynAttackProtect,值为
2
新建
EnablePMTUDiscovery REG_DWORD 0
新建
NoNameReleaseOnDemand REG_DWORD 1
新建
EnableDeadGWDetect REG_DWORD 0
新建
KeepAliveTime REG_DWORD 300,000
新建
PerformRouterDiscovery REG_DWORD 0
新建EnableICMPRedirects REG_DWORD 0

3) 禁止响应ICMP路由通告报文
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfacesinterface
新建DWORD值,名为PerformRouterDiscovery 值为0

4) 防止ICMP重定向报文的攻击
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters
EnableICMPRedirects 值设为0

5) 不支持IGMP协议
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters
新建DWORD值,名为IGMPLevel 值为
0
6)
禁止IPC空链接:

cracker
能够利用net use命令创建空链接,进而入侵,还有net viewnbtstat这些都是基于空链接的,禁止空链接就行了。
Local_MachineSystemCurrentControlSetControlLSA-RestrictAnonymous
把这个值改为”1”便可。

7) 更改TTL
cracker
能够根据ping回的TTL值来大体判断你的操做系统,如:
TTL=107(WINNT);
TTL=108(win2000);
TTL=127
128(win9x);
TTL=240
241(linux);
TTL=252(solaris);
TTL=240(Irix);
实际上你能够本身改的:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersDefaultTTL REG_DWORD 0-0xff(0-255 十进制,默认值128)改为一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃入侵你也不必定哦

8) 删除默认共享
有人问过我一开机就共享全部盘,改回来之后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLanmanServerParametersAutoShareServer类型是REG_DWORD把值改成0便可

9) 禁止创建空链接
默认状况下,任何用户经过经过空链接连上服务器,进而枚举出账号,猜想密码。咱们能够经过修改注册表来禁止创建空链接:

Local_MachineSystemCurrentControlSetControlLSA-RestrictAnonymous
的值改为”1”便可。

10) 创建一个记事本,填上如下代码。保存为*.bat并加到启动项目中
net share c$ /del
net share d$ /del
net share e$ /del
net share f$ /del
net share ipc$ /del
net share admin$ /del

5IIS站点设置:
1)
IIS目录&数据与系统磁盘分开,保存在专用磁盘空间内;
2)
启用父级路径;
3)
IIS管理器中删除必须以外的任何没有用到的映射(保留asp等必要映射便可);
4)
IIS中将HTTP404 Object Not Found出错页面经过URL重定向到一个定制HTM文件;
5) Web
站点权限设定(建议):
读 容许
写 不容许
脚本源访问 不容许
目录浏览 建议关闭
日志访问 建议关闭
索引资源 建议关闭
执行 推荐选择仅限于脚本
6)
建议使用W3C扩充日志文件格式,天天记录客户IP地址,用户名,服务器端口,方法,URI字根,HTTP状态,用户代理,并且天天均要审查日志。(最好不要使用缺省的目录,建议更换一个记日志的路径,同时设置日志的访问权限,只容许管理员和systemFull Control)。
7)
程序安全
:
A. 
涉及用户名与口令的程序最好封装在服务器端,尽可能少的在ASP文件里出现,涉及到与数据库链接地用户名与口令应给予最小的权限
;
B. 
须要通过验证的ASP页面,可跟踪上一个页面的文件名,只有从上一页面转进来的会话才能读取这个页面
;
C. 
防止ASP主页.inc文件泄露问题
;
D. 
防止UE等编辑器生成some.asp.bak文件泄露问题。

6IIS权限设置的思路
1)
要为每一个独立的要保护的个体(好比一个网站或者一个虚拟目录)建立一个系统用户,让这个站点在系统中具备唯一的能够设置权限的身份。
2)
IIS的【站点属性或者虚拟目录属性目录安全性匿名访问和验证控制编辑匿名访问编辑】填写刚刚建立的那个用户名。

3)
设置全部的分区禁止这个用户访问,而刚才这个站点的主目录对应的那个文件夹设置容许这个用户访问(要去掉继承父权限,而且要加上超管组和SYSTEM组)。

7、卸载最不安全的组件
最简单的办法是直接卸载后删除相应的程序文件。将下面的代码保存为一个.BAT文件,( 如下均以 WIN2000 为例,若是使用2003,则系统文件夹应该是 C:WINDOWS ) regsvr32/u C:WINDOWSSystem32wshom.ocx del C:WINDOWSSystem32wshom.ocx regsvr32/u C:WINDOWSsystem32shell32.dll del C:WINNTWINDOWSshell32.dll

相关文章
相关标签/搜索