VPS(win2003)安全设置教程
一、禁止默认共享。
方法一:
建立一个记事本,填上以下代码。保存为*.bat并加到启动项目中
复制代码 代码如下:
net share c$ /del
net share d$ /del
net share e$ /del
net share f$ /del
net share ipc$ /del
net share admin$ /del
方法二:修改注册表,(注意修改注册表前一定要先备份一下注册表,备份方法。在运行>regedit,选择 文件》导出,取个文件名,导出即可,如果修改注册表失败,可以找到导出的注册表文件双击运行即可。)
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLanmanServerParameters
新建 “DWORD值”值名为 “AutoShareWks” 数据值为“0”
二、远程桌面连接配置。
开始 > 程序 > 管理工具 > 终端服务配置 > 连接
选择右侧”RDP-tcp”连接右击 属性 > 权限 删除(除system外)所有用户组添加单一的允许使用的管理员账户,这样即使服务器被创建了其它的管理员.也无法使用终端服务。
三、serv_u安全设置(注意一定要设置管理密码,否则会被提权) ①打开serv_u,点击“本地服务“,在右边点击”设置/更改密码“,如果没有设置密码,”旧密码“为空,填好新密码点击”确定“。
②另外,建议修改本地管理端口.只需要在ServUDaemon.ini中的[global]里加上一行LocalSetupPortNo=端口号,即可
四、关闭139、445端口
①控制面板-网络-本地链接-属性(这里勾选取消”网络文件和打印机共享”)-tcp/ip协议属性-高级-WINS-Netbios设置-禁用Netbios,即可关闭139端口.
②关闭445端口(注意修改注册表前一定要先备份一下注册表,备份方法。在 运行>regedit,选择文件》导出,取个文件名,导出即可,如果修改注册表失败,可以找到导出的注册表文件双击运行即可。)
HKEY_LOCAL_MACHINESystemCurrentControlSetServicesnetBTParameters
新建 “DWORD值”值名为 “SMBDeviceEnabled” 数据为默认值“0”
五、删除不安全组件
WScript.Shell 、Shell.application 这两个组件一般一些ASP木马或一些恶意程序都会使用到。
方法:在“运行”里面分别输入以下命令
①regsvr32 /u wshom.ocx 卸载WScript.Shell 组件
②regsvr32 /u shell32.dll 卸载Shell.application 组件。
③regsvr32 /u %windir%system32Wshext.dll
如果程序不使用fso对象,建议最好也卸载fso组件,需要的时候再重新注册。
Regsvr32 /u scrrun.dll
六、设置iis权限。
针对每个网站单独建立一个用户。
①首先,右击“我的电脑”》管理》本地计算机和组》用户,在右边。右击“新用户”,建立新用户,并设置好密码。如图:
例如:添加test为某一网站访问用户。
②设置站点文件夹权限
然后,打开internet信息服务管理器。找到相应站点。右击,选择“权限”如图:
选择权限后,如下图:
只保留一个超级管理员(可以自己定义),而不是管理员组。和系统用户(system),还有添加的网站用户。可以点击“添加”将刚才在系统创建的用户添加里面(如test)。然后只给该用户(test)读取和运行、浏览目录、读取的权限。其它权限不用给。另外超级管员也不给写入权限,系统用户(system)去掉“完全控制”权限。设置后点确定。
③设置访问用户。
右击 站点 属性》目录安全性》编辑, 将刚才添加的用户(如test)添加到匿名访问用户。密码和原来密码一致。
设置站点访问权限。
右击要设置的站点。属性》主目录 本地路径下面只选中 读取 记录访问 索引资源
其它都不要选择。执行权限 选择性“纯脚本”.不要选择“脚本和可执行文件”。如图所示:
其它设置和就是iis站点的一般设置,不再多说。
注意:对于 ASP.NET 程序,则需要设置 IIS_WPG 组的帐号权限,上传目录的权限设置:用户的网站上可能会设置一个或几个目录允许上传文件,上传的方式一般是通过 ASP、PHP、ASP.NET 等程序来完成。这时需要注意,一定要将上传目录的执行权限设为“无”,这样即使上传了 ASP、PHP 等脚本程序或者 exe 程序,也不会在用户浏览器里就触发执行
将(纯脚本)改成(无).
七、数据库安全设置 一定要设置数据库密码。
另外。对于sql数据库建议卸载扩展存储过程xp_cmdshell
xp_cmdshell是进入操作系统的最佳捷径,是数据库留给操作系统的一个大后门。请把它去掉。使用这个SQL语句:
use master
sp_dropextendedproc ‘xp_cmdshell’
如果你需要这个存储过程,请用这个语句也可以恢复过来。
sp_addextendedproc ‘xp_cmdshell’, ‘xpsql70.dll’