架设基于windows2003的安全Asp.net服务器
随着Microsoft Visual Studio 开发环境的普及,基于Asp .Net坏境的网站越来越多。因此Asp .net服务器的安全问题自然而然的成为了人们关心的问题。本文以Windows2003为例,架设一台安全的Asp .Net的服务器。
实验坏境:
操作系统:Microsoft Windows Server 2003 Enterprise Edition Service Pack 2
iis版本:6.0
架设Asp .Net的基本平台:
1. 安装Windows Server 2003:
Windows Server 2003的具体安装方法这么不再讲述,但需要注意三点:
①.一定要在断开网络的前提下安装Windows Server 2003。
②.安装Windows Server 2003系统至少要有两个分区,而且分区的格式均必须为NTFS文件格式(C盘为系统盘,D盘为网站数据盘)。
③.安装好Windows Server 2003后必须及时打上安全补丁。
2. 安装IIS和Asp .Net:
按下面步骤操作,安装IIS和IIS的Asp .Net支持:
①.将Windows2003 sp2原版安装盘放入光驱。
②."开始"->"程序"->"管理工具"->"管理您的服务器"。
③."添加删除角色"->"配置您的服务器向导"->"下一步"->"应用服务器(IIS、ASP.Net)"->勾选"启用 ASP .NET "->"下一步"->"下一步"直到安装完成。
3. 安装Microsoft .Net Framework。
安装Microsoft .Net Framework,版本根据网站开发时基于的.Net版本而定,一般为2.0或者3.0。
设置系统账号
1. 更改默认系统管理员账号:
更改账户名:右击"我的电脑"->"管理"->"本地用户和组"->"用户"->右击"administrator"->"重命名"->重命名为一个新的名字,如"WebSVRAdmin"。
更改密码:右击"WebSVRAdmin"->"设置密码"->"继续"->输入一个复杂的密码,最好为长度大于14个字符的"数字+大小写字母+特殊字符"。
2. 新建一个权限极小的administrator的陷阱账号:
新建账户:右击"我的电脑"->"管理"->"本地用户和组"->右击"用户"->"新用户"->用户名中输
"administrator",密码输入跟WebSVRAdmin同样复杂但不相同的密码->"确定"。
3. 禁用"guest"账号。
4. 设置本地安全策略:
"开始"->"运行"->输入"gpedit.msc"->"计算机配置"->"安全设置"->"本地策略"->"用户权利指派"->双击"从网络访问此计算机"->只保留"internet 来宾账号"、"启动iis进程账号"、"Asp .Net账号"。
磁盘权限设置:
1.右击"C盘"->"属性"->"安全"->删除"administrator"、"Creator Owner"、"EveryOne",添加"WebSVRAdmin",并设置成完全控制->"确定"。
2.用同样的方法设置"c:\windows"、"c:\windows\system32"。
3.右击"d盘"->"属性"->"安全"->删除"administrator"、"Creator Owner"、"EveryOne"、"Users",添加"WebSVR Admin" ,并设置成完全控制->"确定"。
禁用不需要的服务:
1. 禁用C$、D$等默认共享:
在"开始"菜单的"运行"中键入"regedit",打开注册表编辑器。依次展开 "HKEY_LOCAL_MATCHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters" 键,在右边的窗口中新建一个Dword值,名称设置为AutoShareServer,值为0。
2. 解除NetBIOS与TCP/IP的绑定:
右击"本地连接"->"属性"->双击"Internet 协议"->"高级"->"WINS"->禁用"TCP/IP上的NetBIOS"。
3. 关闭不要的服务:
ComputerBrowser: 维护网络计算机更新,禁用;
DistributedFileSystem: 局域网管理共享文件,禁用;
Distributedlinktrackingclient: 用于局域网共享连接信息,禁用;
Errorreportingservice: 禁止发送错误报告,禁用;
MicrosoftSerch: 提供文本搜索,不需要时禁用;
NTLMSecuritysupportovide: Telnet服务和MicrosoftSerch用的,不需要时禁用。
PrintSpooler: 如果没有打印机,则禁用;
RemoteRegistry: 用于远程修改注册表,禁用;
RemoteDesktopHelpSessionManager: 用于远程协助,禁用;
4. 关闭不需要的端口:
右击"本地连接"->"属性"->"Internet协议(TCP/IP)"->"高级"->"选项"->"TCP/IP筛选"->"属性"->选择TCP端口的"只允许"选项,添加"80"端口->确定。
配置IIS
1. 删除默认Web站点。
2. 删除安装IIS创建的"C:\Inetpub"目录。
建立ASP.NET站点:
1. 建立站点用户:
建立两个站点专用用户aiezu与aiezu_wpg,其中aiezu隶属于Guests组,aiezu_wpg隶属于iis_wpg组(asp.net专用用户)。
①.新建aiezu账户:"本地用户和组"->右击"用户"->"新用户"->用户名中输
"aiezu",输入一个复杂的密码->"确定"。
②.设置aiezu所属的组:"本地用户和组"->右击"aiezu"->"属性"->"隶属于"->删除"users"组,添加"guest"组->"确定"。
③.新建aiezu_wpg账户:"本地用户和组"->右击"用户"->"新用户"->用户名中输
"aiezu_wpg",输入一个复杂的密码->"确定"。
④.设置aiezu_wpg所属的组:"本地用户和组"->右击"aiezu"->"属性"->"隶属于"->删除"users"组,添加"iis_wpg"组->"确定"。
2. 建立站点根目录:
①.建立站点根目录文件夹d:\wwwroot\aiezu.com
②.右击"aiezu.com"文件夹->"属性"->"安全"->添加"aiezu"、"aiezu_wpg"用户,并给予"修改、读取和运行、读取、写入"权限->应用。
3. 建立站点应用程序池:
"Internet信息服务(iis)管理器"->右击"应用程序池"->"新建"->"应用程序池"->在"ID"中输入"aiezu.com"->"确定"。
右击"aiezu.com"应用程序集->"属性"->"标识"-选中"配置",输入用户名"aiezu_wpg"和密码->"确定"->"确定"。
4. 建立Web站点:
"Internet信息服务(iis)管理器"->右击"网站"->"新建"->"网站"->"下一步"->描叙中输入"aiezu.com"->"下一步"->输入网站"IP地址"和"端口",主机头为"www.aiezu.com"->"下一步"->选中网站目录"d:\wwwroot\aiezu.com"->"下一步"->勾选"读取、运行脚本 如(asp)"->"下一步"->"完成"。
5. 设置站点账号:
右击"aiezu.com"站点->"属性"->"目录安全性"->"编辑"->输入用户名"aiezu"和密码->"确定"。
6. 配置"aiezu.com"站点的应用程序池:
右击"aiezu.com"站点->"属性"->"主目录"->应用程序池中选"aiezu.com"->"确定"。
7.保存配置:
"Internet信息服务(iis)管理器"->右击"本地计算机"->"所有任务"->"将配置保存到磁盘"。
关健词:Asp.net
新文章:
- CentOS7下图形配置网络的方法
- CentOS 7如何添加删除用户
- 如何解决centos7双系统后丢失windows启动项
- CentOS单网卡如何批量添加不同IP段
- CentOS下iconv命令的介绍
- Centos7 SSH密钥登陆及密码密钥双重验证详解
- CentOS 7.1添加删除用户的方法
- CentOS查找/扫描局域网打印机IP讲解
- CentOS7使用hostapd实现无AP模式的详解
- su命令不能切换root的解决方法
- 解决VMware下CentOS7网络重启出错
- 解决Centos7双系统后丢失windows启动项
- CentOS下如何避免文件覆盖
- CentOS7和CentOS6系统有什么不同呢
- Centos 6.6默认iptable规则详解