Server Installation/Opennet CA: Unterschied zwischen den Versionen

Aus Opennet
Wechseln zu: Navigation, Suche
(Config Files)
(Funktionen)
Zeile 12: Zeile 12:
 
* Zurückziehen von Zertifikaten
 
* Zurückziehen von Zertifikaten
 
* Erstellen der CRL Liste
 
* Erstellen der CRL Liste
 +
* Suchen von Zertifikaten über CN
 
* automatisches Logging
 
* automatisches Logging
 
* automatischer Mailversand
 
* automatischer Mailversand

Version vom 3. Januar 2014, 16:50 Uhr

Software für Betrieb der Opennet CA.

Inhaltsverzeichnis

Voraussetzungen

  • openssl - zum Betrieb der CA Funktionen
  • mailx, sharutils - zum Versand von E-Mails
  • apache2 - für Webseiten

Funktionen

  • Signieren von Zertifikatsanfragen
  • Zurückziehen von Zertifikaten
  • Erstellen der CRL Liste
  • Suchen von Zertifikaten über CN
  • automatisches Logging
  • automatischer Mailversand
  • Erzeugen von Webübersicht

User u. Verzeichnisse

  • User "opennetca" mit Home /home/opennetca
  • Webseiten unter /var/www/htdocs/ca.opennet-initiative.de/
  • CA Verzeichnis einrichten:
mkdir cert
mkdir crl
mkdir csr
mkdir .backup
touch index.txt
touch serial.txt
cp <src>/README .
cp <src>/opennetca.sh .
cp <src>/opennetca.conf .
cp <src>/sign.sh .
cp <src>/revoke.sh .
cp <src>/crl.sh .
cp <src>/opennet-*.crt .
cp <src>/opennet-*.key .
cp <src>/opennet-*.conf .
chown -R opennetca:opennetca *
chmod 600 opennet-*.key

Config Files

  • OpenSSL Konfiguration: opennet-<ca-name>.ca.on_<year>.conf, notwendige Anpassungen:
[ opennetca ]
dir = /home/opennetca/ca/<capath>
certificate = $dir/opennet-<caname>.crt
private_key = $dir/opennet-<caname>.key
[ opennetca_certsign ]
nsComment = Opennet <caname-text> CA
nsCaRevocationUrl = http://ca.opennet-initiative.de/<caname>.crl
nsRevocationUrl = http://ca.opennet-initiative.de/<caname>.crl
[ opennetca_crl ]
fullname=URI:http://ca.opennet-initiative.de/<caname>.crl

  • CA Script Konfiguration: opennetca.cfg, notwendige Anpassungen:
# variables global
CA_CONFIG=opennet-<caname>.conf
CA_MAILSUBJECT="Opennet CA (<caname>)"
# variables sign
CA_CSRCN="<cn-extension1> <cn-extension2> .."
# variables crl
CA_CRL=<caname>.crl

CA Scripts

Download per Web: http://svn.opennet-initiative.de/listing.php?repname=on_opennetca
Checkout per SVN: svn checkout svn://svn.opennet-initiative.de/on_opennetca

  • Opennet CA: opennetca.sh (Basisfunktionen, benötigt Konfiguration opennetca.conf)
  • Zertifikate signieren: sign.sh (verwendet opennetca.sh sign Methode)
  • Zertifikate zurückziehen: revoke.sh (verwendet opennetca.sh revoke Methode)
  • CRL Liste erstellen: crl.sh (verwendet opennetca.sh crl Methode)
  • Cert Liste in HTML: opennetca_htmlview.sh (eigenständiges Script)

Diese Files für jede CA bereitstellen. Keine Anpassung notwendig.

Crontabs

Regelmäßige CRL Listen Erstellung und Bereitstellung:

# Opennet CA CRL Generator
15 1,13 * * *   opennetca /home/opennetca/ca/root/crl.sh >/dev/null
15 1,13 * * *   opennetca /home/opennetca/ca/vpnuser/crl.sh >/dev/null
15 1,13 * * *   opennetca /home/opennetca/ca/vpnugw/crl.sh >/dev/null
25 1,13 * * *   root    cp /home/opennetca/ca/root/crl/*.crl /var/www/htdocs/ca.opennet-initiative.de/
25 1,13 * * *   root    cp /home/opennetca/ca/vpnuser/crl/*.crl /var/www/htdocs/ca.opennet-initiative.de/
25 1,13 * * *   root    cp /home/opennetca/ca/vpnugw/crl/*.crl /var/www/htdocs/ca.opennet-initiative.de/

Inhaltliche CRL Kontrolle per (u.a. Revoked Certificates):

openssl crl -text -in crl/<file>.crl 

Öffentliche anonymisierte Zertifikatsliste bereitstellen:

# Opennet CA Cert List Generator
30 1,13 * * *   root    /home/opennetca/ca/root/opennetca_htmlview.sh --public >/var/www/htdocs/ca.opennet-initiative.de/root.html
30 1,13 * * *   root    /home/opennetca/ca/vpnuser/opennetca_htmlview.sh --public > /var/www/htdocs/ca.opennet-initiative.de/vpnuser.html
30 1,13 * * *   root    /home/opennetca/ca/vpnugw/opennetca_htmlview.sh --public > /var/www/htdocs/ca.opennet-initiative.de/vpnugw.html
Meine Werkzeuge
Namensräume

Varianten
Aktionen
Start
Opennet
Kommunikation
Karten
Werkzeuge