Portál AbcLinuxu, 19. dubna 2024 22:41


Dotaz: subdomena pro port webserveru

27.3.2010 22:06 forward
subdomena pro port webserveru
Přečteno: 394×
Odpovědět | Admin

Mam asi 10 uzivatelu, kteri maji na svem PC s neverejnou IP webserver a pres ssh si forwarduji port za serveru na svuj PC:

ssh -R 1501:localhost:80 a@host
ssh -R 1502:localhost:80 b@host
ssh -R 1503:localhost:80 c@host

Takze jsou dostupni normalne pres

http://server.tld:1501/
http://server.tld:1502/
http://server.tld:1503/

Neslo by nejak udelat, aby byly dostupni pres

http://a.server.tld/
http://b.server.tld/
http://c.server.tld/

Dik za rady


Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

27.3.2010 22:46 forward
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Odpovědět | | Sbalit | Link | Blokovat | Admin

Kdyby neslo

http://a.server.tld/
http://b.server.tld/
http://c.server.tld/

neslo by aspon

http://client.server.tld/a/
http://client.server.tld/b/
http://client.server.tld/c/
?

28.3.2010 01:11 NN
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Jde oboji,k privnimu potrebujez DNS pro subdomeny:

a)
VirtualHost 80.0.0.1:1501
ServerName a.server.tld

VirtualHost 80.0.0.1:1502
ServerName b.server.tld
b)
VirtualHost 80.0.0.1:1501
ServerName client.server.tld
ReriteRule ^(.*)$ client.server.tld/a/ [L,R]
DocumentRoot /a/

VirtualHost 80.0.0.1:1502
ServerName client.server.tld
ReriteRule ^(.*)$ client.server.tld/a/ [L,R]
DocumentRoot /b/
A u obojiho zaridit v ports.conf:
Listen 1501
Listen 1502
Protoze to musis na strane serveru(apache) nejak rozlisit.

NN
28.3.2010 12:19 forward
Rozbalit Rozbalit vše Re: subdomena pro port webserveru

A neslo by to nejak nastavit i pro ssh?

ssh -R 1701:localhost:22 a@host
ssh -R 1702:localhost:22 b@host
ssh -R 1703:localhost:22 c@host

Aby misto

ssh a@server.tld:1701

se dalo pripojit pres

ssh a@a.server.tld

?

28.3.2010 12:30 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Tohle nebude fungovat, protože s adresou http://a.server.tld/ se klient připojuje na a.server.tld:80, takže server naslouchající na portu 1501 je mu k ničemu. Navíc tazatel psal o přesměrování přes SSH na jiné počítače, ne že to vše běží na jednom Apache serveru.
28.3.2010 12:54 forward
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Jak mam teda zaridit, aby se na vnitrni webserver na portu 80 takto presmerovaneho

ssh -R 1503:localhost:80 c@host

dalo pripojit misto http://server.tld:1503/ takhle http://a.server.tld/ ?

28.3.2010 12:27 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jediná možnost je vytvořit na vašem serveru proxy server, který podle hlaviček sám naváže spojení s příslušným webserverem ve vnitřní síti.

Není použití SSH tunelu zbytečný kanón na vrabce? Stačil by na to obyčejný DNAT.
28.3.2010 13:02 forward
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Problem je, ze ty PC s neverejnou IP nejsou hned za serverem. Budou se pripojovat pres Internet.

Nemuzete uvest nejaky konkretni priklad?
28.3.2010 13:28 NN
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Pravda, blbost ale stim SSH je to o forwardovani portu a to se DNS-kama nevyresi.. pokud tam je to SSH pro bezpecnost tak byvch postavil VPN a pak je jedno co se tim uz procpe..

NN
28.3.2010 15:44 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Pro Squid najdete nějaké příklady tady: Reverse Proxy with Multiple Backend Web Servers nebo http://wiki.squid-cache.org/ConfigExamples/Reverse/VirtualHosting.

Pro Apache ta konfigurace může vypadat třeba takhle nějak:
<VirtualHost *:80>
        ServerName a.example.com

        ProxyRequests Off

        <Proxy *>
                Order deny,allow
                Allow from all
        </Proxy>

        ProxyPass / http://localhost:1501/
        ProxyPassReverse / http://localhost:1501/
</VirtualHost>
<VirtualHost *:80>
        ServerName b.example.com

        ProxyRequests Off

        <Proxy *>
                Order deny,allow
                Allow from all
        </Proxy>

        ProxyPass / http://localhost:1502/
        ProxyPassReverse / http://localhost:1502/
</VirtualHost>
Na tohle by stačil i nějaký jednoúčelový program nebo jednoduchý web server s podporou reverse proxy. Podívejte se na Reverse proxy, jestli se vám některý nebude hodit.

Samozřejmě je nutné mít příslušné domény v DNS.
28.3.2010 15:57 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: subdomena pro port webserveru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Toto je mozne vcelku jednoducho urobit cez Apache + mod_proxy + mod_rewrite. Apache ti vlastne bude robit taky jenoduchy proxy server, nastavenie je mozne 'per VirtualHost'.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.