5bfd0ff2ad8d23f199e143307d741303a6e16f10
bernd Neue Zertifikatsverwaltung

bernd authored 15 years ago

1) <?php
2) 
3) require_once("certs.php");
4) require_role(ROLE_SYSTEMUSER);
5) 
6) $title = "SSL-Zertifikate";
7) 
8) output('<h3>SSL-Zertifikate</h3>
9) <p>Bei schokokeks.org können Sie Ihre eigenen SSL-Zertifikate nutzen. Wir verwenden dafür (wenn nicht anders vereinbart) die <a href="https://wiki.schokokeks.org/SNI">SNI-Technik</a>.</p>
10) <p>Das Verfahren ist bei uns folgendermaßen implementiert: Sie können hier eines oder mehrere SSL-Zertifikate hochladen, die Sie vorher extern erzeugt haben. Beim Anlegen von Webserver-Konfigurationen können Sie dann eines Ihrer Zertifikate für jede Konfiguration auswählen.</p>
11) 
12) <h4>Ihre bisher vorhandenen Zertifikate</h4>
13) ');
14) 
15) $certs = user_certs();
16) 
17) if (count($certs) > 0)
18) {
19)   output("<table><tr><th>Name/Details</th><th>CommonName</th><th>Gültig ab</th><th>Gültig bis</th><th>&#160;</th></tr>");
20)   foreach ($certs as $c)
21)   {
bernd Cert-Refresh

bernd authored 15 years ago

22)     output("<tr><td>".internal_link('showcert', $c['subject'], "mode=cert&id={$c['id']}")."</td><td>{$c['cn']}</td><td>{$c['valid_from']}</td><td>{$c['valid_until']}</td><td>".internal_link('refreshcert', '<img src="'.$prefix.'images/refresh.png" title="Neue Version des Zertifikats einspielen" />', 'id='.$c['id'])." &#160; ".internal_link('savecert', '<img src="'.$prefix.'images/delete.png" />', 'action=delete&id='.$c['id'])."</td></tr>");
bernd Neue Zertifikatsverwaltung

bernd authored 15 years ago

23)   } 
24)   output("</table>");
25) }
26) else
27) {
28)   output('<p><em>Bisher haben Sie keine Zertifikate eingetragen</em></p>');
29) }
30) 
bernd addnew() eingeführt

bernd authored 15 years ago

31) addnew('newcert', 'Neues Zertifikat eintragen');
bernd Neue Zertifikatsverwaltung

bernd authored 15 years ago

32) 
bernd CSR-Erstellung

bernd authored 15 years ago

33) output('<h3>offene CSRs</h3>');
34) 
35) $csr = user_csr();
36) if (count($csr) > 0)
37) {
38)   output("<table><tr><th>Host-/Domainname</th><th>Bitlänge</th><th>Erzeugt am</th><th>&#160;</th></tr>");
39)   foreach ($csr AS $c)
40)   {
41)     output("<tr><td>".internal_link('showcert', $c['hostname'], 'mode=csr&id='.$c['id'])."</td><td>{$c['bits']}</td><td>{$c['created']}</td><td>".internal_link('savecert', '<img src="'.$prefix.'images/delete.png" />', 'action=deletecsr&id='.$c['id'])." &#160; ".internal_link('certfromcsr', '<img src="'.$prefix.'images/ok.png" alt="Zertifikat hinzufügen" title="Zertifikat hinzufügen" />', "id={$c['id']}")."</td></tr>");
42)   }
43)   output("</table>");
44) }
45) else
46) {
47)   output('<p><em>Es gibt keine offenen CSRs</em></p>');
48) }
49) 
50) 
51) output('
52) <p>Wenn Sie ein einfaches Zertifikat benötigen, können Sie mit Hilfe dieser Funktion einen CSR (»certificate signing request«) 
bernd addnew() eingeführt

bernd authored 15 years ago

53) erstellen, mit dem Sie Ihr endgültiges Zertifikat beantragen können.</p>');
54) 
55) addnew('newcsr', 'Neuen CSR erzeugen');
bernd CSR-Erstellung

bernd authored 15 years ago

56) 
57)