A)屏蔽某人具有比一排[n]的数量404的更多。
有一个名为“更好的WP安全”的wordpress插件,它具有404检测功能,它完全允许此功能。我现在正在使用它,它工作得很好。
B)阻止匹配某些关键字的人,例如寻找phpMyAdmin。
你不想阻止任何试图访问phpMyAdmin的人,因为那也包括你自己。您想通过IP过滤请求 - 不允许任何不在白名单中的IP访问phpMyAdmin。您将在下面的第三个问题的答案中找到如何做到这一点。
C)这是可选的,但理想的解决方案也将阻止IP地址,如果我想
您可以按照以下步骤禁止访问IIS上的wp-login.php中和可湿性粉剂管理员对于不在白名单中的IP的7.5。您可以通过在步骤4的代码中(包括)复制代码之间的代码并更改“path”属性来模拟该示例,以将您想要的任何文件(例如phpMyAdmin)包含在wordpress文件夹中。
1,打开网页。在你的WordPress根文件夹的配置文件,如果你没有找到它,创建一个
2,启用“IP和域限制”按照[本条]的作用[1]
3,打开IIS Manager,点击根节点,在右侧面板中选择“Feature Delegation”,找到“IPv4 Address and Domain Restrictions”项,授予“Read/Write”权限
4,打开web.config文件,如果您自己创建了文件并且该文件为空,请添加以下代码(请参阅底部的注释以获得解释):
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<location path="wp-login.php">
<system.webServer>
<security>
<ipSecurity allowUnlisted="false">
<clear/>
<add ipAddress="100.100.100.29" allowed="true"/>
<add ipAddress="111.111.111.0" subnetMask="255.255.255.0" allowed="true"/>
</ipSecurity>
</security>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</location>
<location path="wp-admin">
<system.webServer>
<security>
<ipSecurity allowUnlisted="false">
<clear/>
<add ipAddress="100.100.100.29" allowed="true"/>
<add ipAddress="111.111.111.0" subnetMask="255.255.255.0" allowed="true"/>
</ipSecurity>
</security>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</location>
</configuration>
如果您正在使用现有的web.config文件,那么您只需将标记之间的代码添加到web.config中的现有标记中即可。
说明:此代码阻止访问wp-login.php或wp-admin的所有IP,例外情况是IP 100.100.100.29和111.111.111.1-255。请用您自己的清单替换这些IP。
5,现在尝试访问不在列表中的IP的wp-login.php或wp-admin,应该给出403-访问被拒绝错误。
urlscan对于iis和apache的重写规则是一样的吗?这就是为什么我使用,我只是重写所有请求phpMy *管理*配置*等索引。这主要是为了清除错误日志(因为我没有任何这些文件夹),但也很安心 – thegaffney
不,URLScan不会像apache重写一样是url重写器,而是试图阻止其中的攻击轨道。如果你想重定向(我不相信你可以使用UrlScan,但我错了),一种选择是实现处理程序。 –