IT-Knowledgebase
de Software Webserver nginx

NGINX Webserver installieren

Der NGINX Webserver ist wohl der bekannteste und weit verbreiteste Webserver/Reverse Proxy der Welt. NGINX gibt es in der OpenSource Version, welche Kostenlos ist und eine Kostenpflichtige Version namens NGINX Plus, welche mit besonderen Modulen und Premium Support wirbt. Wir installieren hier die kostenlose Version. NGINX ist in den Standardpaketen von Ubuntu bereits enthalten. Wenn man allerdings möchte, kann man auch die Offiziellen Quellen von nginx direkt einbinden und nutzen um so die aktuellste Version von nginx schneller zur Verfügung zu haben.

Um die Pakete einzubinden brauchen wir zuerst einmal die Voraussetzungen:

1sudo apt install curl gnupg2 ca-certificates lsb-release debian-archive-keyring

Danach können wir die Quellen einbinden.

1curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
2    | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

Um nun zu prüfen ob die Installation erfolgreich ist, lassen wir uns mittels apt eine Liste ausgeben wo die Version und die Quelle drin steht.

1apt-cache madison nginx

Das liefert nun folgende Ausgabe:

 1nginx | 1.26.2-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx arm64 Packages
 2nginx | 1.26.1-2~jammy | https://nginx.org/packages/ubuntu jammy/nginx arm64 Packages
 3nginx | 1.26.1-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx arm64 Packages
 4nginx | 1.26.0-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx arm64 Packages
 5nginx | 1.24.0-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx arm64 Packages
 6nginx | 1.22.1-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx arm64 Packages
 7nginx | 1.22.0-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx arm64 Packages
 8nginx | 1.20.2-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx arm64 Packages
 9nginx | 1.18.0-6ubuntu14.5 | http://ports.ubuntu.com/ubuntu-ports jammy-updates/main arm64 Packages
10nginx | 1.18.0-6ubuntu14.5 | http://ports.ubuntu.com/ubuntu-ports jammy-security/main arm64 Packages
11nginx | 1.18.0-6ubuntu14 | http://ports.ubuntu.com/ubuntu-ports jammy/main arm64 Packages
12nginx | 1.20.2-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx Sources
13nginx | 1.22.0-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx Sources
14nginx | 1.22.1-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx Sources
15nginx | 1.24.0-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx Sources
16nginx | 1.26.0-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx Sources
17nginx | 1.26.1-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx Sources
18nginx | 1.26.1-2~jammy | https://nginx.org/packages/ubuntu jammy/nginx Sources
19nginx | 1.26.2-1~jammy | https://nginx.org/packages/ubuntu jammy/nginx Sources

Hier können wir sehen, dass deutlich mehr und auch aktuellere Versionen von nginx.org kommen. Die ofiziellen Paketquellen heißen ports.ubuntu.com.

Installation von nginx

Um nginx letzlich zu installieren reicht lediglich ein

1sudo apt install nginx

nginx wird installiert und je nach Einstellung ggf. auch sofort gestartet

Den Status auflisten ob es gestartet ist können wir mittels:

 1➜  ~ service nginx status
 2
 3# welches folgende Ausgabe liefert:
 4● nginx.service - nginx - high performance web server
 5     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
 6     Active: active (running) since Tue 2024-10-08 11:16:16 CEST; 1 week 6 days ago
 7       Docs: https://nginx.org/en/docs/
 8    Process: 95609 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
 9   Main PID: 95610 (nginx)
10      Tasks: 3 (limit: 2184)
11     Memory: 3.0M
12        CPU: 2.698s
13     CGroup: /system.slice/nginx.service
14             ├─95610 "nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf"
15             ├─95611 "nginx: worker process" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""
16             └─95612 "nginx: worker process" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""
17
18Oct 08 11:16:16 ubuntu systemd[1]: Starting nginx - high performance web server...
19Oct 08 11:16:16 ubuntu systemd[1]: Started nginx - high performance web server.

Sollte es nicht gestart sein, können wir den Webserver mittels folgendem Befehl einfach starten.

1sudo service nginx start

Zu erreichen ist unser Server nun normalerweise unter seiner IP-Adresse und Port 80 (http).

Die Seite sollte nun wie folgt aussehen:

Beispiel Seite von NGINX