使用IIS套上cloudflare后,很多人不知道禁止非cloudflare ip访问,今天给个一键代码,在ps里边执行即可。# Cloudflare IP 地址列表
$cloudflareIPs = @(\"173.245.48.0/20\",\"103.21.244.0/22\",\"103.22.200
使用IIS套上cloudflare后,很多人不知道禁止非cloudflare ip访问,今天给个一键代码,在ps里边执行即可。
# Cloudflare IP 地址列表
$cloudflareIPs = @(
"173.245.48.0/20",
"103.21.244.0/22",
"103.22.200.0/22",
"103.31.4.0/22",
"141.101.64.0/18",
"108.162.192.0/18",
"190.93.240.0/20",
"188.114.96.0/20",
"197.234.240.0/22",
"198.41.128.0/17",
"162.158.0.0/15",
"104.16.0.0/13",
"104.24.0.0/14",
"172.64.0.0/13",
"131.0.72.0/22"
)
# 获取所有 IIS 网站的配置
$sites = Get-Website
# 循环遍历所有 IIS 网站并添加 Cloudflare IP 地址到允许列表
foreach ($site in $sites) {
$siteName = $site.Name
$siteConfig = Get-WebConfiguration -PSPath "IIS:\Sites\$siteName"
foreach ($ipRange in $cloudflareIPs) {
$ruleName = "AllowCloudflareIP_$([System.Guid]::NewGuid())"
$addRuleScript = @"
ipconfig /flushdns
New-WebConfigurationProperty -PSPath 'IIS:\Sites\$siteName' -Filter "system.webServer/security/ipSecurity" -Name "." -Value @{
"ipAddress" = "$ipRange";
"subnetMask" = "255.255.255.255";
"allowed" = $true;
"domainName" = '';
"byPass" = $false;
"matchOnly" = $true;
"negate" = $false;
"ruleName" = "$ruleName";
"enableReverseDns" = $false;
}
"@
Invoke-Expression $addRuleScript
}
# 应用更改
$siteConfig | Set-WebConfiguration -Verbose
}
购买必读
本站模板没有任何后门,也不会和我们服务器有任何通信,请您放心使用。
本源码一次性买断,没有二次费用,并享受免费更新。
在使用本站模板时,请不要使用我们的产品从事违反中华人民共和国法律、违反公序良俗的活动,否则我们有权拒绝服务,并配合有关单位予以处置。如果您不符合条件,请勿购买。
售后是指通过QQ与客服联系处理问题,售后过期不影响您对主题的使用和更新。免费三个月售后服务。售后服务时间为工作日早9点到晚5点。如果不在线可以QQ留言,我们会尽快给您答复。
售后服务包括程序的使用、BUG的处理、意见建议等。不包括技术服务、网站优化、二次开发、环境配置、服务器运维等。
代码类商品属于数字化商品,具有可复制性,不支持退款,详见《网络交易管理办法》第二章 第16条 第三类。
请仔细阅读我们的用户协议:用户协议
本站模板没有任何后门,也不会和我们服务器有任何通信,请您放心使用。
本源码一次性买断,没有二次费用,并享受免费更新。
在使用本站模板时,请不要使用我们的产品从事违反中华人民共和国法律、违反公序良俗的活动,否则我们有权拒绝服务,并配合有关单位予以处置。如果您不符合条件,请勿购买。
售后是指通过QQ与客服联系处理问题,售后过期不影响您对主题的使用和更新。免费三个月售后服务。售后服务时间为工作日早9点到晚5点。如果不在线可以QQ留言,我们会尽快给您答复。
售后服务包括程序的使用、BUG的处理、意见建议等。不包括技术服务、网站优化、二次开发、环境配置、服务器运维等。
代码类商品属于数字化商品,具有可复制性,不支持退款,详见《网络交易管理办法》第二章 第16条 第三类。
请仔细阅读我们的用户协议:用户协议



