Table of Contents
Avant de voir le firewall, on va faire un réseau en équipe.
Topologie réseau
192.168.2.51-55 deb.net
#|
machine | nom | services | ||
51 | fw.deb.net | firewall, routeur | ||
52 | www.deb.net et ftp.deb.net | ftp, web | ||
53 | dns.deb.net | dns | ||
54 | mail.deb.net | smtp, imap, pop | ||
55 | proxy.deb.net | apt-proxy, syslog, CA | ||
Nous avions préalablement installé 5 machines. Mais nous avons oublié le mot de passe root.
Comment récupérer le mot de passe root d'une machine?
Dans grub, taper sur e ('edit') sur l'option normale de boot. changer la ligne:
kernel /boot/vmlinuz-2.6.15-1-686 root=/dev/hda2 ro
en:
kernel /boot/vmlinuz-2.6.15-1-686 root=/dev/hda2 rw init=/bin/bash
taper sur b ('boot') et il démarre.
Installations
- .54 (smtp, imap, pop) et .55 (syslog, apt-proxy): Carl & Mohamed
- .52 et .53: Serge & Rafael
Machine .55 : proxy-apt et syslog
Accès:
ssh root@192.168.2.55
Version:
cat /etc/debian_version
C'est sarge: OK.
Changer /etc/apt/sources.list en (on va encore utiliser le serveur apt-proxy de la classe pour l'instant):
deb http://192.168.2.254:9999/debian stable main deb http://192.168.2.254:9999/security stable/updates main deb http://192.168.2.254:9999/security/ sarge/updates main contrib non-free
Mettre la machine à jour:
apt-get update apt-get upgrade
Ensuite, vu qu'il y a un nouveau noyau, il faut rebooter:
reboot
Regarder les services qui tournent: apache.
Retirer les scripts qui démarrent apache2 au boot:
update-rc.d -f apache2 remove
Couper le service:
/etc/init.d/apache2 stop
Regarder la liste des paquets installés:
dpkg --get-selections | grep "install$" > packages_installes.txt less packages_installes.txt
C'est bon.
Le serveur n'est pas à l'heure, on va donc installer ntpdate:
apt-get install ntpdate
La mise à l'heure est automatique.
Syslog
On ne doit rien faire, il tourne. Ce sont les autres machines qui vont avoir leur fichier /etc/syslog.conf mis à jour pour que les logs soient redirigés sur cette machine.
Installation et configuration de apt-proxy
apt-get install apt-proxy
Ensuite, éditer le fichier /etc/apt-proxy/apt-proxy-v2.conf en ajoutant à la fin:
[mysources] backends= http://ftp.debian.skynet.be/ftp/debian/ http://ftp.belnet.be/debian/ http://security.debian.org/
Redémarrer le service:
/etc/init.d/apt-proxy stop /etc/init.d/apt-proxy start
Essayer avec un client: /etc/apt/sources.list doit contenir:
deb http://192.168.2.55:9999/debian/ sarge main deb http://192.168.2.55:9999/security/ stable/updates main
Autorité de certification (CA)
mkdir /root/ca/ cd /root/ca/ /usr/lib/ssl/misc/CA.pl -newca
(appuyer sur 'enter' pour générer une nouvelle clef privée)
Ensuite, on peut attendre les demandes des certificats (.csr) des autres machines.
Pour le serveur mail: www.deb.net:
cd /root/ca/ openssl ca -policy policy_anything -out apache.deb.crt -infiles ../apache.deb.csr
ensuite transférer apache.deb.crt sur l'hôte.
Pour le serveur proftpd:
openssl ca -policy policy_anything -out proftpd.deb.crt -infiles ../proftp.deb.csr
ensuite transférer proftpd.deb.crt et cacert.pem (dans ./demoCA/).
DNS
Maintenant que Jérôme a fini d'installer le serveur DNS, on peut changer /etc/resolv.conf en:
nameserver 192.168.2.53 search deb.net
Tester:
dig dns.deb.net
Machine .54: Serveur mail
Pas moyen d'accéder au serveur apt-proxy (essayé 2 différents). Erreur dans /var/log/proxy-apt.log du serveur:
twisted.internet.error.ServiceNameUnknownError: Service name given as port is unknown: service/proto not found.
Donc, on passe par belnet.
postfix
Serveur smtp.
apt-get install postfix postfix-tls
/etc/postfix/main.cf:
# See /usr/share/postfix/main.cf.dist for a commented, more complete version smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) biff = no # appending .domain is the MUA's job. append_dot_mydomain = no # Uncomment the next line to generate "delayed mail" warnings #delay_warning_time = 4h mydomain = deb.lab myhostname = srv4.deb.net alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = deb.net, localhost.localdomain, localhost.localdomain, localhost relayhost = mynetworks = 192.168.2.0/24 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all
Redémarrer le service:
/etc/init.d/postfix restart
Tester avec un client email (sur le réseau) dont on met le serveur smtp à 192.168.2.54.
Dovecot
apt-get install dovecot-imapd dovecot-pop3d
Générer les certificats pour pop3s et imaps: