diff options
Diffstat (limited to 'applications/luci-app-banip/htdocs/luci-static')
4 files changed, 40 insertions, 24 deletions
diff --git a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/allowlist.js b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/allowlist.js index e70222c023..6b54f2946e 100644 --- a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/allowlist.js +++ b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/allowlist.js @@ -29,8 +29,8 @@ return view.extend({ } return E([ E('p', {}, - _('This is the local banIP allowlist that will permit certain MAC/IP/CIDR addresses.<br /> \ - <em><b>Please note:</b></em> add only exactly one MAC/IPv4/IPv6 address or domain name per line.')), + _('This is the local banIP allowlist that will permit certain MAC-, IP-addresses or domain names.<br /> \ + <em><b>Please note:</b></em> add only exactly one MAC/IPv4/IPv6 address or domain name per line. Ranges in CIDR notation and MAC/IP-bindings are allowed.')), E('p', {}, E('textarea', { 'style': 'width: 100% !important; padding: 5px; font-family: monospace', diff --git a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/blocklist.js b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/blocklist.js index 22391cc982..8dede44e52 100644 --- a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/blocklist.js +++ b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/blocklist.js @@ -29,8 +29,8 @@ return view.extend({ } return E([ E('p', {}, - _('This is the local banIP blocklist that will prevent certain MAC/IP/CIDR addresses.<br /> \ - <em><b>Please note:</b></em> add only exactly one MAC/IPv4/IPv6 address or domain name per line.')), + _('This is the local banIP blocklist that will prevent certain MAC-, IP-addresses or domain names.<br /> \ + <em><b>Please note:</b></em> add only exactly one MAC/IPv4/IPv6 address or domain name per line. Ranges in CIDR notation and MAC/IP-bindings are allowed.')), E('p', {}, E('textarea', { 'style': 'width: 100% !important; padding: 5px; font-family: monospace', diff --git a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/feeds.js b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/feeds.js index 267ca410f7..0e4e682986 100644 --- a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/feeds.js +++ b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/feeds.js @@ -205,7 +205,7 @@ return view.extend({ if (!value) { return true; } - if (!value.match(/^(http:\/\/|https:\/\/)[A-Za-z0-9\/\.\-_\?\&\+=~#]+$/)) { + if (!value.match(/^(http:\/\/|https:\/\/)[A-Za-z0-9\/\.\-\?\&\+_@%=:~#]+$/)) { return _('Protocol/URL format not supported'); } return true; @@ -218,7 +218,7 @@ return view.extend({ if (!value) { return true; } - if (!value.match(/^(http:\/\/|https:\/\/)[A-Za-z0-9\/\.\-_\?\&\+=:~#]+$/)) { + if (!value.match(/^(http:\/\/|https:\/\/)[A-Za-z0-9\/\.\-\?\&\+_@%=:~#]+$/)) { return _('Protocol/URL format not supported'); } return true; diff --git a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/overview.js b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/overview.js index 7e1c9aa6f1..adefc3b18d 100644 --- a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/overview.js +++ b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/overview.js @@ -264,23 +264,20 @@ return view.extend({ o = s.taboption('general', widgets.DeviceSelect, 'ban_dev', _('Network Devices'), _('Select the WAN network device(s).')); o.depends('ban_autodetect', '0'); - o.unspecified = true; o.multiple = true; o.nocreate = true; o.optional = true; o.retain = true; - o = s.taboption('general', widgets.NetworkSelect, 'ban_ifv4', _('Network Interfaces'), _('Select the logical WAN IPv4 network interface(s).')); + o = s.taboption('general', widgets.NetworkSelect, 'ban_ifv4', _('IPv4 Network Interfaces'), _('Select the logical WAN IPv4 network interface(s).')); o.depends('ban_autodetect', '0'); - o.unspecified = true; o.multiple = true; o.nocreate = true; o.optional = true; o.retain = true; - o = s.taboption('general', widgets.NetworkSelect, 'ban_ifv6', _('Network Interfaces'), _('Select the logical WAN IPv6 network interface(s).')); + o = s.taboption('general', widgets.NetworkSelect, 'ban_ifv6', _('IPv6 Network Interfaces'), _('Select the logical WAN IPv6 network interface(s).')); o.depends('ban_autodetect', '0'); - o.unspecified = true; o.multiple = true; o.nocreate = true; o.optional = true; @@ -300,24 +297,16 @@ return view.extend({ o.optional = true; o.retain = true; - o = s.taboption('general', widgets.NetworkSelect, 'ban_trigger', _('Startup Trigger Interface'), _('List of available network interfaces to trigger the banIP start.')); - o.unspecified = true; + o = s.taboption('general', widgets.NetworkSelect, 'ban_trigger', _('Reload Trigger Interface'), _('List of available reload trigger interface(s).')); o.multiple = true; o.nocreate = true; o.rmempty = true; - o = s.taboption('general', form.Value, 'ban_triggerdelay', _('Trigger Delay'), _('Additional trigger delay in seconds before banIP processing actually starts.')); + o = s.taboption('general', form.Value, 'ban_triggerdelay', _('Trigger Delay'), _('Additional trigger delay in seconds during interface reload and boot.')); o.placeholder = '10'; o.datatype = 'range(1,300)'; o.rmempty = true; - o = s.taboption('general', form.ListValue, 'ban_triggeraction', _('Trigger Action'), _('Trigger action on ifup interface events.')); - o.value('start', _('start (default)')); - o.value('reload', _('reload')); - o.value('restart', _('restart')); - o.optional = true; - o.rmempty = true; - o = s.taboption('general', form.ListValue, 'ban_fetchretry', _('Download Retries'), _('Number of download attempts in case of an error (not supported by uclient-fetch).')); o.value('1', _('1')); o.value('3', _('3')); @@ -363,7 +352,7 @@ return view.extend({ o.optional = true; o.rmempty = true; - o = s.taboption('advanced', form.ListValue, 'ban_splitsize', _('Set Split Size'), _('Split external set loading after every n members to save RAM.')); + o = s.taboption('advanced', form.ListValue, 'ban_splitsize', _('Set Split Size'), _('Split external Set loading after every n members to save RAM.')); o.value('256'); o.value('512'); o.value('1024'); @@ -384,7 +373,7 @@ return view.extend({ o.placeholder = '/tmp/banIP-report'; o.rmempty = true; - o = s.taboption('advanced', form.Flag, 'ban_deduplicate', _('Deduplicate IPs'), _('Deduplicate IP addresses across all active Sets and and tidy up the local blocklist.')); + o = s.taboption('advanced', form.Flag, 'ban_deduplicate', _('Deduplicate IPs'), _('Deduplicate IP addresses across all active Sets and tidy up the local blocklist.')); o.default = 1 o.rmempty = false; @@ -414,6 +403,24 @@ return view.extend({ o.optional = true; o.rmempty = true; + o = s.taboption('adv_chain', widgets.DeviceSelect, 'ban_vlanallow', _('Allow VLAN Forwards'), _('Always allow certain VLAN forwards.')); + o.multiple = true; + o.nocreate = true; + o.optional = true; + o.rmempty = true; + + o = s.taboption('adv_chain', widgets.DeviceSelect, 'ban_vlanblock', _('Block VLAN Forwards'), _('Always block certain VLAN forwards.')); + o.multiple = true; + o.nocreate = true; + o.optional = true; + o.rmempty = true; + + o = s.taboption('adv_chain', form.ListValue, 'ban_blocktype', _('Block Type'), _('Drop packets silently or actively reject the traffic on WAN-Input and WAN-Forward chains.')); + o.value('drop', _('drop (default)')); + o.value('reject', _('reject')); + o.optional = true; + o.rmempty = true; + o = s.taboption('adv_chain', form.ListValue, 'ban_blockpolicy', _('Default Block Policy'), _('By default each feed is active in all supported chains. Limit the default block policy to a certain chain.')); o.value('input', _('WAN-Input Chain')); o.value('forwardwan', _('WAN-Forward Chain')); @@ -466,7 +473,7 @@ return view.extend({ o.rawhtml = true; o.default = '<em><b>' + _('Changes on this tab needs a banIP service restart to take effect.') + '</b></em>'; - o = s.taboption('adv_log', form.ListValue, 'ban_nftloglevel', _('Log Level'), _('Set the syslog level for NFT logging.')); + o = s.taboption('adv_log', form.ListValue, 'ban_nftloglevel', _('NFT Log Level'), _('Set the syslog level for NFT logging.')); o.value('emerg', _('emerg')); o.value('alert', _('alert')); o.value('crit', _('crit')); @@ -489,6 +496,10 @@ return view.extend({ o = s.taboption('adv_log', form.Flag, 'ban_logforwardlan', _('Log LAN-Forward'), _('Log suspicious forwarded LAN packets (rejected).')); o.rmempty = false; + o = s.taboption('adv_log', form.Value, 'ban_logreadfile', _('Logfile Location'), _('Location for parsing the log file, e.g. via syslog-ng, to deactivate the standard parsing via logread.')); + o.placeholder = '/var/log/messages'; + o.rmempty = true; + o = s.taboption('adv_log', form.ListValue, 'ban_loglimit', _('Log Limit'), _('Parse only the last stated number of log entries for suspicious events. To disable the log monitor at all set it to \'0\'.')); o.value('0', _('0 (disable)')); o.value('50', _('50')); @@ -609,6 +620,11 @@ return view.extend({ o.default = 1 o.rmempty = false; + o = s.taboption('feeds', form.Flag, 'ban_autoblocksubnet', _('Auto Block Subnet'), _('Automatically add entire subnets to the blocklist Set based on an additional RDAP request with the suspicious IP.')); + o.default = 0 + o.optional = true; + o.rmempty = true; + o = s.taboption('feeds', form.ListValue, 'ban_nftexpiry', _('Blocklist Set Expiry'), _('Expiry time for auto added blocklist Set members.')); o.value('10s'); o.value('1m'); |