美文网首页
系统综合安全配置方案

系统综合安全配置方案

作者: 陈树树go | 来源:发表于2021-01-26 16:08 被阅读0次

    原创作品,简书首发,转载请注明出处。

    最近一段事件,勒索病毒层出不穷,给网络安全造成了极大的压力,为了减轻工作压力,提高工作效率,本人制作了《系统综合安全配置方案》批处理工具,用来设置服务器安全,现在发布出来,希望给有需要的人提供方便,为网络安全做一点点贡献。

    【系统综合配置方案】 v1.2 =========================================
       1、关闭 默认共享
       2、禁用 自动播放
       3、开启 防火墙日志
       4、设置 防火墙规则
       5、查看 防火墙设置 Firewall.cpl
       6、查看 当前网络连接
       7、配置 账户锁定策略(密码错误10次锁定3分钟)
       8、禁用 本地多播名称解析(LLMNR)
       e、退出
     以下操作 请谨慎:
       9、修改 远程桌面 默认端口 (*需重启*)
       0、关闭 445端口 (关闭所有共享)
                                                           by 陈树林 2021.1.20
     *请选择您要设置的项目:: [1,2,3,4,5,6,7,8,9,0,E]?

    勒索病毒常见的攻击方式,通过扫描弱口令,登录远程桌面进行投毒。为了避免被攻击,我们可以采取一下操作:
    1、关闭共享(0、1选项);        # 1选项关闭默认共享,0选项 直接关闭共享功能。
    2、多次登录错误,锁定账号(8选项);
    3、开启 并 设置防火墙功能(4选项);    #釜底抽薪,直接阻挡外部访问。对于需要开放的端口,可以手动指定。
    4、开启 防火墙日志。        #防火墙日志用于查看近期网络连接状况,可通过Editplus等编辑软件,通过正则表达式,清除send数据,保留RECEIVE,分析来自外部的网络访问。

    放到百度网盘一份,以免贴出代码中出现代码错乱。
    链接: pan.baidu.com/s/194fJyptwRyTs1_0wE6hJkg
    提取码: t7hd 

    详细代码如下,请复制到记事本中,另存为.bat 文件

    @echo off
    rem 以下3行命令用来判断 批处理文件是否以管理员权限运行
    @Rd "%WinDir%\system32\test_permissions" >NUL 2>NUL
    @Md "%WinDir%\System32\test_permissions" 2>NUL||(Echo 请使用右键管理员身份运行!&&Pause >nul&&Exit)
    @Rd "%WinDir%\System32\test_permissions" 2>NUL
    rem 获取当前远程桌面端口
    @for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A OldPort=%%a )
    set CallBy=""
    rem ##############################################
    @cls

    :menu
    @color 07
    @echo  【系统综合配置方案】 v1.2
    @echo  =========================================
    @echo    1、关闭 默认共享
    @echo    2、禁用 自动播放
    @echo    3、开启 防火墙日志
    @echo    4、设置 防火墙规则
    @echo    5、查看 防火墙设置 Firewall.cpl
    @echo    6、查看 当前网络连接
    @echo    7、配置 账户锁定策略(密码错误10次锁定3分钟)
    @echo    8、禁用 本地多播名称解析(LLMNR)
    @echo    e、退出
    @echo.
    @echo  以下操作 请谨慎:
    @echo    9、修改 远程桌面 默认端口 (*需重启*)
    @echo    0、关闭 445端口 (关闭所有共享)
    @echo                      by 陈树林 2021.1.20
    @echo.
    @echo.
    @choice /c:1234567890e /m " *请选择您要设置的项目::"
    @if %errorlevel%==1 goto ShutDownDefaultShare
    @if %errorlevel%==2 goto DisableAutoDiskRun
    @if %errorlevel%==3 goto OpenFwLog
    @if %errorlevel%==4 goto fwRule
    @if %errorlevel%==5 @start firewall.cpl && @cls && @echo. && @echo  正在打开【防火墙配置】... && @echo. && @echo. && @echo. && @goto menu
    @if %errorlevel%==6 goto ListNetstat
    @if %errorlevel%==7 goto LockAccount
    @if %errorlevel%==8 goto DisabledLLMNR
    @if %errorlevel%==9 goto ChangeRdpPort
    @if %errorlevel%==10 goto Close445
    @if %errorlevel%==11 goto end
    @if %errorlevel%==12 goto end

    :ShutDownDefaultShare
    @cls
    @echo.
    @echo  ============================
    @echo  【关闭 Windows 默认共享】
    @echo  ============================
    reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /f /v "AutoShareServer" /t REG_DWORD /d 0
    reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /f /v "AutoShareWks" /t REG_DWORD /d 0
    @echo.
    @echo  ※重启后 Windows 默认共享 将关闭。
    @echo.
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :OpenFwLog
    @cls
    @echo  【开启 Windows防火墙日志】
    @echo  =====================================================
    @echo  Windows不会按日期生成防火墙日志,需要手动创建计划任务
    @echo  请选择 创建日志的频率:
    @echo    1:每天
    @echo    2:每周
    @echo    M:返回主菜单
    @echo.
    @echo  ※执行过程中,如果被杀毒软件拦截,请选择“允许操作”
    @echo.
    @set "year=%date:~0,4%"
    @set "month=%date:~5,2%"
    @set "day=%date:~8,2%"
    @if not exist %SystemDrive%\PerfLogs (mkdir %SystemDrive%\PerfLogs)
    @if not exist %SystemDrive%\PerfLogs\FireWall (mkdir %SystemDrive%\PerfLogs\FireWall)
    @echo @echo off > %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat >nul
    @echo @echo off > %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat >nul
    @echo @set "year=%%date:~0,4%%" >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
    @echo @set "month=%%date:~5,2%%" >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
    @echo @set "day=%%date:~8,2%%" >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
    @echo @netsh advfirewall set allprofiles logging filename %%SystemDrive%%\PerfLogs\Firewall\Firewall-%%year%%%%month%%%%day%%.log ^>nul >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
    @echo @netsh advfirewall set allprofiles logging maxfilesize 32767 ^>nul >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
    @echo @netsh advfirewall set allprofiles logging allowedconnections enable ^>nul >> %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat
    @choice /c:12m /m " *请选择您要设置的周期::"
    @if %errorlevel%==1 goto EveryDay
    @if %errorlevel%==2 goto EveryWeek
    @if %errorlevel%==3 cls && goto menu

    :EveryDay
    @echo.
    @echo  Step1:*正在创建:每天生成【生成防火墙日志】计划任务 ......
    @schtasks /create /tn "StartFireWallLog" /ru system /tr %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat /F /sc DAILY /st 07:30 /MO 1 >nul
    @goto SetFwLog

    :EveryWeek
    @echo.
    @echo  Step1:*正在创建:每周一生成【生成防火墙日志】计划任务 ......
    @schtasks /create /tn "StartFireWallLog" /ru system /tr %SystemDrive%\PerfLogs\FireWall\FW_Log_Task.bat /F /sc WEEKLY /D MON /st 07:30 /MO 1 >nul
    @goto SetFwLog
    :SetFwLog
    @echo  ※计划任务 添加完成。
    @echo.
    @echo  Step2:*立即开启防火墙日志......
    @netsh advfirewall set allprofiles logging filename %SystemDrive%\PerfLogs\Firewall\Firewall-%year%%month%%day%.log >nul
    @netsh advfirewall set allprofiles logging maxfilesize 32767 >nul
    @netsh advfirewall set allprofiles logging allowedconnections enable >nul
    @netsh advfirewall set allprofiles logging droppedconnections disable >nul
    @netsh advfirewall set allprofiles firewallpolicy blockinbound,notconfigured >nul
    @echo  ※防火墙日志【已开启】
    @echo  ----------------------
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :fwRule
    @cls
    :ContinuefwRule
    @for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A CurrPort=%%a )
    @if not "%CurrPort%"=="%OldPort%"  set CurrPort=%CurrPort%,%OldPort%
    @echo  【设置默认防火墙规则】
    @echo  =========================================
    @echo  请选择配置方式:
    @echo    1、使用默认 防火墙配置
    @echo    2、手动指定 防火墙放通端口
    @echo    3、查看    当前放通端口
    @echo    4、查看    当前网络连接
    @echo    M、返回主菜单
    @echo.
    @echo    默认防火墙配置:
    @echo        cTool-TCP:%CurrPort%
    @echo        cTool-UDP:8000
    @echo        cTool-RDP:%CurrPort%(当前远程桌面端口)
    @echo.
    @echo.
    @echo  ※请确保所有 需要开放的端口 都已添加,避免远程无法连接
    @echo  ※执行过程中,如果被杀毒软件拦截,请选择“允许操作”
    @echo.
    @choice /c:1234m /m " 请选择您的配置方式:"
    @if %errorlevel%==1 goto defaultFW
    @if %errorlevel%==2 goto manualFW
    @if %errorlevel%==3 goto showFW
    @if %errorlevel%==4 set CallBy="fwRule" && goto ListNetstat
    @if %errorlevel%==5 cls && goto menu

    :defaultFW
    @for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A CurrPort=%%a )
    @if not "%CurrPort%"=="%OldPort%"  set CurrPort=%CurrPort%,%OldPort%
    @echo.
    @echo  已选择:【默认防火墙配置】
    @echo  ===========================================
    @echo  1、正在 添加 cTool-TCP 规则,开启TCP:%CurrPort%端口 ...
    @netsh advfirewall firewall delete rule name=cTool-TCP dir=in > nul
    @netsh advfirewall firewall add rule name=cTool-TCP dir=in action=allow protocol=tcp localport=%CurrPort% > nul
    @echo  ※cTool-TCP 规则 添加完成。
    @echo.
    @echo  2、正在 添加 cTool-UDP 规则,开启UDP:8000端口 ...
    @netsh advfirewall firewall delete rule name=cTool-UDP dir=in > nul
    @netsh advfirewall firewall add rule name=cTool-UDP dir=in action=allow protocol=udp localport=8000 > nul
    @echo  ※cTool-UDP 规则 添加完成。
    @echo.
    @echo  3、正在 添加 cTool-RDP 远程桌面规则,开启TCP:%CurrPort%端口 ...
    @netsh advfirewall firewall delete rule name=cTool-RDP dir=in > nul
    @netsh advfirewall firewall add rule name=cTool-RDP dir=in action=allow protocol=tcp localport=%CurrPort% > nul
    @echo  ※cTool-RDP 远程桌面规则 添加完成。
    @echo  ----------------------------------------------------
    @echo.
    @echo.
    goto StartFireWall

    :manualFW
    @for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A CurrPort=%%a )
    @if not "%CurrPort%"=="%OldPort%"  set CurrPort=%CurrPort%,%OldPort%
    @echo.
    @echo  已选择:【手动指定防火墙放通端口】
    @echo  ===========================================
    @echo      仅允许输入:数字、“,”、“-”,或者按“M”返回
    @echo      使用英文“,”分隔单个端口、使用“-”指定一段端口
    @echo      数字范围:1025-65535
    @echo      例如:3389,6000,7890-7889
    @echo     
    @echo.
    @echo.

    :tcp
    @set /p tcpPort=请输入要放通的 TCP端口:
    @if "%tcpPort%"=="m" cls && goto fwRule
    @if "%tcpPort%"=="M" cls && goto fwRule
    @echo %tcpPort%|findstr "^[0-9,\-][0-9,\-]*$">nul&& (@echo. >nul)|| (@echo  *对不起,端口 必须是:0-9、“,”、“-”,请重新输入(返回请按:M)。&& @echo. && @echo. && goto tcp )
    @netsh advfirewall firewall delete rule name=cTool-TCP dir=in > nul
    @netsh advfirewall firewall add rule name=cTool-TCP dir=in action=allow protocol=tcp localport=%CurrPort%,%tcpPort% > nul
    @echo  ※cTool-TCP 规则 添加完成,放通的 TCP端口是:%CurrPort%,%tcpPort%
    @echo.

    :udp
    @set /p udpPort=请输入要放通的 UDP端口:
    @if "%udpPort%"=="m" cls && goto fwRule
    @if "%udpPort%"=="M" cls && goto fwRule
    @echo %udpPort%|findstr "^[0-9,\-][0-9,\-]*$">nul&& (@echo. >nul)|| (@echo  *对不起,端口 必须是:0-9、“,”、“-”,请重新输入(返回请按:M)。&& @echo. && @echo. && goto udp )
    @netsh advfirewall firewall delete rule name=cTool-UDP dir=in > nul
    @netsh advfirewall firewall add rule name=cTool-UDP dir=in action=allow protocol=UDP localport=%udpPort% > nul
    @echo  ※cTool-UDP 规则 添加完成,放通的 UDP端口是:%udpPort%
    @echo.
    @echo 添加 cTool-RDP 远程桌面规则,开启TCP:%CurrPort%端口 ...
    @netsh advfirewall firewall delete rule name=cTool-RDP dir=in > nul
    @netsh advfirewall firewall add rule name=cTool-RDP dir=in action=allow protocol=tcp localport=%CurrPort% > nul
    @echo  ※cTool-RDP 远程桌面规则 添加完成。
    @echo  ----------------------------------
    @echo.
    @echo.
    goto StartFireWall

    :showFW
    @cls
    @echo.
    @echo  当前防火墙 放通的端口:
    @echo  ===================================
    @for /f "tokens=1,2-28,*" %%b in ('netsh Advfirewall firewall show rule name^=cTool-TCP') do (if "%%b" equ "本地端口:" (@echo  cTool-TCP放通端口:%%d ))
    @for /f "tokens=1,2-28,*" %%b in ('netsh Advfirewall firewall show rule name^=cTool-UDP') do (if "%%b" equ "本地端口:" (@echo  cTool-UDP放通端口:%%d ))
    @for /f "tokens=1,2-28,*" %%b in ('netsh Advfirewall firewall show rule name^=cTool-RDP') do (if "%%b" equ "本地端口:" (@echo  cTool-RDP放通端口:%%d))
    @echo.
    @echo.
    @echo.
    goto ContinuefwRule

    :StartFireWall
    @echo.
    @echo.
    @echo  是否现在【开启防火墙】?
    @echo  ===========================================
    @echo  ※请确保所有 需要放通的端口 都已添加,避免远程无法连接。※
    @echo.
    @choice /c:yn /m "*立刻【开启防火墙】请按:Y,放弃:N"
    @if %errorlevel%==2 @echo. && @echo  ※保持当前防火墙状态 && @echo. && @echo. && @echo. && @echo. && @echo. && goto menu
    @echo  启动 防火墙服务 ...
    @sc start MpsSvc > nul
    @echo  启动 防火墙策略 ...
    @netsh advfirewall set allprofiles state on > nul
    @echo  设置 防火墙服务 为自动启动 ...
    @sc config MpsSvc start= auto > nul
    @echo.
    @echo  设置完成:【防火墙】已开启
    @echo  ---------------------------
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu
    rem 修改 远程桌面端口 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    :ChangeRdpPort
    @cls
    @color 2e
    rem @ver | find "6." > NUL &&  set RdpRegPath=HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
    @for /f "tokens=3" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber"') do ( set /A CurrPort=%%a )
    @set port=
    @echo  【修改远程桌面端口】
    @echo  ================================
    @echo  当前远程桌面端口为:%CurrPort%
    @echo.
    @echo  ※请谨慎修改端口※
    @echo  ※修改后可能造成防火墙拦截,无法访问远程桌面服务※
    @echo  ※修改后,需立刻重启服务器※
    @echo  返回主菜单:请按M
    @echo.
    @echo.

    :inputPort
    @set /p port=请输入新端口(必须纯数字):
    @if "%port%"=="m" cls && goto menu
    @if "%port%"=="M" cls && goto menu
    @echo %port%|findstr "^[0-9][0-9]*$">nul&& goto isNum || (@echo  * 端口 必须是数字,请重新输入。&& @echo  * 返回主菜单:请按M && @echo. && @echo. && goto inputPort )
    @goto end

    :isNum
    @if %port% gtr 1024 (if %port% leq 65535 (goto ChangePort) else (@echo  *输入的端口 必须大于:1024,小于等于:65535)) else (@echo  *输入的端口 必须大于:1024,小于等于:65535)
    @echo.
    @echo.
    @goto inputPort

    :ChangePort
    @set RdpRegPath=HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
    @set rdpwdPath=HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp
    reg add "%RdpRegPath%" /f /v "PortNumber" /t REG_DWORD /d %port% >nul
    reg add "%rdpwdPath%" /f /v "PortNumber" /t REG_DWORD /d %port% >nul
    rem 添加防火墙规则,避免被拦截
    @set AllowPort=%port%
    @if not "%CurrPort%"==%port%  set AllowPort=%CurrPort%,%AllowPort%
    @if not "%CurrPort%"=="%OldPort%" (@if not "%OldPort%"==%port% set AllowPort=%OldPort%,%AllowPort%)
    @netsh advfirewall firewall delete rule name=cTool-RDP dir=in > nul
    @netsh advfirewall firewall add rule name=cTool-RDP dir=in action=allow protocol=tcp localport=%AllowPort% > nul
    @echo.
    @echo  ※修改完成:
    @echo  ※远程桌面端口已经修改为:【%port%】
    @echo  ------------------------------------
    @echo.
    @echo.
    @echo.

    :needReboot
    @echo  ※※  【请立刻重启服务器】 ※※
    @pause >nul
    @goto needReboot
    rem 修改 远程桌面端口 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    :Close445
    @cls
    @echo.
    @echo  【 关闭445端口 】
    @echo  ==============================================
    @echo  此功能用于 关闭共享服务,让出占用的445端口
    @echo.
    @echo  注意:
    @echo      关闭后,此电脑 不能对外提供 共享服务。
    @echo      关闭后,此电脑 访问其他电脑 共享文件不受影响。
    @echo      重启后生效。
    @echo.
    @echo    确认关闭    :请按 Y
    @echo    恢复共享服务:请按 R
    @echo    返回主菜单  :请按 M
    @echo.
    @echo.
    @choice /c:yrm /m "请选择您的操作:"
    @if %errorlevel%==1 goto ConfirmClose445
    @if %errorlevel%==2 goto Reset445
    @if %errorlevel%==3 @cls && goto menu

    :ConfirmClose445
    @reg add HKLM\SYSTEM\CurrentControlSet\Services\NetBT\Parameters /f /v "SMBDeviceEnabled" /t REG_DWORD /d 0 >nul 2>nul
    @sc config LanmanServer start= DISABLED >nul 2>nul
    @echo.
    @echo  ========================
    @echo  操作完成
    @echo  重启后 445端口 将关闭。
    @echo  ========================
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :Reset445
    @reg delete HKLM\SYSTEM\CurrentControlSet\Services\NetBT\Parameters /f /v "SMBDeviceEnabled"  >nul 2>nul
    @sc config LanmanServer start= AUTO >nul 2>nul
    @echo.
    @echo  =========================
    @echo  操作完成
    @echo  重启后 共享服务 将恢复。
    @echo  =========================
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :LockAccount
    @cls
    @echo  【设置账户锁定策略】
    @echo  ==================================
    @echo  为了保障服务器密码不被暴力破解
    @echo  设定:
    @echo      密码错误 10次,账户锁定 3分钟。
    @echo.
    @echo      开启策略  :请按 Y
    @echo      关闭策略  :请按 R
    @echo      返回主菜单:请按 M
    @echo.
    @echo.
    @choice /c:yrm /m "请选择您的操作:"
    @if %errorlevel%==1 goto StartLock
    @if %errorlevel%==2 goto CancelLock
    @if %errorlevel%==3 @cls && goto menu

    :StartLock
    @echo.
    @echo.
    @echo ※设置【密码错误10次锁定账户】:
    @net accounts /lockoutthreshold:10
    @echo ※设置【账户锁定时间:3分钟】:
    @net accounts /lockoutwindow:3
    @net accounts /lockoutduration:3 >nul
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu
    :CancelLock
    @echo.
    @echo.
    @echo *取消【账户密码错误锁定策略】:
    @net accounts /lockoutthreshold:0
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :DisableAutoDiskRun
    @cls
    @echo.
    @echo  禁用【自动播放】
    @echo  ================================================================
    @echo  自动播放:微软为了提高用户体验,对于新插入的U盘,或双击磁盘盘符,
    @echo  提供了默认操作,这一功能被别有用心的人利用了,成了病毒、木马、黑
    @echo  客工具的温床,为排除安全隐患,请尽量禁止“自动播放”功能。
    @echo.
    @echo    禁用      :请按 Y
    @echo    恢复      :请按 R
    @echo    返回主菜单:请按 M
    @echo.
    @echo.
    @choice /c:yrm /m "请选择您的操作:"
    @if %errorlevel%==1 goto ConfirmDisableAutoDiskRun
    @if %errorlevel%==2 goto CancelDisableAutoDiskRun
    @if %errorlevel%==3 @cls && goto menu

    :ConfirmDisableAutoDiskRun
    REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "NoDriveTypeAutoRun" /t REG_DWORD /d 255 /f >nul 2>nul
    @echo.
    @echo  ========================
    @echo  操作完成
    @echo  已禁用【自动播放】
    @echo  ========================
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :CancelDisableAutoDiskRun
    REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "NoDriveTypeAutoRun" /f >nul 2>nul
    @echo.
    @echo  =========================
    @echo  操作完成
    @echo  已允许【自动播放】
    @echo  =========================
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :DisabledLLMNR
    @cls
    @echo.
    @echo  禁用【链路本地多播名称解析(LLMNR)】
    @echo  =============================================================
    @echo  LLMNR 是辅助名称解析协议。
    @echo  LLMNR 使用多播机制,在一个子网上的本地网络 获取DNS 名称解析,
    @echo  能在无法进行传统的 DNS 名称解析的情况下提供名称解析功能。
    @echo.
    @echo    关闭解析  :请按 Y
    @echo    恢复解析  :请按 R
    @echo    返回主菜单:请按 M
    @echo.
    @echo.
    @choice /c:yrm /m "请选择您的操作:"
    @if %errorlevel%==1 goto ConfirmDisabledLLMNR
    @if %errorlevel%==2 goto CancelDisabledLLMNR
    @if %errorlevel%==3 @cls && goto menu

    :ConfirmDisabledLLMNR
    REG ADD "HKLM\Software\policies\Microsoft\Windows NT\DNSClient" /v "EnableMulticast" /t REG_DWORD /d "0" /f >nul 2>nul
    @echo.
    @echo  ========================
    @echo  操作完成
    @echo  已禁用【链路本地多播名称解析(LLMNR)】
    @echo  ========================
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :CancelDisabledLLMNR
    REG ADD "HKLM\Software\policies\Microsoft\Windows NT\DNSClient" /v "EnableMulticast" /t REG_DWORD /d "1" /f >nul 2>nul
    @echo.
    @echo  =========================
    @echo  操作完成
    @echo  已允许【链路本地多播名称解析(LLMNR)】
    @echo  =========================
    @echo.
    @echo.
    @echo.
    @echo.
    @goto menu

    :ListNetstat
    @cls
    @echo 查看系统 当前打开的TCP端口
    @echo =========================== Code by 陈树林 ===
    @echo.
    @echo 打开端口 进程ID 进程名称
    for /f "tokens=2,5" %%i in    ('netstat -anop tcp^|findstr LISTENING')  do (
       for /f "tokens=1,2" %%k in    ('tasklist /nh^|findstr %%j')  do (
           if %%j NEQ 4 (if "%%k" neq "wininit.exe" (if "%%k" neq "QQ.exe" (
           if "%%k" neq "services.exe" (if "%%k" neq "lsass.exe" (
           if "%%k" neq "spoolsv.exe" (if "%%k" neq "360se.exe" (
           if "%%k" neq "vmware-hostd.exe" (if "%%k" neq "vmware-authd.exe" (
           if "%%k" neq "360tray.exe" (
           if %%j==%%l  ( @echo %%i %%j %%k) ))))))))))
        )
    )
    @echo.
    @echo.
    @echo.
    @echo.
    if %CallBy% neq "fwRule" (@goto menu) else (set CallBy="" && goto ContinuefwRule)

    :end

    相关文章

      网友评论

          本文标题:系统综合安全配置方案

          本文链接:https://www.haomeiwen.com/subject/cvpgzktx.html