From dd2f34ffd9c40d81cf4617c0cb72c50cb32cdbac Mon Sep 17 00:00:00 2001 From: Ad Schellevis Date: Wed, 20 Jul 2016 18:56:21 +0200 Subject: [PATCH] (proxy) add syslog target for access_log, closes https://github.com/opnsense/core/issues/1019 --- src/etc/inc/plugins.inc.d/squid.inc | 38 +++++++++++++++++++ .../controllers/OPNsense/Proxy/forms/main.xml | 8 ++++ .../mvc/app/models/OPNsense/Proxy/Proxy.xml | 7 ++++ .../templates/OPNsense/Proxy/squid.conf | 10 ++++- 4 files changed, 61 insertions(+), 2 deletions(-) create mode 100644 src/etc/inc/plugins.inc.d/squid.inc diff --git a/src/etc/inc/plugins.inc.d/squid.inc b/src/etc/inc/plugins.inc.d/squid.inc new file mode 100644 index 000000000..4fc24037a --- /dev/null +++ b/src/etc/inc/plugins.inc.d/squid.inc @@ -0,0 +1,38 @@ + array('(squid-1)') + ); + + return $logfacilities; +} diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Proxy/forms/main.xml b/src/opnsense/mvc/app/controllers/OPNsense/Proxy/forms/main.xml index 73ec0b63c..480b2527f 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Proxy/forms/main.xml +++ b/src/opnsense/mvc/app/controllers/OPNsense/Proxy/forms/main.xml @@ -21,6 +21,14 @@ Enable access logging. true + + proxy.general.logging.target + + dropdown + Send log data to. + true + + proxy.general.logging.enable.storeLog diff --git a/src/opnsense/mvc/app/models/OPNsense/Proxy/Proxy.xml b/src/opnsense/mvc/app/models/OPNsense/Proxy/Proxy.xml index 6f06376d4..b91dff780 100644 --- a/src/opnsense/mvc/app/models/OPNsense/Proxy/Proxy.xml +++ b/src/opnsense/mvc/app/models/OPNsense/Proxy/Proxy.xml @@ -30,6 +30,13 @@ N /^([\/0-9a-fA-F.:,])*/u + + N + File + + Syslog + + N diff --git a/src/opnsense/service/templates/OPNsense/Proxy/squid.conf b/src/opnsense/service/templates/OPNsense/Proxy/squid.conf index 2c501b79e..5e5c2095d 100644 --- a/src/opnsense/service/templates/OPNsense/Proxy/squid.conf +++ b/src/opnsense/service/templates/OPNsense/Proxy/squid.conf @@ -305,10 +305,16 @@ dns_v4_first on {% if OPNsense.proxy.general.logging.enable.accessLog == '0' %} # Disable access logging access_log none -{% elif OPNsense.proxy.general.logging.ignoreLogACL|default('') != '' %} +{% else %} +{% if OPNsense.proxy.general.logging.ignoreLogACL|default('') != '' %} # ignore source hosts from access.log acl accesslog_ignore src {{ OPNsense.proxy.general.logging.ignoreLogACL.replace(',', ' ') }} -access_log /var/log/squid/access.log squid !accesslog_ignore +{% endif %} +{% if OPNsense.proxy.general.logging.target|default('') == 'syslog' %} +access_log syslog:local4.info {% if OPNsense.proxy.general.logging.ignoreLogACL|default('') %}!accesslog_ignore {% endif %} +{% else %} +access_log /var/log/squid/access.log squid {% if OPNsense.proxy.general.logging.ignoreLogACL|default('') %}!accesslog_ignore {% endif %} +{% endif %} {% endif %} {% endif %}