Windows WEB服务器配置安全规范文档格式.docx
- 文档编号:22148401
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:26
- 大小:47.49KB
Windows WEB服务器配置安全规范文档格式.docx
《Windows WEB服务器配置安全规范文档格式.docx》由会员分享,可在线阅读,更多相关《Windows WEB服务器配置安全规范文档格式.docx(26页珍藏版)》请在冰豆网上搜索。
2.组件的定制
不要按Win2000的默认安装组件,根据安全原则“最少的服务+最小的权限=最大的安全”,只选择确实需要的服务安装即可。
典型Web服务器需要的最小组件是:
公用文件、Internet服务管理器、WWW服务器。
3.接入网络时间
在安装完成Win2000**作系统时,不要立即把服务器接入网络,因为这时的服务器还没有打上各种补丁,存在各种漏洞,非常容易感染病毒和被入侵。
补丁的安装应该在所有应用程序安装完之后,因为补丁程序往往要替换或修改某些系统文件,如果先安装补丁再安装应用程序有可能导致补丁不能起到应有的效果。
IIS的HotFix要求每次更改IIS的配置时都需要重新安装。
4.账户安全管理
1)账户要尽可能少,并且要经常用一些扫描工具检查系统账户、账户权限及密码。
删除已经不再使用的账户。
2)停用Guest账号,并给Guest加一个复杂的密码。
3)把系统Administrator账号改名,尽量把它伪装成普通用户,名称不要带有Admin字样。
4)不让系统显示上次登录的用户名,具体**作如下:
修改注册表“HKLM\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon\DontDisplayLastUserName”的键值,把REG_SZ的键值改成1。
5.安全审核
在“管理工具→远程控制服务配置→连接”处,右键点击“RPD-TCP”连接,选择“属性”,在其窗口选中“权限”,点击右下角的“高级”,选择“审核”,增加一个“everyone”组,审核它的“连接”、“断开”、“注销”和“登录”的成功和失败。
在“管理工具→日记查看→安全日记”可看到该审核记录。
开启安全审核是win2000最基本的入侵检测方法。
当有人尝试对你的系统进行某些方式(如尝试用户密码,改变帐户策略,未经许可的文件访问等等)入侵的时候,都会被安全审核记录下来。
很多的管理员在系统被入侵了几个月都不知道,直到系统遭到破坏。
下面的这些审核是必须开启的,其他的可以根据需要增加:
策略设置
审核系统登陆事件成功,失败
审核帐户管理成功,失败
审核登陆事件成功,失败
审核对象访问成功
审核策略更改成功,失败
审核特权使用成功,失败
审核系统事件成功,失败
6.卸载无用的组件模块
将\Winnt\inf下的sysoc.inf文件中的所有hide用替换法删除;
然后在控制面板的添加删除程序中就可以卸载所有不需要的组件。
二、基本系统设置
1.安装各种补丁
安装ServicePack和最新的hotfix;
安装SQL和IIS系列补丁。
如果从本地备份中安装,则随后必须立即通过在线更新功能查验是否有遗漏的补丁没有安装。
建议启用系统自动更新功能,并设置为有更新时自动下载安装。
建议记得安装最新的MDAC(
MDAC为数据访问部件,通常程序对数据库的访问都通过它,但它也是黑客攻击的目标,且MDAC一般不以补丁形式发放的,比较容易漏更新。
为防止以前版本的漏洞可能会被带入升级后的版本,建议卸载后安装最新的版本。
在安装最新版本前最好先做一下测试,因为有的数据访问方式或许在新版本中不再被支持,这种情况下可以通过修改注册表来档漏洞,详见漏洞测试文档。
2.分区内容规划
1)操作系统、Web主目录、日志分别安装在不同的分区。
2)关闭任何分区的自动运行特性:
可以使用TweakUI等工具进行修改。
以防万一有人放入Autorun程序实现恶意代码自动加载。
3.协议管理
卸载不需要的协议,比如IPX/SPX,NetBIOS;
在连接属性对话框的TCP)/IP属性的高级选项卡中,选择“WINS”,选定“禁用TCP/IP上的NETBIOS”。
4.关闭所有以下不需要的服务
以下仅供参考,具体还要看服务器上运行的应用来确定!
要特别注意各服务之间的储存关系,个性为当可能导致某些功能的异常,甚至服务器不能工作!
建议每次只个性两三个项目,重启测试无误后再设置其他项目!
*Alerter(disable)
*ClipBookServer(disable)
*ComputerBrowser(disable)
*DHCPClient(disable)
*DirectoryReplicator(disable)
*FTPpublishingservice(disable)
*LicenseLoggingService(disable)
*Messenger(disable)
*Netlogon(disable)
*NetworkDDE(disable)
*NetworkDDEDSDM(disable)
*NetworkMonitor(disable)
****PlugandPlay(disableafterallhardwareconfiguration)****
*RemoteAccessServer(disable)
*RemoteProcedureCall(RPC)locater(disable)
*Schedule(disable)
*Server(disable)
*SimpleServices(disable)
*Spooler(disable)
*TCP/IPNetbiosHelper(disable)
****TelephoneService(disable)****
在必要时禁止如下服务:
*SNMPservice(optional)
*SNMPtrap(optional)
*UPS(optional
设置如下服务为自动启动:
*Eventlog(required)
*NTLMSecurityProvider(required)
*RPCservice(required)
*WWW(required)
*Workstation(leaveserviceon:
willbedisabledlaterinthedocument.
*MSDTC(required)
*ProtectedStorage(required)
5.删除OS/2和POSIX子系统:
删除如下目录的任何键:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OS/2SubsystemforNT
删除如下的键:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Environment\Os2LibPath
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\SubSystems\Optional
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\SubSystems\Posix
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\SubSystems\Os2
删除如下目录:
c:
\winnt\system32\os2但会出现文件保护的提示,建议不删除,修改注册表就可以了
6.帐号和密码策略
1)保证禁止guest帐号
2)将administrator改名为比较难猜的帐号
3)密码唯一性:
记录上次的6个密码
4)最短密码期限:
2
5)密码最长期限:
42
6)最短密码长度:
8
7)密码复杂化(passfilt.dll):
启用
8)用户必须登录方能更改密码:
9)帐号失败登录锁定的门限:
6
10)锁定后重新启用的时间间隔:
720分钟
11)本地安全策略:
设置“本地安全策略→本地策略→选项”中的RestrictAnonymous(匿名连接的额外限制)为“不容许枚举SAM账号和共享”。
在安全选项中,不显示上次登录用户名、重命名管理员账号名称(某些情况下可能导致个别程序运行异常!
);
在用户权力指派中,限制更改系统时间、关闭系统的权力仅管理员。
7.设置文件和目录权限
将C:
\winnt,C:
\winnt\config,C:
\winnt\system32,C:
\winnt\system等目录的访问权限做限制,限制everyone的写权限,限制users组的读写权限;
将各分区的根目录的everyone从权限列表中删除!
然后分别添加Administrators、PowerUsers、Users、IUSR_***以不同的权限。
不要给Guests任何权限。
运行Sfc/enable启动文件保护机制。
8.注册表一些条目的修改
1)去除logon对话框中的shutdown按钮
将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\
中ShutdownWithoutLogonREG_SZ值设为0
2)去除logon信息的cashing功能
将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\中
CachedLogonsCountREG_SZ值设为0
3)隐藏上次登陆的用户名
DontDisplayLastUserNameREG_SZ值设为1
4)限制LSA匿名访问
将HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA中
RestricAnonymousREG_DWORD值设为1
5)去除所有网络共享
将HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters\中
AutoShareServerREG_DWORD值设为0
再创建一个AutoShareWks双字节值,设置为0(注意大小写)。
6)禁止建立空连接
默认情况下,任何用户可通过空连接连上服务器,枚举账号并猜测密码。
可以通过以下两种方法禁止
建立空连接。
Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous的值改成1
7)修改终端服务的默认端口
终端服务的默认端口为3389,可考虑修改为别的端口。
修改方法为:
打开注册表,在“HKLM\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStations”处
找到类似RDP-TCP的子键,修改PortNumber值。
9.启用TCP/IP过滤
只允许TCP端口80和443(如果使用SSL)以及其他可能要用的端口;
不允许UDP端口;
只允许IPProtocol6(TCP)。
web服务器就可以,其他如域服务器不行,该规范主要针对WEB服务器。
10.移动部分重要文件并加访问控制
创建一个只有系统管理员能够访问的目录,将system32目录下的一些重要文件移动到此目录(注意同时处理System32\Dllcache目录中的同名文件!
)。
但有时会因系统文件保护功能被启用而无法实现顺利删除。
变通办法是选中这些文件,然后禁止任何人访问。
为稳妥起见,应当事先将这些文件存放到其他比较安全的位置供管理员自己使用。
xcopy.exe,wscript.exe,cscript.exe,net.exe,ftp.exe,telnet.exe,arp.exe,
edlin.exe,ping.exe,route.exe,at.exe,finger.exe,posix.exe,rsh.exe,atsvc.exe,
qbasic.exe,runonce.exe,syskey.exe,cacls.exe,ipconfig.exe,rcp.exe,
secfixup.exe,nbtstat.exe,rdisk.exe,debug.exe,regedt32.exe,regedit.exe,
netstat.exe,tracert.exe,nslookup.exe,rexec.exe,cmd.exe
11.下载Hisecweb.inf安全模板来配置系统
Http:
//
该模板配置基本的Windows2000系统安全策略。
将该模板复制到%windir%\security\templates目录。
打开“安全模板”工具,查看这些设置。
打开“安全配置和分析”工具,然后装载该模板。
右键单击“安全配置和分析”工具,然后从上下文菜单中选择“立即分析计算机”。
等候操作完成。
查看结果,如有必要就更新该模板。
右键单击“安全配置和分析”工具,然后从上下文菜单中选择“立即配置计算机”。
12.服务器上其他工具程序的替代
浏览器建议使用FireFox,以免最新的针对IE的漏洞造成的危害。
平时尽量不在服务器上上网。
13.设置陷阱脚本
既要防范被人启用Telnet服务,又要考虑万一被入侵后的对策。
除Telnet服务外,对System32目录下的Telsrv.exe等文件设置访问权限;
关闭相关服务;
然后再编辑System32\login.cmd文件,在其中添加脚本,目的是导致对方登录后出现异常,无法正常连接和工作。
脚本的内容可以自由发挥,以阻断对方操作为准。
14.取消部分危险文件扩展名
如regVBS
VBE
JS等。
关闭445端口
445端口惹出了不少问题关闭方法修改注册表,添加一个键值
Hive:
HKEY_LOCAL_MACHINE
Key:
System\CurrentControlSet\Services\NetBT\Parameters
Name:
SMBDeviceEnabled
Type:
REG_DWORD
value:
0
修改完后重启机器,运行“netstat-an”,445端口已经不再Listening了。
关闭DirectDraw
这是C2级安全标准对视频卡和内存的要求。
关闭DirectDraw可能对一些需要用到DirectX的程序有影响(比如游戏,在服务器上玩星际争霸?
我晕..$%$^%^&
?
),但是对于绝大多数的商业站点都应该是没有影响的。
修改注册表HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI的Timeout(REG_DWORD)为0即可。
禁止dumpfile的产生和自动清除掉页面文件
dump文件在系统崩溃和蓝屏的时候是一份很有用的查找问题的资料(不然我就照字面意思翻译成垃圾文件了)。
然而,它也能够给黑客提供一些敏感信息比如一些应用程序的密码等。
要禁止它,打开控制面板>
系统属性>
高级>
启动和故障恢复把写入调试信息改成无。
要用的时候,可以再重新打开它。
关机时清除掉页面文件:
页面文件也就是调度文件,是win2000用来存储没有装入内存的程序和数据文件部分的隐藏文件。
一些第三方的程序可以把一些没有的加密的密码存在内存中,页面文件中也可能含有另外一些敏感的资料。
要在关机的时候清楚页面文件,可以编辑注册表
HKLM\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement
把ClearPageFileAtShutdown的值设置成1。
禁止从软盘和CDRom启动系统
一些第三方的工具能通过引导系统来绕过原有的安全机制。
如果你的服务器对安全要求非常高,可以考虑使用可移动软盘和光驱。
把机箱锁起来仍不失为一个好方法。
锁住注册表的访问权限
在windows2000中,只有administrators和BackupOperators才有从网络上访问注册表的权限。
如果你觉得还不够的话,可以进一步设定注册表访问权限,详细信息请参考:
考虑使用IPSec增强IP数据包的安全性
正如其名字的含义,IPSec提供IP数据包的安全性。
IPSec提供身份验证、完整性和可选择的机密性。
发送方计算机在传输之前加密数据,而接收方计算机在收到数据之后解密数据。
利用IPSec可以使得系统的安全性能大大增强。
有关IPSes的详细信息可以参考:
考虑使用智能卡来代替密码
对于密码,总是使安全管理员进退两难,容易受到10phtcrack等工具的攻击,如果密码太复杂,用户把为了记住密码,会把密码到处乱写。
如果条件允许,用智能卡来代替复杂的密码是一个很好的解决方法。
将服务器隐藏起来
为了防止黑客或其他非法攻击者轻易搜索到局域网服务器的名字,你可以巧妙使用“netconfig”命令,将服务器的名称暂时隐藏起来。
如此一来局域网中的非法用户,即使通过网上邻居窗口,也无法找到服务器的“身影”了,服务器遭受外来攻击的危险性将会大大下降。
要用命令隐藏服务器的名称时,可以直接在DOS命令行中输入“netconfigserver/hidden:
yes”(其中server是服务器的计算机名称),回车后,服务器的计算机名称就会从网上邻居窗口中自动消失,这样黑客就无法知道服务器的名称是什么了,更不要谈如何去攻击它了。
Win2003中提高FSO的安全性
ASP提供了强大的文件系统访问能力,可以对服务器硬盘上的任何文件进行读、写、复制、删除、改名等操作,这给学校网站的安全带来巨大的威胁。
现在很多校园主机都遭受过FSO木马的侵扰。
但是禁用FSO组件后,引起的后果就是所有利用这个组件的ASP程序将无法运行,无法满足客户的需求。
如何既允许FileSystemObject组件,又不影响服务器的安全性呢(即:
不同虚拟主机用户之间不能使用该组件读写别人的文件)?
以下是笔者多年来摸索出来的经验:
第一步是有别于Windows2000设置的关键:
右击C盘,点击“共享与安全”,在出现在对话框中选择“安全”选项卡,将Everyone、Users组删除,删除后如果你的网站连ASP程序都不能运行,请添加IIS_WPG组,并重启计算机。
经过这样设计后,FSO木马就已经不能运行了。
如果你要进行更安全级别的设置,请分别对各个磁盘分区进行如上设置,并为各个站点设置不同匿名访问用户。
下面以实例来介绍(假设你的主机上E盘Abc文件夹下设A站点):
1.打开“计算机管理→本地用户和组→用户”,创建Abc用户,并设置密码,并将“用户下次登录时须更改密码”前的对号去掉,选中“用户不能更改密码”和“密码永不过期”,并把用户设置为隶属于Guests组。
2.右击E:
\Abc,选择“属性→安全”选项卡,此时可以看到该文件夹的默认安全设置是“Everyone”完全控制(视不同情况显示的内容不完全一样),删除Everyone的完全控制(如果不能删除,请点击[高级]按钮,将“允许父项的继承权限传播”前面的对号去掉,并删除所有),添加Administrators及Abc用户对本网站目录的所有安全权限。
3.打开IIS管理器,右击A主机名,在弹出的菜单中选择“属性→目录安全性”选项卡,点击身份验证和访问控制的[编辑],弹出图2所示对话框,匿名访问用户默认的就是“IUSR_机器名”,点击[浏览],在“选择用户”对话框中找到前面创建的Abc账户,确定后重复输入密码。
经过这样设置,访问网站的用户就以Abc账户匿名身份访问E:
\Abc文件夹的站点,因为Abc账户只对此文件夹有安全权限,所以他只能在本文件夹下使用FSO。
常见问题:
如何解除FSO上传程序小于200k限制?
先在服务里关闭IISadminservice服务,找到Windows\System32\Inesrv目录下的Metabase.xml并打开,找到ASPMaxRequestEntityAllowed,将其修改为需要的值。
默认为204800,即200K,把它修改为51200000(50M),然后重启IISadminservice服务。
三、IIS安全设置
1.关闭并删除默认站点
默认FTP站点
默认Web站点
管理Web站点
2.建立自己的站点,与系统不在一个分区
如:
D:
\wwwroot3.建立E:
\Logf
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Windows WEB服务器配置安全规范 WEB 服务器 配置 安全 规范