Wer Pterodactyl nutzt und nebenbei Software-Dienste über dieses Webinterface betreibt, wird gemerkt haben, dass er von einem Port abhängig ist.
Damit wir auf Pterodactyl einen Dienst ohne Port im Browser aufrufen können, benötigen wir einen NGINX Reverse Proxy eintrag auf dem WINGS Server.
Wir beginnen mit der Installation von NGINX.
Für diese Anleitung benötigen wir einen vollen Root Zugang auf den Wings Server. Es wird im übrigen nicht empfohlen den Panel Server und Wings Server auf einem Server zu betreiben. Nutzt am besten für das Panel einen kleinen VPS und für den Wings-Server einen Dedicated Rootserver.
Nach dem Du dich als ROOT eingeloggt hast, musst Du den NGINX Server installieren. Der NGINX Server soll nicht im Docker laufen!
apt install nginx
Nach der installation, benötigen wir noch den Certbot für das Lets-Encrypt Zertifikat.
apt install certbot
Nach der installation von Certbot muss ein Reverse Proxy eintrag in die default von NGINX eingetragen werden. Hierzu wechseln wir in das Verzeichnis
cd /etc/nginx/sites-available
Bearbeiten die Datei »default« mit dem Befehl
nano default
In die Datei »default« fügen wir den Eintrag für Deinen Dienst ein
server {
listen 80;
server_name Deine.Domain.ch;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name Deine.Domain.ch;
ssl_certificate /etc/letsencrypt/live/Deine.Domain.ch/cert.pem;
ssl_certificate_key /etc/letsencrypt/live/Deine.Domain.ch/privkey.pem;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/access.log;
location / {
# Fix the “It appears that your reverse proxy set up is broken" error.
proxy_pass http://Deine.Domain.ch:PORT;
proxy_read_timeout 90;
proxy_redirect http://Deine.Domain.ch:PORT/ Deine.Domain.ch/;
}
}
Bitte bedenke, diese Datei für Deinen Service anzupassen. Das heisst Deine gewählt Domain + Port muss in der Datei angepasst werden. Ebenfalls achte auf die Verweisung der SSL Lizenzen. In meinem Fall habe ich Lets Encrypt genutzt und den Eintrag direkt auf das Verzeichnis gelegt.
Hast Du den Eintrag richtig umgeschrieben und gespeichert, starten wir doch am besten den NGINX Server neu.
systemctl restart nginx
Vergewissere Dich, dass der NGINX Server ohne Fehler startet. Prüfe es mit dem Befehl
nginx -t
In meinem Fall wird folgendes ausgegeben.
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Hast Du diese Schritte befolgt, kümmern wir uns noch abschliessend noch um das SSL Zertifikat.
Stoppe hier für als erstes die Dienste welchen den Port 80 verwenden. In unserem Fall ist dies der NGINX Server.
Server stoppen mit dem Befehl
systemctl stop nginx
Jetzt erstellen wir das Zertifikat für Deine Domain
Wir tippen im Terminal folgenden Befehl ein
certbot certonly
Dann sollte es bei Dir dann so aussehen
Wenn Du Dein Zertifikat erstellt hast, kannst Du den NGINX Server wieder starten mit dem Befehl:
systemctl start nginx
Ebenfalls wieder kontrollieren ob irgendwelche Fehlermeldungen auftauchen mit dem Befehl:
nginx -t
Hat alles geklappt und wurde richtig konfiguriert, kannst Du nun Deinen Pterodactyl Service normal über Deine Domain aufrufen und benötigst am Ende der URL kein :PORT eintippen. Ebenfalls sollte Deine Domain geschützt sein durch ein SSL Zertifikat.
- Me Time (2022) - 3. Februar 2025
- Suddenly – Überleben im Eis (2023) - 3. Februar 2025
- Fast Charlie (2023) - 3. Februar 2025