Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
pratique:informatique:syncthing [17/05/2015 11:37] Zatalyzpratique:informatique:syncthing [15/07/2025 08:16] (Version actuelle) Zatalyz
Ligne 45: Ligne 45:
  
 Mettre : Mettre :
-<code><gui enabled="true" tls="false"> +<code> 
-        <address>0.0.0.0:8080</address></code> +    <gui enabled="true" tls="false" debugging="false"> 
-<WRAP center round help 60%> +        <address>0.0.0.0:8384</address> 
-''0.0.0.0'' indique d'utiliser l'adresse ip. Pourquoi changer le port, je ne sais pas trop..On peut sans doute mettre ce qu'on veut ? +</code> 
-</WRAP>+  ''0.0.0.0'' indique d'utiliser l'adresse ip.  
 +  * ''tls="false"'' parce que c'est apache qui gère le chiffrement 
 +  * On peut changer le port, ou pas, suivant si on craint que ça scanne là.
  
-Taper l'adresse du serveur suivi de 8080 (http://153.81.158.610:8080/ par exemple). Aller dans la configuration, mettre un nom pour ''Utilisateur autorisé GUI'' et un mot de passe à ''Mot de passe d'authentification GUI''. En cas d'oubli, il suffira de rééditer ''/home/user/.config/syncthing/config.xml'' et d'enlever les deux lignes sous ''<address>0.0.0.0:8080</address>'', puis de remettre un mot de passe.+ 
 +Taper l'adresse du serveur suivi de 8384 (http://153.81.158.610:8384/ par exemple). Aller dans la configuration, mettre un nom pour ''Utilisateur autorisé GUI'' et un mot de passe à ''Mot de passe d'authentification GUI''. En cas d'oubli, il suffira de rééditer ''/home/user/.config/syncthing/config.xml'' et d'enlever les deux lignes sous ''<address>0.0.0.0:8080</address>'', puis de remettre un mot de passe.
  
  
 Ajouter les ID des divers appareils. Sur chaque appareil, ajouter uniquement l'ID du serveur. Synchroniser les dossiers nécessaire. Ajouter les ID des divers appareils. Sur chaque appareil, ajouter uniquement l'ID du serveur. Synchroniser les dossiers nécessaire.
 +
 +==== Derrière un proxy ====
 +Cas particulier : mon proxy est configuré en ssl passthrough (cela reste la VM de Syncthing qui gère le certificat ssl), donc côté proxy c'est comme n'importe quel autre site. 
 +
 +Ensuite, j'utilise un sous-domaine spécifiquement pour Syncthing. Donc dans le virtualhost:443 sur la machine, ce sont les déclarations habituelles (dont le certificat ssl), et ceci : 
 +<code>
 +    ProxyPass / http://localhost:8384/
 +    ProxyPassReverse / http://localhost:8384/
 +    # Forcer Syncthing à utiliser le bon domaine/HTTPS
 +    RequestHeader set X-Forwarded-Proto "https"
 +    # WebSocket 
 +    RewriteEngine on
 +    RewriteCond %{HTTP:Upgrade} websocket [NC]
 +    RewriteCond %{HTTP:Connection} upgrade [NC]
 +    RewriteRule ^/?(.*) "ws://localhost:8384/$1" [P,L]
 +
 +    # Sécurité : en-têtes et restrictions
 +    ProxyRequests Off
 +    <Proxy *>
 +        Require all granted
 +    </Proxy>    
 +</VirtualHost>
 +
 +</code>
  
 ===== Allumer au démarrage ===== ===== Allumer au démarrage =====
 Avec SystemD, taper les commandes suivantes devrait suffire ? Avec SystemD, taper les commandes suivantes devrait suffire ?
  
-  systemctl --user enable syncthing.service +  systemctl enable syncthing@user.service 
-  systemctl --user start syncthing.service+  systemctl start syncthing@user.service 
 + 
 +Remplacer "user" par le nom de l'utilisateur qui lance le service ! 
 + 
 +Sur les anciens systèmes où le démarrage se fait toujours via init.d, copier ce fichier (en adaptant au début les variables) dans ''/etc/init.d/syncthing'' (source : [[https://forum.syncthing.net/t/keeping-syncthing-running-systemd-regular-etc-init-d/402]] 
 + 
 +<code> 
 +#!/bin/sh 
 +### BEGIN INIT INFO 
 +# Provides: syncthing 
 +# Required-Start: $local_fs $remote_fs 
 +# Required-Stop: $local_fs $remote_fs 
 +# Should-Start: $network 
 +# Should-Stop: $network 
 +# Default-Start: 2 3 4 5 
 +# Default-Stop: 0 1 6 
 +# Short-Description: Multi-user daemonized version of syncthing. 
 +# Description: Starts the syncthing daemon for all registered users. 
 +### END INIT INFO 
 + 
 +# Replace with users you want to run syncthing clients for 
 +syncthing_USERS="nom_de_l'utilisateur" 
 +DAEMON=/usr/bin/syncthing 
 + 
 +startd() { 
 +  for stuser in $syncthing_USERS; do 
 +    HOMEDIR=$(getent passwd $stuser | awk -F: '{print $6}'
 +    if [ -f $config ]; then 
 +      echo "Starting syncthiing for $stuser" 
 +      start-stop-daemon -b -o -c $stuser -S -u $stuser -x $DAEMON 
 +    else 
 +      echo "Couldn'start syncthing for $stuser (no $config found)" 
 +    fi 
 +  done 
 +
 + 
 +stopd() { 
 +  for stuser in $syncthing_USERS; do 
 +    dbpid=$(pgrep -fu $stuser $DAEMON) 
 +    if [ ! -z "$dbpid" ]; then 
 +      echo "Stopping syncthing for $stuser" 
 +      start-stop-daemon -o -c $stuser -K -u $stuser -x $DAEMON 
 +    fi 
 +  done 
 +
 + 
 +status() { 
 +  for stuser in $syncthing_USERS; do 
 +    dbpid=$(pgrep -fu $stuser $DAEMON) 
 +    if [ -z "$dbpid" ]; then 
 +      echo "syncthing for USER $stuser: not running.
 +    else 
 +      echo "syncthing for USER $stuser: running (pid $dbpid)" 
 +    fi 
 +  done 
 +
 + 
 +case "$1" in 
 +  start) startd 
 +    ;; 
 +  stop) stopd 
 +    ;; 
 +  restart|reload|force-reload) stopd && startd 
 +    ;; 
 +  status) status 
 +    ;; 
 +  *) echo "Usage: /etc/init.d/syncthing {start|stop|reload|force-reload|restart|status}" 
 +     exit 1 
 +   ;; 
 +esac 
 + 
 +exit 0 
 +</code> 
 + 
 +Rendre le script executable : 
 +  chmod a+x /etc/init.d/syncthing 
 + 
 +Pour lancer le service 
 +  /etc/init.d/syncthing start 
 + 
 +===== Application android ===== 
 +Source ici : https://github.com/syncthing/syncthing-android 
 + 
 +==== Éviter que ça tourne tout le temps (et n'importe où) ==== 
 +En fait, y'a de quoi gérer, mais c'est pas évident. 
 + 
 +Dans les paramètres, conditions d'exécution : tout décocher, sauf ''Exécuter en wifi'' (paramétrer aussi les réseaux où la synchro est acceptable) et ''Sauvegarde batterie selon les réglages''.  
 + 
 +Puis retourner dans le menu et faire ''Quitter''. <wrap important>Tuer l'appli ou l'enlever de la liste des appli ne suffit pas, elle tournera en arrière plan et se relancera après un kill. Il faut bien cliquer sur ''Quitter'' pour qu'elle cesse de tourner</wrap>
 + 
 +Et voilà. Plus qu'à l'activer quand c'est le bon moment ! 
 + 
 + 
pratique/informatique/syncthing.1431855429.txt.gz · Dernière modification : 30/11/2020 10:35 (modification externe)