web服务器的安全配置以windows为例.docx

上传人:b****7 文档编号:16783166 上传时间:2023-07-17 格式:DOCX 页数:34 大小:616.06KB
下载 相关 举报
web服务器的安全配置以windows为例.docx_第1页
第1页 / 共34页
web服务器的安全配置以windows为例.docx_第2页
第2页 / 共34页
web服务器的安全配置以windows为例.docx_第3页
第3页 / 共34页
web服务器的安全配置以windows为例.docx_第4页
第4页 / 共34页
web服务器的安全配置以windows为例.docx_第5页
第5页 / 共34页
web服务器的安全配置以windows为例.docx_第6页
第6页 / 共34页
web服务器的安全配置以windows为例.docx_第7页
第7页 / 共34页
web服务器的安全配置以windows为例.docx_第8页
第8页 / 共34页
web服务器的安全配置以windows为例.docx_第9页
第9页 / 共34页
web服务器的安全配置以windows为例.docx_第10页
第10页 / 共34页
web服务器的安全配置以windows为例.docx_第11页
第11页 / 共34页
web服务器的安全配置以windows为例.docx_第12页
第12页 / 共34页
web服务器的安全配置以windows为例.docx_第13页
第13页 / 共34页
web服务器的安全配置以windows为例.docx_第14页
第14页 / 共34页
web服务器的安全配置以windows为例.docx_第15页
第15页 / 共34页
web服务器的安全配置以windows为例.docx_第16页
第16页 / 共34页
web服务器的安全配置以windows为例.docx_第17页
第17页 / 共34页
web服务器的安全配置以windows为例.docx_第18页
第18页 / 共34页
web服务器的安全配置以windows为例.docx_第19页
第19页 / 共34页
web服务器的安全配置以windows为例.docx_第20页
第20页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

web服务器的安全配置以windows为例.docx

《web服务器的安全配置以windows为例.docx》由会员分享,可在线阅读,更多相关《web服务器的安全配置以windows为例.docx(34页珍藏版)》请在冰点文库上搜索。

web服务器的安全配置以windows为例.docx

web服务器的安全配置以windows为例

6、先关闭不需要的端口开启防火墙导入IPSEC策略

在”网络连接”里,把不需要的协议和服务都删掉,这里只安装了基本的Internet协议(TCP/IP),由于要控制带宽流量服务,额外安装了Qos数据包计划程序。

在高级tcp/ip设置里--"NetBIOS"设置"禁用tcp/IP上的NetBIOS(S)"。

在高级选项里,使用"Internet连接防火墙",这是windows2003自带的防火墙,在2000系统里没有的功能,虽然没什么功能,但可以屏蔽端口,这样已经基本达到了一个IPSec的功能。

然后点击确定—>下一步安装。

(具体见本文附件1)

3、系统补丁的更新

点击开始菜单—>所有程序—>WindowsUpdate

按照提示进行补丁的安装。

4、备份系统

用GHOST备份系统。

5、安装常用的软件

例如:

杀毒软件、解压缩软件等;安装完毕后,配置杀毒软件,扫描系统漏洞,安装之后用GHOST再次备份

修改3389远程连接端口

修改注册表.

开始--运行--regedit

依次展开HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/

TERMINALSERVER/WDS/RDPWD/TDS/TCP

右边键值中PortNumber改为你想用的端口号.注意使用十进制(例10000)

HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/TERMINALSERVER/

WINSTATIONS/RDP-TCP/

右边键值中PortNumber改为你想用的端口号.注意使用十进制(例10000)

注意:

别忘了在WINDOWS2003自带的防火墙给+上10000端口

修改完毕.重新启动服务器.设置生效.

二、用户安全设置

1、禁用Guest账号

在计算机管理的用户里面把Guest账号禁用。

为了保险起见,最好给Guest加一个复杂的密码。

你可以打开记事本,在里面输入一串包含特殊字符、数字、字母的长字符串,然后把它作为Guest用户的密码拷进去。

2、限制不必要的用户

去掉所有的DuplicateUser用户、测试用户、共享用户等等。

用户组策略设置相应权限,并且经常检查系统的用户,删除已经不再使用的用户。

这些用户很多时候都是黑客们入侵系统的突破口。

3、把系统Administrator账号改名

大家都知道,Windows2003的Administrator用户是不能被停用的,这意味着别人可以一遍又一遍地尝试这个用户的密码。

尽量把它伪装成普通用户,比如改成Guesycludx。

4、创建一个陷阱用户

什么是陷阱用户?

即创建一个名为“Administrator”的本地用户,把它的权限设置成最低,什么事也干不了的那种,并且加上一个超过10位的超级复杂密码。

这样可以让那些Hacker们忙上一段时间,借此发现它们的入侵企图。

如下图Administrator已经不是管理员,是陷阱用户。

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

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

6、开启用户策略

开始菜单—>管理工具—>本地安全策略,使用用户策略,分别设置复位用户锁定计数器时间为20分钟,用户锁定时间为20分钟,用户锁定阈值为3次。

(该项为可选)

7、不让系统显示上次登录的用户名

不显示上次登录的用户名

 

一、打开“我的电脑”——“控制面板”,双击打开“管理工具”。

 

 

二、在“管理工具”界面中,双击打开“本地安全策略”。

 

 

三、在弹出的“本地安全设置”对话框中,选择“安全选项”。

 

 

四、在“安全选项”列表中,选择“交互式登录:

不显示上次的用户名”。

 

 

五、单击右键,选择“属性”。

 

 

六、在弹出的“交互式登录:

不显示上次的用户名属性”选项框中,选择“已启用”,单击“确定”按钮,完成设置。

 

密码安全设置

1、使用安全密码

一些公司的管理员创建账号的时候往往用公司名、计算机名做用户名,然后又把这些用户的密码设置得太简单,比如“welcome”等等。

因此,要注意密码的复杂性,还要记住经常改密码。

2、设置屏幕保护密码

这是一个很简单也很有必要的操作。

设置屏幕保护密码也是防止内部人员破坏服务器的一个屏障。

3、开启密码策略

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

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

对于密码,总是使安全管理员进退两难,密码设置简单容易受到黑客的攻击,密码设置复杂又容易忘记。

如果条件允许,用智能卡来代替复杂的密码是一个很好的解决方法。

三、系统权限的设置

 

1、磁盘权限(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定)

系统盘及所有磁盘只给Administrators组和SYSTEM的完全控制权限

系统盘\DocumentsandSettings目录只给Administrators组和SYSTEM的完全控制权限

系统盘\DocumentsandSettings\AllUsers目录只给Administrators组和SYSTEM的完全控制权限

系统盘\Windows\System32\cacls.exe、cmd.exe、net.exe、net1.exe、ftp.exe、

tftp.exe、telnet.exe、netstat.exe、regedit.exe、at.exe、attrib.exe、、

del文件只给Administrators组和SYSTEM的完全控制权限

另将\System32\cmd.exe、、ftp.exe转移到其他目录或更名

DocumentsandSettings下所有些目录都设置只给adinistrators权限。

并且要一个一个目录查看,包括下面的所有子目录。

删除c:

\inetpub目录

系统的NTFS磁盘权限设置,大家可能看得都多了,但是2003服务器有些细节地方需要注意的,我看很多文章都没写完全。

C盘只给administrators和system权限,其他的权限不给,其他的盘也可以这样设置,这里给的system权限也不一定需要给,只是由于某些第三方应用程序是以服务形式启动的,需要加上这个用户,否则造成启动不了。

Windows目录要加上给users的默认权限,否则ASP和ASPX等应用程序就无法运行。

以前有朋友单独设置Instsrv和temp等目录权限,其实没有这个必要的。

另外在c:

/DocumentsandSettings/这里相当重要,后面的目录里的权限根本不会继承从前的设置,如果仅仅只是设置了C盘给administrators权限,而在AllUsers/ApplicationData目录下会出现everyone用户有完全控制权限,这样入侵这可以跳转到这个目录,写入脚本或只文件,再结合其他漏洞来提升权限。

在用做web/ftp服务器的系统里,建议是将这些目录都设置的锁死。

其他每个盘的目录都按照这样设置,没个盘都只给adinistrators权限。

另外,还将:

net.exe,cmd.exe,tftp.exe,netstat.exe,regedit.exe,at.exe,attrib.exe,cacls.exe,这些文件都设置只允许administrators访问。

把不必要的服务都禁止掉,尽管这些不一定能被攻击者利用得上,但是按照安全规则和标准上来说,多余的东西就没必要开启,减少一份隐患。

2、本地安全策略设置

开始菜单—>管理工具—>本地安全策略

A、本地策略——>审核策略

审核策略更改 成功 失败

审核登录事件 成功 失败

审核对象访问失败

审核过程跟踪 无审核

审核目录服务访问失败

审核特权使用失

审核系统事件 成功 失败

审核账户登录事件 成功 失败

审核账户管理 成功 失败

B、本地策略——>用户权限分配

关闭系统:

只有Administrators组、其它全部删除。

通过终端服务允许登陆:

只加入Administrators,RemoteDesktopUsers组,其他全部删除

C、本地策略——>安全选项

交互式登陆:

不显示上次的用户名 启用

网络访问:

不允许SAM帐户和共享的匿名枚举 启用

网络访问:

不允许为网络身份验证储存凭证 启用

网络访问:

可匿名访问的共享 全部删除

网络访问:

可匿名访问的命全部删除

网络访问:

可远程访问的注册表路径全部删除

网络访问:

可远程访问的注册表路径和子路径全部删除

帐户:

重命名来宾帐户重命名一个帐户

帐户:

重命名系统管理员帐户 重命名一个帐户

3、禁用不必要的服务开始-运行-services.msc(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

TCP/IPNetBIOSHelper提供TCP/IP服务上的NetBIOS和网络上客户端的NetBIOS名称解析的支持而使用户能够共享

文件、打印和登录到网络

Server支持此计算机通过网络的文件、打印、和命名管道共享

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

Taskscheduler允许程序在指定时间运行

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

DistributedFileSystem:

局域网管理共享文件,不需要可禁用

Distributedlinktrackingclient:

用于局域网更新连接信息,不需要可禁用

Errorreportingservice:

禁止发送错误报告

MicrosoftSerch:

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

NTLMSecuritysupportprovide:

telnet服务和MicrosoftSerch用的,不需要可禁用

PrintSpooler:

如果没有打印机可禁用

RemoteRegistry:

禁止远程修改注册表

RemoteDesktopHelpSessionManager:

禁止远程协助

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

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

4、修改注册表(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

修改注册表,让系统更强壮

4.1、隐藏重要文件/目录可以修改注册表实现完全隐藏(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Current-Version\Explorer\Advanced\Folder\Hi-dden\SHOWALL”,鼠标右击“CheckedValue”,选择修改,把数值由1改为0

4.2、防止SYN洪水攻击(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建DWORD值,名为SynAttackProtect,值为2

新建EnablePMTUDiscoveryREG_DWORD0

新建NoNameReleaseOnDemandREG_DWORD1

新建EnableDeadGWDetectREG_DWORD0

新建KeepAliveTimeREG_DWORD300,000

新建PerformRouterDiscoveryREG_DWORD0

新建EnableICMPRedirectsREG_DWORD0

 

SYN攻击属于DOS攻击的一种,它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源。

SYN攻击除了能影响主机外,还可以危害路由器、防火墙等网络系统,事实上SYN攻击并不管目标是什么系统,只要这些系统打开TCP服务就可以实施。

从上图可看到,服务器接收到连接请求(syn=j),将此信息加入未连接队列,并发送请求包给客户(syn=k,ack=j+1),此时进入SYN_RECV状态。

当服务器未收到客户端的确认包时,重发请求包,一直到超时,才将此条目从未连接队列删除。

配合IP欺骗,SYN攻击能达到很好的效果,通常,客户端在短时间内伪造大量不存在的IP地址,向服务器不断地发送syn包,服务器回复确认包,并等待客户的确认,由于源地址是不存在的,服务器需要不断的重发直至超时,这些伪造的SYN包将长时间占用未连接队列,正常的SYN请求被丢弃,目标系统运行缓慢,严重者引起网络堵塞甚至系统瘫痪。

为防范SYN攻击,win2000系统的tcp/ip协议栈内嵌了SynAttackProtect机制,Win2003系统也采用此机制。

SynAttackProtect机制是通过关闭某些socket选项,增加额外的连接指示和减少超时时间,使系统能处理更多的SYN连接,以达到防范SYN攻击的目的。

默认情况下,Win2000操作系统并不支持SynAttackProtect保护机制,需要在注册表以下位置增加SynAttackProtect键值:

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

当SynAttackProtect值(如无特别说明,本文提到的注册表键值都为十六进制)为0或不设置时,系统不受SynAttackProtect保护。

当SynAttackProtect值为2时,系统通过减少重传次数和延迟未连接时路由缓冲项(routecacheentry)防范SYN攻击。

修改注册表,防止SYN攻击

一、单击“开始”——“运行”输入“regedit”,单击“确定”按钮,打开注册表。

二、找到注册表位置:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建DWORD值,名为SynAttackProtect。

三、点击右键修改SynAttackProtect键值的属性。

三、在弹出的“编辑DWORD值”对话框数值数据栏中输入“2”

四、单击“确定”,继续在注册表中添加下列键值,防范SYN洪水攻击。

EnablePMTUDiscoveryREG_DWORD0

NoNameReleaseOnDemandREG_DWORD1

EnableDeadGWDetectREG_DWORD0

KeepAliveTimeREG_DWORD300,000

PerformRouterDiscoveryREG_DWORD0

EnableICMPRedirectsREG_DWORD0

4.3.禁止响应ICMP路由通告报文(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

\Interfaces\interface

新建DWORD值,名为PerformRouterDiscovery值为0

4.4.防止ICMP重定向报文的攻击

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

将EnableICMPRedirects值设为0

4.5.不支持IGMP协议(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建DWORD值,名为IGMPLevel值为0

4.6、禁止IPC空连接(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

cracker可以利用netuse命令建立空连接,进而入侵,还有netview,nbtstat这些都是基于空连接的,禁止空连接就好了。

Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous把这个值改成”1”即可。

4.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_MACHINE\SYSTEM\CurrentControlSet\Services\

Tcpip\Parameters:

DefaultTTLREG_DWORD0-0xff(0-255十进制,默认值128)改成一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃入侵你也不一定哦

4.8.删除默认共享(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

有人问过我一开机就共享所有盘,改回来以后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

\LanmanServer\Parameters:

AutoShareServer类型是REG_DWORD把值改为0即可

4.9.禁止建立空连接(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

默认情况下,任何用户通过通过空连接连上服务器,进而枚举出帐号,猜测密码。

我们可以通过修改注册表来禁止建立空连接:

Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous的值改成”1”即可。

4.10.建立一个记事本,填上以下代码。

保存为*.bat并加到启动项目中

netsharec$/del

netshared$/del

netsharee$/del

netsharef$/del

netshareipc$/del

netshareadmin$/del

5、IIS站点设置:

5.1、将IIS目录&数据与系统磁盘分开,保存在专用磁盘空间内。

5.2、启用父级路径

5.3、在IIS管理器中删除必须之外的任何没有用到的映射(保留asp,aspxhtmlhtm等必要映射即可)

5.4、在IIS中将HTTP404ObjectNotFound出错页面通过URL重定向到一个定制HTM文件

5.5、Web站点权限设定(建议)

读允许

写不允

脚本源访问不允许

目录浏览建议关闭

日志访问建议关闭

索引资源建议关闭

执行推荐选择“纯脚本”

5.6、建议使用W3C扩充日志文件格式,每天记录客户IP地址,用户名,服务器端口,方法,URI字根,HTTP状态,用户代理,而且每天均要审查日志。

(最好不要使用缺省的目录,建议更换一个记日志的路径,同时设置日志的访问权限,只允许管理员和system为FullControl)。

5.7、程序安全:

1)涉及用户名与口令的程序最好封装在服务器端,尽量少的在ASP文件里出现,涉及到与数据库连接地用户名与口令应给予最小的权限;

2)需要经过验证的ASP页面,可跟踪上一个页面的文件名,只有从上一页面转进来的会话才能读取这个页面。

3)防止ASP主页.inc文件泄露问题;

4)防止UE等编辑器生成some.asp.bak文件泄露问题。

6、IIS权限设置的思路

·要为每个独立的要保护的个体(比如一个网站或者一个虚拟目录)创建一个系统用户,让这个站点在系统中具有惟一的可以设置权限的身份。

·在IIS的【站点属性或者虚拟目录属性→目录安全性→匿名访问和验证控制→编辑→匿名访问→编辑】填写刚刚创建的那个用户名。

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

7、卸载最不安全的组件(注意:

按实际要求删除,删除后用不了FSO的)

(如下设置,我们已经写一个CMD脚本,按要求复制运行即可以取代如下手工设定,)

最简单的办法是直接卸载后删除相应的程序文件。

将下面的代码保存为一个.BAT文件,(以下均以WIN2000为例,如果使用2003,则系统文件夹应该是C:

\WINDOWS\)

regsvr32/uC:

\WINDOWS\System32\wshom.ocx

delC:

\WINDOWS\System32\wshom.ocx

regsvr32/uC:

\WINDOWS\system32\shell32.dll

delC:

\WINNT\WINDOWS\shell32.dll

然后运行一下,WScript.Shell,Shell.application,WScript.Network就会被卸载了。

可能会提示无法删除文件,不用管它,重启一下服务器,你会发现这三个都提示“×安全”了。

为了方便大家,和减示错误,大部份步骤可以用如下脚本代替,我已经改成脚本cmd,新建一个txt文把,把如下代码,复制到里面后,把扩展名改为.cmd双击运行,运行后,请按提示backup。

代码如下

@echooff

ECHO.

ECHO.

ECHO.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ECHo.

ECHo你现在使用世界网络教研室整理的"一建做安全"脚本

ECHo.

ECHO.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ECHO.

ECHO.

ECHO.-------------------------------------------------------------------------

ECHo请按提示操作备份好注册表,否则修改后无法还原,本人不负责.

ECHO.

ECHOYES=nextsetNO=exit(thistime30Seconddefaultforn)

ECHO.------------------------

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2