浏览主站 | 站长工具 | 新闻资讯 | 站长学院 | 站长盈利 | HTML教程 | 网址导航 | 站长周刊 | 会员投稿 | 滚动新闻 | RSS
发新话题
打印

WEB专用服务器的安全设置的实战技巧

WEB专用服务器的安全设置的实战技巧

[[wiki]wiki[/wiki]][/wiki]IIS的相关设置:

删除默认建立的站点的虚拟目录,停止默认web站点,删除对应的文件目录c:inetpub,配置所有站点的公共设置,设置好相关的连接数限制,带宽设置以及性能设置等其他设置。配置应用[wiki]程序[/wiki]映射,删除所有不必要的应用程序扩展,只保留asp,[wiki]PHP[/wiki],cgi,pl,aspx应用程序扩展。对于php和cgi,推荐使用isapi方式解析,用exe解析对[wiki]安全[/wiki]和性能有所影响。用户程序调试设置发送文本错误[wiki]信息[/wiki]给户。对于[wiki]数据库[/wiki],尽量采用mdb后缀,不需要更改为asp,可在IIS中设置一个mdb的扩展映射,将这个映射使用一个无关的dll文件如C:WINNTsystem32inetsrvssinc.dll来防止数据库被下载。设置IIS的日志保存目录,调整日志记录信息。设置为发送文本错误信息。修改403错误页面,将其转向到其他页,可防止一些扫描器的探测。另外为隐藏[wiki]系统[/wiki]信息,防止telnet到80[wiki]端口[/wiki]所泄露的系统版本信息可修改IIS的banner信息,可以使用winhex手工修改或者使用相关[wiki]软件[/wiki]如banneredit修改。

对于用户站点所在的目录,在此说明一下,用户的[wiki]FTP[/wiki]根目录下对应三个文件佳,wwwroot,database,logfiles,分别存放站点文件,数据库备份和该站点的日志。如果一旦发生入侵事件可对该用户站点所在目录设諿wiki]镁[/wiki]咛宓娜ㄏ蓿计诘哪柯贾桓枇心柯嫉娜ㄏ蓿绦蛩谀柯既绻恍枰晌募ㄈ缟蒱tml的程序)不给予写入权限。因为是[wiki]虚拟主机[/wiki]平常对脚本安全没办法做到细諿wiki]氯[/wiki]胛⒌牡夭剑嗟闹荒茉诜椒ㄓ没Т咏疟咎嵘ㄏ蓿

TOP

[wiki]入侵检测[/wiki]和数据备份

入侵检测工作

作为服务器的日常管理,入侵检测是一项非常重要的工作,在平常的检测过程中,主要包含日常的服务器安全例行检查和遭到入侵时的入侵检查,也就是分为在入侵进行时的安全检查和在入侵前后的安全检查。系统的安全性遵循木桶原理,木桶原理指的是:一个木桶由许多块木板组成,如果组成木桶的这些木板长短不一,那么这个木桶的最大容量不取决于长的木板,而取决于最短的那块木板。应用到安全方面也就是说系统的安全性取决于系统中最脆弱的地方,这些地方是日常的安全检测的重点所在。

日常的安全检测

日常安全检测主要针对系统的安全性,工作主要按照以下步骤进行:

1.查看服务器状态:

打开进程管理器,查看服务器性能,观察CPU和内存使用状况。查看是否有CPU和内存占用过高等异常情况。

2.检查当前进程情况

切换“任务管理器”到进程,查找有无可疑的应用程序或后台进程在运行。用进程管理器查看进程时里面会有一项taskmgr,这个是进程管理器自身的进程。如果正在运行[wiki]windows[/wiki]更新会有一项wuauclt.exe进程。对于拿不准的进程或者说不知道是服务器上哪个应用程序开启的进程,可以在网络上搜索一下该进程名加以确定[进程[wiki]知识[/wiki]库:http://www.dofile.com/]。通常的后门如果有进程的话,一般会取一个与系统进程[wiki]类[/wiki]似的名称,如s[wiki]VC[/wiki]h0st.exe,此时要仔细辨别[通常迷惑手段是变字母o为数字0,变字母l为数字1]

3.检查系统帐号

打开[wiki]计算机[/wiki]管理,展开本地用户和组选项,查看组选项,查看administrators组是否添加有新帐篬wiki]牛[/wiki]觳槭欠裼衃wiki]克隆[/wiki]帐号。

4.查看当前端口开放情况

使用activeport,查看当前的端口连接情况,尤其是注意与外部连接着的端口情况,看是否有未经允许的端口与外界在[wiki]通信[/wiki]。如有,立即关闭该端口并记录下该端口对应的程序并记录,将该程序转移到其他目录下存放以便后来分析。打开计算机管理==》软件[wiki]环境[/wiki]==》正在运行任务[在此处可以查看进程管理器諿wiki]锌[/wiki]床坏降囊亟蘛,查看当前运行的程序,如果有不明程序,记录下该程序的位置,打开任务管理器结束该进程,对于采用了守护进程的后门等程序可尝试结束进程树,如仍然无法结束,在注册表中搜索该程序名,删除掉相关键值,切换到安全模式下删除掉相关的程序文件。

TOP

5.检查系统服务

运行services.msc,检查处于已启动状态的服务,查看是否有新加的未知服务并确定服务的用途。对于不清楚的服务打开该服务的属性,查看该服务所对应的可执行文件是什么,如果确定该文件是系统内的正常使用的文件,可粗略放过。查看是否有其他正常开放服务依存在该服务上,如果有,可以粗略的放过。如果无法确定该执行文件是否是系统内正常文件并且没有其他正常开放服务依存在该服务上,可暂时停止掉该服务,然后测试下各种应用是否正常。对于一些后门由于采用了hook系统API[wiki]技术[/wiki],添加的服务项目在服务管理器中是无法看到的,这时需要打开注册表中的HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices项进行查找,通过查看各服务的名称、对应的执行文件来确定是否是后门、[wiki]木马程序[/wiki]等。

6.查看相关日志

运行eventvwr.msc,粗略检查系统中的相关日志记录。在查看时在对应的日志记录上点右键选“属性”,在“筛选器”中设置一个日志筛选器,只选择错误、警告,查看日志的来源和具体描述信息。对于出现的错误如能在服务器常见故障排除中找到解决办法则依照该办法处理该问题,如果无解决办法则记录下该问题,详细记录下事件来源、ID号和具体描述信息,以便找到问题解决的办法。

7.检查系统文件

主要检查系统盘的exe和dll文件,建议系统安装完毕之后用dir *.exe /s >1.txt将C盘所有的exe文件列表保存下来,然后每次检查的时候再用该命令生成一份当时的列表,用fc比较两个文件,同样如此针对dll文件做相关检查。需要注意的是打补丁或者安装软件后重新生成一次原始列表。检查相关系统文件是否被替换或系统中是否被安装了木马后门等恶意程序。必要时可运行一次杀毒程序对系统盘进行一次扫描处理。

8.检查安全策略是否更改

打开本地连接的属性,查看“常规”中是否只勾选了“TCP/IP协议”,打开“TCP/IP”协议设置,点“高级”==》“选项”,查看“IP安全机制”是否是设定的IP策略,查看“TCP/IP”筛选允许的端口有没有被更改。打开“管理工具”=》“本地安全策略”,查看目前使用的IP安全策略是否发生更改。

9.检查目录权限

重点查看系统目录和重要的应用程序权限是否被更改。需要查看的目录有c:;c:winnt;

C:winntsystem32;c:winntsystem32inetsrv;c:winntsystem32inetsrvdata;c:documents and

Settings;然后再检查serv-u安装目录,查看这些目录的权限是否做过变动。检查system32下的一些重要文件是否更改过权限,包括:cmd,net,ftp,tftp,cacls等文件。

10.检查启动项

主要检查当前的开机自启动程序。可以使用AReporter来检查开机自启动的程序。

发现入侵时的应对措施

对于即时发现的入侵事件,以下情况针对系统已遭受到破坏情况下的处理,系统未遭受到破坏或暂时无法察觉到破坏先按照上述的检查步骤检查一遍后再酌情考虑以下措施。系统遭受到破坏后应立即采取以下措施:

视情况严重决定处理的方式,是通过远程处理还是通过实地处理。如情况严重建议采用实地处理。如采用实地处理,在发现入侵的第一[wiki]时间[/wiki]通知机房关闭服务器,待处理人员赶到机房时断开网线,再进入系统进行检查。如采用远程处理,如情况严重第一时间停止所有应用服务,更改IP策略为只允许远程管理端口进行连接然后重新启动服务器,重新启动之后再远程连接上去进行处理,重启前先用AReporter检查开机自启动的程序。然后再进行安全检查。

以下处理措施针对用户站点被入侵但未危及系统的情况,如果用户要求加强自己站点的安全性,可按如下方式加固用户站点的安全:

站点根目录----只给administrator读取权限,权限继承下去。

wwwroot ------给web用户读取、写入权限。高级里面有删除子文件夹和文件权限

logfiles------给system写入权限。

database------给web用户读取、写入权限。高级里面没有删除子文件夹和文件权限

如需要进一步修改,可针对用户站点的特性对于普通文件存放目录如html、js、图片文件夹只给读取权限,对asp等脚本文件给予上表中的权限。另外查看该用户站点对应的安全日志,找出漏洞原因,协助用户修补程序漏洞。

数据备份和数据恢复

数据备份工作大致如下:

1. 每月备份一次系统数据。

2. 备份系统后的两周单独备份一次应用程序数据,主要包括IIS、serv-u、数据库等数据。

3. 确保备份数据的安全,并分类放置这些数据备份。因基本上采用的都是全备份方法,对于数据的保留[wiki]周期[/wiki]可以只保留该次备份和上次备份数据两份即可。

数据恢复工作:

1.系统崩溃或遇到其他不可恢复系统正常状态情况时,先对上次系统备份后发生的一些更改事件如应用程序、安全策略等的设置做好备份,恢复完系统后再恢复这些更改。

2.应用程序等出错采用最近一次的备份数据恢复相关内容。

服务器性能优化

1 服务器性能优化

系统性能优化

整理系统空间:

删除系统备份文件,删除驱动备份,刪除不用的輸入法,刪除系统的帮助文件,卸载不常用的组件。最小化C盘文件。

性能优化:

删除多余的开机自动运行程序;减少预读取,减少进度条等待时间;让系统自动关闭停止响应的程序;禁用错误报告,但在发生严重错误时通知;关闭自动更新,改为手动更新计算机;启用硬件和DirectX糩wiki]铀[/wiki]伲唤霉鼗录伲唤门渲梅衿飨虻迹

TOP

服务器常见故障排除

1. ASP“请求的资源正在使用中”的解决办法:

该问题一般与杀毒软件有关,在服务器上安装个人版杀毒软件所致。出现这种错误可以通过卸载杀毒软件解决,也可尝试重新注册vbscript.dll和jscript.dll来解决,在命令行下运行:regsvr32 vbscript.dll 和regsvr32 jscript.dll即可。

2.ASP500错误解决办法:

首先确定该问题是否是单一站点存在还是所有站点存在,如果是单一站点存在该问题,则是[wiki]网站[/wiki]程序的问题,可打开该站点的错误提示,把IE的“显示友好HTTP错误”信息取消,查看具体错误信息,然后对应修改相关程序。如是所有站点存在该问题,并且HTML页面没有出现该问题,相关日志出现“服务器无法加载应用程序‘/LM/W3SVC/1/ROOT‘。错误是 ‘不支持此接口‘”。那十有八九是服务器系统中的ASP相关组件出现了问题,重新启动IIS服务,尝试是否可以解决该问题,无法解决重新启动系统尝试是否可解决该问题,如无法解决可重新修复一下ASP组件:

首先删除com组件中的关于IIS的三个东西,需要先将属性里的高级中“禁止删除”的勾选取消。

命令行中,输入“cd winnt\system32\inetsrv”字符串命令,单击回车键后,再执行“rundll32 wamreg.dll,CreateIISPackage”命令,接着再依次执行“regsvr32 asptxn.dll”命令、“iisreset”命令,最后重新启动一下计算机[wiki]操作系统[/wiki],这样IIS服务器就能重新正确响应ASP脚本页面了。

3. IIS出现105错误:

在系统日志中“服务器无法注册管理工具发现信息。管理工具可能无法看到此服务器” 来源:w3svc ID:105解决办法:

在网络连接中重新安装netbios协议即可,安装完成之后取消掉勾选。

4.MySQL服务无法启动【错误代码1067】的解决方法

启动MySQL服务时都会在中途报错!内容为:在 本地计算机 无法启动MySQL服务 错误1067:进程意外中止。

解决方法:查找Windows目录下的my.ini文件,编辑内容(如果没有该文件,则新建一个),至少包含

basedir,datadir这两个基本的配置。

[mysqld]

# set basedir to installation path, e.g., c:/mysql

# 设置为MYSQL的安装目录

basedir=D:/www/WebServer/MySQL

# set datadir to location of data directory,

# e.g., c:/mysql/data or d:/mydata/data

# 设置为MYSQL的数据目录

datadir=D:/www/WebServer/MySQL/data

注意,我在更改系统的temp目录之后没有对更改后的目录给予system用户的权限也出现过该问题。

5.DllHotst进程消耗cpu 100%的问题

服务器正常CPU消耗应该在75%以下,而且CPU消耗应该是上下起伏的,出现这种问题的服务器,CPU会突然一直处100%的水平,而且不会下降。

查看任务管理器,可以发现是DLLHOST.EXE消耗了所有的CPU空闲时间,管理员在这种情况下,只好重新启动IIS服务,奇怪的是,重新启动IIS服务后一切正常,但可能过了一段时间后,问题又再次出现了。

直接原因:

有一个或多个ACCESS数据库在多次读写过程中损坏, MDAC系统在写入这个损坏的ACCESS文件时,ASP线程处于BLOCK状态,结果其他线程只能等待,IIS被死锁了,全部的CPU时间都消耗在DLLHOST中。

解决办法:

把数据库下载到本地,然后用ACCESS打开,进行修复操作。再上传到网站。如果还不行,只有新建一个ACCESS数据库,再从原来的数据库中导入所有表和记录。然后把新数据库上传到服务器上。

6.Windows installer出错:

在安装软件的时候出现“不能访问windows installer 服务。可能你在安全模式下运行 windows ,或者windows installer 没有正确的安装。请和你的支持人员联系以获得帮助” 如果试图重新安装InstMsiW.exe,提示:“指定的服务已存在”。

解决办法:

关于installer的错误,可能还有其他错误提示,可尝试以下解决办法:

首先确认是否是权限方面的问题,提示信息会提供相关信息,如果是权限问题,给予winnt目录everyone权限即可[安装完把权限改回来即可]。如果提示的是上述信息,可以尝试以下解决方法:运行“msiexec /unregserver”卸载Windows Installer服务,如果无法卸载可使用SRVINSTW进行卸载,然后下载windows installer的安装程序[地址:http://www.newhua.com/cfan/200410/instmsiw.exe],用winrar解压该文件,在解压缩出来的文件夹里面找到msi.inf文件,右键单击选择“安装”,重新启动系统后运行“msiexec /regserver”重新注册Windows Installer服务。

TOP

服务器管理

服务器日常管理安排

服务器管理工作必须规范严谨,尤其在不是只有一位管理员的时候,日常管理工作包括:

1.服务器的定时重启。每台服务器保证每周重新启动一次。重新启动之后要进行复查,确认服务器已经启动了,确认服务器上的各项服务均恢复正常。对于没有启动起来或服务未能及时恢复的情况要采取相应措施。前者可请求托管商的相关工作人员帮忙手工重新启动,必要时可要求让连接上[wiki]显示器[/wiki]确认是否已启动起来;后者需要远程登陆上服务器进行原因查找并根据原因尝试恢复服务。

2.服务器的安全、性能检查,每服务器至少保证每周登陆两次粗略检查两次。每次检查的结果要求进行登记在册。如需要使用一些工具进行检查,可直接在e:tools中查找到相关工具。对于临时需要从网络上找的工具,首先将IE的安全级别调整到高,然后在网络上进行查找,不要去任何不明站点下载,尽量选择如华军、天空等大型网站进行下载,下载后确保当前杀毒软件已升级到最新版本,升级完毕后对下载的软件进行一次杀毒,确认正常后方能使用。对于下载的新工具对以后维护需要使用的话,将该工具保存到e:tools下,并在该目录中的readme.txt文件中做好相应记录,记录该工具的名称,功能,使用方法。并且在该文件夹中的rar文件夹中保留一份该工具的winrar压缩文件备份,设置解压密码。

3.服务器的数据备份工作,每服务器至少保证每月备份一次系统数据,系统备份采用ghost方式,对于ghost文件固定存放在e:ghost文件目录下,文件名以备份的日期命名,如0824.gho,每服务器至少保证每两周备份一次应用程序数据,每服务器至少保证每月备份一次用户数据,备份的数据固定存放在e:databak文件夹,针对各种数据再建立对应的子文件夹,如serv-u用户数据放在该文件夹下的servu文件夹下,iis站点数据存放在该文件夹下的iis文件夹下。

4.服务器的监控工作,每天正常工作期间必须保证监视所有服务器状态,一旦发现服务停止要及时采取相应措施。对于发现服务停止,首先检查该服务器上同类型的服务是否中断,如所有同类型的服务都已中断及时登陆服务器查看相关原因并针对该原因尝试重新开启对应服务。

5.服务器的相关日志操作,每服务器保证每月对相关日志进行一次清理,清理前对应的各项日志如应用程序日志、安全日志、系统日志等都应选择“保存日志”。所有的日志文件统一保存在e:logs下,应用程序日志保存在e:logsapp中,系统程序日志保存在e:logssys中,安全日志保存在e:logssec中。对于另外其他一些应用程序的日志,也按照这个方式进行处理,如ftp的日志保存在e:logsftp中。所有的备份日志文件都以备份的日期命名,如20050824.evt。对于不是单文件形式的日志,在对应的记录位置下建立一个以日期命名的文件夹,将这些文件存放在该文件夹中。

6.服务器的补丁修补、应用程序更新工作,对于新出的漏洞补丁,应用程序方面的安全更新一定要在发现的第一时间给每服务器打上应用程序的补丁。

7.服务器的隐患检查工作,主要包括安全隐患、性能等方面。每服务器必须保证每月重点的单独检查一次。每次的检查结果必须做好记录。

8.不定时的相关工作,每服务器由于应用软件更改或其他某原因需要安装新的应用程序或卸载应用程序等操作必须知会所有管理员。

9.定期的管理密码更改工作,每服务器保证至少每两个月更改一次密码,对于SQL服务器由于如果SQL采用混合验证更改系统管理员密码会影响数据库的使用则不予修改。

相关建议:对每服务器设立一个服务器管理记载,管理员每次登陆系统都应该在此中进行详细的记录,共需要记录以下几项:登入时间,退出时间,登入时服务器状态[包含不明进砙wiki]碳[/wiki]锹迹丝诹幼刺低痴屎抛刺诖

TOP

发新话题