Repository 32bit  Forum
Repository 64bit  Wiki

Configurare un DHCP server: differenze tra le versioni

Da Slacky.eu.
 
 
Riga 1: Riga 1:
  +
[[Category:Networking]]
= Introduzione =
= Introduzione =
Questo documento ha come scopo la realizzazione di un server dhcp basato sul sistema operativo Slackware Linux.
Questo documento ha come scopo la realizzazione di un server dhcp basato sul sistema operativo Slackware Linux.
Riga 99: Riga 100:
AUTORE: MDS - <doc.spock@gmail.com>
AUTORE: MDS - <doc.spock@gmail.com>
 
Copyright: "Il presente documento è rilasciato sotto licenza GPL e può essere tranquillamente distribuito mediante qualsiasi mezzo e modificato previa citazione dell'autore.""
 

Versione attuale delle 18:14, 7 set 2006

[modifica] Introduzione

Questo documento ha come scopo la realizzazione di un server dhcp basato sul sistema operativo Slackware Linux. Questa guida è stata realizzata su un sistema Slackware, ma con piccole differenze è facilmante adattabile a tutte le distribuzioni GNU/linux. La configurazione hardware della lan consiste in un pc che fa da gateway verso internet, da server dhcp e firewall ed alcuni client.

[modifica] Topologia della rete

Il computer server possiede ovviamente due schede di rete: eth0, che lo collega alla rete internet, ed eth1 che lo collega alla rete locale, contenente i seguenti indirizzi ip: 192.168.1.0/24 con pool 50-150. Questa configurazione è integrabile con una VPN in ethernet bridging.... consulatate il relativo howto.

[modifica] Configurazione del server dhcp

  1. Creare il file dhcp.leases (nel caso non esistesse):
    touch /var/state/dhcp/dhcpd.leases
    Tale file serve per temporizzare il rilascio dell'ip associato al Mac-Address della scheda.
  2. Modificare il file /etc/dhcpd.conf:
    # dhcpd.conf 
    # 
    # Configuration file for ISC dhcpd (see 'man dhcpd.conf') 
    # 
    # 
    ddns-update-style ad-hoc; 
    subnet 192.168.1.0 netmask 255.255.255.0 { 
    range 192.168.1.50 192.168.1.150; 
    default-lease-time 604800; # una settimana 
    max-lease-time 2592000; # 30 giorni 
    option subnet-mask 255.255.255.0; 
    option broadcast-address 192.168.1.255; 
    option routers 192.168.1.1; 
    option domain-name-servers 213.156.54.80; 
    option domain-name "fastwebnet.it"; 
    }
  3. Modificare il file /etc/resolv.conf per settare il DNS: questo serve per consentire un corretto accesso a internet da parte della rete lan (io ho fastweb quindi scrivo nella seguente maniera):
    nameserver 213.156.54.80 
    nameserver 213.156.54.81 
    search fastwebnet.it 
    
  4. Dare un Ip statico al Gateway, alzare il Firewall e attivare il server dhcp. Io lo faccio con uno script:
    #! /bin/bash 
    
    IP=MIO IP 
    INT_RETE_ESTERNA=eth0 
    INT_RETE_INTERNA=eth1 
    IP_ACCETTA1=MACCHINA ESTERNA TRUSTED 1 #(Amici lontani) 
    IP_ACCETTA2=MACCHINA ESTERNA TRUSTED 2 #(Amici lontani) 
    LANIN=192.168.1.0/24 
    
    
    ################# SEZIONE GATEWAY ####################### 
    echo 1 > /proc/sys/net/ipv4/ip_forward 
    iptables -t nat -A POSTROUTING -o $INT_RETE_ESTERNA -j MASQUERADE 
    ifconfig $INT_RETE_INTERNA 192.168.1.1 netmask 255.255.255.0 up 
    dhcpd $INT_RETE_INTERNA 
    
    ################ SEZIONE FIREWALL FILTRANTE ############# 
    echo 1 > /proc/sys/net/ipv4/tcp_syncookies #contro il syn flood 
    echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter #contro Ip spoofing 
    
    
    iptables -F 
    iptables -P INPUT DROP 
    iptables -P OUTPUT ACCEPT 
    iptables -P FORWARD DROP 
    
    
    #SEZIONE INPUT 
    
    iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -i lo -j ACCEPT 
    iptables -A INPUT -p all -s $IP_ACCETTA1 -j ACCEPT 
    iptables -A INPUT -p all -s $IP_ACCETTA2 -j ACCEPT 
    iptables -A INPUT -i $INT_RETE_INTERNA -j ACCEPT 
    iptables -A INPUT -i $INT_RETE_ESTERNA -p all -m state --state ESTABLISHED,RELATED -j ACCEPT 
     
    
    
    #SEZIONE FORWARD PER LA LAN 
    
    iptables -A FORWARD -i $INT_RETE_INTERNA -p all -s $LANIN -d $LANIN -j ACCEPT 
    iptables -A FORWARD -s $LANIN -d 0/0 -j ACCEPT 
    iptables -A FORWARD -s 0/0 -d $LANIN -p tcp --syn -j DROP 
    iptables -A FORWARD -s 0/0 -d $LANIN -j ACCEPT 
    

Ovviamente questa è una possibile configurazione, fatta a mio gusto. Soprattutto la parte riguardante il firewall filtrante è fortemente personalizzabile, qui è stato solo riportato un esempio.

Se notate errori nella guida vi prego di segnalarmeli in pubblico o in privato. Ovviamente garanzia: NO WARRANTY.... non mi riterrò responsabile per qualsiasi accadimento collegato a questo howto. Usate queste informazioni a vostro rischio e pericolo.


AUTORE: MDS - <doc.spock@gmail.com>

Strumenti personali
Namespace

Varianti