• 防火墙设置


    netstat -ant | ?({$_ -like "*:80*"}) |%{$_.Trim() -replace "\s{2,}"," " }|%{$_.split(' ')[2]}|%{$_.split(':')[0]}|Group-Object $_ | sort Count -Descending | Where-Object({$_.Count -ge 50}) |Select-Object Count,Name >  C:\Users\Administrator\Desktop\cports\ip.txt

    ####以上内容另存为一个'自动发现.PS1'文件
    ####以下内容另存为一个'自动禁止.PS1'文件
    $ip=(get-content C:\Users\Administrator\Desktop\cports\ip.txt -totalcount 4)[-1]|%{$_.trim()}|%{$_.split()[-1]}
    if ("$?" -eq "False")
    {
    echo "数据错误"
    exit
    }
    if ((get-content C:\Users\Administrator\Desktop\cports\ip.txt -totalcount 4)[-1]|%{$_.trim()}|%{$_.split()[-1]}|%{$_.startswith("192")})
    {
    echo "不能操作私网IP"
    exit
    }
    #$ip=Read-Host "请输入要禁止的IP"
    $RULE_NAME=$ip
    netsh advfirewall firewall show rule name=$RULE_NAME
    if ("$?" -eq "True")
    {
    echo "对不起,规则 $RULE_NAME 已经存在"
    }
    else 
    {
    echo "规则 $RULE_NAME 创建中..."
    netsh advfirewall firewall add rule name=$RULE_NAME dir=in protocol=tcp action=block remoteip=$ip
    }
    exit

    ####检测频率可以调整计划任务的循环时间,单IP的并发数限制可以在第一行的‘Where-Object({$_.Count -ge 50}’  50可以自己调整
    ####第一次运行可能失败,是因为系统默认不允许执行powershell脚本,请输入解锁命令‘set-ExecutionPolicy RemoteSigned’即可。

  • 相关阅读:
    第10章 RDB持久化
    前台项目第一天(1-6)
    Sqlserver关于tempdb临时数据库文件个数的最佳实践
    C语言中volatile/register/const/static/extern/auto关键字的作用
    高等数学刷题
    C#里TcpListener的阻塞式服务器
    Dockerfile文件解释
    数据结构————树
    提高应用程序测试覆盖率的 4 个步骤
    取消task异步任务
  • 原文地址:https://blog.csdn.net/c2unix/article/details/126264569