getStorageEngine();
if (!isset($collapseable)) {
$collapseable = true;
}
?>
-
'disableWAFIPBlocking',
'enabledValue' => 1,
'disabledValue' => 0,
'value' => wfConfig::get('disableWAFIPBlocking') ? 1 : 0,
'title' => __('Delay IP and Country blocking until after WordPress and plugins have loaded (only process firewall rules early)', 'wordfence'),
'subtitle' => ($firewall->isSubDirectoryInstallation() ? __('You are currently running the WAF from another WordPress installation. This option can be changed once you configure the firewall to run correctly on this site.', 'wordfence') : ''),
'helpLink' => wfSupportController::supportURL(wfSupportController::ITEM_FIREWALL_WAF_OPTION_DELAY_BLOCKING),
'disabled' => $firewall->isSubDirectoryInstallation(),
))->render();
?>
-
'whitelisted',
'textValue' => wfUtils::cleanupOneEntryPerLine(wfConfig::get('whitelisted')),
'title' => __('Allowlisted IP addresses that bypass all rules', 'wordfence'),
'alignTitle' => 'top',
'subtitleHTML' => wp_kses(__('Allowlisted IPs must be separated by commas or placed on separate lines. You can specify ranges using the following formats: 127.0.0.1/24, 127.0.0.[1-100], or 127.0.0.1-127.0.1.100
Wordfence automatically allowlists private networks (opens in new tab) because these are not routable on the public Internet.', 'wordfence'), array('br'=>array(), 'a'=>array('href'=>array(), 'target'=>array(), 'rel'=>array()), 'span'=>array('class'=>array()))),
'subtitlePosition' => 'value',
'helpLink' => wfSupportController::supportURL(wfSupportController::ITEM_FIREWALL_WAF_OPTION_WHITELISTED_IPS),
))->render();
?>
-
$preset) {
if (!isset($preset['n'])) { continue; } //Not named, omitted from configurable list
if ((isset($preset['h']) && $preset['h']) || (isset($preset['f']) && $preset['f'])) { continue; } //Flagged as hidden or always enabled, omitted from configurable list
$names[$tag] = $preset['n'];
if (!isset($whitelistedServices[$tag]) && isset($preset['d']) && $preset['d']) {
$whitelistedServices[$tag] = 1;
}
}
$options = array();
foreach ($names as $tag => $name) {
$options[] = array(
'name' => 'whitelistedServices.' . preg_replace('/[^a-z0-9]/i', '', $tag),
'enabledValue' => 1,
'disabledValue' => 0,
'value' => (isset($whitelistedServices[$tag]) && $whitelistedServices[$tag]) ? 1 : 0,
'title' => $name,
);
}
echo wfView::create('options/option-toggled-multiple', array(
'options' => $options,
'title' => __('Allowlisted services', 'wordfence'),
'id' => 'wf-option-whitelistedServices',
'helpLink' => wfSupportController::supportURL(wfSupportController::ITEM_FIREWALL_WAF_OPTION_WHITELISTED_SERVICES),
))->render();
?>
-
'bannedURLs',
'textValue' => wfUtils::cleanupOneEntryPerLine(wfConfig::get('bannedURLs')),
'title' => __('Immediately block IPs that access these URLs', 'wordfence'),
'alignTitle' => 'top',
'subtitle' => __('Separate multiple URLs with commas or place them on separate lines. Asterisks are wildcards, but use with care. If you see an attacker repeatedly probing your site for a known vulnerability you can use this to immediately block them. All URLs must start with a "/" without quotes and must be relative. e.g. /badURLone/, /bannedPage.html, /dont-access/this/URL/, /starts/with-*', 'wordfence'),
'subtitlePosition' => 'value',
'helpLink' => wfSupportController::supportURL(wfSupportController::ITEM_FIREWALL_WAF_OPTION_IMMEDIATELY_BLOCK_URLS),
))->render();
?>
-
'wafAlertWhitelist',
'textValue' => wfUtils::cleanupOneEntryPerLine(wfConfig::get('wafAlertWhitelist')),
'title' => __('Ignored IP addresses for Wordfence Web Application Firewall alerting', 'wordfence'),
'alignTitle' => 'top',
'subtitle' => __('Ignored IPs must be separated by commas or placed on separate lines. These addresses will be ignored from any alerts about increased attacks and can be used to ignore things like standalone website security scanners.', 'wordfence'),
'subtitlePosition' => 'value',
'helpLink' => wfSupportController::supportURL(wfSupportController::ITEM_FIREWALL_WAF_IGNORED_ALERT_IPS),
))->render();
?>
-
$firewall,
))->render();
?>