服务器安全设置实践

一、硬盘分区与操作系统的安装

•硬盘分区
总的来讲在硬盘分区上面没什么值得深入剖析的地方,无非就是一个在分区前做好规划知道要去放些什么东西,
如果实在不知道。那就只一个硬盘只分一个区,分区要一次性完成,不要先分成FAT32再转成NTFS。一次性分成 NTFS格式,以我个人习惯,系统盘一般给12G。建议使用光盘启动完成分区过程,不要加载硬盘软件。

•系统安装
以下内容均以2003为例
安装过程也没什么多讲的,安装系统是一个以个人性格为参数的活动,我建议在安装路径上保持默认路径,好多文章上写什么安装路径要改成什么呀什么的,这是没必要的。路径保存在注册表里,怎么改都没用。在安装过程中就要选定你需要的服务,如一些DNS、DHCP没特别需要也就不要装了。在安装过程中网卡属性中可以只保留TCP/IP 这一项,同时禁用NETBOIS。安装完成后如果带宽条件允许可用系统自带在线升级

二、系统权限与安全配置

•系统权限设置与安全配置的实际操作:


系统设置网上有一句话是"最小的权限+最少的服务=最大的安全"。

•此句基本上是个人都看过,但我好像没有看到过一篇讲的比较详细稍具全面的文章

•下面就以我个人经验作一次教学尝试!

•最小的权限如何实现?

•首先是NTFS系统权限设置


在使用之前将每个硬盘根加上 Administrators 用户为全部权限(可选加入SYSTEM用户) ,删除其它用户,进入系统盘,权限如下:

•C:\WINDOWS
Administrators SYSTEM用户全部权限 Users 用户默认权限不作修改

•其它目录删除Everyone用户,切记C:\Documents and
Settings下All Users\Default User目录及其子目录


如C:\Documents and
Settings\All Users\Application Data 目录默认配置保留了Everyone用户权限


C:\WINDOWS 目录下面的权限也得注意

•如 C:\WINDOWS\PCHealth、C:\windows\Installer也是保留了Everyone权限.

•删除的几个目录

•删除C:\WINDOWS\Web\printers目录

•此目录的存在会造成IIS里加入一个.printers的扩展名,可溢出攻击

•默认IIS错误页面已基本上没多少人使用了。建议删除C:\WINDOWS\Help\iisHelp目录

•删除C:\WINDOWS\system32\inetsrv\iisadmpwd

•此目录为管理IIS密码之用,如一些因密码不同步造成500 错误的时候使用 OWA 或 Iisadmpwd 修改同步密码,但在这里可以删掉,

•下面讲到的设置将会杜绝因系统设置造成的密码不同步问题。

•Windows及sys32目录下的敏感exe文件权限设置

•打开C:\Windows 搜索

•at.exe;attrib.exe;arp.exe;atsvc.exe;cmd.exe;cacls.exe;cscript.exe;edlin.exe;format.com;ftp.exe;finger.exe;net.exe;netstat.exe;ping.exe;posix.exe;qbasic.exe;regsvr32.exe;regedit.exe;runonce.exe;route.exe;rsh.exe;syskey.exe;telnet.exe;tftp.exe;xcopy.exe;wscript.exe;

•修改权限,删除所有的用户只保存Administrators 和SYSTEM为所有权限

•端口以及一些服务的关闭

•你当然可以用手工一个个操作,但是这里我一般使用windows优化大师老版

•关闭445端口

•HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\netBT\Parameters
新建 "DWORD值"值名为 "SMBDeviceEnabled" 数据为默认值"0“

•禁止建立空连接

•HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
新建 "DWORD值"值名为 "RestrictAnonymous" 数据值为"1" [2003默认为1]

•禁止系统自动启动服务器共享

•HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
新建 "DWORD值"值名为 "AutoShareServer" 数据值为"0“

•禁止系统自动启动管理共享

•HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
新建 "DWORD值"值名为 "AutoShareWks" 数据值为"0“

•通过修改注册表防止小规模DDOS攻击

•HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建 "DWORD值"值名为 "SynAttackProtect" 数据值为"1"

•两个小设置

•禁止dump file的产生
dump文件在系统崩溃和蓝屏的时候是一份很有用的查找问题的资料。然而,它也能够给黑客提供一些敏感信息比如一些应用程序的密码等。控制面板>系统属性>高级>启动和故障恢复把 写入调试信息 改成无。

•关闭华医生Dr.Watson
在开始-运行中输入"drwtsn32",或者开始-程序-附件-系统工具-系统信息-工具-Dr Watson,调出系统里的华医生Dr.Watson ,只保留"转储全部线程上下文"选项,否则一旦程序出错,硬盘会读很久,并占用大量空间。如果以前有此情况,请查找user.dmp文件,删除后可节省几十MB空间。

•本地安全策略配置
开始 > 程序 > 管理工具 > 本地安全策略

•账户策略 > 密码策略 > 密码最短使用期限
改成0天[即密码不过期,上面我讲到不会造成IIS密码不同步]

•账户策略 > 账户锁定策略 >账户锁定阈值 5 次
账户锁定时间 10分钟 [个人推荐配置]

•本地策略 > 审核策略 >

•账户管理
成功 失败

•登录事件
成功 失败

•对象访问
失败

•策略更改
成功 失败

•特权使用
失败

•系统事件
成功 失败

•目录服务访问
失败

•账户登录事件
成功 失败

•本地策略 > 安全选项 > 清除虚拟内存页面文件 更改为"已启用"

•> 不显示上次的用户名 更改为"已启用"

•> 不需要按CTRL+ALT+DEL 更改为"已启用"

•> 不允许 SAM 账户的匿名枚举 更改为"已启用"

•> 不允许 SAM 账户和共享的匿名枚举 更改为"已启用"

•> 重命名来宾账户 更改成一个复杂的账户名

•> 重命名系统管理员账号 更改一个自己用的账号 [同时可建立一个无用户组的Administrat账户]

•组策略编辑器
运行 gpedit.msc 计算机配置 > 管理模板 > 系统 显示"关闭事件跟踪程序" 更改为已禁用

•删除不安全组件
WScript.Shell 、Shell.application 这两个组件一般一些ASP木马或一些恶意程序都会使用到。

•方案一:

•regsvr32
/u wshom.ocx 卸载WScript.Shell 组件
regsvr32 /u shell32.dll 卸载Shell.application 组件

•如果按照上面讲到的设置,可不必删除这两个文件

•方案二:

•删除注册表
HKEY_CLASSES_ROOT\CLSID\{72C24DD5-D70A-438B-8A42-98424B88AFB8} 对应 WScript.Shell
删除注册表 HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540000} 对应 Shell.application

•删除不安全组件
WScript.Shell 、Shell.application 这两个组件一般一些ASP木马或一些恶意程序都会使用到。

•方案一:

•regsvr32
/u wshom.ocx 卸载WScript.Shell 组件
regsvr32 /u shell32.dll 卸载Shell.application 组件

•如果按照上面讲到的设置,可不必删除这两个文件

•方案二:

•删除注册表
HKEY_CLASSES_ROOT\CLSID\{72C24DD5-D70A-438B-8A42-98424B88AFB8} 对应 WScript.Shell
删除注册表 HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540000} 对应 Shell.application

•用户和用户组:

•用户管理
建立另一个备用管理员账号,防止特殊情况发生。
安装有终端服务与SQL服务的服务器停用TsInternetUser, SQLDebugger这两个账号

•用户组说明

在将来要使用到的IIS中,IIS用户一般使用Guests组,也可以再重新建立一个独立的专供IIS使用的组,但要将这个组赋予C:\Windows 目录为读取权限[单一读取] 个人不建议使用单独目录,太小家子气。

其他一些设置

IIS里注意的几个点:

脚本扩展需要删除用不到的。

主目录 > 配置 > 调试 > 向客户端发送文本错误消息 关闭

网站安全性:

每个网站使用独立用户

非脚本权限的目录去掉脚本执行权限

ftp:用g6 ftp软件。

msSql安全:

Sql一些必要的危险存储要删除:

存储过程有安全问题,全部复制到"SQL查询分析器" 点击菜单上的--"查询"--"执行",就会将有安全问题的SQL过程删除

复制代码 代码如下:

use master

EXEC sp_dropextendedproc ‘xp_cmdshell‘

EXEC sp_dropextendedproc ‘Sp_OACreate‘

EXEC sp_dropextendedproc ‘Sp_OADestroy‘

EXEC sp_dropextendedproc ‘Sp_OAGetErrorInfo‘

EXEC sp_dropextendedproc ‘Sp_OAGetProperty‘

EXEC sp_dropextendedproc ‘Sp_OAMethod‘

EXEC sp_dropextendedproc ‘Sp_OASetProperty‘

EXEC sp_dropextendedproc ‘Sp_OAStop‘

EXEC sp_dropextendedproc ‘Xp_regaddmultistring‘

EXEC sp_dropextendedproc ‘Xp_regdeletekey‘

EXEC sp_dropextendedproc ‘Xp_regdeletevalue‘

EXEC sp_dropextendedproc ‘Xp_regenumvalues‘

EXEC sp_dropextendedproc ‘Xp_regread‘

EXEC sp_dropextendedproc ‘Xp_regremovemultistring‘

EXEC sp_dropextendedproc ‘Xp_regwrite‘

drop procedure sp_makewebtask

•Mssql降权

•mssql一般情况下(默认)是以本地系统权限启动的 这样赋予了mssql很大的权限

•容易对服务器安全造成威胁 比如 xp_cmdshell这个存储过程可以执行系统命令

•这里可以通过改变mssql的启动账户来达到降权的目的

•打开企业管理器 点 local   右键 属性 选安全性选项卡

•这里可以修改 mssql的启动账户 我们新建一个用户 命名为mssqlrun 然后再这里点下本账户

•默认是 系统帐户 然后用户名是 mssqlrun密码是 mssqlrun这个用户的密码 确定 少等下

•mssql自动重启(不是服务器重启)

•再变态一点 可以为服务器配置 mssql ssl

时间: 2024-10-13 02:01:14

服务器安全设置实践的相关文章

Nginx+Tomcat服务器负载均衡实践方案

1.    为何选择Nginx+Tomcat做负载均衡? 1.1. Nginx是什么? Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用.其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户

由浅入深SCF无服务器云函数实践

欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:陈杰,腾讯云架构平台部技术专家 近年来,互联网服务从一开始的物理服务器托管,虚拟机,容器,发展到现在的云函数,逐步无服务器化,如下表所示.程序员逐步聚焦于最核心的业务逻辑开发,解放了生产力,显著提升了服务上线效率. 云函数带来了真正的计算服务,如下表所示,类比腾讯云COS对象存储,SCF以函数为单位封装计算,按需调度执行,无须关心函数的自动扩缩容,故障容灾等,无任何闲置成本. 云函数给用户带来的价值主要4点: 简化架构:函数粒度的微服

【CentOS】CentOS Linux服务器安全设置

引言: 我们必须明白:最小的权限+最少的服务=最大的安全 所以,无论是配置任何服务器,我们都必须把不用的服务关闭.把系统权限设置到最小话,这样才能保证服务器最大的安全.下面是CentOS服务器安全设置,供大家参考.       系统运维  www.osyunwei.com  温馨提醒:qihang01原创内容版权所有,转载请注明出处及原文链接 http://wenku.baidu.com/link?url=KoXqwIPp76_QSaQRQPcSESFkpeWnGWZ1EaLX_NP5Kic7n

CentOS Linux服务器安全设置

一.注释掉系统不需要的用户和用户组注意:不建议直接删除,当你需要某个用户时,自己重新添加会很麻烦.   cp  /etc/passwd  /etc/passwdbak   #修改之前先备份   vi /etc/passwd  #编辑用户,在前面加上#注释掉此行 #adm:x:3:4:adm:/var/adm:/sbin/nologin#lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin#sync:x:5:0:sync:/sbin:/bin/sync#shutdown

同一个网段内所有服务器virtual_router_id设置相同的后果

/var/log/messages中一直报的错 one or more VIP associated with VRID mismatch actual MASTER advert bogus VRRP packet received on eth0 !!! VRRP_Instance(VI_1) ignoring received advertisment... ip address associated with VRID not present in received packet : 虚

支持高并发的IIS Web服务器常用设置

转一篇站长大人的文章 适用的IIS版本:IIS 7.0, IIS 7.5, IIS 8.0 适用的Windows版本:Windows Server 2008, Windows Server 2008 R2, Windows Server 2012 1.应用程序池(Application Pool)的设置:  General->Queue Length设置为65535(队列长度所支持的最大值) Process Model->Idle Time-out设置为0(不让应用程序池因为没有请求而回收)

win2003服务器安全设置教程

服务器安全设置 1.系统盘和站点放置盘必须设置为NTFS格式,方便设置权限. 2.系统盘和站点放置盘除administrators 和system的用户权限全部去除. 3.启用windows自带防火墙,只保留有用的端口,比如远程和Web.Ftp(3389.80.21)等等,有邮件服务器的还要打开25和130端口. 4.安装好SQL后进入目录搜索 xplog70 然后将找到的三个文件改名或者删除. 5.更改sa密码为你都不知道的超长密码,在任何情况下都不要用sa这个帐户. 6.改名系统默认帐户名并

高并发IIS Web服务器常用设置

支持高并发的IIS Web服务器常用设置 适用的IIS版本:IIS 7.0, IIS 7.5, IIS 8.0 适用的Windows版本:Windows Server 2008, Windows Server 2008 R2, Windows Server 2012 1.应用程序池(Application Pool)的设置:在IIS应用程序池高级设置中  General(常规)->Queue Length(对列长度)设置为65535(队列长度所支持的最大值) Process Model(进程模型

CentOS 服务器安全设置

我们必须明白:最小的权限+最少的服务=最大的安全.所以无论是配置任何服务器,我们都必须把不用的服务关闭.把系统权限设置到最小化,这样才能保证服务器最大的安全. 一.注释掉系统不需要的用户和用户组 注意:不建议直接删除,当你需要某个用户时,自己重新添加会很麻烦. cp  /etc/passwd  /etc/passwdbak   #修改之前先备份 vi /etc/passwd  #编辑用户,在前面加上#注释掉此行 #adm:x:3:4:adm:/var/adm:/sbin/nologin #lp: