Project

General

Profile

Download (23.3 KB) Statistics
| Branch: | Tag: | Revision:
1 4d875b4f Scott Ullrich
<?php
2 b46bfcf5 Bill Marquette
/* $Id$ */
3 5b237745 Scott Ullrich
/*
4
	diag_logs_settings.php
5 13d193c2 Scott Ullrich
	Copyright (C) 2004-2009 Scott Ullrich
6 4d875b4f Scott Ullrich
	All rights reserved.
7
8 f4462954 Phil Davis
	originally part of m0n0wall (http://m0n0.ch/wall)
9 5b237745 Scott Ullrich
	Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>.
10
	All rights reserved.
11 4d875b4f Scott Ullrich
12 5b237745 Scott Ullrich
	Redistribution and use in source and binary forms, with or without
13
	modification, are permitted provided that the following conditions are met:
14 4d875b4f Scott Ullrich
15 5b237745 Scott Ullrich
	1. Redistributions of source code must retain the above copyright notice,
16
	   this list of conditions and the following disclaimer.
17 4d875b4f Scott Ullrich
18 5b237745 Scott Ullrich
	2. Redistributions in binary form must reproduce the above copyright
19
	   notice, this list of conditions and the following disclaimer in the
20
	   documentation and/or other materials provided with the distribution.
21 4d875b4f Scott Ullrich
22 5b237745 Scott Ullrich
	THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
23
	INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
24
	AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
	AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
26
	OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27
	SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28
	INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29
	CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30
	ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
	POSSIBILITY OF SUCH DAMAGE.
32
*/
33
34 e34a7abb jim-p
/*
35 13d193c2 Scott Ullrich
	pfSense_MODULE:	system
36
*/
37
38 6b07c15a Matthew Grooms
##|+PRIV
39
##|*IDENT=page-diagnostics-logs-settings
40
##|*NAME=Diagnostics: Logs: Settings page
41
##|*DESCR=Allow access to the 'Diagnostics: Logs: Settings' page.
42
##|*MATCH=diag_logs_settings.php*
43
##|-PRIV
44
45 5b237745 Scott Ullrich
require("guiconfig.inc");
46 7a927e67 Scott Ullrich
require_once("functions.inc");
47
require_once("filter.inc");
48
require_once("shaper.inc");
49 5b237745 Scott Ullrich
50
$pconfig['reverse'] = isset($config['syslog']['reverse']);
51
$pconfig['nentries'] = $config['syslog']['nentries'];
52
$pconfig['remoteserver'] = $config['syslog']['remoteserver'];
53 98301932 Scott Ullrich
$pconfig['remoteserver2'] = $config['syslog']['remoteserver2'];
54 be5d59d7 Scott Ullrich
$pconfig['remoteserver3'] = $config['syslog']['remoteserver3'];
55 cbe12b8d jim-p
$pconfig['sourceip'] = $config['syslog']['sourceip'];
56
$pconfig['ipproto'] = $config['syslog']['ipproto'];
57 5b237745 Scott Ullrich
$pconfig['filter'] = isset($config['syslog']['filter']);
58
$pconfig['dhcp'] = isset($config['syslog']['dhcp']);
59 3f2b92d2 Scott Ullrich
$pconfig['portalauth'] = isset($config['syslog']['portalauth']);
60 5b237745 Scott Ullrich
$pconfig['vpn'] = isset($config['syslog']['vpn']);
61 236524c2 jim-p
$pconfig['apinger'] = isset($config['syslog']['apinger']);
62
$pconfig['relayd'] = isset($config['syslog']['relayd']);
63
$pconfig['hostapd'] = isset($config['syslog']['hostapd']);
64 4ef2d703 Chris Buechler
$pconfig['logall'] = isset($config['syslog']['logall']);
65 5b237745 Scott Ullrich
$pconfig['system'] = isset($config['syslog']['system']);
66
$pconfig['enable'] = isset($config['syslog']['enable']);
67
$pconfig['logdefaultblock'] = !isset($config['syslog']['nologdefaultblock']);
68 1cf24f0a jim-p
$pconfig['logbogons'] = !isset($config['syslog']['nologbogons']);
69
$pconfig['logprivatenets'] = !isset($config['syslog']['nologprivatenets']);
70
$pconfig['loglighttpd'] = !isset($config['syslog']['nologlighttpd']);
71 5b237745 Scott Ullrich
$pconfig['rawfilter'] = isset($config['syslog']['rawfilter']);
72 52b27268 PiBa-NL
$pconfig['filterdescriptions'] = $config['syslog']['filterdescriptions'];
73 af659dda Scott Ullrich
$pconfig['disablelocallogging'] = isset($config['syslog']['disablelocallogging']);
74 c7a3356e jim-p
$pconfig['logfilesize'] = $config['syslog']['logfilesize'];
75 5b237745 Scott Ullrich
76
if (!$pconfig['nentries'])
77
	$pconfig['nentries'] = 50;
78
79 d3a2337a jim-p
function is_valid_syslog_server($target) {
80
	return (is_ipaddr($target)
81
		|| is_ipaddrwithport($target)
82
		|| is_hostname($target)
83
		|| is_hostnamewithport($target));
84
}
85
86 c7a3356e jim-p
if ($_POST['resetlogs'] == gettext("Reset Log Files")) {
87
	clear_all_log_files();
88 f4462954 Phil Davis
	$savemsg .= gettext("The log files have been reset.");
89 c7a3356e jim-p
} elseif ($_POST) {
90 5b237745 Scott Ullrich
91
	unset($input_errors);
92
	$pconfig = $_POST;
93
94
	/* input validation */
95 d3a2337a jim-p
	if ($_POST['enable'] && !is_valid_syslog_server($_POST['remoteserver'])) {
96
		$input_errors[] = gettext("A valid IP address/hosname or IP/hostname:port must be specified for remote syslog server #1.");
97 5b237745 Scott Ullrich
	}
98 d3a2337a jim-p
	if ($_POST['enable'] && $_POST['remoteserver2'] && !is_valid_syslog_server($_POST['remoteserver2'])) {
99
		$input_errors[] = gettext("A valid IP address/hosname or IP/hostname:port must be specified for remote syslog server #2.");
100 be5d59d7 Scott Ullrich
	}
101 d3a2337a jim-p
	if ($_POST['enable'] && $_POST['remoteserver3'] && !is_valid_syslog_server($_POST['remoteserver3'])) {
102
		$input_errors[] = gettext("A valid IP address/hosname or IP/hostname:port must be specified for remote syslog server #3.");
103 be5d59d7 Scott Ullrich
	}
104
105 102de157 Scott Ullrich
	if (($_POST['nentries'] < 5) || ($_POST['nentries'] > 2000)) {
106 f8ec8de4 Renato Botelho
		$input_errors[] = gettext("Number of log entries to show must be between 5 and 2000.");
107 5b237745 Scott Ullrich
	}
108
109 c7a3356e jim-p
	if (isset($_POST['logfilesize']) && (strlen($_POST['logfilesize']) > 0)) {
110
		if (!is_numeric($_POST['logfilesize']) || ($_POST['logfilesize'] < 5120)) {
111
			$input_errors[] = gettext("Log file size must be a positive integer greater than 5120.");
112
		}
113
	}
114 5b237745 Scott Ullrich
	if (!$input_errors) {
115
		$config['syslog']['reverse'] = $_POST['reverse'] ? true : false;
116
		$config['syslog']['nentries'] = (int)$_POST['nentries'];
117 f4462954 Phil Davis
		$pconfig['nentries'] = $config['syslog']['nentries'];
118
		if (isset($_POST['logfilesize']) && (strlen($_POST['logfilesize']) > 0)) {
119
			$config['syslog']['logfilesize'] = (int)$_POST['logfilesize'];
120
			$pconfig['logfilesize'] = $config['syslog']['logfilesize'];
121
		} else {
122
			unset($config['syslog']['logfilesize']);
123
		}
124 5b237745 Scott Ullrich
		$config['syslog']['remoteserver'] = $_POST['remoteserver'];
125 be5d59d7 Scott Ullrich
		$config['syslog']['remoteserver2'] = $_POST['remoteserver2'];
126
		$config['syslog']['remoteserver3'] = $_POST['remoteserver3'];
127 cbe12b8d jim-p
		$config['syslog']['sourceip'] = $_POST['sourceip'];
128
		$config['syslog']['ipproto'] = $_POST['ipproto'];
129 5b237745 Scott Ullrich
		$config['syslog']['filter'] = $_POST['filter'] ? true : false;
130
		$config['syslog']['dhcp'] = $_POST['dhcp'] ? true : false;
131 3f2b92d2 Scott Ullrich
		$config['syslog']['portalauth'] = $_POST['portalauth'] ? true : false;
132 5b237745 Scott Ullrich
		$config['syslog']['vpn'] = $_POST['vpn'] ? true : false;
133 236524c2 jim-p
		$config['syslog']['apinger'] = $_POST['apinger'] ? true : false;
134
		$config['syslog']['relayd'] = $_POST['relayd'] ? true : false;
135
		$config['syslog']['hostapd'] = $_POST['hostapd'] ? true : false;
136 e34a7abb jim-p
		$config['syslog']['logall'] = $_POST['logall'] ? true : false;
137 5b237745 Scott Ullrich
		$config['syslog']['system'] = $_POST['system'] ? true : false;
138 e1c0c35a Scott Ullrich
		$config['syslog']['disablelocallogging'] = $_POST['disablelocallogging'] ? true : false;
139 5b237745 Scott Ullrich
		$config['syslog']['enable'] = $_POST['enable'] ? true : false;
140
		$oldnologdefaultblock = isset($config['syslog']['nologdefaultblock']);
141 1cf24f0a jim-p
		$oldnologbogons = isset($config['syslog']['nologbogons']);
142
		$oldnologprivatenets = isset($config['syslog']['nologprivatenets']);
143
		$oldnologlighttpd = isset($config['syslog']['nologlighttpd']);
144 5b237745 Scott Ullrich
		$config['syslog']['nologdefaultblock'] = $_POST['logdefaultblock'] ? false : true;
145 1cf24f0a jim-p
		$config['syslog']['nologbogons'] = $_POST['logbogons'] ? false : true;
146
		$config['syslog']['nologprivatenets'] = $_POST['logprivatenets'] ? false : true;
147
		$config['syslog']['nologlighttpd'] = $_POST['loglighttpd'] ? false : true;
148 5b237745 Scott Ullrich
		$config['syslog']['rawfilter'] = $_POST['rawfilter'] ? true : false;
149 52b27268 PiBa-NL
		if (is_numeric($_POST['filterdescriptions']) && $_POST['filterdescriptions'] > 0)
150
			$config['syslog']['filterdescriptions'] = $_POST['filterdescriptions'];
151
		else
152
			unset($config['syslog']['filterdescriptions']);
153 be5d59d7 Scott Ullrich
		if($config['syslog']['enable'] == false) {
154 f3a5f0c5 Scott Ullrich
			unset($config['syslog']['remoteserver']);
155 be5d59d7 Scott Ullrich
			unset($config['syslog']['remoteserver2']);
156
			unset($config['syslog']['remoteserver3']);
157
		}
158 c195be3f Scott Ullrich
159 5b237745 Scott Ullrich
		write_config();
160 c195be3f Scott Ullrich
161 5b237745 Scott Ullrich
		$retval = 0;
162 fd31e9ee Scott Ullrich
		$retval = system_syslogd_start();
163 1cf24f0a jim-p
		if (($oldnologdefaultblock !== isset($config['syslog']['nologdefaultblock']))
164
			|| ($oldnologbogons !== isset($config['syslog']['nologbogons']))
165
			|| ($oldnologprivatenets !== isset($config['syslog']['nologprivatenets'])))
166 fd31e9ee Scott Ullrich
			$retval |= filter_configure();
167 c195be3f Scott Ullrich
168 4d875b4f Scott Ullrich
		$savemsg = get_std_save_message($retval);
169 1cf24f0a jim-p
170
		if ($oldnologlighttpd !== isset($config['syslog']['nologlighttpd'])) {
171
			ob_flush();
172
			flush();
173
			log_error(gettext("webConfigurator configuration has changed. Restarting webConfigurator."));
174
			send_event("service restart webgui");
175
			$savemsg .= "<br />" . gettext("WebGUI process is restarting.");
176
		}
177
178
		filter_pflog_start(true);
179 5b237745 Scott Ullrich
	}
180
}
181
182 f8ec8de4 Renato Botelho
$pgtitle = array(gettext("Status"), gettext("System logs"), gettext("Settings"));
183 00491625 Colin Fleming
$closehead = false;
184 b63695db Scott Ullrich
include("head.inc");
185
186 5b237745 Scott Ullrich
?>
187 b63695db Scott Ullrich
188
189 00491625 Colin Fleming
<script type="text/javascript">
190
//<![CDATA[
191 5b237745 Scott Ullrich
function enable_change(enable_over) {
192
	if (document.iform.enable.checked || enable_over) {
193
		document.iform.remoteserver.disabled = 0;
194 be5d59d7 Scott Ullrich
		document.iform.remoteserver2.disabled = 0;
195
		document.iform.remoteserver3.disabled = 0;
196 5b237745 Scott Ullrich
		document.iform.filter.disabled = 0;
197
		document.iform.dhcp.disabled = 0;
198 3f2b92d2 Scott Ullrich
		document.iform.portalauth.disabled = 0;
199 5b237745 Scott Ullrich
		document.iform.vpn.disabled = 0;
200 236524c2 jim-p
		document.iform.apinger.disabled = 0;
201
		document.iform.relayd.disabled = 0;
202
		document.iform.hostapd.disabled = 0;
203 5b237745 Scott Ullrich
		document.iform.system.disabled = 0;
204 5e08497c Chris Buechler
		document.iform.logall.disabled = 0;
205 f3d91215 Darren Embry
		check_everything();
206 5b237745 Scott Ullrich
	} else {
207
		document.iform.remoteserver.disabled = 1;
208 be5d59d7 Scott Ullrich
		document.iform.remoteserver2.disabled = 1;
209
		document.iform.remoteserver3.disabled = 1;
210 5b237745 Scott Ullrich
		document.iform.filter.disabled = 1;
211
		document.iform.dhcp.disabled = 1;
212 3f2b92d2 Scott Ullrich
		document.iform.portalauth.disabled = 1;
213 5b237745 Scott Ullrich
		document.iform.vpn.disabled = 1;
214 236524c2 jim-p
		document.iform.apinger.disabled = 1;
215
		document.iform.relayd.disabled = 1;
216
		document.iform.hostapd.disabled = 1;
217 5b237745 Scott Ullrich
		document.iform.system.disabled = 1;
218 5e08497c Chris Buechler
		document.iform.logall.disabled = 1;
219 5b237745 Scott Ullrich
	}
220
}
221 236524c2 jim-p
function check_everything() {
222
	if (document.iform.logall.checked) {
223
		document.iform.filter.disabled = 1;
224 c8610dc9 Darren Embry
		document.iform.filter.checked = false;
225 236524c2 jim-p
		document.iform.dhcp.disabled = 1;
226 c8610dc9 Darren Embry
		document.iform.dhcp.checked = false;
227 236524c2 jim-p
		document.iform.portalauth.disabled = 1;
228 c8610dc9 Darren Embry
		document.iform.portalauth.checked = false;
229 236524c2 jim-p
		document.iform.vpn.disabled = 1;
230 c8610dc9 Darren Embry
		document.iform.vpn.checked = false;
231 236524c2 jim-p
		document.iform.apinger.disabled = 1;
232 c8610dc9 Darren Embry
		document.iform.apinger.checked = false;
233 236524c2 jim-p
		document.iform.relayd.disabled = 1;
234 c8610dc9 Darren Embry
		document.iform.relayd.checked = false;
235 236524c2 jim-p
		document.iform.hostapd.disabled = 1;
236 c8610dc9 Darren Embry
		document.iform.hostapd.checked = false;
237 236524c2 jim-p
		document.iform.system.disabled = 1;
238 c8610dc9 Darren Embry
		document.iform.system.checked = false;
239 236524c2 jim-p
	} else {
240
		document.iform.filter.disabled = 0;
241
		document.iform.dhcp.disabled = 0;
242
		document.iform.portalauth.disabled = 0;
243
		document.iform.vpn.disabled = 0;
244
		document.iform.apinger.disabled = 0;
245
		document.iform.relayd.disabled = 0;
246
		document.iform.hostapd.disabled = 0;
247
		document.iform.system.disabled = 0;
248
	}
249
}
250 00491625 Colin Fleming
//]]>
251 5b237745 Scott Ullrich
</script>
252 00491625 Colin Fleming
</head>
253 5b237745 Scott Ullrich
<body link="#0000CC" vlink="#0000CC" alink="#0000CC">
254
<?php include("fbegin.inc"); ?>
255
<form action="diag_logs_settings.php" method="post" name="iform" id="iform">
256
<?php if ($input_errors) print_input_errors($input_errors); ?>
257
<?php if ($savemsg) print_info_box($savemsg); ?>
258 00491625 Colin Fleming
<table width="100%" border="0" cellpadding="0" cellspacing="0" summary="logs settings">
259 e34a7abb jim-p
<tr><td>
260 b63695db Scott Ullrich
<?php
261
	$tab_array = array();
262 f8ec8de4 Renato Botelho
	$tab_array[] = array(gettext("System"), false, "diag_logs.php");
263
	$tab_array[] = array(gettext("Firewall"), false, "diag_logs_filter.php");
264
	$tab_array[] = array(gettext("DHCP"), false, "diag_logs_dhcp.php");
265
	$tab_array[] = array(gettext("Portal Auth"), false, "diag_logs_auth.php");
266
	$tab_array[] = array(gettext("IPsec"), false, "diag_logs_ipsec.php");
267
	$tab_array[] = array(gettext("PPP"), false, "diag_logs_ppp.php");
268
	$tab_array[] = array(gettext("VPN"), false, "diag_logs_vpn.php");
269
	$tab_array[] = array(gettext("Load Balancer"), false, "diag_logs_relayd.php");
270
	$tab_array[] = array(gettext("OpenVPN"), false, "diag_logs_openvpn.php");
271 ae2c143a jim-p
	$tab_array[] = array(gettext("NTP"), false, "diag_logs_ntpd.php");
272 f8ec8de4 Renato Botelho
	$tab_array[] = array(gettext("Settings"), true, "diag_logs_settings.php");
273 b63695db Scott Ullrich
	display_top_tabs($tab_array);
274
?>
275 e34a7abb jim-p
</td></tr>
276
<tr>
277
	<td>
278 0f10aee4 Bill Marquette
	<div id="mainarea">
279 00491625 Colin Fleming
	<table class="tabcont" width="100%" border="0" cellpadding="6" cellspacing="0" summary="main area">
280 e34a7abb jim-p
		<tr>
281
			<td colspan="2" valign="top" class="listtopic"><?=gettext("General Logging Options");?></td>
282
		</tr>
283
		<tr>
284
			<td width="22%" valign="top" class="vtable">Forward/Reverse Display</td>
285 00491625 Colin Fleming
			<td width="78%" class="vtable"> <input name="reverse" type="checkbox" id="reverse" value="yes" <?php if ($pconfig['reverse']) echo "checked=\"checked\""; ?> />
286 f8ec8de4 Renato Botelho
			<strong><?=gettext("Show log entries in reverse order (newest entries on top)");?></strong></td>
287 e34a7abb jim-p
		</tr>
288
		<tr>
289
			<td width="22%" valign="top" class="vtable">GUI Log Entries to Display</td>
290
			<td width="78%" class="vtable">
291 8cd558b6 ayvis
			<input name="nentries" id="nentries" type="text" class="formfld unknown" size="4" value="<?=htmlspecialchars($pconfig['nentries']);?>" /><br />
292 e34a7abb jim-p
			<?=gettext("Hint: This is only the number of log entries displayed in the GUI. It does not affect how many entries are contained in the actual log files.") ?></td>
293
		</tr>
294 c7a3356e jim-p
		<tr>
295 62e92cb3 Phil Davis
			<td width="22%" valign="top" class="vtable">Log File Size (Bytes)</td>
296 c7a3356e jim-p
			<td width="78%" class="vtable">
297 8cd558b6 ayvis
			<input name="logfilesize" id="logfilesize" type="text" class="formfld unknown" size="8" value="<?=htmlspecialchars($pconfig['logfilesize']);?>" /><br />
298 c7a3356e jim-p
			<?=gettext("Logs are held in constant-size circular log files. This field controls how large each log file is, and thus how many entries may exist inside the log By default this is approximately 500KB per log file, and there are nearly 20 such log files.") ?>
299 8cd558b6 ayvis
			<br /><br />
300 f0cf1a64 jim-p
			<?=gettext("NOTE: Log sizes are changed the next time a log file is cleared or deleted. To immediately increase the size of the log files, you must first save the options to set the size, then clear all logs using the \"Reset Log Files\" option farther down this page. "); ?>
301 c7a3356e jim-p
			<?=gettext("Be aware that increasing this value increases every log file size, so disk usage will increase significantly."); ?>
302
			<?=gettext("Disk space currently used by log files: ") ?><?= exec("/usr/bin/du -sh /var/log | /usr/bin/awk '{print $1;}'"); ?>.
303
			<?=gettext("Remaining disk space for log files: ") ?><?= exec("/bin/df -h /var/log | /usr/bin/awk '{print $4;}'"); ?>.
304
			</td>
305
		</tr>
306 e34a7abb jim-p
		<tr>
307
			<td valign="top" class="vtable">Log Firewall Default Blocks</td>
308 1cf24f0a jim-p
			<td class="vtable">
309 00491625 Colin Fleming
				<input name="logdefaultblock" type="checkbox" id="logdefaultblock" value="yes" <?php if ($pconfig['logdefaultblock']) echo "checked=\"checked\""; ?> />
310 4bdf145c Ermal
				<strong><?=gettext("Log packets matched from the default rules put in the ruleset");?></strong><br />
311 1cf24f0a jim-p
				<?=gettext("Hint: packets that are blocked by the implicit default block rule will not be logged if you uncheck this option. Per-rule logging options are still respected.");?>
312 8cd558b6 ayvis
				<br />
313 00491625 Colin Fleming
				<input name="logbogons" type="checkbox" id="logbogons" value="yes" <?php if ($pconfig['logbogons']) echo "checked=\"checked\""; ?> />
314 8cd558b6 ayvis
				<strong><?=gettext("Log packets blocked by 'Block Bogon Networks' rules");?></strong><br />
315
				<br />
316 00491625 Colin Fleming
				<input name="logprivatenets" type="checkbox" id="logprivatenets" value="yes" <?php if ($pconfig['logprivatenets']) echo "checked=\"checked\""; ?> />
317 8cd558b6 ayvis
				<strong><?=gettext("Log packets blocked by 'Block Private Networks' rules");?></strong><br />
318 1cf24f0a jim-p
			</td>
319
		</tr>
320
		<tr>
321
			<td valign="top" class="vtable">Web Server Log</td>
322 00491625 Colin Fleming
			<td class="vtable"> <input name="loglighttpd" type="checkbox" id="loglighttpd" value="yes" <?php if ($pconfig['loglighttpd']) echo "checked=\"checked\""; ?> />
323 8cd558b6 ayvis
			<strong><?=gettext("Log errors from the web server process.");?></strong><br />
324 1cf24f0a jim-p
			<?=gettext("Hint: If this is checked, errors from the lighttpd web server process for the GUI or Captive Portal will appear in the main system log.");?></td>
325 e34a7abb jim-p
		</tr>
326
		<tr>
327
			<td valign="top" class="vtable">Raw Logs</td>
328 00491625 Colin Fleming
			<td class="vtable"> <input name="rawfilter" type="checkbox" id="rawfilter" value="yes" <?php if ($pconfig['rawfilter']) echo "checked=\"checked\""; ?> />
329 8cd558b6 ayvis
			<strong><?=gettext("Show raw filter logs");?></strong><br />
330 e34a7abb jim-p
			<?=gettext("Hint: If this is checked, filter logs are shown as generated by the packet filter, without any formatting. This will reveal more detailed information, but it is more difficult to read.");?></td>
331
		</tr>
332 52b27268 PiBa-NL
		<tr>
333
			<td valign="top" class="vtable">Filter descriptions</td>
334
			<td class="vtable">
335
				<select name="filterdescriptions" id="filterdescriptions" >
336 00491625 Colin Fleming
				  <option value="0"<?=!isset($pconfig['filterdescriptions'])?" selected=\"selected\"":""?>>Dont load descriptions</option>
337
				  <option value="1"<?=($pconfig['filterdescriptions'])==="1"?" selected=\"selected\"":""?>>Display as column</option>
338
				  <option value="2"<?=($pconfig['filterdescriptions'])==="2"?" selected=\"selected\"":""?>>Display as second row</option>
339 52b27268 PiBa-NL
				</select>
340
				<strong><?=gettext("Show the applied rule description below or in the firewall log rows.");?></strong>
341 8cd558b6 ayvis
				<br />
342 00491625 Colin Fleming
				<?=gettext("Displaying rule descriptions for all lines in the log might affect performance with large rule sets.");?>
343 52b27268 PiBa-NL
			</td>
344
		</tr>
345 e34a7abb jim-p
		<tr>
346
			<td width="22%" valign="top" class="vtable">Local Logging</td>
347 00491625 Colin Fleming
			<td width="78%" class="vtable"> <input name="disablelocallogging" type="checkbox" id="disablelocallogging" value="yes" <?php if ($pconfig['disablelocallogging']) echo "checked=\"checked\""; ?> onclick="enable_change(false)" />
348 e34a7abb jim-p
			<?php if ($g['platform'] == "pfSense"): ?>
349
			<strong><?=gettext("Disable writing log files to the local disk");?></strong></td>
350
			<?php else: ?>
351
			<strong><?=gettext("Disable writing log files to the local RAM disk");?></strong></td>
352
			<?php endif; ?>
353
		</tr>
354 c7a3356e jim-p
		<tr>
355
			<td width="22%" valign="top">Reset Logs</td>
356
			<td width="78%">
357
				<input name="resetlogs" type="submit" class="formbtn" value="<?=gettext("Reset Log Files"); ?>"  onclick="return confirm('<?=gettext('Do you really want to reset the log files? This will erase all local log data.');?>')" />
358 8cd558b6 ayvis
				<br /><br />
359 f4462954 Phil Davis
				<?= gettext("Note: Clears all local log files and reinitializes them as empty logs. This also restarts the DHCP daemon. Use the Save button first if you have made any setting changes."); ?>
360 c7a3356e jim-p
			</td>
361
		</tr>
362 e34a7abb jim-p
		<tr>
363
			<td colspan="2" valign="top">&nbsp;</td>
364
		</tr>
365
		<tr>
366
			<td colspan="2" valign="top" class="listtopic"><?=gettext("Remote Logging Options");?></td>
367
		</tr>
368 cbe12b8d jim-p
		<tr>
369
			<td width="22%" valign="top" class="vncell"><?=gettext("Source Address"); ?></td>
370
			<td width="78%" class="vtable">
371
				<select name="sourceip" class="formselect">
372
					<option value="">Default (any)</option>
373
				<?php $sourceips = get_possible_traffic_source_addresses(false);
374
					foreach ($sourceips as $sip):
375
						$selected = "";
376
						if (!link_interface_to_bridge($sip['value']) && ($sip['value'] == $pconfig['sourceip']))
377
							$selected = 'selected="selected"';
378
				?>
379
					<option value="<?=$sip['value'];?>" <?=$selected;?>>
380
						<?=htmlspecialchars($sip['name']);?>
381
					</option>
382
					<?php endforeach; ?>
383
				</select>
384 8cd558b6 ayvis
				<br />
385 cbe12b8d jim-p
				<?= gettext("This option will allow the logging daemon to bind to a single IP address, rather than all IP addresses."); ?>
386
				<?= gettext("If you pick a single IP, remote syslog severs must all be of that IP type. If you wish to mix IPv4 and IPv6 remote syslog servers, you must bind to all interfaces."); ?>
387 8cd558b6 ayvis
				<br /><br />
388 cbe12b8d jim-p
				<?= gettext("NOTE: If an IP address cannot be located on the chosen interface, the daemon will bind to all addresses."); ?>
389
			</td>
390
		</tr>
391
		<tr>
392
			<td width="22%" valign="top" class="vncell"><?=gettext("IP Protocol"); ?></td>
393
			<td width="78%" class="vtable">
394
				<select name="ipproto" class="formselect">
395
					<option value="ipv4" <?php if ($ipproto == "ipv4") echo 'selected="selected"' ?>>IPv4</option>
396
					<option value="ipv6" <?php if ($ipproto == "ipv6") echo 'selected="selected"' ?>>IPv6</option>
397
				</select>
398 8cd558b6 ayvis
				<br />
399 cbe12b8d jim-p
				<?= gettext("This option is only used when a non-default address is chosen as the source above. This option only expresses a preference; If an IP address of the selected type is not found on the chosen interface, the other type will be tried."); ?>
400
			</td>
401
		</tr>
402 e34a7abb jim-p
		<tr>
403
			<td width="22%" valign="top" class="vncell"><?=gettext("Enable Remote Logging");?></td>
404 00491625 Colin Fleming
			<td width="78%" class="vtable"> <input name="enable" type="checkbox" id="enable" value="yes" <?php if ($pconfig['enable']) echo "checked=\"checked\""; ?> onclick="enable_change(false)" />
405 e34a7abb jim-p
				<strong><?=gettext("Send log messages to remote syslog server");?></strong></td>
406
		</tr>
407
		<tr>
408
			<td width="22%" valign="top" class="vncell"><?=gettext("Remote Syslog Servers");?></td>
409
			<td width="78%" class="vtable">
410 00491625 Colin Fleming
				<table summary="remtote syslog servers">
411 e34a7abb jim-p
					<tr>
412
						<td><?=gettext("Server") . " 1";?></td>
413 00491625 Colin Fleming
						<td><input name="remoteserver" id="remoteserver" type="text" class="formfld host" size="20" value="<?=htmlspecialchars($pconfig['remoteserver']);?>" /></td>
414 e34a7abb jim-p
					</tr>
415
					<tr>
416
						<td><?=gettext("Server") . " 2";?></td>
417 00491625 Colin Fleming
						<td><input name="remoteserver2" id="remoteserver2" type="text" class="formfld host" size="20" value="<?=htmlspecialchars($pconfig['remoteserver2']);?>" /></td>
418 e34a7abb jim-p
					</tr>
419
					<tr>
420
						<td><?=gettext("Server") . " 3";?></td>
421 00491625 Colin Fleming
						<td><input name="remoteserver3" id="remoteserver3" type="text" class="formfld host" size="20" value="<?=htmlspecialchars($pconfig['remoteserver3']);?>" /></td>
422 e34a7abb jim-p
					</tr>
423
					<tr>
424
						<td>&nbsp;</td>
425
						<td><?=gettext("IP addresses of remote syslog servers, or an IP:port.");?></td>
426
				</table>
427
			</td>
428
		</tr>
429
		<tr>
430
			<td width="22%" valign="top" class="vncell"><?=gettext("Remote Syslog Contents");?></td>
431
			<td width="78%" class="vtable">
432 00491625 Colin Fleming
				<input name="logall" id="logall" type="checkbox" value="yes" <?php if ($pconfig['logall']) echo "checked=\"checked\""; ?> onclick="check_everything();" />
433 8cd558b6 ayvis
				<?=gettext("Everything");?><br /><br />
434 00491625 Colin Fleming
				<input name="system" id="system" type="checkbox" value="yes" onclick="enable_change(false)" <?php if ($pconfig['system']) echo "checked=\"checked\""; ?> />
435 8cd558b6 ayvis
				<?=gettext("System events");?><br />
436 00491625 Colin Fleming
				<input name="filter" id="filter" type="checkbox" value="yes" <?php if ($pconfig['filter']) echo "checked=\"checked\""; ?> />
437 8cd558b6 ayvis
				<?=gettext("Firewall events");?><br />
438 00491625 Colin Fleming
				<input name="dhcp" id="dhcp" type="checkbox" value="yes" <?php if ($pconfig['dhcp']) echo "checked=\"checked\""; ?> />
439 8cd558b6 ayvis
				<?=gettext("DHCP service events");?><br />
440 00491625 Colin Fleming
				<input name="portalauth" id="portalauth" type="checkbox" value="yes" <?php if ($pconfig['portalauth']) echo "checked=\"checked\""; ?> />
441 8cd558b6 ayvis
				<?=gettext("Portal Auth events");?><br />
442 00491625 Colin Fleming
				<input name="vpn" id="vpn" type="checkbox" value="yes" <?php if ($pconfig['vpn']) echo "checked=\"checked\""; ?> />
443 8cd558b6 ayvis
				<?=gettext("VPN (PPTP, IPsec, OpenVPN) events");?><br />
444 00491625 Colin Fleming
				<input name="apinger" id="apinger" type="checkbox" value="yes" <?php if ($pconfig['apinger']) echo "checked=\"checked\""; ?> />
445 8cd558b6 ayvis
				<?=gettext("Gateway Monitor events");?><br />
446 00491625 Colin Fleming
				<input name="relayd" id="relayd" type="checkbox" value="yes" <?php if ($pconfig['relayd']) echo "checked=\"checked\""; ?> />
447 8cd558b6 ayvis
				<?=gettext("Server Load Balancer events");?><br />
448 00491625 Colin Fleming
				<input name="hostapd" id="hostapd" type="checkbox" value="yes" <?php if ($pconfig['hostapd']) echo "checked=\"checked\""; ?> />
449 8cd558b6 ayvis
				<?=gettext("Wireless events");?><br />
450 e34a7abb jim-p
			</td>
451
		</tr>
452
		<tr>
453
			<td width="22%" valign="top">&nbsp;</td>
454 00491625 Colin Fleming
			<td width="78%"> <input name="Submit" type="submit" class="formbtn" value="<?=gettext("Save"); ?>" onclick="enable_change(true)" />
455 e34a7abb jim-p
			</td>
456
		</tr>
457
		<tr>
458
			<td width="22%" height="53" valign="top">&nbsp;</td>
459 8cd558b6 ayvis
			<td width="78%"><strong><span class="red"><?=gettext("Note:")?></span></strong><br />
460 e34a7abb jim-p
			<?=gettext("syslog sends UDP datagrams to port 514 on the specified " .
461
			"remote syslog server, unless another port is specified. Be sure to set syslogd on the " .
462
			"remote server to accept syslog messages from");?> <?=$g['product_name']?>.
463
			</td>
464
		</tr>
465
	</table>
466 0f10aee4 Bill Marquette
	</div>
467 e34a7abb jim-p
</td></tr>
468 5b237745 Scott Ullrich
</table>
469
</form>
470 00491625 Colin Fleming
<script type="text/javascript">
471
//<![CDATA[
472 5b237745 Scott Ullrich
enable_change(false);
473 00491625 Colin Fleming
//]]>
474 5b237745 Scott Ullrich
</script>
475
<?php include("fend.inc"); ?>
476
</body>
477 4bdf145c Ermal
</html>