你的位置:萧过无痕的栖息地 \ 分类:建站资源 \ 文章正文

【转载】Windows Server 2003系统的VPS主机基本安全配置

萧过无痕 @ 2009年10月6日 23:03:14 周二

Windows Server 2003系统的VPS主机基本安全配置

web硬盘权限设置篇
C:分区部分:
c:/
administrators 全部
iis_wpg 只有该文件夹
列出文件夹/读数据
读属性
读扩展属性
读取权限
c:/inetpub/mailroot
administrators 全部
system 全部
service 全部
c:/inetpub/ftproot
everyone 只读和运行
c:/windows
administrators 全部
Creator owner
不是继承的
只有子文件夹及文件
完全
Power Users
修改,读取和运行,列出文件夹目录,读取,写入
system 全部
Users 读取和运行,列出文件夹目录,读取
c:/Program Files
Everyone
只有该文件夹
不是继承的
列出文件夹/读数据
administrators 全部
iis_wpg 只有该文件夹
列出文件/读数据
读属性
读扩展属性
读取权限
c:/Program Files/Common Files
administrators 全部
Creator owner
不是继承的
只有子文件夹及文件
完全
Power
Users
修改,读取和运行,列出文件夹目录,读取,写入
system 全部
TERMINAL SERVER
Users(如果有这个用户)
修改,读取和运行,列出文件夹目录,读取,写入
Users 读取和运行,列出文件夹目录,读取
如果安装了我们的软件:
c:/Program Files/LIWEIWENSOFT
Everyone
读取和运行,列出文件夹目录,读取
administrators 全部
IIS_WPG 读取和运行,列出文件夹目录,读取
c:/Program Files/Dimac(如果有这个目录)
Everyone 读取和运行,列出文件夹目录,读取
administrators 全部
c:/Program Files/ComPlus Applications (如果有)
administrators 全部
c:/Program Files/GflSDK (如果有)
administrators
全部
Creator owner
不是继承的
只有子文件夹及文件
完全
Power Users
修改,读取和运行,列出文件夹目录,读取,写入
system 全部
TERMINAL SERVER Users
修改,读取和运行,列出文件夹目录,读取,写入
Users 读取和运行,列出文件夹目录,读取
Everyone
读取和运行,列出文件夹目录,读取
c:/Program Files/InstallShield Installation Information
(如果有)
c:/Program Files/Internet Explorer (如果有)
c:/Program
Files/NetMeeting (如果有)
administrators 全部
c:/Program
Files/Windowsupdate
Creator owner
不是继承的
只有子文件夹及文件
完全
administrators 全部
Power Users
修改,读取和运行,列出文件夹目录,读取,写入
system 全部
D:分区部分:
d:/ (如果用户网站内容放置在这个分区中)
administrators 全部权限
d:/FreeHost (如果此目录用来放置用户网站内容)
administrators 全部权限
SERVICE 全部权限
E:分区部分:
从安全角度,我们建议WebEasyMail(WinWebMail)安装在独立的盘中,例如E:
E:/(如果webeasymail安装在这个盘中)
administrators 全部权限
system 全部权限
IUSR_*,默认的Internet来宾帐户(如果这个网站用这个用户来运行)
不是继承的
只有子文件夹
读取权限
E:/WebEasyMail (如果webeasymail安装在这个目录中)
administrators 全部
system 全部权限
SERVICE 全部
IUSR_*,默认的Internet来宾帐户 全部权限(如果这个网站用这个用户来运行)
关于IUSR_*,我不建议用这个用户来运行Webeasymail,应该用平台开一个虚拟主机来运行Webeasymail。

IIS设置篇
1)虚拟主机篇
正确设置磁盘的安全性,具体如下(虚拟机的安全设置,我们以asp程序为例子)重点:
1、系统盘权限设置
C:分区部分:
c:\
administrators 全部(该文件夹,子文件夹及文件)
CREATOR OWNER 全部(只有子文件来及文件)
system 全部(该文件夹,子文件夹及文件)
IIS_WPG 创建文件/写入数据(只有该文件夹)
IIS_WPG(该文件夹,子文件夹及文件)
遍历文件夹/运行文件
列出文件夹/读取数据
读取属性
创建文件夹/附加数据
读取权限
c:\Documents and Settings
administrators
全部(该文件夹,子文件夹及文件)
Power Users (该文件夹,子文件夹及文件)
读取和运行
列出文件夹目录
读取
SYSTEM全部(该文件夹,子文件夹及文件)
C:\Program
Files
administrators 全部(该文件夹,子文件夹及文件)
CREATOR OWNER全部(只有子文件来及文件)
IIS_WPG (该文件夹,子文件夹及文件)
读取和运行
列出文件夹目录
读取
Power Users(该文件夹,子文件夹及文件)
修改权限
SYSTEM全部(该文件夹,子文件夹及文件)
TERMINAL SERVER USER (该文件夹,子文件夹及文件)
修改权限
2、网站及虚拟机权限设置(比如网站在E盘)
说明:我们假设网站全部在E盘wwwsite目录下,并且为每一个虚拟机创建了一个guest用户,用户名为vhost1…vhostn并且创建了一个webuser组,把所有的vhost用户全部加入这个webuser组里面方便管理
E:\
Administrators全部(该文件夹,子文件夹及文件)
E:\wwwsite
Administrators全部(该文件夹,子文件夹及文件)
system全部(该文件夹,子文件夹及文件)
service全部(该文件夹,子文件夹及文件)
E:\wwwsite\vhost1
Administrators全部(该文件夹,子文件夹及文件)
system全部(该文件夹,子文件夹及文件)
vhost1全部(该文件夹,子文件夹及文件)
3、数据备份盘
数据备份盘最好只指定一个特定的用户对它有完全*作的权限
比如F盘为数据备份盘,我们只指定一个管理员对它有完全*作的权限
4、其它地方的权限设置
请找到c盘的这些文件,把安全性设置只有特定的管理员有完全*作权限
下列这些文件只允许administrators访问
net.exe
net1.exet
cmd.exe
tftp.exe
netstat.exe
regedit.exe
at.exe
attrib.exe
cacls.exe
format.com
5.删除c:\inetpub目录,删除iis不必要的映射,建立陷阱帐号,更改描述
第三招:禁用不必要的服务,提高安全性和系统效率
Computer Browser 维护网络上计算机的最新列表以及提供这个列表
Task scheduler 允许程序在指定时间运行
Routing and Remote Access
在局域网以及广域网环境中为企业提供路由服务
Removable storage 管理可移动媒体、驱动程序和库

Remote Registry Service 允许远程注册表*作
Print Spooler
将文件加载到内存中以便以后打印。要用打印机的朋友不能禁用这项
IPSEC Policy Agent
管理IP安全策略以及启动ISAKMP/OakleyIKE)和IP安全驱动程序
Distributed Link Tracking
Client 当文件在网络域的NTFS卷中移动时发送通知
Com+ Event System 提供事件的自动发布到订阅COM组件
Alerter 通知选定的用户和计算机管理警报
Error Reporting Service 收集、存储和向
Microsoft 报告异常应用程序
Messenger 传输客户端和服务器之间的 NET SEND 和 警报器服务消息
Telnet 允许远程用户登录到此计算机并运行程序
第四招:修改注册表,让系统更强壮
1、隐藏重要文件/目录可以修改注册表实现完全隐藏:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\
Current-Version\Explorer\Advanced\Folder\Hi-dden\SHOWALL”,鼠标右击
“CheckedValue”,选择修改,把数值由1改为0

2、启动系统自带的Internet连接_blank”>防火墙,在设置服务选项中勾选Web服务器。
3、防止SYN洪水攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建DWORD值,名为SynAttackProtect,值为2
EnablePMTUDiscovery REG_DWORD 0
NoNameReleaseOnDemand REG_DWORD 1
EnableDeadGWDetect REG_DWORD 0
KeepAliveTime REG_DWORD 300,000
PerformRouterDiscovery REG_DWORD
0
EnableICMPRedirects REG_DWORD 0
4. 禁止响应ICMP路由通告报文

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface
新建DWORD值,名为PerformRouterDiscovery 值为0
5. 防止ICMP重定向报文的攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
将EnableICMPRedirects 值设为0
6. 不支持IGMP协议

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建DWORD值,名为IGMPLevel 值为0
7.修改终端服务端口
运行regedit,找到[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \
Terminal Server \ Wds \ rdpwd \ Tds \
tcp],看到右边的PortNumber了吗?在十进制状态下改成你想要的端口号吧,比如7126之类的,只要不与其它冲突即可。

2、第二处HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server
\ WinStations \ RDP-Tcp,方法同上,记得改的端口号和上面改的一样就行了。
8、禁止IPC空连接:
cracker可以利用net use命令建立空连接,进而入侵,还有net
view,nbtstat这些都是基于空连接的,禁止空连接就好了。打开注册表,找到Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous
把这个值改成”1”即可。
9、更改TTL值
cracker可以根据ping回的TTL值来大致判断你的*作系统,如:
TTL=107(WINNT);
TTL=108(win2000);
TTL=127或128(win9x);
TTL=240或241(linux);
TTL=252(solaris);
TTL=240(Irix);
实际上你可以自己更改的:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:DefaultTTL
REG_DWORD 0-0xff(0-255 十进制,默认值128)改成一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃入侵你也不一定哦
10. 删除默认共享
有人问过我一开机就共享所有盘,改回来以后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,必须通过修改注册表的方式取消它:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer \Parameters:AutoShareServer类型是REG_DWORD把值改为0即可
11. 禁止建立空连接
默认情况下,任何用户通过通过空连接连上服务器,进而枚举出帐号,猜测密码。我们可以通过修改注册表来禁止建立空连接:
Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous
的值改成”1”即可。
第五招:其它安全手段
1.禁用TCP/IP上的NetBIOS
网上邻居-属性-本地连接-属性-Internet协议(TCP/IP)属性-高级-WINS面板-NetBIOS设置-禁用TCP/IP上的NetBIOS。这样cracker就无法用nbtstat命令来读取你的NetBIOS信息和网卡MAC地址了。
2. 账户安全
首先禁止一切账户,除了你自己,呵呵。然后把Administrator改名。我呢就顺手又建了个Administrator账户,不过是什么权限都没有的那种,然后打开记事本,一阵乱敲,复制,粘贴到“密码”里去,呵呵,来破密码吧~!破完了才发现是个低级账户,看你崩溃不?
创建2个管理员用帐号
虽然这点看上去和上面这点有些矛盾,但事实上是服从上面的规则的。
创建一个一般权限帐号用来收信以及处理一些*常事物,另一个拥有Administrators 权限的帐户只在需要的时候使用。可以让管理员使用 “ RunAS”
命令来执行一些需要特权才能作的一些工作,以方便管理
3.更改C:\WINDOWS\Help\iisHelp\common\404b.htm内容改为 这样,出错了自动转到首页
4.
安全日志
我遇到过这样的情况,一台主机被别人入侵了,系统管理员请我去追查凶手,我登录进去一看:安全日志是空的,倒,请记住:Win2000的默认安装是不开任何安全审核的!那么请你到本地安全策略->审核策略中打开相应的审核,推荐的审核是:
账户管理 成功 失败
登录事件 成功 失败
对象访问 失败
策略更改 成功 失败
特权使用 失败
系统事件 成功 失败
目录服务访问 失败
账户登录事件 成功 失败
审核项目少的缺点是万一你想看发现没有记录那就一点都没辙;审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义
5. 运行防毒软件
我见过的Win2000/Nt服务器从来没有见到有安装了防毒软件的,其实这一点非常重要。一些好的杀毒软件不仅能杀掉一些著名的病毒,还能查杀大量木马和后门程序。这样的话,“黑客”们使用的那些有名的木马就毫无用武之地了。不要忘了经常升级病毒库,我们推荐mcafree杀毒软件+blackice_blank”>防火墙
6.sqlserver数据库服务器安全和serv-u ftp服务器安全配置,更改默认端口,和管理密码
7.设置ip筛选、用blackice禁止木马常用端口
一般禁用以下端口
135 138 139 443 445
4000 4899 7626
8.本地安全策略和组策略的设置,如果你在设置本地安全策略时设置错了,可以这样恢复成它的默认值.
打开 %SystemRoot%\Security文件夹,创建一个
“OldSecurity”子目录,将%SystemRoot%\Security下所有的.log文件移到这个新建的子文件夹中.
在%SystemRoot%\Security\database\下找到”Secedit.sdb”安全数据库并将其改名,如改为”Secedit.old”.
启动”安全配置和分析”MMC管理单元:”开始”->”运行”->”MMC”,启动管理控制台,”添加/删除管理单元”,将”安全配置和分析”管理单元添加上.
右击”安全配置和分析”->”打开数据库”,浏览”C:\WINNT\security\Database”文件夹,输入文件名”secedit.sdb”,单击”打开”.
当系统提示输入一个模板时,选择”Setup Security.inf”,单击”打开”.
如果系统提示”拒绝访问数据库”,不管他.
你会发现在”C:\WINNT\security\Database”子文件夹中重新生成了新的安全数据库,
在”C:\WINNT\security”子文件夹下重新生成了log文件.安全数据库重建成功.
9.防止FSO的非法利用
现在绝大多数的虚拟主机都禁用了 ASP 的标准组件:FileSystemObject,因为这个组件为 ASP
提供了强大的文件系统访问能力,可以对服务器硬盘上的任何文件进行读、写、复制、删除、改名等*作(当然,这是指在使用默认设置的Windows NT / 2000
下才能做到)。但是禁止此组件后,引起的后果就是所有利用这个组件的 ASP 将无法运行,无法满足客户的需求。
如何既允许FileSystemObject组件,又不影响服务器的安全性(即:不同虚拟主机用户之间不能使用该组件读写别人的文件)呢?这里介绍本人在实验中获得的一种方法。(下文以
Windows 2000 Server 为例来说明)
在服务器上打开资源管理器,用鼠标右键点击各个硬盘分区或卷的盘符,在弹出菜单中选择“属性”,选择“安全”选项卡,此时就可以看到有哪些帐号可以访问这个分区(卷)及访问权限。默认安装后,出现的是“Everyone”具有完全控制的权限。点“添加”,将“Administrators”、 “Backup
Operators”、“Power
Users”、“Users”等几个组添加进去,并给予“完全控制”或相应的权限,注意,不要给“Guests”组、“IUSR_机器名”这几个帐号任何权限。然后将“Everyone”组从列表中删除,这样,就只有授权的组和用户才能访问此硬盘分区了,而
ASP 执行时,是以“IUSR_机器名”的身份访问硬盘的,这里没给该用户帐号权限,ASP也就不能读写硬盘上的文件了。
下面要做的就是给每个虚拟主机用户设置一个单独的用户帐号,然后再给每个帐号分配一个允许其完全控制的目录。
如下图所示,打开“计算机管理”→“本地用户和组”→“用户”,在右栏中点击鼠标右键,在弹出的菜单中选择“新用户”:
[点击图片可在新窗口打开]
在弹出的“新用户”对话框中根据实际需要输入“用户名”、“全名”、“描述”、“密码”、“确认密码”,并将“用户下次登录时须更改密码”前的对号去掉,选中“用户不能更改密码”和“密码永不过期”。本例是给第一虚拟主机的用户建立一个匿名访问Internet信息服务的内置帐号”IUSR_VHOST1″,即:所有客户端使用



访问此虚拟主机时,都是以这个身份来访问的。输入完成后点“创建”即可。可以根据实际需要,创建多个用户,创建完毕后点“关闭”。
[点击图片可在新窗口打开]
现在新建立的用户已经出现在帐号列表中了,在列表中双击该帐号,以便进一步进行设置:
[点击图片可在新窗口打开]
在弹出的“IUSR_VHOST1”(即刚才创建的新帐号)属性对话框中点“隶属于”选项卡:
[点击图片可在新窗口打开]
刚建立的帐号默认是属于“Users”组,选中该组,点“删除”。
[点击图片可在新窗口打开]
现在出现的是如下图所示,此时再点“添加”:
[点击图片可在新窗口打开]
在弹出的“选择组”对话框中找到“Guests”,点“添加”,此组就会出现在下方的文本框中,然后点“确定”:
[点击图片可在新窗口打开]
出现的就是如下图所示的内容,点“确定”关闭此对话框:
[点击图片可在新窗口打开]
打开“Internet信息服务”,开始对虚拟主机进行设置,本例中的以对“第一虚拟主机”设置为例进行说明,右击该主机名,在弹出的菜单中选择“属性”:
[点击图片可在新窗口打开]

弹出一个“第一虚拟主机属性”的对话框,从对话框中可以看到该虚拟主机用户的使用的是“F:\VHOST1”这个文件夹:
[点击图片可在新窗口打开]

暂时先不管刚才的“第一虚拟主机属性”对话框,切换到“资源管理器”,找到“F:\VHOST1”这个文件夹,右击,选“属性”→“安全”选项卡,此时可以看到该文件夹的默认安全设置是“Everyone”完全控制(视不同情况显示的内容不完全一样),首先将“允许将来自父系的可继承权限传播给该对象”前面的对号去掉:
[点击图片可在新窗口打开]
此时会弹出的“安全”警告,点“删除”此时安全选项卡中的所有组和用户都将被清空(如果没有清空,请使用“删除”将其清空),然后点“添加”按钮。
[点击图片可在新窗口打开]
将如图中所示的“Administrator”及在前面所创建的新帐号“IUSR_VHOST1”添加进来,将给予完全控制的权限,还可以根据实际需要添加其他组或用户,但一定不要将“Guests”组、“IUSR_机器名”这些匿名访问的帐号添加上去。
[点击图片可在新窗口打开]
再切换到前面打开的”第一虚拟主机属性”的对话框,打开”目录安全性”选项卡,点匿名访问和验证控制的”编辑”:
[点击图片可在新窗口打开]
在弹出的”验证方法”对方框(如下图所示),点”编辑”, 弹出了”匿名用户帐号”,默认的就是”IUSR_机器名”,点”浏览”, 在”选择
用户”对话框中找到前面创建的新帐号”IUSR_VHOST1″,双击 , 此时匿名用户名就改过来了,在密码框中输入前面创建时,为该帐号设置的密码:
再确定一遍密码:
[点击图片可在新窗口打开]

OK,完成了,点确定关闭这些对话框。
经此设置后,”第一虚拟主机”的用户,使用 ASP 的 FileSystemObject
组件也只能访问自己的目录:F:\VHOST1 下的内容,当试图访问其他内容时,会出现诸如”没有权限”、”硬盘未准备好”、”500 服务器内部错误”等出错提示了。
另:如果该用户需要读取硬盘的分区容量及硬盘的序列号,那这样的设置将使其无法读取。如果要允许其读取这些和整个分区有关的内容,请右键点击该硬盘的分区(卷),选择”属性”→”安全”,将这个用户的帐号添加到列表中,并至少给予”读取”权限。由于该卷下的子目录都已经设置为”禁止将来自父系的可继承权限传播给该对象”,所以不会影响下面的子目录的权限设置

引用地址:

说说看:(点击申请属于你的个性头像)

(*)

关于站长
网站公告
  • O(∩_∩)O
分类
最近关注
  • 最近关注着的娱乐节目有:
    1.CSI现场犯罪调查(三部);
    2.危机边缘
    3.暗侠
    4.都市侠盗
随便溜达
最新评论
言论
  • ⒈决不能因为一件伤心的失望的事,就从此放弃生活中一切有价值的东西;
    ⒉要像一颗青树,大风将树根吹折,然而巨大的树干,却永远树立;
    ⒊想匆匆忙忙地完成一件事以期达到加快速度的目的,结果总是要失败的;
    ⒋如果你是对的,就要试着温和地,技巧地让对方同意你;如果你错了,就要迅速而热诚地承认。这要比为自己争辩有效和有趣的多;
    ⒌"思考"应当走到众人前面去,"冤枉"不妨留在后面;
    ⒍如果试图改变一些东西,首先应该接受很多东西;
    ⒎以后更新^_^
友情连接
存档