Miles-Vaultwarden_seulement #94
| @@ -1,21 +1,19 @@ | ||||
| ## Discord Plex FR : https://discord.gg/ERpYMqS | ||||
| ## Version 2021-02-26 | ||||
| ## Version 2021-08-18   | ||||
| version: '3' | ||||
|  | ||||
| services: | ||||
|   bitwarden: | ||||
|     image: bitwardenrs/server | ||||
|     restart: unless-stopped | ||||
|   vaultwarden: | ||||
| # Decommenter les 2 lignes suivantes pour que watchtower surveille ce conteneur | ||||
| #    labels: | ||||
| #      - com.centurylinklabs.watchtower.enable=true | ||||
|     image: vaultwarden/server:latest | ||||
|     container_name: vaultwarden | ||||
|     restart: unless-stopped | ||||
|     ports: | ||||
|       - 80:80  #  WebUI | ||||
|     volumes: | ||||
|       - /volume1/docker/bitwarden/bw-data:/data | ||||
|     environment: | ||||
|       - WEBSOCKET_ENABLED: 'true' # Necessaire pour utiliser websockets | ||||
|       - SIGNUPS_ALLOWED: 'true'   # Mettre faux une fois le 1er utilisateur creer et redemarrer le conteneur | ||||
| # Network conseillé de ne pas utiliser host (pas de redirection de port) ni default_bridge car limité a 16 ip | ||||
|     network_mode: 'bitwardenrs_network' | ||||
|      | ||||
|       - WEBSOCKET_ENABLED=true  # Necessaire pour utiliser websockets | ||||
|       - SIGNUPS_ALLOWED=true # Mettre faux une fois le 1er utilisateur creer et redemarrer le conteneu | ||||
|     volumes: | ||||
|       - /volume1/docker/bitwarden/bw-data:/data | ||||
							
								
								
									
										143
									
								
								docker-compose/vaultwarden/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										143
									
								
								docker-compose/vaultwarden/docker-compose.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,143 @@ | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##                    Fichier docker-compose.yml pour Vaultwarden seulement                   ## | ||||
| ##                                 Révision du fichier : v4.0                                 ## | ||||
| ##                                                                                            ## | ||||
| ##       Voir tuto : https://www.forum-nas.fr/viewtopic.php?f=56&t=15341&p=99007#p99007       ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ## Attention, avec ce fichier, il faut avoir créer le réseau "vaultwarden_network" avant de   ## | ||||
| ## créer les conteneurs.                                                                      ## | ||||
| ##                                                                                            ## | ||||
| ##             La mise en place de fail2ban se fera avec un docker-compose dédié.             ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##                                       NOTE IMPORTANTE                                      ## | ||||
| ##                                      -----------------                                     ## | ||||
| ##                                                                                            ## | ||||
| ##  Lors de l'importation d'un fichier contenant beaucoup d'entrées, j'ai eu une erreur       ## | ||||
| ##  405 Not Allowed - Nginx                                                                   ## | ||||
| ##  Après quelques recherches, et un certains nombre de minutes, il s'est avéré que les       ## | ||||
| ##  expiration du délai ... (les timeout) dans le reverse proxy par défaut de 60s étaient     ## | ||||
| ##  trop faible.                                                                              ## | ||||
| ##  En passant les 3 valeurs à 300s (5min), ça a réglé mon problème.                          ## | ||||
| ##  (Pensez à relancer le script vaultwarden__Enable_Websocket.sh après ces modifications)    ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##                              Ajout des Notifications Websocket                             ## | ||||
| ##                                                                                            ## | ||||
| ## Pour qu'elles'fonctionnent, il faut configurer le reverse-proxy correctement.              ## | ||||
| ## Pour celui de DSM, il n'est malheureusement pas possible de configurer les                 ## | ||||
| ## redirections /notifications/hub vers le serveur WebSocket ni celles vers le port normal    ## | ||||
| ## /notifications/hub/negotiate                                                               ## | ||||
| ## Voir cet article pour tout ce qui n'est pas possible via l'interface de DSM :              ## | ||||
| ## https://github.com/dani-garcia/vaultwarden/wiki/Enabling-WebSocket-notifications           ## | ||||
| ##                                                                                            ## | ||||
| ## Dès lors, il faut ruser et passer par l'exécution d'un petit script qui va créer un        ## | ||||
| ## fchier ws.locations contenant les modifications précédentes, et qui va écrire une          ## | ||||
| ## ligne dans le fichier /etc/nginx/app.d/server.ReverseProxy.conf pour inclure le            ## | ||||
| ## fichier ws.locations au niveau de la section concernant le nom de domaine pour             ## | ||||
| ## vaultwarden.                                                                               ## | ||||
| ## Comme cela, il n'est pas nécessaire de passer par le changement de reverse-proxy, assez    ## | ||||
| ## complexe à mettre en oeuvre...                                                             ## | ||||
| ##                                                                                            ## | ||||
| ## Le script est : vaultwarden__Enable_Websocket.sh                                           ## | ||||
| ##                                                                                            ## | ||||
| ## Il faudra la lancer régulièrement et à chaque redémarrage du NAS, via deux tâches          ## | ||||
| ## plannifiées dédiées, en donnant 3 paramètres au fichier :                                  ## | ||||
| ## - le nom de domaine de vaultwarden                                                         ## | ||||
| ## - le port HTTP exposé (donc pas l'interne du conteneur) pour l'interface graphique         ## | ||||
| ## - le port websocket exposé (donc pas l'interne du conteneur)                               ## | ||||
| ## Voir les commentaires de ce fichier vaultwarden__Enable_Websocket.sh pour plus             ## | ||||
| ## d'explications.                                                                            ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
|  | ||||
| --- | ||||
|   version: "2.4" | ||||
|    | ||||
|   services: | ||||
|     vaultwarden: | ||||
|       image: vaultwarden/server:latest    # https://github.com/dani-garcia/vaultwarden | ||||
|                                           # https://github.com/dani-garcia/vaultwarden/wiki | ||||
|       container_name: vaultwarden | ||||
|       networks: | ||||
|         - vaultwarden_network | ||||
|       environment: | ||||
|         # Utiliser la commande (en SSH) : id NOM_UTILISATEUR | ||||
|         - PUID=1000 | ||||
|         - PGID=100 | ||||
|         - TZ=Europe/Paris | ||||
|          | ||||
|         # Pour l'envoi d'emails | ||||
|         - SMTP_HOST=XXxxXX | ||||
|         - SMTP_FROM=XXxxXX | ||||
|         - SMTP_FROM_NAME=BlaBla | ||||
|         - SMTP_PORT=XXxxXX | ||||
|         - SMTP_SSL=true | ||||
|         - SMTP_USERNAME=XXxxXX | ||||
|         - SMTP_PASSWORD=XXxxXX | ||||
|    | ||||
|         - INVITATION_ORG_NAME=Vaultwarden [Votre Nom, pseudo...]   # Permet de spécifier un nom d'application pour les invitations d'organisation | ||||
|    | ||||
|         # Nécessaire pour activer le 2FA pour la connexion à notre serveur Vaultwarden | ||||
|         # Il est possible de spécifier un port de connexion dans l'URL. Le https:// est obligatoire. | ||||
|         # Pour cette option, il est donc OBLIGATOIRE d'avoir fait le nécessaire pour avoir du HTTPS (certificats, reverse-proxy, ...) | ||||
|         - DOMAIN=XXxxXX | ||||
|    | ||||
|         # Pour enregistrer les log avec un niveau particulier | ||||
|         - LOG_FILE=/data/vaultwarden.log | ||||
|         - LOG_LEVEL=warn | ||||
|         - EXTENDED_LOGGING=true | ||||
|    | ||||
|         # je n'aime pas les indices pour les mots de passe... | ||||
|         - SHOW_PASSWORD_HINT=false | ||||
|    | ||||
|         # Pour activer la console d'administation, accessible via : https://mon.domaine.tld/admin/ | ||||
|         # Voir détails ici : https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page | ||||
|         # /!\ | ||||
|         # /!\ N'importe qui pourra accéder à la page de connexion, alors blinder le token d'amdin ci-dessous (64 caractères pour moi) ! | ||||
|         # /!\ Il est de plus TRÈS important d'avoir ACTIVÉ le HTTPS avant l'activation de cette option. | ||||
|         # /!\ | ||||
|         # Je conseille de ne l'activer qu'en cas de nécessité, et de la désactiver après. | ||||
|         # Pour désactiver, il suffit de commenter la ligne ci-dessous. | ||||
|         - ADMIN_TOKEN=XXxxXX | ||||
|         # À noter : | ||||
|         #   La première fois que vous enregistrez un paramètre dans la page d'administration, 'config.json' sera généré  | ||||
|         #   dans votre 'DATA_FOLDER'. Les valeurs de ce fichier auront priorité sur les valeurs 'environnement'. | ||||
|          | ||||
|         - SIGNUPS_ALLOWED=false   # Fait en sorte que les inscriptions soient bloquées, seul l'admin pourra inviter | ||||
|                                   # des utilisateurs avec un envoi d'email depuis la console d'administation | ||||
|                                    | ||||
|         - WEBSOCKET_ENABLED=true  # Active les WebSocket notifications (Nécessite la configuration du reverse-proxy) | ||||
|                                   # Durant le nombre importants d'essais, j'en suis venu à laisser le port par défaut | ||||
|                                   # pour le WEBSOCKET_PORT. Il est possible que ça fonctionne avec un port différent. | ||||
|                                   # Il faudra alors décommenter la ligne suivante, et changer le port exposé plus bas. | ||||
|         #- WEBSOCKET_PORT=3012    # Par défaut = 3012 | ||||
|          | ||||
|         # Pour activer la récupération des icones des IP LAN, il faut mettre sur false la variable ICON_BLACKLIST_NON_GLOBAL_IPS | ||||
|         - ICON_BLACKLIST_NON_GLOBAL_IPS=false      # Par défaut = true | ||||
|          | ||||
|         # On défini ici quelques chemins de dossiers qu'il faudra créer (pas sur que le conteneur les crées lui-même...) | ||||
|         - ICON_CACHE_FOLDER=data/icon_cache | ||||
|         - ATTACHMENTS_FOLDER=data/attachments | ||||
|         - SENDS_FOLDER=data/sends | ||||
|    | ||||
|       labels: | ||||
|         - "com.centurylinklabs.watchtower.enable=true" | ||||
|    | ||||
|       volumes: | ||||
|         - "/volume1/docker/vaultwarden/vaultwarden-data/:/data/" | ||||
|       ports: | ||||
|         - XXxxXX:3012   # Choisir un port libre pour le websocket | ||||
|         - XXxxXX:80     # Choisir un port libre pour l'interface WEB | ||||
|       restart: unless-stopped | ||||
|      | ||||
|   networks: | ||||
|     vaultwarden_network: | ||||
|       external: | ||||
|         name: vaultwarden_network | ||||
|    | ||||
| @@ -0,0 +1,114 @@ | ||||
| #!/bin/bash | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##                      Script vaultwarden__Enable_Websocket-DSM_6.x.sh                       ## | ||||
| ##                                                                                            ## | ||||
| ##          Source : https://gist.github.com/nstanke/3949ae1c4706854d8f166d1fb3dadc81         ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##   Ce script pemet de router ce qui ne peut pas être fait avec le reverse-proxy             ## | ||||
| ##   de DSM (Synology) pour faire fonctionner les notifications Websocket                     ## | ||||
| ##   Doc. vaultwarden :                                                                       ## | ||||
| ##        Route the /notifications/hub endpoint to the WebSocket server, by default           ## | ||||
| ##        at port 3012, making sure to pass the Connection and Upgrade headers.               ## | ||||
| ##        (Note the port can be changed with WEBSOCKET_PORT variable)                         ## | ||||
| ##        https://github.com/dani-garcia/vaultwarden/wiki/Enabling-WebSocket-notifications    ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##                             Principe de Tâche planifier à créer                            ## | ||||
| ##                                                                                            ## | ||||
| ## Il faut lancer régulièrement le script car toutes modifications faites dans l'interface    ## | ||||
| ## graphique du Reverse-Proxy de DSM va modifier le fichier de configuration. Il en va de     ## | ||||
| ## même lorsque le NAS redémarre.                                                             ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##        /!\    Il faut modifier l'adresse IP en ligne 79 et 85 par l'IP du NAS    /!\       ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ## Paramètres de lancement du script :                                                        ## | ||||
| ## bash /volume1/docker/bitwarden/enable_ws.sh vault.example.com 5555 5556                    ## | ||||
| ##                                                                                            ## | ||||
| ## -- vault.example.com = Nom de domaine de vaultwarden (celui du Reverse Proxy de DSM)      ## | ||||
| ## -- 5555 = Port exposé ROCKET_PORT par Docker (Identique à celui du Reverse Proxy de DSM)   ## | ||||
| ## -- 5556 = Port exposé WEBSOCKET_PORT par Docker                                            ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
|  | ||||
| LOC_DIR="/etc/nginx" | ||||
| part1=0 | ||||
| part2=0 | ||||
|  | ||||
| echo -e "\n$(date "+%R:%S - ") Script vaultwarden__Enable_Websocket.sh pour activer les Notifications Websockets" | ||||
|  | ||||
| f_affiche_parametre() { | ||||
|     echo "          bash /volume1/docker/_Scripts-DOCKER/vaultwarden__Enable_Websocket.sh vault.example.com 5555 5556 " | ||||
|     echo "                           -- vault.example.com = Nom de domaine de vaultwarden (celui du Reverse Proxy de DSM) " | ||||
|     echo "                           -- 5555 = Port exposé ROCKET_PORT par Docker (Identique à celui du Reverse Proxy de DSM)" | ||||
|     echo "                           -- 5556 = Port exposé WEBSOCKET_PORT par Docker" | ||||
| } | ||||
|  | ||||
| if [ ! $# -eq 3 ]; then | ||||
|     if [ $# -eq 0 ]; then | ||||
|         # Aucun paramètre n'a été fourni. On va afficher la liste de ce qui peut être utilisé. | ||||
|         echo "$(date "+%R:%S - ") Aucun paramètre fourni ! Revoir l'appel du script :" | ||||
|         f_affiche_parametre | ||||
|     else | ||||
|         echo "$(date "+%R:%S - ") Le nombre de paramètres fournis n'est pas correct ! Revoir l'appel du script :" | ||||
|         f_affiche_parametre | ||||
|     fi | ||||
|     echo -e "$(date "+%R:%S - ") ECHEC de lancement du script !!!!!!!!!\n" | ||||
|     exit 1 | ||||
| fi | ||||
|  | ||||
| echo "$(date "+%R:%S - ") Exécution des commandes..." | ||||
|  | ||||
|  | ||||
| ############################################################################################################# | ||||
| ## Début de la partie de création/modification de fichiers | ||||
| ## | ||||
| if [ -f $LOC_DIR/ws.locations ]; then | ||||
|   rm /etc/nginx/ws.locations | ||||
|   part1=1 | ||||
| fi | ||||
| echo """ | ||||
| location /notifications/hub { | ||||
|     proxy_pass http://192.168.2.200:$3; | ||||
|     proxy_set_header Upgrade \$http_upgrade; | ||||
|     proxy_set_header Connection \"upgrade\"; | ||||
| } | ||||
|  | ||||
| location /notifications/hub/negotiate { | ||||
|     proxy_pass http://192.168.2.200:$2; | ||||
| } | ||||
| """ >> $LOC_DIR/ws.locations | ||||
|  | ||||
|  | ||||
| if ! grep -q "ws.locations" /etc/nginx/app.d/server.ReverseProxy.conf; then | ||||
|     sed -i "/$1;/ a\ include $LOC_DIR/ws.locations;" /etc/nginx/app.d/server.ReverseProxy.conf | ||||
|     if nginx -t 2>/dev/null; then synoservicecfg --reload nginx; else exit 1; fi | ||||
|  | ||||
|     part2=1     # Variable pour indiquer que cette partie a été exécutée | ||||
| fi | ||||
| ## | ||||
| ## Fin de la partie de création/modification de fichiers | ||||
| ############################################################################################################# | ||||
|  | ||||
| if [ $part1 -eq 1 ]; then | ||||
|   echo "$(date "+%R:%S - ")    -- Le fichier $LOC_DIR/ws.locations existait déjà, il a été supprimé puis recréé." | ||||
| else | ||||
|   echo "$(date "+%R:%S - ")    -- Le fichier $LOC_DIR/ws.locations n'existait pas, il a été créé." | ||||
| fi | ||||
| if [ $part2 -eq 1 ]; then | ||||
|   echo "$(date "+%R:%S - ")    -- !!!!!! --->  La modification dans le fichier /etc/nginx/app.d/server.ReverseProxy.conf n'existait pas. Elle a été écrite." | ||||
|   echo "$(date "+%R:%S - ")    -- !!!!!! --->  Le fichier /etc/nginx/app.d/server.ReverseProxy.conf a du être réinitialisé après un reboot ou lors d'une modification du reverse-proxy dans DSM." | ||||
| else | ||||
|   echo "$(date "+%R:%S - ")    -- La modification du fichier /etc/nginx/app.d/server.ReverseProxy.conf a déjà été effectuée lors d'une précédente exécution. Aucune modification n'est donc nécessaire." | ||||
| fi | ||||
|  | ||||
| echo "$(date "+%R:%S - ") Script vaultwarden__Enable_Websocket.sh terminé" | ||||
|  | ||||
| exit | ||||
| @@ -0,0 +1,129 @@ | ||||
| #!/bin/bash | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##                       Script vaultwarden__Enable_Websocket-DSM_7.sh                        ## | ||||
| ##                                                                                            ## | ||||
| ##          Source : https://gist.github.com/nstanke/3949ae1c4706854d8f166d1fb3dadc81         ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##   Ce script pemet de router ce qui ne peut pas être fait avec le reverse-proxy             ## | ||||
| ##   de DSM (Synology) pour faire fonctionner les notifications Websocket                     ## | ||||
| ##   Doc. vaultwarden :                                                                       ## | ||||
| ##        Route the /notifications/hub endpoint to the WebSocket server, by default           ## | ||||
| ##        at port 3012, making sure to pass the Connection and Upgrade headers.               ## | ||||
| ##        (Note the port can be changed with WEBSOCKET_PORT variable)                         ## | ||||
| ##        https://github.com/dani-garcia/vaultwarden/wiki/Enabling-WebSocket-notifications    ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##                             Principe de Tâche planifier à créer                            ## | ||||
| ##                                                                                            ## | ||||
| ## Il faut lancer régulièrement le script car toutes modifications faites dans l'interface    ## | ||||
| ## graphique du Reverse-Proxy de DSM va modifier le fichier de configuration. Il en va de     ## | ||||
| ## même lorsque le NAS redémarre.                                                             ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ##        /!\    Il faut modifier l'adresse IP en ligne 47 par l'IP du NAS    /!\             ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
| ##                                                                                            ## | ||||
| ## Paramètres de lancement du script :                                                        ## | ||||
| ## bash /volume1/docker/bitwarden/enable_ws.sh vault.example.com 5555 5556                    ## | ||||
| ##                                                                                            ## | ||||
| ## -- vault.example.com = Nom de domaine de vaultwarden (celui du Reverse Proxy de DSM)       ## | ||||
| ## -- 5555 = Port exposé ROCKET_PORT par Docker (Identique à celui du Reverse Proxy de DSM)   ## | ||||
| ## -- 5556 = Port exposé WEBSOCKET_PORT par Docker                                            ## | ||||
| ##                                                                                            ## | ||||
| ##============================================================================================== | ||||
|  | ||||
| LOC_DIR="/etc/nginx" | ||||
| part1=0 | ||||
| part2=0 | ||||
| MY_DOMAIN=$1 | ||||
| PORT_ACCES=$2 | ||||
| PORT_CONT=$3 | ||||
| IP_NAS="192.168.2.200" | ||||
|  | ||||
| echo -e "\n$(date "+%R:%S - ") Script vaultwarden__Enable_Websocket.sh pour activer les Notifications Websockets" | ||||
|  | ||||
| f_affiche_parametre() { | ||||
|   echo "          bash /volume1/docker/_Scripts-DOCKER/vaultwarden__Enable_Websocket.sh vault.example.com 5555 5556 " | ||||
|   echo "                           -- vault.example.com = Nom de domaine de vaultwarden (celui du Reverse Proxy de DSM) " | ||||
|   echo "                           -- 5555 = Port exposé ROCKET_PORT par Docker (Identique à celui du Reverse Proxy de DSM)" | ||||
|   echo "                           -- 5556 = Port exposé WEBSOCKET_PORT par Docker" | ||||
| } | ||||
|  | ||||
| if [ ! $# -eq 3 ]; then | ||||
|   if [ $# -eq 0 ]; then | ||||
|     # Aucun paramètre n'a été fourni. On va afficher la liste de ce qui peut être utilisé. | ||||
|     echo "$(date "+%R:%S - ") Aucun paramètre fourni ! Revoir l'appel du script :" | ||||
|     f_affiche_parametre | ||||
|   else | ||||
|     echo "$(date "+%R:%S - ") Le nombre de paramètres fournis n'est pas correct ! Revoir l'appel du script :" | ||||
|     f_affiche_parametre | ||||
|   fi | ||||
|   echo -e "$(date "+%R:%S - ") ECHEC de lancement du script !!!!!!!!!\n" | ||||
|   exit 1 | ||||
| fi | ||||
|  | ||||
| echo "$(date "+%R:%S - ") Exécution des commandes..." | ||||
|  | ||||
|  | ||||
| ############################################################################################################# | ||||
| ## Début de la partie de création/modification de fichiers | ||||
| ## | ||||
| if [ -f $LOC_DIR/websocket.locations.vaultwarden ]; then | ||||
|   rm $LOC_DIR/websocket.locations.vaultwarden | ||||
|   part1=1 | ||||
| fi | ||||
| echo """ | ||||
| location /notifications/hub { | ||||
|     proxy_pass http://$IP_NAS:$PORT_CONT; | ||||
|     proxy_set_header Upgrade \$http_upgrade; | ||||
|     proxy_set_header Connection \"upgrade\"; | ||||
| } | ||||
|  | ||||
| location /notifications/hub/negotiate { | ||||
|     proxy_pass http://$IP_NAS:$PORT_ACCES; | ||||
| } | ||||
| """ >>$LOC_DIR/websocket.locations.vaultwarden | ||||
|  | ||||
| # Note : avec DSM7, le chemin d'accès du fichier server.ReverseProxy.conf a changé | ||||
| #         DSM6.2  = /etc/nginx/app.d/server.ReverseProxy.conf | ||||
| #         DSM7    = /etc/nginx/sites-enabled/server.ReverseProxy.conf | ||||
| if ! grep -q "websocket.locations.vaultwarden" /etc/nginx/sites-enabled/server.ReverseProxy.conf; then | ||||
|  | ||||
|   # Commandes fonctionnelles avec DSM6.2.x, mais plus avec DSM 7.0 (RC) | ||||
|   #sed -i "/$1;/ a\ include $LOC_DIR/websocket.locations.vaultwarden;" /etc/nginx/app.d/server.ReverseProxy.conf | ||||
|   #if nginx -t 2>/dev/null; then synoservicecfg --reload nginx; else exit 1; fi | ||||
|  | ||||
|   # Commande fonctionnelles avec DSM 7 (RC) | ||||
|   sed -r "s#^([[:blank:]]*server_name[[:blank:]]*${MY_DOMAIN}[[:blank:]]*;[[:blank:]]*)\$#\1\n\n\tinclude ${LOC_DIR}/websocket.locations.vaultwarden;#" /etc/nginx/sites-enabled/server.ReverseProxy.conf > /etc/nginx/sites-enabled/server.ReverseProxy.conf.new | ||||
|   mv /etc/nginx/sites-enabled/server.ReverseProxy.conf.new /etc/nginx/sites-enabled/server.ReverseProxy.conf | ||||
|  | ||||
|   if nginx -t 2>/dev/null; then synosystemctl reload nginx; else exit 1; fi | ||||
|  | ||||
|   part2=1 # Variable pour indiquer que cette partie a été exécutée | ||||
|  | ||||
| fi | ||||
| ## | ||||
| ## Fin de la partie de création/modification de fichiers | ||||
| ############################################################################################################# | ||||
|  | ||||
| if [ $part1 -eq 1 ]; then | ||||
|   echo "$(date "+%R:%S - ")    -- Le fichier $LOC_DIR/websocket.locations.vaultwarden existait déjà, il a été supprimé puis recréé." | ||||
| else | ||||
|   echo "$(date "+%R:%S - ")    -- Le fichier $LOC_DIR/websocket.locations.vaultwarden n'existait pas, il a été créé." | ||||
| fi | ||||
| if [ $part2 -eq 1 ]; then | ||||
|   echo "$(date "+%R:%S - ")    -- !!!!!! --->  La modification dans le fichier /etc/nginx/sites-enabled/server.ReverseProxy.conf n'existait pas. Elle a été écrite." | ||||
|   echo "$(date "+%R:%S - ")    -- !!!!!! --->  Le fichier /etc/nginx/sites-enabled/server.ReverseProxy.conf a du être réinitialisé après un reboot ou lors d'une modification du reverse-proxy dans DSM." | ||||
| else | ||||
|   echo "$(date "+%R:%S - ")    -- La modification du fichier /etc/nginx/sites-enabled/server.ReverseProxy.conf a déjà été effectuée lors d'une précédente exécution. Aucune modification n'est donc nécessaire." | ||||
| fi | ||||
|  | ||||
| echo "$(date "+%R:%S - ") Script vaultwarden__Enable_Websocket.sh terminé" | ||||
|  | ||||
| exit | ||||
		Reference in New Issue
	
	Block a user