====== Certificate Authority mit easyrsa ====== Ich empfehle easy-rsa für die verwaltung einer CA.(([[https://wiki.archlinux.org/title/Easy-RSA|Tutorial von Archwiki]])) ==== Initial Setup ==== == Installation (Debia) == Unter Debian wird die binary nicht ordentlich verlinkt.. apt install -y easy-rsa ln -s /usr/share/easy-rsa/easyrsa /usr/bin/easyrsa == Setup CA Ordner == Der hier erstellte Ordner muss nicht in gänze aubewahrt werden, aber es bietet sich an. easyrsa init-pki Erstellt einen pki ordner im aktuellen ordner. dieser beinhaltet dann alle Infos der CA. Jetzt sollten noch ein paar Infos hinterlegt werden als Defaults. Dafür die ''pki/vars'' Datei bearbeiten. Außerdem kann man hier die types bearbeiten, um zB CRLs zu erstellen. cp /usr/share/easy-rsa/x509-types/* pki/x509-types/ == Root generieren == Nun kann das Root Zertifikat erstellt werden: easyrsa build-ca ==== Client Cert ==== # create client cert req easyrsa gen-req jk-t490.home.julian-lemmerich.de nopass # signing the request easyrsa sign-req client jk-t490.home.julian-lemmerich.de nopass == Export für Clients == easyrsa export-p12 jk-t490.home.julian-lemmerich.de Android kann mit standard p12 nicht umgehen, daher muss die legacy option gewählt werden! Dafür wird easyrsa > 3.2.0 benötigt. easyrsa export-p12 j-s10e-ii.home.julian-lemmerich.de legacy ==== Revoking certificates ==== easyrsa revoke jk-t490.home.julian-lemmerich.de easyrsa gen-crl Danach die pki/crl.pem auf den passenden Server bereitstellen, sodass der verifier diese abrufen kann. ===== Secrets ===== Der PKI Ordner enthält natürlich secrets. Die folgenden sollten verschlüsselt werden, falls der Ordner zB auf git gepusht wird: * pki/private/* * pki/inline/private/*