WEB+FTP+Email服务器安全配置手册作者:阿里西西2006-8-11目录第一章:硬件环境第二章:软件环境第三章:系统端口安全配置第四章:系统帐户及安全策略配置第五章:IIS和WEB站点文件夹权限配置第六章:FTP服务器安全权限配置第七章:Email服务器安全权限配置第八章:远程管理软件配置第九章:其它安全配置建议第十章:篇后语一、硬件环境服务器采用1U规格的机架式托管主机,大概配置为Nocona2.8G/1G DDR2/160G*2SATA 硬盘/双网卡/光驱软驱/3*USB2.0。
二、软件环境操作系统:Windows Server 2003 Enterprise Edition sp1WEB系统:Win操作系统自带IIS6,支持.NET邮件系统:MDaemon 8.02英文版FTP服务器系统:Serv-U 6.0.2汉化版防火墙: BlackICE Server Protection,中文名:黑冰杀毒软件:NOD32 2.5远程管理控件:Symantec pcAnywhere11.5+Win系统自带的MSTSC数据库:MSSQL2000企业版相关支持组件:JMail 4.4专业版,带POP3接口;ASPJPEG图片组件相关软件:X-SCAN安全检测扫描软件;ACCESS;EditPlus[相关说明]*考虑服务器数据安全,把160G*2硬盘做成了阵列,实际可用容易也就只有一百多G了。
*硬盘分区均为NTFS分区;NTFS比FAT分区多了安全控制功能,可以对不同的文件夹设置不同的访问权限,安全性增强。
操作系统安装完后,第一时间安装NOD32杀毒软件,装完后在线更新病毒库,接着在线Update操作系统安全补丁。
*安装完系统更新后,运行X-SCAN进行安全扫描,扫描完后查看安全报告,根据安全报告做出相应的安全策略调整即可。
*出于安全考虑把MSTSC远程桌面的默认端口进行更改。
三、系统端口安全配置下面先是介绍关于端口的一些基础知识,主要是便于我们下一步的安全配置打下基础,如果你对端口方面已经有较深了解可以略过这一步。
端口是计算机和外部网络相连的逻辑接口,也是计算机的第一道屏障,端口配置正确与否直接影响到主机的安全,一般来说,仅打开你需要使用的端口会比较安全,配置的方法是在网卡属性-TCP/IP-高级-选项-TCP/IP筛选中启用TCP/IP筛选。
下面先介绍一下端口的基础知识。
在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。
二是逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。
(一)按端口号分布划分:(1)知名端口(Well-Known Ports)知名端口即众所周知的端口号,范围从0到1023,这些端口号一般固定分配给一些服务。
比如21端口分配给FTP服务,25端口分配给SMTP(简单邮件传输协议)服务,80端口分配给HTTP服务,135端口分配给RPC(远程过程调用)服务等等。
(2)动态端口(Dynamic Ports)动态端口的范围从1024到65535,这些端口号一般不固定分配给某个服务,也就是说许多服务都可以使用这些端口。
只要运行的程序向系统提出访问网络的申请,那么系统就可以从这些端口号中分配一个供该程序使用。
比如1024端口就是分配给第一个向系统发出申请的程序。
在关闭程序进程后,就会释放所占用的端口号。
不过,动态端口也常常被病毒木马程序所利用,如冰河默认连接端口是7626、WAY 2.4是8011、Netspy 3.0是7306、YAI病毒是1024等等。
(二)按协议类型划分:可以分为TCP、UDP、IP和ICMP(Internet控制消息协议)等端口。
下面主要介绍TCP和UDP端口。
(1)TCP端口TCP端口,即传输控制协议端口,需要在客户端和服务器之间建立连接,这样可以提供可靠的数据传输。
常见的包括FTP服务的21端口,Telnet服务的23端口,SMTP服务的25端口,以及HTTP服务的80端口等等。
(2)UDP端口UDP端口,即用户数据包协议端口,无需在客户端和服务器之间建立连接,安全性得不到保障。
常见的有DNS服务的53端口,SNMP(简单网络管理协议)服务的161端口,QQ使用的8000和4000端口等等。
介绍完了有关端口的基础知识,下面我们就开始进行服务器的端口安全配置。
在一般的WEB+Email服务器上,推荐同时使用PcanyWhere和终端服务进行远程控制管理,基于安全考虑把终端服务3389端口修改成6868端口,方法如下:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\Wds\Repwd\Tds\Tcp, 找到PortNumber项,双击选择十进制,输入你要改成的端口即可,这里我们输入6868。
再找到键值:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\Win Stations,在右侧窗口找到PortNumber并按上面的方法输入6868,设置成新的端口就可以了。
这样,在用MSTSC访问远程桌面时,IP或网址后加上:6868即端口号就可以了。
如图(1):图(1):远程桌面连接端口接着根据要开放的服务,去设置TCP/IP筛选。
要查看端口使用状况,可以使用Netstat在命令行状态下查看,依次点击“开始→运行”,键入“cmd”并回车,打开命令提示符窗口。
在命令提示符状态下键入“netstat -a -n”,按下回车键后就可以看到以数字形式显示的TCP和UDP连接的端口号及状态。
我们根据服务器上端口的使用情况在TCP/IP筛选设置我们需要开放的端口,右击网上邻居属性-->右击本地连接属性-->(双击TCP/IP) -->高级-->选项-->属性启用TCP/IP筛选,如图(2):图(2):本地连接属性1图(3):本地连接属性2图(4):本地连接属性3在TCP端口筛选只允许21,25,110,80,1433,3000,5631,6868,8735,10001,10002,10003,10004,10005等相关必须使用的端口(请根据你的实际情况进行设定);TCP/IP端口里面的都是几个常有的知名端口,10001-10005是设置Serv-U的PASV模式使用的端口,3000是MDaemon默认的WEB登陆端口,6868 图(5): TCP端口筛选是自定义修改的MSTSC远程桌面端口,当然也可以使用别的。
IP协议和UDP端口根据您的需要做出相应配置,本人未仔细研究过,请根据你的实际应用进行筛选。
接着,我们要在本地连接属性里面,卸载所有的其他协议,只留下Internet协议(TCP/IP),把默认的共享和打印机卸载掉。
如图(6):图(6): 删除共享和打印机共享然后,再双击Internet协议(TCP/IP)进入高级选项窗口,选择WINS选项卡,选中禁止TCP/IP上的NetBIOS项,可有效防止他人从网络NetBIOS协议获取计算机相关信息。
如图(7):图(7):禁用NetBIOS四、系统帐户及安全策略配置右击桌面我的电脑--->管理--->本地用户与组,进行系统用户帐户管理,如图(8):图(8): 本地用户与组把administrator帐号改成较为复杂点的名称,例如AliStudioAdministrator,并赋予强类型组合密码(数字+字母+符号组合)如Pass1R3&6gG,口令必须定期更改(建议至少两周该一次),且最好记在心里,除此以外不要在任何地方做记录;取消所有除管理员root外所有用户属性中的远程控制->启用远程控制以及终端服务配置文件->允许登陆到终端服务器。
另外,经常检查管理工具的事件查看器,如果在日志审核中发现某个帐号被连续尝试,则必须立刻更改此帐号和口令;接着禁用或更名Guest用户帐号,并将它从Guest组删掉。
同时可以新建一个没有任何权限的Administrator用户并赋予长串密码,用以迷惑试图穷举破解管理员密码的菜鸟黑客:)。
除过Administrator外,有必要再增加一个属于管理员组的帐号;最好再新增一个管理员组的帐号,一方面防止忘记其中一个帐号口令,还能有个备用帐号;同时,如果一旦黑客攻破其一个管理帐号并更改口令,我们还有机会重新在短期内取得控制权做出相应处理。
接着配置相关的安全策略,打开管理工具中的本地安全策略设置的安全选项,设置登陆时不显示上次登陆帐号,如图(9):图(9): 本地安全策略在帐户锁定策略中将锁定阈值设置为三次无效登陆即锁定,锁定时长为30分钟。
如图(10):图(10): 帐户锁定策略锁定时长为30分钟,如图(11):图(11): 锁定时长打开本地安全策略->审核策略中打开相应的审核,推荐的审核是:账户管理成功失败;登录事件成功失败;对象访问失败;策略更改成功失败;特权使用失败;系统事件成功失败;目录服务访问失败;账户登录事件成功失败。
如图(12):图(12): 审核策略接着,删除系统默认的共享,修改注册表的方法:运行Regedit,然后修改注册表在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Para meters下增加一个键:Name: AutoShareServer ; Type: REG_DWORD ;value: 0重新启动后默认的磁盘分区共享将会去掉,但IPC共享仍存在,需每次重启后手工删除。
接着再通过修改注册表,禁止IPC空连接。
黑客通常可以利用net use命令建立空连接入侵服务器,还有net view,nbtstat这些都是基于空连接的,禁止空连接就能较好的杜绝这一类安全隐患发生。
我们打开注册表,找到以下项:Local_Machine/System/CurrentControlSet/Control/LSA-RestrictAnonymous 把这个值改成”1”即可。
最后,我们还要禁用不必要的系统服务,提高安全性和系统效率。
打开系统管理工具的[服务],如图(13):图(13): 系统服务可停用的服务列表如下(本操作可能会影响你的计算中相关应用程序的正常使用,请检查没有与下列服务相依赖的应用程序。
):Computer Browser 维护网络上计算机的最新列表以及提供这个列表Task scheduler 允许程序在指定时间运行Routing and Remote Access 在局域网以及广域网环境中为企业提供路由服务Removable storage 管理可移动媒体、驱动程序和库Remote Registry Service 允许远程注册表操作Print Spooler 将文件加载到内存中以便以后打印。