En effet, et surtout quand tu n'arrives pas à configurer correctement Exim pour faire ce job
(Je sais pas pourquoi, mais Exim a toujours refusé de s'authentifier auprès d'OVH, et voulait l'utiliser en tant que relais !!). Pour fail2ban, je sais que l'objectif n'est pas le même que le firewall, mais je ne l'utilisais que pour SSH, alors j'ai juste mis une règle 5 connexions TCP/60 secondes sur SSH, et je m'en vais de ce pas configurer un délai de quelques secondes sur PAM pour l'authentification, ça devrait fortement limiter les tentatives par brute-force [edit : ok, y a déjà 3 secondes de délai...]
J'ai fait pas mal de chipotages sur le VPS aujourd'hui, et ça commence doucement à prendre forme. J'ai un peu galéré avec Nginx (notamment pour gérer du PHP dans un sous-répertoire (coté client) qui n'est pas dans un sous-répertoire (coté serveur)). Ca m'a permis de voir que, comme d'habitude, ce que je veux faire est facile, mais sujet à un bug (connu depuis près de 3 ans, toujours pas solutionné. Pour l'info, c'est le try_files $uri qui foire en cas d'usage d'alias au lieu de root).
Hier soir, j'ai galéré avec ufw pour configurer iptables. Une fois que tout était fini, et que j'ai voulu tester, ça a bien foiré. Pourquoi ? Parce que ufw n'apprécie pas d'être dans openvz sans certains modules... Moralité : je me suis tapé une grosse partie de la doc d'iptables pour faire la configuration "à la main". Cela dit, je suis plutôt content du résultat. Si y a un expert firewall dans le coin, j'aimerai montrer les règles histoire d'avoir un retour là-dessus, parce que je suis un peu noob dans ce domaine
(et je suppose qu'il vaut mieux, pour une question de sécurité, ne pas publier ces règles ici, sauf si elles sont parfaites
)
J'ai fini l'optimisation du serveur MariaDB. C'est un peu "too much" pour Lexpage, mais ce n'est pas grave. Coté Gunicorn/Nginx, je n'ai pas fait grand chose. La configuration d'Nginx est la version par défaut. Je bloque juste au niveau d'iptables à 20 connexions TCP par 10 ou 15 secondes (j'ai testé 20/20 mais c'est un peu extrême quand on est plusieurs derrière un NAT). Pour Gunicorn, j'ai mis 2 workers en sync pour l'instant, sans preload (comme ça je peux changer le code du site sans devoir relancer gunicorn). On verra si ça tient la route, mais je suppose que oui, vu le temps de réponse très très faible.