GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar Syncthing en Ubuntu 20.04 y Ubuntu 21.04

Syncthing es una aplicación de sincronización de archivos peer-to-peer gratuita y de código abierto. Syncthing puede sincronizar archivos entre dispositivos en una red local o entre dispositivos remotos a través de Internet, con todos los datos transmitidos entre múltiples dispositivos encriptados con TLS. Siempre que cree, modifique o elimine datos en un nodo de emparejamiento, la aplicación replicará automáticamente los cambios en otros servidores. Otra característica popular es que Syncthing está disponible en varias plataformas en Windows, macOS, Linux, Android, Solaris, Darwin y BSD, lo que permite la sincronización entre múltiples dispositivos.

Para los usuarios que deseen probar este excelente software de sincronización, al final de esta guía, sabrán cómo instalar Syncthing en Ubuntu 20.04 LTS . El mismo principio funcionará para la versión más nueva Ubuntu 21.04 (Hirsute Hippo).

Requisitos previos

  • SO recomendado: (x2) Ubuntu 20.04:opcional (Ubuntu 21.04 y Linux Mint 20)
  • Cuenta de usuario: Una cuenta de usuario con sudo o acceso root.
  • Paquetes requeridos: apt-transporte-https, curl

Verifique y actualice su sistema operativo Ubuntu 20.04.

sudo apt update && sudo apt upgrade -y

De forma predeterminada, los servidores deben venir con (curl) instalado, pero verificará esto junto con la instalación de (apt-transport-https) paquete, que es necesario para que el administrador de paquetes APT pueda establecer una conexión HTTPS con este repositorio.

sudo apt install apt-transport-https curl -y

Instala Syncthing usando el repositorio oficial .Deb

Syncthing está en los repositorios predeterminados de Ubuntu, pero no está tan actualizado como a muchos les gustaría. En su lugar, instalará el repositorio fuente deb oficial:

Primero, agregue la clave GPG ejecutando el siguiente comando:

curl -s https://syncthing.net/release-key.txt | sudo apt-key add -

Debería obtener el (Ok) salida como arriba en su terminal de Ubuntu, y esto significa que la clave GPG se ha importado con éxito. A continuación, deberá agregar el repositorio Syncthing ejecutando lo siguiente en su terminal:

echo "deb https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list

Ahora puedes actualizar tus repositorios e instalar Syncthing:

sudo apt update && sudo apt install syncthing -y

Confirme la instalación comprobando la compilación de la versión:

syncthing --version

Configurar la sincronización como un servicio de Systemd

Sincronización (.deb) el paquete viene con el (systemd) requerido archivo de servicio en la ubicación (/lib/systemd/system) . En este directorio, encontrará el ([email protected]) expediente. La forma en que funciona Syncthing es que debe ingresar el nombre de usuario de la cuenta entre (@) y el (.servicio), por ejemplo ([email protected]) .

Para iniciar y habilitar Syncthing, debe ejecutar el siguiente comando.

sudo systemctl enable [email protected]

Para saber si tuvo éxito, debería ver el siguiente ejemplo de salida con (Enlace simbólico creado) :

Ahora que el servicio está habilitado al inicio, debe iniciarlo manualmente esta vez ejecutando lo siguiente:

sudo systemctl start [email protected]

Ahora, debe verificar el estado escribiendo el siguiente comando:

sudo systemctl status [email protected]

Para salir de la pantalla de estado, presione (Q) o (CTRL+C) .

Tenga en cuenta que sus archivos de configuración se encuentran en (/home/username/.config/syncthing/) y su carpeta de inicio predeterminada es (/home/username/syncthing/) . Puede cambiar la carpeta de inicio más adelante si lo desea.

El archivo de configuración principal se encuentra en (/home/username/.config/syncthing/config.xml) si necesita cambiar o corregir alguna configuración, como cambiar el 127.0.0.1 predeterminado a una dirección IP interna o externa.

Configurar cortafuegos UFW

Será necesario permitir la sincronización para usar el puerto (22000) para comunicarse con sus compañeros. Si está utilizando UFW, ejecute el siguiente comando para permitir el puerto:

sudo ufw allow 22000/tcp

Instalar compañeros de sincronización

Para usar Syncthing, deberá instalar una segunda copia hasta este punto en otro servidor o escritorio. La parte más fantástica de Syncthing es que puede instalarlo no solo en Linux sino en múltiples sistemas operativos.

Tenga en cuenta que si está utilizando Syncthing para realizar una copia de seguridad en otra plataforma que no sea Linux, asegúrese de configurar (recibir) solo porque los permisos de archivo que van y vienen causarán problemas.

Primer uso y configuración Syncthing WebUI

Syncthing escucha (127.0.0.1:8384) de forma predeterminada a la que puede acceder en su navegador web. Escriba lo siguiente en la barra de direcciones de Internet Explorer:

http://127.0.0.1:8384

La primera vez que acceda a WebUI, verá una ventana emergente que le preguntará (¿Permitir informes de uso anónimos?) . Seleccione una opción para continuar.

Después de ordenar el informe de uso, se le solicitará una notificación (Autenticación de GUI:Establecer usuario y contraseña). Es muy importante proteger su servicio de sincronización, por lo que debe presionar inmediatamente (Configuración) para pasar a la página de configuración.

Siguiente pantalla, seleccione (GUI) como se muestra a continuación:

Ahora, configure un (nombre de usuario) y (contraseña) . Además, esta parte se puede configurar (HTTPS) para uso de GUI si lo prefiere. Una vez que haya terminado, presione el botón (Guardar) botón en la esquina inferior derecha como se muestra:

Ahora es el momento de repetir toda la guía anterior en un segundo sistema operativo emparejado para pasar a la siguiente parte de la guía, que requiere (dos) Sincronización de clientes.

Sincronización de archivos y carpetas entre dispositivos

Ahora ha instalado 2 o más clientes de Syncthing en varios dispositivos y sistemas operativos, y ahora puede configurar la sincronización de archivos o carpetas entre los dispositivos.

En primer lugar, en WebUI en (nodo de interconexión 1) , puede hacer clic en (Acciones> Mostrar ID) en la esquina superior derecha, y encontrará la ID del dispositivo, que es una larga cadena de letras y números.

También puede ver el código QT, la identificación del dispositivo y se usa para sincronizar en teléfonos inteligentes y tabletas.

El siguiente paso es copiar la (Identificación del dispositivo) que en el ejemplo de la guía es (CAL3FN4-R72LBTK-Q3ZFAEC-OUOAIEM-ZOJIMQ3-JHG5OCK-ZSJORVA-64552A3) desde la interfaz WebUI del nodo desde el que desea que se sincronicen los archivos primero, que hemos llamado (nodo de intercambio de tráfico 1) para esta guía.

A continuación, abre la WebUI del segundo dispositivo de emparejamiento (nodo de emparejamiento 2) y haga clic en (Agregar dispositivo remoto) en la esquina inferior derecha. Más allá del ID del dispositivo, asigne un nombre al nuevo dispositivo y luego haga clic en (Guardar) botón para continuar.

Ahora de vuelta en (nodo de emparejamiento 1 ), verá (nodo de emparejamiento 2) intentando conectarse. Si no lo ve, actualice su página y asegúrese de que UFW o un firewall similar no lo bloquee. Haga clic en (Agregar dispositivo) para continuar:

Una vez que haga clic para agregar el dispositivo, aparecerá una nueva pantalla (nodo de emparejamiento 1). Aquí puede cambiar el nombre predeterminado del dispositivo, compartir archivos y directorios automáticamente en el panel para compartir y más. Haz clic en (Guardar) para continuar:

Ahora ambos nodos están conectados. Ahora puede compartir un directorio entre los dispositivos. Por ejemplo, (nodo de emparejamiento 1) tiene una carpeta que desea sincronizar entre sí y (nodo de emparejamiento 2) . El primer clic agrega una carpeta en (nodo de emparejamiento 1) :

Para la guía, el ejemplo usó (Descargas) directorio para sincronizar entre los dispositivos, y puede proporcionar la carpeta que desea sincronizar con (nodo de emparejamiento 2) una identificación única (nombre) . Para la guía, llamamos al ID (descargas-copia de seguridad) y establecer el camino. No haga clic en guardar. Haga clic en (Compartir) en la fila superior para continuar:

Ahora en (Compartir) panel, haga clic en el dispositivo remoto para compartir. En nuestro ejemplo a continuación, es (nodo de emparejamiento 2), luego haga clic en Guardar para continuar.

Ahora en (nodo de emparejamiento 1) , notará que la carpeta se está escaneando, lo cual está bien, ahora vuelva a cambiar (nodo de intercambio de tráfico 2) y verá una nueva ventana emergente con (nodo de intercambio de tráfico 1) deseando enviar las (Descargas) directorio. Haga clic en agregar:

Ahora aparecerá una nueva ventana emergente en (nodo de emparejamiento 2) , aquí puede cambiar su ruta si es necesario, además de ajustar cualquier otra opción en el panel superior. Por ahora, haz clic en Guardar para ver cómo comienza el proceso de sincronización:

Ahora puede tomar alrededor de un minuto, pero los dispositivos deberían comenzar a sincronizarse, ejemplo a continuación:

¡Felicitaciones, ha utilizado con éxito Syncthing para sincronizar dos dispositivos! Tenga en cuenta si ve el siguiente error (Error al crear el marcador de carpeta:mkdir .stfolder:sistema de archivos de solo lectura) , consulte el siguiente paso para corregir los permisos. Una vez corregido, reinicie el servicio de sincronización y debería iniciar el proceso.

Configurar permisos de sincronización

La sincronización a veces puede tener problemas con el envío y la recepción entre nodos remotos. Con sistemas Linux, puede instalar el paquete (setfacl) ingresando el siguiente comando:

sudo apt install acl

Luego ejecuta el siguiente comando con tu nombre de usuario:

sudo setfacl -R -m u:username:rwx /folder/path/

Si constantemente tiene problemas con esto, ya que los archivos cambian constantemente, puede configurar un trabajo cron como se muestra a continuación:

sudo crontab -e

Luego agregue permisos de sincronización cada 5 minutos:

*/5 * * * * sudo setfacl -R -m u:username:rwx /folder/path/ -n

La segunda característica es establecer (Ignorar permisos) en el (Avanzado) opciones en Syncthing WebUI. Esto también puede solucionar problemas, pero tenga en cuenta el paso anterior con (setfacl) lo más probable es que deba hacerse junto con esta característica.

Configurar carpetas de solo envío y solo recepción

Una gran característica de Syncthing es que puede especificar los nodos de emparejamiento para enviar y recibir. Sin embargo, también pueden enviar solo y recibir solo, lo que le brinda la máxima flexibilidad. Para hacer esto, abre (Avanzado) en el panel superior de la carpeta que actualmente está sincronizada y verá (Tipo de carpeta) para cambiar a recibir, enviar o ambos.

Recuerda hacer clic en guardar.

Configurar intervalos de escaneo de ajuste de sincronización

Si no necesita sincronización para observar cambios constantemente y liberar la CPU, puede deshabilitar (Observar cambios) en la sección (Avanzado) al editar la carpeta de sincronización entre dispositivos.

Además, de forma predeterminada, se programa una nueva exploración completa para cada hora para sincronizar los cambios cada hora y ajustarse más o menos tiempo.

Configurar Nginx como proxy inverso para sincronizar

Suponga que desea configurar Syncthing to Nginx como un proxy inverso para acceder a su servidor. La guía mostrará cómo configurar usando el puerto 80. Siga el ejemplo a continuación:

Primero, instale el Nginx PPA personalizado de Ondřej Surý, que se actualiza con mejores características:

Estable:

sudo add-apt-repository ppa:ondrej/nginx && sudo apt update -y

Línea principal:

sudo add-apt-repository ppa:ondrej/nginx-mainline && sudo apt update -y

A continuación, instale Nginx:

sudo apt install nginx-core nginx-common nginx nginx-full -y

A continuación, deberá crear un archivo de host virtual. Para hacer esto, ejecute el siguiente comando:

sudo nano /etc/nginx/sites-available/syncthing.conf

Agregue el siguiente código en (syncthing.conf) archivo:

server {
  listen 80;
  server_name syncthing.example.com;

  access_log /var/log/nginx/syncthing.access.log;
  error_log /var/log/nginx/syncthing.error.log;
  location / {
    proxy_pass http://127.0.0.1:8384;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
}

Para guardar el archivo (CTRL+O) luego (CTRL+X) salir. A continuación, pruebe su configuración de Nginx ejecutando el comando:

sudo nginx -t

Si todo está correcto y sin errores, obtendrá el siguiente resultado:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Para finalizar, recargar o reiniciar su servicio Nginx:

sudo systemctl restart nginx

Desde este punto, puede acceder al servidor Syncthing usando la URL http://syncthing.example.com.


Ubuntu
  1. Cómo instalar Docker en Ubuntu 18.04

  2. Cómo instalar Apache en Ubuntu 18.04

  3. Cómo instalar PHP 7.4 y 8.0 en Ubuntu 18.04 o 20.04

  4. Cómo instalar MariaDB 10.4 en Ubuntu 18.04

  5. ¿Cómo instalar y configurar Varnish en Ubuntu 20.04?

Cómo instalar y configurar MRTG en Ubuntu 18.04

Cómo instalar y usar Syncthing en Ubuntu 20.04

Cómo instalar y configurar DNS en Ubuntu

Cómo instalar y configurar Kubernetes en Ubuntu

Cómo instalar Syncthing en Ubuntu 20.04 LTS

Cómo instalar y configurar Memcached en Ubuntu