DNS-Server als Workaround für fehlendes NAT Loopback und CALDAV

Status
Für weitere Antworten geschlossen.

dsmynas

Benutzer
Mitglied seit
11. Feb 2014
Beiträge
74
Punkte für Reaktionen
0
Punkte
12
Ich meinte nicht mit htaccess, sondern ein Weiterleiten durch Virtuelle Hosts aufbauend auf der Webstation Deiner Synology.

Ich gehe jetzt mal davon aus, dass Du etwas in der Materie steckst ... wenn nicht, muss ich folgende Erklärung etwas einfacher stricken.

Gehen wir mal davon aus, dass Du ein Gerät hast dessen Dienste Du per IP und Port aus dem lokalen Netz ansprichst (nehmen wir mal die IP 10.0.10.1 und den Port 4711 als Beispiel), zusätzlich möchten wir noch den Verkehr zu zu diesem Gerät, bzw. bis zur DS mit einem SSL Zertifikat verschlüsseln, obwohl das Gerät keine Zertifikate unterstützt.

Von außen kannst Du per URL auf Deine DiskStation zugreifen (nehmen wir mal https://diskstation.mein-netz.de als Beispiel).

Du möchtest aber von extern sowie von intern mit https://geraet.mein-netz.de auf das Gerät mit der Adresse http://10.0.10.1:4711 zugreifen.

Hierzu musst Du erst mal sicherstellen, dass der DNS Server auf Deiner DiskStation den Namen geraet.mein-netz.de auch auf die IP 10.0.10.1 auflösen kann. Außerdem musst Du eine weitere Subdomain zu Deiner Domain mein-netz.de, mit dem Namen geraet.mein.netz.de und der öffentlichen IP Deines Anschlusses, erstellen. Dein Router leitet den http und den https Verkehr an Deine DS weiter (Port 80 und Port 443).

Nun musst Du zwei Virtual Host Einträge in die Konfigurationsdateien Deiner Webstation hinzufügen. Dazu melde Dich als root per ssh an Deiner DS an (root hat übrigens das selbe Passwort wie der Admin).

Öffne und bearbeite mit folgendem Befehl die Datei zuständig für die http-Hosts:
Code:
vi /etc/httpd/sites-enabled-user/httpd-vhost.conf-user
und füge folgende Konfiguration hinzu:
Code:
<VirtualHost *:80>
        [B]ServerName geraet.mein-netz.de[/B]
        ServerAdmin postmaster@mein-netz.de

        [B]Redirect permanent / https://geraet.mein-netz.de/[/B]
            TransferLog /var/log/httpd/transfer.geraet.mein-netz.de.log
</VirtualHost>
Diese Zeilen leiten alle Anfrage an http://geraet.mein-netz.de sofort an https://geraet.mein-netz.de weiter.

Damit dies auch funktioniert müssen wir noch die Datei bearbeiten die für die https-Hosts zuständig ist und zwar mit folgendem Befehl:
Code:
vi /etc/httpd/sites-enabled-user/httpd-ssl-vhost.conf-user
um dann den folgenden Eintrag vorzunehmen:
Code:
<VirtualHost *:443>
        [B]ServerName geraet.mein-netz.de[/B]
        ServerAdmin postmaster@mein-netz.de

        ErrorDocument 403 "/webdefault/sample.php?status=403"
        ErrorDocument 404 "/webdefault/sample.php?status=404"
        ErrorDocument 500 "/webdefault/sample.php?status=500"

        Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"

        [B]SSLProxyEngine on[/B]
        [B]SSLEngine on[/B]
        [B]SSLProtocol all -SSLv2 -SSLv3[/B]
        [B]SSLCompression Off[/B]
        [B]SSLHonorCipherOrder on[/B]
        [B]SSLCipherSuite "EECDH+AESGCM EDH+AESGCM EECDH -RC4 EDH -CAMELLIA -SEED !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"[/B]
        [B]SSLCertificateFile /usr/syno/etc/ssl/ssl.crt/geraet.mein-netz.de.crt[/B]
        [B]SSLCertificateKeyFile /usr/syno/etc/ssl/ssl.key/geraet.mein-netz.de.key[/B]
        [B]SSLCertificateChainFile /usr/syno/etc/ssl/ssl.crt/server.ca.pem[/B]

       [B] RequestHeader set "X-Forwarded-Proto" "https"[/B]
        [B]SetEnv proxy-nokeepalive 1[/B]
          [B]ProxyPass / http://10.0.10.1:4711/[/B]
          [B]ProxyPassReverse / http://10.0.10.1:4711/[/B]
        [B]ProxyErrorOverride off[/B]
             TransferLog /var/log/httpd/transfer.geraet.mein-netz.de.log
        #Fix IE problem (httpapache proxy dav error 408/409)
        SetEnv proxy-nokeepalive 1
</VirtualHost>

Hier sind schon einige Sicherheitsfunktionen eingebaut. Die dick markierten Bereiche sind aber vorrangig wichtig. Einmal der Zertifikate-Bereich und der Proxy-Bereich.

Danach den Webserver neu starten.

Mit dieser Vorgehensweise kann man übrigens sehr viele nette Sachen basteln ;-)

Gruß,

dsmynas

[edit] Das Zertifikat geraet.mein-netz.de.crt und den dazugehörigen Schlüssel geraet.mein-netz.de.key musst Du natürlich erst noch erstellen und diese Dateien in den entsprechenden Ordnern auf der DS hinzufügen. Die Datei mit der Zertifikatskette server.ca.pem erhältst Du von Deinem Anbieter wo Du Zertifikate erstellst. [/edit]
 
Zuletzt bearbeitet:

ChiliApple

Benutzer
Mitglied seit
04. Dez 2013
Beiträge
240
Punkte für Reaktionen
7
Punkte
24
hallo,

danke für deine Mühe und die klasse Anleitung, sollte ich zusammen bringen.
Ich denke aber ich sollte noch mal genau erklären.

ich habe die Domain "cloud.meinedomain.de" mit dieser erreichte ich vor Routerwechsel extern und intern meine DS und all meine Geräte mit den verschiedenen Ports … unter einer Domain mit Angabe der Ports.
zb: cloud.meinedomain.de:5001 die DS; cloud.meinedomain.de:8888 den Raspberry; cloud.meinedomain.de:2222 die VUDuo2 usw.

in deiner Anleitung wenn ich sie richtig gelesen habe, schreibst du aber von 2 verscheiden Domains, das würde ja schon allein mit DNS klappen oder?
Wenn es machbar wäre würde ich gern nur diese eine Domain (so wie vorher) verwenden …

Zertifikate verwende ich schon muss ich den Teil trotzdem so eintragen?

Danke!
 
Zuletzt bearbeitet:

dsmynas

Benutzer
Mitglied seit
11. Feb 2014
Beiträge
74
Punkte für Reaktionen
0
Punkte
12
Wenn Du auf die Angabe der Ports hinter der URL verzichten willst, dann funktioniert das nur über den beschriebenen Weg. DNS ist eine Namensauflösung, welche lediglich die IP berücksichtigt und keinerlei Differenzierung bei den Ports mit sich bringt. Ich hatte Dich so verstanden, dass Du auf die Portangabe verzichten willst, weshalb mein Vorschlag war mehrere Subdomains zu nutzen, z.B. wie folgt:

https://cloud.meinedomain.de -> zeigt über den DNS auf die IP deiner DiskStation -> die Webstation leitet diese dann an den internen Port weiter (https://192.168.1.x:5001)
https://rspberry.meinedomain.de -> zeigt über den DNS auf die IP deiner DiskStation -> die Webstation leitet diese dann an Deinen RaspberryPi weiter (http://192.168.1.y:8888)
https://vuduo.meinedomain.de -> zeigt über den DNS auf die IP deiner DiskStation -> die Webstation leitet diese dann an Deine VUDuo2 weiter (http://192.168.1.z:2222)

Gruß,

dsmynas
 
Zuletzt bearbeitet:

ChiliApple

Benutzer
Mitglied seit
04. Dez 2013
Beiträge
240
Punkte für Reaktionen
7
Punkte
24
nein da hab ich mich wohl unklar ausgedrückt, obwohl das kann ich auch gut gebrauchen, an der DS stört mich der 5001r eh immer :)


ich möchte einfach nur unter der domain: https://cloud.meinedomain.de (es geht nur um intern, extern funktioniert es ja eh noch) mit Angabe der Ports auf die verschiedenen Geräte kommen.

Der DNS Teil funktioniert ja klasse (aber eben nur mit der DS)
 

dsmynas

Benutzer
Mitglied seit
11. Feb 2014
Beiträge
74
Punkte für Reaktionen
0
Punkte
12
Das wird so nicht gehen. Du kannst zwar mit mehreren Subdomains auf ein Ziel zugreifen, aber nicht mit einer Subdomain auf mehrere Ziele. Woher soll der DNS denn wissen, wohin Du möchtest? Du könntest eventuell mit einem portbasierten Proxy in der Webstation arbeiten, aber da müsste ich mich auch noch mal durchlesen ob, und wenn ja wie es geht.

Gruß,

dsmynas

[edit] Der Nachteil wäre auch, dass dann die entsprechenden Ports auch auf der DS und dem Router geöffnet werden müssen um sie durchzuschleifen. Sonnst bräuchtest Du eben nur den 80er und den 443er für diese Geschichte. [/edit]
 

ChiliApple

Benutzer
Mitglied seit
04. Dez 2013
Beiträge
240
Punkte für Reaktionen
7
Punkte
24
ja das mit den Ports ist klasse bei deiner Lösung, hatte ich aber bisher auch nicht so (werde aber darüber nachdenken, wäre saubere Lösung)

Ich bedanke mich noch mal für deine Mühe, und toll das es so hilfsbereite Menschen wie dich gibt! ich DANKE dir!

Grüße, CA
 

dsmynas

Benutzer
Mitglied seit
11. Feb 2014
Beiträge
74
Punkte für Reaktionen
0
Punkte
12
Kein Ding ... sollten meine Ausführungen auch nur ansatzweise hilfreich gewesen sein, bin ich schon vollkommen zufrieden. Viel von meinem Wissen habe ich aus diversen Foren und ich freue mich jedes Mal, wenn ich ab und zu einen kleinen Teil zurückgeben kann. Immerhin sind Foren dafür da. ;-)

Gruß,

dsmynas
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat