summaryrefslogtreecommitdiffstats
path: root/src/usr/local/www/services_dyndns_edit.php
diff options
context:
space:
mode:
authorCarlGill <carl.gill@worldtech.io>2016-09-05 21:28:05 -0400
committerRenato Botelho <renato@netgate.com>2017-01-04 13:48:51 -0200
commit23bd0f9ddf0da456d39fdb4e91d6f181604031ab (patch)
tree62a1fc48e7fb65c27e1e988c2221e185ee55e287 /src/usr/local/www/services_dyndns_edit.php
parent32771b5a8d0cfc592bb851e171b68062a2b285d5 (diff)
downloadpfsense-23bd0f9ddf0da456d39fdb4e91d6f181604031ab.zip
pfsense-23bd0f9ddf0da456d39fdb4e91d6f181604031ab.tar.gz
Added support for CloudFlares Proxy.
Included a checkbox to enable and disable this feature when CloudeFlare type is selected. Included proxied variable in the update script as well. Defaults to false, as the is the current functionality Added help text Updated Last tested date Hope this helps other people. I use both dynDNS and the Proxy service. And by default without this feature, the proxy gets disabled. This is a huge problem, as I have all traffic blocked except for CloudFlare. And because I have certain other security features enabled, when the Proxy goes disabled, The Site goes down hard to end users. With this feature, I can ensure the proxy stays enabled. (cherry picked from commit e10d25b4c3109347a43a729f8c098138272fe1e7)
Diffstat (limited to 'src/usr/local/www/services_dyndns_edit.php')
-rw-r--r--src/usr/local/www/services_dyndns_edit.php29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/usr/local/www/services_dyndns_edit.php b/src/usr/local/www/services_dyndns_edit.php
index 8691053..84b6e77 100644
--- a/src/usr/local/www/services_dyndns_edit.php
+++ b/src/usr/local/www/services_dyndns_edit.php
@@ -96,6 +96,7 @@ if (isset($id) && isset($a_dyndns[$id])) {
$pconfig['enable'] = !isset($a_dyndns[$id]['enable']);
$pconfig['interface'] = $a_dyndns[$id]['interface'];
$pconfig['wildcard'] = isset($a_dyndns[$id]['wildcard']);
+ $pconfig['proxied'] = isset($a_dyndns[$id]['proxied']);
$pconfig['verboselog'] = isset($a_dyndns[$id]['verboselog']);
$pconfig['curl_ipresolve_v4'] = isset($a_dyndns[$id]['curl_ipresolve_v4']);
$pconfig['curl_ssl_verifypeer'] = isset($a_dyndns[$id]['curl_ssl_verifypeer']);
@@ -190,6 +191,7 @@ if ($_POST) {
$dyndns['domainname'] = $_POST['domainname'];
$dyndns['mx'] = $_POST['mx'];
$dyndns['wildcard'] = $_POST['wildcard'] ? true : false;
+ $dyndns['proxied'] = $_POST['proxied'] ? true : false;
$dyndns['verboselog'] = $_POST['verboselog'] ? true : false;
$dyndns['curl_ipresolve_v4'] = $_POST['curl_ipresolve_v4'] ? true : false;
$dyndns['curl_ssl_verifypeer'] = $_POST['curl_ssl_verifypeer'] ? true : false;
@@ -355,6 +357,15 @@ $section->addInput(new Form_Checkbox(
));
$section->addInput(new Form_Checkbox(
+ 'proxied',
+ 'CloudFlare Proxy',
+ 'Enable Proxy',
+ $pconfig['proxied']
+))->setHelp('Note: This enables CloudFlares Virtual DNS proxy. When Enabled it will route all traffic '.
+ 'through their servers. By Default this is disabled and your Real IP is exposed.'.
+ 'More info: <a href="https://blog.cloudflare.com/announcing-virtual-dns-ddos-mitigation-and-global-distribution-for-dns-traffic/" target="_blank">CloudFlare Blog</a>');
+
+$section->addInput(new Form_Checkbox(
'verboselog',
'Verbose logging',
'Enable verbose logging',
@@ -473,6 +484,7 @@ events.push(function() {
hideInput('host', true);
hideInput('mx', true);
hideCheckbox('wildcard', true);
+ hideCheckbox('proxied', true);
hideInput('zoneid', true);
hideInput('ttl', true);
break;
@@ -488,6 +500,7 @@ events.push(function() {
hideInput('host', false);
hideInput('mx', false);
hideCheckbox('wildcard', false);
+ hideCheckbox('proxied', true);
hideInput('zoneid', false);
hideInput('ttl', false);
break;
@@ -504,9 +517,24 @@ events.push(function() {
hideInput('host', false);
hideInput('mx', false);
hideCheckbox('wildcard', false);
+ hideCheckbox('proxied', true);
hideInput('zoneid', true);
hideInput('ttl', true);
break;
+ case "cloudflare-v6":
+ case "cloudflare":
+ hideGroupInput('domainname', true);
+ hideInput('resultmatch', true);
+ hideInput('updateurl', true);
+ hideInput('requestif', true);
+ hideCheckbox('curl_ipresolve_v4', true);
+ hideCheckbox('curl_ssl_verifypeer', true);
+ hideInput('host', false);
+ hideInput('mx', false);
+ hideCheckbox('wildcard', false);
+ hideCheckbox('proxied', false);
+ hideInput('zoneid', true);
+ hideInput('ttl', true);
default:
hideGroupInput('domainname', true);
hideInput('resultmatch', true);
@@ -517,6 +545,7 @@ events.push(function() {
hideInput('host', false);
hideInput('mx', false);
hideCheckbox('wildcard', false);
+ hideCheckbox('proxied', true);
hideInput('zoneid', true);
hideInput('ttl', true);
}
OpenPOWER on IntegriCloud