windows SERVER2008/2012 安全设置要点
nanshan 2024-11-25 15:23 31 浏览 0 评论
1.更改默认administrator用户名,复杂密码
2.开启防火墙
3.安装杀毒软件
1)新做系统一定要先打上补丁
2)安装必要的杀毒软件
3)删除系统默认共享
4)修改本地策略——>安全选项
交互式登陆:不显示最后的用户名 启用
网络访问:不允许SAM 帐户和共享的匿名枚举 启用
网络访问: 不允许存储网络身份验证的凭据或 .NET Passports 启用
网络访问:可远程访问的注册表路径和子路径 全部删除
5)禁用不必要的服务
TCP/IP NetBIOS Helper、Server、 Distributed Link Tracking Client 、Print Spooler、Remote Registry、Workstation
6)禁用IPV6
server 2008 r2交互式登录: 不显示最后的用户名
其实最重要的就是开启防火墙+服务器安全狗(安全狗自带的一些功能基本上都设置的差不多了)+mysql(sqlserver)低权限运行基本上就差不多了。3389远程登录,一定要限制ip登录。
一、系统及程序
1、屏幕保护与电源
桌面右键--〉个性化--〉屏幕保护程序,屏幕保护程序 选择无,更改电源设置 选择高性能,选择关闭显示器的时间 关闭显示器 选 从不 保存修改
2、配置IIS7组件、FTP7、php 5.5.7、mysql 5.6.15、phpMyAdmin 4.1.8、phpwind 9.0、ISAPI_Rewrite环境。在这里我给大家可以推荐下阿里云的服务器一键环境配置,全自动安装设置很不错的。点击查看地址
二、系统安全配置
1、目录权限
除系统所在分区之外的所有分区都赋予Administrators和SYSTEM有完全控制权,之后再对其下的子目录作单独的目录权限
2、远程连接
我的电脑属性--〉远程设置--〉远程--〉只允许运行带网络超级身份验证的远程桌面的计算机连接,选择允许运行任意版本远程桌面的计算机连接(较不安全)。备注:方便多种版本Windows远程管理服务器。windows server 2008的远程桌面连接,与2003相比,引入了网络级身份验证(NLA,network level authentication),XP SP3不支持这种网络级的身份验证,vista跟win7支持。然而在XP系统中修改一下注册表,即可让XP SP3支持网络级身份验证。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa在右窗口中双击Security Pakeages,添加一项“tspkg”。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders,在右窗口中双击SecurityProviders,添加credssp.dll;请注意,在添加这项值时,一定要在原有的值后添加逗号后,别忘了要空一格(英文状态)。然后将XP系统重启一下即可。再查看一下,即可发现XP系统已经支持网络级身份验证
3、修改远程访问服务端口
更改远程连接端口方法,可用windows自带的计算器将10进制转为16进制。更改3389端口为8208,重启生效!
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]
"PortNumber"=dword:0002010
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"PortNumber"=dword:00002010
(1)在开始--运行菜单里,输入regedit,进入注册表编辑,按下面的路径进入修改端口的地方
(2)HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
(3)找到右侧的 "PortNumber",用十进制方式显示,默认为3389,改为(例如)6666端口
(4)HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp
(5)找到右侧的 "PortNumber",用十进制方式显示,默认为3389,改为同上的端口
(6)在控制面板--Windows 防火墙--高级设置--入站规则--新建规则
(7)选择端口--协议和端口--TCP/特定本地端口:同上的端口
(8)下一步,选择允许连接
(9)下一步,选择公用
(10)下一步,名称:远程桌面-新(TCP-In),描述:用于远程桌面服务的入站规则,以允许RDP通信。[TCP 同上的端口]
(11)删除远程桌面(TCP-In)规则
(12)重新启动计算机
4、配置本地连接
网络--〉属性--〉管理网络连接--〉本地连接,打开“本地连接”界面,选择“属性”,左键点击“Microsoft网络客户端”,再点击“卸载”,在弹出的对话框中“是”确认卸载。点击“Microsoft网络的文件和打印机共享”,再点击“卸载”,在弹出的对话框中选择“是”确认卸载。
解除Netbios和TCP/IP协议的绑定139端口:打开“本地连接”界面,选择“属性”,在弹出的“属性”框中双击“Internet协议版本(TCP/IPV4)”,点击“属性”,再点击“高级”—“WINS”,选择“禁用TCP/IP上的NETBIOS”,点击“确认”并关闭本地连接属性。
禁止默认共享:点击“开始”—“运行”,输入“Regedit”,打开注册表编辑器,打开注册表项“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters”,在右边的窗口中新建Dword值,名称设为AutoShareServer,值设为“0”。
关闭 445端口:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters,新建 Dword(32位)名称设为SMBDeviceEnabled 值设为“0”
5、共享和发现
右键“网络” 属性 网络和共享中心 共享和发现
关闭,网络共享,文件共享,公用文件共享,打印机共享,显示我正在共享的所有文件和文件夹,显示这台计算机上所有共享的网络文件夹
6、用防火墙限制Ping
网上自己查吧,ping还是经常需要用到的
7、防火墙的设置
控制面板→Windows防火墙设置→更改设置→例外,勾选FTP、HTTP、远程桌面服务 核心网络
HTTPS用不到可以不勾
3306:Mysql
1433:Mssql
8、禁用不需要的和危险的服务,以下列出服务都需要禁用。
控制面板 管理工具 服务
Distributed linktracking client 用于局域网更新连接信息
PrintSpooler 打印服务
Remote Registry 远程修改注册表
Server 计算机通过网络的文件、打印、和命名管道共享
TCP/IP NetBIOS Helper 提供
TCP/IP (NetBT) 服务上的
NetBIOS 和网络上客户端的
NetBIOS 名称解析的支持
Workstation 泄漏系统用户名列表 与Terminal Services Configuration 关联
Computer Browser 维护网络计算机更新 默认已经禁用
Net Logon 域控制器通道管理 默认已经手动
Remote Procedure Call (RPC) Locator RpcNs*远程过程调用 (RPC) 默认已经手动
删除服务sc delete MySql
9、安全设置-->本地策略-->安全选项
在运行中输入gpedit.msc回车,打开组策略编辑器,选择计算机配置-->Windows设置-->安全设置-->本地策略-->安全选项
交互式登陆:不显示最后的用户名 启用
网络访问:不允许SAM帐户的匿名枚举 启用 已经启用
网络访问:不允许SAM帐户和共享的匿名枚举 启用
网络访问:不允许储存网络身份验证的凭据 启用
网络访问:可匿名访问的共享 内容全部删除
网络访问:可匿名访问的命名管道 内容全部删除
网络访问:可远程访问的注册表路径 内容全部删除
网络访问:可远程访问的注册表路径和子路径 内容全部删除
帐户:重命名来宾帐户 这里可以更改guest帐号
帐户:重命名系统管理员帐户 这里可以更改Administrator帐号
10、安全设置-->账户策略-->账户锁定策略
在运行中输入gpedit.msc回车,打开组策略编辑器,选择计算机配置-->Windows设置-->安全设置-->账户策略-->账户锁定策略,将账户锁定阈值设为“三次登陆无效”,“锁定时间为30分钟”,“复位锁定计数设为30分钟”。
11、本地安全设置
选择计算机配置-->Windows设置-->安全设置-->本地策略-->用户权限分配
关闭系统:只有Administrators组、其它全部删除。
通过终端服务拒绝登陆:加入Guests组、IUSR_*****、IWAM_*****、NETWORK SERVICE、SQLDebugger
通过终端服务允许登陆:加入Administrators、Remote Desktop Users组,其他全部删除
12、更改Administrator,guest账户,新建一无任何权限的假Administrator账户
管理工具→计算机管理→系统工具→本地用户和组→用户
新建一个Administrator帐户作为陷阱帐户,设置超长密码,并去掉所有用户组
更改描述:管理计算机(域)的内置帐户
13、密码策略
选择计算机配置-->Windows设置-->安全设置-->密码策略
启动 密码必须符合复杂性要求
最短密码长度
14、禁用DCOM ("冲击波"病毒 RPC/DCOM 漏洞)
运行Dcomcnfg.exe。控制台根节点→组件服务→计算机→右键单击“我的电脑”→属性”→默认属性”选项卡→清除“在这台计算机上启用分布式 COM”复选框。
15、ASP漏洞
主要是卸载WScript.Shell 和 Shell.application 组件,是否删除看是否必要。
regsvr32/u C:\WINDOWS\System32\wshom.ocx
regsvr32/u C:\WINDOWS\system32\shell32.dll
删除可能权限不够
del C:\WINDOWS\System32\wshom.ocx
del C:\WINDOWS\system32\shell32.dll
如果确实要使用,或者也可以给它们改个名字。
WScript.Shell可以调用系统内核运行DOS基本命令
可以通过修改注册表,将此组件改名,来防止此类木马的危害。
HKEY_CLASSES_ROOT\WScript.Shell\及HKEY_CLASSES_ROOT\WScript.Shell.1\
改名为其它的名字,如:改为WScript.Shell_ChangeName 或 WScript.Shell.1_ChangeName
自己以后调用的时候使用这个就可以正常调用此组件了
也要将clsid值也改一下
HKEY_CLASSES_ROOT\WScript.Shell\CLSID\项目的值
HKEY_CLASSES_ROOT\WScript.Shell.1\CLSID\项目的值
也可以将其删除,来防止此类木马的危害。
Shell.Application可以调用系统内核运行DOS基本命令
可以通过修改注册表,将此组件改名,来防止此类木马的危害。
HKEY_CLASSES_ROOT\Shell.Application\及HKEY_CLASSES_ROOT\Shell.Application.1\改名为其它的名字,如:改为Shell.Application_ChangeName 或 Shell.Application.1_ChangeName
自己以后调用的时候使用这个就可以正常调用此组件了
也要将clsid值也改一下
HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值
HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值
也可以将其删除,来防止此类木马的危害。
禁止Guest用户使用shell32.dll来防止调用此组件。
2000使用命令:cacls C:\WINNT\system32\shell32.dll /e /d guests
2003使用命令:cacls C:\WINDOWS\system32\shell32.dll /e /d guests
禁止使用FileSystemObject组件,FSO是使用率非常高的组件,要小心确定是否卸载。改名后调用就要改程序了,Set FSO = Server.CreateObject("Scripting.FileSystemObject")。
FileSystemObject可以对文件进行常规操作,可以通过修改注册表,将此组件改名,来防止此类木马的危害。
HKEY_CLASSES_ROOT\Scripting.FileSystemObject\
改名为其它的名字,如:改为 FileSystemObject_ChangeName
自己以后调用的时候使用这个就可以正常调用此组件了
也要将clsid值也改一下HKEY_CLASSES_ROOT\Scripting.FileSystemObject\CLSID\项目的值
也可以将其删除,来防止此类木马的危害。
2000注销此组件命令:RegSrv32 /u C:\WINNT\SYSTEM\scrrun.dll
2003注销此组件命令:RegSrv32 /u C:\WINDOWS\SYSTEM\scrrun.dll
如何禁止Guest用户使用scrrun.dll来防止调用此组件?
使用这个命令:cacls C:\WINNT\system32\scrrun.dll /e /d guests
15、打开UAC
控制面板 用户账户 打开或关闭用户账户控制
16、程序权限
"net.exe","net1.exe","cmd.exe","tftp.exe","netstat.exe","regedit.exe","at.exe","attrib.exe","cacls.exe","format.com","c.exe"
或完全禁止上述命令的执行
gpedit.msc-〉用户配置-〉管理模板-〉系统
启用 阻止访问命令提示符 同时 也停用命令提示符脚本处理
启用 阻止访问注册表编辑工具
启用 不要运行指定的windows应用程序,添加下面的
at.exe attrib.exe c.exe cacls.exe cmd.exe format.com net.exe net1.exe netstat.exe regedit.exe tftp.exe
17、Serv-u安全问题(个人建议不是特别高的要求没必要用serv_U可以使用FTP服务器 FileZilla Server )
安装程序尽量采用最新版本,避免采用默认安装目录,设置好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一般都拥有这些权限的。如果FTP不是必须每天都用,不如就关了吧,要用再打开。
下面是其它网友的补充:大家可以参考下
Windows Web Server 2008 R2服务器简单安全设置
1、新做系统一定要先打上已知补丁,以后也要及时关注微软的漏洞报告。略。
2、所有盘符根目录只给system和Administrator的权限,其他的删除。
3、将所有磁盘格式转换为NTFS格式。
命令:convert c:/fs:ntfs c:代表C盘,其他盘类推。WIN08 r2 C盘一定是ntfs格式的,不然不能安装系统
4、开启Windows Web Server 2008 R2自带的高级防火墙。
默认已经开启。
5、安装必要的杀毒软件如mcafee,安装一款ARP防火墙,安装ARP好像不错。略。
6、设置屏幕屏保护。
7、关闭光盘和磁盘的自动播放功能。
8、删除系统默认共享。
命令:net share c$ /del 这种方式下次启动后还是会出现,不彻底。也可以做成一个批处理文件,然后设置开机自动执动这个批处理。但是还是推荐下面的方法,直修改注册表的方法。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\parameters下面新建AutoShareServer ,值为0 。。重启一下,测试。已经永久生效了。
9、重命Administrator和Guest帐户,密码必须复杂。GUEST用户我们可以复制一段文本作为密码,你说这个密码谁能破。。。。也只有自己了。...
重命名管理员用户组Administrators。
10、创建一个陷阱用户Administrator,权限最低。
上面二步重命名最好放在安装IIS和SQL之前做好,那我这里就不演示了。
11、本地策略——>审核策略
审核策略更改 成功 失败
审核登录事件 成功 失败
审核对象访问 失败
审核过程跟踪 无审核
审核目录服务访问 失败
审核特权使用 失败
审核系统事件 成功 失败
审核账户登录事件 成功 失败
审核账户管理 成功 失败
12、本地策略——>用户权限分配
关闭系统:只有Administrators 组、其它的全部删除。
管理模板 > 系统 显示“关闭事件跟踪程序”更改为已禁用。这个看大家喜欢。
13、本地策略——>安全选项
交互式登陆:不显示最后的用户名 启用
网络访问:不允许SAM 帐户和共享的匿名枚举 启用
网络访问: 不允许存储网络身份验证的凭据或 .NET Passports 启用
网络访问:可远程访问的注册表路径 全部删除
网络访问:可远程访问的注册表路径和子路径 全部删除
14、禁止dump file 的产生。
系统属性>高级>启动和故障恢复把 写入调试信息 改成“无”
15、禁用不必要的服务。
TCP/IP NetBIOS Helper
Server
Distributed Link Tracking Client
Print Spooler
Remote Registry
Workstation
16、站点方件夹安全属性设置
删除C:\ inetpub 目录。删不了,不研究了。把权限最低。。。禁用或删除默认站点。我这里不删除了。停止即可。一般各站点目录权限为:
System 完全控制
Administrator 完全控制
Users 读
IIS_Iusrs 读、写
在IIS7 中删除不常用的映射 建立站点试一下。一定要选到程序所在的目录,这里是www.postcha.com目录,如果只选择到wwwroot目录的话,站点就变成子目录或虚拟目录安装了,比较麻烦。所以一定要选择站点文件所在的目录,填上主机头。因为我们是在虚拟机上测试,所以对hosts文件修改一下,模拟用域名访问。真实环境中,不需要修改hosts文件,直接解释域名到主机就行。目录权限不够,这个下个教程继续说明。至少,我们的页面已经正常了。
17、禁用IPV6。看操作。
在windows server 2008 R2操作系统下部署weblogic web application,部署完成后进行测试,发现测试页的地址使用的是隧道适配器的地址,而不是静态的ip地址,而且所在的网络并没有ipv6接入,因此决定将ipv6和隧道适配器禁用,操作如下:
禁用ipv6很简单,进入 控制面板\网络和 Internet\网络和共享中心 单击面板右侧“更改适配器设置”进入网络连接界面,选择要设置的连接,右键选择属性,取消Internet 协议版本 6 (TCP/IPv6) 前面的选择框确定即可。
要禁用隧道适配器需要更改注册表信息,操作如下:
开始 -> 运行 - > 输入 Regedit 进入注册表编辑器
定位到:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters]
右键点击 Parameters,选择新建 -> DWORD (32-位)值
命名值为 DisabledComponents,然后修改值为 ffffffff (16进制)
重启后生效
DisableComponents 值定义:
0, 启用所有 IPv 6 组件,默认设置
0xffffffff,禁用所有 IPv 6 组件, 除 IPv 6 环回接口
0x20, 以前缀策略中使用 IPv 4 而不是 IPv 6
0x10, 禁用本机 IPv 6 接口
0x01, 禁用所有隧道 IPv 6 接口
0x11, 禁用除用于 IPv 6 环回接口所有 IPv 6 接口
相关推荐
- 0722-6.2.0-如何在RedHat7.2使用rpm安装CDH(无CM)
-
文档编写目的在前面的文档中,介绍了在有CM和无CM两种情况下使用rpm方式安装CDH5.10.0,本文档将介绍如何在无CM的情况下使用rpm方式安装CDH6.2.0,与之前安装C5进行对比。环境介绍:...
- ARM64 平台基于 openEuler + iSula 环境部署 Kubernetes
-
为什么要在arm64平台上部署Kubernetes,而且还是鲲鹏920的架构。说来话长。。。此处省略5000字。介绍下系统信息;o架构:鲲鹏920(Kunpeng920)oOS:ope...
- 生产环境starrocks 3.1存算一体集群部署
-
集群规划FE:节点主要负责元数据管理、客户端连接管理、查询计划和查询调度。>3节点。BE:节点负责数据存储和SQL执行。>3节点。CN:无存储功能能的BE。环境准备CPU检查JDK...
- 在CentOS上添加swap虚拟内存并设置优先级
-
现如今很多云服务器都会自己配置好虚拟内存,当然也有很多没有配置虚拟内存的,虚拟内存可以让我们的低配服务器使用更多的内存,可以减少很多硬件成本,比如我们运行很多服务的时候,内存常常会满,当配置了虚拟内存...
- 国产深度(deepin)操作系统优化指南
-
1.升级内核随着deepin版本的更新,会自动升级系统内核,但是我们依旧可以通过命令行手动升级内核,以获取更好的性能和更多的硬件支持。具体操作:-添加PPAs使用以下命令添加PPAs:```...
- postgresql-15.4 多节点主从(读写分离)
-
1、下载软件[root@TX-CN-PostgreSQL01-252software]#wgethttps://ftp.postgresql.org/pub/source/v15.4/postg...
- Docker 容器 Java 服务内存与 GC 优化实施方案
-
一、设置Docker容器内存限制(生产环境建议)1.查看宿主机可用内存bashfree-h#示例输出(假设宿主机剩余16GB可用内存)#Mem:64G...
- 虚拟内存设置、解决linux内存不够问题
-
虚拟内存设置(解决linux内存不够情况)背景介绍 Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存...
- Elasticsearch性能调优(5):服务器配置选择
-
在选择elasticsearch服务器时,要尽可能地选择与当前业务量相匹配的服务器。如果服务器配置太低,则意味着需要更多的节点来满足需求,一个集群的节点太多时会增加集群管理的成本。如果服务器配置太高,...
- Es如何落地
-
一、配置准备节点类型CPU内存硬盘网络机器数操作系统data节点16C64G2000G本地SSD所有es同一可用区3(ecs)Centos7master节点2C8G200G云SSD所有es同一可用区...
- 针对Linux内存管理知识学习总结
-
现在的服务器大部分都是运行在Linux上面的,所以,作为一个程序员有必要简单地了解一下系统是如何运行的。对于内存部分需要知道:地址映射内存管理的方式缺页异常先来看一些基本的知识,在进程看来,内存分为内...
- MySQL进阶之性能优化
-
概述MySQL的性能优化,包括了服务器硬件优化、操作系统的优化、MySQL数据库配置优化、数据库表设计的优化、SQL语句优化等5个方面的优化。在进行优化之前,需要先掌握性能分析的思路和方法,找出问题,...
- Linux Cgroups(Control Groups)原理
-
LinuxCgroups(ControlGroups)是内核提供的资源分配、限制和监控机制,通过层级化进程分组实现资源的精细化控制。以下从核心原理、操作示例和版本演进三方面详细分析:一、核心原理与...
- linux 常用性能优化参数及理解
-
1.优化内核相关参数配置文件/etc/sysctl.conf配置方法直接将参数添加进文件每条一行.sysctl-a可以查看默认配置sysctl-p执行并检测是否有错误例如设置错了参数:[roo...
- 如何在 Linux 中使用 Sysctl 命令?
-
sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- linux 查询端口号 (58)
- docker映射容器目录到宿主机 (66)
- 杀端口 (60)
- yum更换阿里源 (62)
- internet explorer 增强的安全配置已启用 (65)
- linux自动挂载 (56)
- 禁用selinux (55)
- sysv-rc-conf (69)
- ubuntu防火墙状态查看 (64)
- windows server 2022激活密钥 (56)
- 无法与服务器建立安全连接是什么意思 (74)
- 443/80端口被占用怎么解决 (56)
- ping无法访问目标主机怎么解决 (58)
- fdatasync (59)
- 405 not allowed (56)
- 免备案虚拟主机zxhost (55)
- linux根据pid查看进程 (60)
- dhcp工具 (62)
- mysql 1045 (57)
- 宝塔远程工具 (56)
- ssh服务器拒绝了密码 请再试一次 (56)
- ubuntu卸载docker (56)
- linux查看nginx状态 (63)
- tomcat 乱码 (76)
- 2008r2激活序列号 (65)