Website-Suche

So installieren Sie nginx auf einem RHEL 8/CentOS 8-Server


Das Ziel dieses Artikels ist es, Ihnen den Einstieg in die grundlegende Installation des Nginx-Webservers mit dem Befehl dnf install nginx und der Konfiguration unter RHEL 8/CentOS 8 zu erleichtern. Der Nginx-Webserver ist eine Apache-Alternative, die auch als Reverse-Proxy, Load Balancer, Mail-Proxy und HTTP-Cache verwendet werden kann.

In diesem Tutorial lernen Sie:

  • So installieren Sie Nginx auf RHEL 8/CentOS 8.
  • So starten Sie Nginx.
  • So aktivieren Sie den Start von Nginx nach dem Neustart.
  • So öffnen Sie HTTP- und HTTPS-Ports.
  • So führen Sie Nginx mit HTTPS verschlüsselt aus.
  • So erstellen Sie ein selbstsigniertes SSL-Zertifikat für Nginx.

Nginx-Webserver auf RHEL 8 Linux-Server.

Verwendete Softwareanforderungen und Konventionen

Schritt-für-Schritt-Anleitung zum Installieren von nginx auf einem RHEL 8-Server

  1. Installieren Sie das Paket nginx mit dem Befehl dnf.

    dnf install nginx
    
  2. Starten Sie den Nginx-Dienst:

    systemctl start nginx
    

    Um sicherzustellen, dass Nginx nach dem Neustart gestartet wird, aktivieren Sie den systemd-Dienst für nginx:

    systemctl enable nginx
    Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.
    
  3. Öffnen Sie den HTTP-Firewall-Port 80:

    firewall-cmd --zone=public --permanent --add-service=http
    firewall-cmd --reload
    
  4. Rufen Sie die Nginx-Willkommensseite auf. Alle sollten jetzt bereit sein, von einem Remote-Host aus auf Nginx zuzugreifen. Öffnen Sie den Browser und navigieren Sie zu http://YOURHOSTNAME URL.
  5. Führen Sie eine weitere Konfiguration Ihres Hosts durch, indem Sie die Konfigurationsdatei /etc/nginx/nginx.conf und den Serverblock bearbeiten:

        server {
            listen       80 default_server;
            listen       [::]:80 default_server;
            server_name  _;
            root         /usr/share/nginx/html;
    
            # Load configuration files for the default server block.
            include /etc/nginx/default.d/*.conf;
    
            location / {
            }
    
            error_page 404 /404.html;
                location = /40x.html {
            }
    
            error_page 500 502 503 504 /50x.html;
                location = /50x.html {
            }
        }
    
  6. Der Standardpfad für den Speicherort der Webseite "Willkommen bei nginx" lautet /usr/share/nginx/html.

Aktivieren der HTTPS-SSL-Unterstützung auf Nginx und RHEL 8

  1. Bearbeiten Sie die Konfigurationsdatei /etc/nginx/nginx.conf und kommentieren Sie die gesamten Einstellungen für den TLS-aktivierten Serverblock aus:

        server {
            listen       443 ssl http2 default_server;
            listen       [::]:443 ssl http2 default_server;
            server_name  _;
            root         /usr/share/nginx/html;
    
            ssl_certificate "/etc/pki/nginx/server.crt";
            ssl_certificate_key "/etc/pki/nginx/private/server.key";
            ssl_session_cache shared:SSL:1m;
            ssl_session_timeout  10m;
            ssl_ciphers PROFILE=SYSTEM;
            ssl_prefer_server_ciphers on;
    
            # Load configuration files for the default server block.
            include /etc/nginx/default.d/*.conf;
    
            location / {
            }
    
            error_page 404 /404.html;
                location = /40x.html {
            }
    
            error_page 500 502 503 504 /50x.html;
                location = /50x.html {
            }
        }
    
  2. Erstellen Sie ein Verzeichnis, in dem das SSL-Zertifikat und der private Schlüssel für den Nginx-Server gespeichert werden:

    mkdir -p /etc/pki/nginx/private/ 
    

    Generieren Sie ein selbstsigniertes Zertifikat und einen privaten Schlüssel oder laden Sie den vorhandenen Schlüssel in die Speicherorte /etc/pki/nginx/server.crt und /etc/pki/nginx/private/server.key hoch. Das einzige erforderliche Feld beim Erstellen des selbstsignierten Zertifikats ist Common Name (z. B. Ihr Name oder der Hostname Ihres Servers):

    openssl req -newkey rsa:2048 -nodes -keyout /etc/pki/nginx/private/server.key -x509 -days 365 -out /etc/pki/nginx/server.crt
    
  3. Öffnen Sie den HTTPS-Port 443 auf dem firewalld-Firewall-Daemon:

    firewall-cmd --zone=public --permanent --add-service=https
    firewall-cmd --reload
    
  4. Laden Sie die Nginx-Konfiguration neu:

    systemctl reload nginx
    
  5. Rufen Sie die Nginx-Willkommensseite auf. Alle sollten jetzt bereit sein, von einem Remote-Host aus auf Nginx zuzugreifen. Öffnen Sie den Browser und navigieren Sie zu https://YOURHOSTNAME URL.

Verwandte Artikel: