Apache soll nur auf DNS-Namen reagieren

Alles, was den Apache betrifft, kann hier besprochen werden.

Apache soll nur auf DNS-Namen reagieren

Postby RalphT » 15. November 2019 12:51

Hallo,

ich habe hier intern auf debian10 einen Apache laufen. Ich habe eine Frage dazu:

Kann man das so einstellen, dass der Apache nur die Webseite anzeigt, wenn der Nutzer als URL einen DNS-Namen verwendet?
Dagegen soll eine Eingabe der richtigen IP-Adresse in der Browseradresszeile nicht zur Webseite führen.
RalphT
 
Posts: 14
Joined: 25. June 2006 08:28

Re: Apache soll nur auf DNS-Namen reagieren

Postby Altrea » 15. November 2019 13:11

Du könntest name based virtual hosts verwenden. Als zweiten vhost definierst du die tatsächliche Webseite mit dem ServerName, als ersten vhost (der auch immer matcht wenn kein anderer zutreffend ist) ereiederdt du mit einem HTTP Error code.
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11934
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: Apache soll nur auf DNS-Namen reagieren

Postby RalphT » 15. November 2019 13:22

Danke dir für die Antwort. Ok, das kann ich ja mal ausprobieren.

Ich will mal eben schreiben, warum mir das eigentlich geht:

Der Apache hat für SSL ein Zertifikat. Gehen die Nutzer mit der IP-Adresse drauf, gibts natürlich eine Warnmeldung. Das wollte ich irgendwie elegant umgehen.
RalphT
 
Posts: 14
Joined: 25. June 2006 08:28

Re: Apache soll nur auf DNS-Namen reagieren

Postby Altrea » 15. November 2019 13:40

Dafür könntest du eine feste Weiterleitung auf die richtige Adresse machen, das wäre auch deutlich Benutzerfreundlicher.
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11934
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: Apache soll nur auf DNS-Namen reagieren

Postby RalphT » 15. November 2019 13:45

Altrea wrote:Dafür könntest du eine feste Weiterleitung auf die richtige Adresse machen, das wäre auch deutlich Benutzerfreundlicher.


Meinst du das in etwa mit redirect in der conf?
RalphT
 
Posts: 14
Joined: 25. June 2006 08:28

Re: Apache soll nur auf DNS-Namen reagieren

Postby Nobbie » 15. November 2019 15:07

Das geht leider nicht (Huhn und Ei Problem). Wenn Du kein Zertifikat für die IP besitzt (das könnte man ja auch machen), kannst Du die Warnmeldung nicht umgehen. Wenn Du einen VirtualHost für den Port 443 und die IP anlegst, um dort dann einen Redirect hineinzuschreiben, vermisst Apache ein gültiges Zertifikat. Der Redirect muss ja in irgendeinem Kontext geschehen und der Anwender hat durch die Angabe https://xxx.xxx.xxx.xxx vorgegeben, dass auf Port 443 mit SSL zugegriffen wird. Da hilft defnitiv nichts - außer, ein Zertifikat zu besitzen für diesen Kontext. Sonst ist Apache (und der Browser) gezwungen, auf http: zu wecheln und das wird entsprechend quittiert.
Nobbie
 
Posts: 13176
Joined: 09. March 2008 13:04

Re: Apache soll nur auf DNS-Namen reagieren

Postby RalphT » 18. November 2019 12:42

So, ich denke ich habe eine gute Lösung finden können.

Ich habe in der 000-default.conf einen Redirect eingebaut:

Redirect / https://www.meine-firma.de/

Weiterhin werden alle Anfragen von http auf https umgeleitet:
Dazu hatte ich die htaccess um diese Zeilen erweitert:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Zuerst lief das nur beim Firefox, der IE wollte nicht. Der zeigte bei der URL-Eingabe der IP immer eine Zertifikatswarnung an und wurde auch nicht zum FQDN umgeleitet.
Hier half in zwei Fällen den Cache vom IE leeren.

Jetzt läuft es sehr gut. Gebe ich http://192.168.0.10 oder http://www.meine-firma.de ein, werden jedesmal die Anfragen zu
https://www.meine-firma.de umgeleitet.
RalphT
 
Posts: 14
Joined: 25. June 2006 08:28

Re: Apache soll nur auf DNS-Namen reagieren

Postby Nobbie » 18. November 2019 16:35

RalphT wrote:Jetzt läuft es sehr gut. Gebe ich http://192.168.0.10 oder http://www.meine-firma.de ein, werden jedesmal die Anfragen zu
https://www.meine-firma.de umgeleitet.


Das ist ja auch nicht das Problem. Was passiert denn, wenn Du https://192.168.0.10 eingibst? Das ist doch der Fehlerfall, den man nicht abfangen kann.
Nobbie
 
Posts: 13176
Joined: 09. March 2008 13:04

Re: Apache soll nur auf DNS-Namen reagieren

Postby RalphT » 19. November 2019 14:37

Ja hast Recht. Diese Variante hatte ich vergessen.

Ich habe dem Apache mal eben testweise ein weiteres Zertifikat untergeschoben.
Jetzt gibt es zumindest beim Aufruf über die IP-Adresse keine Zertifikatswarnung mehr.
RalphT
 
Posts: 14
Joined: 25. June 2006 08:28

Re: Apache soll nur auf DNS-Namen reagieren

Postby RalphT » 20. November 2019 13:13

Das Thema hat mir ja keine Ruhe gelassen. Jetzt habe ich aber eine Lösung.

Ich habe in diesem Fall 4 verschiedene CONFs erzeugt.

- www.meine-firma.de80.conf
- www.meine-firma.de443.conf
- ip-adresse80.conf
- ip-adresse443.conf

In den beiden CONFs der IP-Adresse steht unter ServerName 192.168.0.1
In den beiden CONFs der www-Angabe steht unter ServerName www.meine-firma.de

In den CONFs der IP-Adresse ist das so eingestellt, dass eine Anwort von einer anderen index.html kommt. Dort wird der
Nutzer darauf hingwiesen, dass er die Seite falsch aufgerufen hat. In der index.html läuft dann nach einer kurzen Zeit
ein redirekt zur richtigen Adresse.

Jetzt hatte ich folgende Möglichkeiten ausprobiert:

- https://www.meine-firma.de (alles ok, keine Maßnahmen)
- http://www.meine-firma.de (direkt Umleitung zur https-Seite über Redirect in der CONF)
- http://192.168.0.1 (Aufruf einer anderen html-Seite und dann ein redirekt zur richtigen Seite)
- https://192.168.0.1 (wie oben)

Ich könnte ja noch ein Zertifikat für die IP-Adresse dem Apache mitgeben. Das habe ich jetzt nicht gemacht,
da der Nutzer gleich sehen soll, dass hier etwas nicht stimmt.
RalphT
 
Posts: 14
Joined: 25. June 2006 08:28


Return to Apache

Who is online

Users browsing this forum: No registered users and 411 guests