现在的位置: 首页 > 教程分享 > 正文

一键安全加固Windows操作系统

2017年06月13日 教程分享 ⁄ 共 11415字 ⁄ 字号 暂无评论

近些年来信息安全日趋重视,常年不变的政府单位、国有企业的办公电脑,基本上都从Windows XP升级至Windows7,服务器则从Windows 2003升级至Windows2008;表面上,至少初步的阶段里面来看,永恒之蓝的招摇过街似乎也对“国产操作系统研发”起到了一定的推动作用,给大家分享一些企业单位常见安全整改批处理代码,解放双手,一键加固!

 软件截图

一键安全加固Windows操作系统

 批处理代码

注意!第83行修改最高权限管理员名字,请事先按需修改名字;第286、287行的DNS地址,请事先按需修改为企业内部的DNS地址。

  1. cls  
  2. @color 0A  
  3. :menu  
  4. @mode con cols=80 lines=32  
  5. @title 游软轨迹 -王花郎博客 - - - Windows 7 / Windows 2008 通用版  
  6. :menu  
  7. @echo off  
  8. echo ===============================================================================  
  9. echo ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※  
  10. @echo off  
  11. echo ※批处理脚本代码均来自论坛网友分享,使用前建议先在虚拟机操作系统中进行完整测试※   
  12. @echo off  
  13. echo ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※  
  14. @echo off  
  15. echo ===============================================================================  
  16. @echo off  
  17. echo.   
  18. pause  
  19.   
  20. ::【身份鉴别】  
  21. ::[帐户口令授权配置模块]  
  22. ::1.密码策略  
  23. ::开启帐户密码复杂性要求  
  24. echo [version] >Wanghualang.inf  
  25. echo signature="$CHICAGO$" >>Wanghualang.inf  
  26. echo [System Access] >>Wanghualang.inf  
  27. echo PasswordComplexity=1 >>Wanghualang.inf    
  28. ::修改帐户密码最小长度为8  
  29. echo MinimumPasswordLength=8 >>Wanghualang.inf    
  30. ::修改帐户密码最长留存期为180天  
  31. echo MaximumPasswordAge=180 >>Wanghualang.inf   
  32. ::密码最短使用期限1天  
  33. echo MinimumPasswordAge = 1 >>Wanghualang.inf  
  34. ::修改强制密码历史为5次  
  35. echo PasswordHistorySize=5 >>Wanghualang.inf    
  36. ::禁用Guest帐户  
  37. echo EnableGuestAccount=0 >>Wanghualang.inf    
  38. ::执行脚本  
  39. secedit /configure /db Wanghualang.sdb /cfg Wanghualang.inf /log Wanghualang.log /quiet  
  40. del Wanghualang.*  
  41.   
  42. ::2.使用星号(*)隐藏共享口令  
  43. @echo Windows Registry Editor Version 5.00>>Wanghualang.reg   
  44. @echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services]>>Wanghualang.reg   
  45. @echo [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Network]>>Wanghualang.reg   
  46. @echo "HideSharePwds"=dword:1>>Wanghualang.reg  
  47. @regedit /s Wanghualang.reg  
  48. @del Wanghualang.reg  
  49.    
  50. ::3.账号锁定策略  
  51. echo [version] >Wanghualang.inf  
  52. echo signature="$CHICAGO$" >>Wanghualang.inf  
  53. echo [System Access] >>Wanghualang.inf  
  54. echo ResetLockoutCount = 3 >>Wanghualang.inf     
  55. ::重置帐户锁定计数器3分钟   
  56. echo LockoutDuration = 5 >>Wanghualang.inf     
  57. ::帐号锁定时间5分钟  
  58. echo LockoutBadCount=5 >>Wanghualang.inf     
  59. ::设定帐户锁定阀值为5次  
  60. ::执行脚本  
  61. secedit /configure /db Wanghualang.sdb /cfg Wanghualang.inf /log Wanghualang.log /quiet  
  62. del Wanghualang.*  
  63.   
  64. ::【访问控制】  
  65. ::[禁用自动共享]  
  66. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" /v "AutoShareServer" /t "REG_DWORD" /d "0" /f  
  67. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" /v "AutoShareWKS" /t "REG_DWORD" /d "0" /f  
  68. ::[清除admin$共享]  
  69. net share admin$ /del  
  70. ::[清除ipc$共享]  
  71. net share ipc$ /del  
  72. ::[清除所有默认本地盘符共享]  
  73. for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do @(if exist %%a:\nul (net share %%a$ /delete>nul 2>nul) )   
  74.   
  75. ::[禁止用户开机自动登录]  
  76. reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" /t REG_DWORD /d "0" /f  
  77.   
  78. ::[禁止自动播放]  
  79. reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "NoDriveTypeAutoRun" /f  
  80. reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "NoDriveTypeAutoRun" /t "REG_DWORD" /d "255" /f  
  81.   
  82. ::[对administrator帐户进行重命名]  
  83. wmic useraccount where name='Administrator' call Rename Wanghualang  
  84.   
  85. ::[对安全控制选项进行优化]  
  86. @echo Windows Registry Editor Version 5.00>>Wanghualang.reg   
  87. @echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services]>>Wanghualang.reg   
  88. ::启用交互式登录: 不显示最后的用户名  
  89. @echo "DontDisplayLastUserName"=dword:1 >>Wanghualang.reg  
  90. @regedit /s Wanghualang.reg  
  91. @del Wanghualang.reg  
  92.   
  93. ::[取消系统失败自动重新启动]  
  94. @echo Windows Registry Editor Version 5.00>>Wanghualang.reg  
  95. @echo [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Crashcontrol]>>Wanghualang.reg  
  96. @echo "AutoReboot"=dword:0>>Wanghualang.reg  
  97. @regedit /s Wanghualang.reg  
  98. @del Wanghualang.reg  
  99.   
  100. ::【安全审计】  
  101. ::[配置审计策略]  
  102. echo [version] >Wanghualang.inf  
  103. echo signature="$CHICAGO$" >>Wanghualang.inf  
  104. echo [Event Audit] >>Wanghualang.inf  
  105. ::开启审核系统事件  
  106. echo AuditSystemEvents=3 >>Wanghualang.inf  
  107. ::开启审核对象访问  
  108. echo AuditObjectAccess=3 >>Wanghualang.inf  
  109. ::开启审核特权使用  
  110. echo AuditPrivilegeUse=3 >>Wanghualang.inf  
  111. ::开启审核策略更改  
  112. echo AuditPolicyChange=3 >>Wanghualang.inf  
  113. ::开启审核帐户管理  
  114. echo AuditAccountManage=3 >>Wanghualang.inf  
  115. ::开启审核过程跟踪  
  116. echo AuditProcessTracking=3 >>Wanghualang.inf  
  117. ::开启审核目录服务访问  
  118. echo AuditDSAccess=3 >>Wanghualang.inf  
  119. ::开启审核登陆事件  
  120. echo AuditLogonEvents=3 >>Wanghualang.inf  
  121. ::开启审核帐户登陆事件  
  122. echo AuditAccountLogon=3 >>Wanghualang.inf  
  123. ::[配置审计日志]  
  124. echo [System Log] >>Wanghualang.inf  
  125. ::设置系统日志文件最大50M  
  126. echo MaximumLogSize=51200 >>Wanghualang.inf  
  127. ::设置当达到最大的日志尺寸时按需要改写事件  
  128. echo RetentionDays = 60  >>Wanghualang.inf  
  129. echo AuditLogRetentionPeriod=1 >>Wanghualang.inf  
  130.   
  131. ::配置安全日志  
  132. echo [Security Log] >>Wanghualang.inf  
  133. ::设置安全日志文件最大50M  
  134. echo MaximumLogSize=51200 >>Wanghualang.inf  
  135. ::设置当达到最大的日志尺寸时按需要改写事件  
  136. echo RetentionDays = 60  >>Wanghualang.inf  
  137. echo AuditLogRetentionPeriod=1 >>Wanghualang.inf  
  138.   
  139. ::设置应用日志  
  140. echo [Application Log] >>Wanghualang.inf  
  141. ::设置安全日志文件最大50M  
  142. echo MaximumLogSize=51200 >>Wanghualang.inf  
  143. ::设置当达到最大的日志尺寸时按需要改写事件  
  144. echo RetentionDays = 60  >>Wanghualang.inf  
  145. echo AuditLogRetentionPeriod=1 >>Wanghualang.inf  
  146.   
  147. ::执行脚本  
  148. secedit /configure /db Wanghualang.sdb /cfg Wanghualang.inf /log Wanghualang.log /quiet  
  149. del Wanghualang.*  
  150.   
  151. ::【入侵防范】  
  152. ::[b.防止SYN FLOOD 攻击]  
  153. @echo Windows Registry Editor Version 5.00>>Wanghualang.reg   
  154. @echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services]>>Wanghualang.reg   
  155. @echo "SynAttackProtect"=dword:2>>Wanghualang.reg  
  156. @echo "TcpMaxPortsExhausted"=dword:5>>Wanghualang.reg  
  157. @echo "TcpMaxHalfOpen"=dword:1f4>>Wanghualang.reg  
  158. @echo "TcpMaxHalfOpenRetried"=dword:190>>Wanghualang.reg  
  159.   
  160. ::[c.防止icmp重定向报文的攻击]  
  161. @echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]>>Wanghualang.reg   
  162. @echo "EnableICMPRedirect"=dword:0>>Wanghualang.reg  
  163.   
  164. ::[d.禁止ipc空连接]  
  165. @echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]>>Wanghualang.reg   
  166. @echo "restrictanonymous"=dword:1>>Wanghualang.reg  
  167. @regedit /s Wanghualang.reg  
  168. @del Wanghualang.reg  
  169.   
  170. ::[f.操作系统关机策略安全]  
  171. echo [Privilege Rights] >>Wanghualang.inf  
  172. ::1.关闭系统仅指派给Administrators组  
  173. echo seshutdownprivilege=Administrators >>Wanghualang.inf  
  174. ::2.从远程系统强制关机只指派给Administrators组  
  175. echo seremoteshutdownprivilege=Administrators >>Wanghualang.inf  
  176. ::执行脚本  
  177. secedit /configure /db Wanghualang.sdb /cfg Wanghualang.inf /log Wanghualang.log /quiet  
  178. del Wanghualang.*  
  179.   
  180. ::[g.操作系统数据执行保护安全]  
  181. ::开启仅为基本 Windows 程序和服务启用DEP  
  182. bcdedit /set nx optin  
  183.   
  184. ::[h.关闭系统自带防火墙]  
  185. ::关闭防火墙(公用、专用)  
  186. netsh advfirewall set currentprofile state off  
  187. netsh advfirewall set privateprofile state off  
  188.   
  189. ::【资源控制】  
  190. ::[b.根据安全策略设置登录终端的操作超时锁定]  
  191. ::2.启用远程会话挂起时间限制  
  192. @echo Windows Registry Editor Version 5.00>>Wanghualang.reg   
  193. @echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services]>>Wanghualang.reg   
  194. echo [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters]>>Wanghualang.reg  
  195. @echo "autodisconnect"=dword:a >>Wanghualang.reg  
  196. ::设置暂停会话前所需的空闲时间量 10分钟  
  197. @regedit /s Wanghualang.reg  
  198. @del Wanghualang.reg  
  199.   
  200. ::3.屏幕保护时间为三分钟  
  201. @echo Windows Registry Editor Version 5.00>>scrsave.reg  
  202. @echo [HKEY_CURRENT_USER\Control Panel\Desktop]>>scrsave.reg  
  203. @echo "ScreenSaveActive"="1">>scrsave.reg  
  204. @echo "ScreenSaverIsSecure"="1">>scrsave.reg  
  205. @echo "ScreenSaveTimeOut"="180">>scrsave.reg  
  206. @echo "SCRNSAVE.EXE"="c:\\WINDOWS\\system32\\scrnsave.scr">>scrsave.reg  
  207. @regedit /s scrsave.reg  
  208. @del scrsave.reg  
  209.   
  210. ::【远程设置策略】  
  211. ::修改3389远程登陆端口号为16000,开启远程设置  
  212. @echo Windows Registry Editor Version 5.00>>Wanghualang.reg   
  213. echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]>>Wanghualang.reg  
  214. echo "fDenyTSConnections"=dword:00000000>>Wanghualang.reg  
  215. @echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]>>Wanghualang.reg   
  216. @echo "PortNumber"=dword:3e80>>Wanghualang.reg  
  217. @echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]>>Wanghualang.reg   
  218. @echo "PortNumber"=dword:3e80>>Wanghualang.reg  
  219. @regedit /s Wanghualang.reg  
  220. @del Wanghualang.reg  
  221. pause  
  222.   
  223. cls  
  224. @echo off  
  225. echo.     
  226. echo 即将创建IP安全策略,屏蔽135、137、138、139、445、3389端口。               
  227. echo.     
  228. set /p KEY=  请选择(Y / N):  
  229. echo.  
  230. if %KEY% == y    goto IPsec  
  231. if %KEY% == n    goto IP  
  232.   
  233. :IPsec   
  234. netsh ipsec static add policy name=Shield-Port  
  235. netsh ipsec static add filterlist name=Port  
  236. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=135 protocol=TCP  
  237. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=137 protocol=TCP  
  238. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=138 protocol=TCP  
  239. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=139 protocol=TCP  
  240. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=445 protocol=TCP  
  241. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=3389 protocol=TCP  
  242. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=135 protocol=UDP  
  243. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=137 protocol=UDP  
  244. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=138 protocol=UDP  
  245. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=139 protocol=UDP  
  246. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=445 protocol=UDP  
  247. netsh ipsec static add filter filterlist=Port srcaddr=any dstaddr=Me dstport=3389 protocol=UDP  
  248. netsh ipsec static add filteraction name=Blocked-Access action=block  
  249. netsh ipsec static add rule name=Rule1 policy=Shield-Port filterlist=Port filteraction=Blocked-Access  
  250. netsh ipsec static set policy name=Shield-Port assign=y  
  251.   
  252. ::【计算机名与IP地址设置】  
  253. :IP  
  254. cls  
  255. @echo off     
  256. echo.     
  257. echo 1.修改计算机名                          
  258. echo.     
  259. echo 2.修改计算机IP地址                                 
  260. echo.   
  261. echo 3.不修改任何信息     
  262. echo.  
  263. set /p KEY=  请选择:  
  264. echo.  
  265. if %KEY% == 1    goto ONE    
  266. if %KEY% == 2    goto TWO    
  267. if %KEY% == 3    goto NO  
  268.   
  269. :ONE  
  270. echo.  
  271. set /p name=  计算机名:  
  272. echo.  
  273. reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam" /v @ /t REG_SZ /d "%name%" /f >nul && reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" /t REG_SZ /d "%name%" /f >nul && reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v "ComputerName" /t REG_SZ /d "%name%" /f >nul && reg add "HKLM\SYSTEM\CurrentControlSet\Services\Eventlog" /v "ComputerName" /t REG_SZ /d "%name%" /f >nul && reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" /t REG_SZ /d "%name%" /f >nul && reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d "%name%" /f >nul && reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "Hostname" /t REG_SZ /d "%name%" /f >nul  
  274. goto IP  
  275.   
  276. :TWO  
  277. set NAME="本地连接"  
  278. echo.      
  279. set /p IP= [请输入本机IP地址]   
  280. echo.       
  281. set /p MASK= [请输入子网掩码地址]   
  282. echo.      
  283. set /p GATEWAY= [请输入默认网关地址]    
  284. echo.  
  285. netsh interface ip set address %NAME% static %IP% %MASK% %GATEWAY%    
  286. netsh interface ip add dns %NAME%  114.114.114.114  
  287. netsh interface ip add dns %NAME%  114.114.114.119  
  288. goto IP  
  289.   
  290. :NO  
  291. goto restart  
  292.   
  293. :restart  
  294. cls  
  295. echo 操作系统安全加固已完成,建议重启计算机生效!现在立即重新启动计算机吗?  
  296. echo.  
  297. set /p select1=请输入(Y / N):  
  298. if /i "%select1%"=="Y" goto y  
  299. if /i "%select1%"=="N" goto n  
  300. :y  
  301. shutdown -r -t 0  
  302. exit  
  303. :n  
  304. exit  

给我留言

留言无头像?

×