1 |
- {"config":{"lang":["en"],"min_search_length":3,"prebuild_index":false,"separator":"[\\s\\-]+"},"docs":[{"location":"","text":"R\u00e9sum\u00e9 Objectif Les serveurs DNS sont le nerf de la guerre : sans eux, pas d'Internet. Ils assurent la correspondance nom-de-machine \u2b04 adresse IP. Il est toujours possible d'utiliser les serveurs DNS du fournisseur de noms de domaine, mais avoir le sien propre permet d'ajouter des options qui ne sont pas toujours disponibles de primeabord: dane , dnssec . Cela permet aussi d'impl\u00e9menter des solutions qui sont exp\u00e9rimentales, comme doh et dot . Celles-ci permettent une meilleure anonymisation des requ\u00eates. Nous allons suivre le m\u00eame plan que pour nos autres serveurs, avec les sp\u00e9cificit\u00e9s des VPS . Table des mati\u00e8res Pr\u00e9sentation Commande du VPS Premi\u00e8re connexion \u00c9tat des lieux S\u00e9curisation ssh Installation d'un serveur de temps : ntp Installation d'une protection contre les attaques de force brute : fail2ban Installation d'un programme de surveillance : logwatch Installation d'un serveur de courrier basique : postfix Installation d'un serveur principal DNS : knot Installation d'un serveur DNS secondaire : toujours knot","title":"R\u00e9sum\u00e9"},{"location":"#resume","text":"","title":"R\u00e9sum\u00e9"},{"location":"#objectif","text":"Les serveurs DNS sont le nerf de la guerre : sans eux, pas d'Internet. Ils assurent la correspondance nom-de-machine \u2b04 adresse IP. Il est toujours possible d'utiliser les serveurs DNS du fournisseur de noms de domaine, mais avoir le sien propre permet d'ajouter des options qui ne sont pas toujours disponibles de primeabord: dane , dnssec . Cela permet aussi d'impl\u00e9menter des solutions qui sont exp\u00e9rimentales, comme doh et dot . Celles-ci permettent une meilleure anonymisation des requ\u00eates. Nous allons suivre le m\u00eame plan que pour nos autres serveurs, avec les sp\u00e9cificit\u00e9s des VPS .","title":"Objectif"},{"location":"#table-des-matieres","text":"Pr\u00e9sentation Commande du VPS Premi\u00e8re connexion \u00c9tat des lieux S\u00e9curisation ssh Installation d'un serveur de temps : ntp Installation d'une protection contre les attaques de force brute : fail2ban Installation d'un programme de surveillance : logwatch Installation d'un serveur de courrier basique : postfix Installation d'un serveur principal DNS : knot Installation d'un serveur DNS secondaire : toujours knot","title":"Table des mati\u00e8res"},{"location":"Commande-vps/","text":"Commande des VPS Plusieurs \u00e9tapes sont n\u00e9cessaires : choisir son fournisseur : pour moi, OVH; choisir son VPS : j'ai pris des VPS de base avec 20 Go d'espace de stockage; choisir sa distribution Linux : j'ai pris Debian comme d'habitude; payer. Il vous sera envoy\u00e9 les identifiants/mot de passe pour vous connecter. Vous pouvez aussi chosir une connexion par clefs SSH au moment de l'installation. Il y a d\u00e9j\u00e0 une clef sur mon compte pour mes autres machines, et je veux des clefs s\u00e9par\u00e9es maintenant, donc j'ai choisi d'installer moi-m\u00eame ma clef. La proc\u00e9dure sera en gros la m\u00eame quelque soit le fournisseur choisi.","title":"Commande du VPS"},{"location":"Commande-vps/#commande-des-vps","text":"Plusieurs \u00e9tapes sont n\u00e9cessaires : choisir son fournisseur : pour moi, OVH; choisir son VPS : j'ai pris des VPS de base avec 20 Go d'espace de stockage; choisir sa distribution Linux : j'ai pris Debian comme d'habitude; payer. Il vous sera envoy\u00e9 les identifiants/mot de passe pour vous connecter. Vous pouvez aussi chosir une connexion par clefs SSH au moment de l'installation. Il y a d\u00e9j\u00e0 une clef sur mon compte pour mes autres machines, et je veux des clefs s\u00e9par\u00e9es maintenant, donc j'ai choisi d'installer moi-m\u00eame ma clef. La proc\u00e9dure sera en gros la m\u00eame quelque soit le fournisseur choisi.","title":"Commande des VPS"},{"location":"Premi%C3%A8re-configuration/","text":"Premi\u00e8res configurations Nous avons vu qu'il y a des \u00e9l\u00e9ments \u00e0 configurer : hostname le hostname se configure dans 2 fichiers, /etc/hosts et /etc/hostname . Comme d\u00e9j\u00e0 vu dans les autres tutoriels, le hostname sous Debian se configure dans ces 2 fichiers. J'ai choisi le nom ns1 pour cette premi\u00e8re machine (j'ai lou\u00e9 un deuxi\u00e8me vps pour servir de serveur dns secondaire). Je modifie le nom situ\u00e9 dans /etc/hostname pour ns1 (avec mon \u00e9diteur texte.) Modification du fichier /etc/hosts : Le fichier /etc/hosts ainsi que le fichier .etc/hostname sont g\u00e9r\u00e9s par le programme cloud. Il faut donc, en suivant les recommandations ici recommandations modifier le fichier /etc/cloud/cloud.conf . 2 lignes sont \u00e0 modifier: preserve_hostname: true manage_etc_hosts: false Ensuite nous pouvons modifier /etc/hostname et /etc/hosts debian@vps-0c47118c:~$ sudo vim /etc/hostname debian@vps-0c47118c:~$ cat /etc/hostname ns1 debian@vps-0c47118c:~$ debian@vps-0c47118c:~$ sudo vim /etc/hosts debian@vps-0c47118c:~$debian@ns1:~$ sudo cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters 127.0.1.1 ns1.yojik.eu ns1 debian@ns1:~$ On red\u00e9marre le vps pour qu'il prenne en compte nos modifications. debian@vps-0c47118c:~$ sudo systemctl reboot debian@vps-0c47118c:~$ Connection to ns1.yojik.eu closed by remote host. Connection to ns1.yojik.eu closed. eric@aldebaran:~$ Et on se reconnecte. Test : debian@ns1:~$ hostname ns1 debian@ns1:~$ hostname -f ns1.yojik.eu debian@ns1: Voil\u00e0 notre hostname de configur\u00e9. configuration de l'adresse IPV6 Cel\u00e0 se fait dans votre serveur DNS. J'ai ajout\u00e9 la ligne suivante dans mon fichier de zone (et incr\u00e9ment\u00e9 le compteur.) ns1 IN A 51.210.247.149 ns1 IN AAAA 2001:41d0:404:200::6d3d Test sur le serveur DNS : root@adara:/home/ericadmin# dig @localhost ns1.yojik.eu ; <<>> DiG 9.10.3-P4-Debian <<>> @localhost ns1.yojik.eu ; (2 servers found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20668 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 5 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ns1.yojik.eu. IN A ;; ANSWER SECTION: ns1.yojik.eu. 86400 IN A 51.210.247.149 Test IPV6: ;; ANSWER SECTION: ns1.yojik.eu. 86400 IN AAAA 2001:41d0:404:200::6d3d Voil\u00e0, tout est bon pour cette partie.","title":"Premi\u00e8re configuration"},{"location":"Premi%C3%A8re-configuration/#premieres-configurations","text":"Nous avons vu qu'il y a des \u00e9l\u00e9ments \u00e0 configurer : hostname le hostname se configure dans 2 fichiers, /etc/hosts et /etc/hostname . Comme d\u00e9j\u00e0 vu dans les autres tutoriels, le hostname sous Debian se configure dans ces 2 fichiers. J'ai choisi le nom ns1 pour cette premi\u00e8re machine (j'ai lou\u00e9 un deuxi\u00e8me vps pour servir de serveur dns secondaire). Je modifie le nom situ\u00e9 dans /etc/hostname pour ns1 (avec mon \u00e9diteur texte.) Modification du fichier /etc/hosts : Le fichier /etc/hosts ainsi que le fichier .etc/hostname sont g\u00e9r\u00e9s par le programme cloud. Il faut donc, en suivant les recommandations ici recommandations modifier le fichier /etc/cloud/cloud.conf . 2 lignes sont \u00e0 modifier: preserve_hostname: true manage_etc_hosts: false Ensuite nous pouvons modifier /etc/hostname et /etc/hosts debian@vps-0c47118c:~$ sudo vim /etc/hostname debian@vps-0c47118c:~$ cat /etc/hostname ns1 debian@vps-0c47118c:~$ debian@vps-0c47118c:~$ sudo vim /etc/hosts debian@vps-0c47118c:~$debian@ns1:~$ sudo cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters 127.0.1.1 ns1.yojik.eu ns1 debian@ns1:~$ On red\u00e9marre le vps pour qu'il prenne en compte nos modifications. debian@vps-0c47118c:~$ sudo systemctl reboot debian@vps-0c47118c:~$ Connection to ns1.yojik.eu closed by remote host. Connection to ns1.yojik.eu closed. eric@aldebaran:~$ Et on se reconnecte. Test : debian@ns1:~$ hostname ns1 debian@ns1:~$ hostname -f ns1.yojik.eu debian@ns1: Voil\u00e0 notre hostname de configur\u00e9. configuration de l'adresse IPV6 Cel\u00e0 se fait dans votre serveur DNS. J'ai ajout\u00e9 la ligne suivante dans mon fichier de zone (et incr\u00e9ment\u00e9 le compteur.) ns1 IN A 51.210.247.149 ns1 IN AAAA 2001:41d0:404:200::6d3d Test sur le serveur DNS : root@adara:/home/ericadmin# dig @localhost ns1.yojik.eu ; <<>> DiG 9.10.3-P4-Debian <<>> @localhost ns1.yojik.eu ; (2 servers found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20668 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 5 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ns1.yojik.eu. IN A ;; ANSWER SECTION: ns1.yojik.eu. 86400 IN A 51.210.247.149 Test IPV6: ;; ANSWER SECTION: ns1.yojik.eu. 86400 IN AAAA 2001:41d0:404:200::6d3d Voil\u00e0, tout est bon pour cette partie.","title":"Premi\u00e8res configurations"},{"location":"Premi%C3%A8re-connexion/","text":"Premi\u00e8re connexion Veuillez vous reporter au tutoriel \u00abInstallation d'un serveur Raspi s\u00e9curis\u00e9\u00bb pour la cr\u00e9ation de votre clef, ainsi que la configuration du poste de travail. Une fois les op\u00e9rations effectu\u00e9es, vous pourrez vous connecter ainsi : eric@aldebaran:~$ ssh ns1 The authenticity of host 'ns1.yojik.eu (51.210.247.149)' can't be established. ECDSA key fingerprint is SHA256:WlxCIvGD41/N+ef9u5R4bL6+L3Kywar8EW32bH/ck5w. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added 'ns1.yojik.eu,51.210.247.149' (ECDSA) to the list of known hosts. Linux vps-0c47118c 4.19.0-12-cloud-amd64 #1 SMP Debian 4.19.152-1 (2020-10-18) 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: Sat Jan 2 09:03:38 2021 from 82.65.37.204 debian@vps-0c47118c:~$ Nous voil\u00e0 connect\u00e9s. Nous voyons que le hostname est celui donn\u00e9 par d\u00e9faut par OVH : nous le changerons. Il faudra aussi proc\u00e9der \u00e0 la s\u00e9curisation du serveur SSH . Nous allons installer quelques logiciels indispensables (pour moi) : mc - navigateur de fichier en mode texte vim - \u00e9diteur de texte Ensuite, nous allons proc\u00e9der \u00e0 la configuration de notre hostname, du r\u00e9seau (IPV6), \u00e0 l'installation du r\u00e9solveur DNS (knot-resolver), d'un pare-feux (firewalld), d'un programme nous prot\u00e9gant des attaques de force brute (fail2ban), d'un programme de surveillance de notre serveur et d'un serveur de temps. Une fois tout cela fait et test\u00e9, nous pourrons proc\u00e9der \u00e0 l'installation et \u00e0 la configuration d'un serveur DNS , knot dans mon cas. J'installais toujours bind , mais j'ai d\u00e9cid\u00e9 de changer, pour \u00e9viter la monotonie et apprendre des choses nouvelles. Les premi\u00e8re \u00e9tapes ont toutes \u00e9t\u00e9 d\u00e9crites dans mes pr\u00e9c\u00e9dents tutoriels. Je vais simplement reprendre les explications adapt\u00e9es au cas particulier du vps.","title":"Premi\u00e8re connexion"},{"location":"Premi%C3%A8re-connexion/#premiere-connexion","text":"Veuillez vous reporter au tutoriel \u00abInstallation d'un serveur Raspi s\u00e9curis\u00e9\u00bb pour la cr\u00e9ation de votre clef, ainsi que la configuration du poste de travail. Une fois les op\u00e9rations effectu\u00e9es, vous pourrez vous connecter ainsi : eric@aldebaran:~$ ssh ns1 The authenticity of host 'ns1.yojik.eu (51.210.247.149)' can't be established. ECDSA key fingerprint is SHA256:WlxCIvGD41/N+ef9u5R4bL6+L3Kywar8EW32bH/ck5w. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added 'ns1.yojik.eu,51.210.247.149' (ECDSA) to the list of known hosts. Linux vps-0c47118c 4.19.0-12-cloud-amd64 #1 SMP Debian 4.19.152-1 (2020-10-18) 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: Sat Jan 2 09:03:38 2021 from 82.65.37.204 debian@vps-0c47118c:~$ Nous voil\u00e0 connect\u00e9s. Nous voyons que le hostname est celui donn\u00e9 par d\u00e9faut par OVH : nous le changerons. Il faudra aussi proc\u00e9der \u00e0 la s\u00e9curisation du serveur SSH . Nous allons installer quelques logiciels indispensables (pour moi) : mc - navigateur de fichier en mode texte vim - \u00e9diteur de texte Ensuite, nous allons proc\u00e9der \u00e0 la configuration de notre hostname, du r\u00e9seau (IPV6), \u00e0 l'installation du r\u00e9solveur DNS (knot-resolver), d'un pare-feux (firewalld), d'un programme nous prot\u00e9gant des attaques de force brute (fail2ban), d'un programme de surveillance de notre serveur et d'un serveur de temps. Une fois tout cela fait et test\u00e9, nous pourrons proc\u00e9der \u00e0 l'installation et \u00e0 la configuration d'un serveur DNS , knot dans mon cas. J'installais toujours bind , mais j'ai d\u00e9cid\u00e9 de changer, pour \u00e9viter la monotonie et apprendre des choses nouvelles. Les premi\u00e8re \u00e9tapes ont toutes \u00e9t\u00e9 d\u00e9crites dans mes pr\u00e9c\u00e9dents tutoriels. Je vais simplement reprendre les explications adapt\u00e9es au cas particulier du vps.","title":"Premi\u00e8re connexion"},{"location":"Programmes-de-base/","text":"Installation des programmes de base Un fois logu\u00e9 sur votre VPS, proc\u00e9dons \u00e0 l'installation de nos 2 premiers programmes. mise \u00e0 jour des listes de paquets; debian@vps-0c47118c:~$ sudo apt update && sudo apt upgrade ... Running hooks in /etc/ca-certificates/update.d... done. debian@vps-0c47118c:~$ Je vois que le noyau a \u00e9t\u00e9 mis \u00e0 jour, je vais donc red\u00e9marrer mon vps. debian@vps-0c47118c:~$ sudo systemctl reboot debian@vps-0c47118c:~$ Connection to ns1.yojik.eu closed by remote host. Connection to ns1.yojik.eu closed. eric@aldebaran:~$ installation de vim et mc . Nous nous re-connectons au vps, et poursuivons nos installations. eric@aldebaran:~$ ssh ns1 Linux vps-0c47118c 4.19.0-14-cloud-amd64 #1 SMP Debian 4.19.171-2 (2021-01-30) x86_64 ... Last login: Tue Mar 9 07:46:49 2021 from 82.65.37.204 debian@vps-0c47118c:~$ sudo apt install mc vim Reading package lists... Done Building dependency tree ... debian@vps-0c47118c:~$ Voil\u00e0 nos programmes install\u00e9s.","title":"Installation des programmes de base"},{"location":"Programmes-de-base/#installation-des-programmes-de-base","text":"Un fois logu\u00e9 sur votre VPS, proc\u00e9dons \u00e0 l'installation de nos 2 premiers programmes. mise \u00e0 jour des listes de paquets; debian@vps-0c47118c:~$ sudo apt update && sudo apt upgrade ... Running hooks in /etc/ca-certificates/update.d... done. debian@vps-0c47118c:~$ Je vois que le noyau a \u00e9t\u00e9 mis \u00e0 jour, je vais donc red\u00e9marrer mon vps. debian@vps-0c47118c:~$ sudo systemctl reboot debian@vps-0c47118c:~$ Connection to ns1.yojik.eu closed by remote host. Connection to ns1.yojik.eu closed. eric@aldebaran:~$ installation de vim et mc . Nous nous re-connectons au vps, et poursuivons nos installations. eric@aldebaran:~$ ssh ns1 Linux vps-0c47118c 4.19.0-14-cloud-amd64 #1 SMP Debian 4.19.171-2 (2021-01-30) x86_64 ... Last login: Tue Mar 9 07:46:49 2021 from 82.65.37.204 debian@vps-0c47118c:~$ sudo apt install mc vim Reading package lists... Done Building dependency tree ... debian@vps-0c47118c:~$ Voil\u00e0 nos programmes install\u00e9s.","title":"Installation des programmes de base"},{"location":"Pr%C3%A9sentation/","text":"Pr\u00e9sentation du projet Je loue 2 serveurs d\u00e9di\u00e9s chez OVH, un petit pas tr\u00e8s puissant \u00e0 base de processeur Atom de chez Intel, et un plus puissant, I7 qui est mon serveur principal, celui qui h\u00e9b\u00e9rge mes services Web et autres. Mon serveur mail est h\u00e9b\u00e9rg\u00e9 actuellement sur le serveur principal ainsi que le serveur DNS (ma\u00eetre ou principal.) Le serveur DNS secondaire est h\u00e9b\u00e9rg\u00e9 sur le petit d\u00e9di\u00e9. Avoir tous ses services sur la m\u00eame machine pose des probl\u00e8mes : en cas de soucis avec l'un des services (attaque, panne de disque ou autre,) le reste devient innacessible s'il faut tout r\u00e9installer. J'ai donc d\u00e9cider de diviser pour r\u00e8gner : mes serveurs DNS seront h\u00e9b\u00e9rg\u00e9s sur 2 VPS, \u00e0 bas c\u00f4ut chez OVH. Ils sont l'objet de ce tutoriel. Le serveur mail sera d\u00e9plac\u00e9 sur le petit d\u00e9di\u00e9. Les sauvegardes seront effectu\u00e9es sur mes NAS \u00e0 la maison. J'installerai \u00e9galement un serveur mail secondaire sur mes serveurs \u00e0 la maison. (tutoriel \u00e0 venir) Le serveur d\u00e9di\u00e9 principal sera r\u00e9serv\u00e9 aux services moins importants : si le site web est innacessible pendant 2 jours, ce n'est vraiment pas grave. De m\u00eame pour les autres services h\u00e9b\u00e9rg\u00e9s. J'essaierai de faire une copie de ces services sur un serveur \u00e0a la maison. Mon domaine principal est .eu , mais je poss\u00e8de encore 3 autres domaines en yojik . L'extension .net est r\u00e9serv\u00e9e \u00e0 mon r\u00e9seau \u00ab\u00e0 la maison \u00bb, fr et org sont l\u00e0 en plus \u00abau cas o\u00f9 .\u00bb","title":"Pr\u00e9sentation"},{"location":"Pr%C3%A9sentation/#presentation-du-projet","text":"Je loue 2 serveurs d\u00e9di\u00e9s chez OVH, un petit pas tr\u00e8s puissant \u00e0 base de processeur Atom de chez Intel, et un plus puissant, I7 qui est mon serveur principal, celui qui h\u00e9b\u00e9rge mes services Web et autres. Mon serveur mail est h\u00e9b\u00e9rg\u00e9 actuellement sur le serveur principal ainsi que le serveur DNS (ma\u00eetre ou principal.) Le serveur DNS secondaire est h\u00e9b\u00e9rg\u00e9 sur le petit d\u00e9di\u00e9. Avoir tous ses services sur la m\u00eame machine pose des probl\u00e8mes : en cas de soucis avec l'un des services (attaque, panne de disque ou autre,) le reste devient innacessible s'il faut tout r\u00e9installer. J'ai donc d\u00e9cider de diviser pour r\u00e8gner : mes serveurs DNS seront h\u00e9b\u00e9rg\u00e9s sur 2 VPS, \u00e0 bas c\u00f4ut chez OVH. Ils sont l'objet de ce tutoriel. Le serveur mail sera d\u00e9plac\u00e9 sur le petit d\u00e9di\u00e9. Les sauvegardes seront effectu\u00e9es sur mes NAS \u00e0 la maison. J'installerai \u00e9galement un serveur mail secondaire sur mes serveurs \u00e0 la maison. (tutoriel \u00e0 venir) Le serveur d\u00e9di\u00e9 principal sera r\u00e9serv\u00e9 aux services moins importants : si le site web est innacessible pendant 2 jours, ce n'est vraiment pas grave. De m\u00eame pour les autres services h\u00e9b\u00e9rg\u00e9s. J'essaierai de faire une copie de ces services sur un serveur \u00e0a la maison. Mon domaine principal est .eu , mais je poss\u00e8de encore 3 autres domaines en yojik . L'extension .net est r\u00e9serv\u00e9e \u00e0 mon r\u00e9seau \u00ab\u00e0 la maison \u00bb, fr et org sont l\u00e0 en plus \u00abau cas o\u00f9 .\u00bb","title":"Pr\u00e9sentation du projet"},{"location":"S%C3%A9curisation-ssh/","text":"S\u00e9curisation du serveur SSH sauvegarde du r\u00e9pertoire originel /etc/ssh debian@ns1:~$ sudo scp -rv /etc/ssh/ /etc/ssh.orig/ Executing: cp '-r' '--' '/etc/ssh/' '/etc/ssh.orig/' debian@ns1:~$ Nous allons appliquer ensuite les m\u00e9thodes vues dans le tutoriel raspi :","title":"S\u00e9curisation ssh"},{"location":"S%C3%A9curisation-ssh/#securisation-du-serveur-ssh","text":"sauvegarde du r\u00e9pertoire originel /etc/ssh debian@ns1:~$ sudo scp -rv /etc/ssh/ /etc/ssh.orig/ Executing: cp '-r' '--' '/etc/ssh/' '/etc/ssh.orig/' debian@ns1:~$ Nous allons appliquer ensuite les m\u00e9thodes vues dans le tutoriel raspi :","title":"S\u00e9curisation du serveur SSH"}]}
|