...
|
...
|
@@ -180,7 +180,7 @@ $form .= "
|
180
|
180
|
<br />
|
181
|
181
|
</div>
|
182
|
182
|
|
183
|
|
-<h4 style=\"clear: right; margin-top: 3em;\">Allgemeine Optionen</h4>
|
|
183
|
+<h4 style=\"clear: right; margin-top: 3em;\">Optionen</h4>
|
184
|
184
|
<div style=\"margin-left: 2em;\">
|
185
|
185
|
<h5>Sichere Verbindung erzwingen</h5>
|
186
|
186
|
<div style=\"margin-left: 2em;\">
|
...
|
...
|
@@ -191,8 +191,30 @@ $form .= "
|
191
|
191
|
<option value=\"forward\" ".($vhost['ssl'] == 'forward' ? 'selected="selected"' : '')." >Ja, immer auf HTTPS umleiten</option>
|
192
|
192
|
</select> <span id=\"hsts_block\" style=\"padding-top: 0.2em;\"> <label for=\"hsts\"><a title=\"Mit HSTS können Sie festlegen, dass eine bestimmte Website niemals ohne Verschlüsselung aufgerufen werden soll. Zudem werden Zertifikate strenger geprüft.\" href=\"http://de.wikipedia.org/wiki/Hypertext_Transfer_Protocol_Secure#HSTS\">HSTS</a>:</label> ".html_select('hsts_preset', $hsts_preset_values, $hsts_preset_value)." <span id=\"hsts_seconds\"><input type=\"text\" name=\"hsts\" id=\"hsts\" size=\"10\" style=\"text-align: right;\" value=\"{$hsts_value}\" /> Sekunden</span>
|
193
|
193
|
</span>
|
194
|
|
- </div>
|
195
|
|
- <h5>Logfiles <span class=\"warning\">*</span></h5>
|
|
194
|
+ </div>";
|
|
195
|
+
|
|
196
|
+ $certs = user_certs();
|
|
197
|
+ $certselect = array(0 => 'kein Zertifikat / System-Standard benutzen', -1 => 'Automatische Zertifikatsverwaltung mit Let\'s Encrypt');
|
|
198
|
+ foreach ($certs as $c)
|
|
199
|
+ {
|
|
200
|
+ $certselect[$c['id']] = $c['subject'];
|
|
201
|
+ }
|
|
202
|
+ if (strstr($vhost['options'], 'letsencrypt')) {
|
|
203
|
+ $vhost['certid'] = -1;
|
|
204
|
+ }
|
|
205
|
+ $form .= "
|
|
206
|
+ <h5>verwendetes Zertifikat</h5>
|
|
207
|
+ <div style=\"margin-left: 2em;\">
|
|
208
|
+ ".html_select('cert', $certselect, $vhost['certid'])."
|
|
209
|
+</div>
|
|
210
|
+<p class=\"warning\"><b>Datenschutz-Hinweis:</b><br>
|
|
211
|
+Alle erstellten HTTPS-Zertifikate werden
|
|
212
|
+automatisch in den für jeden zugänglichen Certificate-Transparency-Logs abgelegt.
|
|
213
|
+Die zugehörigen Subdomains sind damit auch öffentlich.
|
|
214
|
+Sie können die Logs mit dem Service <a href=\"https://crt.sh/\">crt.sh</a> durchsuchen.</p>";
|
|
215
|
+
|
|
216
|
+ $form.="
|
|
217
|
+ <h5>Logfiles</h5>
|
196
|
218
|
<div style=\"margin-left: 2em;\">
|
197
|
219
|
<select name=\"logtype\" id=\"logtype\">
|
198
|
220
|
<option value=\"none\" ".($vhost['logtype'] == NULL ? 'selected="selected"' : '')." >keine Logfiles</option>
|
...
|
...
|
@@ -203,11 +225,9 @@ $form .= "
|
203
|
225
|
<input type=\"checkbox\" id=\"stats\" name=\"stats\" value=\"1\" ".($vhost['stats'] != NULL ? ' checked="checked" ' : '')." /> <label for=\"stats\">Statistiken/Auswertungen erzeugen</label>
|
204
|
226
|
</div>
|
205
|
227
|
<p>Logfiles werden unter <b>/var/log/apache2/".$_SESSION['userinfo']['username']."</b> abgelegt.</p>
|
206
|
|
-</div>
|
207
|
228
|
";
|
208
|
229
|
|
209
|
230
|
$ipaddrs = user_ipaddrs();
|
210
|
|
-$certs = user_certs();
|
211
|
231
|
$available_users = available_suexec_users();
|
212
|
232
|
$available_servers = additional_servers();
|
213
|
233
|
$available_servers[] = my_server_id();
|
...
|
...
|
@@ -224,20 +244,6 @@ if (!$vhost['server']) {
|
224
|
244
|
$vhost['server'] = my_server_id();
|
225
|
245
|
}
|
226
|
246
|
|
227
|
|
-$extended = '';
|
228
|
|
- $certselect = array(0 => 'kein Zertifikat / System-Standard benutzen', -1 => 'Automatische Zertifikatsverwaltung mit Let\'s Encrypt');
|
229
|
|
- foreach ($certs as $c)
|
230
|
|
- {
|
231
|
|
- $certselect[$c['id']] = $c['subject'];
|
232
|
|
- }
|
233
|
|
- if (strstr($vhost['options'], 'letsencrypt')) {
|
234
|
|
- $vhost['certid'] = -1;
|
235
|
|
- }
|
236
|
|
- $extended .= "
|
237
|
|
- <h5>verwendetes Zertifikat</h5>
|
238
|
|
- <div style=\"margin-left: 2em;\">
|
239
|
|
- ".html_select('cert', $certselect, $vhost['certid'])."
|
240
|
|
- </div>";
|
241
|
247
|
if (count($ipaddrs))
|
242
|
248
|
{
|
243
|
249
|
$ipselect = array(0 => 'System-Standard');
|
...
|
...
|
@@ -245,7 +251,7 @@ $extended = '';
|
245
|
251
|
{
|
246
|
252
|
$ipselect[$i] = $i;
|
247
|
253
|
}
|
248
|
|
- $extended .= "
|
|
254
|
+ $form .= "
|
249
|
255
|
<h5>IP-Adresse</h5>
|
250
|
256
|
<div style=\"margin-left: 2em;\">
|
251
|
257
|
".html_select('ipv4', $ipselect, $vhost['ipv4'])."
|
...
|
...
|
@@ -258,7 +264,7 @@ $extended = '';
|
258
|
264
|
{
|
259
|
265
|
$userselect[$u['uid']] = $u['username'];
|
260
|
266
|
}
|
261
|
|
- $extended .= "
|
|
267
|
+ $form .= "
|
262
|
268
|
<h5>SuExec-Benutzeraccount</h5>
|
263
|
269
|
<div style=\"margin-left: 2em;\">
|
264
|
270
|
".html_select('suexec_user', $userselect, $vhost['suexec_user'])."
|
...
|
...
|
@@ -266,7 +272,7 @@ $extended = '';
|
266
|
272
|
}
|
267
|
273
|
if (count($available_servers) > 1)
|
268
|
274
|
{
|
269
|
|
- $extended .= "
|
|
275
|
+ $form .= "
|
270
|
276
|
<h5>Einrichten auf Server</h5>
|
271
|
277
|
<div style=\"margin-left: 2em;\">
|
272
|
278
|
".html_select('server', $selectable_servers, $vhost['server'])."
|
...
|
...
|
@@ -280,27 +286,18 @@ if ($have_v6)
|
280
|
286
|
$ipv6_address = '<strong>IPv6-Adresse dieser Subdomain:</strong> '.autoipv6_address($vhost['id'], $vhost['autoipv6']);
|
281
|
287
|
$checked = ($vhost['autoipv6'] > 0) ? ' checked="checked"' : '';
|
282
|
288
|
$checked2 = ($vhost['autoipv6'] == 2) ? ' checked="checked"' : '';
|
283
|
|
- $extended .= '<h5>IPv6</h5>
|
|
289
|
+ $form .= '<h5>IPv6</h5>
|
284
|
290
|
<div style="margin-left: 2em;">
|
285
|
291
|
<input type="checkbox" name="ipv6" id="ipv6" value="yes" '.$checked.'/> <label for="ipv6">Auch über IPv6 erreichbar machen</label><br />
|
286
|
292
|
<input type="checkbox" name="ipv6_separate" id="ipv6_separate" value="yes" '.$checked2.'/> <label for="ipv6_separate">Für diese Website eine eigene IPv6-Adresse reservieren</label><br />
|
287
|
293
|
'.$ipv6_address.'
|
288
|
294
|
</div>';
|
289
|
295
|
}
|
290
|
|
-if ($extended)
|
291
|
|
- $form .= "
|
292
|
|
-<h4 style=\"margin-top: 3em;\">Erweiterte Optionen</h4>
|
293
|
|
-<div style=\"margin-left: 2em;\">
|
294
|
|
-".$extended."</div>";
|
295
|
|
-
|
296
|
296
|
|
297
|
297
|
|
298
|
298
|
|
299
|
299
|
$form .= '
|
300
|
300
|
<p><input type="submit" value="Speichern" />    '.internal_link('vhosts', 'Abbrechen').'</p>
|
301
|
|
- <p class="warning"><span class="warning">*</span>Es ist im Moment fraglich, ob die Speicherung von Logfiles mit IP-Adressen auf Webservern
|
302
|
|
- zulässig ist. Wir weisen alle Nutzer darauf hin, dass sie selbst dafür verantwortlich sind, bei geloggten Nutzerdaten die
|
303
|
|
- Seitenbesucher darauf hinzuweisen. Wir empfehlen, wenn möglich, Logfiles abzuschalten oder anonymes Logging einzusetzen.</p>
|
304
|
301
|
';
|
305
|
302
|
output(html_form('vhosts_edit_vhost', 'save', 'action=edit&vhost='.$vhost['id'], $form));
|
306
|
303
|
|