# Plan des opérations à effectuer suivant l'utilisation de notre serveur

## Etat des lieux

* sur les dédies/vps, le hostname est celui donné par OVH (ou autre pour vous) et est souvent un nom cabalistique, en tous les cas, pas celui que vous voulez.
* le serveur SSH est troué (pas vraiment, simplement, il garde une compatibilité avec des protocoles anciens plus très sûrs).... voilà le résultat sur le serveur brut de fonderie (j'utilise l'adresse IPV6 pour qu'il soit accessible de l'extérieur par le site: [audit ssh](https://www.ssh-audit.com/):

    Récupération de l'adresse IPV6 de notre serveur:

        eric@aldebaran:~$ ssh ericadmin@192.168.111.49
        ericadmin@192.168.111.49's password: 
        Linux aijan 4.19.0-13-amd64 #1 SMP Debian 4.19.160-2 (2020-11-28) x86_64

        The programs included with the Debian GNU/Linux system are free software;
        the exact distribution terms for each program are described in the
        individual files in /usr/share/doc/*/copyright.

        Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
        permitted by applicable law.
        Last login: Fri Jan 15 16:05:04 2021 from 192.168.111.150
        ericadmin@aijan:~$ ip a
        1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
            link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
            inet 127.0.0.1/8 scope host lo
            valid_lft forever preferred_lft forever
            inet6 ::1/128 scope host 
            valid_lft forever preferred_lft forever
        2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
            link/ether 38:ea:a7:a6:cf:93 brd ff:ff:ff:ff:ff:ff
            inet 192.168.111.49/24 brd 192.168.111.255 scope global dynamic enp2s0
            valid_lft 37374sec preferred_lft 37374sec
            inet6 2a01:e0a:d0:3c20:3aea:a7ff:fea6:cf93/64 scope global dynamic mngtmpaddr 
            valid_lft 85928sec preferred_lft 85928sec
            inet6 fe80::3aea:a7ff:fea6:cf93/64 scope link 
            valid_lft forever preferred_lft forever
        ericadmin@aijan:~$ 

    L'adresse est: 2a01:e0a:d0:3c20:3aea:a7ff:fea6:cf93

    Résultat de l'analyse (mauvais...)

    ![Résultat 1](../../Images/tutobuster/audit-buster-1.png)
    ![Résultat 2](../../Images/tutobuster/audit-buster-2.png)
    ![Résultat 3](../../Images/tutobuster/audit-buster-3.png)
    ![Résultat 4](../../Images/tutobuster/audit-buster-4.png)

    C'est la même chose pour les dédiés et les vps.

    * nos serveurs "at home" ont une adresse **ip** donnée par **dhcp** donc non fixe, en IPV4 et IPV6: à fixer!
    * Pas de firewall
    * pas de protection contre les attaques de force brute

## Opérations communes 

    Pour tous nos serveurs, il y a des opérations communes à toutes les utilisations.

    * Mise à jour du **hostname** et de **/etc/hosts**
    * Sécurisation de **ssh** et de **sshd**
    * Sécurisation des mots de passe
    * Configuration du réseau
    * Installation d'un serveur de temps
    * Installation d'un pare-feux
    * Installation de fail2ban contre les attaques de force brute

## Opérations particulières

    Ensuite, l'installation de logiciels et leur configuration dépendra de l'usage auquel on réserve notre serveur:

    * serveur **DNS** (knot)
    * serveur **web** (apache)
    * serveur **mail** (postfix, dovecot)
    * serveur **git** (gogs)

    Des services pourront être ajoutés comme:

    * service de partage d'images (lufi)
    * serveur de partage de fichiers
    * serveur IRC
    * réseaux sociaux comme xmpp, matrix, mastodon, hubzilla, etc ...
    * serveur de mots de passe (bitwarden-rs)


## Nos données (ce que nous voulons):

* adresse IPV4 de notre serveur: 192.168.111.240
* adresse IPV6 de notre serveur: 2a01:e0a:d0:3c20::240
* hostname: aijan.yojik.net
* une unique porte d'entrée par **ssh** sur le port 22 (mais vous pouvez opter pour une autre adresse si vous voulez)
* un firewall
* une protection contre les attaques de force brute (fail2ban)
* un serveur de temps pour une horloge à l'heure
* des mots de passe sûrs (celui que j'ai indiqué à l'installation est temporaire, pour faciliter ma connexion, et ceux de OVH sont donnés par émail si vous n'avez pas opté pour la connexion par clef)

Commençons par les premières étapes de sécurisation.

