Fórum Root.cz
Hlavní témata => Sítě => Téma založeno: Petr H. 08. 04. 2018, 22:20:22
-
Ahoj,
doma jsem měl na zkoušku server (OS Debian 9) na kterém běžely virtuálně další servery. V routeru jsem nastavil porty podle toho jak jsem potřeboval, třeba port 80 byl nasměrovaný na IP adresu 192.168.1.10, port 443 byl nasměrovaný na IP adresu 192.168.1.11, třeba port 3306 byl nasměrovaný na IP adresu 192.168.1.20 atd.
Všechno fungovalo ale teď jsem server nainstaloval do serverovny a veškerá komunikace je nasměrována na tento fyzický server. Problém je, že tam není možnost zdarma mít router. Chtěl bych se tedy zeptat, jak by šlo jednoduše nasměrovat v tom fyzickém serveru (linuxu) porty na virtuální servery. Hledal jsem a našel jsem, že by to snad mohlo jít pomocí nějakého iptables, ale je to tak strašně složitý že bych raději něco jednoduššího. Pokud to není problém, mohl by mě prosím pěkně někdo poradit.
Pro úplný začátek by mi stačilo pouze nasměrovat dva porty
port 80 nasměrovat na IP adresu 192.168.1.10
a
port 443 nasměrovat na IP adresu 192.168.1.11
Předem děkuji za Vaši radu nebo pomoc. PH
-
Pokud jsou jinak iptables prazdne:
iptables -t nat -A PREROUTING -d VNEJSI_IP_ADRESA/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.10:80
iptables -t nat -A PREROUTING -d VNEJSI_IP_ADRESA/32 -p tcp -m tcp --dport 443 -j DNAT --to-destination 192.168.1.11:443
+ zapnout ip_forwarding
-
Pokud jsou jinak iptables prazdne:
iptables -t nat -A PREROUTING -d VNEJSI_IP_ADRESA/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.10:80
iptables -t nat -A PREROUTING -d VNEJSI_IP_ADRESA/32 -p tcp -m tcp --dport 443 -j DNAT --to-destination 192.168.1.11:443
+ zapnout ip_forwarding
Děkuji,
zapnout ip_forwarding neumím ale našel jsem, že by to snad mohlo být tohle, je to prosím správně?
echo 1 > /proc/sys/net/ipv4/ip_forward
VNEJSI_IP_ADRESA/32
místo tohoto mám zadat IP adresu toho fyzického serveru? Je to ta IP adresa na kterou se odkazují domény v DNS záznamu?
Co prosím znamená /32 ?
Děkuji
-
zapnout ip_forwarding neumím ale našel jsem, že by to snad mohlo být tohle, je to prosím správně?
echo 1 > /proc/sys/net/ipv4/ip_forward
To je jednorazove zapnuti, permanentni ti urcite poradi google, ja debian bohuzel neznam. Asi to bude "net.ipv4.ip_forward =" nekde v sysctl.conf
VNEJSI_IP_ADRESA/32
místo tohoto mám zadat IP adresu toho fyzického serveru? Je to ta IP adresa na kterou se odkazují domény v DNS záznamu?
Nemam poneti, kam ukazuji tvoje DNS zaznamy, je to proste adresa na tvem stroji, kam zvnejsku prichazeji pakety, ktere chces presmerovavat.
Co prosím znamená /32 ?
To je IP maska, ktera rika, ze jde o 1 IP adresu
-
Tak jsem do terminálu zadal
iptables -t nat -A PREROUTING -d VNEJSI_IP_ADRESA/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.10:80
iptables -t nat -A PREROUTING -d VNEJSI_IP_ADRESA/32 -p tcp -m tcp --dport 443 -j DNAT --to-destination 192.168.1.11:443
echo 1 > /proc/sys/net/ipv4/ip_forward
/etc/init.d/networking restart
Na virtuální server se nedostanu a z virtuálního serveru se ani nedostanu na internet.
-
Bude lepsi, kdyz si na to nekoho sjednas, protoze tvuj problem evidentne nejsou jen iptables. Navic puvodni dotaz znel, jak vypadaji pravidla pro iptables, tudiz odpoved jsi dostal.
-
Já hlavně nevím, proč nedáš těm virtuálům veřejné adresy a máš po problému ..