Meerdere domeinen achter 1 IP op meerder servers.

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Hallo,

Ik ben opzoek naar de mogelijkheid voor het volgende:

Ik heb 3 domeinen. (althans ik wil een 3e toevoegen welke draait op een andere machine)

Domein 1 en 2 draaien op server-A en domein 3 draait dus op server-B

Aangezien ik maar 1 IP heb komt alles nu binnen op server-A (port 80 en 443)

Hoe kan ik in zorgen dat requests naar domein 3 doorgestuurd worden naar server-B? (geen portforwarding)

Alle machines draaien debian met apache2. Heb op server-A dus al een 2 virtual hosts voor domein 1 en 2.

Hoop dat het te begrijpen is wat ik bedoel.

Wie kan me helpen? _/-\o_

Beste antwoord (via XfadeR op 06-04-2020 10:12)


  • XyRuS
  • Registratie: Augustus 2002
  • Laatst online: 00:38
Op server A een reverse proxy naar server B een optie?

Afbeeldingslocatie: https://static1.squarespace.com/static/4f3d45f3d09afe633f906ae6/t/588dfae246c3c4023d854e82/1485699829693/?format=1500w

[ Voor 92% gewijzigd door XyRuS op 05-04-2020 19:38 ]

Alle reacties


Acties:
  • Beste antwoord
  • +4 Henk 'm!

  • XyRuS
  • Registratie: Augustus 2002
  • Laatst online: 00:38
Op server A een reverse proxy naar server B een optie?

Afbeeldingslocatie: https://static1.squarespace.com/static/4f3d45f3d09afe633f906ae6/t/588dfae246c3c4023d854e82/1485699829693/?format=1500w

[ Voor 92% gewijzigd door XyRuS op 05-04-2020 19:38 ]


Acties:
  • +1 Henk 'm!

Verwijderd

Ik ga er van uit dat Server A en B op het zelfde interne netwerk zitten.

Ergens een extra virtuele machine inrichten, die het externe IP verkeer ontvangt, en een reverse proxy zoals squid er op zetten, die het verkeer weer onderverdeeld naar de interne ip adressen a.d.h.v. het gevraagde domeinnaam.

Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
XyRuS schreef op zondag 5 april 2020 @ 19:36:
Op server A een reverse proxy naar server B een optie?

[Afbeelding]
Hmm ja, als ik zo eens google lijkt dat er wel op ja. 😀
Complexe materie maar es kijken of ik dat bij elkaar gegoogled en geknutseld krijg.

Thanks man!

Acties:
  • +2 Henk 'm!

  • XyRuS
  • Registratie: Augustus 2002
  • Laatst online: 00:38
Ik draai dit in docker: https://github.com/jc21/nginx-proxy-manager. Ik stelde vroeger alles met de hand in via nginx config files en lets encrypt scriptjes, dan leer je wel hoe het onder de motorkap werkt. Daarna is de config via de GUI van proxy manager een eitje.

Afbeeldingslocatie: https://nginxproxymanager.com/screenshots/proxy-hosts.png

[ Voor 68% gewijzigd door XyRuS op 05-04-2020 19:45 ]


Acties:
  • +1 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Verwijderd schreef op zondag 5 april 2020 @ 19:40:
Ik ga er van uit dat Server A en B op het zelfde interne netwerk zitten.

Ergens een extra virtuele machine inrichten, die het externe IP verkeer ontvangt, en een reverse proxy zoals squid er op zetten, die het verkeer weer onderverdeeld naar de interne ip adressen a.d.h.v. het gevraagde domeinnaam.
Ja, denk inderdaad dat dat de oplossing is. Ik draai Proxmox dus even een proxy opvang gebakje maken en dan es kijken hoe ik dat moet inrichten
Weer een stap verder in ieder geval!

Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Ja een dockertje is ook een oplossing. Ik ga het eerst even zelf proberen in een container onder proxmox.

Bedankt! _/-\o_

Acties:
  • 0 Henk 'm!

  • lolgast
  • Registratie: November 2006
  • Laatst online: 22:44
Traefik kan ook precies wat je wilt. Voor eventuele hulp kun je ook hier terecht :)
[Traefik - Proxy/Loadbalancer] Ervaringen & Discussie

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 22:19

Hero of Time

Moderator LNX

There is only one Legend

Verwijderd schreef op zondag 5 april 2020 @ 19:40:
Ik ga er van uit dat Server A en B op het zelfde interne netwerk zitten.

Ergens een extra virtuele machine inrichten, die het externe IP verkeer ontvangt, en een reverse proxy zoals squid er op zetten, die het verkeer weer onderverdeeld naar de interne ip adressen a.d.h.v. het gevraagde domeinnaam.
Squid is geen reverse proxy, maar een normale proxy voor uitgaand verkeer.



@XfadeR, hier is dus idd een reverse proxy voor bedacht. Je kan op Server A een aparte vhost maken en via proxypass alles doorsturen naar Server B. Je zou ook kunnen besluiten om een Server C op te zetten die als reverse proxy dient en verkeer naar A of B stuurt, afhankelijk van het domein waar het op komt. Maar dat zal je eerder doen als je een grotere omgeving hebt.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • pennywiser
  • Registratie: November 2002
  • Laatst online: 20-09 19:18
Apache kan zelf ook reverse proxyen op dezelfde server, dus dan heb je een reverse proxy config, naast je vhosts.

Acties:
  • 0 Henk 'm!

  • Wim-Bart
  • Registratie: Mei 2004
  • Laatst online: 10-01-2021

Wim-Bart

Zie signature voor een baan.

Reverse proxy inrichten met behulp van IIS voor Windows (ARR + URL Rewrite), een Virtuele Netscaler of NGINX. Zo veel smaken, zo veel mogelijkheden.

Beheerders, Consultants, Servicedesk medewerkers. We zoeken het allemaal. Stuur mij een PM voor meer info of kijk hier De mooiste ICT'er van Nederland.


Acties:
  • 0 Henk 'm!

Verwijderd

Hero of Time schreef op zondag 5 april 2020 @ 19:59:
[...]

Squid is geen reverse proxy, maar een normale proxy voor uitgaand verkeer.
Ah, ik ben een roestige windows man. ik dacht dat Squid, als linux variant van ISA server, ook aan reverse proxy'en/soort van HTTP forwarding kon doen. nee dus?, foutje.

Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Ben momenteel NGINX aan het installeren op een nieuwe debian container.
Es kijken hoever ik daarmee kom maar het ziet er belovend uit 😀

Tot zover al bedankt voor alle reacties iedereen!

Acties:
  • +1 Henk 'm!

  • DataGhost
  • Registratie: Augustus 2003
  • Laatst online: 19-09 21:26

DataGhost

iPL dev

XfadeR schreef op zondag 5 april 2020 @ 20:16:
Ben momenteel NGINX aan het installeren op een nieuwe debian container.
Es kijken hoever ik daarmee kom maar het ziet er belovend uit 😀

Tot zover al bedankt voor alle reacties iedereen!
Je kan moeilijk doen, maar zoals @pennywiser al zei kan Apache dat prima zelf. Het is bij mij letterlijk een normale VirtualHost minus de "lokale" dingen (DocumentRoot enz) en met het regeltje
code:
1
ProxyPass "/" "http://localhost:8010/"

erbij.

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 22:19

Hero of Time

Moderator LNX

There is only one Legend

Verwijderd schreef op zondag 5 april 2020 @ 20:13:
[...]

Ah, ik ben een roestige windows man. ik dacht dat Squid, als linux variant van ISA server, ook aan reverse proxy'en/soort van HTTP forwarding kon doen. nee dus?, foutje.
Nope, zie ook hun site: http://www.squid-cache.org/.

offtopic:
Maar ISA een reverse proxy voor je webserver? Dat wist ik niet, ik dacht dat je dat gewoon met IIS deed (daarvan weet ik zeker dat die 't doet)
XfadeR schreef op zondag 5 april 2020 @ 20:16:
Ben momenteel NGINX aan het installeren op een nieuwe debian container.
Es kijken hoever ik daarmee kom maar het ziet er belovend uit 😀

Tot zover al bedankt voor alle reacties iedereen!
Als je speciaal hiervoor een aparte container gaat bouwen, kijk dan naar iets dat specifiek hiervoor is gemaakt. Eerder is al Traefik genoemd, maar haproxy is ook een prima oplossing. Veel lichter dan een full blown webserver.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

Verwijderd

Hero of Time schreef op zondag 5 april 2020 @ 20:55:
[...]

offtopic:
Maar ISA een reverse proxy voor je webserver? Dat wist ik niet, ik dacht dat je dat gewoon met IIS deed (daarvan weet ik zeker dat die 't doet)
offtopic:
IIS kan inderdaad prima reverse-proxyen sinds Server 2008R2(?), maar ISA is/was veel uitgebreider en heel geschikt als outer-perimeter systeem. ISA is/was een firewall, proxy, reverse proxy en verzin het maar, tegelijk. Ik vind het persoonlijk erg jammer dat de opvolger van ISA (Forefront) niet meer doorontwikkeld wordt.

Acties:
  • +1 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Nou, ik heb het werkend hoor! :-)

Was begonnen met een aparte proxy server maar ik liep al snel vast door te veel complexe dingen waar ik geen tijd voor had.
Uiteindelijk dus maar de simpele manier gekozen en het gewoon via apache gedaan met proxypass.

In eerste instantie nog wat problemen omdat er nog een certificaat aanhing, maar uiteindelijk allemaal gelukt.

Bedankt!

[ Voor 12% gewijzigd door XfadeR op 06-04-2020 10:12 ]


Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Hebben jullie ook nog enig idee waarom m'n favicon.ico niet laad sinds hij achter deze proxy zit?
Ik kan 'm dus wel rechtstreeks aanroepen (https://www.domeinnaam.nl/forum/favicon.ico) maar hij laad 'm niet zien in de adresbalk of favorites van alle browsers.

Dit is mijn config van de site op de proxyserver kant

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<VirtualHost *:443>
    ServerAdmin admin@domeinnaam.nl
    ServerName domeinnaam.nl
    ServerAlias www.domeinnaam.nl
    SSLEngine On
    SSLProxyEngine on
    ProxyPreserveHost On
    ProxyPass /forum https://192.168.102.22/forum
    ProxyPassReverse /forum https://192.168.102.22/forum
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    SSLCertificateFile /etc/letsencrypt/live/www.domeinnaam.nl/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/www.domeinnaam.nl/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>


En dit is de conf op de webserver zelf:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<IfModule mod_ssl.c>
<VirtualHost *:443>
     ServerAdmin admin@domeinnaam.nl
     DocumentRoot /var/www/html
     ServerName domeinnaam.nl
     ServerAlias www.domeinnaam.nl

     <Directory /var/www/html/forum/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/domeinnaam.nl/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domeinnaam.nl/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/domeinnaam.nl/chain.pem
</VirtualHost>
</IfModule>


De file favicon.ico staat zoals voorheen natuurlijk gewoon in /var/www/html/forum/
Hoor graag jullie oplossing 😀

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 22:19

Hero of Time

Moderator LNX

There is only one Legend

Omdat de favicon bijna altijd van de root van je server wordt opgevraagd en die is er nu niet. Je stuurt alleen verzoeken naar /forum door naar de andere server. Zou je ProxyPass / doen, dan zal je favicon wel werken. Let wel op dat je remote server dan ook geen /forum moet bevatten in de uri, anders gaan je links stuk omdat / op je proxy naar /forum op de webserver gaat, wat resulteert in links naar /forum/forum.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Hero of Time schreef op dinsdag 14 april 2020 @ 19:46:
Omdat de favicon bijna altijd van de root van je server wordt opgevraagd en die is er nu niet. Je stuurt alleen verzoeken naar /forum door naar de andere server. Zou je ProxyPass / doen, dan zal je favicon wel werken. Let wel op dat je remote server dan ook geen /forum moet bevatten in de uri, anders gaan je links stuk omdat / op je proxy naar /forum op de webserver gaat, wat resulteert in links naar /forum/forum.
Ok, dank voor je antwoord en ik begrijp wat je bedoelt. Ik kan helaas /forum niet naar de root verplaatsen omdat de webserver in principe niet van mij is. Ik host 'm enkel met wat klein beheer.

Ik vraag me alleen af waarom het voorheen wel werkte toen ie nog niet achter proxy zat.
Het root had immers toen ook niet favicon.ico want die stond gewoon in /forum, net als nu.

Er zou toch een manier moeten zijn zonder je webserver te verbouwen toch? 😉

Acties:
  • 0 Henk 'm!

  • DataGhost
  • Registratie: Augustus 2003
  • Laatst online: 19-09 21:26

DataGhost

iPL dev

Kijk in je access en error logs, en in de netwerk-trace van je browser? Dan zie je precies wat er gebeurt. Misschien dat iets in je letsencrypt-config roet in het eten gooit of misschienWaarschijnlijk komt het inderdaad door de subdir in je ProxyPass* statements. Zou het niet gewoon werken als je / laat forwarden naar /, ipv /forum naar /forum?
Je kan wel een link tag gebruiken om naar je favicon te wijzen, maar ik zou toch eerst beginnen met de logs enzo om te zien wat er gebeurt. Misschien is je favicon niet het enige wat misgaat.

[ Voor 11% gewijzigd door DataGhost op 15-04-2020 22:15 ]


Acties:
  • 0 Henk 'm!

  • WeHoDo
  • Registratie: Augustus 2014
  • Laatst online: 19-09 20:48
Je had ook een MicroTik router kunnen nemen, die kan dit ook afhandelen door rules in te stellen.
DomeinnaamA 80 naar server 1
DomeinnaamB 80 naar server 2

Maar gelukkig is het al gelukt!

PSN: plexforce (ps4)


Acties:
  • 0 Henk 'm!

  • DataGhost
  • Registratie: Augustus 2003
  • Laatst online: 19-09 21:26

DataGhost

iPL dev

Ik vind dat een raar advies als je al iets in gebruik hebt wat dat ook prima kan.

Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Ok, heb eindelijk ook een werkende favicon.
Omdat het forum inderdaad in een subdir staat, wordt de favicon in de root van het domein gezocht, alleen die bestaat niet. Althans niet als website en dus kijkt de proxy dus lokaal omdat ik enkel ProxyPass naar /forum heb.
Uiteindelijk met een "Alias /favicon.ico /var/www/domeinnaam.nl/favicon.ico" opgelost.

Misschien niet de schoonste manier maar prima voor nu. O-)

Dank voor de tip weer!

Acties:
  • 0 Henk 'm!

  • DataGhost
  • Registratie: Augustus 2003
  • Laatst online: 19-09 21:26

DataGhost

iPL dev

XfadeR schreef op donderdag 16 april 2020 @ 00:49:
omdat ik enkel ProxyPass naar /forum heb.
Is hier een specifieke reden voor? Een extra ProxyPass op /favicon.ico zou het ook oplossen trouwens.

[ Voor 15% gewijzigd door DataGhost op 16-04-2020 11:25 ]


Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
DataGhost schreef op donderdag 16 april 2020 @ 11:23:
[...]

Is hier een specifieke reden voor? Een extra ProxyPass op /favicon.ico zou het ook oplossen trouwens.
De webserver waar de /forum op draait is niet van mij dus de reden dat ik /forum proxypass is omdat er op de root van het domein geen website draait. (I know, is ook wazig)

Een proxypass op /favicon.ico werkte overigens niet.

Acties:
  • 0 Henk 'm!

  • borft
  • Registratie: Januari 2002
  • Laatst online: 15-09 16:33
XfadeR schreef op donderdag 16 april 2020 @ 13:06:
[...]


De webserver waar de /forum op draait is niet van mij dus de reden dat ik /forum proxypass is omdat er op de root van het domein geen website draait. (I know, is ook wazig)

Een proxypass op /favicon.ico werkte overigens niet.
je moet hem dan wel "proxypassen" naar de correcte url, dus naar /forum/favico.ico ;) maar een alias of een rewrite gaat natuurlijk ook werken.

Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
borft schreef op donderdag 16 april 2020 @ 13:10:
[...]

je moet hem dan wel "proxypassen" naar de correcte url, dus naar /forum/favico.ico ;) maar een alias of een rewrite gaat natuurlijk ook werken.
Ook dat had ik uiteraard (als eerste) geprobeerd maar ik vermoed dat dat niet goed ging omdat er ook SSL op zit en als ik 'm dan forward op intern ip gaat dat niet werken.

Acties:
  • +1 Henk 'm!

  • DataGhost
  • Registratie: Augustus 2003
  • Laatst online: 19-09 21:26

DataGhost

iPL dev

XfadeR schreef op donderdag 16 april 2020 @ 13:06:
[...]


De webserver waar de /forum op draait is niet van mij dus de reden dat ik /forum proxypass is omdat er op de root van het domein geen website draait. (I know, is ook wazig)
Mag, maar enorm logisch is dat niet aangezien er nu op de buitenste root ook geen website draait :+ Je favicon had met / naar / gewoon gewerkt namelijk. En mocht de eigenaar van die andere server nog iets anders willen draaien op /blaat dan moet jij eerst de config aan gaan passen. Maar als je echt alleen maar het forum wilt exposen is een selectievere ProxyPass (zoals je nu hebt dus) wel beter.
Een proxypass op /favicon.ico werkte overigens niet.
Nja ik wil niet supermoeilijk doen en ik kan het verkeerd hebben maar het lijkt erop dat je er heel snel mee ophoudt als iets niet werkt. Als je zegt "werkte niet" verwacht ik er eigenlijk ook een waarom bij, in de vorm van een statuscode en de relevante regels in je (access/error) logs. Als ik in een van mijn configs van een VirtualHost zonder favicon
code:
1
ProxyPass /favicon.ico http://localhost:8010/favicon.ico

zet, werkt dat gewoon.

Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
@DataGhost Ik waardeer je hulp en je tips begrijp me niet verkeerd maar m'n vrienden zullen lachen als ze horen dat ik snel zou ophouden als iets niet werkt want als er IEMAND doorgaat tot het gaatje en geduld heb, dat praat je met mij. 😄 Maar natuurlijk probeer ik ook diverse andere oplossingen voordat ik zit te spitten in iets wat niet gaat.

Ik snap dat het bij jou werkt omdat je je proxypass naar iets op localhost verwijst en 'm tevens gewoon op http aanroept.
Bij mij draait het forum en de proxy fysiek op twee verschillende machines dus mijn config zou zijn:

code:
1
ProxyPass /forum/favicon.ico https://192.168.102.22/forum/favicon.ico


Dat ip oproepen over https werkt natuurlijk niet omdat het ssl certificaat op domeinnaam staat.
Eigenlijk zou de webserver geen SSL meer hoeven te hebben denk ik, omdat mijn proxy de HTTPS requests opvangt. Dus het lijkt me nu dubbel, maar dat weet ik niet zeker.

In access log kwam ik geen errors of entries tegen op favicon. Zowel niet op de proxy host als op de web host.

Acties:
  • +1 Henk 'm!

  • DataGhost
  • Registratie: Augustus 2003
  • Laatst online: 19-09 21:26

DataGhost

iPL dev

Dat het bij mij op localhost staat maakt niets uit, want op :8010 zit een nginx in een docker dus het gaat hoe dan ook niet intern in Apache geregeld kunnen worden. Jouw ProxyPass zou ook gewoon moeten werken met https, aangezien die van het forum ook werkt over https (of wat je eerder gepost hebt is niet de config die je gebruikt). Maar in het statement wat je net post staat je eerste argument verkeerd, dat moet /favicon.ico zijn. Hoe dan ook moet dat in het access log van je proxy komen te staan, en anders in het error log. Als dat allebei niet het geval is betekent dat dat je browser de request niet stuurt. Dus open eens <domein>/favicon.ico terwijl je F12 -> network open hebt staan en kijk hoe de favicon opgevraagd wordt en waarom dat niet werkt. Je moet minimaal een HTTP-code krijgen, waarschijnlijk 200, 301, 302 of 404. Gezien je statement gok ik op een 404. Als het aan het https zou liggen verwacht ik een 502 Bad Gateway.

[ Voor 11% gewijzigd door DataGhost op 16-04-2020 21:13 ]


Acties:
  • 0 Henk 'm!

  • XfadeR
  • Registratie: November 2003
  • Laatst online: 22:08
Ik moet je volkomen gelijk geven. Ondanks ik overtuigd ben van het feit dat ik het op deze manier al had geprobeerd werkt het nu ineens wel. 😃
Ik heb de Alias weggehaald en zelfs de favicon op de proxy om zeker te zijn. Daarna /favicon.ico naar https://192.168.102.22/forum/favicon.ico gezet, apache reloaded, caches gecleared in browser en gewoon werken!
Dus geen idee wat ik eerder fout heb gedaan (had niet alleen /forum/favicon.ico geprobeerd)

Dank voor je hulp @DataGhost !
Pagina: 1