**Ceci est une ancienne révision du document !**
Configuration réseau et du serveur SSH de la VM
Configuration réseau
Si jamais la configuration réseau semble être écrasée par une configuration IPv6, il est nécessaire de supprimer le paquet rdnssd
qui fait du DNS discovery pour l’IPv6. Inutile, tant que nos infra ne supportent pas IPv6, et casse la configuration DNS statique :
apt-get purge rdnssd
Modification du fichier /etc/resolv.conf
pour ajouter les serveurs DNS de Tetaneutral :
search picasoft.net nameserver 91.224.148.10 nameserver 91.224.149.254
On édite le fichier /etc/network/interfaces
:
source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 allow-hotplug eth0 # On dit au système que l'on souhaite configurer l'interface eth0 à la main iface eth0 inet manual
Dans le fichier /etc/rc.local
nous devons ajouter la configuration suivante (en veillant à bien remplacer <ip de la machine>
par l’IP que l’on souhaite attribuer à la machine) :
# On attend 3 secondes au boot pour être sûr d'avoir les interfaces réseau sleep 3 # On allume l'interface eth0 ip link set eth0 up # On ajoute l'IP sur l'interface eth0 ip addr add <ip de la machine> dev eth0 # On ajoute la route par défaut vers le routeur de Tetaneutral ip route add default via 91.224.148.0 dev eth0 onlink exit 0
Configuration SSH
- Création des répertoires/fichiers qui vont bien pour les clefs SSH :
mkdir -p /root/.ssh/ touch /root/.ssh/authorized_keys
- Ajouter les clés SSH
Pour ajouter votre clé, exécutez: ssh-copy-id root@IP-de-la-machine
Remarque:
Afin de copier la clef SSH sur la machine, on active temporairement l’accès SSH par mot de passe. Via le VNC, on éditer le fichier /etc/ssh/sshd_config
pour remplacer
PermitRootLogin without-password
par
PermitRootLogin yes
De manière à pouvoir effectuer nos ssh-copy-id
facilement.
De cette manière il est possible de faire la copie de clef SSH via SSH. Une fois que l’accès par clef fonctionne pour la machine, on remet la directive suivante dans le fichier /etc/ssh/sshd_config
, par mesure de sécurité :
PermitRootLogin without-password
Patch pour les cgroups sous Debian
Une fois la configuration réseau et le serveur SSH configurés, il faut faire en sorte que Debian prenne en compte les cgroups. Pour se faire, il faut éditer le fichier /etc/default/grub
et changer la ligne:
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
en
GRUB_CMDLINE_LINUX_DEFAULT="quiet cgroup_enable=memory swapaccount=1"
Firewall
Pour filtrer les accès au strict minimum sur les machines de Picasoft, on utilise un firewall. Cela permet par exemple de n’autoriser les accès aux sondes de monitoring que par le serveur de monitoring.
Pour cela on utilise ufw qui est un firewall assez simple à utiliser.
On commence par l’installer:
apt-get install ufw
On peut ensuite définir des règles d’accès. Par exemple ici des règles de bases que l’on a sur toutes les machines :
# Autorisation du SSH ufw allow in 22 # Autorisation de HTTP/S ufw allow in 80 ufw allow in 443 # On ouvre la socket Docker sur le réseau ufw allow in 2376 # Autorisation d'accès au serveur de monitoring sur le Prometheus node-exporter ufw allow proto tcp from 91.224.148.61 to any port 9100 ufw allow proto tcp from 2a03:7220:8080:3d00::1 to any port 9100
Enfin on définie une politique d’accès par défaut (fermé en entrée, ouvert en sortie) et on active ufw.
ufw default deny ufw default allow outgoing ufw enable