Nginx Webproxy für HTTPS: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 38: Zeile 38:
 
== Nginx neu laden ==
 
== Nginx neu laden ==
 
* sudo systemctl reload nginx
 
* sudo systemctl reload nginx
 
== Zugriffsbeschränkung nach IP ==
 
* Nur bestimmten IPs Zugriff gewähren:
 
<pre>
 
server {
 
    listen 443 ssl;
 
    server_name revproxy.it113.int;
 
 
    # TLS/SSL-Zertifikate
 
    ssl_certificate /etc/nginx/ssl/revproxy.it113.int.crt;
 
    ssl_certificate_key /etc/nginx/ssl/revproxy.it113.int.key;
 
 
    location / {
 
        allow 192.168.1.100;
 
        deny all;
 
        proxy_pass https://mail.it113.int;
 
        proxy_set_header Host $host;
 
        proxy_set_header X-Real-IP $remote_addr;
 
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 
    }
 
}
 
</pre>
 
  
 
== Fazit ==
 
== Fazit ==

Version vom 27. März 2025, 20:03 Uhr

Webproxy mit Nginx für HTTP und HTTPS

Einführung

  • Nginx wird als Reverse Proxy für den internen Mail-Server mail.it113.int unter dem Namen revproxy.it113.int eingesetzt.
  • Alle Verbindungen werden über HTTPS gesichert, um eine sichere Kommunikation zu gewährleisten.

SElinux

Um Nginx zu erlauben, auf Netzwerkressourcen zuzugreifen muss man dies SELinux mitteilen-
  • sudo setsebool -P httpd_can_network_connect 1
  • sudo systemctl reload nginx
Bei weiteren Verstössen testen
  • sudo ausearch -m avc -ts recent


Nginx-Konfiguration

  • vi /etc/nginx/conf.d/revproxy.it113.int.conf
server {
    listen 443 ssl;
    server_name revproxy.it113.int;

    # TLS/SSL-Zertifikate
    ssl_certificate /etc/nginx/ssl/revproxy.it113.int.crt;
    ssl_certificate_key /etc/nginx/ssl/revproxy.it113.int.key;

    # Weiterleitung der Anfragen an den internen Mail-Server
    location / {
        proxy_pass https://mail.it113.int;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Nginx neu laden

  • sudo systemctl reload nginx

Fazit

  • Nginx wird als Reverse Proxy für den internen Mail-Server mail.it113.int eingesetzt.
  • Alle Verbindungen werden durch TLS/SSL abgesichert.
  • Optional kann der Zugriff über IP-Beschränkungen gesteuert werden.