GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So richten Sie mehrere SSL-Zertifikate auf einem CentOS VPS mit Apache unter Verwendung einer IP-Adresse ein

In diesem Tutorial zeigen wir Ihnen, wie Sie mehrere SSL-Zertifikate auf einem CentOS VPS mit Apache mit nur einer IP-Adresse einrichten.

Dies wird durch eine Erweiterung des SSL-Protokolls namens Server Name Indication (SNI) ermöglicht. Die meisten aktuellen Desktop- und mobilen Webbrowser unterstützen SNI. Der Hauptvorteil der Verwendung von SNI ist die Möglichkeit, mehrere Websites zu sichern, ohne weitere IP-Adressen kaufen zu müssen.

Stellen Sie sicher, dass das Sicherheitsmodul mod_ssl installiert und aktiviert ist, damit der Apache-Webserver die OpenSSL-Bibliothek und das Toolkit verwenden kann:

yum install mod_ssl openssl

Führen Sie die folgenden Befehle aus:

mkdir -p /etc/httpd/ssl/mv /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.bak cd /etc/httpd/ssl/ 

Generieren Sie SSL-Zertifikatsignaturanforderungsdateien (CSR) für Ihre Domains:

openssl genrsa -out domain1.key 2048openssl req -new -key domain1.key -out domain1.csropenssl genrsa -out domain2.key 2048openssl req -new -key domain2.key -out domain2.csr

und geben Sie die folgenden Details für Ihre Zertifikate ein:

  • Landesname
  • Staats- oder Provinzname
  • Ortsname
  • Organisationsname
  • Name der Organisationseinheit
  • E-Mail-Adresse

Wenn Sie zur Eingabe des Common Name (d. h. des Domänennamens) aufgefordert werden, geben Sie den FQDN (vollständig qualifizierter Domänenname) für die zu sichernde Website ein.

Es wird empfohlen, kommerzielle SSL-Zertifikate zu installieren, wenn sie in einer Produktionsumgebung verwendet werden. Oder generieren und verwenden Sie selbstsignierte SSL-Zertifikate, wenn Sie gerade eine Website oder Anwendung entwickeln oder testen, indem Sie die folgenden Befehle verwenden:

openssl x509 -req -days 365 -in domain1.csr -signkey domain1.key -out domain1.crtopenssl x509 -req -days 365 -in domain2.csr -signkey domain2.key -out domain2.crt

Bearbeiten Sie die Apache-Konfigurationsdatei „ssl.conf“:

vi /etc/httpd/conf.d/ssl.conf

und fügen Sie die folgenden Zeilen hinzu:

LoadModule ssl_module modules/mod_ssl.soListen 443NameVirtualHost *:443SSLPassPhraseDialog  builtinSSLSessionCacheTimeout  300SSLMutex defaultSSLRandomSeed startup file:/dev/urandom  256SSLRandomSeed connect builtinSSLCryptoDevice builtinSSLStrictSNIVHostCheck offDocumentRoot /var/www/html/domain1ServerName domain1.comServerAlias ​​www.domain1 .comSSLEngine onSSLProtocol all -SSLv2SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOWSSLCertificateFile /etc/httpd/ssl/domain1.crtSSLCertificateKeyFile /etc/httpd/ssl/domain1.key# SSLCertificateChainFile /etc/httpd/ssl/ca.crtErrorLog logs/ssl_error_logTransferLog logs/ssl_access_logLogLevel warn    SSLOptions +StdEnvVarsSetEnvIf User-Agent ". *MSIE.*" \         nokeepalive ssl-unclean-shutdown \         downgrade-1.0 force-response-1.0CustomLog logs/ssl_request_log \          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" Dokument Root /var/www/html/domain2ServerName domain2.comServerAlias ​​www.domain2.comSSLEngine onSSLProtocol all -SSLv2SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOWSSLCertificateFile /etc/httpd/ssl /domain2.crtSSLCertificateKeyFile /etc/httpd/ssl/domain2.key#SSLCertificateChainFile /etc/httpd/ssl/ca.crtErrorLog logs/ssl_error_logTransferLog logs/ssl_access_logLogLevel warn    SSLOptions +StdEnvVarsSetEnvIf User-Agent ".*MSIE.*" \         nokeepalive ssl-unclean-shutdown \         downgrade-1.0 force-response-1.0CustomLog logs/ssl_request_log \          "%t %h %{SSL_PROTOCOL} x %{SSL_CIPHER}x \"%r\" %b"

Wenn Sie ein kommerzielles SSL-Zertifikat verwenden, wird die signierende Stelle wahrscheinlich ein CA-Zwischenzertifikat enthalten. Erstellen Sie in diesem Fall eine neue Datei „/etc/httpd/ssl/ca.crt“ und fügen Sie den Inhalt der Zwischenzertifizierungsstelle darin ein, bearbeiten Sie dann die Konfigurationsdatei „ssl.conf“ und kommentieren Sie die folgende Zeile aus:

SSLCertificateChainFile /etc/httpd/ssl/ca.crt

damit der Apache-Webserver Ihr CA-Zertifikat finden kann.

Testen Sie die Apache-Konfiguration:

/etc/init.d/httpd configtestSyntax OK

Starten Sie den Apache-Dienst neu, damit die Änderungen wirksam werden:

Dienst httpd neu starten

Öffnen Sie https://domain1.com und https://domain2.com in Ihrem bevorzugten Webbrowser und vergewissern Sie sich, dass die SSL-Zertifikate korrekt installiert sind.

Natürlich müssen Sie nichts davon tun, wenn Sie einen unserer Linux-VPS-Hosting-Dienste nutzen. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, mehrere SSL-Zertifikate auf Ihrem VPS für Sie einzurichten. Sie sind 24×7 erreichbar und kümmern sich umgehend um Ihr Anliegen.

PS. Wenn Ihnen dieser Beitrag gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.


Cent OS
  1. So richten Sie virtuelle Apache-Hosts unter CentOS ein

  2. So richten Sie mit Nginx mehrere SSLs auf einer IP ein

  3. So installieren Sie WordPress Multisite auf Centos VPS mit Apache

  4. So installieren Sie PhpWiki auf einem CentOS 7 VPS

  5. So installieren Sie Apache 2.4.2 von der Quelle auf CentOS 6.2 mit SSL

So richten Sie ein SSL-Zertifikat von Let’s Encrypt mit Apache unter CentOS 8 / RHEL 8 und CentOS 7 / RHEL 7 ein

So legen Sie eine statische IP-Adresse in CentOS Linux fest

So installieren Sie Let’s Encrypt SSL mit Apache unter CentOS 7

So richten Sie WebDAV mit Apache unter CentOS 7 ein

So installieren Sie ein kostenloses SSL-Zertifikat für Apache unter CentOS 8

So sichern Sie Apache mit Let’s Encrypt SSL-Zertifikat auf CentOS 8