ubuntuusers.de

Zugriff auf Raspberry neben eigentlichem Webserver

Status: Gelöst | Ubuntu-Version: Server 14.04 (Trusty Tahr)
Antworten |

xG3n1uS

Avatar von xG3n1uS

Anmeldungsdatum:
17. September 2009

Beiträge: 32

Wohnort: Wolfen

Hallo Zusammen,

ich habe mal wieder eine Verständnisfrage.

Ich nutze auf meinem Webserver (Apache 2.4.7-1ubuntu4.16) untenstehende Config für eine meiner Domains. Funktioniert auch wunderbar. Alles was nicht HTTPS ist, wird dahin gehend umgeschrieben.

So. Nun möchte ich allerdings meinen Raspberry Pi, auf welchem Pimatic läuft, im Internet unter meiner Domain erreichen. Pimatic läuft bei mir standardmäßig auf Port 80. In meiner FritzBox habe ich eine Portweiterleitung von Port 50080 auf 80 am Raspi eingerichtet, sodass ich vom Internet her erfolgreich auf öffentliche_IP:50080 zugreifen kann.

Nun die Frage: Wie muss ich untenstehende Config anpassen damit auch der Zugriff per domain.de:50080 funktioniert?

Kann ich den Port 50080 einfach in der ReWriteCond mit anfügen? Habe auch schon Anleitung gefunden wo Configs mit ProxyPass eingestellt wurden, bin dadurch leider nur mehr verwirrt wurden. Hoffe ihr könnt mir wieder ein Mal helfen.

<VirtualHost *:80>
        RewriteEngine on
        ReWriteCond %{SERVER_PORT} !^443$
        RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
ServerName domain.de
ServerAlias www.domain.de
</VirtualHost>
<IfModule mod_ssl.c>
        <VirtualHost *:443>
                ServerName domain.de
                ServerAlias www.domain.de
                ServerAdmin webmaster@domain.de

                DocumentRoot /var/www/

                SSLCertificateFile /etc/letsencrypt/live/domain.de/cert.pem
                SSLCertificateKeyFile /etc/letsencrypt/live/domain.de/privkey.pem

                RewriteEngine on
                RewriteCond %{HTTP_HOST} !^(www\.)?(.+)
                RewriteRule ^ https://%2%{REQUEST_URI} [R=301,L]

                LogLevel alert

                ErrorLog ${APACHE_LOG_DIR}/domain.de_error.log
                CustomLog ${APACHE_LOG_DIR}/domain.de_access.log combined
                CustomLog ${APACHE_LOG_DIR}/domain.de_ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

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

                SSLEngine on

                <FilesMatch "\.(cgi|shtml|phtml|php)$">
                                SSLOptions +StdEnvVars
                </FilesMatch>
                <Directory /usr/lib/cgi-bin>
                                SSLOptions +StdEnvVars
                </Directory>

                                BrowserMatch "MSIE [2-6]" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" \
                                ssl-unclean-shutdown

                SSLCertificateChainFile /etc/letsencrypt/live/domain.de/chain.pem
        </VirtualHost>
</IfModule>

mit freundlichen Grüßen

Xaver

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

xG3n1uS schrieb:

Nun die Frage: Wie muss ich untenstehende Config anpassen damit auch der Zugriff per domain.de:50080 funktioniert?

Ich verstehe das Problem nicht. Wenn deine Domain auf die IP der Fritzbox auflöst, dann sollte der Dienst schon per domain.de:50080 erreichbar sein. Technisch ist es ja nichts anderes als ein Zugriff auf IP:50080, nur dass der Name leichter zu merken ist.

xG3n1uS

(Themenstarter)
Avatar von xG3n1uS

Anmeldungsdatum:
17. September 2009

Beiträge: 32

Wohnort: Wolfen

Das Problem ist, dass sobald ich domain.de:50080 im Browser eingebe auf https://domain.de:50080 lande.

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

xG3n1uS schrieb:

Das Problem ist, dass sobald ich domain.de:50080 im Browser eingebe auf https://domain.de:50080 lande.

Ok. Aber normalerweise sollte dein Apache ja nichts damit zu tun haben. Was sagt denn

curl -I domain.de:50080

xG3n1uS

(Themenstarter)
Avatar von xG3n1uS

Anmeldungsdatum:
17. September 2009

Beiträge: 32

Wohnort: Wolfen

curl -I domain.de:50080 liefert:

HTTP/1.1 200 OK
X-Powered-By: Express
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Last-Modified: Fri, 23 Jun 2017 08:48:42 GMT
ETag: W/"1c215-15cd4239d93"
Content-Type: text/html; charset=UTF-8
Content-Length: 115221
Date: Fri, 30 Jun 2017 12:43:02 GMT
Connection: keep-alive

Wenn ich curl domain.de:50080 benutze sehe ich in der Ausgabe auch den Quelltext der Pimatic-WebGUI.

Hätte ja auch gedacht, dass der Apache nichts damit zu tun hat. Aber durch dieses "umbiegen" auf https im Browser, war das meine bisher logischste Erklärung.

Der Zugriff per Pimatic-App vom Handy aus funktioniert auch. Nur halt nicht per Browser. Der Zugriff per Browser wäre aber schon schön, da die App noch Beta ist und man keine Einstellungen in ihr vornehmen kann. Das geht nur derzeit nur über die normale Web-GUI.

Into_the_Pit Team-Icon

Ehemalige
Avatar von Into_the_Pit

Anmeldungsdatum:
25. Juni 2008

Beiträge: 9490

Wohnort: Bochum

xG3n1uS schrieb:

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

Du hast bei Dir HSTS aktiviert, was sich Dein Browser natürlich für die Domain merkt. D.h. jeder Aufruf der Domain wird nun mittels https durchgeführt. Du findest die Domains mit HSTS im Firefox unter Deinem Profil in der SiteSecurityServiceState.txt.

xG3n1uS

(Themenstarter)
Avatar von xG3n1uS

Anmeldungsdatum:
17. September 2009

Beiträge: 32

Wohnort: Wolfen

Das war der entscheidene Hinweis. Danke.

Und wieder was gelernt. Daran hatte ich gar nicht gedacht.

Ich nehme mal stark an eine Ausnahme kann man da nicht definieren oder?

Into_the_Pit Team-Icon

Ehemalige
Avatar von Into_the_Pit

Anmeldungsdatum:
25. Juni 2008

Beiträge: 9490

Wohnort: Bochum

xG3n1uS schrieb:

Ich nehme mal stark an eine Ausnahme kann man da nicht definieren oder?

Prinzipiell könnte man nun darüber diskutieren, ob es sinnvoll ist HSTS zu aktivieren, wenn Du eh einen Rewrite auf HTTPS machst. ☺

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

xG3n1uS schrieb:

Ich nehme mal stark an eine Ausnahme kann man da nicht definieren oder?

Lass einfach das "includeSubDomains" weg. Diese Einstellung macht oftmals Probleme.

xG3n1uS

(Themenstarter)
Avatar von xG3n1uS

Anmeldungsdatum:
17. September 2009

Beiträge: 32

Wohnort: Wolfen

Into_the_Pit schrieb:

xG3n1uS schrieb:

Ich nehme mal stark an eine Ausnahme kann man da nicht definieren oder?

Prinzipiell könnte man nun darüber diskutieren, ob es sinnvoll ist HSTS zu aktivieren, wenn Du eh einen Rewrite auf HTTPS machst. ☺

Bin für jederzeit bereit mich eines besseren belehren zulassen. Ich hatte diese Option mal in einem HowTo gefunden und in dem Checker von Mozilla wird HSTS auch quasi empfohlen.

misterunknown schrieb:

xG3n1uS schrieb:

Ich nehme mal stark an eine Ausnahme kann man da nicht definieren oder?

Lass einfach das "includeSubDomains" weg. Diese Einstellung macht oftmals Probleme.

Habe den Teil mal weggelassen, allerdings hat sich da jetzt nicht viel geändert. Zugriff klappt nur, wenn ich die Chronik für die Domain vorher lösche.

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

xG3n1uS schrieb:

Bin für jederzeit bereit mich eines besseren belehren zulassen. Ich hatte diese Option mal in einem HowTo gefunden und in dem Checker von Mozilla wird HSTS auch quasi empfohlen.

Man kann den Header ruhig setzen, er hat auch einige Vorteile, beispielsweise, dass die Browser dann direkt HTTPS sprechen und nicht erst umgeleitet werden müssen. Mit "includeSubDomains" hatte ich aber schon haufenweise Probleme, von daher mache ich das jetzt bei jedem VHost einzeln, je nachdem ob ich es brauche oder nicht.

misterunknown schrieb: Habe den Teil mal weggelassen, allerdings hat sich da jetzt nicht viel geändert. Zugriff klappt nur, wenn ich die Chronik für die Domain vorher lösche.

Hm, eventuell liegt es daran, dass es ja die gleiche Domain ist, nur ein anderer Port. Du könntest eine Subdomain einrichten, über den du den Pi ansprichst:

sub.domain.de:50080

xG3n1uS

(Themenstarter)
Avatar von xG3n1uS

Anmeldungsdatum:
17. September 2009

Beiträge: 32

Wohnort: Wolfen

Ja mit Subdomain funktioniert das. Super! 👍 Dankeschön.

Antworten |