Aller au contenu

Toutes les discussions

Ce flux se met à jour automatiquement

  1. Dernière heure

  2. @Romuald_ pour la suite Freebox WireGuard vs Tailscale: le serveur WireGuard est bien dans la Freebox. Quand elle propose d'envoyer la config au smartphone, elle genere la paire de cles du pair (peer) et pousse le fichier .conf (ou QR code) vers l'appli cliente: ce n'est pas un serveur WireGuard "ailleurs", c'est juste le client qui recoit son profil. On peut aussi telecharger ce .conf pour un PC ou une Apple TV / Infuse, pas seulement le telephone. Avantage vs Tailscale pour votre cas (NAS + filmotheque Infuse pour votre fils): WireGuard Freebox vous met directement sur le LAN maison sans plan de controle tiers, ce qui suffit pour Infuse/SMB. Tailscale est souvent plus simple a deployer sur plusieurs appareils (NAT, mobiles) grace a sa coordination, au prix d'un tiers (ou Headscale plus tard). Chemin le plus court aujourd'hui sur Freebox: WireGuard box + un peer par appareil (vous, votre fils). Si vous voulez zero friction multi-appareils tout de suite: Tailscale, avec Headscale en option plus tard.
  3. Les dossiers ne sont donc pour le moment par présent . Vous me confirmez l’assemblage en ligne ?
  4. merci @jeremyc pour ton messqge. Je ne suis toutefois pas certain de comprendre : Les notifications sont gérées par l'hôte CMS. Admettons que je sois dans le domicile de l'Hôte CMS : Les notifs sont désactivées car je suis dans le périmètres de l'hôte. Je ne reçois donc pas les notifs de l'esclave. Si je suis dans le périmètre de l'escale CMS, je reçois toutes notifs (y compris celles émises par les caméras de l'esclave) puisque je ne suis plus dans le périmètre de l'hôte. Le seul moyen que j'ai trouvé pour l'instant consiste à créer une règle qui désactive la caméra lorsque je suis dans le périmètre de l'esclave.
  5. fredeuro a rejoint la communauté
  6. Bonjour, Je vient d'installer la mise a jours de plex v1.43.3 sur mon nas DS416 play qui est en DSM7.3.2 up 4 Et a chaque fois que je fait ouvrir apres quelques seconde il est indique arreté manuellement. J ai deja désinstalle plex et réinstalle mais rien ne change J avais deja le souci depuis quelque temps mais plex ce coupait apres quelques heures et pas directement Quelqu un aurait il une idée ? .
  7. @Stéphanh pour ta question ouverte sur les notifs Home Mode par site en CMS: d'apres les specs Synology, le Home Mode n'est pas pris en charge sur les serveurs d'enregistrement dans une structure CMS. En pratique le filtre notifs suit surtout l'etat du host CMS, pas celui de chaque site. Contournement connu: sur le host, dans Notification > Regle, editer l'evenement pour exclure (ou inclure) les peripheriques du recording server voulu, plutot que de compter sur le Home Mode local de l'esclave.
  8. J’ai donc suivi vos recommandations . Voici les captures d’écran Le disque 1 4TO est sain à 3,6 To Les disque 2 2 To est sain à 1,6 To
  9. Aujourd’hui

  10. C'est pas faux ! J'ai bien un port de communication différent pour chaque NAS (DSM) volontairement, et ça fonctionne bien comme vous le précisez avec le reverse proxy. Par contre, ça peut arriver et ma crainte également, si le NAS 1 plante pour une raison quelconque, plus de reverse pour pour le NAS 2 et 3. Je ne cherche pas à compliquer les choses mais juste à sécuriser et rendre plus ou moins indépendant chaque NAS. Le rôle du NAS 2, uniquement sa fonction, est de sauvegarder intégralement le 1 et le 3, plus des VM (2x ESXi) et postes physiques (environnement local) avec l'application "ActiveBackup" de SYNOLGY qui d'ailleurs fonctionne à merveille. C'est comme cela depuis plusieurs années. Mais si pour vous, le jeu n'en vaut pas la chandelle, je comprends tout à fait votre point de vue. Pensez-vous que je me complique la vie plus qu'autre chose ? Il est évident que si le NAS 1 (supporte les certificats) plante, je ne peux le laisser en l'état et ferait tout le nécessaire pour le remettre en service, ce dernier est primordiale. En terme de plantage justement, ce fut le cas du NAS 2 il y a 3 jours que j'ai dû réinstaller (j'ai pu conserver les DATA et CONFIG).
  11. Mouais. Ca peut aussi se faire avec le reverse proxy. Et si je comprends bien, dans ce cas vous avez utilisé des ports différents pour joindre chaque NAS. Un peu compliqué non ? Avec le reverse proxy, vous n'utilisez que le port 443 par défaut et selon le ndd, c'est lui qui dispatche vers les applications quelles que soient leurs localisations sur le réseau. Par exemple : si l'application qui correspond à toto.ndd est sur le NAS 2 (ou tout autre équipement, un RPI par exemple) dont l'IP est 192.168.1.25, port http 8080, sur le reverse proxy du NAS 1 vous mettez : origine : https://toto.ndd destination : 192.168.1.25 port 8080. Et dans ce cas, le seul certificat qui est invoqué est celui du NAS 1. Le certificat ne sert à rien sur le NAS 2.
  12. Merci beaucoup pour tous ces détails, j'avais entendu parler de la méthode "ACME" mais ressemblait à une usine à gaz en processus et configuration. J'ignorais qu'il existait une version "Docker" et penses que je vais utiliser cette version qui semble un peu plus simple à gérer. Je ne manquerai pas de revenir vers vous pour information d'évolution. Merci pour le lien sur lequel je vais m'appuyer. J'ai quelques applications (installées sur le NAS) associés à un domaine en accès externe en "https" qui est depuis bien longtemps la norme draconienne des navigateurs sinon refuse l'accès selon le navigateur utilisé. Ceci explique un peu cela
  13. Le risque est assez contenu puisque vous gardez un des disques au chaud. Si la procédure que je vous propose ne fonctionne pas, vous pourrez toujours soit récupérer les données directement sur le disque restant (ou même sur celui qui n'a pas fonctionné dans la procédure), soit vous avez votre sauvegarde qui contient obligatoirement votre db si vous avez sauvegardé le dossier plex. Donc, même si ça ne se déroule pas bien, vous avez encore deux parachutes (voire 3 si le disque d'essai n'a pas été endommagé) pour vous rattraper. Et perso, je miserai plus sur la sauvegarde hyperbackup.
  14. Une petite question : quel intérêt d'avoir un certificat sur chaque NAS ? Je demande ça parce qu'en général on utilise le reverse proxy d'un des NAS pour atteindre les autres NAS et dans ce cas, seul le certificat du NAS avec le reverse proxy est sollicité, à condition bien entendu que la destination du reverse proxy se fasse en http. Un certificat sur un NAS n'a d'utilité que s'il gère un nom de domaine. Si vous joignez le NAS uniquement avec son IP en local, alors le certificat ne sert ... à rien.
  15. Désolé Mic13710, je ne voulais pas vous agacer. C'est juste que j'ai une peur bleue de perdre mes metadonnées , ce qui me fait paniquer et revérifier chaque phrase par excès de prudence. Vos explications sont parfaitement claires.
  16. Ce n'était pas assez clair ? Là non plus ce n'était pas assez clair ?
  17. Pour être plus précis, ce n'est pas possible via DSM car la méthode d'obtention du certificat est en http qui nécessite l'ouverture du port 443 vers le NAS. Par la méthode DNS, pas besoin d'ouverture de port et chaque NAS peut obtenir son propre certificat, peu importe le réseau sur lequel il se trouve. Selon que votre NAS est compatible docker (container manager) ou pas, il existe deux manières d'opérer qui toutes deux utilisent le script acme.sh et des clés API : sans docker : https://github.com/acmesh-official/acme.sh/wiki/Synology-NAS-Guide avec docker : https://www.nas-forum.com/forum/topic/68046-tuto-certificat-lets-encrypt-avec-acmesh-api-ovh-en-docker-dsm67-update-070922/ Si vous n'avez pas docker, le plus simple pour la création des clés API c'est de suivre le tuto pour docker. Vous verrez au final que les deux manières fonctionnent sensiblement pareil. Un conseil : dans les deux cas il faut avoir un identifiant administrateur pour effectuer la demande et créer/actualiser le certificat. Le mieux c'est de créer un identifiant administrateur spécifique que vous n'utiliserez que pour cela. Vous lui donnez un mdp long comme le bras, aucun droit sur les applications et les dossiers (sauf le dossier docker si vous utilisez cette méthode) et surtout pas de double authentification qui complique grandement le processus. A noter : vous ne créez qu'un seul jeu de clés API chez OVH que vous utilisez ensuite sur tous vos NAS.
  18. Merci pour votre procédure. Avant de me lancer et de forcer l'extinction électrique de mon NAS, je souhaite m'assurer d'un point crucial pour la suite. Si je retire mon disque de 2 To saturé pour installer DSM sur le nouveau disque de 4 To (seul dans le Slot 1), il arrive souvent que l'assistant de configuration initiale de Synology crée automatiquement un groupe de stockage et un 'Volume 1' sur ce nouveau disque dès la fin de l'installation. Si cela se produit et que je n'ai pas la main pour l'annuler : Est-ce que je devrai aller manuellement dans le Gestionnaire de stockage pour supprimer ce Volume 1 / Groupe de stockage sur le 4 To (afin de le remettre en statut 'Non initialisé') avant d'éteindre le NAS et d'insérer mon ancien disque de 2 To dans le Slot 2 ? Si je laisse ce Volume 1 actif sur le 4 To et que j'insère ensuite le 2 To (qui contient lui aussi un 'Volume 1' avec tout mon dossier contenant ma base de données Plex /volume1/PlexMediaServer/AppData/Plex Media Server/Plug-in Support/Databases/com.plexapp.plugins.library.db), comment DSM va-t-il gérer ce conflit de nom ? Le volume du 2 To ne risque-t-il pas d'être rejeté ou écrasé ? Je préfère valider cet enchaînement avec vous avant de débrancher quoi que ce soit.
  19. Bonjour Mic13710, Question pertinente mais oui, évidemment. Si vous avez un mode opératoire, je suis preneur. Je précise que les 3 Nas sont sont sur le même environnement réseau et nom de domaine identique sous OVH (pas un nom de domaine avec extension Synology). Pour ne pas le citer, mais à l'époque (2020), dans un sujet déjà évoqué, un membre tout à fait compétent (beaucoup plus que moi) précisait que cela n'était pas possible (dans ma configuration). D'où, la recherche d'un script permettant de contourner cette restriction.
  20. Ah bon ? Je fais ça sans problème sur plusieurs NAS. Avez-vous au moins essayé ?
  21. Bonjour à Tous, Désolé de pas être très actif sur le forum par manque de temps en particulier. Mais je m'en remet à vos connaissances en la matières car je ne suis pas très compétent en commande Linux. Mon objectif est d'utiliser le planificateur de tâches du Synology pour la tâche suivante : Copy certificat let's encrypt existant d'un Nas source vers un autre Nas cible. J'ai 3 Nas Synology dont le 1er a un certificat "Let's Encrypt" qui se renouvelle régulièrement. Jusqu'à présent, je suis obligé de copier manuellement le dernier certificat à jour du 1er vers les 2 autres. Reprenez moi si je dis une bêtise, mais actuellement (sur les 2 autres NAS), il n'est pas possible de renouvellement (en mode auto tous les 3 mois) pour un même nom de domaine : Let's Encrypt ne le permet pas. J'ai donc demandé à une IA de me créer un script pour effectuer cette action mais je n'ai aucune certitude de son bon fonctionnement, pire créer des erreurs ou disfonctionnement du Nas cible. Ce script est ajouter sur le NAS source qui a le renouvellement automatique fonctionnel. Il vérifie si un changement de version de certificat a eu lieu sur le Nas source, et seulement si, effectuer les vérifications sur le Nas cible pour renouvellement, redémarre les services et contrôle si toutes les tâches se sont appliquées sans erreurs. Chose importante, ce script impose l'ouverture du service SSH sur les NAS. Je ne suis pas très chaud à faire cela pour les raisons évidentes de sécurité. S'il est possible de modifier ce besoin ou bien de le sécurisé, je suis à votre écoute. Je vous fourni le script ci-dessous, en espérant qu'une personne attentive et compétente prendra le temps de vérifier et me conseiller. Je suis preneur de tout autre script existant pour cette tâche si déjà existante. Vous remerciant par avance à ceux qui me lirons. PS : ce qui est en couleur est à personnaliser selon votre environnement En cas d'erreur, ne pas hésiter à me le faire savoir Cordialement **************************************************************************************************************** #!/bin/bash # ============================================================ # "VOTRE_NOM DE DOMAINE" certificate synchronisation - V3 # # Source: # NAS 1 # # Destination: # IP_NAS_CIBLE # # DSM 7.2.2-72806 Update 6 (version du DSM à préciser - Idéalement identique aux 2 Nas) # # Fonctions: # - auto-détection certificat via INFO # - détection renouvellement SHA256 # - transfert SSH/SCP # - import SYNO.Core.Certificate # - prise en compte restart_httpd # - vérification certificat installé # - vérification certificat HTTPS réellement présenté # - journalisation # - notification DSM en cas d'erreur # # ============================================================ set -u # ============================================================ # CONFIGURATION # ============================================================ CERT_NAME="VOTRE_NOM_DE_DOMAINE" NAS2="192.168.26.156" NAS2_USER="root" ARCHIVE_BASE="/usr/syno/etc/certificate/_archive" INFO_FILE="${ARCHIVE_BASE}/INFO" LOG_FILE="/var/log/VOTRE_NOM_DE_DOMAINE-cert-sync.log" LOG_MAX_SIZE=2097152 STATE_DIR="/usr/local/etc" STATE_FILE="${STATE_DIR}/VOTRE_NOM_DE_DOMAINE-cert-sync.sha256" REMOTE_TMP="/tmp/VOTRE_NOM_DE_DOMAINE-cert-sync" # HTTPS à vérifier sur NAS 2 HTTPS_HOST="IP_NAS_CIBLE" HTTPS_PORT="PORT_NAS_CIBLE" # Nombre de tentatives après import VERIFY_RETRIES=12 # secondes entre deux tentatives VERIFY_DELAY=5 # SSH SSH_OPTS=" -o BatchMode=yes -o ConnectTimeout=10 -o ServerAliveInterval=10 -o ServerAliveCountMax=3 " # ============================================================ # LOG # ============================================================ log() { echo "$(date '+%Y-%m-%d %H:%M:%S') | $*" >> "${LOG_FILE}" } # ============================================================ # NOTIFICATION # ============================================================ notify() { TITLE="$1" MESSAGE="$2" # -------------------------------------------------------- # Notification DSM. # # synodsmnotify est conservé comme notification locale. # Selon DSM/configuration, les chaînes libres peuvent être # ignorées car DSM 7 documente normalement des clés I18N. # -------------------------------------------------------- if [ -x /usr/syno/bin/synodsmnotify ]; then /usr/syno/bin/synodsmnotify \ @administrators \ "${TITLE}" \ "${MESSAGE}" \ >/dev/null 2>&1 || true fi } # ============================================================ # ERREUR # ============================================================ error_exit() { MSG="$1" log "============================================================" log "ERREUR | ${MSG}" log "============================================================" notify \ "Certificat ${CERT_NAME}" \ "Erreur synchronisation NAS 2 : ${MSG}" exit 1 } # ============================================================ # ROTATION LOG # ============================================================ mkdir -p "$(dirname "${LOG_FILE}")" if [ -f "${LOG_FILE}" ]; then LOG_SIZE=$(wc -c < "${LOG_FILE}" 2>/dev/null || echo 0) if [ "${LOG_SIZE}" -ge "${LOG_MAX_SIZE}" ]; then mv "${LOG_FILE}" "${LOG_FILE}.1" 2>/dev/null || true fi fi touch "${LOG_FILE}" || exit 1 chmod 600 "${LOG_FILE}" # ============================================================ # DEBUT # ============================================================ log "============================================================" log "Début synchronisation ${CERT_NAME}" log "============================================================" # ============================================================ # ROOT # ============================================================ if [ "$(id -u)" != "0" ]; then error_exit "Le script doit être exécuté en root." fi # ============================================================ # VERIFICATION COMMANDES # ============================================================ for CMD in jq openssl sha256sum ssh scp timeout; do if ! command -v "${CMD}" >/dev/null 2>&1; then error_exit "Commande absente : ${CMD}" fi done # ============================================================ # AUTO-DETECTION CERTIFICAT NAS 1 # ============================================================ if [ ! -f "${INFO_FILE}" ]; then error_exit "INFO introuvable : ${INFO_FILE}" fi SOURCE_CERT_ID=$( jq -r \ --arg CERT "${CERT_NAME}" \ ' to_entries[] | select( any( .value.services[]?; .display_name == $CERT ) ) | .key ' "${INFO_FILE}" | head -n 1 ) if [ -z "${SOURCE_CERT_ID}" ] || [ "${SOURCE_CERT_ID}" = "null" ]; then error_exit \ "Certificat ${CERT_NAME} introuvable sur NAS 1." fi SOURCE_DIR="${ARCHIVE_BASE}/${SOURCE_CERT_ID}" log "Certificat NAS 1 : ${SOURCE_CERT_ID}" log "Répertoire : ${SOURCE_DIR}" # ============================================================ # VERIFICATION FICHIERS SOURCE # ============================================================ for FILE in cert.pem chain.pem privkey.pem; do if [ ! -s "${SOURCE_DIR}/${FILE}" ]; then error_exit \ "Fichier source absent ou vide : ${FILE}" fi done # ============================================================ # VALIDATION CERTIFICAT # ============================================================ if ! openssl x509 \ -in "${SOURCE_DIR}/cert.pem" \ -noout >/dev/null 2>&1; then error_exit "Certificat source invalide." fi SOURCE_SUBJECT=$( openssl x509 \ -in "${SOURCE_DIR}/cert.pem" \ -noout -subject ) SOURCE_ISSUER=$( openssl x509 \ -in "${SOURCE_DIR}/cert.pem" \ -noout -issuer ) SOURCE_ENDDATE=$( openssl x509 \ -in "${SOURCE_DIR}/cert.pem" \ -noout -enddate ) SOURCE_SERIAL=$( openssl x509 \ -in "${SOURCE_DIR}/cert.pem" \ -noout -serial ) log "Sujet : ${SOURCE_SUBJECT}" log "Émetteur : ${SOURCE_ISSUER}" log "Expiration : ${SOURCE_ENDDATE}" log "Serial : ${SOURCE_SERIAL}" # ============================================================ # EMPREINTE # ============================================================ CURRENT_HASH=$( { sha256sum "${SOURCE_DIR}/cert.pem" sha256sum "${SOURCE_DIR}/chain.pem" sha256sum "${SOURCE_DIR}/privkey.pem" } | sha256sum | awk '{print $1}' ) log "Empreinte actuelle : ${CURRENT_HASH}" # ============================================================ # DETECTION RENOUVELLEMENT # ============================================================ if [ -f "${STATE_FILE}" ]; then OLD_HASH=$(cat "${STATE_FILE}" 2>/dev/null) log "Empreinte précédente : ${OLD_HASH}" if [ "${CURRENT_HASH}" = "${OLD_HASH}" ]; then log "Aucun changement détecté." log "Fin." log "============================================================" exit 0 fi log "Nouveau certificat détecté." else log "Première exécution : aucune empreinte précédente." fi # ============================================================ # SSH NAS 2 # ============================================================ log "Connexion SSH vers ${NAS2}..." if ! ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ "echo SSH_OK" 2>/dev/null | grep -q "SSH_OK"; then error_exit \ "Connexion SSH impossible vers ${NAS2}." fi log "SSH OK." # ============================================================ # AUTO-DETECTION CERTIFICAT NAS 2 # ============================================================ REMOTE_CERT_ID=$( ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ "jq -r --arg CERT '${CERT_NAME}' ' to_entries[] | select( any( .value.services[]?; .display_name == \$CERT ) ) | .key ' /usr/syno/etc/certificate/_archive/INFO" \ 2>/dev/null | head -n 1 ) if [ -z "${REMOTE_CERT_ID}" ] || [ "${REMOTE_CERT_ID}" = "null" ]; then error_exit \ "Certificat ${CERT_NAME} introuvable sur NAS 2." fi REMOTE_CERT_DIR="${ARCHIVE_BASE}/${REMOTE_CERT_ID}" log "Certificat NAS 2 : ${REMOTE_CERT_ID}" log "Répertoire : ${REMOTE_CERT_DIR}" # ============================================================ # PREPARATION TEMPORAIRE # ============================================================ log "Préparation transfert..." if ! ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ "rm -rf '${REMOTE_TMP}' && mkdir -m 700 '${REMOTE_TMP}'"; then error_exit \ "Impossible de créer le répertoire temporaire NAS 2." fi # ============================================================ # NETTOYAGE DISTANT EN CAS D'ERREUR # ============================================================ cleanup_remote() { ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ "rm -rf '${REMOTE_TMP}'" \ >/dev/null 2>&1 || true } # ============================================================ # COPIE # ============================================================ log "Copie cert.pem..." if ! scp ${SSH_OPTS} \ "${SOURCE_DIR}/cert.pem" \ "${NAS2_USER}@${NAS2}:${REMOTE_TMP}/cert.pem"; then cleanup_remote error_exit "Copie cert.pem échouée." fi log "Copie chain.pem..." if ! scp ${SSH_OPTS} \ "${SOURCE_DIR}/chain.pem" \ "${NAS2_USER}@${NAS2}:${REMOTE_TMP}/chain.pem"; then cleanup_remote error_exit "Copie chain.pem échouée." fi log "Copie privkey.pem..." if ! scp ${SSH_OPTS} \ "${SOURCE_DIR}/privkey.pem" \ "${NAS2_USER}@${NAS2}:${REMOTE_TMP}/privkey.pem"; then cleanup_remote error_exit "Copie privkey.pem échouée." fi ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ "chmod 600 '${REMOTE_TMP}/privkey.pem'" log "Copie terminée." # ============================================================ # IMPORT DSM # ============================================================ log "Import certificat dans DSM..." REMOTE_RESULT=$( ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ bash <<REMOTE_SCRIPT set -u CERT_ID="${REMOTE_CERT_ID}" TMP="${REMOTE_TMP}" for FILE in cert.pem chain.pem privkey.pem; do if [ ! -s "\${TMP}/\${FILE}" ]; then echo '{"success":false,"error":"Fichier manquant"}' rm -rf "\${TMP}" exit 1 fi done # Validation certificat if ! openssl x509 \ -in "\${TMP}/cert.pem" \ -noout >/dev/null 2>&1; then echo '{"success":false,"error":"Certificat invalide"}' rm -rf "\${TMP}" exit 1 fi # ------------------------------------------------------------ # Import DSM # ------------------------------------------------------------ RESULT=\$( /usr/syno/bin/synowebapi \ --exec-fastwebapi \ api="SYNO.Core.Certificate" \ method="import" \ version="1" \ key_tmp="\"\${TMP}/privkey.pem\"" \ cert_tmp="\"\${TMP}/cert.pem\"" \ inter_cert_tmp="\"\${TMP}/chain.pem\"" \ id="\"\${CERT_ID}\"" \ desc="\"${CERT_NAME}\"" \ 2>&1 ) RET=\$? echo "\${RESULT}" rm -rf "\${TMP}" exit \${RET} REMOTE_SCRIPT ) REMOTE_RET=$? log "Réponse API : ${REMOTE_RESULT}" if [ "${REMOTE_RET}" -ne 0 ]; then error_exit \ "API DSM : code retour ${REMOTE_RET}." fi # ============================================================ # RESULTAT API # ============================================================ API_SUCCESS=$( echo "${REMOTE_RESULT}" | jq -r '.success // false' 2>/dev/null ) if [ "${API_SUCCESS}" != "true" ]; then error_exit \ "DSM n'a pas confirmé l'import." fi log "Import DSM réussi." # ============================================================ # DETECTION RESTART HTTPD # ============================================================ RESTART_HTTPD=$( echo "${REMOTE_RESULT}" | jq -r '.data.restart_httpd // .restart_httpd // false' \ 2>/dev/null ) log "restart_httpd : ${RESTART_HTTPD}" # ============================================================ # SI DSM DEMANDE RESTART HTTP # ============================================================ if [ "${RESTART_HTTPD}" = "true" ]; then log "DSM demande un redémarrage/rechargement HTTP." # -------------------------------------------------------- # On ne tue PAS nginx directement. # # On laisse DSM gérer ses services. # -------------------------------------------------------- ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ "/usr/syno/bin/synowebapi \ --exec-fastwebapi \ api='SYNO.Core.Web.DSM' \ method='restart' \ version='1' \ >/dev/null 2>&1 || true" \ >/dev/null 2>&1 || true log "Commande de rechargement HTTP envoyée." else log "DSM n'indique pas de redémarrage HTTP nécessaire." fi # ============================================================ # ATTENTE DU SERVICE HTTPS # ============================================================ log "Attente disponibilité HTTPS NAS 2..." HTTPS_READY="false" for i in $(seq 1 "${VERIFY_RETRIES}"); do if timeout 5 bash -c \ "</dev/tcp/${HTTPS_HOST}/${HTTPS_PORT}" \ >/dev/null 2>&1; then HTTPS_READY="true" log "HTTPS disponible après ${i} tentative(s)." break fi log "HTTPS indisponible - tentative ${i}/${VERIFY_RETRIES}" sleep "${VERIFY_DELAY}" done if [ "${HTTPS_READY}" != "true" ]; then error_exit \ "HTTPS ${HTTPS_HOST}:${HTTPS_PORT} ne répond pas après import." fi # ============================================================ # VERIFICATION CERTIFICAT DANS ARCHIVE DSM # ============================================================ log "Vérification certificat dans _archive..." REMOTE_SERIAL=$( ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ "openssl x509 \ -in '${REMOTE_CERT_DIR}/cert.pem' \ -noout -serial" \ 2>/dev/null ) if [ "${REMOTE_SERIAL}" != "${SOURCE_SERIAL}" ]; then error_exit \ "Serial du certificat installé différent." fi log "Serial _archive : OK." # ============================================================ # VERIFICATION SHA256 CERTIFICAT PUBLIC # ============================================================ SOURCE_CERT_HASH=$( sha256sum "${SOURCE_DIR}/cert.pem" | awk '{print $1}' ) REMOTE_CERT_HASH=$( ssh ${SSH_OPTS} \ "${NAS2_USER}@${NAS2}" \ "sha256sum '${REMOTE_CERT_DIR}/cert.pem'" | awk '{print $1}' ) if [ "${SOURCE_CERT_HASH}" != "${REMOTE_CERT_HASH}" ]; then error_exit \ "SHA256 du certificat _archive différent." fi log "SHA256 _archive : OK." # ============================================================ # VERIFICATION CERTIFICAT PRESENTE PAR HTTPS # # On interroge le NAS 2 directement. # # -servername = VOTRE_NOM_DE_DOMAINE.me # permet de tester le certificat du bon virtual host. # ============================================================ log "Vérification certificat réellement présenté par HTTPS..." REMOTE_HTTPS_SERIAL=$( echo | timeout 15 openssl s_client \ -connect "${HTTPS_HOST}:${HTTPS_PORT}" \ -servername "${CERT_NAME}" \ -showcerts \ 2>/dev/null | openssl x509 \ -noout \ -serial 2>/dev/null ) if [ -z "${REMOTE_HTTPS_SERIAL}" ]; then error_exit \ "Impossible de récupérer le certificat présenté par HTTPS." fi log "Serial HTTPS : ${REMOTE_HTTPS_SERIAL}" if [ "${REMOTE_HTTPS_SERIAL}" != "${SOURCE_SERIAL}" ]; then error_exit \ "Le certificat présenté par HTTPS ne correspond pas au certificat source." fi log "Certificat HTTPS : OK." # ============================================================ # VERIFICATION DATE D'EXPIRATION HTTPS # ============================================================ REMOTE_HTTPS_ENDDATE=$( echo | timeout 15 openssl s_client \ -connect "${HTTPS_HOST}:${HTTPS_PORT}" \ -servername "${CERT_NAME}" \ 2>/dev/null | openssl x509 \ -noout \ -enddate 2>/dev/null ) log "Expiration HTTPS : ${REMOTE_HTTPS_ENDDATE}" # ============================================================ # SAUVEGARDE ETAT # ============================================================ mkdir -p "${STATE_DIR}" echo "${CURRENT_HASH}" > "${STATE_FILE}" chmod 600 "${STATE_FILE}" log "Nouvelle empreinte enregistrée." # ============================================================ # SUCCES # ============================================================ log "============================================================" log "SUCCES" log "Certificat ${CERT_NAME} synchronisé vers NAS 2." log "Certificat DSM : ${REMOTE_CERT_ID}" log "Serial : ${SOURCE_SERIAL}" log "HTTPS : vérifié" log "============================================================" notify \ "Certificat ${CERT_NAME}" \ "Certificat renouvelé et vérifié sur le NAS 2." exit 0
  22. Oui. Il se peut que DSM détecte que des données existent sur le disque sans toutefois monter le volume. Il faudra me dire quels sont les messages envoyés par DSM. En principe, il est préférable de garder l'emplacement de chaque disque. Toutefois, DSM autorise le mélange des disques. Je n'ai jamais tenté de le faire donc je ne peux pas confirmer. Le risque en débranchant à la sauvage, c'est la corruption des données si les disques sont en activité. Mais comme vos disques ne travaillent pas, il n'y a pas grand risque à le faire. Cependant le risque 0 n'existant pas, là non plus je ne confirme pas. Vous n'avez pas trop le choix de toute façon, c'est ça ou vous n'avancerez pas. Si la sauvegarde est faite via hyperbackup, la restauration sera beaucoup plus simple. Je n'utilise pas plex et je ne sais pas où se trouve la base de donnée que vous voulez récupérer. Si elle est dans le dossier Plex et que vous l'avez sauvegardé, alors il fait partie de votre sauvegarde.
  23. Bonjour Mic13710, Merci beaucoup pour votre réponse détaillée. Si j'ai bien compris votre procédure pour sauver mes métadonnées Plex, voici les étapes exactes que je compte suivre : J'éteins le NAS (de force car il est bloqué actuellement), je retire mes deux anciens disques de 2 To et je les mets de côté en sécurité. J'insère uniquement le nouveau disque de 4 To dans le Slot 1 et j'allume le NAS pour installer DSM. Une fois sur le bureau de ce DSM tout neuf, lorsque l'assistant automatique s'ouvre pour configurer le stockage, j'annule tout pour ne pas créer de groupe de stockage ni de volume. Le 4 To doit rester "Non initialisé". J'éteins proprement le NAS via l'interface DSM. J'insère un seul de mes deux anciens disques de 2 To dans le Slot 2 (le 4 To reste dans le Slot 1) et je rallume le NAS. Depuis le Gestionnaire de stockage, le NAS devrait reconnaître le groupe du 2 To et mes dossiers réapparaîtront dans File Station. Je créerai ensuite un nouveau groupe/volume sur le 4 To (qui prendra le nom de Volume 2). Puis, via le Panneau de configuration (Dossiers partagés), je modifierai l'emplacement de mes dossiers Plex un par un pour demander au NAS de les transférer automatiquement du Volume 1 (le 2 To) vers le Volume 2 (le 4 To). Pouvez-vous me confirmer que cette procédure est exactement celle que vous me conseillez ? J'ai deux dernières craintes importantes avant de me lancer : Le choix du disque : Mes deux anciens disques de 2 To fonctionnaient en miroir (SHR/RAID 1). Est-ce que je peux insérer n'importe lequel des deux dans le Slot 2 pour l'étape 5 (l'autre restant sur la table en sécurité absolue) ? Le risque de débrancher : Comme mon NAS est totalement figé par la saturation (l'interface Web bloque après le mot de passe et le bouton Power ne répond plus du tout), je suis obligé de débrancher directement la prise électrique alors que la LED du disque clignote parfois en vert. Est-ce que ce débranchement forcé risque de corrompre définitivement mes métadonnées Plex avant même que je commence votre procédure ? La sauvergarde est fait via hyperbackup .
  24. Si votre choix est de rajouter une extension, alors, oui, vous pouvez créer un nouveau groupe en SHR.
  25. Non seulement il va y avoir un conflit entre le volume 1 sur le disque 4To et le volume 1 sur le 2To ce qui risque de conduire à un rejet d'un des volumes, mais aussi un souci au niveau de la partition système qui ne sera pas la même entre les deux disques. Si DSM 7.1 ou plus, le 4To aura une partition à 7.9Go alors que le 2To a certainement une partition en 2.2Go. Ce que vous pouvez tenter c'est de monter le 4To, installer DSM mais sans un groupe dessus. S'il y en a un, vous le supprimez. Vous montez un disque de 2To (celui qui était à l'emplacement vide précédemment) et vous redémarrez le NAS. Vous regardez sur le gestionnaire de stockage si DSM retrouve le groupe et le volume du 2To et vous regardez dans file station si vos dossiers sont présents. Si c'est le cas, alors vous créez un nouveau groupe et volume sur le 4To (ils prendront le numéro 2 mais ça n'a pas d'importance pour la suite) et à partir de DSM, vous modifiez pour chaque dossier partagé le numéro du volume de destination du 1 vers le 2. DSM va automatiquement transférer les dossiers et leur contenu du 2To vers le 4To. Ne faites pas tout d'un coup mais attendez que le dossier soit complètement transféré avant de passer au suivant. Si tout se déroule normalement, vous aurez toutes vos données dispos sur le 4To ainsi que leurs métadonnées. Si le groupe et volume du 2To ne sont pas reconnus, activez le SSH dans DSM (panneau de configuration, terminal), si parefeu activé, autorisez le port 22, lancez la commande donnée plus haut pour avoir une vue correcte des disques dans le NAS et postez le résultat. Vos sauvegardes sont-elles faites via un vrai logiciel de sauvegarde (hyperbackup ou autre) et dans ce cas les métadonnées sont conservées et restituées lors de la restauration ou est-ce une simple copie des dossiers ? S'il s'agit de récupérer la base de données, vous pouvez passer par la procédure de récupération des données (le lien que je vous ai donné). En tout cas, ne faite vos manipulations que sur un seul des disques et gardez l'autre au chaud pour conserver intactes vos données.
  26. Merci beaucoup ! Donc je peux avoir mon nas principal en RAID et mon unité d'extension en SHR si j'ai bien compris en créant un nouveau groupe ! et avoir un nouveau volume de stockage indépendant de mon NAS principal !
  27. jumeau_974 a rejoint la communauté
  28. Aussi Est-ce que je peux faire cette procédure : J'éteins le NAS et je retire mon ancien disque de 2 To (qui contient toutes mes données et mes configurations Plex intactes). Je le mets de côté en sécurité. J'insère mon nouveau disque de 4 To tout seul dans l'emplacement 1, et je réinstalle un système DSM tout propre dessus via Synology Assistant. Une fois le NAS fonctionnel sur le 4 To, j'installe l'application Plex (sans la configurer). Ensuite, j'éteins le NAS, j'insère mon ancien disque de 2 To dans l'emplacement 2, et je rallume. Depuis le Gestionnaire de stockage, je tente un "Assemblage en ligne" (ou une détection de pool de stockage étranger) sur ce disque 2 To pour le monter en lecture seule. L'objectif absolu est de pouvoir copier l'intégralité du dossier /volume1/PlexMediaServer directement du 2 To vers le 4 To. Je veux être sûr de récupérer le fichier de base de données com.plexapp.plugins.library.db qui contient toutes mes listes de lecture et mes métadonnées sans rien perdre. Qu'en pensez-vous ? Est-ce que le fait d'insérer l'ancien disque de 2 To dans la baie n°2 après coup ne risque pas de corrompre le nouveau DSM sur le 4 To ou de forcer un formatage automatique qui détruirait ce dossier ?
  29. Bonjour Je vous fais un état des lieux précis car je suis à nouveau complètement bloqué : Configuration actuelle : J'ai laissé uniquement un seul des anciens disques de 2 To dans le NAS (l'autre ancien disque et le nouveau de 4 To sont retirés). Tentative SSH : J'ai essayé de me connecter en SSH depuis mon Mac (port 22) mais la connexion se coupe immédiatement (Connection closed). Impossible de lancer cat /proc/mdstat. Je vous joins la capture d'écran de mon Terminal. Reset Mode 2 testé : J'ai tenté le Reset Mode 2 (Double Reset au trombone) mais cela n'a absolument rien fait. Le voyant STATUS clignote toujours en orange et le NAS reste totalement introuvable sur le réseau (néant sur ://synology.com et Synology Assistant). Impératif Plex & Disque Externe : J'ai un disque dur externe à disposition pour sauvegarder mes données. En revanche, je ne veux absolument pas repartir de zéro ou formater car je veux à tout prix sauver mes métadonnées et mes listes de lecture Plex Media Server (hors de question de perdre mon rangement). Étant une nouvelle fois complètement bloqué et sans aucune réponse du NAS, je fais quoi ? Est-ce que je dois encore faire un débranchement électrique sauvage ou y a-t-il une autre manipulation à tenter avec ce disque ? Rectification le nas est bien trouvé sur le réseau

Account

Navigation

Rechercher

Rechercher

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.