Fórum Root.cz
Hlavní témata => Server => Téma založeno: Beáta Čoudivá 03. 12. 2018, 10:21:47
-
Dobrý den, jakým způsobem mohu já (jako klient HTTP služeb) prohlížet web, který například nemá zakoupezařízenou doménu, případně doména vede uplně někam jinam. HTTP server tedy běží na nějaké IP adrese a portu 80 a má definovaný VirtualHost například surf.cz, pokud by se do prohlížeče zadala jen IP adresa, přesměrovalo by to na jiný web například jinysurfnastejnemserveru.cz.
To znamená, že je nutné v HTTP requestu posílat Host:. Jde to udělat pomocí etc/hosts? Existuje nějaké rozšíření na to, které to automatizuje, kde bude jen vstupní políčko, jaké host to má vyplnit? (Například po úpravě hosts trvá nějakou dobu než se změny projeví, nebo restart browseru, nevím)....
A jak do toho vstupuje HTTPS a SNI? Jak to měni pravidla hry?
-
Nejjednodušší je si ten záznam přidat do /etc/hosts, aby se doménové jméno běžně přeložilo na správnou IP adresu. V hlavičce pak klasicky putuje správná položka a všechno funguje normálně. HTTPS ani SNI na to v takovém režimu nemají vliv.
-
Dobrý den, jakým způsobem mohu já (jako klient HTTP služeb) prohlížet web, který například nemá zakoupezařízenou doménu, případně doména vede uplně někam jinam. HTTP server tedy běží na nějaké IP adrese a portu 80 a má definovaný VirtualHost například surf.cz, pokud by se do prohlížeče zadala jen IP adresa, přesměrovalo by to na jiný web například jinysurfnastejnemserveru.cz.
To znamená, že je nutné v HTTP requestu posílat Host:. Jde to udělat pomocí etc/hosts? Existuje nějaké rozšíření na to, které to automatizuje, kde bude jen vstupní políčko, jaké host to má vyplnit? (Například po úpravě hosts trvá nějakou dobu než se změny projeví, nebo restart browseru, nevím)....
A jak do toho vstupuje HTTPS a SNI? Jak to měni pravidla hry?
nerozumiem otazke.
Bolo by aspon vhodne uviest ci sa jedna o LAN, alebo ten http server je na verejnej adrese (a ty pristupujes z vonka), tak ma z toho dotazu citatel chaos.
V ramci LAN je mozne vsetko, ale z vonka si musis vystacit z verejnou ip adresou, alebo zalozit domenu, alebo nejaku free domenu tretieho radu
-
Já jsem dotaz pochopil tak, že na web serveru je založený nový VirtualHost s doménou, která ale není ve veřejném DNS stromu nebo veřejný DNS záznam nemíří na správnou IP adresu. Tazatelka se ptá, jak se má na takový server připojit. Nejjednodušší je skutečně v koncové stanici přidat správný záznam do /etc/hosts.
-
Já jsem dotaz pochopil tak, že na web serveru je založený nový VirtualHost s doménou, která ale není ve veřejném DNS stromu nebo veřejný DNS záznam nemíří na správnou IP adresu. Tazatelka se ptá, jak se má na takový server připojit. Nejjednodušší je skutečně v koncové stanici přidat správný záznam do /etc/hosts.
tak se vlastne obejde DNS system a pouzije se stary zpusob z dob zacatku siti na unixu.
-
Pokud je videt cilova IP (zcela bez ohledu na to, jestli to je v lokalni siti, nebo pres pul sveta), tak je nejlepsi postupovat presne tak, jak napsal pan Krcmar.
/etc/hosts:
147.888.80.1 nebudu.platit.za.testovaci.domenu.cz
Jenom bacha na Wordpress - ta vec ma v databazi serializovane stringy s udanim delky, takze je mnohem jednodussi a pohodlnejsi zvolit se nazev teto domeny tak, aby byl presne stejne dlouhy, jako nazev ostre domeny, na kterou se pak bude migrovat. Ne, ze by to bylo neresitelne, ale nahradit to sedem v atabazovem dumpu nevyzaduje zivou bezici instalaci a exportni pluginy.
-
Ked som riesil stranky, tak som to mal vsetko cez hosts subor. Virtualhost bol uz ostry nazov domeny, a len som pridal/zakomentoval riadok v hosts, podla toho, ci som chcel ist na ostry web, ale nieco otestovat u seba.
Pripadne sa to da riesit este lokalnym dns na routri, ale pre jeden pc je to zbytocne.
-
Dobrý den, jakým způsobem mohu já (jako klient HTTP služeb) prohlížet web, který například nemá zakoupezařízenou doménu, případně doména vede uplně někam jinam. HTTP server tedy běží na nějaké IP adrese a portu 80 a má definovaný VirtualHost například surf.cz, pokud by se do prohlížeče zadala jen IP adresa, přesměrovalo by to na jiný web například jinysurfnastejnemserveru.cz.
Z toho vypliva ak sa napr. jedna o apache a je nastaveny config pre vhost
<VirtualHost *:80>
ServerAdmin admin@surf.cz
ServerName surf.cz
ServerAlias www.surf.cz
DocumentRoot /var/www/surf.cz/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
a existuje na apache este minimalne 1 virtualhost a defaultny host sa vypol
a2dissite 000-default.conf
tak po zadani IP adresy sa zobrazi web podla pismen v abecede (cize zobrazi sa a1) prednost maju cisla, preto defaulthost zacina 000
/etc/apache2/sites-available/a1.conf
/etc/apache2/sites-available/b1.conf
Teda ak sa tazatelke jedna o jeden PC, tak je najlepsie pouzit /etc/hosts
Ale podla mna zavisi aj od toho nastavenia vhostov na druhej strane aby ju nesmerovalo na vhost ktory si nepraje
-
Dobrý den, jakým způsobem mohu já (jako klient HTTP služeb) prohlížet web, který například nemá zakoupezařízenou doménu, případně doména vede uplně někam jinam. HTTP server tedy běží na nějaké IP adrese a portu 80 a má definovaný VirtualHost například surf.cz, pokud by se do prohlížeče zadala jen IP adresa, přesměrovalo by to na jiný web například jinysurfnastejnemserveru.cz.
Z toho vypliva ak sa napr. jedna o apache a je nastaveny config pre vhost
<VirtualHost *:80>
ServerAdmin admin@surf.cz
ServerName surf.cz
ServerAlias www.surf.cz
DocumentRoot /var/www/surf.cz/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
a existuje na apache este minimalne 1 virtualhost a defaultny host sa vypol
a2dissite 000-default.conf
tak po zadani IP adresy sa zobrazi web podla pismen v abecede (cize zobrazi sa a1) prednost maju cisla, preto defaulthost zacina 000
/etc/apache2/sites-available/a1.conf
/etc/apache2/sites-available/b1.conf
Teda ak sa tazatelke jedna o jeden PC, tak je najlepsie pouzit /etc/hosts
Ale podla mna zavisi aj od toho nastavenia vhostov na druhej strane aby ju nesmerovalo na vhost ktory si nepraje
Pokud si do /etc/hosts zadá IP adresu a stejný název, jako má VirtualHost na cílovém serveru, dostane to, co má dostat, za všech okolností. Pokud má VirtualHost s názvem www.surf.cz na IP 8.8.8.8, tak si tam přidá:
8.8.8.8 www.surf.cz
Uloží, restartuje browser a bude to fungovat.
-
Jen jedna poznámka k HTTPS: teoreticky by se to mělo chovat z pohledu prohlížeče stejně, ale na doménu, kterou nevlastníte, těžko dostanete certifikát od public CA. Reálně tu jsou pak asi dvě možnosti, u kterých je ale potřeba dobře vědět, co děláte:
a. Mít nedůvěryhodný (např. self-signed) certifikát, odkliknout výjimku a ideálně ji schválit trvale. To asi nechcete radit běžným uživatelům (ale těm asi ani nebudete radit hosts…). Pokud například ve Firefoxu (a asi i jinde, ale tam si nejsem jistý) schválíte výjimku trvale, funguje to jako takové TOFU (trust on first use) – při změně certifikátu nebo veřejného klíče (nejsem si 100% jistý) to bude spojení brát za nedůvěryhodné. Navíc můžete zkontrolovat hash. V podstatě jako u SSH. (Nemůžete se spolehnout na serial number, to si útočník ve svém certifikátu může zvolit libovolně.)
b. Vlastní CA, kterou nainstalujete na všechny relevantní počítače. Teoreticky možné, pak je ale potřeba privátní klíč střežit jako oko v hlavě – taková CA totiž může (pokud to neomezíte) podepisovat nejen certifikát k Vašemu webu, ale i libovolný jiný. Vlastní CA navíc má volnější pravidla, například se pro ni nevyžaduje certificate transparency. Záměrně nebudu linkovat žádný návod, tady to chce dobře vědět, co děláte, ideálně to míť jen v omezeném testovacím prostředí. Možná by se dalo omezit platnost na nějakou vlastní TLD, kterou byste si sami zvolili.
-
Pokud si do /etc/hosts zadá IP adresu a stejný název, jako má VirtualHost na cílovém serveru, dostane to, co má dostat, za všech okolností. Pokud má VirtualHost s názvem www.surf.cz na IP 8.8.8.8, tak si tam přidá:
8.8.8.8 www.surf.cz
Uloží, restartuje browser a bude to fungovat.
A ked (napr.) na apache ma 2 vhosty s menami
www.surf.cz
www.windsurf.cz
a do /etc/hosts si zada
8.8.8.8 www.surf.cz
8.8.8.8 www.windsurf.cz
Tak sa to bude zobrazovat OK ??
Podla mna sa bude zobrazovat ten ktory je v konfiguraku prvy (resp. podla abecedy, ako spominal vyssie) a k tomu duhemu sa nedostane.
Nemam to odskusane, ale myslim si to.
-
Budou fungovat oba, hledá se to doménové jméno, ne IP. Na tu se překládá.
-
Podla mna sa bude zobrazovat ten ktory je v konfiguraku prvy (resp. podla abecedy, ako spominal vyssie) a k tomu duhemu sa nedostane.
Nemam to odskusane, ale myslim si to.
Ano budu sa zobrazovat oba. Preto sa VirtualHost vola VIRTUAL host, lebo dokazes na 1 apachy hostovat viacero domen. Rozlisuje sa to podla toho co dorazi v hlavicke Host (aj ked to dorazi na rovnaku cielovu IP). Treba zapnut tcpdump a otestovat.. Alebo curl -v ;)
-
....
Uloží, restartuje browser a bude to fungovat.
Zatim ... a mozna uz ne vzdy a vsude, protoze nekteri soudruzi sou prece chytrejsi nez tvuj system, a tudiz DNS (a pochopitelne ani hosts) tvyho systemu nepouzijou ... pochopitelne vse vyhradne pro tvou bezpecnost.
To ne vsude se da smele prohlasit o nekterych vecech ve widlich, ktery to s bohorovnym klidem ignorujou, a pokud tomu trebas chces znemoznit pristup na net, tak host uz nestaci.
-
....
Uloží, restartuje browser a bude to fungovat.
Zatim ... a mozna uz ne vzdy a vsude, protoze nekteri soudruzi sou prece chytrejsi nez tvuj system, a tudiz DNS (a pochopitelne ani hosts) tvyho systemu nepouzijou ... pochopitelne vse vyhradne pro tvou bezpecnost.
To ne vsude se da smele prohlasit o nekterych vecech ve widlich, ktery to s bohorovnym klidem ignorujou, a pokud tomu trebas chces znemoznit pristup na net, tak host uz nestaci.
Ano. To je pravda a je to dost děsivá situace. Nicméně dotaz byl pro linux (předpokládám podle uvedení /etc/hosts), takže by to _zatím_ mělo opravdu fungovat.
-
Budou fungovat oba, hledá se to doménové jméno, ne IP. Na tu se překládá.
Teraz som to skusil:
U mna je trocha ina situacia
Nemam ziadnu domenu druheho radu (mam len tretieho radu)
Mam 2 KVM stroje a na obidvoch mam apache2 s vhostami
1. server v LAN 192.168.1.101 forward portu 80 na verejnu IP
2. server v LAN 192.168.1.104 forward portu 80 na verejnu IP
na servery 1 mam asi 3-4 vhosty napr.
web1.dyndns.com
web2.dyndns.com
web3.dyndns.com
kde mam pouzite domeny tretieho radu (defaulthost som mal vypnuty). Stavalo sa mi to ze ak z vonka niekto zadal web2.dyndns.com, tak ho to smerovalo na web1.dyndns.com. Alebo ak niekto zadal IP, tak vzdy dostal odpoved z web1.dyndns.com.
Takze som si znova povolil defaulthost a tam som dal bud prazdnu stranku, alebo nejaky php kod s vypisom IP adresy ....
Teraz som si na servery 2 spravil 2 vhosty a vymislel som si 2 domenove mena
napr.
web1.sk
web2.sk
V /etc/hosts som nastavil
moja_verejna_ip www.surf.cz
8.8.8.8 www.windsurf.cz
-
Budou fungovat oba, hledá se to doménové jméno, ne IP. Na tu se překládá.
Teraz som to skusil:
U mna je trocha ina situacia
Nemam ziadnu domenu druheho radu (mam len tretieho radu)
Mam 2 KVM stroje a na obidvoch mam apache2 s vhostami
1. server v LAN 192.168.1.101 forward portu 80 na verejnu IP
2. server v LAN 192.168.1.104 forward portu 80 na verejnu IP
na servery 1 mam asi 3-4 vhosty napr.
web1.dyndns.com
web2.dyndns.com
web3.dyndns.com
kde mam pouzite domeny tretieho radu (defaulthost som mal vypnuty). Stavalo sa mi to ze ak z vonka niekto zadal web2.dyndns.com, tak ho to smerovalo na web1.dyndns.com. Alebo ak niekto zadal IP, tak vzdy dostal odpoved z web1.dyndns.com.
Takze som si znova povolil defaulthost a tam som dal bud prazdnu stranku, alebo nejaky php kod s vypisom IP adresy a zacalo to fungovat dobre ....
Teraz som si na servery 2 spravil 2 vhosty a vymyslel som si 2 domenove mena
napr.
web1.sk
web2.sk
V /etc/hosts som nastavil
moja_verejna_ip web1.sk
moja_verejna_ip web2.sk
A ak zadam web1.sk, alebo web2.sk, vzdy ma to presmeruje kde ??? Na moj defaulthost ktory ja na servery 1
Netvrdim, ze mam vsetko dobre nastavene, ale funguje mi to takto ako som popisal
-
Budou fungovat oba, hledá se to doménové jméno, ne IP. Na tu se překládá.
A ak zadam web1.sk, alebo web2.sk, vzdy ma to presmeruje kde ??? Na moj defaulthost ktory ja na servery 1
Netvrdim, ze mam vsetko dobre nastavene, ale funguje mi to takto ako som popisal
Máte nějakou chybu v konfiguraci.
Jak si myslíte, že fungují webhostingy?
Jeden Apache, jedna IP adresa, x virtualhostů.
Podle čeho jiného by to pak mělo asi fungovat?
Mám tady Apache na jedné IP adrese, na něm 4 virtualhosty. Funguje to jak má.
Jestli se pro překlad použije DNS nebo hosts soubor je naprosto bezpředmětné.