`
jaychang
  • 浏览: 731310 次
  • 性别: Icon_minigender_1
  • 来自: 嘉兴
社区版块
存档分类
最新评论

Apache for windows虚拟主机配置方案

 
阅读更多

本文以建立一个站点521school.cn为例,跟大家共同探讨Apache虚拟主机配置问题。

一、建立Windows用户

为每个网站单独设置windows用户帐号cert,删除帐号的User组,将cert加入Guest用户组。将用户不能更改密码,密码永不过期两个选项选上。

二、设置文件夹权限

1、设置非站点相关目录权限

Windows安装好后,很多目录和文件默认是everyone可以浏览、查看、运行甚至是可以修改 的。这给服务器安全带来极大的隐患。这里列出在入侵中较常用的目录。

C:\;D:\;……
C:\perl
C:\temp\
C:\Mysql\
c:\php\
C:\autorun.inf
C:\Documents and setting\
C:\Documents and Settings\All Users\「开始」菜单\程序\
C:\Documents and Settings\All Users\「开始」菜单\程序\启动
C:\Documents and Settings\All Users\Documents\
C:\Documents and Settings\All Users\Application Data\Symantec\
C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere
C:\WINNT\system32\config\
C:\winnt\system32\inetsrv\data\
C:\WINDOWS\system32\inetsrv\data\
C:\Program Files\
C:\Program Files\Serv-U\
c:\Program Files\KV2004\
c:\Program Files\Rising\RAV
C:\Program Files\RealServer\
C:\Program Files\Microsoft SQL server\
C:\Program Files\Java Web Start\

以上这些目录或文件的权限应该作适当的限制。如取消Guests用户的查看、修改和执行等权限。

2、设置站点相关目录权限:

A、设置站点根目录权限:将刚刚建立的用户cert给对应站点文件夹,假设为D:\cert设置相应的权限:Adiministrators组为完全控制;cert有读取及运行、列出文件夹目录、读取,取消其它所有权限。

B、设置可更新文件权限:经过第1步站点根目录文件夹权限的设置后,Guest用户已经没有修改站点文件夹中任何内容的权限了。这显然对于一个有更新的站点是不够的。这时就需要对单独的需更新的文件进行权限设置。当然这个可能对虚拟主机提供商来说有些不方便。客户的站点的需更新的文件内容之类的可能都不一样。这时,可以规定某个文件夹可写、可改。如有些虚拟主机提供商就规定,站点根目录中uploads为web可上传文件夹,data或者database为数据库文件夹。这样虚拟主机服务商就可以为客户定制这两个文件夹的权限。当然也可以像有些做的比较好的虚拟主机提供商一样,给客户做一个程序,让客户自己设定。可能要做到这样,服务商又得花不小的钱财和人力哦。

三、配置IIS

本文就几个特殊之处或需要注意的地方提出以下建议。

1、主目录权限设置:这里可以设置读取就行了。写入、目录浏览等都可以不要,最关键的就是目录浏览了。除非特殊情况,否则应该关闭,不然将会暴露很多重要的信息。这将为黑客入侵带来方便。其余保留默认就可以了。

2、应用程序配置:在站点属性中,主目录这一项中还有一个配置选项,点击进入。在应用程序映射选项中可以看到,默认有许多应用程序映射。将需要的保留,不需要的全部都删除。在入侵过程中,很多程序可能限制了asp,php等文件上传,但并不对cer,asa等文件进行限制,如果未将对应的应用程序映射删除,则可以将asp的后缀名改为cer或者asa后进行上传,木马将可以正常被解析。这也往往被管理员忽视。另外添加一个应用程序扩展名映射,可执行文件可以任意选择,后缀名为.mdb。这是为了防止后缀名为mdb的用户数据库被下载。

3、目录安全性设置:在站点属性中选择目录安全性,点击匿名访问和验证控制,选择允许匿名访问,点击编辑。如下图所示。删除默认用户,浏览选择对应于前面为cert网站设定的用户,并输入密码。可以选中允许IIS控制密码。这样设定的目的是为了防止一些像站长助手、海洋等木马的跨目录跨站点浏览,可以有效阻止这类的跨目录跨站入侵。

4、可写目录执行权限设置:关闭所有可写目录的执行权限。由于程序方面的漏洞,目前非常流行上传一些网页木马,绝大部分都是用web进行上传的。由于不可写的目录木马不能进行上传,如果关闭了可写目录的执行权限,那么上传的木马将不能正常运行。可以有效防止这类形式web入侵。

5、处理运行错误:这里有两种方法,一是关闭错误回显。IIS属性――主目录――配置――应用程序调试――脚本错误消息,选择发送文本错误信息给客户。二是定制错误页面。在IIS属性――自定义错误信息,在http错误信息中双击需要定制的错误页面,将弹出错误映射属性设置框。消息类型有默认值、URL和文件三种,可以根据情况自行定制。这样一方面可以隐藏一些错误信息,另外一方面也可以使错误显示更加友好。

四、配置FTP

Ftp是绝大部分虚拟主机提供商必备的一项服务。用户的站内文件大部分都是使用ftp进行上传的。目前使用的最多的ftp服务器非Serv-U莫属了。这里有几点需要说明一下。

1、管理员密码必须更改

如果入侵爱好者们肯定对Serv-U提权再熟悉莫过了。这些提权工具使用的就是Serv-U默认的管理员的帐号和密码运行的。因为Serv-U管理员是以超级管理员的身份运行的。如果没有更改管理员密码,这些工具使用起来就再好用不过了。如果更改了密码,那这些工具要想正常运行,那就没那么简单喽。得先破解管理员密码才行。

2、更改安装目录权限

Serv-U的默认安装目录都是everyone可以浏览甚至可以修改的。安装的时候如果选择将用户信息存储在ini文件中,则可以在ServUDaemon.ini得到用户的所有信息。如果Guests有修改权限,那么黑客就可以顺利建立具有超级权限的用户。这可不是一件好事。所以在安装好Serv-U之后,得修改相应的文件夹权限,可以取消Guests用户的相应权限。

五、命令行相关操作处理

1、禁止guests用户执行com.exe:我们可以通过以下命令取消guests执行com.exe的权限
cacls C:\WINNT\system3\Cmd.exe /e /d guests。

2、禁用Wscript.Shell组件:

Wscript.Shell可以调用系统内核运行DOS基本命令。可以通过修改注册表,将此组件改名,来防止此类木马的危害。HKEY_CLASSES_ROOT\Wscript.Shell\ 及HKEY_CLASSES_ROOT\Wscript.Shell.1\改名为其它的名字。将两项clsid的值也改一下HKEY_CLASSES_ROOT\Wscript.Shell\CLSID\项目的值和HKEY_CLASSES_ROOT\Wscript.Shell.1\CLSID\项目的值,也可以将其删除。

3、禁用Shell.Application组件

Shell.Application也可以调用系统内核运行DOS基本命令。可以通过修改注册表,将此组件改名,来防止此类木马的危害。HKEY_CLASSES_ROOT\Shell.Application\ 及HKEY_CLASSES_ROOT\Shell.Application.1\ 改名为其它的名字。将HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值更改或删除。同时,禁止Guest用户使用shell32.dll来防止调用此组件。使用命令:cacls C:\WINNT\system32\shell32.dll /e /d guests

4、FileSystemObject组件

FileSystemObject可以对文件进行常规操作可以通过修改注册表,将此组件改名,来防止此类木马的危害。对应注册表项为HKEY_CLASSES_ROOT\scripting.FileSystemObject\。可以禁止guests用户使用或直接将其删除。考虑到很多的上传都会使用到这个组件,为了方便,这里不建议更改或删除。

5、禁止telnet登陆

在C:\WINNT\system32目录下有个login.cmd文件,将其用记事本打开,在文件末尾另取一行,加入exit保存。这样用户在登陆telnet时,便会立即自动退出。

注:以上修改注册表操作均需要重新启动WEB服务后才会生效。

六、关闭文件共享

系统默认是启用了文件共享功能的。我们应给予取消。在控制面板――网络和拨号连接――本地连接――属性,在常规选项种,取消Microsoft 网络文件和打印共享。服务最少原则是保障安全的一项重要原则。非必要的服务应该给予关闭。系统服务可以在控制面板――管理工具――服务中进行设定。

七、端口设置

端口窗体底端就是门,这个比喻非常形象。如果我们服务器的所有端口都开放的话,那就意味着黑客有好多门可以进行入侵。所以我个人觉得,关闭未使用的端口是一件重要的事情。在控制面板――网络与拨号连接――本地连接――属性――Internet协议(TCP/IP)属性,点击高级,进入高级TCP/IP设置,选择选项,在可选的设置中选择TCP/IP筛选,启用TCP/IP筛选。添加需要的端口,如21、80等,关闭其余的所有未使用的端口。

八、关注安全动态及时更新漏洞补丁

更新漏洞补丁对于一个网络管理员来说是非常重要的。更新补丁,可以进一步保证系统的安全。
九、关闭非必要服务

类似telnet服务、远程注册表操作等服务应给予禁用。同时尽可能安装最少的软件。这可以避免一些由软件漏洞带来的安全问题。有些网管在服务器上安装QQ,利用服务器挂QQ,这种做法是极度错误的。

分享到:
评论

相关推荐

    Apache2.4 for Windows x86

    总之,Apache2.4 for Windows x86是一个强大且灵活的Web服务器解决方案,为开发者和系统管理员提供了在Windows平台上搭建高效、安全网站服务器的能力。无论是个人学习、小型企业还是大型企业,都能从中受益。通过...

    apache 服务器FOR Windows

    4. 配置httpd.conf:根据需要编辑配置文件,设置监听端口、虚拟主机、日志位置等。 5. 启动服务:通过命令行运行`httpd.exe`或使用Apache的服务安装工具(如Apache Service Monitor)将Apache注册为系统服务。 6. ...

    Apache2.0.55 for windows64位

    部署过程中,你需要编辑httpd.conf配置文件,根据实际需求设置服务器的监听端口(默认为80)、虚拟主机、文档根目录等参数。例如,要将端口改为非标准的8080,可以在配置文件中找到"Listen 80"并修改为"Listen 8080...

    apache 2.4.26 for Windows

    比如,你可以设置监听端口、配置虚拟主机、启用或禁用模块等。 2. **设置环境变量**:为了使Apache能找到其配置文件和可执行文件,可能需要在系统环境变量中添加`PATH`到Apache的`bin`目录。 3. **启动Apache**:在...

    IBS_for_Windows_Apache

    标题“IBS_for_Windows_Apache”暗示我们讨论的主题是关于在Windows操作系统上部署集成商业系统(IBS)与...在配置过程中,可能还需要了解基本的Web服务器概念,如虚拟主机、SSL证书、端口设置等,以满足不同业务需求。

    Apache for Windows V2.4.27 vc9 (3264) 官方正式版.rar

    3. `conf`目录:包含服务器配置文件,如httpd.conf,定义了服务器的基本设置,以及vhosts.conf,用于配置虚拟主机。 4. `logs`目录:存储服务器的日志文件,如access_log和error_log,这些日志对调试和监控服务器...

    apache service for windows 64

    "Apache Service for Windows 64"就是针对这一需求的解决方案,其主要文件为`apache_2.0.64-netware.zip`,包含了运行Apache服务所需的所有组件。 一、下载与解压 首先,你需要从官方网站或者可靠的源下载`apache_...

    Apache_2.4.4_for_Windows

    3. **配置httpd.conf**:这是Apache的主要配置文件,需要根据实际需求进行修改,如设置监听端口、定义虚拟主机、设置日志文件等。 4. **启动与测试**:通过控制台命令或者服务管理工具启动Apache服务器,然后在...

    soft_Apache v2.2.9 for windows.zip.zip

    4. **配置文件**:Apache的主配置文件通常为httpd.conf,它定义了服务器的行为和设置,如端口监听、虚拟主机、日志文件等。 5. **SSL/TLS支持**:Apache v2.2.9能够通过mod_ssl模块支持SSL和TLS协议,提供加密和...

    apache v2.0.48 For win Sour

    配置SSL需要生成或获取SSL证书,并在`httpd.conf`中配置相应的虚拟主机,指定证书和私钥文件的位置。 此外,监控和日志管理也是关键知识点。Apache产生的日志文件通常存储在`logs`目录下,包括访问日志(access.log...

    apache2.2 forwindow

    Apache2.2 for Windows提供了强大的功能,包括但不限于动态内容生成、URL重写、虚拟主机、多种模块支持以及安全特性。 1. **安装与配置** - `httpd-2.2.22-win32-x86-openssl-0.9.8t.msi` 是Apache2.2的Windows...

    mamp pro for windows

    此外,MAMP PRO还提供了许多高级特性,如虚拟主机设置,这意味着你可以在一个本地环境中管理多个独立的网站。每个网站可以有不同的域名和根目录,这对于开发多站点项目非常有用。你还可以自定义PHP版本,这在测试...

    apache_2.2.8 for win32下载

    这是Apache的主要配置文件,用于定义服务器的行为,如端口号、文档根目录、虚拟主机等。根据你的需求进行编辑。 4. **环境变量**:为了使Apache正常运行,可能需要在系统环境变量中添加Apache的路径,特别是`Path`...

    APACHE COOKBOOK中文版

    3. **虚拟主机**:展示如何设置和管理基于IP、名称或端口的虚拟主机,这对于在同一台物理服务器上托管多个网站非常有用。 4. **性能优化**:提供关于如何调整Apache的性能来应对不同规模的网站流量,包括工作进程...

    Apache+php+mysql在windows下的安装与配置图解(最新版)

    - 配置Apache:主要修改`httpd.conf`配置文件,设置监听端口、虚拟主机、文档根目录等。 2. **PHP的集成**: - PHP是一种服务器端脚本语言,常用于Web开发。下载对应版本的PHP Windows二进制包,解压后将PHP目录...

    iis5.1 for windows xp

    2. **虚拟主机**:通过IIS管理器,可以设置多个虚拟主机,每个虚拟主机可以绑定不同的域名或IP地址,实现一台服务器上托管多个网站。 3. **权限设置**:IIS5.1支持对不同文件夹设置访问权限,如读取、写入、执行等,...

    很好用的apache

    Apache的配置文件httpd.conf是一个包含了服务器全局设置的文本文件,用户可以根据需求调整服务器的行为,例如设置虚拟主机、限制访问权限、定义错误页面等。对于初学者,理解并学会编辑这个文件是掌握Apache的关键...

    Servidor Apache

    3. **配置文件**:Apache的主要配置文件是`httpd.conf`,它定义了服务器的行为和设置,如端口号、文档根目录、虚拟主机等。在Linux系统中,这个文件通常位于`/etc/apache2/httpd.conf`,而在Windows中,可能在`C:\...

    apache_2.2.14-win32-x86-no_ssl

    4. **虚拟主机**:Apache可以同时托管多个网站,通过配置虚拟主机实现。在"httpd.conf"中,用户可以通过定义不同的ServerName和DocumentRoot来创建虚拟主机。 5. **日志管理**:Apache的日志文件通常分为两种,一种...

    apache+php+mysql安装包+配置信息+安装攻略

    2. **配置Apache**:安装完成后,你需要编辑Apache的配置文件"httpd.conf",设置虚拟主机、文档根目录、以及PHP处理器模块的加载。Apache的配置文件通常位于安装目录的"conf"子目录下。 3. **安装MySQL**:"mysql-...

Global site tag (gtag.js) - Google Analytics