apache服务器配置实训总结(apache服务器配置与使用工作笔记)

怎么配置apache服务器

1.安装Apache

yum -y install httpd

2. Apache配置httpd.conf

通过命令 find / -name httpd.conf 找到Apache配置文件httpd.conf(默认在/etc/httpd/conf/httpd.conf)

编辑httpd.conf文件

vi /etc/httpd/conf/httpd.conf

修改DocumentRoot \"/xx/xx/xxx\",项目在哪个目录下,就将\"/xx/xx/xxx\"改为哪个目录,例如DocumentRoot \"/var/www/html\" ,同样将Directory \"/xx/xx/xxx\"修改为Directory \"/var/www/html\"。

查看是否安装成功(启动Apache,并查看Apache状态)

  service httpd start

service httpd status

显示OK说明安装成功

配置Apache开机启动项

   chkconfig --add httpd (在服务清单中添加httpd服务)

chkconfig httpd on

安装Mysql

1. 安装Mysql

yum -y install mysql mysql-devel mysql-server mysql-libs

具体可以参考 linux搭建lamp_5分享

Apache的配置详细过程

抄的:

-----------

# 这是主要的 Apache 服务器配置文件。它包含 # 给服务器它的指

令的配置指令。# 为详细的信息关于看见

URL:;# 指令。

#

# 不简单地确实没有理解在这里读指令 # 他们做什么。他们仅仅作

为提示或提示在这里。如果你是不肯定的 # 请教联机的文档。你被

警告了。

#

# 在这个文件被处理以后,服务器将寻找并且处理

# c:/website/apache/conf/srm.conf and then c:/website/apache/conf/access.conf

# 除非你与 ResourceConfig 制服了这些或 # 这里的 AccessConfig

指令。

#

# 配置指令被组织进 3 基本的节:# 1 。控制 Apache 服务器的操

作的指令处理作为一

# 整个 (\" 全球的 environment\') 。

# 2. 定义参数的指令“主要”或“缺省”服务器,

# 它反应到那没被一台虚拟的主机处理的请求。

# 这些指令也为设置提供缺省值

# 所有的虚拟的主机。

# 3. 为虚拟的主机的设置, 它允许网请求被送到

# 不同的 IP 地址或主机名并且把他们处理了由

# 同样的 Apache 服务器进程。

#

# 配置和日志文件名字:如果你为许多指定的文件名 # 服务器的控

制文件开始 \"/\"( 或为 Win32 的“ drive:/ ” ),# 服务器将使用

那条显式的路径。如果文件名做 * 不 * 开始 # 与 \"/\" ,

ServerRoot 的值被附在前面--因此“ logs/foo.log ” # 与

ServerRoot 到“ /usr/local/apache ”的集合将被解释由 # 作为

“ /usr/local/apache/logs/foo.log ”的服务器。

#

# 注意:文件名在哪儿被指定, 你必须向前使用猛砍 # 而不是反斜

线 ( 例如,“ c:/apache ”而不是“ c:apache ” ) 。# 如果一

个驱动器字母被省略, Apache.exe 在其上被定位的驱动器 # 将被

缺省使用。你总是供应,这被推荐 # 在绝对的路径的一个显式的驱

动器字母, 然而, 避免 # 混乱。

#

### 节 1 :全球的环境

#

# 在这节的指令影响 Apache 的全面的操作,# 例如并发的请求的数

字它能处理或在哪儿它 # 能发现它的配置文件。

#

#

# ServerType 是 inetd , 或独立。 Inetd 模式仅仅被支持在上 #

Unix 平台。

#

独立的 ServerType

#

# ServerRoot :在下面的目录树的顶服务器的 # 配置,误差,并且

记录文件被坚持。

#

# 别增加一在目录路径的结束猛砍。

#

ServerRoot “ c:/ 网点 /apache ”

#

# PidFile :服务器应该在其记录它的进程的文件 # 鉴定数字当它

启动时。

#

PidFile logs/httpd.pid

#

# ScoreBoardFile :文件过去常存储内部的服务器进程信息。# 不

所有的体系结构要求这。但是如果你的做 ( 因为,你将知道 # 当你

运行 Apache 时,这个文件将被创造 ) 那么你 * 必须 * 保证那 #

Apache 的没有 2 祈祷分享一样的纪分牌文件。

#

ScoreBoardFile 元木 /apache_status

#

# 在标准的配置,服务器将处理 httpd.conf ,# srm.conf ,并且在

那份订单的 access.conf 。后者 2 个文件是 # 现在散布了空, 当

被推荐所有的指令 # 为简洁被放在一个单个的文件。评价外面珍视

# 下面是内建的缺省。你能让服务器忽略 # 这些文件旁边完全使用

“ /dev/null ” ( 为 Unix ) 或 # “ nul ” ( 为 Win32 ) 为到

指令的参数。

#

#ResourceConfig conf/srm.conf

#AccessConfig conf/access.conf

#

# 超时:秒的数字以前收到并且送超时。

#

超时 300

#

# KeepAlive :是否允许坚持的连接 ( 多于 # 一个请求每连接 ) 。

设定到“离开”撤销。

#

KeepAlive 在上

#

# MaxKeepAliveRequests :允许的请求的最大的数字 # 在一个坚持

的连接期间。设定到 0 允许无限的数量。# 我们你让这个数字高的

reccomend , 为最大的性能。

#

MaxKeepAliveRequests 100

#

# KeepAliveTimeout :秒数字等下一个请求从 # 在一样的连接上的

同样的顾客。

#

KeepAliveTimeout 15

#

# 在 Win32 上的 Apache 总是创造一子进程处理请求。如果它 # 死,

另外的子进程自动地被创造。在孩子以内 # 多重的线程处理到来的

请求的进程。下一 2 # 指令控制线程和进程的行为。

#

#

# MaxRequestsPerChild :请求各个子进程的数字是 # 在孩子死以

前,允许了处理。孩子将这样退出 # 至于当时,在延长的使用以后

避免问题 Apache ( 并且也许 # 它使用的图书馆 ) 漏缝存储器或其

它资源。在大多数系统上,这 # 确实不被需要, 但是一些 ( 例如

Solaris ) 确实有著名的漏缝 # 在图书馆。为 Win32 ,将这值放到

零 ( 无限 )# 除非不那样劝告了。

#

MaxRequestsPerChild 0

#

# 并发的线程的数字 ( 即, 请求 ) 服务器将允许。# 将这值放根据

服务器的应答 ( 更 # 活跃的请求马上他们都更慢慢地被处理的工具

) 并且 # 你将允许服务器消费的系统资源的数量。

#

ThreadsPerChild 50

#

# 听:允许你把 Apache 绑在特定的 IP 地址或 # 端口, 除了缺省。

也参见 VirtualHost# 指令。

#

#Listen 3000

#Listen 12.34.56.78:80

#

# BindAddress :你能与这选择支持虚拟的主机。这条指令 # 被用

来告诉服务器哪个听的 IP 地址。它能也 # 包含 \"*\" ,一个 IP 地

址,或充分合格的因特网域名。# 也参见 VirtualHost 并且听指

令。

#BindAddress *

#

# 动态分享的对象 ( DSO ) 支持

#

# 能使用作为一 DSO 被造的一个模块的功能你 # 必须放相应的“

LoadModule ”这样在这个地点排队 # 在它被包含了的指令是他们被

使用的实际上可得到的 _before_ 。# 请为更多在 Apache 1.3 分发

读文件 README.DSO # 关于 DSO 机制和跑的细节 \" apache - l \"

为表已经 # 内建 ( 静态地连接了并且这样总是可得到 ) 在你的

Apache 的模块。

#

# 注意:模块在其被装载的顺序是重要的。别变化 # 在没有专家忠

告下面的顺序。

#

#LoadModule anon_auth_module

modules/ApacheModuleAuthAnon.dll #LoadModule

cern_meta_module modules/ApacheModuleCERNMeta.dll

#LoadModule digest_module modules/ApacheModuleDigest.dll

#LoadModule expires_module modules/ApacheModuleExpires.dll

#LoadModule headers_module

modules/ApacheModuleHeaders.dll #LoadModule proxy_module

modules/ApacheModuleProxy.dll #LoadModule rewrite_module

modules/ApacheModuleRewrite.dll #LoadModule speling_module

modules/ApacheModuleSpeling.dll #LoadModule

status_module modules/ApacheModuleStatus.dll #LoadModule

usertrack_module modules/ApacheModuleUserTrack.dll

#

# ExtendedStatus 控制 Apache 是否将产生“完整”的地位 # 信息

( ExtendedStatus 在上 ) 或就基本的信息 ( ExtendedStatus #

离开 ) 什么时候处理器被调用的“服务者地位”。缺省关。

#

#ExtendedStatus 在上

### 节 2 :“主要”的服务器配置

#

# 在这节的指令安装被使用了由的值“主要” # 服务器, 它反应到

没被处理由的任何请求一 #VirtualHost 定义。这些值也提供缺省

为 # 你可以以后在文件定义的任何 VirtualHost 集装箱。

#

# 这些指令的所有可以在 VirtualHost 集装箱内出现,# 在此情况

这些缺省设置将被制服为 # 虚拟的主机正在被定义。

#

#

# 如果你的 ServerType 指令 ( 更早在“全球的环境”设定 # 节 )

被设置到“ inetd ”, 下一条很少指令没有任何东西 # 自从他们

的设置的效果被 inetd 配置定义。# 向前跳过到 ServerAdmin 指令。

#

#

# 端口:独立的服务器听到其的端口。

#

端口 80

#

# ServerAdmin :你的地址, 有服务器的问题应该在此 # 发电子邮

件。这个地址在一些产生服务者的页上出现, 如此的 # 当误差记录。

#

ServerAdmin you@your.address

#

# ServerName 允许你使一台主机命名哪个被送回到顾客为 # 你的如

果它比一个不同,程序将得到的服务器 ( 即, 使用 # “ www ”而

不是主机的真实的名字 ) 。

#

# 注意:你不能就发明主机名字和他们工作的希望。名字你 # 定义

这必须你的主机有一个有效的 DNS 名字。如果你不理解 # 这, 问你

的网络主管。

# 如果你的主机没有一个登记的 DNS 名字,这里进入它的 IP 地址。

# 你将必须由它的地址存取它 ( 例如, )#

不管怎样, 并且这将在一个理智的方法使重定向成为工作。

ServerName

#

# DocumentRoot :你将从其提供的目录你的 # 文件。由缺省,所有

的请求从这个目录被拿, 但是 # 符号的连接和别名可以被用来指向

另外的地点。

#

DocumentRoot “ c:/ 网点”

#

# 有存取到此 Apache 的每个目录, 能与方面被设置 # 到哪个服务

和特征在那被允许或残废 # 目录 ( 并且它的子目录 ) 。

#

# 第一, 我们设置“缺省”是一个很限制的集合 # 允许。

#

Directory /

选择 FollowSymLinks

AllowOverride 没有

/Directory

#

# 向前从这个点你必须具体地说允许的笔记 # 被启用的特别的特征

- 因此如果一些东西的不工作作为 # 你可能期望, 保证你具体地说

启用了它 # 在下面。

#

#

# 这应该被改变到你将 DocumentRoot 放到无论什么。

#

Directory \"c:/ 网点 /apache/htdocs\"

#

# 这可以也是“没有”,“索引”的“所有的”,或任何联合,# “

包括”,“ FollowSymLinks ”,“ ExecCGI ”,或“ MultiViews

”。

#

# 注意“ MultiViews ”必须被命名 * 明确地*---“选择所有” #

别把它给你。

#

选择索引 FollowSymLinks MultiViews

#

# 这控制哪个选择在目录罐头的 .htaccess 文件 # 制服。能也是“

选择”的“所有的”,或任何联合,“ FileInfo ”,# “

AuthConfig ”,并且“限制”

#

AllowOverride 没有

#

# 能得到的控制从这个服务器填满。

#

顺序允许, 否认

从所有允许

/Directory

#

# UserDir :到一个用户的家之上被添加的目录的名字 # 目录如果

一个 ~ 用户请求被收到。

#

# 在 Win32 下面,我们不当前确实试着决定主目录 # Windows 登录,

例如那的格式下面这样需要被使用。看 # 为细节的 UserDir 文档。

#

UserDir “ c:/ 网点 /apache/ 用户 / ”

#

# DirectoryIndex :文件或文件命名作为一写得前的 HTML 使用 #

目录索引。有空格的分开的多重的入口。

#

DirectoryIndex index.html index.php index.php3

index.phtml

#

# AccessFileName :在每个目录寻找的文件的名字 # 为存取控制信

息。

#

AccessFileName .htaccess

#

# 下列行阻止 .htaccess 文件被看由 # 网顾客。自从 .htaccess

文件经常包含授权 # 信息, 存取为安全原因被否认。注释 # 这些如

果你想要网来宾看见内容,外面排队 # .htaccess 文件。如果你上

面改变 AccessFileName 指令, # 肯定这里做相应的变化。

#

Files .htaccess

顺序允许, 否认

从所有否认

/Files

#

# CacheNegotiatedDocs :由缺省, Apache 送 \" Pragma :没有缓

存 \" 与各个 # 在内容的基础上被谈判的文件。这问代理 # 不缓冲

这个文件的服务器。下列行停用的 Uncommenting # 这行为,并且代

理将被允许缓冲文件。

#

#CacheNegotiatedDocs

#

# UseCanonicalName : (新为 1.3 ) 与这设置打开了, 无论何

时 # Apache 需要构造一

引用自我 URL ( 参考回

来的一 URL # 到服务器

反应正在来从 ) 它将使

用 ServerName 并且 #

形成一个“正规”的名字

的端口。与这出发,

Apache 愿望 # 使用顾客

供应了的 hostname:port

, 什么时候可能。这 #

也在 CGI 手迹影响

SERVER_NAME 和

SERVER_PORT 。

#

UseCanonicalName 在上

#

# TypesConfig 描述在哪儿 mime.types 文件 ( 或相等 ) 是 # 被

发现。

#

TypesConfig conf/mime.types

#

# DefaultType 是服务器将在一个文件使用的缺省 MIME 类型 # 如

果它不能不那样决定一个,例如从文件名扩展。# 如果你的服务器主

要包含,文章或 HTML 记录,“普通文本”是 # 好值。如果你的内

容的大多数是二进制的,例如应用程序 # 或图象, 你可以相反想要

使用“申请 /octet-stream ”到 # 阻止浏览器试着显示二进制的文

件好像他们是 # 文章。

#

DefaultType 普通文本

#

# 模块允许服务器到各种各样的使用的 mod_mime_magic 提示从 #

决定它的类型的文件自己的内容。 MIMEMagicFile # 指令告诉模块

提示定义在哪儿被定位。# mod_mime_magic 不是缺省服务器的部分

( 你必须增加 # 它你自己与一 LoadModule [ 看见 DSO 段在 \" 全

球 # 环境 \" 节 ], 或,因此它在一只 IfModule 集装箱被封装。

# 如果, MIMEMagicFile 指令将仅仅被处理的这个工具 # 模块是服

务器的部分。

#

IfModule mod_mime_magic.c

MIMEMagicFile conf/ 魔术

/IfModule

#

# HostnameLookups :记载顾客或只是他们的 IP 地址的名字

# 例如, ( 在上 ) 或 204.62.129.132 ( 离开 ) 。

# 因为如果,它将为网络是总的来说好一些的,缺省关人 # 不得不

会意地打开这个特征, 自从启用,它意味着那 # 每个顾客请求将导

致至少一个查找请求到 # 名字服务器。

#

HostnameLookups 离开

#

# ErrorLog :错误记录文件的地点。

# 如果你不在一 VirtualHost 以内指定一条 ErrorLog 指令 # 容

器, 联系到那台虚拟的主机的错误消息将是 # 这里记载了。如果你

** 为一 VirtualHost 定义一个错误日志文件 # 容器, 那台主机

的错误将这里被记载在那里并且不。

#

ErrorLog logs/error.log

#

# LogLevel :控制被记载了到 error.log 的消息的数字。# 可能的

值包括:调试, 信息, 通知, 警告, 误差, crit ,# 警戒, emerg 。

#

LogLevel 警告

#

# 下列指令为使用定义一些格式绰号与 # 一条 CustomLog 指令 (

看在下面 ) 。

#

LogFormat \"%h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-Agent}i\"\" combined

LogFormat “ % h % l % u % t ” %r\"% s % b \" 普通

LogFormat \"%{ Referer } 我 -% U \" referer

LogFormat \"%{ 用户代理人 } 我 \" 代理人

#

# 存取日志文件的地点和格式 ( 普通的日志文件格式 ) 。# 如果你

不在一 VirtualHost 以内定义任何存取日志文件 # 容器, 他们将

这里被记载。相反地, 如果你 **# 定义每 --VirtualHost 存取日

志文件, 交易将是 # 在那里记载了并且 * 不 * 在这个文件。

#

普通的 CustomLog logs/access.log

#

# 如果你想有代理人和 referer 日志文件, uncomment # 跟随指令。

#

#CustomLog logs/referer.log referer

#CustomLog logs/agent.log 代理人

#

# 如果你与存取比较喜欢一个单个的日志文件,代理人,并且

referer 信息 #( 联合的日志文件格式 ) 你能使用下列指令。

#

#CustomLog logs/access.log 联合了

#

# 选择性地增加包含服务器版本和虚拟的主机的行 # 到产生服务者

的页的名字 ( 误差记录, FTP 目录目录,# mod_status 和 mod_info

等等输出,然而并非 CGI 产生了文件 ) 。# 到“电子邮件”到的

集合也包括一 mailto :连接到 ServerAdmin 。# 设定到之一:在

上|离开|电子邮件

#

ServerSignature 在上

#

# 别名:与你需要比,这里增加同样多别名 ( 没有限制 ) 。格式是

# 别名 fakename realname

#

# 如果你包括一走,注意那 / 在 fakename 上那么服务器愿望 # 要

求它在 URL 在场。因此“ /icons ”不是在这的 aliased # 例子,

仅仅“ /icons/ ”……

#

Alias /icons/ \"c:/website/apache/icons/\"

#

# ScriptAlias :哪个目录包含服务器手迹的这控制。#

ScriptAliases 是实质上与别名一样,除了那 # 在 realname 目录

的文件被当作应用程序并且 # 当请求时而非当文件送了到顾客,由

服务器运行。# 关于走的 \"/\" 的一样的规则适用于 ScriptAlias 指

令至于 # 别名。

#

ScriptAlias /cgi-bin/ \"c:/website/apache/cgi-bin/\"

#

# “ c:/ 网点 /apache/cgi-bin ”应该被改变到无论什么你的

ScriptAliased # CGI 目录存在, 如果你把那设置。

#

Directory \"c:/ 网点 /apache/cgi-bin\" AllowOverride 没有

选择没有

/Directory

#

# 重定向允许你把过去常存在在的文件告诉顾客 # 你的服务器的

namespace , 但是不再做。这允许你告诉 # 顾客在哪儿寻找重定位

的文件。

# 格式化:重定向 old-URI new-URL

#

linux下apache服务器的实训心得体会,2000字左右

这个也太多了吧.

Linux下的apache就是安装httpd服务而已,配置,设置访问,保护进程,修改配置文件,建立虚拟目录,配置cgi-bin,就这么多.过程很不太复杂,但是用文字来说就太麻烦了.

说实话,2000字真的太多,懒得写了.

Apache常用配置指北

Apache 作为世界使用排名第一的Web服务器软件,它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一

相信前端的小伙伴对于 apache 和 nginx 都有所了解,特别是前后端分离,独立开发部署后,使用web服务器做一些代理服务可以解决绝大多数因为前后端分离造成的跨域,认证等问题(PS:都2020年了,不会还有项目组主张使用weblogic或tomcat部署前端项目吧? 不会吧,不会吧,不会吧 ?)

下面,我从实际项目角度出发,说一些apache常用配置,相信做到以下配置之后,基本可以解决前端项目部署对接时80%以上的问题 (? 我骗你的,我怎么知道能解决多少,反正先说一个数嘛)

示例:

Directory指令用于在配置的目录(示例内\'/apache/web\'目录)内封装一组指令,配置的指令在该目录及子目录生效。任何可以在\"directory\"作用域中使用的指令都可以使用

从安全性考虑,根目录的AllowOverride属性一般都配置成不允许任何Override, 即设置 AllowOverride None ,此时,配置目录及子目录的.htaccess 文件将被完全忽略。

当此指令设置为 All 时,所有具有 “.htaccess” 作用域的指令都允许出现在 .htaccess 文件中

示例:

apache的Alias配置即虚拟路径配置,如示例中,假设apache服务器启动地址为 ,当访问 时, 会返回服务器 /extra/video/public/test.mp4 视频文件。

示例:

示例效果为将输入 en.cmbc.com 时,跳转到

Apache Rewrite规则修正符

Rewirte即apache的重写规则,主要的功能就是实现URL的跳转,匹配规则支持正则匹配。

示例:

apache中的mod_proxy模块用于url的转发,即具有代理的功能。

ProxyPass即转发功能,如示例中的配置,为将 的请求转发至 服务器.

ProxyPassReverse 的配置和 ProxyPass 的配置一致,它用于反向代理,例如示例中请求 后,转发给配置的目标服务器( ),返回的处理结果为重定向redirect至 登录页,此时若未配置反向代理,浏览器会访问 ,而配置反向代理后,apache服务器会在重定向时,修改redirect地址为 。

示例:

负载均衡配置稍显复杂,后续会专门总结一下相关配置,以上示例配置所达到的效果为:请求 时,会均衡负载发至 和 两台服务器。

示例:

启用Apache的deflate模块,可以开启压缩功能,减小网站传输时的带宽。

iis配置的实验总结

通常地,大多数Web站点的设计目标都是:以最易接受的方式,为访问者提供即时的信息访问。在过去的几年中,越来越多的黑客、病毒和蠕虫带来的安全问题严重影响了网站的可访问性,尽管Apache服务器也常常是攻击者的目标,然而微软的Internet信息服务(IIS) Web服务器才是真正意义上的众矢之的。

高级教育机构往往无法在构建充满活力、界面友好的网站还是构建高安全性的网站之间找到平衡点。另外,它们现在必须致力于提高网站安全性以面对缩减中的技术预算 (其实许多它们的私有部门也面临着相似的局面)。

正因为如此,我在这里将为预算而头疼的大学IT经理们提供一些技巧,以帮助他们保护他们的IIS服务器。虽然主要是面对大学里的IT专业人员的,但是这些技巧也基本上适用于希望通过少量的财政预算来提高安全性的IIS管理人员。实际上,这里面的一些技巧对拥有强大预算的IIS管理人员也是非常有用的。

首先,开发一套安全策略

保护Web服务器的第一步是确保网络管理员清楚安全策略中的每一项制度。如果公司高层没有把服务器的安全看作是必须被保护的资产,那么保护工作是完全没有意义的。这项工作需要长期的努力。如果预算不支持或者它不是长期IT战略的一部分,那么花费大量时间保护服务器安全的管理员将得不到管理层方面的重要支持。

网络管理员为各方面资源建立安全性的直接结果是什么呢?一些特别喜欢冒险的用户将会被关在门外。那些用户随后会抱怨公司的管理层,管理层人员又会去质问网络管理员究竟发生了什么。那么,网络管理员没办法建立支持他们安全工作的文档,因此,冲突发生了。

通过标注Web服务器安全级别以及可用性的安全策略,网络管理员将能够从容地在不同的操作系统上部署各种软件工具。

IIS安全技巧

微软的产品一向是众矢之的,因此IIS服务器特别容易成为攻击者的靶子。搞清楚了这一点后,网络管理员必须准备执行大量的安全措施。我将要为你们提供的是一个清单,服务器操作员也许会发现这是非常有用的。

1. 保持Windows升级:

你必须在第一时间及时地更新所有的升级,并为系统打好一切补丁。考虑将所有的更新下载到你网络上的一个专用的服务器上,并在该机器上以Web的形式将文件发布出来。通过这些工作,你可以防止你的Web服务器接受直接的Internet访问。

2. 使用IIS防范工具:

这个工具有许多实用的优点,然而,请慎重的使用这个工具。如果你的Web服务器和其他服务器相互作用,请首先测试一下防范工具,以确定它已经被正确的配置,保证其不会影响Web服务器与其他服务器之间的通讯。

3. 移除缺省的Web站点:

很多攻击者瞄准inetpub这个文件夹,并在里面放置一些偷袭工具,从而造成服务器的瘫痪。防止这种攻击最简单的方法就是在IIS里将缺省的站点禁用。然后,因为网虫们都是通过IP地址访问你的网站的 (他们一天可能要访问成千上万个IP地址),他们的请求可能遇到麻烦。将你真实的Web站点指向一个背部分区的文件夹,且必须包含安全的NTFS权限 (将在后面NTFS的部分详细阐述)。

4. 如果你并不需要FTP和SMTP服务,请卸载它们:

进入计算机的最简单途径就是通过FTP访问。FTP本身就是被设计满足简单读/写访问的,如果你执行身份认证,你会发现你的用户名和密码都是通过明文的形式在网络上传播的。SMTP是另一种允许到文件夹的写权限的服务。通过禁用这两项服务,你能避免更多的黑客攻击。

5. 有规则地检查你的管理员组和服务:

有一天我进入我们的教室,发现在管理员组里多了一个用户。这意味着这时某个人已经成功地进入了你的系统,他或她可能冷不丁地将炸弹扔到你的系统里,这将会突然摧毁你的整个系统,或者占用大量的带宽以便黑客使用。黑客同样趋向于留下一个帮助服务,一旦这发生了,采取任何措施可能都太晚了,你只能重新格式化你的磁盘,从备份服务器恢复你每天备份的文件。因此,检查IIS服务器上的服务列表并保持尽量少的服务必须成为你每天的任务。你应该记住哪个服务应该存在,哪个服务不应该存在。Windows 2000 Resource Kit带给我们一个有用的程序,叫作tlist.exe,它能列出每种情况运行在svchost 之下的服务。运行这个程序可以寻找到一些你想要知道的隐藏服务。给你一个提示:任何含有daemon几个字的服务可能不是Windows本身包含的服务,都不应该存在于IIS服务器上。想要得到Windows服务的列表并知道它们各自有什么作用,请点击这里。

6. 严格控制服务器的写访问权限:

这听起来很容易,然而,在大学校园里,一个Web服务器实际上是有很多\"作者\"的。教职人员都希望让他们的课堂信息能被远程学生访问。职员们则希望与其他的职员共享他们的工作信息。服务器上的文件夹可能出现极其危险的访问权限。将这些信息共享或是传播出去的一个途径是安装第2个服务器以提供专门的共享和存储目的,然后配置你的Web服务器来指向共享服务器。这个步骤能让网络管理员将Web服务器本身的写权限仅仅限制给管理员组。

7. 设置复杂的密码:

我最近进入到教室,从事件察看器里发现了很多可能的黑客。他或她进入了实验室的域结构足够深,以至于能够对任何用户运行密码破解工具。如果有用户使用弱密码 (例如\"password\"或是 changeme\"或者任何字典单词),那么黑客能快速并简单的入侵这些用户的账号。

8. 减少/排除Web服务器上的共享:

如果网络管理员是唯一拥有Web服务器写权限的人,就没有理由让任何共享存在。共享是对黑客最大的诱惑。此外,通过运行一个简单的循环批处理文件,黑客能够察看一个IP地址列表,利用\\\\命令寻找Everyone/完全控制权限的共享。

9. 禁用TCP/IP协议中的NetBIOS:

这是残忍的。很多用户希望通过UNC路径名访问Web服务器。随着NETBIOS被禁用,他们便不能这么做了。另一方面,随着NETBIOS被禁用,黑客就不能看到你局域网上的资源了。这是一把双刃剑,如果网络管理员部署了这个工具,下一步便是如何教育Web用户如何在NETBIOS失效的情况下发布信息。

10. 使用TCP端口阻塞:

这是另一个残忍的工具。如果你熟悉每个通过合法原因访问你服务器的TCP端口,那么你可以进入你网络接口卡的属性选项卡,选择绑定的TCP/IP协议,阻塞所有你不需要的端口。你必须小心的使用这一工具,因为你并不希望将自己锁在Web服务器之外,特别是在当你需要远程登陆服务器的情况下。要得到TCP端口的详细细节,点击这里。

11. 仔细检查*.bat和*.exe 文件: 每周搜索一次*.bat

和*.exe文件,检查服务器上是否存在黑客最喜欢,而对你来说将是一场恶梦的可执行文件。在这些破坏性的文件中,也许有一些是*.reg文件。如果你右击并选择编辑,你可以发现黑客已经制造并能让他们能进入你系统的注册表文件。你可以删除这些没任何意义但却会给入侵者带来便利的主键。

12. 管理IIS目录安全:

IIS目录安全允许你拒绝特定的IP地址、子网甚至是域名。作为选择,我选择了一个被称作WhosOn的软件,它让我能够了解哪些IP地址正在试图访问服务器上的特定文件。WhosOn列出了一系列的异常。如果你发现一个家伙正在试图访问你的cmd.exe,你可以选择拒绝这个用户访问Web服务器。当然,在一个繁忙的Web站点,这可能需要一个全职的员工!然而,在内部网,这真的是一个非常有用的工具。你可以对所有局域网内部用户提供资源,也可以对特定的用户提供。

13. 使用NTFS安全:

缺省地,你的NTFS驱动器使用的是EVERYONE/完全控制权限,除非你手工关掉它们。关键是不要把自己锁定在外,不同的人需要不同的权限,管理员需要完全控制,后台管理账户也需要完全控制,系统和服务各自需要一种级别的访问权限,取决于不同的文件。最重要的文件夹是System32,这个文件夹的访问权限越小越好。在Web服务器上使用NTFS权限能帮助你保护重要的文件和应用程序。

14.管理用户账户:

如果你已经安装IIS,你可能产生了一个TSInternetUser账户。除非你真正需要这个账户,否则你应该禁用它。这个用户很容易被渗透,是黑客们的显著目标。为了帮助管理用户账户,确定你的本地安全策略没有问题。IUSR用户的权限也应该尽可能的小。

15. 审计你的Web服务器:

审计对你计算机的性能有着较大的影响,因此如果你不经常察看的话,还是不要做审计了。如果你真的能用到它,请审计系统事件并在你需要的时候加入审计工具。如果你正在使用前面提到的WhosOn工具,审计就不那么重要了。缺省地,IIS总是纪录访问, WhosOn 会将这些纪录放置在一个非常容易易读的数据库中,你可以通过Access或是 Excel打开它。如果你经常察看异常数据库,你能在任何时候找到服务器的脆弱点。

总结

上述所有IIS技巧和工具(除了WhosOn以外)都是Windows自带的。不要忘记在测试你网站可达性之前一个一个的使用这些技巧和工具。如果它们一起被部署,结果可能让你损失惨重,你可能需要重启,从而遗失访问。

最后的技巧: 登陆你的Web服务器并在命令行下运行netstat -an。观察有多少IP地址正尝试和你的端口建立连接,然后你将有一大堆的调查和研究要做了。

仅供参考

未经允许不得转载:便宜VPS网 » apache服务器配置实训总结(apache服务器配置与使用工作笔记)