Portál AbcLinuxu, 7. srpna 2025 01:02

#04 - Nastavenie siete, DHCP server

Odloženo | Přečteno: 212× | Debian

Po dlhšej pauze som si našiel čas k pokračovaniu seriálu o inštalovaní serveru. V tomto diely sa budem zaoberať nastavením siete - teda nastaveniu IP adries pre eth0 a eth1, nakonfigurovaní DHCP serveru pre LAN sieť a jednoduchom nakonfigurovaní iptables (bez nich totiž nie je možné rozbehať internet na PC staniciach v LAN sieti).

O použití iptables pre konfiguráciu firewallu si poviem až v ďalšom diely. Teda výsledkom dnešného snaženia bude pripojenie servera na internet a tak isto aj PC stanice v LAN sieti.
SCHÉMA SIETE:
POPIS SIETE:

 	           rozhranie
	     eth0	      eth1
IP	   10.1.58.3	   192.168.58.1
MASKA	   255.255.255.0   255.255.255.0
GATEWAY	   10.1.58.1	        –-
BROADCAST  10.1.58.255	   192.168.58.255
NETWORK	   10.1.58.0	   192.168.58.0
DNS	   1.1.1.1	        –-
kde IP adresa na externom rozhraní sa prekladá na externú IP adresu. Preklad zabezpečuje CISCO router. Samozrejme že keď nepoužívate ďalší router ale máte priamo napojenú sieť (wifi, optika, adsl) na server tak na eth0 zadáte externú IP adresu. Vnútorný segment sa bude maškarádovať na IP adresu rozhrania eth0.

Poznámka: DNS adresa je vymyslená :)

Informácie o sieti máme ideme sa vrhnúť na konfiguráciu. NASTAVENIE SIETE:
Konfigurácia rozhraní sa robí v súbore: /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
#
# Realtek 8139 - do ADLS routeru
auto eth0
iface eth0 inet static
    address 10.1.58.3
    netmask 255.255.255.0
    gateway 10.1.58.1
    network 10.1.58.0
    broadcast 10.1.58.255
#
# Intel Pro 10/100 - do LAN
auto eth1
iface eth1 inet static
    address 192.168.58.1
    netmask 255.255.255.0
    network 192.168.58.0
    broadcast 192.168.58.255
riadok iface eth0 inet static značí že IP adresa bude statická - teda nebude sa prideľovať cez DHCP. Ak by ste potrebovali z nejakého dôvodu nechať prideľovať svojmu serveru dynamicky IP adresu tak stačí napísať iface eth0 inet dhcp. Asi ste si všimli že pri nastavení eth1 chýba brána-gateway. Je to preto, lebo rozhranie eth1 bude bránou pre PC stanice v LAN sieti. V adresáry /etc/network/ máme ešte súbor options:
/etc/network/options
ip_forward=yes
spoofprotect=yes
syncookies=yes
V tomto súbore sa dá nastaviť forwardovanie paketov medzi rozhraniami, ochrana proti spoofingu (viac v časti o firewalle) a funkcia ktorá kontroluje SYN príznak v hlavičke TCP pakete (viac v časti o firewalle).

Poznámka: SYN príznak oznamuje žiadosť o nadviazanie komunikácie

Keď nastavíme všetko potrebné, potrebujeme reštartovať sieť aby sa nám aplikovali nové nastavenia. Reštart siete môžeme urobiť pomocou už vytvorených spúšťacích skriptov v adresáry /etc/init.d.
debian:~# /etc/init.d/networking restart
V tomto momente by sme mali mať náš server pripojený na internet.

Poznámka: príkazom ifconfig si vypíšete všetky aktívne sieťové rozhrania.
ifconfig eth1 down - zhodíte rozhranie eth1
ifconfig eth0 up - nahodíte eth0 rozhranie

nastavenia sa čítajú z /etc/network/interfaces

ifconfig eth1 192.168.58.1 netmask 255.255.255.0 up - nahodíte rozhranie eth1 s nastaveniemi (vhodne pri inštalácii z internetu)

DHCP server
Prejdeme ku konfigurácii DHCP servera.
debian:~# apt-get install dhcp3-server
Inštalátor sa nás spýta na ktorom rozhraní chceme aby DHCP server bežal. Kedže pre LAN sieť máme rozhranie eth1 tak do políčka napíšeme eth1.

Poznámka: Obrázok pripojím ASAP :)

Všetky nastavenia DHCP serveru sa zapisujú do konfiguračného súboru dhcpd.conf.
/etc/dhcp3/dhcpd.conf
authoritative;
option domain-name "zsu";
option subnet-mask 255.255.255.0;
option domain-name-servers 195.146.128.60,195.146.132.59;
default-lease-time 43200;
max-lease-time 72000;
option ip-forwarding on;
option routers 192.168.58.1;	# default gateway
#
subnet 192.168.58.0 netmask 255.255.255.0
    { range 192.168.58.100 192.168.58.220; }
#
group {    
	    use-host-decl-names true;
	host notebook {
    	    hardware ethernet 00:0D:56:AD:1D:63;
	    fixed-address 10.1.58.100;
	    }
}
Vysvetlíme si jednotlivé riadky:
option domain-name - názov domény
option subnet-mask - nastavenie masky
option domain-name-servers - nastavenie DNS serverov
default-lease-time - štandardný čas po ktorý bude pridelená IPčka hostovi
max-lease-time - maximálny čas po ktorý bude pridelená IPčka hostovi
option ip-forwarding - zapnutie ip forwardingu
option routers - nastavenie default gateway-brány
subnet 192.168.58.0 netmask 255.255.255.0
    { range 192.168.58.100 192.168.58.220; }
- pre siet 192.168.58.0 s maskou 255.255.255.0 prideluj Ipcky v rozsahu 192.168.58.100 až 192.168.58.220
group {    
	    use-host-decl-names true;
	host notebook {
    	    hardware ethernet 00:0D:56:AD:1D:63;
	    fixed-address 192.168.58.100;
	    }
- definujeme skupiny a hosta-clienta notebook ktorému na základe HW adresy pridelíme IP adresu 10.1.58.100.

Určite ešte existujú všelijaké vychytávky, pre jednoduchú LAN sieť toto plne postačuje. Prípadne ich časom doplním do článku. Ešte spomeniem, že dhcp server si ukladá informácie o pridelených IP adresách do súboru /var/lib/dhcp3/dhcp.leases.

/var/lib/dhcp3/dhcp.leases

lease 192.168.58.220 {
  starts 5 2006/03/17 15:46:50;
  ends 6 2006/03/18 03:46:50;
  tstp 6 2006/03/18 03:46:50;
  binding state free;
  hardware ethernet 00:0d:56:ad:1d:63;
  uid "\001\000\015V\255\035c";
}
lease 192.168.58.218 {
  starts 6 2006/03/18 16:20:24;
  ends 0 2006/03/19 04:20:24;
  tstp 0 2006/03/19 04:20:24;
  binding state active;
  next binding state free;
  hardware ethernet 00:50:04:f8:4e:0d;
  uid "\001\000P\004\370N\015";
  client-hostname "PC11";
}
lease 192.168.58.219 {
  starts 6 2006/03/18 17:02:43;
  ends 0 2006/03/19 05:02:43;
  binding state active;
  next binding state free;
  hardware ethernet 00:0d:60:67:b8:a6;
  uid "\001\000\015`g\270\246";
  client-hostname "PC10";
}
Teda DHCP server sa snaží podľa informácii v tomto súbore prideľovať rovnaké IPčky pre jeden počítač. Teda aj keď nedáte prideľovať pomocou HW adresy v konfiguračnom súbore DHCP serveru tak pokiaľ nezmažete tento súbor bude DHCP server prideľovať vždy rovnakú IP adresu konkrétnemu počítaču, ktorý je identifikovaný podľa HW adresy sieťovej karty.

Poznámka: Ak sa rozhodnete zmazať tento súbor, nezabudnite vytvoriť prázdny súbor s rovnakym menom. Inak by Vám DHCP server prestal prideľovať IPčky.

No a nakoniec zadefinujeme pravidlá pre jednoduchý firewall:
FIREWALL:
#!/bin/bash
#
# uvodny vypis oznamujuci vymazanie pravidiel
firewall="Erasing djjet firewall :)"
version="0.1 alpha (09.03.2006)"

echo "$firewall $version"
#
iptables="/sbin/ip6tables"
# vymazanie vsetkych pravidiel a zrusenie retazcov
iptables -F
iptables -F -t nat
iptables -X
iptables -X -t nat
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
# nastavenie implicitnej politiky
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
iptables -t nat -P PREROUTING ACCEPT 
iptables -t nat -P POSTROUTING ACCEPT
#
# vypnutie IP forwardingu
echo 0 > /proc/sys/net/ipv4/ip_forward
#
# povolenie loopback 
iptables -A INPUT -i lo -j ACCEPT
#
# povolenie portu 22-SSH zvonku
iptables -A INPUT -m state --state NEW -i eth0 --dport 22 -j ACCEPT
#
# povolenie vstupu uz nadviazanych spojeni a novych len z LAN siete
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! eth0 -j ACCEPT
#
# Zapnutie maskarady pre interny segment
iptables -t nat -A POSTROUTING -s 192.168.58.0/255.255.255.0 / 
-j SNAT --to-source 10.1.58.3
#
# zapnutie forwardingu
iptables -A FORWARD -p tcp -s 192.168.58.0/255.255.255.0 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.58.0/255.255.255.0 -j ACCEPT
#
# zapnutie IP forwardingu
echo 1 > /proc/sys/net/ipv4/ip_forward
Upozorňujem že toto nastavenie firewallu je len základne. O firewalle sa budeme baviť neskôr. Ja som firewall robil až na koniec.

Takže v tomto momente by sme mali mať funkčnú sieť na servery aj v LAN sieti zo základným zabezpečením.

Prípadne pripomienky, chyby alebo vylepšováky píšte do diskusie. Budem rád :))

       

Hodnocení: -

zatím nehodnoceno
        špatnédobré        

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.