Folgende Punkte muss man durchführen um über den Port 443 auf eine bestimmte Domäne (z.B. nginxconf.domain.de) auf einen anderen Port über nginx umzuleiten. Weiterhin wird das optionale certbot Zertfikat auf der Seite ausgerollte.
Voraussetzung ist das alle nötigen Tools installiert sind, das ist im Moment nicht Teil meiner Anleitung und wird bei viel Motivation nachgereicht.
beispielanwendung.domain.de zeigt auf den Server127.0.0.1:13060nano /etc/nginx/sites-available/beispielanwendung
server {
server_name beispielanwendung.domain.de;
location / {
proxy_pass http://localhost:13060;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Datei speichern und schließen.
nginx -t
ln -s /etc/nginx/sites-available/beispielanwendung /etc/nginx/sites-enabled
ls /etc/nginx/sites-enabled
systemctl restart nginx
certbot --nginx -d beispielanwendung.domain.de
certbot passt die nginx-Konfiguration automatisch an und aktiviert HTTPS auf Port 443.
nginx -t
systemctl reload nginx
http://localhost:13060https://beispielanwendung.domain.deHinweis: SMTP (Port 25) ist kein HTTP/HTTPS und kann nicht über einen normalen
server {}‑Block verarbeitet werden.
Dafür wird der nginx stream‑Block benötigt (TCP‑Proxy).
Alternativ gezielt nach --with-stream suchen:
nginx -V 2>&1 | grep -- --with-stream
✅ Ausgabe enthält --with-stream oder --with-stream=dynamic
Hier ist aber wichtig zu beachten das
❌ Keine Ausgabe → stream‑Modul ist nicht vorhanden
apt update
apt install nginx-full
Diese Variante enthält das stream‑Modul standardmäßig.
apt install libnginx-mod-stream
Danach Modul aktivieren (falls nicht automatisch geladen):
Beim automatisch laden wird das Modul in
/etc/nginx/modules-enabled/50-mod-stream.conf
geschrieben
Aber erst ausprobieren ob es direkt nach der Installation funktioniert
Dies hier wirklich nur Optional durchführen!
In/etc/nginx/nginx.confganz oben:
load_module modules/ngx_stream_module.so;
nginx -t
Beispiel: Weiterleitung von Port 25 → Port 2525 auf dem gleichen Server.
nginx-full oder entsprechendes Paket)127.0.0.1:2525/etc/nginx/stream.d/smtp.conf)stream {
upstream smtp_backend {
server 127.0.0.1:2525;
}
server {
listen 25;
proxy_pass smtp_backend;
proxy_timeout 1h;
proxy_connect_timeout 30s;
}
}
In /etc/nginx/nginx.conf:
include /etc/nginx/stream.d/*.conf;
nginx -t
systemctl reload nginx
Beispiel: SMTP‑Dienst direkt auf Port 25 verfügbar machen:
stream {
server {
listen 25;
proxy_pass 127.0.0.1:25;
}
}