2003 服务器安全攻略
请找到c盘的这些文件,把安全性设置只有特定的管理员有完全操作权限

下列这些文件只允许administrators访问

net.exe

net1.exet

cmd.exe

tftp.exe

netstat.exe

regedit.exe

at.exe

attrib.exe

cacls.exe

format.com

5.删除c:\inetpub目录,删除iis不必要的映射,建立陷阱帐号,更改描述
第三招:禁用不必要的服务,提高安全性和系统效率

Computer Browser 维护网络上计算机的最新列表以及提供这个列表

Task scheduler 允许程序在指定时间运行

Routing and Remote Access 在局域网以及广域网环境中为企业提供路由服务

Removable storage 管理可移动媒体、驱动程序和库

Remote Registry Service 允许远程注册表操作

Print Spooler 将文件加载到内存中以便以后打印。要用打印机的朋友不能禁用这项

IPSEC Policy Agent 管理IP安全策略以及启动ISAKMP/OakleyIKE)和IP安全驱动程序

Distributed Link Tracking Client 当文件在网络域的NTFS卷中移动时发送通知

Com+ Event System 提供事件的自动发布到订阅COM组件

Alerter 通知选定的用户和计算机管理警报

Error Reporting Service 收集、存储和向 Microsoft 报告异常应用程序

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

Telnet 允许远程用户登录到此计算机并运行程序

第四招:修改注册表,让系统更强壮

1、隐藏重要文件/目录可以修改注册表实现完全隐藏:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ Current-Version\Explorer\Advanced\Folder\Hi-dden\SHOWALL”,鼠标右击 “CheckedValue”,选择修改,把数值由1改为0

2、启动系统自带的Internet连接_blank">防火墙,在设置服务选项中勾选Web服务器。

3、防止SYN洪水***

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建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

4. 禁止响应ICMP路由通告报文

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface

新建DWORD值,名为PerformRouterDiscovery 值为0

5. 防止ICMP重定向报文的***

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

将EnableICMPRedirects 值设为0

6. 不支持IGMP协议

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建DWORD值,名为IGMPLevel 值为0

7.修改终端服务端口

运行regedit,找到[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ Wds \ rdpwd \ Tds \ tcp],看到右边的PortNumber了吗?在十进制状态下改成你想要的端口号吧,比如7126之类的,只要不与其它冲突即可。

2、第二处HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ WinStations \ RDP-Tcp,方法同上,记得改的端口号和上面改的一样就行了。

8、禁止IPC空连接:

cracker可以利用net use命令建立空连接,进而***,还有net view,nbtstat这些都是基于空连接的,禁止空连接就好了。打开注册表,找到Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 把这个值改成”1”即可。

9、更改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_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:DefaultTTL REG_DWORD 0-0xff(0-255 十进制,默认值128)改成一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃***你也不一定哦

10. 删除默认共享
有人问过我一开机就共享所有盘,改回来以后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,必须通过修改注册表的方式取消它:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters:AutoShareServer类型是REG_DWORD把值改为0即可

11. 禁止建立空连接

默认情况下,任何用户通过通过空连接连上服务器,进而枚举出帐号,猜测密码。我们可以通过修改注册表来禁止建立空连接:

Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 的值改成”1”即可。
第五招:其它安全手段

1.禁用TCP/IP上的NetBIOS
网上邻居-属性-本地连接-属性-Internet协议(TCP/IP)属性-高级-WINS面板-NetBIOS设置-禁用TCP/IP上的NetBIOS。这样cracker就无法用nbtstat命令来读取你的NetBIOS信息和网卡MAC地址了。

2. 账户安全
首先禁止一切账户,除了你自己,呵呵。然后把Administrator改名。我呢就顺手又建了个Administrator账户,不过是什么权限都没有的那种,然后打开记事本,一阵乱敲,复制,粘贴到“密码”里去,呵呵,来破密码吧~!破完了才发现是个低级账户,看你崩溃不?
4. 安全日志

我遇到过这样的情况,一台主机被别人***了,系统管理员请我去追查凶手,我登录进去一看:安全日志是空的,倒,请记住:Win2000的默认安装是不开任何安全审核的!那么请你到本地安全策略->审核策略中打开相应的审核,推荐的审核是:

账户管理 成功 失败

登录事件 成功 失败

对象访问 失败

策略更改 成功 失败

特权使用 失败

系统事件 成功 失败

目录服务访问 失败

账户登录事件 成功 失败

审核项目少的缺点是万一你想看发现没有记录那就一点都没辙;审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义
5. 运行防毒软件

我见过的Win2000/Nt服务器从来没有见到有安装了防毒软件的,其实这一点非常重要。一些好的杀毒软件不仅能杀掉一些著名的病毒,还能查杀大量***和后门程序。这样的话,“***”们使用的那些有名的***就毫无用武之地了。不要忘了经常升级病毒库,我们推荐mcafree杀毒软件+blackice_blank">防火墙

6.sqlserver数据库服务器安全和serv-u ftp服务器安全配置,更改默认端口,和管理密码

7.设置ip筛选、用blackice禁止***常用端口

一般禁用以下端口

135 138 139 443 445 4000 4899 7626

8.本地安全策略和组策略的设置,如果你在设置本地安全策略时设置错了,可以这样恢复成它的默认值.

打开 %SystemRoot%\Security文件夹,创建一个 "OldSecurity"子目录,将%SystemRoot%\Security下所有的.log文件移到这个新建的子文件夹中.

在%SystemRoot%\Security\database\下找到"Secedit.sdb"安全数据库并将其改名,如改为"Secedit.old".
启动"安全配置和分析"MMC管理单元:"开始"->"运行"->"MMC",启动管理控制台,"添加/删除管理单元",将"安全配置和分析"管理单元添加上.

右击"安全配置和分析"->"打开数据库",浏览"C:\WINNT\security\Database"文件夹,输入文件名"secedit.sdb",单击"打开".
当系统提示输入一个模板时,选择"Setup Security.inf",单击"打开".
如果系统提示"拒绝访问数据库",不管他.

你会发现在"C:\WINNT\security\Database"子文件夹中重新生成了新的安全数据库,在"C:\WINNT\security"子文件夹下重新生成了log文件.安全数据库重建成功.
WEB 服务器最重要的设置:
IIS的相关设置:
    删除默认建立的站点的虚拟目录,停止默认web站点,删除对应的文件目录c:inetpub,配置所有站点的公共设置,设置好相关的连接数限制,带宽设置以及性能设置等其他设置。配置应用程序映射,删除所有不必要的应用程序扩展,只保留asp,php,cgi,pl,aspx应用程序扩展。对于php和cgi,推荐使用isapi方式解析,用exe解析对安全和性能有所影响。用户程序调试设置发送文本错误信息给户。对于数据库,尽量采用mdb后缀,不需要更改为asp,可在IIS中设置一个mdb的扩展映射,将这个映射使用一个无关的dll文件如C:WINNTsystem32inetsrvssinc.dll来防止数据库被下载。设置IIS的日志保存目录,调整日志记录信息。设置为发送文本错误信息。修改403错误页面,将其转向到其他页,可防止一些扫描器的探测。另外为隐藏系统信息,防止telnet到80端口所泄露的系统版本信息可修改IIS的banner信息,可以使用winhex手工修改或者使用相关软件如banneredit修改。
    对于用户站点所在的目录,在此说明一下,用户的FTP根目录下对应三个文件佳,wwwroot,database,logfiles,分别存放站点文件,数据库备份和该站点的日志。如果一旦发生***事件可对该用户站点所在目录设置具体的权限,图片所在的目录只给予列目录的权限,程序所在目录如果不需要生成文件(如生成html的程序)不给予写入权限。因为是虚拟主机平常对脚本安全没办法做到细致入微的地步,更多的只能在方法用户从脚本提升权限:
    ASP的安全设置:
    设置过权限和服务之后,防范asp***还需要做以下工作,在cmd窗口运行以下命令:
    regsvr32/u C:\WINNT\System32\wshom.ocx
    del C:\WINNT\System32\wshom.ocx
    regsvr32/u C:\WINNT\system32\shell32.dll
    del C:\WINNT\system32\shell32.dll
    即可将WScript.Shell, Shell.application, WScript.Network组件卸载,可有效防止asp***通过wscript或shell.application执行命令以及使用***查看一些系统敏感信息。另法:可取消以上文件的users用户的权限,重新启动IIS即可生效。但不推荐该方法。
    另外,对于FSO由于用户程序需要使用,服务器上可以不注销掉该组件,这里只提一下FSO的防范,但并不需要在自动开通空间的虚拟商服务器上使用,只适合于手工开通的站点。可以针对需要FSO和不需要FSO的站点设置两个组,对于需要FSO的用户组给予c:winntsystem32scrrun.dll文件的执行权限,不需要的不给权限。重新启动服务器即可生效。
    对于这样的设置结合上面的权限设置,你会发现海阳***已经在这里失去了作用!
    PHP的安全设置:
    默认安装的php需要有以下几个注意的问题:
    C:\winnt\php.ini只给予users读权限即可。在php.ini里需要做如下设置:
    Safe_mode=on
    register_globals = Off
    allow_url_fopen = Off
    display_errors = Off
    magic_quotes_gpc = On [默认是on,但需检查一遍]
    open_basedir =web目录
    disable_functions =passthru,exec,shell_exec,system,phpinfo,get_cfg_var,popen,chmod
    默认设置com.allow_dcom = true修改为false[修改前要取消掉前面的;]
    MySQL安全设置:
    如果服务器上启用MySQL数据库,MySQL数据库需要注意的安全设置为:
    删除mysql中的所有默认用户,只保留本地root帐户,为root用户加上一个复杂的密码。赋予普通用户updatedeletealertcreatedrop权限的时候,并限定到特定的数据库,尤其要避免普通客户拥有对mysql数据库操作的权限。检查mysql.user表,取消不必要用户的shutdown_priv,relo
    ad_priv,process_priv和File_priv权限,这些权限可能泄漏更多的服务器信息包括非mysql的其它信息出去。可以为mysql设置一个启动用户,该用户只对mysql目录有权限。设置安装目录的data数据库的权限(此目录存放了mysql数据库的数据信息)。对于mysql安装目录给users加上读取、列目录和执行权限。
    Serv-u安全问题:
    安装程序尽量采用最新版本,避免采用默认安装目录,设置好serv-u目录所在的权限,设置一个复杂的管理员密码。修改serv-u的banner信息,设置被动模式端口范围(4001—4003)在本地服务器中设置中做好相关安全设置:包括检查匿名密码,禁用反超时调度,拦截“FTP bounce”***和FXP,对于在30秒内连接超过3次的用户拦截10分钟。域中的设置为:要求复杂密码,目录只使用小写字母,高级中设置取消允许使用MDTM命令更改文件的日期。
    更改serv-u的启动用户:在系统中新建一个用户,设置一个复杂点的密码,不属于任何组。将servu的安装目录给予该用户完全控制权限。建立一个FTP根目录,需要给予这个用户该目录完全控制权限,因为所有的ftp用户上传,删除,更改文件都是继承了该用户的权限,否则无法操作文件。另外需要给该目录以上的上级目录给该用户的读取权限,否则会在连接的时候出现530 Not logged in, home directory does not exist.比如在测试的时候ftp根目录为d:soft,必须给d盘该用户的读取权限,为了安全取消d盘其他文件夹的继承权限。而一般的使用默认的system启动就没有这些问题,因为system一般都拥有这些权限的。
数据库服务器的安全设置
    对于专用的MSSQL数据库服务器,按照上文所讲的设置TCP/IP筛选和IP策略,对外只开放1433和5631端口。对于MSSQL首先需要为sa设置一个强壮的密码,使用混合身份验证,加强数据库日志的记录,审核数据库登陆事件的“成功和失败”。删除一些不需要的和危险的OLE自动存储过程(会造成企业管理器中部分功能不能使用),这些过程包括如下:
    Sp_OACreate Sp_OADestroy Sp_OAGetErrorInfo Sp_OAGetProperty
    Sp_OAMethod Sp_OASetProperty Sp_OAStop
    去掉不需要的注册表访问过程,包括有:
    Xp_regaddmultistring Xp_regdeletekey Xp_regdeletevalue
    Xp_regenumvalues Xp_regread Xp_regremovemultistring
    Xp_regwrite
    去掉其他系统存储过程,如果认为还有威胁,当然要小心Drop这些过程,可以在测试机器上测试,保证正常的系统能完成工作,这些过程包括:
    xp_cmdshell xp_dirtree xp_dropwebtask sp_addsrvrolemember
    xp_makewebtask xp_runwebtask xp_subdirs sp_addlogin
    sp_addextendedproc
    在实例属性中选择TCP/IP协议的属性。选择隐藏 SQL Server 实例可防止对1434端口的探测,可修改默认使用的1433端口。除去数据库的guest账户把未经认可的使用者据之在外。 例外情况是master和 tempdb 数据库,因为对他们guest帐户是必需的。另外注意设置好各个数据库用户的权限,对于这些用户只给予所在数据库的一些权限。在程序中不要用sa用户去连接任何数据库。网络上有建议大家使用协议加密的,千万不要这么做,否则你只能重装MSSQL了。
    ***检测和数据备份
    ***检测工作
    作为服务器的日常管理,***检测是一项非常重要的工作,在平常的检测过程中,主要包含日常的服务器安全例行检查和遭到***时的***检查,也就是分为在***进行时的安全检查和在***前后的安全检查。系统的安全性遵循木桶原理,木桶原理指的是:一个木桶由许多块木板组成,如果组成木桶的这些木板长短不一,那么这个木桶的最大容量不取决于长的木板,而取决于最短的那块木板。应用到安全方面也就是说系统的安全性取决于系统中最脆弱的地方,这些地方是日常的安全检测的重点所在。
    日常的安全检测
    日常安全检测主要针对系统的安全性,工作主要按照以下步骤进行:
    1.查看服务器状态:
    打开进程管理器,查看服务器性能,观察CPU和内存使用状况。查看是否有CPU和内存占用过高等异常情况。
    2.检查当前进程情况
    切换“任务管理器”到进程,查找有无可疑的应用程序或后台进程在运行。用进程管理器查看进程时里面会有一项taskmgr,这个是进程管理器自身的进程。如果正在运行windows更新会有一项wuauclt.exe进程。对于拿不准的进程或者说不知道是服务器上哪个应用程序开启的进程,可以在网络上搜索一下该进程名加以确定[进程知识库: http://www.87653.com/通常的后门如果有进程的话,一般会取一个与系统进程类似的名称,如svch0st.exe,此时要仔细辨别[通常迷惑手段是变字母o为数字0,变字母l为数字1]
    3.检查系统帐号
    打开计算机管理,展开本地用户和组选项,查看组选项,查看administrators组是否添加有新帐号,检查是否有克隆帐号。
    4.查看当前端口开放情况
    使用activeport,查看当前的端口连接情况,尤其是注意与外部连接着的端口情况,看是否有未经允许的端口与外界在通信。如有,立即关闭该端口并记录下该端口对应的程序并记录,将该程序转移到其他目录下存放以便后来分析。打开计算机管理==》软件环境==》正在运行任务[在此处可以查看进程管理器中看不到的隐藏进程],查看当前运行的程序,如果有不明程序,记录下该程序的位置,打开任务管理器结束该进程,对于采用了守护进程的后门等程序可尝试结束进程树,如仍然无法结束,在注册表中搜索该程序名,删除掉相关键值,切换到安全模式下删除掉相关的程序文件。
5.检查系统服务
    运行services.msc,检查处于已启动状态的服务,查看是否有新加的未知服务并确定服务的用途。对于不清楚的服务打开该服务的属性,查看该服务所对应的可执行文件是什么,如果确定该文件是系统内的正常使用的文件,可粗略放过。查看是否有其他正常开放服务依存在该服务上,如果有,可以粗略的放过。如果无法确定该执行文件是否是系统内正常文件并且没有其他正常开放服务依存在该服务上,可暂时停止掉该服务,然后测试下各种应用是否正常。对于一些后门由于采用了hook系统API技术,添加的服务项目在服务管理器中是无法看到的,这时需要打开注册表中的HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices项进行查找,通过查看各服务的名称、对应的执行文件来确定是否是后门、***程序等。
    6.查看相关日志
    运行eventvwr.msc,粗略检查系统中的相关日志记录。在查看时在对应的日志记录上点右键选“属性”,在“筛选器”中设置一个日志筛选器,只选择错误、警告,查看日志的来源和具体描述信息。对于出现的错误如能在服务器常见故障排除中找到解决办法则依照该办法处理该问题,如果无解决办法则记录下该问题,详细记录下事件来源、ID号和具体描述信息,以便找到问题解决的办法。
    7.检查系统文件
    主要检查系统盘的exe和dll文件,建议系统安装完毕之后用dir *.exe /s >1.txt将C盘所有的exe文件列表保存下来,然后每次检查的时候再用该命令生成一份当时的列表,用fc比较两个文件,同样如此针对dll文件做相关检查。需要注意的是打补丁或者安装软件后重新生成一次原始列表。检查相关系统文件是否被替换或系统中是否被安装了***后门等恶意程序。必要时可运行一次杀毒程序对系统盘进行一次扫描处理。
8.检查安全策略是否更改
打开本地连接的属性,查看“常规”中是否只勾选了“TCP/IP协议”,打开“TCP/IP”协议设置,点“高级”==》“选项”,查看“IP安全机制”是否是设定的IP策略,查看“TCP/IP”筛选允许的端口有没有被更改。打开“管理工具”=》“本地安全策略”,查看目前使用的IP安全策略是否发生更改。
    9.检查目录权限
    重点查看系统目录和重要的应用程序权限是否被更改。需要查看的目录有c:;c:winnt;
    C:winntsystem32;c:winntsystem32inetsrv;c:winntsystem32inetsrvdata;c:documents and
    Settings;然后再检查serv-u安装目录,查看这些目录的权限是否做过变动。检查system32下的一些重要文件是否更改过权限,包括:cmd,net,ftp,tftp,cacls等文件。
    10.检查启动项
    主要检查当前的开机自启动程序。可以使用AReporter来检查开机自启动的程序。
    发现***时的应对措施
    对于即时发现的***事件,以下情况针对系统已遭受到破坏情况下的处理,系统未遭受到破坏或暂时无法察觉到破坏先按照上述的检查步骤检查一遍后再酌情考虑以下措施。系统遭受到破坏后应立即采取以下措施:
    视情况严重决定处理的方式,是通过远程处理还是通过实地处理。如情况严重建议采用实地处理。如采用实地处理,在发现***的第一时间通知机房关闭服务器,待处理人员赶到机房时断开网线,再进入系统进行检查。如采用远程处理,如情况严重第一时间停止所有应用服务,更改IP策略为只允许远程管理端口进行连接然后重新启动服务器,重新启动之后再远程连接上去进行处理,重启前先用AReporter检查开机自启动的程序。然后再进行安全检查。
    以下处理措施针对用户站点被***但未危及系统的情况,如果用户要求加强自己站点的安全性,可按如下方式加固用户站点的安全:
    站点根目录——只给administrator读取权限,权限继承下去。
    wwwroot ——给web用户读取、写入权限。高级里面有删除子文件夹和文件权限
    logfiles——给system写入权限。
    database——给web用户读取、写入权限。高级里面没有删除子文件夹和文件权限
    如需要进一步修改,可针对用户站点的特性对于普通文件存放目录如html、js、图片文件夹只给读取权限,对asp等脚本文件给予上表中的权限。另外查看该用户站点对应的安全日志,找出漏洞原因,协助用户修补程序漏洞。
    数据备份和数据恢复
    数据备份工作大致如下:
    1. 每月备份一次系统数据。
    2. 备份系统后的两周单独备份一次应用程序数据,主要包括IIS、serv-u、数据库等数据。
    3. 确保备份数据的安全,并分类放置这些数据备份。因基本上采用的都是全备份方法,对于数据的保留周期可以只保留该次备份和上次备份数据两份即可。
    数据恢复工作:
    1.系统崩溃或遇到其他不可恢复系统正常状态情况时,先对上次系统备份后发生的一些更改事件如应用程序、安全策略等的设置做好备份,恢复完系统后再恢复这些更改。
    2.应用程序等出错采用最近一次的备份数据恢复相关内容。
    服务器性能优化
    1 服务器性能优化
    系统性能优化
    整理系统空间:
    删除系统备份文件,删除驱动备份,刪除不用的輸入法,刪除系统的帮助文件,卸载不常用的组件。最小化C盘文件。
    性能优化:
    删除多余的开机自动运行程序;减少预读取,减少进度条等待时间;让系统自动关闭停止响应的程序;禁用错误报告,但在发生严重错误时通知;关闭自动更新,改为手动更新计算机;启用硬件和DirectX加速;禁用关机事件跟踪;禁用配置服务器向导; 减少开机磁盘扫描等待时间;将处理器计划和内存使用都调到应用程序上;调整虚拟内存;内存优化;修改cpu的二级缓存;修改磁盘缓存。
IIS性能优化
    1、调整IIS高速缓存
    HKEY_LOCAL_MACHINE\ System\CurrentControlSet\Services\InetInfoParametersMemoryCacheSize
    MemoryCacheSize的范围是从0道4GB,缺省值为3072000(3MB)。一般来说此值最小应设为服务器内存的10%.IIS通过高速缓存系统句柄、目录列表以及其他常用数据的值来提高系统的性能。这个参数指明了分配给高速缓存的内存大小。如果该值为0,那就意味着“不进行任何高速缓存”。在这种情况下系统的性能可能会降低。如果你的服务器网络通讯繁忙,并且有足够的内存空间,可以考虑增大该值。必须注意的是修改注册表后,需要重新启动才能使新值生效。
    2.不要关闭系统服务: “Protected Storage”
    3.对访问流量进行限制
    A.对站点访问人数进行限制
    B.站点带宽限制。保持HTTP连接。
    C.进程限制, 输入CPU的耗用百分比
    4.提高IIS的处理效率
    应用程序设置“处的”应用程序保护“下拉按钮,从弹出的下拉列表中,选中”低(IIS进程)“选项,IIS服务器处理程序的效率可以提高20%左右。但此设置会带来严重的安全问题,不值得推荐。
    5.将IIS服务器设置为独立的服务器
    A.提高硬件配置来优化IIS性能硬盘:硬盘空间被NT和IIS服务以如下两种方式使用:一种是简单地存储数据;另一种是作为虚拟内存使用。如果使用Ultra2的SCSI硬盘,可以显著提高IIS的性能。
    B.可以把NT服务器的页交换文件分布到多个物理磁盘上,注意是多个“物理磁盘”,分布在多个分区上是无效的。另外,不要将页交换文件放在与WIndows NT引导区相同的分区中。
    C.使用磁盘镜像或磁盘带区集可以提高磁盘的读取性能。
    D.最好把所有的数据都储存在一个单独的分区里。然后定期运行磁盘碎片整理程序以保证在存储Web服务器数据的分区中没有碎片。使用NTFS有助于减少碎片。推荐使用Norton的Speeddisk,可以很快的整理NTFS分区。
    6.起用HTTP压缩
    HTTP压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或CSS文件。可使用pipeboost进行设置。
    7.起用资源回收
    使用IIS5Recycle定时回收进程资源。
    服务器常见故障排除
    1. ASP“请求的资源正在使用中”的解决办法:
    该问题一般与杀毒软件有关,在服务器上安装个人版杀毒软件所致。出现这种错误可以通过卸载杀毒软件解决,也可尝试重新注册vbscript.dll和jscript.dll来解决,在命令行下运行:regsvr32 vbscript.dll 和regsvr32 jscript.dll即可。
    2.ASP500错误解决办法:
    首先确定该问题是否是单一站点存在还是所有站点存在,如果是单一站点存在该问题,则是网站程序的问题,可打开该站点的错误提示,把IE的“显示友好HTTP错误”信息取消,查看具体错误信息,然后对应修改相关程序。如是所有站点存在该问题,并且HTML页面没有出现该问题,相关日志出现“服务器无法加载应用程序‘/LM/W3SVC/1/ROOT’。错误是 ‘不支持此接口’”。那十有八九是服务器系统中的ASP相关组件出现了问题,重新启动IIS服务,尝试是否可以解决该问题,无法解决重新启动系统尝试是否可解决该问题,如无法解决可重新修复一下ASP组件:
    首先删除com组件中的关于IIS的三个东西,需要先将属性里的高级中“禁止删除”的勾选取消。
    命令行中,输入“cd winnt\system32\inetsrv”字符串命令,单击回车键后,再执行“rundll32 wamreg.dll,CreateIISPackage”命令,接着再依次执行“regsvr32 asptxn.dll”命令、“iisreset”命令,最后重新启动一下计算机操作系统,这样IIS服务器就能重新正确响应ASP脚本页面了。
    3. IIS出现105错误:
    在系统日志中“服务器无法注册管理工具发现信息。管理工具可能无法看到此服务器” 来源:w3svc ID:105解决办法:
    在网络连接中重新安装netbios协议即可,安装完成之后取消掉勾选。
    4.MySQL服务无法启动「错误代码1067」的解决方法
    启动MySQL服务时都会在中途报错!内容为:在 本地计算机 无法启动MySQL服务 错误1067:进程意外中止。
解决方法:查找Windows目录下的my.ini文件,编辑内容(如果没有该文件,则新建一个),至少包含
    basedir,datadir这两个基本的配置。
    [mysqld]
    # set basedir to installation path, e.g., c:/mysql
    # 设置为MYSQL的安装目录
    basedir=D:/www/WebServer/MySQL
    # set datadir to location of data directory,
    # e.g., c:/mysql/data or d:/mydata/data
    # 设置为MYSQL的数据目录
    datadir=D:/www/WebServer/MySQL/data
    注意,我在更改系统的temp目录之后没有对更改后的目录给予system用户的权限也出现过该问题。
    5.DllHotst进程消耗cpu 100%的问题
    服务器正常CPU消耗应该在75%以下,而且CPU消耗应该是上下起伏的,出现这种问题的服务器,CPU会突然一直处100%的水平,而且不会下降。
    查看任务管理器,可以发现是DLLHOST.EXE消耗了所有的CPU空闲时间,管理员在这种情况下,只好重新启动IIS服务,奇怪的是,重新启动IIS服务后一切正常,但可能过了一段时间后,问题又再次出现了。
    直接原因:
    有一个或多个ACCESS数据库在多次读写过程中损坏, MDAC系统在写入这个损坏的ACCESS文件时,ASP线程处于BLOCK状态,结果其他线程只能等待,IIS被死锁了,全部的CPU时间都消耗在DLLHOST中。
    解决办法:
    把数据库下载到本地,然后用ACCESS打开,进行修复操作。再上传到网站。如果还不行,只有新建一个ACCESS数据库,再从原来的数据库中导入所有表和记录。然后把新数据库上传到服务器上。
    6.Windows installer出错:
    在安装软件的时候出现“不能访问windows installer 服务。可能你在安全模式下运行 windows ,或者windows installer 没有正确的安装。请和你的支持人员联系以获得帮助” 如果试图重新安装InstMsiW.exe,提示:“指定的服务已存在”。
    解决办法:
    关于installer的错误,可能还有其他错误提示,可尝试以下解决办法:
    首先确认是否是权限方面的问题,提示信息会提供相关信息,如果是权限问题,给予winnt目录everyone权限即可[安装完把权限改回来即可].如果提示的是上述信息,可以尝试以下解决方法:运行“msiexec /unregserver”卸载Windows Installer服务,如果无法卸载可使用SRVINSTW进行卸载,然后下载windows installer的安装程序[地址: http://www.87653.com/instmsiw.rar,用winrar解压该文件,在解压缩出来的文件夹里面找到msi.inf文件,右键单击选择“安装”,重新启动系统后运行“msiexec /regserver”重新注册Windows Installer服务。
    服务器管理
    服务器日常管理安排
    服务器管理工作必须规范严谨,尤其在不是只有一位管理员的时候,日常管理工作包括:
    1.服务器的定时重启。每台服务器保证每周重新启动一次。重新启动之后要进行复查,确认服务器已经启动了,确认服务器上的各项服务均恢复正常。对于没有启动起来或服务未能及时恢复的情况要采取相应措施。前者可请求托管商的相关工作人员帮忙手工重新启动,必要时可要求让连接上显示器确认是否已启动起来;后者需要远程登陆上服务器进行原因查找并根据原因尝试恢复服务。
    2.服务器的安全、性能检查,每服务器至少保证每周登陆两次粗略检查两次。每次检查的结果要求进行登记在册。如需要使用一些工具进行检查,可直接在e:tools中查找到相关工具。对于临时需要从网络上找的工具,首先将IE的安全级别调整到高,然后在网络上进行查找,不要去任何不明站点下载,尽量选择如华军、天空等大型网站进行下载,下载后确保当前杀毒软件已升级到最新版本,升级完毕后对下载的软件进行一次杀毒,确认正常后方能使用。对于下载的新工具对以后维护需要使用的话,将该工具保存到e:tools下,并在该目录中的readme.txt文件中做好相应记录,记录该工具的名称,功能,使用方法。并且在该文件夹中的rar文件夹中保留一份该工具的winrar压缩文件备份,设置解压密码。
    3.服务器的数据备份工作,每服务器至少保证每月备份一次系统数据,系统备份采用ghost方式,对于ghost文件固定存放在e:ghost文件目录下,文件名以备份的日期命名,如0824.gho,每服务器至少保证每两周备份一次应用程序数据,每服务器至少保证每月备份一次用户数据,备份的数据固定存放在e:databak文件夹,针对各种数据再建立对应的子文件夹,如serv-u用户数据放在该文件夹下的servu文件夹下,iis站点数据存放在该文件夹下的iis文件夹下。
    4.服务器的监控工作,每天正常工作期间必须保证监视所有服务器状态,一旦发现服务停止要及时采取相应措施。对于发现服务停止,首先检查该服务器上同类型的服务是否中断,如所有同类型的服务都已中断及时登陆服务器查看相关原因并针对该原因尝试重新开启对应服务。
5.服务器的相关日志操作,每服务器保证每月对相关日志进行一次清理,清理前对应的各项日志如应用程序日志、安全日志、系统日志等都应选择“保存日志”。所有的日志文件统一保存在e:logs下,应用程序日志保存在e:logsapp中,系统程序日志保存在e:logssys中,安全日志保存在e:logssec中。对于另外其他一些应用程序的日志,也按照这个方式进行处理,如ftp的日志保存在e:logsftp中。所有的备份日志文件都以备份的日期命名,如20050824.evt.对于不是单文件形式的日志,在对应的记录位置下建立一个以日期命名的文件夹,将这些文件存放在该文件夹中。
    6.服务器的补丁修补、应用程序更新工作,对于新出的漏洞补丁,应用程序方面的安全更新一定要在发现的第一时间给每服务器打上应用程序的补丁。
    7.服务器的隐患检查工作,主要包括安全隐患、性能等方面。每服务器必须保证每月重点的单独检查一次。每次的检查结果必须做好记录。
    8.不定时的相关工作,每服务器由于应用软件更改或其他某原因需要安装新的应用程序或卸载应用程序等操作必须知会所有管理员。
    9.定期的管理密码更改工作,每服务器保证至少每两个月更改一次密码,对于SQL服务器由于如果SQL采用混合验证更改系统管理员密码会影响数据库的使用则不予修改。
    相关建议:对每服务器设立一个服务器管理记载,管理员每次登陆系统都应该在此中进行详细的记录,共需要记录以下几项:登入时间,退出时间,登入时服务器状态[包含不明进程记录,端口连接状态,系统帐号状态,内存/CPU状态],详细操作情况记录[详细记录下管理员登陆系统后的每一步操作].无论是远程登陆操作还是物理接触操作都要进行记录,然后将这些记录按照各服务器归档,按时间顺序整理好文档。
    对于数据备份、服务器定时重启等操作建议将服务器分组,例如分成四组,每月的周六晚备份一组服务器的数据,每周的某一天定时去重启一组的服务器,这样对于工作的开展比较方便,这些属于固定性的工作。另外有些工作可以同步进行,如每月一次的数据备份、安全检查和管理员密码修改工作,先进行数据备份,然后进行安全检查,再修改密码。对于需要的即时操作如服务器补丁程序的安装、服务器不定时的故障维护等工作,这些属于即时性的工作,但是原则上即时性的工作不能影响固定工作的安排。
   管理员日常注意事项
    在服务器管理过程中,管理员需要注意以下事项:
    1.对自己的每一次操作应做好详细记录,具体见上述建议,以便于后来检查。
    2.努力提高自身水平,加强学习。
 
IP 安全策略对战特洛伊***
  当***悄悄打开某扇 “方便之门”(端口)时,不速之客就会神不知鬼不觉地侵入你的电脑。如果被种下***其实也不必担心,首先我们要切断它们与外界的联系(就是 堵住可疑端口)。
  
  在Win 2000/XP/2003系统中,Microsoft管理控制台(MMC)已将系统的配置功能汇集成配置模块,大大方便我们进行特殊的设置(以Telnet利用的23端口为例,笔者的操作系统为Win XP)。
  
  操作步骤
  
  首先单击“运行”在框中输入“mmc”后回车,会弹出“控制台1”的窗口。我们依次选择“文件→添加/删除管理单元→在独立标签栏中点击‘添加’→IP安全策略管理”,最后按提示完成操作。这时,我们已把“IP安全策略,在本地计算机”(以下简称“IP安全策略”)添加到“控制台根节点”下。
  
  现在双击“IP安全策略”就可以新建一个管理规则了。右击“IP安全策略”,在弹出的快捷菜单中选择“创建IP安全策略”,打开IP安全策略向导,点击“下一步→名称默认为‘新IP安全策略’→下一步→不必选择‘激活默认响应规则’”(注意:在点击“下一步的同时,需要确认此时“编辑属性”被选中),然后选择“完成→在“新IP安全策略属性→添加→不必选择‘使用添加向导’”。
  
  在寻址栏的源地址应选择“任何IP地址”,目标地址选择“我的IP地址”(不必选择镜像)。在协议标签栏中,注意类型应为TCP,并设置IP协议端口从任意端口到此端口23,最后点击“确定”即可。这时在“IP筛选器列表”中会出现一个“新IP筛选器”,选中它,切换到“筛选器操作”标签栏,依次点击“添加→名称默认为‘新筛选器操作’→添加→阻止→完成”。
  
  新策略需要被激活才能起作用,具体方法是:在“新IP安全策略”上点右键,“指派”刚才制定的策略。
  
  效果
  
  现在,当我们从另一台电脑Telnet到设防的这一台时,系统会报告登录失败;用扫描工具扫描这台机子,会发现23端口仍然在提供服务。以同样的方法,大家可以把其它任何可疑的端口都封杀掉,让不速之客们大叫“不妙”去吧!

教你如何IIS信息服务器排错指南
IIS服务器出错的原因是复杂的。象服务启动失败、IIS进程中断或者站点不能启动这些错误都会在系统日志中记录一个错误事件。不论IIS出现何种错误,在确定排错方案之前,都应先使用事件查看器查阅系统日志所记录的相关事件。某些错误显然是由服务器硬件的损坏而造成的,而另一些由于软件原因造成的错误往往不易察觉。本节就一般性的IIS排错提供指导性的介绍。
  
  重新启动IIS
  
  按照微软产品的一般性排错方法和故障解决方案,大多数软件问题可以通过重新启动到方法得以解决。作为IIS5.0的新功能之一,我们可以在不重新启动计算机的情况下重启IIS服务,甚至相当严重的问题都可以采用这种方法解决。重新启动IIS服务可以强迫系统重置IIS进程的内存空间,故由于内存错误引起的问题可以得到解决。重启IIS的方法主要用于下列情况:网站应用程序瘫痪、且不能有效加以控制;网站应用程序工作不正常或者不稳定。[/TD] [/TR][/TABLE] 重新启动IIS服务的过程中,全部当前连接都不能保留,且重启期间服务器上的全部站点都不能工作。如果重启IIS服务不能解决问题,则重启服务器亦不会有效。
  
  当站点应用程序不能正常工作时,按照下述步骤重新启动服务器的IIS服务:
  
  1.在IIS管理控制树中展开IIS节点,选择需要重新启动IIS服务的计算机。
  
  2.单击【操作】菜单,选择【重新启动IIS】。
  
  3.在【停止/启动/重新启动】对话框中的【您向要IIS做什么】下拉列表中选择【重新启动服务器的IIS】 ,单击【确定】。
  
  4.正在关闭】对话框显示重新启动IIS的进度,如果对话框长时间没有反应,单击【现在结束】并重新进行上述操作。
  
  注意:不能使用基于HTML的IIS管理器(远程管理模式)进行上述重启操作。
  
  对于单个站点的稳定性问题,不必重新启动整个IIS进程,只要重启站点即可。IIS排错
  
  备份/还原IIS
  
  如果世界上存在一个万无一失的服务器安全规划方案,那就是备份。曾经有人指出:一个优秀的系统管理员所做的最重要的三项工作就是:备份、备份、备份。
  
  IIS的实现机制包括一个类似注册表的元数据库:MetaBase,有关IIS本身和站点的配置属性全部保存在Windows 2000和元数据库MetaBase中。因此,只要将相关的注册表和元数据库进行备份,即可保存站点相关的全部配置。即使在删除站点甚至重新安装IIS之后,仍然能够利用备份恢复到原来的状态。
  
  备份IIS的步骤如下:
  
  1.在IIS管理器中展开IIS节点,选择向要备份的计算机。
  
  2.单击【操作】菜单,选择【备份/还原配置】。
  3.在【备份/还原配置】对话框中的【备份】列表中列出全部备份文件以及备份时间。单击【创建备份】按钮。
  
  4.在【备份配置】对话框中指定新建备份的名称,单击【确定】。
  
  5.单击【关闭】完成备份。
  
  默认情况下,备份文件将保存在 Winntsystem32inetsrvMetaBack目录中。
  
  恢复备份的方法与此类似,在【备份/还原配置】对话框中的【备份】列表中选择一个备份文件,单击【还原】。然后再如左图所示的提示对话框中单击【确定】,一段时间之后,IIS服务器恢复到进行备份时所处的状态。
  
  如果服务器重装IIS之后需要恢复备份,则在上述恢复操作的基础上,还应进行额外的操作,步骤如下:
  
  1.在命令提示符下,键入cscript.exe X:InetPubAmdinScriptsAdsutil.vbs enumw3svc,此处"X"是安装IIS的驱动器号。从列出的设置中,查找WamUserName和相关的WAMUserPass的值。
  
  2.在控制面板中双击【管理工具】,然后双击【计算机管理】。
  
  3.选择【本地用户管理器】,然后单击【用户】。双击【IWAM_computername】用户帐户。键入从以前步骤找到的WAMUserPass值,并单击【确定】。
  4.在【配置备份名】对话框中,选择创建的备份文件,然后单击【还原】。此时配置将得到完全还原。
  
  IIS排错
  
  TCP/IP排错
  
  TCP/IP协议问题往往是导致IIS不能正常工作的原因。当IIS出现错误但是可以判断IIS服务本身没有问题时,就要考虑是否网络连接出现问题,简单排除网络硬件损坏所造成的问题之后,我们的注意力就应集中在网络协议,主要是TCP/IP协议上。
  
  Windows 2000提供了一系列TCP/IP排错工具,这些主要基于命令提示行的工具提供了诊断网络问题的强大手段。
  
  使用ipconfig工具检查TCP/IP配置
  
  ipconfig是一个查阅和管理客户机TCP/IP配置状态的命令提示行工具。在命令提示行中键入:ipconfig并回车,得到如右图所示的计算机基本TCP/IP配置属性,包括IP地址、子网掩码和缺省网关。
  
  在命令提示行中键入:ipconfig /all并回车,得到详细模式的TCP/IP配置状态,除了基本信息之外,还包括主机名、DNS设置、WINS设置、DHCP设置以及物理地址、节点类型等TCP/IP信息。
  
  如果计算机启用DHCP并使用DHCP服务器获得配置,可以使用ipconfig /renew命令开始刷新租约。也可以使用带/release选项的ipconfig命令立即释放主机的当前DHCP配置。
  
  对于Windows 95和Windows 98客户机,应使用 winipcfg命令而不是ipconfig命令。
  
  使用ping命令测试连接
  
  Ping命令有助于验证IP级的连通性,发现和解决问题时,可以使用Ping向目标主机名或IP地址发送ICMP回应请求。在需要验证主机能否连接到TCP/IP网络和网络资源时使用Ping。
  
  Ping命令实际上是向目标主机发送若干(缺省为4个)数据包,如果本地计算机与目标主机之间能够连通,目标主机将回复一条响应信息,如右上图所示,响应信息包括响应时间和TTL值。成功的Ping同一台主机说明IP数据能够在本地与目标主机之间传送。
  
  如果收到超时信息,如右下图所示,则说明本地主机与目标主机之间的TCP/IP连接不能建立,可能的原因包括网络故障,协议错误以及TCP/IP配置错误等在确认网络连通性的时候,应按照以下顺序进行Ping测试:
  
  1.Ping本地循环地址127.0.0.1,确定本地TCP/IP配置是否正确。
  
  在命令提示行键入Ping 127.0.0.1。
  
  2.Ping本机地址,检验本地IP地址设置是否正确。
  
  3.Ping缺省网关地址,检验能否与本地子网之外的主机进行通信。
  
  4.Ping远程子网上的主机,检验能否通过路由器进行远程通信。
  
  如果以上Ping命令均能够得到响应,说明TCP/IP配置能够支持网络通信。否则,针对相应的网络组件进行设置检查。
  
  使用netstat工具显示连接统计
  
  可以使用netstat命令显示协议统计信息和当前的TCP/IP连接。
  
  netstat -a命令将显示所有连接,而netstat -r显示路由表和活动连接。netstat -e命令将显示 Ethernet 统计信息,而netstat -s显示每个协议的统计信息。
  
  如果使用 netstat -n,则不能将地址和端口号转换成名称。
 
 
Windows安全:如何防止非法绕过防火墙
Windows操作系统的内置防火墙功能越来越强大,特别是Windows XP SP2系统中的防火墙配置起来也很简单,可选规则也很丰富。不过,最近笔者发现了通过注册表中的一个小小键值就可以轻松突破Windows防火墙的阻拦,突破阻拦后就可以让原本被防火墙禁止通行的程序随意访问网络了。
  
  点击“开始→运行”,在对话框中输入regedit,打开注册表编辑器。存在安全问题的键值的位置是在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List中。
  
  我们只要在LIST项中建立新的字符串项即可,在新的字符串项的数值数据处按“容许突破Windows防火墙阻拦的程序:*:enable:程序名”的格式进行填写。
  
  笔者在此以QQ为例,qq.exe程序在D:\QQ\QQ.exe目录下,在填写数值数据时就要像下图所示的一样,新字符串项的值为D:\QQ\QQ.exe:*:Enabled:QQ。
  

  
  小提示:
  
  在数值数据处除了填写程序路径外还有几个参数,在此为大家讲解一下。*代表任意端口,当然如果你希望程序只使用某一个端口,那么你可以将该端口号写在此处。enable表示允许,而Disabled则表示禁止通行。最后的“QQ”则是出现在防火墙允许列表里的名称。
  
  配置完毕后QQ就出现在防火墙设立的容许访问网络的程序列表中,而普通用户并没有在防火墙中进行过任何设置。虽然这个漏洞只有在掌握了本机的操作权时才会发生,不过当***利用其他漏洞或本机没有开启防火墙时***了计算机,拥有了放置程序的权限后可以将***程序放入本地计算机的硬盘中。
  
  然后再按照上面介绍的方法建立一个容许该***程序访问网络的注册表文件并设置为随系统启动而启动,这样即使计算机再重新开启Windows默认防火墙也无法阻止该***程序对网络的访问,因为***程序已经偷偷摸摸通过注册表程序将容许其访问网络的策略与规则添加到了防火墙的容许列表中。
  
  ***通过注册表键值的加载从而饶过了本地防火墙,***就能为所欲为了。
  
  既然知道了这样大的漏洞我们应该如何防范呢?当然平时必要的安全措施是要做足的,例如安装杀毒软件以及第三方防火墙,将自身的远程注册表服务关闭,将自身的IPC$等默认共享关闭。当然我们也可以将HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters
  
  \FirewallPolicy\StandardProfile\AuthorizedApplications\List键值的权限进行设置,只容许管理员对其进行操作,其他用户都禁止修改该处的数值即可。方法是先通过任务栏的开始->运行->输入regedt32启动注册表编辑器,然后定位到上面提到的键值,选择菜单中的“编辑->权限”,然后将除了administrators以外的所有用户对该键值的“完全控制权限”去掉,仅仅保留只读或不设置任何权限即可。如下图,这样一般用户就不能通过上面介绍的方法随意饶过防火墙了。
  

  防范措施:
  
  通过这个小小的漏洞,我们可以得出一个结论,那就是微软的东西被很多人所研究,研究的人越多漏洞被发现的就越来越多,特别是在安全方面,笔者建议大家还是应该使用第三方工具,毕竟有些工具的稳定性和安全性都比系统自带的要强很多。
 
 Windows Server 2003网络服务器安全攻略

  Win2003 Server的安全性较之Win2K确实有了很大的提高,但是用Win2003 Server作为服务器是否就真的安全了?如何才能打造一个安全的个人Web服务器?下面我们简单介绍一下……

  一、Windows Server2003的安装

  1、安装系统最少两需要个分区,分区格式都采用NTFS格式

  2、在断开网络的情况安装好2003系统

  3、安装IIS,仅安装必要的 IIS 组件(禁用不需要的如FTP 和 SMTP 服务)。默认情况下,IIS服务没有安装,在添加/删除Win组件中选择“应用程序服务器”,然后点击“详细信息”,双击Internet信息服务(iis),勾选以下选项:

  Internet 信息服务管理器;

  公用文件;

  后台智能传输服务 (BITS) 服务器扩展;

  万维网服务。

  如果你使用 FrontPage 扩展的 Web 站点再勾选:FrontPage 2002 Server Extensions

  4、安装MSSQL及其它所需要的软件然后进行Update.

  5、使用Microsoft 提供的 MBSA(Microsoft Baseline Security Analyzer) 工具分析计算机的安全配置,并标识缺少的修补程序和更新。下载地址:见页末的链接

  二、设置和管理账户

  1、系统管理员账户最好少建,更改默认的管理员帐户名(Administrator)和描述,密码最好采用数字加大小写字母加数字的上档键组合,长度最好不少于14位。

  2、新建一个名为Administrator的陷阱帐号,为其设置最小的权限,然后随便输入组合的最好不低于20位的密码

  3、将Guest账户禁用并更改名称和描述,然后输入一个复杂的密码,当然现在也有一个DelGuest的工具,也许你也可以利用它来删除Guest账户,但我没有试过。

  4、在运行中输入gpedit.msc回车,打开组策略编辑器,选择计算机配置-Windows设置-安全设置-账户策略-账户锁定策略,将账户设为“三次登陆无效”,“锁定时间为30分钟”,“复位锁定计数设为30分钟”。

  5、在安全设置-本地策略-安全选项中将“不显示上次的用户名”设为启用

  6、在安全设置-本地策略-用户权利分配中将“从网络访问此计算机”中只保留Internet来宾账户、启动IIS进程账户。如果你使用了Asp.net还要保留Aspnet账户。

  7、创建一个User账户,运行系统,如果要运行特权命令使用Runas命令。

  三、网络服务安全管理

  1、禁止C$、D$、ADMIN$一类的缺省共享

  打开注册表,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters,在右边的窗口中新建Dword值,名称设为AutoShareServer值设为0

  2、 解除NetBios与TCP/IP协议的绑定

  右击网上邻居-属性-右击本地连接-属性-双击Internet协议-高级-Wins-禁用TCP/IP上的NETBIOS

  3、关闭不需要的服务,以下为建议选项

  Computer Browser:维护网络计算机更新,禁用

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

  Distributed linktracking client:用于局域网更新连接信息,不需要禁用

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

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

  NTLMSecuritysupportprovide:telnet服务和Microsoft Serch用的,不需要禁用

  PrintSpooler:如果没有打印机可禁用

  Remote Registry:禁止远程修改注册表

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

  四、打开相应的审核策略

  在运行中输入gpedit.msc回车,打开组策略编辑器,选择计算机配置-Windows设置-安全设置-审核策略在创建审核项目时需要注意的是如果审核的项目太多,生成的事件也就越多,那么要想发现严重的事件也越难当然如果审核的太少也会影响你发现严重的事件,你需要根据情况在这二者之间做出选择。

  推荐的要审核的项目是:

  登录事件   成功 失败

  账户登录事件 成功 失败

  系统事件   成功 失败

  策略更改   成功 失败

  对象访问   失败

  目录服务访问 失败

  特权使用   失败

  五、其它安全相关设置

  1、隐藏重要文件/目录

  可以修改注册表实现完全隐藏:“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ Current-Version\Explorer\Advanced\Folder\Hi-dden\SHOWALL”,鼠标右击 “CheckedValue”,选择修改,把数值由1改为0

  2、启动系统自带的Internet连接防火墙,在设置服务选项中勾选Web服务器。

  注:3-6项内容我采用的是Server2000设置,没有测试过对2003是否起作用。但有一点可以肯定我用了一段的时间没有发现其它副面的影响。

  六、配置 IIS 服务:

  1、不使用默认的Web站点,如果使用也要将 将IIS目录与系统磁盘分开。

  2、删除IIS默认创建的Inetpub目录(在安装系统的盘上)。

  3、删除系统盘下的虚拟目录,如:_vti_bin、IISSamples、Scripts、IIShelp、IISAdmin、IIShelp、MSADC.

  4、删除不必要的IIS扩展名映射。

  右键单击“默认Web站点→属性→主目录→配置”,打开应用程序窗口,去掉不必要的应用程序映射。主要为。shtml, .shtm, .stm

  5、更改IIS日志的路径

  右键单击“默认Web站点→属性-网站-在启用日志记录下点击属性

  6、如果使用的是2000可以使用iislockdown来保护IIS,在2003运行的IE6.0的版本不需要。

  7、使用UrlScan

  UrlScan是一个ISAPI筛选器,它对传入的HTTP数据包进行分析并可以拒绝任何可疑的通信量。目前最新的版本是2.5,如果是2000Server需要先安装1.0或2.0的版本。下载地址见页未的链接

  如果没有特殊的要求采用UrlScan默认配置就可以了。

  但如果你在服务器运行ASP.NET程序,并要进行调试你需打开要%WINDIR%\System32\Inetsrv\URLscan

  文件夹中的URLScan.ini 文件,然后在UserAllowVerbs节添加debug谓词,注意此节是区分大小写的。

  如果你的网页是。asp网页你需要在DenyExtensions删除。asp相关的内容。

  如果你的网页使用了非ASCII代码,你需要在Option节中将AllowHighBitCharacters的值设为1

  在对URLScan.ini 文件做了更改后,你需要重启IIS服务才能生效,快速方法运行中输入iisreset

  如果你在配置后出现什么问题,你可以通过添加/删除程序删除UrlScan.

  8、利用WIS (Web Injection Scanner)工具对整个网站进行SQL Injection 脆弱性扫描。

  下载地址:[ http://www.fanvb.net/websample/othersample.aspx爱好者[/url]

  七、配置Sql服务器

  1、System Administrators 角色最好不要超过两个

  2、如果是在本机最好将身份验证配置为Win登陆

  3、不要使用Sa账户,为其配置一个超级复杂的密码

  4、删除以下的扩展存储过程格式为:

  use master

  sp_dropextendedproc '扩展存储过程名'

  xp_cmdshell:是进入操作系统的最佳捷径,删除

  访问注册表的存储过程,删除

  Xp_regaddmultistringXp_regdeletekeyXp_regdeletevalueXp_regenumvalues

  Xp_regread  Xp_regwrite   Xp_regremovemultistring

  OLE自动存储过程,不需要删除

  Sp_OACreate   Sp_OADestroySp_OAGetErrorInfoSp_OAGetProperty

  Sp_OAMethodSp_OASetPropertySp_OAStop

  5、隐藏 SQL Server、更改默认的1433端口

  右击实例选属性-常规-网络配置中选择TCP/IP协议的属性,选择隐藏 SQL Server 实例,并改原默认的1433端口。

  八、如果只做服务器,不进行其它操作,使用IPSec

  1、管理工具—本地安全策略—右击IP安全策略—管理IP筛选器表和筛选器操作—在管理IP筛选器表选项下点击

  添加—名称设为Web筛选器—点击添加—在描述中输入Web服务器—将源地址设为任何IP地址——将目标地址设为我的IP地址——协议类型设为Tcp——IP协议端口第一项设为从任意端口,第二项到此端口80——点击完成——点击确定。

  2、再在管理IP筛选器表选项下点击

  添加—名称设为所有入站筛选器—点击添加—在描述中输入所有入站筛选—将源地址设为任何IP地址——将目标地址设为我的IP地址——协议类型设为任意——点击下一步——完成——点击确定。

  3、在管理筛选器操作选项下点击添加——下一步——名称中输入阻止——下一步——选择阻止——下一步——完成——关闭管理IP筛选器表和筛选器操作窗口

  4、右击IP安全策略——创建IP安全策略——下一步——名称输入数据包筛选器——下一步——取消默认激活响应原则——下一步——完成

  5、在打开的新IP安全策略属性窗口选择添加——下一步——不指定隧道——下一步——所有网络连接——下一步——在IP筛选器列表中选择新建的 Web筛选器——下一步——在筛选器操作中选择许可——下一步——完成——在IP筛选器列表中选择新建的阻止筛选器——下一步——在筛选器操作中选择阻止 ——下一步——完成——确定

  6、在IP安全策略的右边窗口中右击新建的数据包筛选器,点击指派,不需要重启,IPSec就可生效。

  九、建议

  如果你按本文去操作,建议每做一项更改就测试一下服务器,如果有问题可以马上撤消更改。而如果更改的项数多,才发现出问题,那就很难判断问题是出在哪一步上了。

  十、运行服务器记录当前的程序和开放的端口

  1、将当前服务器的进程抓图或记录下来,将其保存,方便以后对照查看是否有不明的程序。

  2、将当前开放的端口抓图或记录下来,保存,方便以后对照查看是否开放了不明的端口。当然如果你能分辨每一个进程,和端口这一步可以省略。
]VB.NET

 

七个维护服务器安全的技巧
  你的计算机上是否存在有至关重要的数据 ,并且不希望它们落入恶人之手呢?当然,它们完全有这种可能。而且,近些年来,服务器遭受的风险也比以前更大了.越来越多的病毒,心怀不轨的***,以及那些商业间谍都将服务器作为了自己的目标.很显然,服务器的安全问题是不容忽视的.
  
  不可能仅仅在一篇文章中就讲述完所有的计算机安全方面的问题.毕竟,关于这个主题已经有无数的图书在讨论了.我下面所要做的就是告诉你七个维护你服务器安全的技巧.
  
  技巧一:从基本做起
  我知道这听起来象是废话,但是当我们谈论网络服务器的安全的时候,我所能给你的最好的建议就是不要做门外汉.当***开始对你的网络发起***的时候,他们首先会检查是否存在一般的安全漏洞,然后才会考虑难度更加高一点的突破安全系统的手段.因此,比方说,当你服务器上的数据都存在于一个FAT的磁盘分区的时候,即使安装上世界上所有的安全软件也不会对你有多大帮助的.
  
  因为这个原因,你需要从基本做起.你需要将服务器上所有包含了敏感数据的磁盘分区都转换成NTFS格式的.同样,你还需要将所有的反病毒软件及时更新.我建议你同时在服务器和桌面终端上运行反病毒软件.这些软件还应该配置成每天自动下载最新的病毒数据库文件.你还更应该知道,可以为Exchange Server安装反病毒软件.这个软件扫描所有流入的电子邮件,寻找被感染了的附件,当它发现一个病毒时,会自动将这个被感染的邮件在到达用户以前隔离起来.
  
  另一个保护网络的好方法是以用户待在公司里的时间为基础限定他们访问网络的时间.一个通常在白天工作的临时员工不应该被允许在临晨三点的时候访问网络,除非那个员工的主管告诉你那是出于一个特殊项目的需要.
  
  最后,记住用户在访问整个网络上的任何东西的时候都需要密码.必须强迫大家使用高强度的由大小写字母,数字和特殊字符组成的密码.在Windows NT Server资源包里有一个很好的用于这个任务的工具.你还应该经常将一些过期密码作废并更新还要要求用户的密码不得少于八个字符.如果你已经做了这所有的工作但还是担心密码的安全,你可以试一试从互联网下载一些***工具然后自己找出这些密码到底有多安全.
  
  技巧二:保护你的备份
  每一个好的网络管理员都知道每天都备份网络服务器并将磁带记录远离现场进行保护以防意外灾害.但是,安全的问题远不止是备份那么简单.大多数人都没有意识到,你的备份实际上就是一个巨大的安全漏洞.
  
  要理解这是为什么,试想一下,大多数的备份工作都是在大约晚上10:00或是11:00的时候开始的.整个备份的过程通常是在半夜的时候结束,这取决于你有多少数据要备份.现在,想象一下,时间已经到了早晨四点,你的备份工作已经结束.但是,没有什么东西能够阻止一些人偷走你磁带记录上的数据并将它们在自己家中或是你竞争对手办公室里的一台服务器上恢复它们.
  
  不过,你可以阻止这种事情的发生.首先,可以通过密码保护你的磁带并且如果你的备份程序支持加密功能,你还可以加密这些数据.其次,你可以将备份程序完成工作的时间定在你早晨上班的时间.这样的话,即使有人前一天半夜想要溜进来偷走磁带的话,他们也会因为磁带正在使用而无法得逞.如果窃贼还是把磁带弹出来带走的话,磁带上的数据也就毫无价值了.
  
  技巧三:对RAS使用回叫功能
  Windows NT最酷的功能之一就是对服务器进行远程访问(RAS)的支持.不幸的是,一个RAS服务器对一个企图进入你的系统的***来说是一扇敞开的大门.***们所需要的一切只是一个电话号码,有时还需要一点耐心,然后就能通过RAS进入一台主机了.但你可以采取一些方法来保证RAS服务器的安全.
  
  你所要使用的技术将在很大程度上取决于你的远程用户如何使用RAS.如果远程用户经常是从家里或是类似的不太变动的地方呼叫主机,我建议你使用回叫功能,它允许远程用户登录以后切断连接.然后RAS服务器拨通一个预先定义的电话号码再次接通用户.因为这个号码是预先设定了的,***也就没有机会设定服务器回叫的号码了.
  
  另一个可选的办法是限定所有的远程用户都访问单一的服务器.你可以将用户通常访问的数据放置在RAS服务器的一个特殊的共享点上.你于是可以将远程用户的访问限制在一台服务器上,而不是整个网络.这样,即使***通过破坏手段来进入主机,那么他们也会被隔离在单一的一台机器上,在这里,他们造成的破坏被减少到了最小.
  
  最后还有一个技巧就是在你的RAS服务器上使用出人意料的协议.我知道的每一个人都使用TCP/IP协议作为RAS协议.考虑到TCP/IP协议本身的性质和典型的用途,这看起来象是一个合理的选择.但是,RAS还支持IPX/SPX和NetBEUI协议.如果你使用NetBEUI作为你RAS的协议,你确实可以迷惑一些不加提防的***.
  
  技巧四:考虑工作站的安全问题
  在一个关于服务器安全的文章里谈论工作站的安全看起来很奇怪.但是,工作站正是通向服务器的一个端口.加强工作站的安全能够提高整个网络的安全性.对于初学者,我建议在所有的工作站上使用Windows 2000.Windows 2000是一个非常安全的操作系统.如果你并不想这样做,那么至少使用Windows NT.你可以锁定工作站,使得一些没有安全访问权的人想要获得网络配置信息变得困难或是不可能.
  
  另一个技术是控制哪个人能够访问哪台工作站.例如,有一个员工叫Bob,并且你已经知道他是一个麻烦制造者.显然,你不想Bob能够在午餐的时候打开他朋友的电脑或是差上他自己的笔记本然后黑掉整个系统.因此,你应该使用工作组用户管理程序还修改Bob的帐号以便他只能从他自己的电脑(并且是在你指定的时间内)登录.Bob远不太可能从他自己的电脑上***网络,因为他知道别人可以将他追查出来.
  
  另一个技术是将工作站的功能限定为一个哑终端,或者,我没有更好的词语来形容,一个"聪明的"哑终端.总的来说,它的意思是没有任何数据和应用程序驻留在独立的工作站上.当你将计算机作为哑终端使用的时候,服务器被配置成运行Windows NT 终端服务程序,而且所有的应用程序物理上都运行在服务器上.所有送到工作站的东西都不过是更新的屏幕显示而已.这意味着工作站上只有一个最小化的Windows版本和一份微软终端服务程序的客户端.使用这种方法也许是最安全的网络设计方案.
  
  使用一个"聪明"的哑终端就是说程序和数据驻留在服务器上但却在工作站上运行.所有安装在工作站上的是一份Windows拷贝以及一些指向驻留在服务器上的应用程序的图标.当你点击一个图标运行程序时,这个程序将使用本地的资源来运行,而不是消耗服务器的资源.这比你运行一个完全的哑终端程序对服务器造成的压力要小得多.
  
  技巧五:使用流行的补丁程序
  微软雇佣了一个程序员团队来检查安全漏洞并修补它们.有时,这些补丁被捆绑进一个大的软件包并作为服务包(service pack)发布.通常有两种不同的补丁程序版本:一个任何人都可以使用的40位的版本和一个只能在美国和加拿大使用的128位的版本.128位的版本使用128位的加密算法,比40位的版本要安全得多.如果你现在还在使用40位的服务包并且生活在美国或是加拿大,我强烈建议你下载128位的版本.
  
  有时一个服务包的发布也许要等上好几个月--很明显的,当一个大的安全漏洞被发现的时候,只要有可能修补它,你就不想再等下去.好在你并不需要等待.微软定期将重要的补丁程序发布在它的FTP站点上.这些热点补丁程序是自上一次服务包发布以后被公布的安全修补程序.我建议你经常查看热点补丁.记住你一定要按逻辑顺序使用这些补丁.如果你以错误的顺序使用它们,结果可能导致一些文件的版本错误,Windows也可能停止工作.
  
  技巧六:使用一个强有力的安全政策
  要提高安全性,另一个你可以做的工作就是制定一个好的,强有力的安全策略.确保每一个人都知道它并知道它是强制执行的.这样的一个政策需要包括对一个在公司机器上下载未授权的软件的员工的严厉惩罚.
  
  如果你使用Windows 2000 Server,你就有可能指定用户特殊的使用权限来使用你的服务器而不需要交出管理员的控制权.一个好的用法就是授权人力资源部来删除和禁用一个帐号.这样,人力资源部就可以在一个行将走人的员工知道自己将被解雇以前就删除或是禁用他的用户帐号.这样,不满的员工就不会有机会来搅乱公司的系统了.同时,使用特殊用户权限,你就可以授予这种删除和禁用帐号权限并限制创建用户或是更改许可等这些活动的权限了.
  
  试一试免费的TechProGuild吧! 如果你觉得这篇文章有用,可以看看TechRepublic的TechProGuild注册资源,它提供有深度的技术文章,覆盖了一些IT的主题,包括Windows服务器和客户端平台,Linux,疑难解答问题,和数字网络项目的难点,以及NetWare.拥有一个TechProGuild的帐户,你还可以在线阅读流行的IT工业书籍的全文.点击这里注册享受30天免费的TechProGuild试用期.
  
  技巧七:反复检查你的防火墙
  我们的最后一个技巧包括仔细检查你防火墙的设置.你的防火墙是网络的一个重要部分因为它将你公司的计算机同互联网上那些可能对它们造成损坏的蛊惑仔们隔离开来.
  
  你首先要做的事情是确保防火墙不会向外界开放超过必要的任何IP地址.你总是至少要让一个IP地址对外界可见.这个IP地址被使用来进行所有的互联网通讯.如果你还有DNS注册的Web服务器或是电子邮件服务器,它们的IP地址也许也要通过防火墙对外界可见.但是,工作站和其他服务器的IP地址必须被隐藏起来.
  
  你还可以查看端口列表验证你已经关闭了所有你并不常用的端口地址.例如,TCP/IP 端口80用于HTTP通讯,因此你可能并不想堵掉这个端口.但是,你也许永远都不会用端口81因此它应该被关掉.你可以在Internet上找到每个端口使用用途的列表.