Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo,

ich möchte das ich eine Website, zum Beispiel: www.test.de, von überall (also Internet) erreichen kann, aber Subdomains, zum Beispiel subdomain1.test.de, nur von einer bestimmten IP erreichen kann.

Genau genommen sollen subdomains nur über den localhost erreichbar sein, da ich sie nur mit aktiver VPN Connection erreichen dürfen möchte.

Wie kann ich das am besten und am sichersten realisieren?

 

Ich verwende Apache auf einem Debian

Nur Gedanken eines Laien:

Du kannst dir mal die Listen-Direktive von Apache anschauen. Damit kannst du Netzwerkinterfaces an Ports koppeln. Mit Listen-Direktiven und VirtualHosts kannst du dann recht einfach subdomains auf Anfragen bestimmter Netzadressen beschränken. Nur ob und wie sicher das ist, kann ich dir nicht sagen. Das hängt sicherlich auch davon ab, wie gehärtet dein System allgemein ist.

Fraglich ob es nicht einfacher und sicherer wäre, die Subdomains auf einem seperaten Host laufen zu lassen der von außen allgemein abgeschottet ist und gar nicht aus dem öffentlichen Netz erreichbar ist.

Genau genommen sollen subdomains nur über den localhost erreichbar sein, da ich sie nur mit aktiver VPN Connection erreichen dürfen möchte.

Genau genommen wäre der localhost der Webserver. Wenn du willst das der Webserver sich nur selber erreichen kann, block einfach die Ports in der Firewall die du für die Subdomains konfiguriert hast. Nur ansprechen über VPN lässt der sich dann auch nicht mehr.

  • Autor

Hi @halycon,

vor 6 Minuten schrieb halcyon:

die Subdomains auf einem seperaten Host laufen zu lassen

Das ist leider nicht möglich da mir nur der eine Server zur Verfügung steht.

 

vor 8 Minuten schrieb halcyon:

Wenn du willst das der Webserver sich nur selber erreichen kann, block einfach die Ports in der Firewall die du für die Subdomains konfiguriert hast.

Dann würde ich allerdings nichtmehr auf www.test.de kommen.

Ich möchte ja das www.test.de von außen erreichbar ist, und alle anderen Subdomains wie subdomain.test.de nur vom Server selbst erreicht werden können.

 

EDIT ZUM THEMA:

Das ganze so das praktisch ALLE Domains zunächst nur intern, also vom Webserver selbst, erreichbar sind, und dann per Whitelisting erlaubt werden muss welche Subdomain/Domain von außen erreichbar sein soll

>> Dann würde ich allerdings nichtmehr auf www.test.de kommen.

Dann lauschen deine Domains alle auf dem gleichen Port. Wie gesagt, du kannst deine subdomains per virtualhost konfiguration auf andere ports lauschen lassen und diese dann mit listen-direktiven konkrete netzwerkadressen koppeln. 

Wenn du im ersten schritt willst das deine hauptdomain erreichbar ist und die subdomains nicht, kannst du deine hauptdomain auf 8080 lauschen lassen, deine subdomain auf 81 etc... dann machst du Port 81 zu und dann ist die subdomain auch nicht mehr zu erreichen, deine hauptdomain hingegen schon.

  • Autor

@halcyon: Jetzt verstehe ich was du meinst. Stimmt, das ist ne Möglichkeit! Dank dir! :)

@Listener: Schau ich mir mal an, vielen dank :) An die htaccess hatte ich garnicht mehr gedacht.

@etreu: Ich habe für jeden Host die gleiche config und ändere jeweils nur ServerName/ServerAlias und den Pfad.

 

Was würdet ihr denn eher empfehlen?

Zugriffsbeschränkung per htaccess wie @Listener vorgeschlagen hat:

vor einer Stunde schrieb Listener:

Google mal .htaccess in Verbindung mit Apache

 

So in etwa kann das aussehen (nicht getestet):

Order Deny,Allow
Deny all
Allow from 127.0.0.1
 


Order Deny,Allow
Deny from all
Allow from 127.0.0.1

Quelle: http://stackoverflow.com/questions/9507645/htaccess-deny-from-all

 

Oder indem ich verschiedene URLs auf verschiedenen Ports erreichbar mache und entsprechend per Firewallregel erlaube wer zugriff hat, so wie @halcyon es vorgeschlagen hat:

vor 10 Stunden schrieb halcyon:

Wenn du im ersten schritt willst das deine hauptdomain erreichbar ist und die subdomains nicht, kannst du deine hauptdomain auf 8080 lauschen lassen, deine subdomain auf 81 etc... dann machst du Port 81 zu und dann ist die subdomain auch nicht mehr zu erreichen, deine hauptdomain hingegen schon.

 

Bearbeitet von ddebrich

Die .htaccess-Lösung ist definitiv die sauberere Variante.

Die andere Variante ist eher ein Workaround, bei dem du unnötig Ports verschwendest. Zudem ist z.B. Port 81 der Standardport für das Onion-Routing (TOR), das vielleicht ja auf dem Server auch genutzt werden soll.
Natürlich könnte man hier auch beliebige High Ports nehmen, aber den Port müsstest du im Browser ja auch jeweils mit angeben und ist somit umständlicher.

Bearbeitet von Crash2001

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.