Kurz vorweg; Ich bin auf meinem kleinen VPS von ISPcp auf I-MSCP umgestiegen.
Der große vorteil von I-MSCP ist der Support von SSL Zertifikaten per domain (eintragbar via GUi, änlich Kloxo) und Multi-SSL per IP out-of-the-box mit Apache 2.2+.
Nun kennt man ja das "Problem" das man SSL Zertifikate praktisch immer extra über eine Shell/Kommandozeile erstellen muss.
Um dieses kleine, unbequeme, Problemchen zu umgehen habe ich mir jetzt die OpenSSL funktion von PHP zu nutze gemacht.
Solche Dienste gibt es zwar bereits aber ich bin jemand der soetwas gerne nachbaut und selber haben möchte
Somit war SSLgen geboren
Wer es mit benutzen möchte kann es unter
http://labor.spiffytek.com/sslgen/ finden.
Features:
- 2048bit Key
- Zeit einstellbar wann Zertifikat abläuft (Tage)
- Zeigt neben Key und CSR ein "Self-Signed" Zertifikat. Somit hat man bereits alles was man braucht um seinen server SSL sicher zu machen
- Optionales setzen eines Passworts
Geplante Featres:
- Auswahl verschiedener Keygrößen (1024, 2048 (default), 4096)
- Möglichkeit zum herunterladen des generierten Key-Packs als archiv
- Web-Design
Changelog:
Klick
Wichtig: Die generierten Keys und alle Eingaben werden nicht von mir gesichert! D.h. wenn ihr die Seite schließt sind die Daten weg!
HF & Stay-Tuned,
Makz
EDIT: Wer sowas auch nachbauen möchte: Die KErnelemente sind:
|
PHP-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
$dn = array(
"countryName" => $in["country"],
"stateOrProvinceName" => $in["state"],
"localityName" => $in["city"],
"organizationName" => $in["org"],
"organizationalUnitName" => $in["unit"],
"commonName" => $in["domain"],
"emailAddress" => $in["email"]
);
$key = openssl_pkey_new($ssl_config);
$csr = openssl_csr_new($dn, $key, $ssl_config);
$crt = openssl_csr_sign($csr, null, $key, $in["lifetime"], $ssl_config);
$out = array();
openssl_pkey_export($key, $out["key"], null, $ssl_config);
openssl_csr_export($csr, $out["csr"], true);
openssl_x509_export($crt, $out["crt"], true);
|
$ssl_config wird noch nachgereicht da diese derzeit aus einer openssl.cnf gelesen werden und nicht in einem PHP array sitzen. Mann könnte diese weg lassen aber dann wird per default nur ein 1024bit Key und anstatt einer sha1 eine md5 summe erstellt.