abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:33 | Pozvánky

    O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Nová verze

    Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.

    Ladislav Hagara | Komentářů: 12
    včera 20:22 | IT novinky

    Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.

    Ladislav Hagara | Komentářů: 2
    včera 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    7.5. 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 10
    7.5. 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 3
    7.5. 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    7.5. 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    7.5. 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (13%)
     (16%)
    Celkem 145 hlasů
     Komentářů: 10, poslední včera 17:35
    Rozcestník

    Dotaz: Presmerovani portu 80 na jiny server.

    23.2.2007 10:23 MirekD
    Presmerovani portu 80 na jiny server.
    Přečteno: 2432×
    Zdravim vsechny, situace je nasledujici: jsem za jednim routrem a potrebuji na locale presmerovat port 80 na jiny servr(nechci pouzit nastaveni proxy v prohlizeci).

    nesel jsem toto:

    iptables -t nat -A OUTPUT -p tcp -o --dport 80 -J DNAT --to-destination jinyservr:8080

    kdys sleduji komunikaci v Etherealu tak vidim jak pakety odchazeji na jinyservr:80 a prichazeji zpet, ale prohlizec to nebere.

    Diky moc.

    Odpovědi

    23.2.2007 10:32 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    iptables -t nat -A PREROUTING -p tcp -d ... --dport 80 -j DNAT --to-destination ...
    23.2.2007 11:54 MirekD
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Dekuji za reakci, ale tohle mi nefunguje.
    23.2.2007 11:28 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Nesmíte mít prohlížeč ve stejné IP síti jako server. Pokud má např. prohlížeč IP 192.168.0.1, přesměrovávající "server" IP 192.168.0.2 a skutečný server IP 192.168.0.3 a celé se to odehrává v síti 192.168.0.0/24, vypadá to následovně: Prohlížeč pošle požadavek z 192.168.0.1 na 192.168.0.2:80, tam se přesměruje na 192.168.0.3:8080. A skutečný server chce odpovědět, zdrojová adresa je 192.168.0.1, server si řekne "toho znám" a pošle paket s odpovědí na 192.168.0.1 (se zdrojovou adresou 192.168.1.3). To dorazí na počítač s prohlížečem, ten ale očekává odpověď od 192.168.0.2 a nevyžádaný paket od 192.168.0.3 zahodí.

    Řešení jsou dvě – buď skutečný server přesuňte do jiné IP sítě (např. 192.168.1.0/24) a přesměrovávejte tam, nebo na přesměrovávající počítači změňte i zdrojovou IP adresu tak, aby se odpovědi dostaly opět na tento počítač, ten je přepíše zase zpět. Pokud v tom tedy NATu neuděláte takový zmatek, že nebude vědět, čí je.
    23.2.2007 11:47 MirekD
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Dekuji za reakci.

    Ma situace je nasledujici

    jsem na poc. 192.168.1.100 odtud potrebuji presmerovat port 80 na server v internetu na port 8080. Jsem skovany za routrem 192.168.1.1(normalni krabicka, zadny linux), venkovni ip meho routeru je 213.144.x.x.

    Dekuji.
    23.2.2007 11:59 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Znamená
    192.168.1.100 odtud potrebuji presmerovat
    • když zadáte na počítači 192.168.1.100 do prohlížeče adresu 192.168.1.100, má se vám objevit webová stránka z nějakého serveru na internetu?
    • nebo když zadáte na počítači 192.168.1.100 adresu nějakého serveru na internetu, potřebujete se připojit k tomu serveru, ale na port 8080?
    • nebo když zadáte např. na počítači 192.168.1.90 adresu 192.168.1.100, chcete zobrazit webovou stránku ze serveru z internetu?
    • nebo ještě něco jiného?
    Napište prosím např. z počítačů X, Y a Z které jsou ve stejné IP síti (tj. pakety mezi nimi se směrují přímo, ne přes router) potřebuji při zadání adresy počítače X do prohlížeče zobrazit stránku odněkud z internetu, celá síť je do internetu připojena přes router A. Nebo jak je to u vás. Podstatná je ta informace, zda se klient a adresa, kterou chcete přesměrovat, nacházejí ve stejné síti, nebo ne.
    msk avatar 23.2.2007 12:03 msk | skóre: 27 | blog: msk
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Mne to skor pride, ako keby chcel transparent proxy, ale z toho textu je to tazke urcit, pretoze mi nie je jasne, o akom smere paketov hovorime ...
    23.2.2007 12:31 MirekD
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    zkusim to rozepsat:

    pc X = 192.168.1.100 muj router v lokalni siti Y = 192.168.1.1 (ne linux)

    server v interneru Z = 71.7.163.29:8080 (to je proxy server)

    Vim ze v prohlizeci muzu nastavit proxy server, ale potreboval bych to udelat pres iptables(pokud to jde).

    potrebuji port 80 z pc X preposlat na pc Z.

    To znamena ze potrebuji komunikovat pres proxy server Z.

    Doufam ze je to trochu srozumitelne.

    Dekuji.
    23.2.2007 13:59 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Pak by mělo fungovat
    iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 71.7.163.29:8080
    Nebude to fungovat, pokud by cílový server (jehož adresu zadáte v prohlížeči), byl ve vaší síti (tj. měl adresu typu 192.168.1.něco). Podmínkou také je, že klienti (prohlížeč) posílají s HTTP požadavkem hlavičku Host: (v HTTP/1.1 už je povinná a všechny klasické moderní prohlížeče ji posílají) – jinak nebude proxy vědět, kam se má dál dotázat na skutečný obsah. Jinak to, o co se pokoušíte, se nazývá transparentní proxy.

    Zároveň potřebujete, aby se klienti mohli dotazovat DNS serverů nebo zprovoznit v síti místní DNS resolver, kterého se budou dotazovat.

    Pokud by vám to stále nefungovalo, spusťte si na routeru tcpdump -ni interface 'port 80' (resp. port 8080) postupně na vnitřním a vnějším rozhraní a sledujte, kam až pakety dorazí a kde se ztrácí.

    Pakety procházející přes PREROUTING se upraví ještě před routováním, takže na firewallu pak musíte mít povolenou komunikaci a navázání spojení z vnitřního počítače na 71.7.163.29:8080 a v opačném směru existující spojení z 71.7.163.29:8080 na vaše klientské počítače.

    Mimochodem, předpokládám že normální routování máte už na routeru rozchozené a že např. s vypnutým firewallem se z klienta na web normálně dostanete.

    Pokud máte možnost rozumně nastavit proxy na klientských počítačích a chcete pouze klienyt donutit používat vaší proxy, zvažte nastavení proxy a na routeru zablokujte veškerou odchozí komunikaci na port 80 (a např. 8080 a 3128, případně veškerou odchozí komunikaci) a jako výjimku povolte pouze komunikaci na váš proxy server. Nikam jinam se klienti připojit nebudou moci, ale budou vědět, že jsou připojeni přes proxy server (občas to může předejít nějakým nedorozuměním apod. – transparentní proxy server je přeci jen svého druhu únos spojení).
    23.2.2007 15:17 MirekD
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Nastavil jsem Vase pravidlo na na pc 192.168.1.100

    iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 71.7.163.29:8080

    pak jsem na teto stanici spustil Ethereal a sledoval komunikaci, jakmile jsem do prohlizece zadal www.google.com, tak jsem videl jak paktey smeruji primo na server googlu a ne na server s proxy cili 71.7.163.29:8080.

    Ale kdys jsem upravil pravidlo na:

    iptables -t nat -A OUTPUT -p tcp --dport 80 -j DNAT --to-destination 71.7.163.29:8080

    v Etherealu vidim jak pakety smeruji na server s proxy cili 71.7.163.29:8080 a vydim jak mi 71.7.163.29:8080 odpovida. Jakoby muj pc 192.168.1.100 tyto pakety zahazoval.

    Dik.
    23.2.2007 15:50 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Předpokládal jsem, že pravidla pro iptables chcete nastavovat na routeru. Takhle mi uniká důvod, proč nenastavíte proxy server přímo na počítači lokálně. Ale k věci:

    Pokud to nastavujete na lokálním počítači, je OUTPUT správně. Že počítač pakety zahazuje může mít podle mne ve vašem případě jediný důvod – firewall. O překlad zdrojové adresy paketu s odpovědí by se měl postarat DNAT. Takže do routování a firewallu by měl paket odpovědi od proxy vstupovat se zdrojovou IP adresou nastavenou na IP serveru, kam původně směřoval dotaz prohlížeče, a port 80. Těmto paketům je nutné povolit průchod firewallem vašeho počítače (v INPUT). Asi nejjednodušší je
    iptables -A INPUT -p tcp -m state --state ESTABLISHED, RELATED -j ACCEPT
    
    čímž povolíte komunikaci pro všechna již navázaná spojení. Pokud byste měl na počítači 192.168.1.100 více rozhraní, a pakety na server měly putovat jiným rozhraním, než pakety k proxy serevru, vstupoval by do hry ještě RP filtr, který kontroluje, zda paket přišel tím rozhraním, kde je očekáván. Ale pokud máte na 192.168.1.100 jen jedno rozhraní, neměl by na to mít RP filtr žádný vliv.
    23.2.2007 17:51 MirekD
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Bohuzel to nefunguje, nechapu sice proc. Vse vypada dobre, firewall na 192.168.1.100 je nakonfigurovan, aby poustel vsechno(zkousel jsem i Vase pravidlo). Mam pouze 1 sitove rozhrani eth0. Vidim jak pakety chodi na proxy a zpet, pouzivam Ethereal s vypnutym promiscious mod.

    Zkousel jsem i jine proxy servry, ale nic se nezmenilo.

    Asi nakonec budu muset nastavit proxy v prohlizeci.
    23.2.2007 20:04 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Ještě můžete zkusit zapnout
    /bin/echo "1" > /proc/sys/net/ipv4/conf/all/log_martians
    jestli si o těch příchozích paketech jádro nemyslí něco divného. A zkusil bych na tom počítači během testu úplně vypnout firewall pro příchozí pakety – vymazat INPUT a nastavit mu default policy na ACCEPT. Ještě můžete zkusit vypsat si pravidla iptables s parametrem -v (např. iptables -vL), zobrazí se i počty paketů, které prošly jednotlivými větvemi. Pokud nemáte na počítači jiný síťový provoz, můžete podle toho poznat, která pravidla se aplikovala. Pokud tedy je problém skutečně v nastavení firewallu. Ale pokud pakety se správnými hlavičkami dorazí až na vaši síťovou kartu a nemáte problém s routováním, nevidím už jiné místo, kde by mohl být problém…
    24.2.2007 04:03 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Jde nějak zjistit, jestli program (webový prohlížeč) dostává ta data? Tj. nemonitorovat jestli pakety přišly na interface, ale jestli jádro provedlo SNAT u příchozích paketů a správně učilo, komu ta data patří. Narážím na možnost, že problém vzniká až v prohlížeči, který špatně interpretuje odpověď od toho proxy.

    Jinak jsem jen tak zkusil tohle
    iptables -t nat -A OUTPUT -p tcp --dport 80 -j DNAT --to-destination 195.70.150.7:80
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -P INPUT DROP
    A fungovalo to podle předpokladu, tj. na jakoukoliv adresu se načetla hlavní stránka ábíčka (jenom odkazy se trochu zbláznily - vzniklo tohle: http://www.seznam.cz/blog/limoto/2007/2/23/170597)
    Quando omni flunkus moritati
    24.2.2007 11:04 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Používáte nějaký „standardní“ prohlížeč (Firefox, Opera apod.), nebo jde o nějaký speciální program?

    Jinak otestovat, zda je problém v prohlížeči nebo po cestě můžete snadno. Nasimulujte si prohlížeč v telnetu:
    #telnet www.google.com 80
    GET / HTTP/1.0⏎
    Host: www.google.com⏎
    ⏎
    
    Dostat byste měl HTML kód titulní stránky Googlu.
    24.2.2007 12:26 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Standardní prohlížeč.
    Quando omni flunkus moritati
    24.2.2007 17:16 MirekD
    Rozbalit Rozbalit vše Re: Presmerovani portu 80 na jiny server.
    Pouzivam Firefox 1.04, INPUT jsem nastavil na ACCEPT. Zkusil jsem i Telnet. Bez vysledku.

    Nicmene jsem to zkusil na svem notebooku, a povedlo se!

    Na obou pc mam stejnou distribuci Debianu. Nevadi, hlavne ze to funguje sice na jinem pc, ale funguje.

    Dekuji vsem za reakce a vas cas.

    MirekD.

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.