nginx und certbot mit dem Ziel reverse-proxy

Status
Not open for further replies.

pakka

Dabbler
Joined
Jan 25, 2018
Messages
48
Hallo zusammen,
ich möchte in Zukunft mein Smarthome-NG System in einer VM betreiben (bzw. läuft schon!) und dann entsprechend sicher von außen erreichbar machen und hinter einem reverse-proxy laufen lassen.
Dabei versuche ich mich hier an der Anleitung von www.smarthomeng.de/user/visualisierung/reverse_proxy.html [1] entlangzuhangeln, aber im Beispiel wird es auf einem raspy installiert, und im Freenas iocage ist es ja nun eine etwas andere Geschichte. Anscheinend gelingt mir diese Transferleistung noch nicht, bzw. habe ich noch nicht die Voraussetzungen, daher mal gebündelt:

- Ich richte in der Fritzbox den dyndns Dienst meiner Domain ein. check.
- Ich brauche eine Portweiterleitung von 80->80 und 443>443 zu dem Jail mit nginx, damit dieser die Anfragen weiterleiten/blocken kann. check.

Was habe ich bisher im Jail getan:

- nginx per pkg install nginx installiert
- certbot per pkg install py27-certbot (https://certbot.eff.org/lets-encrypt/freebsd-nginx.html [2])

Für Certbot habe ich mich versucht an [2], https://www.tecmint.com/install-lets-encrypt-ssl-for-nginx-on-freebsd/ [3] und https://forums.freenas.org/index.ph...-to-reverse-proxy-your-jails-w-certbot.49876/ [4] zu orientieren, aber es wird immer etwas anders gehandelt bzw. landen die Zertifikate immer in unterschiedlichen Ordnerstrukturen (wohin mit den Zertifikaten, conf-Dateien), webroot/standalone, ...
Nach [3] landen die Zertifikate in /usr/local/etc/letsencrypt/live/www.yourdomain.com/, das passt bei mir auch.

In der Anleitung von smarthomeNG geht es damit weiter, dass die Dateien /etc/nginx/snippets/letsencrypt.conf und
/etc/nginx/sites-available/default bearbeitet werden sollen, die gibt´s aber auch nicht, oder zumindest nicht da... Die Zertifikate werden dann in /var/www/letsencrypt abgelegt. Kann mir da einer sagen, wie es analog im Jail zu finden ist?

merci!
 

pakka

Dabbler
Joined
Jan 25, 2018
Messages
48
So, ich versuche mal zu rekonstruieren, wie ich schließlich weitergekommen bin und hangel mich an den Punkten der smhn-Anleitung entlang:
- usr/local/etc/nginx/snippets/letsencrypt.conf inkl. Pfad angelegt
- die Zeilen für /etc/nginx/sites-available/default einfach mit in die nginx.config geschrieben an entsprechender Stelle.
- als root Pfad habe ich /usr/local/www/letsencrypt angegeben
- Die Zertifikate habe ich dann, aber kann man ja wohl beliebig wählen, unter usr/local/etc/letsencrypt abgelegt.
- die nginx.conf ist unter /usr/local/etc/nginx zu finden
- Pfad /usr/local/etc/nginx/conf.d ist noch zu erstellen
- reloaden mit service nginx reload

Zum Passwortfile generieren:
Ich glaube ich habe es schließlich mit dem p5-Apache-Htpasswd Package gemacht, das man über Freebsd installieren kann.

die openssl.cnf liegt unter /etc/ssl wie angegeben.

Der Rest lief dann - wenn man sich nicht ständig irgendwo vertippt - wie geschmiert!
cheers!
 

pakka

Dabbler
Joined
Jan 25, 2018
Messages
48
Ps. ich habe noch ein crontab job hinzugefügt, der mit dem Befehl certbot renew täglich prüft, ggf. ein neues Zertifikat erstellt und danach den Server reloaded.
 
Status
Not open for further replies.
Top