Kategorie: Server

Linux jako brána do internetu (IPv4 NAT+Firewall)

Nastavení Linuxového serveru pro použití jako brány do internetu pro jednoduchou vnitřní síť. Z počítače se dvěma síťovými kartami udělá router, NAT a Firewall. Nezahrnuje DNS ani DHCP.

Nastavení síťových rozhraní

Nejprve klasicky nastavte síťová rozhraní tak, aby se router dopingnul do obou síťí. Protože router bude ve vnitřní síťi jediný, síťové rozhraní směrem dovnitř nebude mít gateway! (Vnější ale samozřejmě ano)
nano /etc/network/interfaces
auto lo
iface lo inet loopback

# Vnitřní
auto eth0
iface eth0 inet static
 address 10.10.1.1
 netmask 255.255.0.0

# Vnější
auto eth1
iface eth1 inet static
 address 85.91.96.154
 netmask 255.255.255.248
 gateway 85.91.96.153

Povolení IP forwardování

To musí podporovat jádro (standardní Debianovské podporuje). Jestli je IP forwarding zapnutý, soubor /proc/sys/net/ipv4/ip_forward obsahuje 1.
cat /proc/sys/net/ipv4/ip_forward
1
Pokud obsahuje 1, máte vyhráno, můžete postoupit do další kapitoly. Jinak postupně zkuste následující:
nano /etc/network/options
ip_forward=yes
nano /etc/sysctl.conf
net.ipv4.ip_forward = 1
nano /etc/sysconfig/network
FORWARD_IPV4=true
Další kapitola předpokládá, že již IP forwardování zapnuté je.

Nastavení IP tables

Odstranění stávajících pravidel

iptable -F INPUT
iptable -F OUTPUT
iptable -F FORWARD
iptable -t nat -F PREROUTING
iptable -t nat -F POSTROUTING

Nastavení SNAT (maškarády)

iptables -t nat -A POSTROUTING -s 10.0.0.0/16 -d! 10.0.0.0/16 -j SNAT --to 85.91.96.154

Zakázání maškarády pro provoz do dané sítě (např. do VPN)

iptables -t nat -I POSTROUTING -s 10.10.0.0/16 -d 10.10.0.0/16 -j RETURN

Nastavení Firewallu - výchozí pravidla

Výchozí pravidla - vše může projít - omezíme později:
iptables -P OUTPUT ACCEPT
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
Nyní by mělo vše fungovat - žadný provoz není omezován. Než budete pokračovat, zkontrolujte to, ušetříte si tím mnoho starostí. Následujícími kroky nic nezprovozníte, ale naopak pouze omezíte.

Zabezpečování

Nastavení Firewallu - omezení odesílaní (SMTP) z vnitřní sítě ven

Poštovní server může odesílat poštu ven (může jich být víc), ostatní ale ne:
iptables -A FORWARD -s 10.10.1.2 -p tcp --dport smtp -j ACCEPT
iptables -A FORWARD -p tcp --dport smtp -j DROP

Nastavení Firewallu - omezení odesílaní na SMTP server na routeru

Pokud router není vaším SMTP serverem, nechcete aby šlo poštu posílat přímo skrs SMTP server na routeru. (Ten tu běží, aby předával příchozí poštu právě poštovnímu serveru - pokud na routeru SMTP server nemáte (např. místo toho používate přesměrování portu) přeskočte)
# Připravíme speciální třídu SMTP_INPUT
iptables -N SMTP_INPUT
# Do té hodíme provoz zevnitř protokolem SMTP
iptables -I INPUT -p tcp -s 10.10.0.0/16 --dport smtp -j SMTP_INPUT
# Provoz z poštovního serveru ale na SMTP serveru routeru může
iptables -A SMTP_INPUT -s 10.10.1.2 -j RETURN
# Z ostatních se ale na SMTP serveru na routeru nedostane
iptables -A SMTP_INPUT -s 0.0.0.0/0 -j DROP

Zakázaní Source routingu (nevyzkoušené!)

Nyní je ještě možné NAT obejít pomocí Source routingu - doporučuji ho na routeru zcela zakázat:
nano /etc/sysctl.conf
net.ipv4.conf.all.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0
Source routing totiž umožňuje nechat projít paket odesílatelem vytyčenou trasou. To lze ovšem zneužít a nechat paket projít skrze náš router na počítač ve vnitřní síti. Source routing tedy blokuje většina firewallů. (Které my ale nepoužijeme a prostě toto našemu routeru zakážeme.)

Komentáře


Nebyly přidány žádné komentáře.