Aller au contenu

Classement

Contenu populaire

Affichage du contenu avec la meilleure réputation le 12/18/21 dans toutes les zones

  1. Bonsoir à tous, et un grand merci à @MilesTEG1 pour la reprise de tant d'informations et les détails non négligeables. J'ai pris du temps pour assimiler les différents tutos proposés, en incluant celui concernant le SSH / Root de @unPixel que je remercie fortement tout comme @.Shad.. Je dois bien avouer qu'il m'a fallut plusieurs lectures, mais au final ça s'éclaircie et j'ai tout compris! Alors dans l'ordre: 1/ SSH J'ai juste eu un problème sur la passphrase, j'ai l'impression que ça ne fonctionne pas si celle-ci n'est pas assez longue mais PuttyGen ne le dit pas. Du coup on s'en rend compte au moment ou la cible refuse la connexion.. je n'ai pas trouvé d'informations à ce sujet cela dit. 2/ Portainer L’installation via un docker-compose s'est passé sans encombre. Petite coquille dans tes balises de code @MilesTEG1 , ne pas oublier le tiret entre "docker" et "compose". Je préfère le préciser pour que tu puisses effectuer la modification, au cas où des utilisateurs reprendraient la procédure en mode copier/coller 😉 2/ macvlan J'ai passé plus de temps à triturer mon routeur pour avoir des pages d'IP qui m'allaient bien qu'à dérouler la procédure (j'avais laissé une plage de 254 adresses pour le DHCP et pas moyen d'aller au delà dans la configuration), une fois qu'on assimile le principe rien de trop sorcier non plus. Merci pour le petit rappel concernant l'IP de départ des range, j'avoue ne jamais y avoir prêté attention lors de mes "découpages" réseau. Pour ma part, le script est comme ça: docker network create -d macvlan \ --subnet=192.168.2.0/24 \ --ip-range=192.168.2.112/28 \ --gateway=192.168.2.1 \ -o parent=eth0 \ macvlan-network Alors c'est sûr, la ressemblance avec le tien est frappante, mais ce n'est pas voulu pour autant ^^ (et j'ai quand même pas pris exactement les mêmes plages 😉 ) Je n'ai bien sûr pas pu m'empêcher de le tester avant de le faire vérifier.. et ça a marché! Alors, j'ai continué ^^ 3/ Adguard Comme j'avais déjà lancé portainer pour vérifier qu'il tournait, j'y ai ajouté un stack pour adguard puis copié/collé le contenu suivant: --- version: "2.4" services: adguardhome_macvlan: image: adguard/adguardhome:latest # https://github.com/AdguardTeam/AdGuardHome # https://github.com/AdguardTeam/AdGuardHome/wiki/Docker container_name: adguardhome hostname: AdGuard-DS220 # Permet d'avoir un nom pour le conteneur dans AdGuard lui même (sinon c'est une chaine aléatoire) environment: - PUID=1026 # Utiliser la commande (en SSH) : id NOM_UTILISATEUR - PGID=100 # Utiliser la commande (en SSH) : id NOM_UTILISATEUR - TZ=Europe/Paris - LANG=fr_FR.UTF8 - LANGUAGE=fr_FR.UTF8 # --------------------------------------------------------------------------------- # Le label ci-dessous permet à Watchtower de faire les mises à jour automatiquement # Cela peut-être supprimé si Watchtower n'est pas utilisé. labels: - "com.centurylinklabs.watchtower.enable=true" # --------------------------------------------------------------------------------- volumes: - "/volume1/docker/adguard/data:/opt/adguardhome/work" - "/volume1/docker/adguard/config:/opt/adguardhome/conf" # La déclaration des ports n'est pas utile lors d'une installation en macvlan, car tous les ports seront directement accessible # avec l'IP virtuelle. # ports: # - "953:53" # - "967:67/udp" # - "968:68" # - "8080:80/tcp" # - "9443:443/tcp" # - "9853:853/tcp" # - "3030:3000/tcp" networks: macvlan-network: ipv4_address: 192.168.2.112 # Mettre ici l'IP macvlan dans la plage définie dans les scripts # Dans mon cas c'est 192.168.2.210 restart: unless-stopped healthcheck: test: "/bin/netstat -pant | /bin/grep 53" interval: 45s timeout: 30s retries: 3 networks: macvlan-network: # Ce réseau devra bien entendu être créé avant avec le script annexe ou avec Portainer. external: true Là non-plus, pas beaucoup de changements. Pour le coup il y avait un peu trop de textes pour que je refasse le mien en partant de rien, j'ai donc laissé tes commentaires 😄 J'ai eu 2 erreurs à la création, car trop pressé que je suis je n'avais pas créé les dossiers au préalable... en dehors de ça, RAS! Résultat, AdGuard fonctionne et dispose de sa propre IP! Alors bon, une fois arrivé là, autant aller jusqu'au bout. J'ai déclaré cette nouvelle IP en tant que DNS principal sur le routeur, enlevé le DNS alternatif, redémarré le wifi de mon téléphone, lancé une recherche sur le net et.. Ça marche! Plus qu'à peaufiner la configuration de la bête pour filtrer aux petits oignions, mais ça c'est encore moins sorcier! Un grand merci donc, c'est très instructif et ça fait du bien quand ça marche à la fin 😉 Du coup une fois que j'aurai réglé tout ça, je continuerai avec un docker BitWarden!
    2 points
  2. Hello Alors, déjà pour installer portainer, je suis passé par la ligne de commande avec un docker-compose. Déjà le fichier à placer par exemple dans /volume1/docker/portainer/docker-compose.yml : version: "2.1" services: portainer: image: portainer/portainer-ce:latest container_name: portainer hostname: portainer network_mode: bridge environment: - PUID=1000 - PGID=100 labels: - "com.centurylinklabs.watchtower.enable=true" volumes: - /volume1/docker/portainer/data:/data - /var/run/docker.sock:/var/run/docker.sock ports: - 9000:9000 restart: always Les PUID et PGID sont à déterminer avec la commande id ton_utilisateur_portainer en ligne de commande. La section label: sert si tu veux mettre à jour automatiquement avec watchtower, ce que je te conseille fortement Ensuite, tu vas dans le dossier mentionné ci-dessus, et tu lances la commande suivante qui va créer le conteneur : docker-compose up -d Si tu veux arrêter le conteneur, il faudra taper : (ça va complètement supprimer le conteneur, mais pas les données qui sont dans un volume persistant, comme ceux qui sont dans la section volumes: du yml : docker compose down Il est à noter que pour le fichier yml, il a une structure en indentation très pointilleuse Voilà ton portainer est maintenant disponible 🙂 Et tu vas pouvoir installer quasi tous tes conteneurs depuis Portainer Voilà pour la partie facile ^^ Maintenant, je te propose de lire les paragraphes 1 à 4 du tuto de .shad. sur Pi-Hole en macvlan : Il y explique plutôt bien l'intéret du macvlan et son seul défaut. (ne le crée pas tout de suite, lit plus loin mon message...) La création du réseau macvlan est donc obligatoire En ce qui concerne l'interface virtuelle, je ne pense pas que ce soit si utile que ça, à moins que tu veuilles que ton NAS bénéficie des services de AdGuard... Je l'ai créé, et finalement j'ai mis manuellement les DNS dans le NAS pour qu'il ne passe pas par AdGuard, car avec le paquet CloudSync et la connexion à OneDrive, ça me génère des tonnes de requêtes qui n'ont pas à être filtrées par AdGH... Bref, on peut commencer sans cette interface Alors, si tu as lu le tuto de .shad., il va te rester des questions car tout n'est pas si clair ^^ Déjà, pour la création du réseau macvlan, il faut que tu définisses une plage d'IP qui ne sont pas dans la plage d'IP affectées par ton serveur DHCP. Par exemple, dans un capture que je t'ai mis dans un précédent message, on y voit clairement que mon serveur DHCP affecte les IP entre 192.168.2.100 et 192.168.2.120. J'ai plein d'autres adresses fixées par réservations DHCP (avec les adresses MAC), pour que certaines périphériques aient toujours la même IP, mais elles sont toujours affectées par le routeur, elles ne sont pas mises en dur dans les config réseau des périphériques. Je te conseille de faire la même chose, ça te facilitera l'identification es périphériques dans AdGH. Il faut donc définir une plage d'adresses IP en dehors de celle du serveur DHCP, et en dehors des IP affectées avec la réservation DHCP. Une fois que c'est plus ou moins fait, il faut trouver l'écriture de cette plage avec la notation CIDR. Par exemple ma place est celle là : https://www.cidr.eu/en/calculator/+/192.168.2.208/28 Pour que ça ne coince pas avec l'interface virtuelle si/quand tu la mettra en place, il faut que ce réseau macvlan soit bien créé avec une adresse de départ telle que celle dans la section Network Range du calculateur. Le masque de sous-réseau (ici /28) permet de ne garder qu'un nombre limité d'adresses : Mon script de création du réseau macvlan est ici (c'est une version sans valeur ^^) : https://gitea.zoz-serv.org/Zoz/plex_fr_discord_repo/src/branch/master/docker-compose/adguard-macvlan/docker_network_create_macvlan.sh J'y ai mis plein de commentaires : #!/bin/bash ##============================================================================================## ## ## ## Script docker_network_create_macvlan.sh ## ## ## ## Script de création d'interface virtuelle pour les conteneurs qui auront une IP macvlan ## ## Voir tutos : ## ## https://www.nas-forum.com/forum/topic/69319-tuto-docker-macvlan-pi-hole/ ## ## https://www.nas-forum.com/forum/topic/67311-tuto-certificat-ssl-reverse-proxy-via-docker/ ## ## ## ## Les IPs prévues pour les conteneurs sont : ## ## - Conteneur A : 192.168.xxx.yyy ## ## - AdGuard-Home : 192.168.xxx.ooo ## ## ## ## Rappels des différentes IP : ## ## - Plage d'IP macvlan : 192.168.xxx.MMM/28 ## ## - IP virtuelle unique : 192.168.xxx.zzz/32 ## ## - IP conteneur n°1 : 192.168.xxx.yyy ## ## - IP conteneur n°2 : 192.168.xxx.ooo ## ## - Plage d'IP du LAN : 192.168.xxx.0/24 ## ## - Passerelle/routeur : 192.168.xxx.1 ## ## ## ##============================================================================================== ##============================================================================================== ## ## ## --ip-range=192.168.xxx.MMM/28 : cela correspond à la plage d'IP pour le réseau macvlan ## ## sachant que 192.168.xxx.MMM doit être la 1ère IP donnée par les calculateurs internet. ## ## Il se peut que ce ne soit pas la même que l'IP macvlan que l'on veut donner au conteneur ## ## AdGuardHome. ## ## ## ## Quelques calculateurs internet : ## ## https://cric.grenoble.cnrs.fr/Administrateurs/Outils/CalculMasque/ ## ## https://www.cidr.eu/en/calculator/+/192.168.2.208/28 ## ## ## ##============================================================================================== docker network create -d macvlan \ --subnet=192.168.xxx.0/24 \ --ip-range=192.168.xxx.MMM/28 \ --gateway=192.168.xxx.1 \ -o parent=eth0 \ # Ici, eth0 est à remplacer par votre interface réseau : eth0, ovs_eth0 ou autre... macvlan-network ##============================================================================================== ## Pour exemple, voilà mes valeurs à moi : ## ## ## ## - Conteneur A : 192.168.2.209 ## ## - AdGuard-Home : 192.168.2.210 ## ## - Conteneur B : 192.168.2.211 ## ## ## ## Rappels des différentes IP : ## ## - Plage d'IP macvlan : 192.168.xxx.MMM/28 == 192.168.2.208/28 ## ## - IP virtuelle unique : 192.168.xxx.zzz/32 == 192.168.2.210/32 ## ## - Plage d'IP du LAN : 192.168.xxx.0/24 == 192.168.2.0/24 ## ## - Passerelle/routeur : 192.168.xxx.1 == 192.168.2.1 ## ##============================================================================================== Et pour ma configuration, c'est ça qui est exécuté : docker network create -d macvlan \ --subnet=192.168.2.0/24 \ --ip-range=192.168.2.208/28 \ --gateway=192.168.2.1 \ -o parent=eth0 \ macvlan-network @n00ck Ton travail, en plus de comprendre tout ce que j'ai dit (et a été écrit par .shad.), c'est de faire un script de création de réseau macvlan adapté à ton réseau. Propose moi ton travail qu'on voit si ça va fonctionner Une fois qu'on aura fait ça, on va pouvoir lancer l'installation du conteneur en macvlan. Avec portainer (voir annexe plus bas), ou avec un docker compose up -d en ligne de commande, voilà le fichier docker-compose.yml : (dispo ici : https://gitea.zoz-serv.org/Zoz/plex_fr_discord_repo/src/branch/master/docker-compose/adguard-macvlan/docker-compose.yml ) ##============================================================================================== ## ## ## Fichier docker-compose.yml pour Adguard-Home en macvlan ## ## ## ##============================================================================================== ##============================================================================================## ## ## ## Attention, il faut créer le réseau macvlan à l'aide du script : macvlan-network.sh ## ## Ce dernier va créer un réseau macvlan ayant comme IP unique 192.168.2.210 ## ## Cette IP doit être dans la plage d'IP mavclan définie dans le script de création du réseau.## ## Le conteneur sera donc vu comme une machine sur le réseau LAN, mais ne pourra pas être ## ## joint par le NAS lui-même. ## ## Pour celà, il faut utiliser le second script : boot-bridgemacvlan-interface.sh ## ## Ce dernier va créer une IP-interface virtuelle qui pourra être accessible par le NAS. ## ## Cette interface ne persiste pas au démarrage, il faudra mettre le script en tâche ## ## planifiée avec le planificateur de tâches dans DSM. ## ## ## ## Voir tuto : https://www.nas-forum.com/forum/topic/69319-tuto-docker-macvlan-pi-hole/ ## ## ## ## Attention ! ## ## ## ## Ces deux scripts ne sont à utiliser qu'une seule fois, quelque soit le nombre de ## ## conteneurs qui en bénéficieront. ## ## Par exemple, si vous utilisez 2 conteneurs en macvlan, une fois le réseau macvlan créé ## ## pour le 1er, il est inutile (et impossible) de le recréer. ## ## Le script boot-bridgemacvlan-interface.sh ne doit être lancé qu'une seule fois, et à ## ## chaque reboot. L'IP virtuelle est unique, il ne faut pas en recréer une seconde. ## ## ## ##============================================================================================== --- version: "2.4" services: adguardhome_macvlan: image: adguard/adguardhome:latest # https://github.com/AdguardTeam/AdGuardHome # https://github.com/AdguardTeam/AdGuardHome/wiki/Docker container_name: adguardhome_macvlan hostname: AdGuard-Home--DS920+ # Permet d'avoir un nom pour le conteneur dans AdGuard lui même (sinon c'est une chaine aléatoire) environment: - PUID=1000 # Utiliser la commande (en SSH) : id NOM_UTILISATEUR - PGID=100 # Utiliser la commande (en SSH) : id NOM_UTILISATEUR - TZ=Europe/Paris - LANG=fr_FR.UTF8 - LANGUAGE=fr_FR.UTF8 # --------------------------------------------------------------------------------- # Le label ci-dessous permet à Watchtower de faire les mises à jour automatiquement # Cela peut-être supprimé si Watchtower n'est pas utilisé. labels: - "com.centurylinklabs.watchtower.enable=true" # --------------------------------------------------------------------------------- volumes: - "/volume1/docker/adguardhome_macvlan/work:/opt/adguardhome/work" - "/volume1/docker/adguardhome_macvlan/conf:/opt/adguardhome/conf" # La déclaration des ports n'est pas utile lors d'une installation en macvlan, car tous les ports seront directement accessible # avec l'IP virtuelle. # ports: # - "953:53" # - "967:67/udp" # - "968:68" # - "8080:80/tcp" # - "9443:443/tcp" # - "9853:853/tcp" # - "3030:3000/tcp" networks: macvlan-network: ipv4_address: 192.168.xxx.yyy # Mettre ici l'IP macvlan dans la plage définie dans les scripts # Dans mon cas c'est 192.168.2.210 restart: unless-stopped healthcheck: test: "/bin/netstat -pant | /bin/grep 53" interval: 45s timeout: 30s retries: 3 networks: macvlan-network: # Ce réseau devra bien entendu être créé avant avec le script annexe ou avec Portainer. external: true @n00ck Met ici ton docker-compose.yml qu'on voit si tout est OK 🙂 Annexe Portainer : Tu verras c'est super simple 🙂 Il faut créer une stack : En lui donnant un nom (qui apparaitra dans la liste, donc autant mettre un nom explicite 😉 ). Attention ce n'est pas la même chose que le conteneur lui même ^^ tu peux mettre le même nom que le conteneur ou pas :d ) Tu colles le contenu de ton fichier docker-compose.yml dans la zone Web editor, et plus bas tu pourras déployer le conteneur : Voilà, @n00ck, c'est à toi de jouer 😉 L'avantage de Docker, c'est que même si tu fais une connerie, ça n'a pas d'incidence ailleurs que dans le conteneur 😉 Si tu es arrivée jusqu'ici, tu es bien partie pour bien maitriser ^^
    1 point
Ce classement est défini par rapport à Bruxelles/GMT+01:00
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.