动易SiteAzure系统前后台分离部署方案0401
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
动易SiteAzure系统前后台分离部署方案
广东动易软件股份有限公司
目录
目录 (2)
1.部署方案概述 (3)
1.1本部署方案概述及安全意义 (3)
1.2软硬件准备 (3)
1.3部署拓扑图 (3)
2. Windows Server 2012通用安全设置 (4)
2.1服务器系统激活及更新补丁 (4)
2.2磁盘权限设置 (5)
2.3网络连接设置 (6)
2.4 TCP/IP协议和端口禁用 (7)
2.5修改远程端口 (8)
2.6关闭不必要的服务 (9)
2.7网络及Windows防火墙设置 (10)
2.8系统帐户及账户安全策略配置 (16)
2.9关闭共享 (23)
3.Web Server安全配置 (24)
3.1 IIS安装 (24)
3.2网站用户配置 (29)
3.3网站前、后服务器web文件夹权限设置 (31)
3.4删除不必要的处理程序映射 (40)
3.5删除不必要的处理程序映射功能权限 (41)
3.6设置日志存储位置 (42)
4.Data Server安全配置 (44)
4.1 SQL Server安装中的安全注意事项 (44)
4.2 SQL Server安装完成后的安全配置 (55)
4.3供Web使用的数据库账户安全配置 (56)
4.4针对前台WEB服务器的数据库增强安全配置 (58)
4.5网络及防火墙配置 (64)
5.前后台服务器网站文件同步设置 (65)
6.相关注意事项 (69)
1.部署方案概述
1.1本部署方案概述及安全意义
网站部署方式是使用3台服务器分别作为网站前台,网站后台及数据库部署服务器。
后台服务器网站文件和管理操作数据同步更新到前台服务器网站中,并单独设置好web服务器上文件相关权限最小化。
此部署目的是在3台服务器上各自配置安全,使网站访问者只能对网站前台有访问等权限。
1.2软硬件准备
WEB服务器1:作为前台访问服务器,安装Windows Server 2012版本操作系统,安装IIS、Microsoft .NET Framework 4.6.2。
WEB服务器2:作为后台管理服务器,安装Windows Server 2012版本操作系统,安装IIS、Microsoft .NET Framework 4.6.2,同步软件(推荐使用:GoodSync)。
SQL服务器:作为数据库服务器,安装Windows Server 2012版本操作系统,安装Microsoft SQL Server 2014或以上版本。
其它:路由器、防火墙、网线、电缆等周边设施。
1.3部署拓扑图
2. Windows Server 2012通用安全设置2.1服务器系统激活及更新补丁
打开控制面版>> 系统>> Windows激活,输入产品密钥,激活操作系统。
打开控制面版>> Windows更新>> 更改设置,选择“自动安装更新”。
打开控制面版>> Windows更新>> 检查更新,稍等片刻,让操作系统完成安装最新的补丁,更新完成后,按提示重启服务器。
2.2磁盘权限设置
所有服务器硬盘分区格式采用NTFS,便于细分权限,详细设置如下:
所有磁盘分区只保留默认的Administrators 和SYSTEM用户组权限,删除其它默认自带的用户权限。
注:网站和数据库不要放置在C盘,以免当需要重装操作系统时,丢失网站或数据库文件。
系统盘设置:为了网站正常运行和日常应用需要特别设定权限的部分:
2.3网络连接设置
网络连接属性中,删除不需要协议和服务,只安装“Internet 协议版本4(TCP/IPv4)”,注:如有其他需要,如文件夹共享等,保留所需服务即可。
2.4 TCP/IP协议和端口禁用
在高级TCP/IP协议属性里--"NetBIOS"设置"禁用TCP/IP上的NetBIOS"。
NetBIOS是网络协议中一个很大的隐患,装好系统后马上将它禁用。
2.5修改远程端口
1、开始--运行--regedit
2、依次展开
HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/TERMINAL SERVER/WDS/RDPWD/TDS/TCP
右边键值中PortNumber 改为你想用的端口号如:8888,注意使用十进制。
如下图:
3、依次展开
HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/CONTROL/TERMINAL SERVER/WINSTATIONS/RDP-TCP/
右边键值中PortNumber 改为你想用的端口号如:8888,注意使用十进制。
如下图:
4、修改完毕,重新启动服务器,设置生效。
5、防火墙中的出入站规则3389端口,修改为新设置的8888。
2.6关闭不必要的服务
禁用不必要的系统服务,提高安全性和系统效率。
运行,输入命令Services.msc(或控制面板—管理工具—服务打开)在服务中对以下服务进行禁用:
PrintSpooler:如果没有打印机可禁用
Remote Registry:禁止远程修改注册表
Remote Desktop Help Session Manager:禁止远程协助
服务管理器如图:
2.7网络及Windows防火墙设置
1、连接网络时,选择网络位置,在这里我们选择公用网络:
具体设置步骤:管理工具—本地安全测试略—网络列表管理器策略—网络;如下图:
注:因为公用网络中本机将不识别其他计算机,公用网络不被计算机所信任,所以相对较为安全,但是如果我们的服务器放在自己的域中或者被信任的集群中,那么就应该选择工作网络并做好相应的设置以便服务器能被更好的连接和管理。
2、防火墙设置
防火墙始终保持开启状态
然后设置防火墙出入站规则:(以设置SQL server的访问为例)在Windows防火墙—高级设置,添加入站规则。
如下图:
输入sql端口1433,下一步:
设置为公用网络,下一步:
命名这条规则名称,完成。
添加完入站规则后,继续修改规则的属性。
在规则属性的“作用域”选项卡下的“远程IP地址”选择“下列IP地址”,点击添加。
选择“此IP地址或子网”,输入Web服务器的内网IP地址,点击确定保存。
注:数据库服务器设置1433端口,且只对Web服务器的IP地址开放;Web 服务器设置80端口;端口变化或需要其他端口也可按照上面的方法操作。
2.8系统帐户及账户安全策略配置
右击我的电脑管理—工具—计算机管理—本地用户和组,进行系统用户管理设置。
1.禁用Guest账户。
2.修改Administrator用户名,改为如“powereasy”,避免针对Administrator账户的猜测攻击。
如上图:
3.设置账户足够复杂的账户密码并牢记。
注:密码需定期修改,建议每月修改2-3次。
远程控制->启用远程控制以及终端服务配置文件->允许登陆到终端服务器。
另外,经常检查管理工具的事件查看器,如果在日志审核中发现某个帐号被连续尝试,则必须立刻更改此帐号和口令。
4.新建一个没有任何权限的Administrator用户并赋予长串密码,用以迷惑试图穷举破解管理员账号密码。
注:除Administrator 外,有必要再增加一个属于管理员组的帐号;再新增一个管理员组的帐号,一方面防止忘记其中一个帐号口令,还能有个备用帐号;同时,如果一旦黑客攻破其一个管理帐号并更改口令,我们还有机会重新在短期内取得控制权做出相应处理。
5.配置本地安全策略,按[WIN]+R组合键打开运行窗口,输入secpol.msc回车打开本地安全策略编辑器,设置登陆时不显示最后登录账号。
帐户锁定策略中将锁定阈值设置为三次无效登陆即锁定,默认锁定时长为30分钟。
6.操作:打开本地安全策略->审核策略中打开相应的审核,依次如图设置:
2.9关闭共享
删除系统默认的共享,修改注册表的方法:
运行Regedit,然后修改注册表在
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters下增加一个键:Name: AutoShareServer ; Type: REG_DWORD ;value: 0 。
重新启动后默认的磁盘分区共享将会去掉,但IPC共享仍存在,需每次重启后手工删除。
着再通过修改注册表,禁止IPC空连接。
黑客通常可以利用net use命令建立空连接入侵服务器,还有net view,nbtstat这些都是基于空连接的,禁止空连接就能较好的杜绝这一类安全隐患发生。
我们打开注册表,找到以下项:
Local_Machine/System/CurrentControlSet/Control/LSA-RestrictAnonymous 把这个值改成“1”即可。
3.Web Server安全配置3.1 IIS安装
添加角色和功能
在角色服务下,除保持默认的勾选项外,还需要勾选上应用程序开发下的“.Net Extensibility 4.5”、“ 4.5”、“ISAPI扩展”、“ISAPI筛选器”。
在IIS安装成成后,打开IIS管理器,删除IIS自带的默认站点“Default Web Site”
3.2网站用户配置
IIS是处理用户请求与网站程序进行交互的枢纽,其安全方面包括程序执行控制、IP和域限制、请求筛选、身份认证、HTTPS加密等,在这其中控制好网站目录的权限是重中之重,下面着重以对外发布网站的目录权限进行演示:
在IIS面版中,点选站点后,点击右侧“基本设置”按钮,按下图所示,将站点的路径凭据设置为“应用程序用户(通过身份验证)”
在IIS中选中站点,双击打开右侧的“身份验证”:
通过上面的操作将网站的匿名用户替换为应用程序池标识账户,降低被破解风险。
3.3网站前、后服务器web文件夹权限设置
在IIS中右键点击网站名称,选择“编辑权限”。
在“安全”选项卡下,点击“高级”按钮。
在高级安全设置对话框中,按下图如示,设置禁用权限继承关系,选择“将已继承的权限转换为此对象的显式权限。
”,通过禁用权限继承关系后,就能进一步删除不必要的权限。
禁用权限继续关系后,即可删除Windows自带的Authenticated Users、Users、Creator Owner等用户或用户组权限,仅保留System、Administrators权限。
其中Authenticated Users是Windows系纺中所有使用用户名、密码登录并通过身份验证的账户,其在网站目录中的权限可能导致其它账户对网站目录下的文件、文件夹进行非法访问和修改,所以有必要删除网站目录里默认自带的Authenticated Users的权限。
同理,Users是Windows所有账户的默认用户组,其在网站目录中的权限同样可能导致其它账户对网站目录进行非法访问,所以也有必要删除其权限。
Creator Owner 帐户为访问控制列表(ACL)中的占位符,帐户将被子目录或文件“所有者”帐户代替,“所有者”可以更改对象的权限,其在网站目录中的权限可能导致目录权限被意外修改,即所谓的“非法提权”中的一种,所以也有必要将其删除。
点击“添加”按钮,在“选择主体”界面输入“IIS Apppool\SiteAzure”其中的“SiteAzure”为应用程序池标识账户名称,和程序池名称一样。
设置完账户主体后,点击“显示高级权限”按钮,进入更详尽的权限选择界面
网站根目录授予列出文件夹/读取数据、读取属性、读取扩展属性、读取权限这四项权限,如下图所示:
这里我们分前台服务器和后台服务器,两台服务器的权限上稍有差别。
由于前台服务器
受攻击可能性更大,所以权限要最小化。
在这里我们给应用程序池标识用户分别针对前后台
服务器汇总目录权限,具体做如下权限设置:
对于前台服务器:
bin目录授予遍历文件夹/执行文件、列出文件夹/读取数据、读取属性、读取扩展属性、读取权限这五项权限,如下图所示:
Upload这个目录授予列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、创建文件夹/附加数据、读取权限这十项权限,如下图所示:
注一:bin目录为网站程序的DLL/EXE等可执行文件的存放及运行目录,需要有执行权限以使得网站正常运行;Upload目录为上传文件存放目录,需要创建文件/写入数据、创建文件夹/附加数据等权限,以使得上传的文件能正常保存和管理;
对于后台服务器:
bin目录授予遍历文件夹/执行文件、列出文件夹/读取数据、读取属性、读取扩展属性、读取权限这五项权限,如下图所示:
Upload、Content、Content.Pad、Content.Phone、View、View.Pad、View.Phone、App_Data 这八个目录授予列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、创建文件夹/附加数据、写入属性、写入扩展属性、删除子文件夹及文件、删除、读取权限这十项权限,如下图所示:
Config目录授予列出文件夹/读取数据、读取属性、读取扩展属性、创建文件/写入数据、写入属性、写入扩展属性、读取权限这七项权限。
权限以使得网站正常运行;App_Data目录为网站程序的索引、系统日志等数据文件存放目录,需要有写入、删除等权限以使得网站的索引、日志等文件能正常更新;Upload目录为上传文件存放目录,需要写入、删除等权限,以使得上传的文件能正常保存和管理;Content、Content.Pad、Content.Phone、View、View.Pad、View.Phone目录为网站模板、风格文件存放目录,需要有写入、删除等权限以使得模板、风格等文件能在后台被正常管理;Config目录为网站配置文件存放目录,需要写入权限,以使得网站配置信息能正常修改。
注二:应用程序池标识用户的权限配置遵守如下原则:写入权限和执行权限不同时授予同一目录,确保能写入的目录不能被执行,能执行的目录不能被写入。
注三:若网站已完成制作,相关页面的模板、风格无需经常修改,可进一步去除Content、Content.Pad、Content.Phone、View、View.Pad、View.Phone这六个目录的写入、删除权限,以保证网站的风格、模板等文件不被意外修改。
当需要修改或管理模板或风格文件时,可重新授予这六个目录的写入、删除权限。
3.4删除不必要的处理程序映射
在处理程序映射下,仅保留ExtensionlessUrlHandler-Integrated-4.0、ExtensionlessUrlHandler-ISAPI-4.0_32bit、ExtensionlessUrlHandler-ISAPI-4.0_64bit、StaticFile 这4项,其余均删除,通过删除不必要的处理程序映射,可以有效防范黑客用AspxSpy这样的木马非法得到WebShell权限,如下图所示:
3.5删除不必要的处理程序映射功能权限
除了网站根目录之外,根目录下的所有目录,均分别取消处理程序映射的脚本和执行权限,仅保留读取权限。
通过去掉脚本权限,能有效防止脚本型木马的非法运行。
因为SiteAzure产品已经自动通过配置文件取消了这些文件夹的脚本执行权限,所以这一步可以节省了。
但如果是其他公司的产品,则2一定要做这一步。
3.6设置日志存储位置
双击IIS下的“日志”,打开功能
在非系统盘下,建立一个存放IIS日志的文件夹,如D:\IIS_Log,在日志功能配置下,选择该文件夹作为日志存放目录,避免日志文件占用系统盘空间。
4.Data Server安全配置
配合Windows Server 2012推荐使用SQL Server 2014,更高版本的SQL server不仅可以提供更多的功能、更加稳定高效、与操作系统兼容性更好另外在操作上与SQL Server2005或2008并没有太大差别,管理人员并不需要更多的学习成本。
4.1 SQL Server安装中的安全注意事项
SQL Server2014的安装步骤如下(与sql2008、2012差别不大)
运行安装文件:
选择全新安装
输入产品密钥,点击下一步:
接受许可条款后下一步:
选择是否更新,如果需要更新打上勾,如果数据库服务器处于内网并不对外可以不检查更新,下一步:
安装程序文件,检查环境:
环境验证通过,下一步:
选择“SQL Server 功能安装”,下一步:
上图的步骤中列出了所有功能,其中必须安装的是两个方框中的“数据库引擎服务”和“管理工具”,另外“Integration Services”是用来配置数据库自动备份的,推荐勾选安装。
上图红框和红圈未涉及的功能对动易站点和维护并不是必须的,如果您有其他需求,可以根据需求勾选相关组件。
如果本服务器上没有安装其他数据库实例,则可以使用选择“默认实例”,如果安装有其他实例,在下方的“已安装实例”中将会列出,实例不要重名即可。
使用默认实例在以后的管理和连接时较为方便,推荐使用默认实例。