User Tools

Site Tools


infra:serveurs:sonic

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
infra:serveurs:sonic [2023-11-08 21:06] – removed - external edit (Unknown date) 127.0.0.1infra:serveurs:sonic [2023-11-08 21:41] (current) – update ToM
Line 1: Line 1:
 +====== 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 =====
 +
 +<WRAP info>Cette section décrit l'installation initiale.</WRAP>
 +
 +==== Roadmap ====
 +
 +  * <del>Arrivée de la fibre</del>
 +  * <del>Test pour se passer de la livebox</del>
 +  * <del>installation du serveur (base sonicemotion)</del>
 +  * 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 : <code>
 +# 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"
 +</code>
 +  - Ajout du chargement automatique du module vlan au démarrage : <code># /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
 +</code>
 +  - Ajout du fichier ''/etc/ppp/peers/orange'' qui définit la connexion à établir : <code>
 +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</code> 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'' <code>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
 +</code>
 +  - Ajout des règles netfilter dans un fichier ''/etc/netfilter.sh'' <code bash>
 +#!/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
 +</code> Sans oublier de le rendre exécutable ''chmod a+x /etc/netfilter.sh''
 +  - Configurer le serveur DHCP ''/etc/dhcp/dhcpd.conf'' : <code>
 +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;
 +}
 +</code>
 +
 +Relancer tout !
 +
 +À suivre : configuration exim4/mailman/lighttpd/let'encrypt/...
 +