diff --git a/_posts/2020-04-26-security.markdown b/_posts/2020-04-26-security.markdown new file mode 100644 index 0000000..fe12db5 --- /dev/null +++ b/_posts/2020-04-26-security.markdown @@ -0,0 +1,18 @@ +--- +layout: post +title: "La sécurité @ allella" +date: 2020-04-26 +categories: [technique, securite, web, outils] +excerpt_separator: +--- + +Quand on met à disposition des services sur un serveur, une des étapes importantes c'est la sécurité ; ça passe par plusieurs points : +* un serveur stable et à jour : on a fait le choix d'utiliser un système d'exploitation Linux, en occurence Debian Buster (10), +en appliquant régulièrement [les mises-à-jour proposées](https://lists.debian.org/debian-security-announce/) +* un système anti-ddos : OVH fait le taff pour nous :) +* un système anti-bruteforce : fail2ban est notre ami pour plusieurs services internes (SSH, postfix, ...) +* une réflexion sur chaque service interne : installation depuis un paquet Debian, via Docker ou via les sources ? exposition sur Internet ? +communications internes sécurisées ? +* de la veille régulière + +On utilise aussi des outils externes qui fonctionnent comme des mini-audits comme par exemple [Observatory de Mozilla](https://observatory.mozilla.or). diff --git a/_posts/2020-05-12-email_autoconfig.markdown b/_posts/2020-05-12-email_autoconfig.markdown new file mode 100644 index 0000000..7dba889 --- /dev/null +++ b/_posts/2020-05-12-email_autoconfig.markdown @@ -0,0 +1,67 @@ +--- +layout: post +title: "email - autodiscover / autoconfig" +date: 2020-04-26 +categories: [technique, securite, web, outils] +excerpt_separator: +--- + +Je n'avais pas ~~eu~~ pris le temps de mettre en place les configurations nécessaires permettant aux différents clients +de messagerie (bureau / mobile) de récupérer automatiquement l'adresse du serveur, les ports, les protocoles, ... + +## Ca marche comment ? + +Lorsqu'on souhaite lire ses emails ailleurs que sur son navigateur Internet, on ouvre son client de messagerie préféré et +on suit les différentes étapes ; il y a alors 2 solutions, soit le client arrive à "récupérer" la configuration liée au +domaine de messagerie, soit vous êtes obligé de le faire manuellement .. + +L'idée est bien de se faciliter la vie :) Mais comme tout n'est pas simple, chaque client utilise un des mécanismes suivants : +* une base de données ISPB gérée par Mozilla ; +* deux fichiers de configuration mis à disposition en HTTPs ; +* des entrées DNS sur la zone du domaine ; +* la devinette, le client essaye de combiner smtp ou imap avec le nom de domaine de votre messagerie ; + +## On met quoi en place ? + +Du coup pour pouvoir répondre aux demandes de tous les clients de messagerie, on va commencer par rajouter les entrées DNS suivantes : +```bash +@ IN MX 10 mail.allella.io. +autoconfig IN CNAME www +autodiscover IN CNAME www +_imaps._tcp SRV 0 1 993 mail.allella.io. +_submission._tcp SRV 0 1 465 mail.allella.io. +_autodiscover._tcp SRV 0 0 443 autodiscover.allella.fr. +``` + +On met à disposition aussi les fichiers de configuration en se basant sur [cette proposition](https://github.com/gronke/email-autodiscover). +On clone le repo dans un répertoire local sur le serveur, on adapte les fichiers pour sa configuration et on inclut ce bloc pour chaque domaine. +```bash +/etc/nginx/conf.d/local$ cat autodiscover.conf +location ~ /(?:a|A)utodiscover/(?:a|A)utodiscover.xml { + root /var/www; + try_files /autodiscover/autodiscover.php =404; + fastcgi_pass unix:/run/php/php7.3-fpm.sock; + fastcgi_param PATH_INFO $path_info; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param SERVER_ADDR ""; + fastcgi_param REMOTE_ADDR $http_x_real_ip; +} + +location ~ /mail/config-v1.1.xml { + root /var/www; + try_files /autodiscover/config-v1.1.xml =404; +} + +/etc/nginx/sites-enabled$ cat allella.fr +server { + listen 443; + server_name allella.fr www.allella.fr; + + include /etc/nginx/conf.d/local/autodiscover.conf; +[...] +} +``` + +Et voilà, une fois l'adresse ajoutée, Thunderbird trouve tout seul sa configuration : + +![thunderbird_autoconfig]({{ site.baseurl }}/assets/images/thunderbird_autoconfig.png) \ No newline at end of file diff --git a/assets/images/thunderbird_autoconfig.png b/assets/images/thunderbird_autoconfig.png new file mode 100644 index 0000000..7428a32 Binary files /dev/null and b/assets/images/thunderbird_autoconfig.png differ