This is an old revision of the document!
Table of Contents
NAS Home made
Patapouf, c'est mon NAS home made. Il tourne sur Ubuntu 18.04 ➡️ 20.04 ➡️ 22.04.
A l'époque, Debian arrivait en période de freeze et je n'avais pas le courage d'attendre que la période se termine pour installer la machine. J'ai donc pris une Ubuntu - que je ne regrette absolument pas, tant les passages de version me prennent par la main.
Configuration
A part la configuration des disques en LVM et en RAID1, la seule grosse modification concerne les mises à jour automatiques avec `unattended-upgrades` et une petite partie de sécurité :
apt install unattended-upgrades needrestart build-essentials apt install ufw apt install haveged curl git unzip zip apt install rkhunter apt install fail2ban sudo dpkg-reconfigure --priority=low unattended-upgrades
SSHd
Et adaptez les valeurs dans le fichier `/etc/fail2ban/jail.d/defaults-debian.conf`:
[sshd] enabled = true bantime = 3600 maxretry = 3 findtime = 600
UFW
Voir ici : https://www.citizenz.info/firewall-utiliser-ufw-sur-scaleway
On change la politique INPUT par défaut à ACCEPT et non plus DROP $ sudo vim /etc/default/ufw DEFAULT_INPUT_POLICY=“ACCEPT”
2 - On ajoute une règle DROP-ALL à la fin du fichier suivant, juste avant la ligne finale COMMIT : $ sudo vim /etc/ufw/after.rules -A ufw-reject-input -j DROP
3 - On désactive le logging d'UFW. Scaleway n'aime pas trop : $ sudo ufw logging off
4 - On n'oublie surtout pas d'activer SSH pour pouvoir accéder au serveur : $ sudo ufw allow ssh
5 - enfin on active UFW : $ sudo ufw enable
Et ensuite ici :) https://www.citizenz.info/ufw-un-par-feu-facile-a-utiliser-pour-son-serveur
Nginx
apt install nginx apt install certbot certbot certonly --authenticator standalone --installer nginx --email fred@grimbox.be -d grimbox.be -d benjamin.grimbox.be -d cloud.grimbox.be -d nearflagey.be -d alexis.grimbox.be --pre-hook "service nginx stop" --post-hook "service nginx start"
Le certificat généré se trouvera dans /etc/letsencrypt/live.
On peut ensuite renouveller automatiquement le certificat grâce à la commande `cerbot renew`, dont le comportement est décrit dans le fichier `/etc/letsencrypt/renewal/<site>.conf`.
L'autre solution est de reprendre la génération des certificats, de mettre ça dans un fichier `renew-certs.sh` et de le démarrer via un crontab en root:
```cron @monthly /root/renew-certs.sh ```