单位搞网络安全检查,终端要实现以下设置:
如果一台台电脑去设置,太麻烦,不现实。但是我们又没有域控服务器,所以就想做一个批处理文件,在每台电脑上双击运行即可完成所有设置。
由于没有这方面的经验,所以就用搜索引擎搜索,很多大神写的博客对我帮助很大,但是大部分搜索结果都没什么用。这也说明我们现在所处的环境,信息大爆炸,但有用的信息不多。
最终生成的是下面这个批处理文件,我是用附件里的写字板来编辑,然后保存后,改为.bat格式,即得到一个批处理文件。内容如下:
1 @echo off 2 echo 启用密码安全策略 3 echo 禁用Guest账号 4 echo 配置审核策略 5 6 secedit /configure /db sec.sdb /cfg sec.inf 7 secedit /configure /db sec.sdb 8 gpupdate /force 9 10 echo 开启windows防火墙 11 netsh Advfirewall set allprofiles state on 12 13 echo 关闭默认共享、关闭445端口 14 net stop server 15 16 echo 关闭异常服务 17 net stop TermService 18 net stop RemoteRegistry 19 net stop TlntSvr 20 net stop Messenger 21 net stop ClipSrv 22 net stop Alerter 23 24 echo 已全部完成 25 pause
echo 后面跟的内容是注释,同时运行时也会显示到屏幕上,可以作为一个进度提醒。
@echo off 开头加这个命令,可以实现,echo 行只显示备注内容,而不显示命令本身。大家自己在DOS里试一下就明白了。
注释下面就是要实现这个功能的DOS命令,批处理文件就是多个DOS命令按顺序执行。
最后的PAUSE就是让命令窗口保持一会,用户可以按任意键退出。有助于我们检查命令执行过程中是否有错误提示。
下面就是我自己边试验边写的说明文档,有的方法可以,有的方法不可行,自己作为一个备忘,也给大家一个参考。
需求表格中的前三项是用本地安全策略配置的,其他的是用命令。
---------配置本地安全策略
::打开本地安全策略secpol.msc 打开本地组策略gpedit.msc
::在测试用机上,先使用gpedit.msc手工更改策略,再用以下命令导出当前策略
secedit /export /cfg sec.inf
::用文本编辑器编辑sec.inf(当前文件夹下)文件,去除不需要调整的内容,仅保留要定制策略
::用命令生成一个sdb文件
secedit /configure /db sec.sdb /cfg sec.inf
::用命令把定制策略更新到目标服务器,不能用/overwrite参数,否则除定制策略外的其它策略丢失
secedit /configure /db sec.sdb
::刷新组策略
gpupdate /force
------------------
-----------------sec.inf中更改的内容
[Unicode]
Unicode=yes
[System Access]
MinimumPasswordAge = 6
MaximumPasswordAge = 42
MinimumPasswordLength = 6 //密码长度最小值
PasswordComplexity = 1 //密码必须符合复杂性要求
PasswordHistorySize = 0
LockoutBadCount = 0
RequireLogonToChangePassword = 0
ForceLogoffWhenHourExpire = 0
NewAdministratorName = "Administrator"
NewGuestName = "Guest"
ClearTextPassword = 0
LSAAnonymousNameLookup = 0
EnableAdminAccount = 1
EnableGuestAccount = 0 //guest是否禁用
[Event Audit]
AuditSystemEvents = 3 //审核系统事件 成功、失败
AuditLogonEvents = 3 //审核登录事件 成功、失败
AuditObjectAccess = 3 //审核对象访问 成功、失败
AuditPrivilegeUse = 3 //审核特权使用 成功、失败
AuditPolicyChange = 3 //审核策略更改 成功、失败
AuditAccountManage = 3 //审核账户管理 成功、失败
AuditProcessTracking = 3 //审核过程追踪 成功、失败
AuditDSAccess = 3 //审核目录服务访问 成功、失败
AuditAccountLogon = 3 //审核账户登录事件 成功、失败
[Version]
signature="$CHICAGO$"
Revision=1
--------------------
------------关闭445端口 两种方法,DOS命令和组策略
netsh firewall set portopening TCP 445 disable 失败
netsh firewall set portopening protocol = ALL port = 445 name = 445 mode = DISABLE scope = ALL profile = ALL 失败
本地安全策略-ip安全策略 失败
防火墙入站规则 失败
禁用server 成功:net stop server
防火墙入站规则,没用。
本地安全策略,ip安全策略,没用。
查是否关闭成功 netstat -ano -p tcp | find "445"
----------开启防火墙
netsh Advfirewall set allprofiles state on
------关闭默认共享
shutdown.reg内容 失败
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceslanmanserverparameters]
"AutoShareServer"=dword:00000000
"AutoSharewks"=dword:00000000
net share C$ /delete
net share D$ /delete
net share E$ /delete
net share F$ /delete
net share G$ /delete
regedit.exe /s shutdown.reg
-------禁止windows自动登录
control userpasswords2 勾选要使用本机,用户必须输入用户名和密码
--------关闭下列服务
net stop TermService
net stop RemoteRegistry
net stop TlntSvr
net stop Messenger
net stop ClipSrv
net stop Alerter
------