服务器安全策略有哪些?
一、修改windows默认的远程端口
10年积累的成都网站制作、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有砚山免费网站建设让你可以放心的选择与我们合作。
也许有高手认为自己做的挺安全的,就算是默认端口也不用被入侵以及被破密。其实修改默认的远程端口一方面是防止入侵,另外一方面也是防止被扫描影响系统的稳定。
有了解过扫描3389软件的人都知道,一般的攻击者都是扫描3389端口的,所以改成其它的端口可以防止被扫描到您的主机。为什么说另外一方面也是防止被扫描3389端口影响到系统的稳定呢?如果您的服务器默认是使用3389端口,扫描软件就会强力尝试密码字典里的密码,与您的主机建议很多的连接,占用系统里的资源导致服务器出现卡的现象。所以修改默认的远程端口是有几个好处的,希望大家重视。
二、修改windows默认的用户名
我们做安全也是针对攻击的行为而制作相对的策略,攻击的人尝试密码破解的时候,都是使用默认的用户名administrator,当你修改了用户名之后,它猜不出您的用户名,即使密码尝试上千万次都不会成功的,如果要使用用户名字典再加下密码字典,我估计攻击者就没有那个心思了,而且也不会一时间破密到您的用户名。所以修改用户名就会减低被入侵的可能。
那么修改成什么样的用户名才是比较安全呢?个人建议使用中文再加上数字再上字母这样的用户名就非常强大了。例如: 非诚勿扰ADsp0973
三、使用复杂的密码
从扫描以及破解的软件看,都是使用简单的常用的密码进行破解的,例如1q2w3e4r5t或者123456或者12345qwert等简单的组合密码,所以使用这些密码是非常不安全的。我个人就建议避免使用简单的密码防止被破解。
建议使用的密码里包含 大字字母+小字字母+数字+特殊字符。 长度至少要12以上这样会好一些。
Windows 服务器安全设置的方法教程
阿江的Windows 2000服务器安全设置教程
前言
其实,在服务器的安全设置方面,我虽然有一些经验,但是还谈不上有研究,所以我写这篇文章的时候心里很不踏实,总害怕说错了会误了别人的事。
本文更侧重于防止ASP漏洞攻击,所以服务器防黑等方面的讲解可能略嫌少了点。
基本的服务器安全设置
安装补丁
安装好操作系统之后,最好能在托管之前就完成补丁的安装,配置好网络后,如果是2000则确定安装上了SP4,如果是2003,则最好安装上SP1,然后点击开始→Windows Update,安装所有的关键更新。
安装杀毒软件
虽然杀毒软件有时候不能解决问题,但是杀毒软件避免了很多问题。我一直在用诺顿2004,据说2005可以杀木马,不过我没试过。还有人用瑞星,瑞星是确定可以杀木马的。更多的人说卡巴司机好,不过我没用过。
不要指望杀毒软件杀掉所有的木马,因为ASP木马的特征是可以通过一定手段来避开杀毒软件的查杀。
设置端口保护和防火墙、删除默认共享
都是服务器防黑的措施,即使你的服务器上没有IIS,这些安全措施都最好做上。这是阿江的盲区,大概知道屏蔽端口用本地安全策略,不过这方面的东西网上攻略很多,大家可以擞出来看看,晚些时候我或者会复制一些到我的网站上。
权限设置
阿江感觉这是防止ASP漏洞攻击的关键所在,优秀的权限设置可以将危害减少在一个IIS站点甚至一个虚拟目录里。我这里讲一下原理和设置思路,聪明的朋友应该看完这个就能解决问题了。
权限设置的原理
WINDOWS用户,在WINNT系统中大多数时候把权限按用户(组)来划分。在【开始→程序→管理工具→计算机管理→本地用户和组】管理系统用户和用户组。
NTFS权限设置,请记住分区的时候把所有的硬盘都分为NTFS分区,然后我们可以确定每个分区对每个用户开放的权限。【文件(夹)上右键→属性→安全】在这里管理NTFS文件(夹)权限。
IIS匿名用户,每个IIS站点或者虚拟目录,都可以设置一个匿名访问用户(现在暂且把它叫“IIS匿名用户),当用户访问你的网站的.ASP文件的时候,这个.ASP文件所具有的权限,就是这个“IIS匿名用户所具有的权限。
权限设置的思路
要为每个独立的要保护的个体(比如一个网站或者一个虚拟目录)创建一个系统用户,让这个站点在系统中具有惟一的可以设置权限的身份。
在IIS的【站点属性或者虚拟目录属性→目录安全性→匿名访问和验证控制→编辑→匿名访问→编辑】填写刚刚创建的那个用户名。
设置所有的分区禁止这个用户访问,而刚才这个站点的主目录对应的那个文件夹设置允许这个用户访问(要去掉继承父权限,并且要加上超管组和SYSTEM组)。
这样设置了之后,这个站点里的ASP程序就只有当前这个文件夹的权限了,从探针上看,所有的硬盘都是红叉叉。
我的设置方法
我是先创建一个用户组,以后所有的站点的用户都建在这个组里,然后设置这个组在各个分区没病权限。然后再设置各个IIS用户在各在的文件夹里的权限。
因为比较多,所以我很不想写,其实知道了上面的原理,大多数人都应该懂了,除非不知道怎么添加系统用户和组,不知道怎么设置文件夹权限,不知道IIS站点属性在那里。真的有那样的人,你也不要着急,要沉住气慢慢来,具体的方法其实自己也能摸索出来的,我就是这样。当然,如果我有空,我会写我的具体设置方法,很傲能还会配上图片。
改名或卸载不安全组件
不安全组件不惊人
我的在阿江探针1.9里加入了不安全组件检测功能(其实这是参考7i24的代码写的,只是把界面改的友好了一点,检测方法和他是基本一样的),这个功能让很多站长吃惊不小,因为他发现他的服务器支持很多不安全组件。
其实,只要做好了上面的权限设置,那么FSO、XML、strem都不再是不安全组件了,因为他们都没有跨出自己的文件夹或者站点的权限。那个欢乐时光更不用怕,有杀毒软件在还怕什么时光啊。
最危险的组件是WSH和Shell,因为它可以运行你硬盘里的EXE等程序,比如它可以运行提升程序来提升SERV-U权限甚至用SERVU来运行更高权限的系统程序。
卸载最不安全的组件
最简单的办法是直接卸载后删除相应的程序文件。将下面的代码保存为一个.BAT文件,
regsvr32/u C:WINNTSystem32wshom.ocx
del C:WINNTSystem32wshom.ocx
regsvr32/u C:WINNTsystem32shell32.dll
del C:WINNTsystem32shell32.dll
然后运行一下,WScript.Shell, Shell.application, WScript.Network就会被卸载了。可能会提示无法删除文件,不用管它,重启一下服务器,你会发现这三个都提示“×安全了。
改名不安全组件
需要注意的是组件的名称和Clsid都要改,并且要改彻底了。下面以Shell.application为例来介绍方法。
打开注册表编辑器【开始→运行→regedit回车】,然后【编辑→查找→填写Shell.application→查找下一个】,用这个方法能找到两个注册表项:“{13709620-C279-11CE-A49E-444553540000}和“Shell.application。为了确保万无一失,把这两个注册表项导出来,保存为 .reg 文件。
比如我们想做这样的更改
13709620-C279-11CE-A49E-444553540000 改名为 13709620-C279-11CE-A49E-444553540001
Shell.application 改名为 Shell.application_ajiang
那么,就把刚才导出的.reg文件里的内容按上面的对应关系替换掉,然后把修改好的.reg文件导入到注册表中(双击即可),导入了改名后的注册表项之后,别忘记了删除原有的`那两个项目。这里需要注意一点,Clsid中只能是十个数字和ABCDEF六个字母。
下面是我修改后的代码(两个文件我合到一起了):
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}]
@="Shell Automation Service"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}InProcServer32]
@="C:WINNTsystem32shell32.dll"
"ThreadingModel"="Apartment"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}ProgID]
@="Shell.Application_ajiang.1"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}TypeLib]
@="{50a7e9b0-70ef-11d1-b75a-00a0c90564fe}"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}Version]
@="1.1"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}VersionIndependentProgID]
@="Shell.Application_ajiang"
[HKEY_CLASSES_ROOTShell.Application_ajiang]
@="Shell Automation Service"
[HKEY_CLASSES_ROOTShell.Application_ajiangCLSID]
@="{13709620-C279-11CE-A49E-444553540001}"
[HKEY_CLASSES_ROOTShell.Application_ajiangCurVer]
@="Shell.Application_ajiang.1"
你可以把这个保存为一个.reg文件运行试一下,但是可别就此了事,因为万一黑客也看了我的这篇文章,他会试验我改出来的这个名字的。
防止列出用户组和系统进程
我在阿江ASP探针1.9中结合7i24的方法利用getobject("WINNT")获得了系统用户和系统进程的列表,这个列表可能会被黑客利用,我们应当隐藏起来,方法是:
【开始→程序→管理工具→服务】,找到Workstation,停止它,禁用它。
防止Serv-U权限提升
其实,注销了Shell组件之后,侵入者运行提升工具的可能性就很小了,但是prel等别的脚本语言也有shell能力,为防万一,还是设置一下为好。
用Ultraedit打开ServUDaemon.exe查找Ascii:LocalAdministrator,和#l@$ak#.lk;0@P,修改成等长度的其它字符就可以了,ServUAdmin.exe也一样处理。
另外注意设置Serv-U所在的文件夹的权限,不要让IIS匿名用户有读取的权限,否则人家下走你修改过的文件,照样可以分析出你的管理员名和密码。
利用ASP漏洞攻击的常见方法及防范
一般情况下,黑客总是瞄准论坛等程序,因为这些程序都有上传功能,他们很容易的就可以上传ASP木马,即使设置了权限,木马也可以控制当前站点的所有文件了。另外,有了木马就然后用木马上传提升工具来获得更高的权限,我们关闭shell组件的目的很大程度上就是为了防止攻击者运行提升工具。
如果论坛管理员关闭了上传功能,则黑客会想办法获得超管密码,比如,如果你用动网论坛并且数据库忘记了改名,人家就可以直接下载你的数据库了,然后距离找到论坛管理员密码就不远了。
作为管理员,我们首先要检查我们的ASP程序,做好必要的设置,防止网站被黑客进入。另外就是防止攻击者使用一个被黑的网站来控制整个服务器,因为如果你的服务器上还为朋友开了站点,你可能无法确定你的朋友会把他上传的论坛做好安全设置。这就用到了前面所说的那一大堆东西,做了那些权限设置和防提升之后,黑客就算是进入了一个站点,也无法破坏这个网站以外的东西。
Linux 服务器安全策略配置
修改/etc/login.defs文件,控制密码的有效期
chage -l 用户名
控制密码复杂度,需已安装pam_cracklib,centos已默认安装
修改/etc/etc/pam.d/system-auth文件,添加如下语句,需放置在最前面,否则可能不生效
参数说明
Linux登录失败
1 修改/etc/hosts.allow文件,增加允许通过SSH连接的客户端IP
2 修改/etc/hosts.deny文件,增加禁止通过SSH连接的客户端IP
3 重启sshd服务和xinetd(可选)服务,使之生效
如果hosts.allow和hosts.deny文件均包含同一ip,则以hosts.all文件为准,如果只是单独配置了hosts.all文件,并没有在hosts.deny文件禁止,依然不生效
web服务器安全设置
Web服务器攻击常利用Web服务器软件和配置中的漏洞,web服务器安全也是我们现在很多人关注的一点,那么你知道web服务器安全设置吗?下面是我整理的一些关于web服务器安全设置的相关资料,供你参考。
web服务器安全设置一、IIS的相关设置
删除默认建立的站点的虚拟目录,停止默认web站点,删除对应的文件目录c:inetpub,配置所有站点的公共设置,设置好相关的连接数限制, 带宽设置以及性能设置等其他设置。配置应用程序映射,删除所有不必要的应用程序扩展,只保留asp,php,cgi,pl,aspx应用程序扩展。对于php和cgi,推荐使用isapi方式解析,用exe解析对安全和性能有所影响。用户程序调试设置发送文本错误信息给客户。
对于数据库,尽量采用mdb后缀,不需要更改为asp,可在IIS中设置一个mdb的扩展映射,将这个映射使用一个无关的dll文件如C:WINNTsystem32inetsrvssinc.dll来防止数据库被下载。设置IIS的日志保存目录,调整日志记录信息。设置为发送文本错误信息。修改403错误页面,将其转向到其他页,可防止一些扫描器的探测。另外为隐藏系统信息,防止telnet到80端口所泄露的系统版本信息可修改IIS的banner信息,可以使用winhex手工修改或者使用相关软件如banneredit修改。
对于用户站点所在的目录,在此说明一下,用户的FTP根目录下对应三个文件佳,wwwroot,database,logfiles,分别存放站点文件,数据库备份和该站点的日志。如果一旦发生入侵事件可对该用户站点所在目录设置具体的权限,图片所在的目录只给予列目录的权限,程序所在目录如果不需要生成文件(如生成html的程序)不给予写入权限。因为是虚拟主机平常对脚本安全没办法做到细致入微的地步。
方法
用户从脚本提升权限:
web服务器安全设置二、ASP的安全设置
设置过权限和服务之后,防范asp木马还需要做以下工作,在cmd窗口运行以下命令:
regsvr32/u C:\WINNT\System32\wshom.ocx
del C:\WINNT\System32\wshom.ocx
regsvr32/u C:\WINNT\system32\shell32.dll
del C:\WINNT\system32\shell32.dll
即可将WScript.Shell, Shell.application, WScript.Network组件卸载,可有效防止asp木马通过wscript或shell.application执行命令以及使用木马查看一些系统敏感信息。另法:可取消以上文件的users用户的权限,重新启动IIS即可生效。但不推荐该方法。
另外,对于FSO由于用户程序需要使用,服务器上可以不注销掉该组件,这里只提一下FSO的防范,但并不需要在自动开通空间的虚拟商服务器上使用,只适合于手工开通的站点。可以针对需要FSO和不需要FSO的站点设置两个组,对于需要FSO的用户组给予c:winntsystem32scrrun.dll文件的执行权限,不需要的不给权限。重新启动服务器即可生效。
对于这样的设置结合上面的权限设置,你会发现海阳木马已经在这里失去了作用!
web服务器安全设置三、PHP的安全设置
默认安装的php需要有以下几个注意的问题:
C:\winnt\php.ini只给予users读权限即可。在php.ini里需要做如下设置:
Safe_mode=on
register_globals = Off
allow_url_fopen = Off
display_errors = Off
magic_quotes_gpc = On [默认是on,但需检查一遍]
open_basedir =web目录
disable_functions =passthru,exec,shell_exec,system,phpinfo,get_cfg_var,popen,chmod
默认设置com.allow_dcom = true修改为false[修改前要取消掉前面的;]
web服务器安全设置四、MySQL安全设置
如果服务器上启用MySQL数据库,MySQL数据库需要注意的安全设置为:
删除mysql中的所有默认用户,只保留本地root帐户,为root用户加上一个复杂的密码。赋予普通用户updatedeletealertcreatedrop权限的时候,并限定到特定的数据库,尤其要避免普通客户拥有对mysql数据库操作的权限。检查mysql.user表,取消不必要用户的shutdown_priv,reload_priv,process_priv和File_priv权限,这些权限可能泄漏更多的服务器信息包括非mysql的 其它 信息出去。可以为mysql设置一个启动用户,该用户只对mysql目录有权限。设置安装目录的data数据库的权限(此目录存放了mysql数据库的数据信息)。对于mysql安装目录给users加上读取、列目录和执行权限。
Serv-u安全问题:
安装程序尽量采用最新版本,避免采用默认安装目录,设置好serv-u目录所在的权限,设置一个复杂的管理员密码。修改serv-u的banner信息,设置被动模式端口范围(4001—4003)在本地服务器中设置中做好相关安全设置:包括检查匿名密码,禁用反超时调度,拦截“FTP bounce”攻击和FXP,对于在30秒内连接超过3次的用户拦截10分钟。域中的设置为:要求复杂密码,目录只使用小写字母,高级中设置取消允许使用MDTM命令更改文件的日期。
更改serv-u的启动用户:在系统中新建一个用户,设置一个复杂点的密码,不属于任何组。将servu的安装目录给予该用户完全控制权限。建立一个FTP根目录,需要给予这个用户该目录完全控制权限,因为所有的ftp用户上传,删除,更改文件都是继承了该用户的权限,否则无法操 作文 件。另外需要给该目录以上的上级目录给该用户的读取权限,否则会在连接的时候出现530 Not logged in, home directory does not exist。比如在测试的时候ftp根目录为d:soft,必须给d盘该用户的读取权限,为了安全取消d盘其他文件夹的继承权限。而一般的使用默认的system启动就没有这些问题,因为system一般都拥有这些权限的。
web服务器安全设置五、数据库服务器的安全设置
对于专用的MSSQL数据库服务器,按照上文所讲的设置TCP/IP筛选和IP策略,对外只开放1433和5631端口。对于MSSQL首先需要为sa设置一个强壮的密码,使用混合身份验证,加强数据库日志的记录,审核数据库登陆事件的”成功和失败”.删除一些不需要的和危险的OLE自动存储过程(会造成 企业管理 器中部分功能不能使用),这些过程包括如下:
Sp_OAcreate Sp_OADestroy Sp_OAGetErrorInfo Sp_OAGetProperty
Sp_OAMethod Sp_OASetProperty Sp_OAStop
去掉不需要的注册表访问过程,包括有:
Xp_regaddmultistring Xp_regdeletekey Xp_regdeletevalue
Xp_regenumvalues Xp_regread Xp_regremovemultistring
Xp_regwrite
去掉其他系统存储过程,如果认为还有威胁,当然要小心drop这些过程,可以在测试机器上测试,保证正常的系统能完成工作,这些过程包括:
xp_cmdshell xp_dirtree xp_dropwebtask sp_addsrvrolemember
xp_makewebtask xp_runwebtask xp_subdirs sp_addlogin
sp_addextendedproc
在实例属性中选择TCP/IP协议的属性。选择隐藏 SQL Server 实例可防止对1434端口的探测,可修改默认使用的1433端口。除去数据库的guest账户把未经认可的使用者据之在外。 例外情况是master和 tempdb 数据库,因为对他们guest帐户是必需的。另外注意设置好各个数据库用户的权限,对于这些用户只给予所在数据库的一些权限。在程序中不要用sa用户去连接任何数据库。网络上有建议大家使用协议加密的,千万不要这么做,否则你只能重装MSSQL了。
分享题目:服务器基本安全配置策略 服务器的安全策略
文章URL:http://lswzjz.com/article/dogejij.html