SSL und Shellscript

pyr0

New Member
[gelöst ] SSL und Shellscript

Salü an alle !

mal eine Farge: Gibt es eine Möglichkeit SSL Zertifikate per Script zuerstellen ohne das man eine Eingabe macht ? Falls ja wie ?

Mein Ansatz ist wie folgt:
PHP:
HOSTNAME=testrechner
openssl genrsa  -out pass.key 1024
openssl rsa -in pass.key -out $HOSTNAME.key
damit wird ein neuer Schlüssel erzeugt soweit so gut
nur wenn ich jetzt
PHP:
openssl req -new -key $HOSTNAME.key -x509 -out $HOSTNAME.crt -days 999

will er immer die Eingaben für das Zertifikat haben, kann ich das nicht irgendwie mit geben ??

Danke
 
Last edited by a moderator:
expect antwortet auf Fragen mit vorgegebenen Antworten -- ist aber etwas kompliziert ;) (s. man expect).

Alternativ kannst Du die Angaben aber auch auf der Kommanozeile mit angeben, bzw. in einem Config-File spezifizieren (siehe man req).

Code:
openssl req -new -key $HOSTNAME.key -x509 -out $HOSTNAME.crt -days 999 -subj /C=US/ST=CA/L=Entenhausen/O="ACME Inc"/OU="IT Services"/CN="Mikey Mouse"

Viele Grüße,
LinuxAdmin

PS: Nützliche Informationen zu Zertifikaten findet sich auch hier Eclectica (das meiste wirst Du allerdings schon wissen), beispielsweise wird das Format der Config-Datei dort beschrieben.
 
also wenn ich das so mache wie du beschrieben hast, funktioniert es SUPER auf der Konsole
nur wenn ich jetzt mit

PHP:
#!/bin/bash
echo $HOSTNAME
openssl genrsa -out $HOSTNAME.key 1024

openssl req -new -key $HOSTNAME.key -x509 -out $HOSTNAME.crt -days 999 -subj /C=US/ST=CA/L=Entenhausen/O="ACME Inc"/OU="IT Services"/CN="Mikey Mouse"



openssl req -noout -text -in $HOSTNAME.crt

die letzte Zeile ist ja nur Kontrolle aber eben irgendwas stimmt da nicht


und wenn ich das hier nehme bekomme ich auch immer angezeigt das das Zertifikat leer ist komisch oder
https://secure.comodo.net/utilities/decodeCSR.html


kannst Du noch einmal helfen bitte

Danke
 
Mal 'ne Zwischenfrage: Was willst Du eigentlich genau mit dem Script erzeugen? Wozu sollen die Schlüssel dienen?

Viele Grüße,
LinuxAdmin
 
Das Script in sslkeygen.0.1.tgz-Archiv im Anhang erledigt diese Aufgabe. Du musst die Daten in careq_opts und skey_opts noch entsprechend anpassen.

Viele Grüße,
LinuxAdmin
 

Attachments

Danke

nur wenn ich das Zertifikat mit :
Code:
openssl req -noout -text -in server.csr

kontrollieren will kommt immer eine Fehlermeldung

Code:
unalbe to load X509 request
3034:error:0906D06C:PEM rountines:PEM_read_bio:no start line:pem_lib.c:644:Expecting CERTIFICATE REQUEST

Woran liegt das bitte ??

Danke
 
Bei mir funktioniert das einwandfrei:
Code:
$ openssl req -noout -text -in h4711.serverkompetenzdreck.de.csr 
Certificate Request:
    Data:
        Version: 0 (0x0)
        Subject: C=US, ST=CA, L=Los Angeles, O=ACME Inc., OU=Certification Agency, CN=h4711.serverkompetenzdreck.de/emailAddress=hostmaster@h4711.serverkompetenzdreck.de
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
            RSA Public Key: (1024 bit)
                Modulus (1024 bit):
                    00:b2:4b:b5:c3:6c:08:73:d6:58:f0:7b:a8:e2:a8:
                    84:82:ea:b4:5e:dd:65:6f:cf:c2:a9:b0:00:6b:44:
                    dc:08:6f:4e:11:ab:a4:70:76:13:42:c8:fb:5f:93:
                    d5:24:bf:89:14:78:1b:3b:6c:cd:66:17:d7:23:e2:
                    9e:b6:82:98:04:e9:d3:60:eb:e8:b9:2b:5e:15:21:
                    40:f8:fe:c1:02:f2:d9:9d:c8:5f:54:00:62:c9:72:
                    fa:e1:56:90:fb:8f:7b:e1:64:1f:76:d8:72:be:33:
                    e4:fd:98:8c:9d:62:09:d6:24:97:6a:65:8f:9d:36:
                    79:2d:82:78:3f:13:f7:cf:c9
                Exponent: 65537 (0x10001)
        Attributes:
            challengePassword        :3g93sg63r73 A challange password24gl2a
    Signature Algorithm: sha1WithRSAEncryption
        ad:a4:dd:c3:ff:ea:26:5d:20:74:7a:f4:68:bc:15:3f:7a:0a:
        9b:59:63:a7:b6:27:d1:7e:47:68:14:ce:bd:21:29:f2:f7:47:
        28:a7:78:f1:d4:07:3c:09:12:20:44:03:15:b0:1f:a9:3e:c0:
        eb:4f:84:83:83:22:a1:f4:e7:7e:14:a8:17:0b:d7:b0:c3:30:
        ea:17:5c:2d:06:87:b5:e7:cc:86:f1:21:c7:8a:0a:8a:e6:1a:
        b5:b6:6a:50:25:5e:da:52:60:a6:46:a4:70:d4:31:58:f0:f1:
        41:c9:ce:ee:e5:1b:0a:56:53:97:af:0e:2f:72:c1:9d:9e:1d:
        bf:5f
Entweder ist Deine SSL-Installation fehlerhaft, oder Du hast irgendwas anders gemacht.... Die CSR-Datei sieht so aus:
Code:
-----BEGIN CERTIFICATE REQUEST-----
MIICPDCCAaUCAQAwgcQxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEUMBIGA1UE
BxMLTG9zIEFuZ2VsZXMxEjAQBgNVBAoTCUFDTUUgSW5jLjEdMBsGA1UECxMUQ2Vy
dGlmaWNhdGlvbiBBZ2VuY3kxJjAkBgNVBAMTHWg0NzExLnNlcnZlcmtvbXBldGVu
emRyZWNrLmRlMTcwNQYJKoZIhvcNAQkBFihob3N0bWFzdGVyQGg0NzExLnNlcnZl
cmtvbXBldGVuemRyZWNrLmRlMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCy
S7XDbAhz1ljwe6jiqISC6rRe3WVvz8KpsABrRNwIb04Rq6RwdhNCyPtfk9Ukv4kU
eBs7bM1mF9cj4p62gpgE6dNg6+i5K14VIUD4/sEC8tmdyF9UAGLJcvrhVpD7j3vh
ZB922HK+M+T9mIydYgnWJJdqZY+dNnktgng/E/fPyQIDAQABoDcwNQYJKoZIhvcN
AQkHMSgTJjNnOTNzZzYzcjczIEEgY2hhbGxhbmdlIHBhc3N3b3JkMjRnbDJhMA0G
CSqGSIb3DQEBBQUAA4GBAK2k3cP/6iZdIHR69Gi8FT96CptZY6e2J9F+R2gUzr0h
KfL3RyinePHUBzwJEiBEAxWwH6k+wOtPhIODIqH0534UqBcL17DDMOoXXC0Gh7Xn
zIbxIceKCormGrW2alAlXtpSYKZGpHDUMVjw8UHJzu7lGwpWU5evDi9ywZ2eHb9f
-----END CERTIFICATE REQUEST-----


Viele Grüße,
LinuxAdmin
 
Last edited by a moderator:
Back
Top