Windows2012R2安装动易.NET系统之二----IIS、目录环境配置篇
一、IIS设置
1、打开IIS,控制面板-管理工具-Internet 信息服务(IIS)管理器,双击打开。
如下图:
2、选中“网站”,右键“添加站点”。
(1)填写您的网站名称;
(2)选择您的程序路径;
(3)选择合适的应用程序池;
(4)填写您网站的域名。
3、把IIS中网站所使用的应用程序池“托管管道模式”选择为经典
三、网站目录权限设置
1、在IIS中右键点击网站名称,选择“编辑权限”
如下图:
在“安全”选项卡下,点击“高级”按钮。
在高级安全设置对话框中,按下图如示,设置禁用权限继承关系,选择“将已继承的权限转换为此对象的显式权限。”,通过禁用权限继承关系后,就能进一步删除不必要的权限。
禁用权限继续关系后,即可删除Windows自带的Authenticated Users、Users、Creator Owner等用户或用户组权限,仅保留System、Administrators权限。
其中Authenticated Users是Windows系纺中所有使用用户名、密码登录并通过身份验证的账户,其在网站目录中的权限可能导致其它账户对网站目录下的文件、文件夹进行非法访问和修改,所以有必要删除网站目录里默认自带的Authenticated Users的权限。
同理,Users是Windows所有账户的默认用户组,其在网站目录中的权限同样可能导致其它账户对网站目录进行非法访问,所以也有必要删除其权限。
千万不要给“Create Owner”用户这个用户分配权限。这个问题相当迷惑人,因为Windows默认是在分区的根目录权限时就自动给这个用户完全控制权限,这是为了让用户对自己创建和所有的文件拥有完全控制权,但我们并不需要让通过WEB程序来创建的可执行文件(比如通过上传功能上传的文件)可以在服务器上执行(这是黑客通过WebShell进一步获得服务器控制权限的关键。
点击“添加”按钮,在“选择主体”界面输入“IIS ApppoolSiteFactory”其中的“SiteFactory”为应用程序池标识账户名称,和程序池名称一样。
设置完账户主体后,点击“显示高级权限”按钮,进入更详尽的权限选择界面
网站根目录授予列出文件夹/读取数据、读取属性、读取扩展属性、读取权限这四项权限,如下图所示:
这里我们分前台服务器和后台服务器,两台服务器的权限上稍有差别。由于前台服务器受攻击可能性更大,所以权限要最小化。在这里我们给应用程序池标识用户分别针对前后台服务器汇总目录权限,具体做如下权限设置:
对于前台服务器:
所有目录授予列出文件夹/读取数据、读取属性、读取扩展属性、读取权限这四项权限,如下图所示:
UploadFiles这个目录授予列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、创建文件夹/附加数据、读取权限这十项权限,如下图所示:
前台服务器网站目录 | 应用程序池标识用户权限 |
网站根目录(/) | 列出文件夹/读取数据、读取属性、读取扩展属性、读取权限 |
Admin(删除) | |
所有其他文件夹、文件 | |
UploadFiles | 列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、创建文件夹/附加数据、读取权限 |
注一:UploadFiles目录为上传文件存放目录,需要创建文件/写入数据、创建文件夹/附加数据等权限(由于会员在前台要上传附件等,需要给应用程序池标识用户一个写入的权限)。
对于后台服务器:所有目录授予遍历文件夹/执行文件、列出文件夹/读取数据、读取属性、读取扩展属性、读取权限这五项权限,如下图所示:
App_Data、IAA、JS、Temp、Template、UploadFiles、这七个目录授予列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、创建文件夹/附加数据、写入属性、写入扩展属性、删除子文件夹及文件、删除、读取权限这十项权限,如下图所示:
Config目录授予列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、写入属性、写入扩展属性、读取权限这七项权限。
后台台服务器网站目录 | 应用程序池标识用户权限 |
网站根目录(/) | 列出文件夹/读取数据、读取属性、读取扩展属性、读取权限 |
Admin | |
所有其他文件夹、文件 | |
App_Data | 列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、创建文件夹/附加数据、写入属性、写入扩展属性、删除子文件夹及文件、删除、读取权限 |
IAA | |
Temp | |
Template | |
UploadFiles | |
Config | 列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、写入属性、写入扩展属性、读取权限 |
注一:App_Data目录为网站程序的索引、系统日志等数据文件存放目录,需要有写入、删除等权限以使得网站的索引、日志等文件能正常更新;UploadFiles目录为上传文件存放目录,需要写入、删除等权限,以使得上传的文件能正常保存和管理;Template目录为网站模板、风格文件存放目录,需要有写入、删除等权限以使得模板、风格等文件能在后台被正常管理;IAA目录为网站广告配置文件存放目录,需要写入权限,以使得后台广告功能能正常修改。Config目录为网站配置文件存放目录,需要写入权限,以使得网站配置信息能正常修改。
注二:若网站已完成制作,相关页面的模板、风格无需经常修改,可进一步去除Template这个目录的写入、删除权限,以保证网站的风格、模板等文件不被意外修改。当需要修改或管理模板或风格文件时,可重新授予这六个目录的写入、删除权限。
在IIS面版中,点选站点后,点击右侧“基本设置”按钮,按下图所示,将站点的路径凭据设置为“应用程序用户(通过身份验证)”
四、删除不必要的处理程序映射
五、在处理程序映射下,删掉网站里没有或者用不到的api映射,保留“本地”类型,“继承”类型里面,保留aspx、ashx、asmx、axd、StaticFile这5项后缀的,其余的项都删除。通过删除不必要的处理程序映射,可以有效防范黑客用AspxSpy这样的木马非法得到WebShell权限,如下图所示: