windows 2003 安全配置

阅读更多

1、查看本机共享:net share

     删除共享:net share c$(d$  admin$ ...) /del

     编辑HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters项  
          对于服务器,添加键值“AutoShareServer”,类型为“REG_DWORD”,值为“0”。    
          对于客户机,添加键值“AutoShareWks”,类型为“REG_DWORD”,值为“0”。  

2、删除ipc$共享连接

     编辑HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa中的restrictanonymous子键,将其值改为1即可禁用IPC的空连接。

 

 

 

系统设置网上有一句话是“最小的权限+最少的服务=最大的安全”。此句基本上是个人都看过,但我好像

没有看到过一篇讲的比较详细稍具全面的文章,下面就以我个人经验作一次教学尝试!

最小的权限如何实现?

NTFS系统权限设置 在使用之前将每个硬盘根加上 Administrators 用户为全部权限(可选加入SYSTEM用户)

删除其它用户,进入系统盘:权限如下

C:\WINDOWS Administrators SYSTEM用户全部权限 Users 用户默认权限不作修改

其它目录删除Everyone用户,切记C:\Documents and Settings下All Users\Default User目录及其子目录

如C:\Documents and Settings\All Users\Application Data 目录默认配置保留了Everyone用户权限

C:\WINDOWS 目录下面的权限也得注意,如 C:\WINDOWS\PCHealth、C:\windows\Installer也是保留了Everyone权限.

删除C:\WINDOWS\Web\printers目录,此目录的存在会造成IIS里加入一个.printers的扩展名,可溢出安全

默认IIS错误页面已基本上没多少人使用了。建议删除C:\WINDOWS\Help\iisHelp目录

删除C:\WINDOWS\system32\inetsrv\iisadmpwd,此目录为管理IIS密码之用,如一些因密码不同步造成500

错误的时候使用 OWA 或 Iisadmpwd 修改同步密码,但在这里可以删掉,下面讲到的设置将会杜绝因系统

设置造成的密码不同步问题。

打开C:\Windows 搜索

net.exe;cmd.exe;tftp.exe;netstat.exe;regedit.exe;at.exe;attrib.exe;cacls.exe;format.com;

regsvr32.exe;xcopy.exe;wscript.exe;cscript.exe;ftp.exe;telnet.exe;arp.exe;edlin.exe;

ping.exe;route.exe;finger.exe;posix.exe;rsh.exe;atsvc.exe;qbasic.exe;runonce.exe;syskey.exe

修改权限,删除所有的用户只保存Administrators 和SYSTEM为所有权限

关闭445端口

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\netBT\Parameters

新建 “DWORD值”值名为 “SMBDeviceEnabled” 数据为默认值“0”

禁止建立空连接

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

新建 “DWORD值”值名为 “RestrictAnonymous” 数据值为“1” [2003默认为1]

禁止系统自动启动服务器共享

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

新建 “DWORD值”值名为 “AutoShareServer” 数据值为“0”

禁止系统自动启动管理共享

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

新建 “DWORD值”值名为 “AutoShareWks” 数据值为“0”

通过修改注册表防止小规模DDOS安全

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建 “DWORD值”值名为 “SynAttackProtect” 数据值为“1”

禁止dump file的产生

dump文件在系统崩溃和蓝屏的时候是一份很有用的查找问题的资料。然而,它也能够给安全提供一些敏感

信息比如一些应用程序的密码等。控制面板>系统属性>高级>启动和故障恢复把 写入调试信息 改成无。

关闭华医生Dr.Watson

在开始-运行中输入“drwtsn32”,或者开始-程序-附件-系统工具-系统信息-工具-Dr Watson,调出系统

里的华医生Dr.Watson ,只保留“转储全部线程上下文”选项,否则一旦程序出错,硬盘会读很久,并占

用大量空间。如果以前有此情况,请查找user.dmp文件,删除后可节省几十MB空间。

本地安全策略配置

开始 > 程序 > 管理工具 > 本地安全策略

账户策略 > 密码策略 > 密码最短使用期限 改成0天[即密码不过期,上面我讲到不会造成IIS密码不同步]

账户策略 > 账户锁定策略 > 账户锁定阈值 5 次 账户锁定时间 10分钟 [个人推荐配置]

本地策略 > 审核策略 >

账户管理 成功 失败

登录事件 成功 失败

对象访问 失败

策略更改 成功 失败

特权使用 失败

系统事件 成功 失败

目录服务访问 失败

账户登录事件 成功 失败

本地策略 > 安全选项 > 清除虚拟内存页面文件 更改为"已启用"

         > 不显示上次的用户名 更改为"已启用"

         > 不需要按CTRL+ALT+DEL 更改为"已启用"

         > 不允许 SAM 账户的匿名枚举 更改为"已启用"

         > 不允许 SAM 账户和共享的匿名枚举 更改为"已启用"

         > 重命名来宾账户 更改成一个复杂的账户名

         > 重命名系统管理员账号 更改一个自己用的账号 [同时可建立一个无用户组的Administrat账户]

组策略编辑器

运行 gpedit.msc 计算机配置 > 管理模板 > 系统 显示“关闭事件跟踪程序” 更改为已禁用

删除不安全组件

WScript.Shell 、Shell.application 这两个组件一般一些ASP安全或一些恶意程序都会使用到。

方案一:

regsvr32 /u wshom.ocx 卸载WScript.Shell 组件

regsvr32 /u shell32.dll 卸载Shell.application 组件

如果按照上面讲到的设置,可不必删除这两个文件

方案二:

删除注册表 HKEY_CLASSES_ROOT\CLSID\{72C24DD5-D70A-438B-8A42-98424B88AFB8} 对应 WScript.Shell

删除注册表 HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540000} 对应 Shell.application

用户管理

建立另一个备用管理员账号,防止特殊情况发生。

安装有终端服务与SQL服务的服务器停用TsInternetUser, SQLDebugger这两个账号

用户组说明

在将来要使用到的IIS中,IIS用户一般使用Guests组,也可以再重新建立一个独立的专供IIS使用的组,但

要将这个组赋予C:\Windows 目录为读取权限[单一读取] 个人不建议使用单独目录,太小家子气。

 

 

最少的服务如果实现

黑色为自动 绿色为手动 红色为禁用

Alerter

Application Experience Lookup Service

Application Layer Gateway Service

Application Management

Automatic Updates [Windows自动更新,可选项]

Background Intelligent Transfer Service

ClipBook

COM+ Event System

COM+ System Application

Computer Browser

Cryptographic Services

DCOM Server Process Launcher

DHCP Client

Distributed File System

Distributed Link Tracking Client

Distributed Link Tracking Server

Distributed Transaction Coordinator

DNS Client

Error Reporting Service

Event Log

File Replication

Help and Support

HTTP SSL

Human Interface Device Access

IIS Admin Service

IMAPI CD-Burning COM Service

Indexing Service

Intersite Messaging

IPSEC Services [如果使用了IP安全策略则自动,如无则禁用,可选操作]

Kerberos Key Distribution Center

License Logging

Logical Disk Manager [可选,多硬盘建议自动]

Logical Disk Manager Administrative Service

Messenger

Microsoft Search

Microsoft Software Shadow Copy Provider

MSSQLSERVER

MSSQLServerADHelper

Net Logon

NetMeeting Remote Desktop Sharing

Network Connections

Network DDE

Network DDE DSDM

Network Location Awareness (NLA)

Network Provisioning Service

NT LM Security Support Provider

Performance Logs and Alerts

Plug and Play

Portable Media Serial Number Service [微软反盗版工具,目前只针对多媒体类]

Print Spooler

Protected Storage

Remote Access Auto Connection Manager

Remote Access Connection Manager

Remote Desktop Help Session Manager

Remote Procedure Call (RPC)

Remote Procedure Call (RPC) Locator

Remote Registry

Removable Storage

Resultant Set of Policy Provider

Routing and Remote Access

Secondary Logon

Security Accounts Manager

Server

Shell Hardware Detection

Smart Card

Special Administration Console Helper

SQLSERVERAGENT

System Event Notification

Task Scheduler

TCP/IP NetBIOS Helper

Telephony

Telnet

Terminal Services

Terminal Services Session Directory

Themes

Uninterruptible Power Supply

Upload Manager

Virtual Disk Service

Volume Shadow Copy

WebClient

Windows Audio [服务器没必要使用声音]

Windows Firewall/Internet Connection Sharing (ICS)

Windows Image Acquisition (WIA)

Windows Installer

Windows Management Instrumentation

Windows Management Instrumentation Driver Extensions

Windows Time

Windows User Mode Driver Framework

WinHTTP Web Proxy Auto-Discovery Service

Wireless Configuration

WMI Performance Adapter

Workstation

World Wide Web Publishing Service

 

以上操作完成以后是否就“最小的权限+最少的服务=最大的安全”呢?其实不然,任何事物都是相对的

 

=========================================

IIS配置

IIS6与IIS5有着很多不同之处,不一一列举,也不是我一个脑袋可以装下的东西。都在资料上!

IIS6有一个非常不方便的东西,就是他限制了在线上传不得大于200K,如何修改,请看:

首先停用IIS服务,> 服务 > iis admin service > 停用

C:\windows\system32\inetsrv\ metabase.xml 文件 用记事本打开它

找到 ASPMaxRequestEntityAllowed 处。默认为 204800 即 204800字节(200K)

修改为想要的数字如: 2048000 [2M] 保存,重启IIS服务即可!

设置基本参数

打开IIS管理器 > 网站 > 属性 >

网站 > 启动日志记录 > 关闭

    主目录 > 配置 > 应用程序扩展 > 只保留 asp,asa

    主目录 > 配置 > 选项 > 启用父目录

    主目录 > 配置 > 调试 > 向客户端发送文本错误消息

网站 > 自定义错误 > 全部改成默认值 [上一章已经删除IIS使用的错误信息页面]

IIS管理器 > WEB服务扩展 > 启用 Active Server Pages

注:停用IIS默认站点,切勿删除,有可能会造成IIS的不稳定。

站点的建立将在第四节中详细介绍。

IIS支持PHP的配置

http://www.php.net/downloads.php 以 PHP 5.1.1 为例

下载php-5.1.1-Win32.zip 解压到 D:\php 或任意目录 赋予该目录IIS用户组读取权限

将ext目录中的所有文件复制到 C:\Windows\System32目录下面

以记事本打开php.ini-dist文件

查找 extension_dir = "./" 更改为 extension_dir = "D:\php\ext"

查找 ; Windows Extensions 更改下面的参数

如要开通GD库支持 则将;extension=php_gd2.dll 前面的冒号删除

依此类推,更多设置参考PHP.INI中文版。完成设置好另存在C:\Windows\php.ini

尔后在IIS设置中 IIS管理器 > 网站 > 属性 > 主目录 > 配置 > 映射

添加 D:\php\php5isapi.dll 扩展名.php

其次在WEB服务扩展中 添加一个新的扩展名 PHP 执行位置 D:\php\php5isapi.dll 设为允许即可

由于WIN平台对MYSQL与PHP的组合无法体现性能优势。个人建议WIN平台PHP程序要使用数据库建议远程

或搭配文本数据库。

终端服务配置

开始 > 程序 > 管理工具 > 终端服务配置 > 连接

选择右侧列出的连接 属性 > 权限 删除所有用户组 添加单一的允许使用的管理员账户,这样即使服务器

被创建了其它的管理员.也无法使用终端服务。

另外在会话设置中可以进一步设置断开、注销等一些参数。

FTP的配置

目前大多数服务器使用Serv-U Server 为FTP SYSTEM。这里同时建议使用此软件

Serv-U FTP Server 6.1.0.5 final [最新版]为例,这里建议使用汉化版本.www.hanzify.org

安装原版至D:\Serv-U_3434999fdaf [复杂无规则的目录名可有效防止安全的猜解]

尔后退出Serv-U,安装汉化包。

运行SERV-U管理器 IP地址可为空、安装为系统服务 设置密码防止溢出

PASV设置

Serv-U管理器 > <<本地服务器>> > 设置 > 高级

PASV端口范围 这里SERV-U只允许 50个端口范围 端口的设置范围 如 1025 - 1075 [1024以前的端口为系统使用]

更多个人化设置参考以下文档

SERV-U 技巧
现在很多的朋友都用SERV-U做个人FTP的服务器,有关如何使用SERV-U架设服务器的文章很多了,这儿我就不多说了。不过大家不知道注意到了没有,当你登陆很多FTP的时候,会显示一些欢迎信息,比如说显示你的IP,告诉你目前有多少人在使用FTP,带宽是多少等等。。。看起来就比较的专业样子。其实你自己也是可以做的,SERV-U这个软件本身就有这个功能。下面我就说明以下如何在自己的FTP里面加上这些信息。

第一、先建立一个文本文件,随便取一个名字。我们这儿就取message.txt吧。

第二、这个这个文本文件里面加上这些文字

------------------------------------
欢迎来到XXX的FTP服务器
你的IP地址是:%IP
目前服务器所在的时间是 %time
已经有 %u24h 个用户在最近24小时访问过本FTP
本FTP服务器已经运行了 %ServerDays 天,%ServerHours 小时 和 %ServerMins 分。

服务器的运行情况:

所有登陆用户数量: %loggedInAll total
当前登陆用户数量: %Unow
已经下载字节数: %ServerKbDown Kb
已经上传字节数: %ServerKbUp Kb
已经下载文件数: %ServerFilesDown
已经上传文件数: %ServerFilesUp
服务器平均带宽: %ServerAvg Kb/sec
服务器当前带宽: %ServerKBps Kb/sec
------------------------------------

其中XXX可以改成你的名字

你也可以加上一些你自己认为喜欢的文字,不过要注意的是每行最好不要超过80个字符

其中以%开头的都是一些变量,下面是SERV-U能支持的变量

时间和*期

%Time - 显示你的计算机当前时间
%Date - 显示你的计算机当前*期

服务器的统计信息

%ServerDays - 显示服务器已经运行的天数
%ServerHours - 显示服务器已经运行的小时数
%ServerMins - 显示服务器已经运行的分钟数
%ServerSecs - 显示服务器已经运行的秒数
%ServerKbUp - 显示自从服务器运行以来已经上传的字节数
%ServerKbDown - 显示自从服务器运行以来已经下载的字节数
%ServerFilesUp - 显示自从服务器运行以来已经上传的文件数
%ServerFilesDown - 显示自从服务器运行以来已经下载的文件数
%LoggedInAll - 显示自从服务器运行以来已经登陆的用户数
%ServerAvg - 显示服务器的平均带宽
%ServerKBps - 显示服务器的当前带宽

服务器的设定信息

%MaxUsers - 显示服务器能同时登陆的最大用户数量
%MaxAnonymous - 显示服务器能同时登陆的最大匿名用户数量

用户信息

%Name - 显示登陆的用户名
%IP - 显示登陆的用户IP地址
%Dir - 显示登陆的用户的当前目录
%Disk - 显示登陆的用户的当前磁盘
%DFree - 显示登陆的用户的当前磁盘空间,单位是MB
%FUp - 显示登陆的用户上传的文件数量
%FDown - 显示登陆的用户下载的文件数量
%FTot - 显示登陆的用户上传和下载的总的文件数量
%BUp - 显示登陆的用户上传的字节数,单位是KB
%Bdown - 显示登陆的用户下载的字节数,单位是KB
%BTot - 显示登陆的用户上传和下载的总字节数,单位是KB
%TconM - 显示登陆用户连接时间,单位是分钟
%TconS - 显示登陆用户连接时间,单位是秒,要和%TconM一起使用
%RatioUp - 显示登陆用户的上传流量限制
%RatioDown - 显示登陆用户的下载流量限制
%RatioCredit - 显示登陆用户还有多少credit可以上传和下载,这个是针对有些FTP是要上传多少文件,才能下载多少文件而设置的
%QuotaUsed - 显示登陆用户的已经使用了多少空间,单位是KB
%QuotaLeft - 显示登陆用户的还有多少空间可以使用,单位是KB
%QuotaMax - 显示登陆用户的的最大空间,单位是KB
后面3个是针对有磁盘限制的用户设置的

用户数量

%UNow - 显示当前有多少用户连接
%UAll - 显示从服务器运行以来一共有多少用户连接过
%U24h - 显示最近24小时有多少用户
%UAnonAll - 显示当前总的匿名用户数量
%UAnonThisIP - 显示所有匿名登陆的用户数
%UNonAnonAll - 显示所有当前非匿名登陆用户数
%UNonAnonThisIP - 显示所有非匿名登陆用户数
%UThisName - 显示所有使用这个名字登陆的用户数

自己在先建立一个.txt文件,输入你想要显示的文字,具体参数看上面的内容,然后在Serv_u内的server设置里面,加入这个.txt文件就可以了!

下面我已经做了几个!喜欢就把名字等改改OK了!呵呵

------------------------------------
欢迎来到***A 网***的FTP服务器

你的IP地址是:%IP
目前服务器所在的时间是 %time
已经有 %u24h 个用户在最近24小时访问过本FTP
本FTP服务器已经运行了 %ServerDays 天,%ServerHours 小时 和 %ServerMins 分。

服务器的运行情况:

所有登陆用户数量: %loggedInAll total
当前登陆用户数量: %Unow
已经下载字节数: %ServerKbDown Kb
已经上传字节数: %ServerKbUp Kb
已经下载文件数: %ServerFilesDown
已经上传文件数: %ServerFilesUp
服务器平均带宽: %ServerAvg Kb/sec
服务器当前带宽: %ServerKBps Kb/sec
------------------------------------
你的信息

用户名: %Name
IP地址: %IP
当前目录: %Dir
当前磁盘: %Disk
磁盘空间:%DFree
连接时间: %TconM 分 和 %TconS 秒
上传流量限制: %RatioUp
下载流量限制: %RatioDown
------------------------------------

★★★★★★★★★★★★★★★★★★★★★★★★★
来自%IP的朋友您好,欢迎来到+a网+的个人FTP服务器
本地时间是%Date %Time
服务器已连续工作:%ServerDays天%ServerHours小时%ServerMins分%ServerSecs秒
本站开通以来已接通%UAll位使用者。
过去24小时总共有%U24h次连接。
匿名用户上限为%MaxAnonymous人。每个ip只能开两个进程
目前有%UNow位使用者在线。
其中匿名用户有%UAnonAll人在线。
★★★★★★★★★★★★★★★★★★★★★★★★★
自本站开通以来共上传/下载 |%ServerKbUpKB/%ServerKbDownKB
自本站开通以来共上传/下载 |%ServerFilesUp个/%ServerFilesDown个
服务器当前流量|%ServerKBps Kb/sec
服务器平均流量|%ServerAvg Kb/sec
★★★★★★★★★★★★★★★★★★★★★★★★★
你目前的空间容量为 |%QuotaMax/KB
你目前总共使用了 |%QuotaUsed/KB
你目前的空间剩余 |%QuotaLeft/KB

Jmail 组件的安装

建议使用 w3 JMail Personal V4.3 这里为免费版 http://www.skycn.net/soft/5555.html

默认安装至 D:\w3JMail4_35434fnald [同样,复杂的目录名]

安装完成后只需单一设置 jmail.dll 权限,加入IIS用户组默认权限即可!

SQL Server 2000 的安装与配置

目前SQL Server 2000 + SP4 在我看来已算比较安全,已没有SP3等版本会因为 sqlstp.log, sqlsp.log而泄露

安装信息的问题。当然也建议在安全后 检查 :\Program Files\Microsoft SQL Server\MSSQL\Install

目录中是否存在有 sqlstp.log, sqlsp.log, setup.iss文件,如果有,则备份至其它位置。

数据库的建立这里就不多讲了。更多设置可以参考SQL SERVER 2000帮助文档!

   

你可能感兴趣的:(Windows,配置管理,IIS,应用服务器,PHP)