这是因为ADMIN5被黑.而引发出来的一篇针对服务器安全的文章.由静花木木原创.希望对大家有帮助.[eek]
.废话也不说了.直接开始今天的正题.完全打造安全WINDOWS服务器的终极法宝.
我的目标:,加固WEB服务器系统,使之提高并完善其稳定性及安全性。[muteness]
系统环境:Windows Server 2003 Enterprise Edition With Service Pack 1(以下简称W2k3SP1),WEB平台为IIS6,FTP平台为Serv-U FTP Server6.4
系统的安装
这个不需要讲把.[lol]
1、IIS6.0的安装
开始菜单—>控制面板—>添加或删除程序—>添加/删除Windows组件
应用程序 ———ASP.NET(可选)
|——启用网络 COM+ 访问(必选)
|——Internet 信息服务(IIS)———Internet 信息服务管理器(必选)
|——公用文件(必选)
|——万维网服务———Active Server pages(必选)
|——Internet 数据连接器(可选)
|——WebDAV 发布(可选)
|——万维网服务(必选)
|——在服务器端的包含文件(可选)
然后点击确定—>下一步安装。
打开自动更新.安装常用软件.WINRAR.GHOST.我们进入下一步[redface]
2.很多服务器被黑.很大一部分是被因为权限分配问题导致的,下面写出推荐的权限分配:
系统盘及所有磁盘只给 Administrators 组和 SYSTEM 的完全控制权限
系统盘\Documents and Settings 目录只给 Administrators 组和 SYSTEM 的完全控制权限
注意:另外别忘记还有一个隐藏目录也需要同样操作[eek]
系统盘\Documents and Settings\All Users 目录只给 Administrators 组和 SYSTEM 的完全控制权限
系统盘\Inetpub 目录及下面所有目录、文件只给 Administrators 组和 SYSTEM 的完全控制权限(建议删除netpub目录)
系统盘\Windows\System32\cmd.exe、ftp.exe、scrrun.dll、shell.dll.net.exe net1.exe,netstat.exe ,tftp.exe ,regedit.exe ,at.exe ,attrib.exe,cacls.exe ,format.com 文件只给 Administrators 组和 SYSTEM 的完全控制权限(这些都是杀手锏,千万注意)[cool]
注意:如果服务器安装了ASPUPLOAD组件,会默认在系统盘建立 UPLOAD 一定要删除.
3.打开服务器本地计算机策略(gpedit.msc)
开始菜单—>管理工具—>本地安全策略
A、本地策略——>审核策略
审核策略更改成功失败
审核登录事件成功失败
审核对象访问失败
审核过程跟踪无审核
审核目录服务访问失败
审核特权使用失败
审核系统事件成功失败
审核账户登录事件成功失败
审核账户管理成功失败
B、本地策略——>用户权限分配
关闭系统:只有Administrators组、其它全部删除。
通过终端服务拒绝登陆:加入Guests、User组
通过终端服务允许登陆:只加入Administrators组,其他全部删除
C、本地策略——>安全选项
交互式登陆:不显示上次的用户名启用
网络访问:不允许SAM帐户和共享的匿名枚举 启用
网络访问:不允许为网络身份验证储存凭证启用
网络访问:可匿名访问的共享全部删除
网络访问:可匿名访问的命全部删除
网络访问:可远程访问的注册表路径全部删除
网络访问:可远程访问的注册表路径和子路径全部删除
帐户:重命名来宾帐户重命名一个帐户
帐户:重命名系统管理员帐户重命名一个帐户
修改Administrator和Guest这两个账号 一定要改的够复杂./最好@#$@!这样类似的组合.
4.禁用不必要的服务
禁用不必要的服务不但可以降低服务器的资源占用减轻负担,而且可以增强安全性.列出:
开始菜单—>管理工具—>服务
Application Experience Lookup Service
BITS
Computer Browser
DHCP Client
Error Reporting Service
Help and Support
Network Location Awareness
Print Spooler
Remote Registry
Secondary Logon
Smartcard
TCP/IP NetBIOS Helper
Workstation 这个就是"啊江"经常说到的,利用getobject("WINNT")获得了系统用户和系统进程的列表.
Windows Audio
Windows Time
Wireless Configuration
TCP/IP NetBIOS Helper
Server 这个就是默认共享了,如果连这个都不禁用的话,危险很大哦[sad]
5.更改远程桌面端口和禁用IPC连接
1. 打开注册表并转到此项:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
2. 找到“PortNumber”子项,看到值 00000D3D,它是 3389 的十六进制表示形式。使用十六进制数值修改此端口号,并保存新值。
2.禁用IPC连接:打开注册表编辑器,依次展开[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa ]分支,在右侧窗口中找到“restrictanonymous”子键,将其值改为“1”即可
6.关于ASP木马.这里借鉴图王和啊江的解决方法
在IIS系统上,大部分木马都是ASP写的,因此,ASP组件的安全是非常重要的。
ASP木马实际上大部分通过调用Shell.Application、WScript.Shell、WScript.Network、FSO、Adodb.Stream组件来实现其功能,除了FSO之外,其他的大多可以直接禁用。
WScript.Shell组件使用这个命令删除:regsvr32 WSHom.ocx /u
WScript.Network组件使用这个命令删除:regsvr32 wshom.ocx /u
Shell.Application可以使用禁止Guest用户使用shell32.dll来防止调用此组件。使用命令:cacls C:\WINNT\system32\shell32.dll /e /d guests
禁止guests用户执行cmd.exe的命令是: cacls C:\WINNT\system32\Cmd.exe /e /d guests
FSO组件的禁用比较麻烦,如果网站本身不需要用这个组件,那么就通过RegSrv32 scrrun.dll /u命令来禁用吧。
7.WINDOWS的默认防火墙和TCP_IP筛选
1.TCP_IP筛选,打开网络连接.属性——>高级——>选项——>属性
开放的端口是:TCP80、TCP25、TCP20、TCP21、TCP3389、TCP4000~4005。开放4000~4005是为了支持Serv- U的PASV模式(要在Serv-U中设置这段被动端口范围)
这是最简单的做法,但是不是最有效的下面介绍我最常用的,
2.WINDOWS的默认防火墙:
桌面—>网上邻居—>(右键)属性—>本地连接—>(右键)属性—>高级—>(选中)Internet 连接防火墙—>设置
把服务器上面要用到的服务端口选中
一台WEB服务器,要提供WEB(80)、FTP(21)服务及远程桌面管理(3389)
在“FTP 服务器”、“WEB服务器(HTTP)”、“远程桌面”前面打上对号
如果你要提供服务的端口不在里面,你也可以点击“添加”铵钮来添加,具体参数可以参照系统里面原有的参数。
然后点击确定。
注意:千万要选远程桌面管理,否则改完了,上不去服务器别哭[sad]
不要问我为什么推荐使用自带的防火墙.呵呵
关于IIS的配置和网站权限的设置,我没有进一步讲解/.主要原因是,我一直利用虚拟主机管理软件自动开设.笔者接触的大都是IDC商服务器.虚拟主机管理软件,我还是推荐使用易方.需要的也可以找我,是破解版本.当然是免费的.[muteness]
###############################
后记:笔者不是什么高深人物.所以此篇文章目的也是为了更好的学习和总结经验.如果有更好的方案和建议.希望各位朋友能多多与我联系QQ2226211
引自我的博客www.buker.cn