DHCP
service dhcpd, dhcp-options
fichiers de conf :
/etc/dhcpd.conf => cf ci dessous
/etc/default/dhcp => selection dfe l'interface
A) pool (range)
range dynamic-bootp 172.23.3.240 172.23.3.244;
client -> DHCP_DISCOVER
DHCP_OFFER <- serveur
client -> DHCP_REQUEST
DHCP_ACK <- serveur
B) adressage statique
host dns {
hardware address xx:xx:xx:xx:xx;
fixed address 172.26.2.2
}
VLAN
commande :
vconfig add eth1 [IDVLAN]
Exemples:
#vconfig add eth1 280
#vconfig add eth1 281
#vconfig add eth1 180
Il faut également configurer les interfaces réseau sur les VLAN.
un exemple de fichier /etc/network/interfaces
auto eth1.280
iface eth1.280 inet static
address 192.168.180.254
netmask 255.255.255.0
auto eth1.281 # obligatoire pour initialiser les interfaces.
iface eth1.281 inet static
address 192.168.181.1
netmask 255.255.255.0
auto eth1.181
iface eth1.181 inet static
address 10.0.11.1
netmask 255.255.255.0
OU :
ifconfig eth1.181 10.0.11.1 netmask 255.255.255.0
Pour
que le routage marche sans avoir à définir des règles de routage entre
les interfaces du routeur, on peut activer le routage de paquets entre
les interfaces:
Pour une modification définitive modifier la variable ip_forward dans /etc/network/options
Pour une modification temporaire, mettre 1 dans le fichier
/proc/sys/net/ipv4/ip_forward
Routage
Routage statique
route add -net [réseau destination] netmask [masque de sous réseau] gw [ip_routeur]
(gw : gateway)
Exemple:
route add -net 192.168.179.0 netmask 255.255.255.0 gw 192.168.180.1
attention aux boucles !!!!
Si 2 routes possible, c'est le metric qui compte.
Routage dynamique Rip
Envoit des tables de routages. On incremente le metric a chaque fois que l'on transfert une route.
On peut le faire avec le paquet "routed"
Mais on utilise ici quagga:
quagga permet aussi d'avoir une interface type routeurs cisco.
Les fichiers de config sont dans /etc/quagga
Il y a debian.conf, daemon, zebra.conf, ripd.conf, ospf.conf.
Il faut parfois créer les fichiers, mais des exemples existent dans /usr/share/doc/quagga.
Il faut prendre le fichier zebra.conf , ripd.conf, activer les services dans daemons.conf.
zebra.conf :
passwd xxxx //pass pour que les autres se connectent
enable passwd xxx // passwd pour l'administration
Zebra : telnet localhost 2601
Ripd : telnet localhost 2602
Quelques commandes:
#show interfaces
#enable //mode admin
#interface eth0 // entrer en mode config de l'interface, bande passante...
#log file /root/logZebra // défini le fichier de log (doit etre créé)
#write // sauver la configuration
#configure terminal
#router rip
#redistribute connected // active la transmission des tables de routage
#network 192.168.181.0/24 //active la transmition de notre table sur ce reseau
#show ip route // montre la liste des routes
#service password_encryption //encryptage des mots de passe
Configurer la partie RIP
#conf t
#router rip
#redistribute connected
#netword 192.168.171.0/24
Firewall IPTABLE
Fichier de configuration
Les
commandes suivantes peuvent être tapées dans le shell, toutefois, dans
la mesure ou l'ordre à une importance, il est plus facile de les mettre
dans un fichier de script.
Il se trouve dans /etc/network/if_pre-up.d/iptables-start
Options de base
3 chaines :
OUPOUT //connexions sortantes
FORWARD // connexions routées
2 traitements:
Politique par defaut
Elle est appliquée si aucune règle ne match le paquet traité:
iptable -P [chaine] [traitement]
Normalement, on la met à la fin du fichier car il est parcouru séquentiellement
Liste des règles
iptable -L [chaine]
ou
iptable --list [chaine]
on peut également rajouter -n à la fin de la commande afin d'éviter d'effectuer une résolution DNS (parfois assez longue).
Ajouter une règle
iptable -A [chaine]
options :
-o [interface sortante]
-s [ip source packet]
-d [ip destination paquet]
-p [protocole niveau 4] // TCP, UDP, ICMP
-dport [port de destination]
-sport [port de source]
-j [ACCEPT|DROP]
Règles sur les connexions établies
Il
est possible de définir une règle qui va systématiquement accepter les
paquets qui sont issus d'une connexion établie. Exemple:
iptable -A [chaine] -m state --state ESTABLISHED -j ACCEPT
Supprimer les règles
Cette commande permet de supprimer toutes les règles pour ne garder que la politique par défaut.
iptable -F
Translation d'adresse
Translation d'adresse source
Avec
ce système, plusieurs machines d'un réseau privé peuvent partager
l'adresse publique du routeur pour envoyer des informations vers
l'extérieur. Toutefois, pour en recevoir, la translation d'adresse
destination doit être mise également en oeuvre.
iptables -A POSTROUTING -t nat -p [tcp|udp] -s [ip source] --dport [port] --to-source [ip publique du routeur] -j SNAT
On appelle aussi cette technique masquerading, ou proxy transparent.
Translation d'adresse destination
Cela
permet a des machines d'un réseau privé de recevoir des informations
depuis un réseau public, en procédant à un mapping [port routeur]
--> [machine : port]
iptables -A PREROUTING -t nat -p [tcp|udp] -d [ip routeur] --dport [port] --to-destination [ip privée destination] -j DNAT
Liste des translations
iptable -L PREROUTING -t nat
iptable -L POSTROUTING -t nat