Aller au contenu

Dino Rayn

Membres
  • Compteur de contenus

    3
  • Inscription

  • Dernière visite

À propos de Dino Rayn

Dino Rayn's Achievements

Newbie

Newbie (1/14)

  • Reacting Well Rare
  • First Post Rare
  • Week One Done
  • One Month Later
  • One Year In Rare

Recent Badges

1

Réputation sur la communauté

  1. Merci beaucoup pour ton retour, je vais donc désactiver acme.sh qui ne me sert plus. A part ça, tout fonctionne correctement avec notamment Authelia, fail2ban, crowdsec etc... C'est vraiment le top merci pour tes tutoriels. Est-il possible de désactiver l'accès aux services par le biais de l'ip de mon NAS ? Étant donné que j'ai SWAG qui fait office de revers proxy avec l'ip 192.168.50.200. Il n'y a pas de grand intérêt à faire cela, mais c'est plus pour ma culture.
  2. @.Shad., le problème était tout simplement la redirection vers l'IP de mon NAS... Tu avais raison. Étant donné que je gère d'autres domaines et notamment mon ndd avec acme.sh, j'ai pas mal de sous domaines directement dans DSM déjà configurés. En faisant pointer 80/443 directement sur l'ip de swag, tous mes anciens services ne sont plus accessibles. Existe il un moyen de travailler avec acme.sh + swag afin de ne pas perdre mon ancienne config (et surtout pour que mon nom de domaine refonctionne de nouveau) ? Par rapport à ce que tu dis, le problème est que la commande en rouge ci-dessous me renvoyait l'erreur ci-dessous : Malgré mes recherches, je n'ai pas trouvé de solution de contournement.
  3. @.Shad. Merci beaucoup pour ton tuto Je suis actuellement à la mise en place du docker SWAG et je n'ai pas les résultats espérés. Voici mes deux fichiers .sh maclvan_net.sh docker network create -d macvlan \ --subnet=192.168.50.0/24 \ --ip-range=192.168.50.210/29 \ --gateway=192.168.50.1 \ -o parent=eth0 \ macvlan_net mac0.sh : #!/bin/sh # Script permettant la communication entre # un conteneur appartenant a un reseau macvlan et son hote # A lancer au demarrage de l'hote # Temporisation #sleep 60 # Creation de l interface macvlan sur l hote ip link add mac0 link eth0 type macvlan mode bridge # Configuration de l interface avec l adresse reservee ip addr add 192.168.50.200/32 dev mac0 ip link set dev mac0 address AA:BB:CC:DD:11:45 ip link set mac0 up # On fait une route entre les IPv4 du reseau mac0 et l'interface ip route add 192.168.50.208/29 dev mac0 Concernant l'ip "192.168.50.208/29" est la première IP de ma plage /29. Jusqu'à là, tous les scripts s'exécutent correctement. J'ai ensuite lancé mon docker swag : version: "2.1" services: swag: image: linuxserver/swag container_name: swag networks: macvlan_net: ipv4_address: 192.168.50.211 cap_add: - NET_ADMIN dns: - 8.8.8.8 - 8.8.4.4 environment: - PUID=1026 - PGID=100 - TZ=Europe/Paris - URL=xxxxxxxx.com - SUBDOMAINS=wildcard - VALIDATION=dns - DNSPLUGIN=ovh - DHLEVEL=2048 - EMAIL=xxxxxx@gmail.com - ONLY_SUBDOMAINS=false - STAGING=false volumes: - /volume1/docker/swag/config:/config:rw restart: unless-stopped networks: macvlan_net: external: true J'ai dû ajouter des DNS sans quoi swag n'arrivait pas à récupérer de la donnée de OVH. Au premier démarrage du docker ou à chaque fois que je modifie une variable d'environnement, j'ai l'erreur : Cela semble être dû à un problème de MAJ de dépendance. Pour m'en sortir, je rentre dans l'instance swag et j'exécute la commande proposé dans ce commentaire : https://github.com/linuxserver/docker-swag/issues/422#issuecomment-1778615155 puis je redémarre. J'ai fait une redirection de port 80 et 443 vers mon IP virtuelle de mon instance SWAG J'ai ensuite modifié mon fichier "portainer.subdomain.conf.sample" : ## Version 2023/05/31 # make sure that your portainer container is named portainer # make sure that your dns has a cname set for portainer server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name portainer.*; include /config/nginx/ssl.conf; client_max_body_size 0; # enable for ldap auth (requires ldap-location.conf in the location block) #include /config/nginx/ldap-server.conf; # enable for Authelia (requires authelia-location.conf in the location block) #include /config/nginx/authelia-server.conf; # enable for Authentik (requires authentik-location.conf in the location block) #include /config/nginx/authentik-server.conf; location / { # enable the next two lines for http auth #auth_basic "Restricted"; #auth_basic_user_file /config/nginx/.htpasswd; # enable for ldap auth (requires ldap-server.conf in the server block) #include /config/nginx/ldap-location.conf; # enable for Authelia (requires authelia-server.conf in the server block) #include /config/nginx/authelia-location.conf; # enable for Authentik (requires authentik-server.conf in the server block) #include /config/nginx/authentik-location.conf; include /config/nginx/proxy.conf; include /config/nginx/resolver.conf; set $upstream_app 192.168.50.200; set $upstream_port 9000; set $upstream_proto http; proxy_pass $upstream_proto://$upstream_app:$upstream_port; proxy_hide_header X-Frame-Options; # Possibly not needed after Portainer 1.20.0 } location ~ (/portainer)?/api { include /config/nginx/proxy.conf; include /config/nginx/resolver.conf; set $upstream_app 192.168.50.200; set $upstream_port 9000; set $upstream_proto http; proxy_pass $upstream_proto://$upstream_app:$upstream_port; proxy_hide_header X-Frame-Options; # Possibly not needed after Portainer 1.20.0 } } J'ai redémarré mon docker swag et voici les logs : ─────────────────────────────────────── ██╗ ███████╗██╗ ██████╗ ██║ ██╔════╝██║██╔═══██╗ ██║ ███████╗██║██║ ██║ ██║ ╚════██║██║██║ ██║ ███████╗███████║██║╚██████╔╝ ╚══════╝╚══════╝╚═╝ ╚═════╝ Brought to you by linuxserver.io ─────────────────────────────────────── To support the app dev(s) visit: Certbot: https://supporters.eff.org/donate/support-work-on-certbot To support LSIO projects visit: https://www.linuxserver.io/donate/ ─────────────────────────────────────── GID/UID ─────────────────────────────────────── User UID: 1026 User GID: 100 ─────────────────────────────────────── generating self-signed keys in /config/keys, you can replace these with your own keys if required ..+.......+..+.+...+..+..........+++++++++++++++++++++++++++++++++++++++*.....+......+.........+.+...+..+......+.......+...+..+.+.........+.....+......+.........+.+............+..+.......+.....+.+..+......+......+......+...+....+...+...+.....+......+...+...+...............+...+.+......+..+.+.....+......+++++++++++++++++++++++++++++++++++++++*..........+.............+.....+....+...+..+.........+....+......+..+...++++++ ...+..+......+.......+...+...+..+...+.........+.+......+...+...........+.+...........+....+......+...+.....+.+.....+...+++++++++++++++++++++++++++++++++++++++*.+.........+....+++++++++++++++++++++++++++++++++++++++*..+.....+.+..+...+..........+............+...............+......+..+.......+...+............+...+..+...............+.+......+.....+.+..+......+......+.+...............+..+...............+.+..+...+..........+...........+................+..+.......+...+..+...+..........+...+...+.....+..........+..+.........+...+.......+...+.................+...+.+......+.....+.+...+......+...........+...+.+.....+.+...+..+...+....+...+....................+...+.+....................+.+...+.....+.+......+...+..........................+......+.........+...+.....................+....+.....+............+...+.......+.....+.+.........+...+...+..+...+...+.+...........+...+.......+.....+............+.............+...+.....+.........+............+....+..+....+...+............+.........+..+..........+............+..+...+......+.......+..+......+....+...+..............+....+.....+.........+................+............+..+.......+........+.......+...+......+..+..............................+...+......+...+......+....+......+...............+.........+......+.................++++++ ----- chown: cannot dereference '/config/keys/letsencrypt': No such file or directory **** Permissions could not be set. This is probably because your volume mounts are remote or read-only. **** **** The app may not work properly and we will not provide support for it. **** Variables set: 6 PGID=100 TZ=Europe/Paris URL="xxxxxxx.com" SUBDOMAINS=wildcard EXTRA_DOMAINS= ONLY_SUBDOMAINS=false VALIDATION=dns CERTPROVIDER= DNSPLUGIN=ovh EMAIL=xxxxxxxx@gmail.com STAGING=false Using Let's Encrypt as the cert provider SUBDOMAINS entered, processing Wildcard cert for xxxxxxx.com will be requested E-mail address entered: xxxxxxxx@gmail.com dns validation via ovh plugin is selected Generating new certificate Saving debug log to /var/log/letsencrypt/letsencrypt.log Requesting a certificate for xxxxxxxx.com and *.xxxxxxx.com Unexpected response from OVH APIs for POST /domain/zone/xxxxx.com/refresh (response dumped as plain text): Unexpected response from OVH APIs for POST /domain/zone/xxxxxx.com/refresh (response dumped as plain text): Waiting 120 seconds for DNS changes to propagate Unexpected response from OVH APIs for POST /domain/zone/xxxxxx.com/refresh (response dumped as plain text): Unexpected response from OVH APIs for POST /domain/zone/xxxxxx.com/refresh (response dumped as plain text): Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/xxxxxx.com/fullchain.pem Key is saved at: /etc/letsencrypt/live/xxxxx.com/privkey.pem This certificate expires on 2024-01-26. These files will be updated when the certificate renews. NEXT STEPS: - The certificate will need to be renewed before it expires. Certbot can automatically renew the certificate in the background, but you may need to take steps to enable that functionality. See https://certbot.org/renewal-setup for instructions. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - If you like Certbot, please consider supporting our work by: * Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate * Donating to EFF: https://eff.org/donate-le - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - New certificate generated; starting nginx The cert does not expire within the next day. Letting the cron script handle the renewal attempts overnight (2:08am). [custom-init] No custom files found, skipping... [ls.io-init] done. Server ready Pour information j'utilisais jusqu'à présent ACME pour gérer tous mes sous-domaines automatiquement. J'ai temporairement désactivé le docker acme. L'idée est que je garde sur DSM uniquement mon ndd principal et les sous domaines soient gérés via swag. J'ai également essayé de modifier les variables d'environnements dans le docker compose pour isoler mon test mais sans succès : - SUBDOMAINS=portainer, - ONLY_SUBDOMAINS=true Je remarque cependant le message d'erreur ci-dessous qui me laisse fortement présager qu'il y a un problème au niveau de mes permissions. Effectivement le contenu de mon dossier keys est vide. Je n'ai cependant pas réussi à résoudre ce message. Mon PUID et PGID sont pourtant corrects et j'ai ajouté "rw" à la fin de mon volume dans mon docker compose. As-tu une idée pour résoudre ce problème ? J'ai regardé les issues du repo swag mais sans succès : et dans mon dossier letsencrypt le contenu ci-dessous. On dirait un certificat .pem consolidé. De ce fait, a chaque redémarrage de mon docker swag, il essaye de chercher les certificats "/etc/letsencrypt/live/xxxx.com/fullchain.pem" et "/etc/letsencrypt/live/xxxx.com/privkey.pem" mais il ne les trouve pas donc il considère qu'il y à peut-être un problème de permission ! Là je pige plus du tout sachant que dans les logs de mon docker swag j'ai le message ci-dessous. C'est sûrement dû à un lien symbolique ? : Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/xxxx.com/fullchain.pem Key is saved at: /etc/letsencrypt/live/xxxxx.com/privkey.pem This certificate expires on 2024-01-26. Encore plus étrange, lorsque je liste les fichiers contenu dans "letsencrypt/live/xxxx.com j'ai bien les certificats visibles mais pas côté DSM. : EDIT : pour le message avec le problème de permission, il intervient uniquement au premier démarrage ou lorsque je modifie une variable d'environnement. En gros je pense qu'il s'affiche automatiquement lorsque le contenu du dossier letsencrypt est vide. Je suppose donc que c'est un faux problème mais je préfère le laisser ici, si d'autres personnes se pose la question. et voici le résultat lorsque je redémarre swag après que celui ci est indiqué avoir généré les certificats : ─────────────────────────────────────── ██╗ ███████╗██╗ ██████╗ ██║ ██╔════╝██║██╔═══██╗ ██║ ███████╗██║██║ ██║ ██║ ╚════██║██║██║ ██║ ███████╗███████║██║╚██████╔╝ ╚══════╝╚══════╝╚═╝ ╚═════╝ Brought to you by linuxserver.io ─────────────────────────────────────── To support the app dev(s) visit: Certbot: https://supporters.eff.org/donate/support-work-on-certbot To support LSIO projects visit: https://www.linuxserver.io/donate/ ─────────────────────────────────────── GID/UID ─────────────────────────────────────── User UID: 1026 User GID: 100 ─────────────────────────────────────── using keys found in /config/keys Variables set: � 6 PGID=100 TZ=Europe/Paris URL=xxxxxxxx.com SUBDOMAINS=wildcard EXTRA_DOMAINS= ONLY_SUBDOMAINS=true VALIDATION=dns CERTPROVIDER= DNSPLUGIN=ovh EMAIL=xxxxxxx@gmail.com STAGING=false Using Let's Encrypt as the cert provider SUBDOMAINS entered, processing Wildcard cert for xxxxxxx.com will be requested E-mail address entered: xxxxxxxxxx@gmail.com dns validation via ovh plugin is selected Certificate exists; parameters unchanged; starting nginx The cert does not expire within the next day. Letting the cron script handle the renewal attempts overnight (2:08am). [custom-init] No custom files found, skipping... [ls.io-init] done. � Server ready Le résultat des courses est que si j'accède à http://192.168.50.200:9000 je suis correctement redirigé vers mon instance portainer. Cependant, lorsque je tape https://portainer.xxxxx.com alors j'ai mon écran webstation de DSM qui s'affiche : Ne faudrait-il pas que je supprime mon certificat généré par acme dans DSM ? Est ce que je dois supprimer mon ouverture de port 80/443 vers l'IP de mon NAS ? Je me dis qu'il ne peut y avoir qu'une redirection possible côté routeur ? Avec SWAG, est-ce que tous mes sous domaines sont actifs directement sans paramétrage au préalable ? Je m'explique : Si par exemple j'utilise homepage et que dans son fichier homepage.subdomain.conf.sample les entrées pour "set $upstream_app" et "set $upstream_port" sont corrects, alors je pourrais directement y accéder en tapant homepage.xxxxx.com ? Si oui, est il possible de désactiver l'activation automatique sans rentrer dans les fichiers de configuration ? Côté Swag Dashboard, portainer est bien disponible (pour info j'avais oublié de supprimer le .sample à la fin du fichier...) mais il n'est pas accessible : Merci beaucoup pour ton aide !
×
×
  • 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.