Generieren benutzerdefinierter selbstsignierter SSL-Zertifikate und Anwendung auf Postfix

Created:

2016-11-16 13:14:04 UTC

Modified:

2017-06-22 09:52:07 UTC

10

Was this article helpful?


Have more questions?

Anfrage einreichen

Generieren benutzerdefinierter selbstsignierter SSL-Zertifikate und Anwendung auf Postfix

Applicable to:

  • Plesk 12.0 for Linux
  • Plesk 11.0 for Linux
  • Plesk 11.5 for Linux

Kennzeichen

Wie Sie benutzerdefinierte selbstsignierte SSL-Zertifikate generieren und auf Postfix anwenden

Ursache

Die Standard-SSL-Zertifikate von Plesk müssen in dem Postfix E-Mail-Service geändert werden.

Lösung

Sie müssen die nachfolgenden Schritte ausführen:

  1. Erstellen Sie einen privaten Schlüssel der Root:

    openssl genrsa -out rootCA.key 2048
    
  2. Ändern Sie die Berechtigungen dieses privaten Schlüssels auf 400:

    chmod 400 /usr/share/ssl/certs/postfix/rootCA.key
    
  3. Erstellen Sie ein selbstsigniertes Root-Zertifikat:

    openssl req -x509 -new -nodes -key rootCA.key -days 1024 -out rootCA.pem
    

    Mit folgenden Daten (ändern Sie die Informationen entsprechend Ihren Anforderungen):

    Country Name (2 letter code) [AU]:XX
    State or Province Name (full name) [Some-State]:SomeState
    Locality Name (eg, city) []:SomeCity
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:Company Co
    Organizational Unit Name (eg, section) []:Company Co
    Common Name (e.g. server FQDN or YOUR name) []:domain.tld
    Email Address []:admin@domain.tld
    
  4. Erstellen Sie den privaten Schlüssel für das endgültige Zertifikat:

    openssl genrsa -out device.key 2048
    
  5. Erstellen Sie eine Zertifikatsignaturanforderung (CSR):

    openssl req -new -key device.key -out device.csr
    
  6. Und zuletzt erstellen Sie ein Server-Zertifikat basierend auf dem Root-CA-Zertifikat und dem privaten Schlüssel der Root:

    openssl x509 -req -in device.csr -CA root.pem -CAkey root.key -CAcreateserial -out device.crt -days 500
    
  7. Ändern Sie die Postfix-Konfiguration ( /etc/postfix/main.cf ) so, dass die neu erstellten Zertifikate verwendet werden:

    #smtpd_tls_key_file = /etc/postfix/postfix_default.pem
    #smtpd_tls_cert_file = /etc/postfix/postfix_default.pem
    #smtpd_tls_CAfile = /etc/postfix/postfix_default.pem
    smtpd_tls_key_file = /usr/share/ssl/certs/postfix/device.key
    smtpd_tls_cert_file = /usr/share/ssl/certs/postfix/device.crt
    smtpd_tls_CAfile = /usr/share/ssl/certs/postfix/rootCA.pem      
    
  8. Starten Sie den Postfix-Service neu:

    [root@centos ~]# service postfix restart
    Shutting down postfix:                                     [  OK  ]
    Starting postfix:                                          [  OK  ]
    

Alle neu generierten Dateien sollten im Ordner /usr/share/ssl/certs/postfix/ erstellt werden (Sie können den Ordner ändern, aber dann müssen Sie auch die Pfade in der Postfix-Konfiguration ändern).

Nach diesen Schritten arbeitet Postfix mit den neuen Zertifikaten. Sie können dies mit folgendem Befehl überprüfen:

[root@centos ~]# openssl s_client -crlf -connect localhost:465
CONNECTED(00000003)
depth=0 C = US, ST = SomeState, L = SomeCity, O = Company Co, OU = Company Co, CN = domain.tld, emailAddress = admin@domain.tld
verify error:num=18:self signed certificate
verify return:1
depth=0 C = US, ST = SomeState, L = SomeCity, O = Company Co, OU = Company Co, CN = domain.tld, emailAddress = admin@domain.tld
verify return:1
---
Certificate chain
 0 s:/C=PK/ST=SomeState/L=SomeCity/O=Company Co/OU=Company Co/CN=domain.tld/emailAddress=admin@domain.tld
   i:/C=PK/ST=SomeState/L=SomeCity/O=Company Co/OU=Company Co/CN=domain.tld/emailAddress=admin@domain.tld
---
Haben Sie Fragen? Anfrage einreichen
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.