Nastavení serveru místo routeru

Petr H.

Nastavení serveru místo routeru
« kdy: 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
Kód: [Vybrat]
port 80 nasměrovat na IP adresu 192.168.1.10a
Kód: [Vybrat]
port 443 nasměrovat na IP adresu 192.168.1.11Předem děkuji za Vaši radu nebo pomoc. PH
« Poslední změna: 09. 04. 2018, 08:44:04 od Petr Krčmář »


naseptavac

Re:Nastavení serveru místo routeru.
« Odpověď #1 kdy: 08. 04. 2018, 23:02:17 »
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

Petr H.

Re:Nastavení serveru místo routeru.
« Odpověď #2 kdy: 08. 04. 2018, 23:21:10 »
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ě?
Kód: [Vybrat]
echo 1 > /proc/sys/net/ipv4/ip_forward
Kód: [Vybrat]
VNEJSI_IP_ADRESA/32mí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

naseptavac

Re:Nastavení serveru místo routeru.
« Odpověď #3 kdy: 08. 04. 2018, 23:57:05 »
Citace
zapnout ip_forwarding neumím ale našel jsem, že by to snad mohlo být tohle, je to prosím správně?
Kód: [Vybrat]
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

Citace
Kód: [Vybrat]
VNEJSI_IP_ADRESA/32mí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.

Citace
Co prosím znamená /32 ?

To je IP maska, ktera rika, ze jde o 1 IP adresu

Petr H.

Re:Nastavení serveru místo routeru.
« Odpověď #4 kdy: 09. 04. 2018, 00:32:03 »
Tak jsem do terminálu zadal

Kód: [Vybrat]
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
Kód: [Vybrat]
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
Kód: [Vybrat]
echo 1 > /proc/sys/net/ipv4/ip_forward
Kód: [Vybrat]
/etc/init.d/networking restart
Na virtuální server se nedostanu a z virtuálního serveru se ani nedostanu na internet.


naseptavac

Re:Nastavení serveru místo routeru
« Odpověď #5 kdy: 09. 04. 2018, 09:18:12 »
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.

plysak

Re:Nastavení serveru místo routeru
« Odpověď #6 kdy: 09. 04. 2018, 11:01:09 »
Já hlavně nevím, proč nedáš těm virtuálům veřejné adresy a máš po problému ..