====== eigen SSL certficaat aanmaken====== [[ssl:ssl|{{ :ssl:ssl-encryption.png?120|}}]] ===== context===== dit document beschrijft hoe je een eigen SSL certificaat aanmaakt op Windows. ===== OpenSSL===== * installeer openssl ''choco install openssl'' * verkenner: ''C:\Program Files\OpenSSL-Win64\tests\start'' ===== private key aanmaken voor je server===== - ''cd /home/ca'' - maak een private key paar aan voor de CA openssl genrsa -des3 -out server.key 2048 - geef een sterk wachtwoord op - dit maakt 1 (tekst)bestand aan: ''server.key'' met vergelijkbare inhoud: -----BEGIN ENCRYPTED PRIVATE KEY----- MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQI2g3AahkapWYCAggA MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECBXvOoLtreyKBIIEyL01u/JxcHru c7lEPudjbJCqu/hJXV17YX0znE7qZ990ZuVZanQ0hs/bfmPv3Qi2bGQ2odpWZCQ2 9cLXJDgziwKWo+P1L89lhShrLkOJN8lnVMMnQWxbtp1ryci+qKwZ4bgFpztzBZ98 JD3yGnSwo4xu6XfpIm0QR8ycprHTrzzUzvLO7jDAhvMYryN5dpfgBk4ntYyfufOG KwVg4YKNGfLC9B19ol6DU5kgj2ION6r2HFTS0Pjd2VX5+TkeczHW8nfG/A+t601E 6N90dvkUTigAkhB4LXKteABkalzDWlsgPX37pbEnMwZli+uVCI6xkaTUR37iYjzR gL2+hpg6C93snJPZ48ap19b1grqG5T1nw1QE2axXePW5IXAZ7HXI5zsgFk5/uyNl ... OmpWkBcKd90qHc/uWa4eI+KvARNA5mlgG9vZHZehojWcpYFbRvID6TjcXn+VXuNm BG2RNOX2StY8sUWt8dzJ/TjD50dBvrDwVeOnIBehAY+yTt5dr5JSWm6TBIIWJwZL jKV1cI1Ssriz7OmkPDuOdJIVIjYf13C+d+MiID8GLlGH0KzMpvBBDFPQwA+oAfS5 sxehyfGJPl3Bk3AUFOXtPQ== -----END ENCRYPTED PRIVATE KEY----- bewaar deze sleutel veilig want hiermee wordt later de SSL communiatie mee opgezet! achteraf kan je dit bestand inlezen ahv openssl rsa -text -in server.key -noout ===== certificate signing request voor de server aanmaken===== ==== Certificate Signing Request aanmaken==== - maak een CSR (certificate signing request) aan: openssl req -verbose -new -key server.key -out server.csr -sha256 - geef het wachtwoord van je private key op - geef voldoende relevante informatie op voor de DN (distinghuished name) van je server. - dit maakt 1 (tekst)bestand aan: ''server.CA.csr'' met vergelijkbare inhoud: -----BEGIN CERTIFICATE REQUEST----- MIIC3zCCAccCAQAwgZkxCzAJBgNVBAYTAkJFMRgwFgYDVQQIDA9Pb3N0LVZsYWFu ZGVyZW4xEjAQBgNVBAcMCU1lcmVsYmVrZTESMBAGA1UECgwJTG91J3MgTGFiMQww CgYDVQQLDANERVYxETAPBgNVBAMMCExvdSdzIENBMScwJQYJKoZIhvcNAQkBFhhr b2VuLnZleXNAcHJvdG9ubWFpbC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQCQ5q5BSgwaeo/Y/q/CfOki7vhTnTzfkVetvwrysolC73kEmXuRwPnN oJMRWKWNbXNM9u7tLQkUIJSndTl5UzW3S1ohbWwaYNtngColiAIQWgqIrYLhM0wk CTgHektH72NkBTbbaDzLkbfkC/U/PXv53xPwoGZ1R0NWJD+PbnfLEdL641VNN0li ... AQEAIvVJfZyiLgxfECHa2mvoMtyV8rj+aY2B6QL0/Xn/r/P+9Q8eYx76A56I+Gu4 hpSdnC75lEvQoFwK1IhktmDZxU3e6Y1eKO2sYs12hI1uL8rGywDNNObpy7BGiwT5 mpwqy3K+TpMq9DbItWugNlRDwIRj5YoRnvo4397wYWvMUPI+jQZBDxHZdokjNraN AElE41j/JkJugykIviqNHUkJJ6awZLm2SqjUS2U7xE2inBKyC1VMlxuhDAcuzITK Eafih+llrgOmgS9Z4Rkvo6ZJ7PPCk7l6AkE5kvAjKDFJpFZX3QL0Ic9xHu0N/Uda PG9fpY3t/jujWmLz/5AvgSEyIg== -----END CERTIFICATE REQUEST----- achteraf kan je dit bestand inlezen ahv openssl req -text -in server.csr -noout {{ :ssl:lan_000195.png?400 |}} ==== tekenen van CA certificate==== - teken het certificate signing request: openssl ca -extensions v3_ca -out server.CA-signed.crt -keyfile server.CA.key -verbose -selfsign -md sha256 -enddate 330630235959Z -infiles server.CA.csr - enddate formaat: YYMMDDHHMMSSZ - geef wachtwoord van je private key in - bevestig de info (uit het csr) {{ :ssl:lan_000178.png?400 |}} - volgend bestande bestanden worden aangemaakt: - /newcerts/1000.pem - /serial.old en /serial - /server.CA-signed.crt Je kan het CA certificaat inlezen ahv openssl x509 -noout -text -in server.CA-signed.crt Hiermee heb je een werkende CA die csr kan ondertekenen.\\ Bovenstaand werk kan ook wat eenvoudiger door [[https://easy-rsa.readthedocs.io/en/latest/|easy-rsa]] ===== meer info===== - https://www.wikihow.com/Be-Your-Own-Certificate-Authority - [[https://www.howtouselinux.com/post/openssl-command-to-generate-view-check-certificate|Check SSL Certificate with OpenSSL in Linux]] {{tag>ssl}}