====== Sonic : services internet FUZ ====== **sonic** est un serveur qui a beaucoup souffert. Né dans le lieu précédent (rue de la Réunion), ce serveur a servi un peu à tout : partage de connexion internet, serveur mail et mailing lists, serveur web, serveur MPD, ... Depuis, beaucoup de choses ont changé : ce serveur ne fait quasiment plus que [[infra:mpd|serveur MPD]]. * Localisation : local du FUZ, paillasse centrale, colonne de gauche, celui du dessus :-) * CPU: * RAM: * HDD: * Connexion : au routeur/switch du FUZ * IP/DNS: ''192.168.1.20'' (fixé dans la Freebox) / ''sonic'' ===== Installation initiale ===== Cette section décrit l'installation initiale. ==== Roadmap ==== * Arrivée de la fibre * Test pour se passer de la livebox * installation du serveur (base sonicemotion) * Upgrade vers Debian 11 Bullseye * Fix le RDNS ''sonic.fuz.re'' qui pointe toujours rue de la Réunion ==== Installation ==== - Installation debian stretch (amd64) - Ajout des paquets ''ppp vlan (et vim bash-completion etc)'' - Ajout du fichier ''/etc/udev/rules.d/70-persistent-net.rules'' pour avoir des noms de périphérique réseau compréhensibles : # Port du haut SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:25:90:3b:e5:b2", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="*", NAME="wan0" # Port du bas SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:25:90:3b:e5:b3", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="*", NAME="lan0" - Ajout du chargement automatique du module vlan au démarrage : # /etc/modules: kernel modules to load at boot time. # # This file contains the names of kernel modules that should be loaded # at boot time, one per line. Lines beginning with "#" are ignored. 8021q - Ajout du fichier ''/etc/ppp/peers/orange'' qui définit la connexion à établir : user "fti/******" pty "/usr/sbin/pppoe -I wan0.835 -T 80 -m 1452" noipdefault defaultroute hide-password replacedefaultroute persist noauth usepeerdns lcp-echo-interval 20 lcp-echo-failure 3 plugin rp-pppoe.so wan0.835 default-asyncmap noaccomp mtu 1492 et la ligne avec le mot de passe correspondant au login utilisé dans ''/etc/ppp/pap-secrets'' et ''chap-secrets'' - Configuration du réseau dans ''/etc/network/interfaces'' auto wan0 wan0.835 ppp0 lan0 iface wan0 inet manual iface wan0.835 inet manual iface ppp0 inet ppp provider orange iface lan0 inet static address 192.168.42.1/24 - Ajout des règles netfilter dans un fichier ''/etc/netfilter.sh'' #!/bin/bash echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts #Drop ICMP echo-request messages sent to broadcast or multicast addresses echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route #Drop source routed packets echo 1 > /proc/sys/net/ipv4/tcp_syncookies # Enable TCP SYN cookie protection from SYN floods echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects # Don't accept ICMP redirect messages echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects # Don't send ICMP redirect messages echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter # Enable source address spoofing protection echo 1 > /proc/sys/net/ipv4/conf/all/log_martians # Log packets with impossible source addresses # Flush all chains iptables --flush ip6tables --flush # stop routing echo 0 > /proc/sys/net/ipv4/ip_forward # Flush iptables -F iptables -t nat -F OUT="ppp0" echo "Utilisation de $OUT" # Allow unlimited traffic on the loopback interface /sbin/iptables -A INPUT -i lo -j ACCEPT /sbin/iptables -A OUTPUT -o lo -j ACCEPT # Accepte les paquets des sessions deja etablies /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # Allow unlimited outbound traffic /sbin/iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT /sbin/iptables -A FORWARD -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT # Disallow NEW and INVALID incoming or forwarded packets from $OUT. iptables -A INPUT -i $OUT -m state --state NEW,INVALID -j DROP iptables -t nat -A POSTROUTING -o $OUT -j MASQUERADE iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu # Turn on IP forwarding echo 1 > /proc/sys/net/ipv4/ip_forward Sans oublier de le rendre exécutable ''chmod a+x /etc/netfilter.sh'' - Configurer le serveur DHCP ''/etc/dhcp/dhcpd.conf'' : option domain-name "fuz.re"; Option domain-name-servers 80.67.169.12, 80.67.169.40; # https://www.fdn.fr/actions/dns/ ## LAN0 subnet 192.168.42.0 netmask 255.255.255.0 { range 192.168.42.42 192.168.42.254; option subnet-mask 255.255.255.0; option broadcast-address 192.168.42.255; option routers 192.168.42.1; } Relancer tout ! À suivre : configuration exim4/mailman/lighttpd/let'encrypt/...