信息中心

 技术文摘
 技术文摘
您当前的位置是:网站首页 > 信息中心 > 技术文摘
使用IP安全策略(IPSEC)提高服务器安全性
发布时间:2025-01-23 11:04   发布人: 系统管理员
现如今的网络非常不安全,有很多国外的IP(肉鸡,傀儡机)对你的服务器进行端口扫描,发现漏洞,然后进行暴力破解,一旦攻入成功,你的服务器就变成他们的新肉鸡或者植入木马病毒对你进行勒索。如果你想服务器端口只想被国内IP访问,那么可以使用我这个脚本工具。它是利用IPSec策略实现的,Windows系统下(从2000,2003,2008,2012,2016,2019,2022)都可以使用



IPSec介绍
IPSec 是一种开放标准的框架结构,它通过使用加密安全服务来确保 IP 网络上保密安全的通信。Windows 的 IPSec 执行基于由 Internet 工程任务组 (IETF) IPSec 工作组开发的标准。
IPsec 可建立从源 IP 地址到目标 IP 地址的信任和安全。只有那些必须了解通信是安全的计算机才是发送和接收的计算机。每台计算机都假定进行通信的媒介不安全,因此在各自的终端上处理安全性。
IPSec 策略用于配置 IPSec 安全服务。支持TCP、UDP、ICMP、EGP等大多数通信协议,可为现有网络中的通信提供各种级别的保护。可以根据计算机、域、站点的安全需要来配置策略。
IPSec 策略由常规 IPSec 策略设置和规则组成。 下面以命令行的角度讲述 IPSec 策略的创建和使用,比较直观。
 
用到的IP库来自https://ispip.clang.cn/
下载IP库文本,然后进行简单替换,就是将里面的/替换成空格
原来
1.0.1.0/24
1.0.2.0/23
1.0.8.0/21
1.0.32.0/19
替换成
1.0.1.0 24
1.0.2.0 23
1.0.8.0 21
1.0.32.0 19

脚本说明
@echo off
setlocal enabledelayedexpansion

echo 此程序,添加ipsec策略,限制某端口,只允许国内IP访问set /p polname=请输入默认策略名(不明白可直接回车):set /p allowport=请输入要限制的端口:set /p portdes=请输入端口用途:if "%polname%"  == "" set polname=IPSECrem 添加策略动作,策略名
netsh ipsec static add filteraction name=denyact action=blocknetsh ipsec static add filteraction name=allowact action=permit
netsh ipsec static add policy name=%polname%rem 删除原有的规则、筛选器
netsh ipsec static delete rule name=%allowport%-%portdes%-ALLOW policy=%polname%
netsh ipsec static delete filterlist name=%allowport%-%portdes%-ALLOWrem 添加筛选器,通过递归方式添加文本中所有IP,允许访问的端口
netsh ipsec static add filterlist name=%allowport%-%portdes%-ALLOWfor /F "tokens=1,2 delims= " %%i in ('type ALL_CN_IP.txt') do (
netsh ipsec static add filter filterlist=%allowport%-%portdes%-ALLOW srcaddr=%%i srcmask=%%j dstaddr=Me dstport=%allowport% protocol=TCP  mirrored=no)
netsh ipsec static add rule name=%allowport%-%portdes%-ALLOW policy=%polname% filterlist=%allowport%-%portdes%-ALLOW filteraction=allowactrem 添加这个端口默认拒绝的筛选器
netsh ipsec static add filterlist name=%allowport%-%portdes%-DENY
netsh ipsec static add filter filterlist=%allowport%-%portdes%-DENY srcaddr=any dstaddr=Me dstport=%allowport% protocol=TCP mirrored=nonetsh ipsec static add rule name=%allowport%-%portdes%-DENY policy=%polname% filterlist=%allowport%-%portdes%-DENY filteraction=denyactrem  为了防止启用安全策略后,连不上服务器,策略会在1分钟后自动取消
echo IPSEC策略将在1分钟后取消, 请在安全策略中指派
ping -n 1 -w 60000 127.255.255.255 > %temp%nullnetsh ipsec static set policy name="%polname%" assign=nrem  打开安全策略,重新手动指派
secpol.msc

应用后效果