服务器安全配置说明(作者:じve楓少ツ)
注: 转贴请注明作者
一:修改默认的3389端口给改为任意的数字。
1.开始---运行---输入regedit.exe
2.查找:
HKEY_LOCAL_MACHINE---SYSTEM---CurrentControlSet---Control---Terminal Server--WinStations---RDP-Tcp
3.我们找到rdp-tcp后就会在注册表的右边查找PortNumber(在PortNumber后面有3389的一串数字!)
然后在点PortNumber(右键)这个时候会出来一个提示框----点修改----点10进制----修改3389为
你想要的数字比如9999什么的----再点16进制(系统会自动转换)----最后确定!这样就ok了。
这样3389端口已经修改了,但还要重新启动主机,这样3389端口才算修改成功!如果不重新启动3389还是修改不了的!
重其起后下次就可以用新端口进入了! (注意:修改了以后登陆的格式改为 假如IP为:192.168.1.20:9999)
4.我个人的意见推荐大家最好使用其它的远程控制软件,比如大家常说的灰鸽子,影子,Symantec pcAnywhere ,
这里提醒大家灰鸽子一般需要定做,避免被你的服务器杀毒软件所查杀。
5.一般服务器都会用到FTP,我推荐使用 SERVE-U 非常的简单。
二:关闭不需要的服务。
Messenger (信差)
微软: 在客户端及服务器之间传输网络传送及 [Alerter] 服务讯息。这个服务与 Windows Messenger 无关。
如果停止这个服务,Alerter 讯息将不会被传输。如果停用这个服务,所有依存于它的服务将无法启动。
补充: 允许网络之间互相传送提示讯息的功能,如 net send 功能,如不想被骚扰话可关了
依存: NetBIOS Interface、Plug and Play、Remote Procedure Call (RPC)、Workstation
建议: 已停用
Remote Registry (远程登录服务)
微软: 启用远程使用者修改这个计算机上的登录设定。如果这个服务被停止,登录只能由这个计算机上的使用者修改。
如果这个服务被停用,任何明确依存于它的服务将无法启动。
补充: 基于安全性的理由,如果没有特别的需求,建议最好关了它,除非你需要远程协助修改你的登录设定
依存: Remote Procedure Call (RPC)
建议: 已停用 (注意:这个服务根据个人的情况而定,如果服务器本地操作比较方便我建议可以关闭,如果本地操作不方便不建议关闭。)
Server (服务器)
微软: 透过网络为这台计算机提供档案、打印、及命名管道的共享。如果停止这个服务,将无法使用这些功能。
如果停用这个服务,所有依存于它的服务将无法启动。
补充: 简单的说就是档案和打印的分享,除非你有和其它计算机分享,不然就关了
依存: Computer Browser
建议: 已停用
还有这些服务可以尝试关闭
Computer Browser
Help and Support
Print Spooler
TCP/IP NetBIOS Helper
如果服务器不用作域控,我们也可以禁用
Workstation
还有一些服务的关闭网上有很多的帖子大家可以对照,根据实际情况而定。
三:用户配置。
1.将administrator改名,例子中改为root
取消所有除管理员root外所有用户属性中的 远程控制->启用远程控制
以及终端服务配置文件->允许登陆到终端服务器
2.将guest改名为administrator并且修改密码
3.除了管理员root,IUSER以及IWAM以及ASPNET用户外.禁用其他一切用户.包括SQL DEBUG以及TERMINAL USER等等
(根据实际情况而定,论坛型的服务器需要开启SQL)
4.目录权限
将所有盘符的权限,全部改为只有
administrators组 全部权限
system 全部权限
将C盘的所有子目录和子文件继承C盘的administrator(组或用户)和SYSTEM所有权限的两个权限
然后做如下修改
C:\Program Files\Common Files 开放Everyone 默认的读取及运行 列出文件目录 读取三个权限
C:\WINDOWS\ 开放Everyone 默认的读取及运行 列出文件目录 读取三个权限
C:\WINDOWS\Temp 开放Everyone 修改,读取及运行,列出文件目录,读取,写入权限
现在WebShell就无法在系统目录内写入文件了.
当然也可以使用更严格的权限.
在WINDOWS下分别目录设置权限.
可是比较复杂.效果也并不明显.
5.利用已有用户或添加用户
入侵者通过利用修改已有用户或者添加windows正式用户.向获取管理员权限迈进
对应措施:设置ACL权限.修改用户
将除管理员外所有用户的终端访问权限去掉.
限制CMD.EXE的访问权限.
限制SQL SERVER内的XP_CMDSHELL
四:添加TCP/IP筛选。
1.一般服务器常用的端口有21,80,3389(或改为其它的参数) 还有一些端口根据服务器的需求开放的。
比如服务器需要开放端口3352,我的个人意见TCP可以这样添加,21,80,3352,3353,3354,3356,3357,3389,
(其中增加的3353-3357端口是没用的,用来迷惑别人的。)
2.UDP跟IP建议不做改动。
五:其它综合
1.如果服务器不需要FSO
regsvr32 /u c:\windows\system32\scrrun.dll 注销组件
使用regedit将/HKEY_CLASSES_ROOT下的WScript.Network
WScript.Network.1
WScript.Shell
WScript.Shell.1
Shell.Application
Shell.Application.1
键值改名或删除
将这些键值下CLSID中包含的字串
如{72C24DD5-D70A-438B-8A42-98424B88AFB8}
到/HKEY_CLASSES_ROOT/CLSID下找到以这些字串命名的键值全部删除
2.修改CMD.EXE以及NET.EXE权限
将两个文件的权限.修改到特定管理员才能访问,比如本例中.我们如下修改
cmd.exe root用户 所有权限
net.exe root用户 所有权现
这样就能防止非法访问.
还可以使用例子中提供的comlog程序
将com.exe改名_com.exe,然后替换com文件.这样可以记录所有执行的命令行指令
3.备份
使用ntbackup软件.备份系统状态.
使用reg.exe 备份系统关键数据
如reg export HKLM\SOFTWARE\ODBC e:\backup\system\odbc.reg /y 来备份系统的ODBC
4.审计
本地安全策略->本地策略->审核策略
打开以下内容
审核策略更改 成功,失败
审核登陆事件 成功,失败
审核对象访问 失败
审核跟踪过程 无审核
审核目录服务访问 失败
审核特权使用 失败
审核系统事件 成功,失败
审核帐户登陆事件 成功,失败
审核帐户管理 成功,失败
注: 转贴请注明作者
一:修改默认的3389端口给改为任意的数字。
1.开始---运行---输入regedit.exe
2.查找:
HKEY_LOCAL_MACHINE---SYSTEM---CurrentControlSet---Control---Terminal Server--WinStations---RDP-Tcp
3.我们找到rdp-tcp后就会在注册表的右边查找PortNumber(在PortNumber后面有3389的一串数字!)
然后在点PortNumber(右键)这个时候会出来一个提示框----点修改----点10进制----修改3389为
你想要的数字比如9999什么的----再点16进制(系统会自动转换)----最后确定!这样就ok了。
这样3389端口已经修改了,但还要重新启动主机,这样3389端口才算修改成功!如果不重新启动3389还是修改不了的!
重其起后下次就可以用新端口进入了! (注意:修改了以后登陆的格式改为 假如IP为:192.168.1.20:9999)
4.我个人的意见推荐大家最好使用其它的远程控制软件,比如大家常说的灰鸽子,影子,Symantec pcAnywhere ,
这里提醒大家灰鸽子一般需要定做,避免被你的服务器杀毒软件所查杀。
5.一般服务器都会用到FTP,我推荐使用 SERVE-U 非常的简单。
二:关闭不需要的服务。
Messenger (信差)
微软: 在客户端及服务器之间传输网络传送及 [Alerter] 服务讯息。这个服务与 Windows Messenger 无关。
如果停止这个服务,Alerter 讯息将不会被传输。如果停用这个服务,所有依存于它的服务将无法启动。
补充: 允许网络之间互相传送提示讯息的功能,如 net send 功能,如不想被骚扰话可关了
依存: NetBIOS Interface、Plug and Play、Remote Procedure Call (RPC)、Workstation
建议: 已停用
Remote Registry (远程登录服务)
微软: 启用远程使用者修改这个计算机上的登录设定。如果这个服务被停止,登录只能由这个计算机上的使用者修改。
如果这个服务被停用,任何明确依存于它的服务将无法启动。
补充: 基于安全性的理由,如果没有特别的需求,建议最好关了它,除非你需要远程协助修改你的登录设定
依存: Remote Procedure Call (RPC)
建议: 已停用 (注意:这个服务根据个人的情况而定,如果服务器本地操作比较方便我建议可以关闭,如果本地操作不方便不建议关闭。)
Server (服务器)
微软: 透过网络为这台计算机提供档案、打印、及命名管道的共享。如果停止这个服务,将无法使用这些功能。
如果停用这个服务,所有依存于它的服务将无法启动。
补充: 简单的说就是档案和打印的分享,除非你有和其它计算机分享,不然就关了
依存: Computer Browser
建议: 已停用
还有这些服务可以尝试关闭
Computer Browser
Help and Support
Print Spooler
TCP/IP NetBIOS Helper
如果服务器不用作域控,我们也可以禁用
Workstation
还有一些服务的关闭网上有很多的帖子大家可以对照,根据实际情况而定。
三:用户配置。
1.将administrator改名,例子中改为root
取消所有除管理员root外所有用户属性中的 远程控制->启用远程控制
以及终端服务配置文件->允许登陆到终端服务器
2.将guest改名为administrator并且修改密码
3.除了管理员root,IUSER以及IWAM以及ASPNET用户外.禁用其他一切用户.包括SQL DEBUG以及TERMINAL USER等等
(根据实际情况而定,论坛型的服务器需要开启SQL)
4.目录权限
将所有盘符的权限,全部改为只有
administrators组 全部权限
system 全部权限
将C盘的所有子目录和子文件继承C盘的administrator(组或用户)和SYSTEM所有权限的两个权限
然后做如下修改
C:\Program Files\Common Files 开放Everyone 默认的读取及运行 列出文件目录 读取三个权限
C:\WINDOWS\ 开放Everyone 默认的读取及运行 列出文件目录 读取三个权限
C:\WINDOWS\Temp 开放Everyone 修改,读取及运行,列出文件目录,读取,写入权限
现在WebShell就无法在系统目录内写入文件了.
当然也可以使用更严格的权限.
在WINDOWS下分别目录设置权限.
可是比较复杂.效果也并不明显.
5.利用已有用户或添加用户
入侵者通过利用修改已有用户或者添加windows正式用户.向获取管理员权限迈进
对应措施:设置ACL权限.修改用户
将除管理员外所有用户的终端访问权限去掉.
限制CMD.EXE的访问权限.
限制SQL SERVER内的XP_CMDSHELL
四:添加TCP/IP筛选。
1.一般服务器常用的端口有21,80,3389(或改为其它的参数) 还有一些端口根据服务器的需求开放的。
比如服务器需要开放端口3352,我的个人意见TCP可以这样添加,21,80,3352,3353,3354,3356,3357,3389,
(其中增加的3353-3357端口是没用的,用来迷惑别人的。)
2.UDP跟IP建议不做改动。
五:其它综合
1.如果服务器不需要FSO
regsvr32 /u c:\windows\system32\scrrun.dll 注销组件
使用regedit将/HKEY_CLASSES_ROOT下的WScript.Network
WScript.Network.1
WScript.Shell
WScript.Shell.1
Shell.Application
Shell.Application.1
键值改名或删除
将这些键值下CLSID中包含的字串
如{72C24DD5-D70A-438B-8A42-98424B88AFB8}
到/HKEY_CLASSES_ROOT/CLSID下找到以这些字串命名的键值全部删除
2.修改CMD.EXE以及NET.EXE权限
将两个文件的权限.修改到特定管理员才能访问,比如本例中.我们如下修改
cmd.exe root用户 所有权限
net.exe root用户 所有权现
这样就能防止非法访问.
还可以使用例子中提供的comlog程序
将com.exe改名_com.exe,然后替换com文件.这样可以记录所有执行的命令行指令
3.备份
使用ntbackup软件.备份系统状态.
使用reg.exe 备份系统关键数据
如reg export HKLM\SOFTWARE\ODBC e:\backup\system\odbc.reg /y 来备份系统的ODBC
4.审计
本地安全策略->本地策略->审核策略
打开以下内容
审核策略更改 成功,失败
审核登陆事件 成功,失败
审核对象访问 失败
审核跟踪过程 无审核
审核目录服务访问 失败
审核特权使用 失败
审核系统事件 成功,失败
审核帐户登陆事件 成功,失败
审核帐户管理 成功,失败
5.删除默认共享存在的危险
系统安装好以后,系统会创建一些隐藏的共享,你可以在cmd下打 net share 查看他们。网上有很多关于IPC入侵的文章,相信大家一定对它不陌生。所以我们要禁止或删除这些共享以确保安全,
方法是:首先编写如下内容的批处理文件:
@echo off
et share C$ /del
et share D$ /del
et share E$ /del
et share F$ /del
et share admin$ /del
以上批处理内容大家可以根据自己需要修改。
保存为delshare.bat,存放到系统所在文件夹下的system32\GroupPolicy\User\Scripts\Logon目录下。
然后在开始菜单→运行中输gpedit.msc,回车即可打开组策略编辑器。
点击用户配置→Window设置→脚本(登录/注销)→登录,在出现的“登录 属性”窗口中单击“添加”,会出现“添加脚本”对话框,
在该窗口的“脚本名”栏中输入delshare.bat,然后单击“确定”按钮即可。
这样就可以通过组策略编辑器使系统开机即执行脚本删除系统默认的共享。
6。禁用IPC连接
IPC是Internet Process Connection的缩写,也就是远程网络连接。
它是Windows NT/2000/XP/2003特有的功能,其实就是在两个计算机进程之间建立通信连接,一些网络通信程序的通信建立在IPC上面。
举个例子来说,IPC就象是事先铺好的路,我们可以用程序通过这条“路”访问远程主机。
默认情况下,IPC是共享的,也就是说微软已经为我们铺好了路,因此,这种基于IPC的入侵也常常被简称为IPC入侵。
建立IPC连接不需要任何黑客工具,在命令行里键入相应的命令就可以了,不过有个前提条件,那就是你需要知道远程主机的用户名和密码。
打开CMD后输入如下命令即可进行连接:
et use\\ip\ipc$ "password" /user:"usernqme"。我们可以通过修改注册表来禁用IPC连接。
打开注册表编辑器。找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa中的restrictanonymous子键,将其值改为1即可禁用IPC连接。
7.新设置远程可访问的注册表路径
设置远程可访问的注册表路径为空,这样可以有效地防止黑客利用扫描器通过远程注册表读取计算机的系统信息及其它信息。
打开组策略编辑器,然后选择“计算机配置”→“Windows设置”→“安全选项”→“网络访问:可远程访问的注册表路径”及“网络访问:
可远程访问的注册表”,将设置远程可访问的注册表路径和子路径内容设置为空即可。
这样可以有效防止黑客利用扫描器通过远程注册表读取计算机的系统信息及其它信息。
8.密码策略修改
打开管理工具-本地安全设置-密码策略
1.密码必须符合复杂要求性.启用
2.密码最小值.一般设置最好是8 以上
3.密码最长使用期限.一般默认42天就可以了
4.密码最短使用期限0天
5.强制密码历史 记住0个密码
6.用可还原的加密来储存密码 禁用
9.服务器的防火墙跟杀毒软件推荐。
服务器的杀毒软件我强烈推荐 McAFee8.0i
服务器的防火墙我推荐 DeerField Visnetic Firewall 或 8Signs Firewall 这2款墙都是过滤数据的,对于防黑很有效,而且又不影响速度。
10.大家一定不要忘记服务器一定要开启自动更新,注意时常打补丁。打补丁的时候不要只记得系统,记得给第三方软件注意打上补丁,比如SQL 等第三方软件。
系统安装好以后,系统会创建一些隐藏的共享,你可以在cmd下打 net share 查看他们。网上有很多关于IPC入侵的文章,相信大家一定对它不陌生。所以我们要禁止或删除这些共享以确保安全,
方法是:首先编写如下内容的批处理文件:
@echo off
et share C$ /del
et share D$ /del
et share E$ /del
et share F$ /del
et share admin$ /del
以上批处理内容大家可以根据自己需要修改。
保存为delshare.bat,存放到系统所在文件夹下的system32\GroupPolicy\User\Scripts\Logon目录下。
然后在开始菜单→运行中输gpedit.msc,回车即可打开组策略编辑器。
点击用户配置→Window设置→脚本(登录/注销)→登录,在出现的“登录 属性”窗口中单击“添加”,会出现“添加脚本”对话框,
在该窗口的“脚本名”栏中输入delshare.bat,然后单击“确定”按钮即可。
这样就可以通过组策略编辑器使系统开机即执行脚本删除系统默认的共享。
6。禁用IPC连接
IPC是Internet Process Connection的缩写,也就是远程网络连接。
它是Windows NT/2000/XP/2003特有的功能,其实就是在两个计算机进程之间建立通信连接,一些网络通信程序的通信建立在IPC上面。
举个例子来说,IPC就象是事先铺好的路,我们可以用程序通过这条“路”访问远程主机。
默认情况下,IPC是共享的,也就是说微软已经为我们铺好了路,因此,这种基于IPC的入侵也常常被简称为IPC入侵。
建立IPC连接不需要任何黑客工具,在命令行里键入相应的命令就可以了,不过有个前提条件,那就是你需要知道远程主机的用户名和密码。
打开CMD后输入如下命令即可进行连接:
et use\\ip\ipc$ "password" /user:"usernqme"。我们可以通过修改注册表来禁用IPC连接。
打开注册表编辑器。找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa中的restrictanonymous子键,将其值改为1即可禁用IPC连接。
7.新设置远程可访问的注册表路径
设置远程可访问的注册表路径为空,这样可以有效地防止黑客利用扫描器通过远程注册表读取计算机的系统信息及其它信息。
打开组策略编辑器,然后选择“计算机配置”→“Windows设置”→“安全选项”→“网络访问:可远程访问的注册表路径”及“网络访问:
可远程访问的注册表”,将设置远程可访问的注册表路径和子路径内容设置为空即可。
这样可以有效防止黑客利用扫描器通过远程注册表读取计算机的系统信息及其它信息。
8.密码策略修改
打开管理工具-本地安全设置-密码策略
1.密码必须符合复杂要求性.启用
2.密码最小值.一般设置最好是8 以上
3.密码最长使用期限.一般默认42天就可以了
4.密码最短使用期限0天
5.强制密码历史 记住0个密码
6.用可还原的加密来储存密码 禁用
9.服务器的防火墙跟杀毒软件推荐。
服务器的杀毒软件我强烈推荐 McAFee8.0i
服务器的防火墙我推荐 DeerField Visnetic Firewall 或 8Signs Firewall 这2款墙都是过滤数据的,对于防黑很有效,而且又不影响速度。
10.大家一定不要忘记服务器一定要开启自动更新,注意时常打补丁。打补丁的时候不要只记得系统,记得给第三方软件注意打上补丁,比如SQL 等第三方软件。
本文转自starger51CTO博客,原文链接:http://blog.51cto.com/starger/17605 ,如需转载请自行联系原作者