Suche


drucken PDF

SSL Redhat OVH


Was ist das?

SSL (Secure Socket Layer) wird verwendet um Informationen zwischen zwei Maschinen verschlüsselt auszutauschen. Normalerweise geschieht dies zwsichen einem Client und einem Server. Dies kann auf Ihrem Server genutzt werden, um die Übertragung vertraulicher Informationen zu schützen. Beispielsweise eine Onlinezahlung. Seine Verwendung wird in der Adresszeile durch HTTPS angezeigt.





Schritte

Voraussetzungen

  1. Eine Domain bei OVH

  2. Ein SSL Zertifikat für diese Domain oder eine Ihrer Subdomains (www.meine_domain.de in diesem Beispiel)

  3. Einen dedizierten Server mit Redhat OVH Release 1

  4. SSH Zugriff auf den Server z.B. via Putty

  5. Der Private Key, die Zertifikatskette und das Zertifikat wurden bereits von Ihnen im Ordner /root/ auf dem Server abgelegt.

  6. In diesem Beispiel wird die Installation auf der Fail-Over-IP: 87.xxx.xxx.xxx stattfinden, die zuvor wie hier beschrieben eingerichtet wurde: Fail-Over-IP Hinzufügen

Named Konfiguration

  1. Editieren Sie die Datei /var/named/meine_domain.de.hosts und fügen Sie die Fail-Over-IP für die Domain oder Subdomain Ihres Zertifikates ein, hier www.meine_domain.de:

    Denken Sie daran, die SOA Seriennummer auf das aktuelle Datum einzustellen: 2010071501

    root@alex root# cat /var/named/meine_domain.de.hosts
    $ttl 86400
    meine_domain.de. IN SOA meine_domain.de. webmaster.meine_domain.de. (
    2010071501
    21600
    3600
    604800
    86400 )
    IN NS nsXXXX.ovh.net.
    IN NS sdns1.ovh.net.
    IN MX 10 mail.meine_domain.de.
    IN A 213.xxx.xxx.xxx
    www IN A 87.xxx.xxx.xxx
    ftp IN A 213.xxx.xxx.xxx
    mail IN A 213.xxx.xxx.xxx


    Dann named neustarten:
    root@alex root# /etc/init.d/named restart


SSL Zertificate einrichten

  1. Als einen ersten Schritt werden wir die Privatekeydatei in /usr/local/apache/conf/ssl.key ablegen.

    root@alex root# cd /usr/local/apache/conf/ssl.key/
    root@alex ssl.key# cp /root/private.key ./
    root@alex ssl.key# pwd ; ll private.key
    /usr/local/apache/conf/ssl.key
    -rw-r--r-- 1 root root 1743 oct 30 16:59 private.key
    root@alex ssl.key# chmod 400 private.key
    root@alex ssl.key# pwd ; ll private.key
    /usr/local/apache/conf/ssl.key
    -r-------- 1 root root 1743 oct 30 16:59 private.key

    Damit Apache nicht bei jedem Neustart nach dem Private Key fragt, wird empfohlen, den Key im Voraus zu entschlüsseln:
    openssl rsa -in private.key > private-deprotect.key

    Wenn Sie diese Methode Nutzen, ersetzen Sie später in der Hilfe private.key durch private-deprotect.key .

  2. Laden Sie die .crt von MANAGER >> SSL Zertifikate >> Das SSL Zertifikat abrufen herunter und kopieren Sie sie dann nach /usr/local/apache/conf/ssl.crt

    root@alex ssl.key# cd /usr/local/apache/conf/ssl.crt/
    root@alex ssl.crt# cp /root/certificate-chain.crt ./
    root@alex ssl.crt# cp /root/certificate.crt ./
    root@alex ssl.crt# pwd ; ll certificate*
    /usr/local/apache/conf/ssl.crt
    -rw-r--r-- 1 root root 5053 oct 30 17:10 certificate-chain.crt
    -rw-r--r-- 1 root root 2051 oct 30 17:10 certificate.crt
    root@alex ssl.crt#

  3. Dann die Apache Konfiguration bearbeiten.

    Editieren Sie die Datei /etc/sysconfig/apache und entfernen Sie das # vor OPTIONS="-DSSL"

    root@alex root# cat /etc/sysconfig/apache
    # Uncomment the following line and restart Apache to activate SSL
    # OPTIONS="-DSSL"
    root@alex root# pico /etc/sysconfig/apache
    root@alex root# cat /etc/sysconfig/apache
    # Uncomment the following line and restart Apache to activate SSL
    OPTIONS="-DSSL"
    root@alex root#


  4. VirtualHost Konfiguration

    Zuerst prüfen wir, ob Apache auf Port 443 lauscht. Wenn Listen 443 auskommentiert ist, muss das # entfernt werden.
    root@alex root# grep ^Listen /httpd.conf
    Listen 80
    Listen 443
    root@alex root#


    Danach editieren wir die Datei /httpd.conf
    Hier haben wir drei Pflichtfelder:
    - Der Private Key
    - Das Zertifikat
    - Die Zertifikatskette

    Anschließend fügen Sie folgende Zeilen hinzu:

    NameVirtualHost 87.xxx.xxx.xxx:443

    <VirtualHost 87.xxx.xxx.xxx:443>
    ServerAdmin postmaster@meine_domain.de
    DocumentRoot /home/meinedom/www
    User meinedom
    Group users
    Servername www.meine_domain.de
    SSLEngine on
    SSLCertificateFile /usr/local/apache/conf/ssl.crt/certificate.crt
    SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/private.key
    SSLCACertificateFile /usr/local/apache/conf/ssl.crt/certificate-chain.crt
    Customlog logs/meinedom-acces_log combined
    ScriptAlias /cgi-bin/ /home/meinedom/cgi-bin/
    </VirtualHost>


  5. Apache neustarten
    root@alex root# /etc/init.d/httpd restart
    Stop httpd: [ OK ]
    Starting httpd: [ OK ]
    root@alex root#

    Im Fehlerfall prüfen Sie bitte die Logdatei /var/log/httpd/error_log

    Geben Sie, wenn Verlangt, Ihren passphrase (Der, den Sie bei der Erstellung des Private Key private.key angegeben hatten) ein:

    Server www.meine_domain.de:443 (RSA)
    Enter pass phrase:

    Prüfen Sie ob Apache richtig auf Port 443 läuft:

    root@alex root# netstat -tanpu | grep ":443"
    tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 8965/httpd


  6. Testen Sie den Zugang https://www.meine_domain.de/