Projet

Général

Profil

SrvSTG » Historique » Version 2

« Précédent - Version 2/9 (diff) - Suivant » - Version actuelle
Ludovic Pouzenc, 07/12/2014 14:18


Serveur stg.tetaneutral.net

Caractéristiques

  • Gigabyte Brix (CPU Celeron)
  • Samsung SSD 840 EVO 120GB
  • Debian 7 amd64

Traces Install

A partir d'une clé USB bootable Debian 7 amd64

Options d'installation

  • hostname initial : stg2 (changé en stg par la suite)
  • partman : partition par defaut sur tout le disque sda
  • grub : par défaut, sur sda
  • tasksel : decocher interface graphique et cocher serveur ssh
  • popcon : non

Premières configs

# Dépendances requises
apt-get install sudo vlan conntrack ntp fail2ban
# Utilitaires
apt-get install rsync vim emacs23-nox iftop htop screen ntpdate powertop molly-guard sysstat strace tcpdump

update-alternatives --config editor
#-> choisir vim.basic

# Création de tous les users
adduser nicolas sudo
adduser ludovic
adduser ludovic sudo
# [...]
  • Modification du /root/.bashrc pour dé-commenter les alias et les couleurs

Modification du partitionnement

  • Une meilleure option était de faire directement le bon paramétrage avec l'assistant partman de l'installeur Debian
    root@stg2:~# smartctl -a /dev/sda
    Device Model:     Samsung SSD 840 EVO 120GB
    [...]
    
    root@stg2:~# fdisk -l /dev/sda
    
    Disque /dev/sda : 120.0 Go, 120034123776 octets
    255 têtes, 63 secteurs/piste, 14593 cylindres, total 234441648 secteurs
    Unités = secteurs de 1 * 512 = 512 octets
    Taille de secteur (logique / physique) : 512 octets / 512 octets
    taille d'E/S (minimale / optimale) : 512 octets / 512 octets
    Identifiant de disque : 0x000b8647
    
    Périphérique Amorce  Début        Fin      Blocs     Id  Système
    /dev/sda1   *        2048    19531775     9764864   83  Linux
    /dev/sda2        19533822   234440703   107453441    5  Étendue
    /dev/sda5        19533824    28186623     4326400   82  partition d'échange Linux / Solaris
    /dev/sda6        28188672   234440703   103126016   83  Linux
    
  • Sauver le contenu de /home
  • Démonter /home (ne pas avoir son shell dedans...)
  • Restaurer le contenu de /hoem dans /home (donc dans la partition racine)
  • Détruire la partition correspondante. Idem pour le swap.
  • Créer une partition primaire de la taille de l'espace restant pour /var
    root@stg2:~# fdisk -l /dev/sda
    
    Disque /dev/sda : 120.0 Go, 120034123776 octets
    255 têtes, 63 secteurs/piste, 14593 cylindres, total 234441648 secteurs
    Unités = secteurs de 1 * 512 = 512 octets
    Taille de secteur (logique / physique) : 512 octets / 512 octets
    taille d'E/S (minimale / optimale) : 512 octets / 512 octets
    Identifiant de disque : 0x000b8647
    
    Périphérique Amorce  Début        Fin      Blocs     Id  Système
    /dev/sda1   *        2048    19531775     9764864   83  Linux
    /dev/sda2        19531776   234441647   107454936   83  Linux
    
  • Virer /home et swap dans le fstab
  • Rebooter (pour prise en compte des partitions)
  • Formatter /dev/sda2 en ext4
  • Copier /var dedans
  • Mettre à jour le fstab (sda2 -> var)
  • Reboot

Tuning SSD

  • Options de montage ext4 dans fstab : errors=remount-ro,noatime,discard,commit=300
  • Scheduler deadline de manière persistante
    (confère le fichier /etc/udev/rules.d/60-ssd-scheduler.rules)
  • Swapiness minimal (le OOM killer sera + sensible mais pas d'IO dans tous les sens)
    (confère le fichier /etc/sysctl.d/ssd.conf)

Autres paramètres kernel

  • Éviter de logguer les messages "UDP bad checksum..." pendant les flood UDP
  • Désactiver les ICMP source route
  • Activer l'IP forward au boot (si des choses partent en vrac après le démarrage... on a au moins déjà ça d'actif)
    (confère le fichier /etc/sysctl.d/router.conf)
    (Laurent Guerby recommande plutôt de rassembler tout ce qui est réseau dans /root/tetaneutral.sh)

Config réseau

  • Le NUC n'a qu'une interface réseau, donc tout part sur la base de VLANs
    (confère /etc/network/interfaces)
  • Changer le /etc/hostname : stg
  • Utiliser /etc/debian_chroot pour éviter les confusions des machines
  • Mettre l'IP publique dans /etc/hosts (car sinon résolution de stg pourrie chez les adhérents)
    91.224.148.7    stg.tetaneutral.net     stg
    

    (NUC)root@stg2:~# cp /etc/hosts /etc/hosts_system
    * Vérifier que le FQDN fonctionne
    (NUC)root@stg2:~# hostname
    stg
    (NUC)root@stg:~# hostname --fqdn
    stg.tetaneutral.net