Este tutorial le mostrará cómo instalar Resilio Sync (anteriormente BitTorrent Sync ) en Ubuntu 20.04 y 18.04. Resilio Sync es una herramienta gratuita, rápida y de sincronización y uso compartido de archivos entre pares lanzada por Resilio, Inc, disponible para Linux, FreeBSD, Mac, Windows, Android, iOS, Amazon Kindle Fire y dispositivos NAS.
A diferencia de Dropbox o NextCloud, Resilio Sync no requiere un servidor central para almacenar archivos. En su lugar, solo necesita instalar Resilio Sync en los dispositivos finales para sincronizar archivos a través del protocolo BitTorrent, por lo que no estará sujeto al límite de almacenamiento de un servidor.
Instalación de Resilio Sync en Ubuntu 20.04 y Ubuntu 18.04 desde el repositorio oficial
Resilio Sync tiene un repositorio para Ubuntu. Primero, necesitamos importar la clave pública de Resilio Sync para que el administrador de paquetes pueda verificar el paquete de Resilio Sync. Abra una ventana de terminal y ejecute el siguiente comando para descargar la clave pública.
wget http://linux-packages.resilio.com/resilio-sync/key.asc
Luego importa la clave pública con apt-key
.
sudo apt-key add key.asc
A continuación, ejecute los siguientes comandos para agregar el repositorio Resilio Sync. (El add-apt-repository
El comando lo proporciona software-properties-common
paquete.)
sudo apt install software-properties-common sudo add-apt-repository "deb http://linux-packages.resilio.com/resilio-sync/deb resilio-sync non-free"
Ubuntu 20.04 y 18.04 actualizarán automáticamente el índice del paquete, por lo que no tiene que ejecutar manualmente Sudo apt update. Ahora instale el paquete Resilio Sync con el siguiente comando.
sudo apt install resilio-sync
Una vez instalado, Resilio Sync se iniciará automáticamente. Puede comprobar su estado con:
systemctl status resilio-sync
Sugerencia :Presione Q para recuperar el control de la terminal después de ejecutar el comando anterior.
Si no se está ejecutando, puede iniciarlo con:
sudo systemctl start resilio-sync
De forma predeterminada, Resilio Sync no se iniciará en el momento del arranque. Puede habilitar el inicio automático con:
sudo systemctl enable resilio-sync
Resilio Sync se ejecuta como rslsync
usuario y la interfaz de usuario web escucha en 127.0.0.1:8888
como se especifica en /etc/resilio-sync/config.json
archivo de configuración.
Configuración de la interfaz de usuario web de Resilio Sync
La versión Linux de Resilio Sync no proporciona un cliente de escritorio. En su lugar, debe configurar las cosas a través de una interfaz web. Escriba lo siguiente en la barra de direcciones de su navegador web para acceder a la interfaz de usuario web de Resilio Sync.
127.0.0.1:8888
Si instala Resilio Sync en un servidor Linux remoto, debe configurar un proxy inverso con Nginx o Apache para acceder a la interfaz de usuario web. Consulte la última parte de este artículo.
Se le pedirá que establezca un nombre de usuario y una contraseña para proteger la interfaz de usuario web.
Luego elige un nombre para tu dispositivo y haz clic en Get started
.
E ingrese el nombre de usuario y la contraseña que acaba de crear.
Una vez que haya iniciado sesión, puede compartir una carpeta en su computadora con otros dispositivos o recibir una carpeta desde otro dispositivo.
Compartir carpetas con otros dispositivos
Para compartir una carpeta en su computadora, haga clic en el botón + en la esquina superior izquierda y seleccione la carpeta estándar.
Luego seleccione una carpeta en su computadora.
Es posible que encuentre el siguiente mensaje de error.
Can't open the destination folder.
O
Don't have permissions to write to selected folder.
Eso es porque Resilio Sync se ejecuta como rslsync
usuario, que no tiene permiso para acceder a esa carpeta.
Digamos que seleccionó su carpeta de inicio /home/your-username/
como la carpeta compartida. Para corregir el error anterior, todo lo que necesita hacer es otorgar permisos en su carpeta de inicio a rslsync
usuario con el siguiente comando.
sudo setfacl -R -m "u:rslsync:rwx" /home/your-username
El comando anterior no cambiará el propietario de la carpeta compartida. El propietario tiene los mismos permisos que de costumbre. Lo que hace es otorgar permisos de lectura, escritura y ejecución a un usuario más, a saber, rslsync
. Tenga en cuenta que -R
La bandera (recursiva) debe ir antes de -m
(modificar), seguida inmediatamente por la entrada de la lista de control de acceso (u:rslsync:rwx
).
Si ve este error:
sudo: setfacl: command not found
Luego instale el acl
paquete y vuelva a ejecutar el setfacl
anterior comando.
sudo apt install acl
Ahora debería poder agregar su carpeta de inicio como la carpeta compartida.
Después de agregar la carpeta, puede compartir esta carpeta a través de un enlace, una clave secreta o un código QR.
Si la carpeta compartida es enorme, Resilio Sync tardará un tiempo en indexar el contenido.
Recepción de carpetas desde otros dispositivos
Para recibir una carpeta desde otro dispositivo, haga clic en el botón + en la esquina superior izquierda y seleccione "Ingresar una clave o enlace".
Luego ingrese la clave o el enlace.
Uso de Resilio Sync en el servidor Ubuntu 20.04, 18.04
Puede instalar Resilio Sync en el servidor Ubuntu 20.04 y 18.04 desde el repositorio mencionado anteriormente. Si su servidor está ubicado en la nube, debe configurar un proxy inverso para acceder a la interfaz de usuario web porque la interfaz de usuario web solo escucha en el host local. Una vez que se configura el proxy inverso, puede acceder a la interfaz de usuario web a través de un nombre de dominio.
Configurar el proxy inverso Resilio Sync con Nginx
Nginx se vuelve cada vez más popular en estos días como servidor web y proxy inverso. Instale Nginx en el servidor Ubuntu 20.04, 18.04 con el siguiente comando.
sudo apt install nginx
Inicie Nginx y habilite el inicio automático.
sudo systemctl start nginx sudo systemctl enable nginx
Ahora cree un archivo de host virtual para Resilio Sync.
sudo nano /etc/nginx/conf.d/resilio-sync.conf
Copie y pegue las siguientes líneas en el archivo. Reemplace resilio.example.com
con su verdadero nombre de dominio. También debe agregar un registro DNS A para este subdominio.
server { listen 80; server_name resilio.example.com; access_log /var/log/nginx/resilio_access.log; error_log /var/log/nginx/resilio_error.log; location / { proxy_pass http://127.0.0.1:8888; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
Guarde y cierre este archivo. Luego pruebe las configuraciones de Nginx.
sudo nginx -t
Si la prueba es exitosa, vuelva a cargar Nginx.
sudo systemctl reload nginx
Ahora, en la barra de direcciones de su navegador, escriba resilio.example.com
y debería poder acceder a la Web GUI.
Configuración del proxy inverso Resilio Sync con Apache
Apache es un servidor web muy conocido que también se puede utilizar como proxy inverso. Si prefiere Apache a Nginx, instálelo en el servidor Ubuntu 20.04, 18.04 con:
sudo apt install apache2
Inicie Apache y habilite el inicio automático.
sudo systemctl start apache2 sudo systemctl enable apache2
Para usar Apache como proxy inverso, debemos habilitar el proxy
módulos y el módulo de cabecera.
sudo a2enmod proxy proxy_http headers proxy_wstunnel
Ahora cree un archivo de host virtual para Resilio Sync.
sudo nano /etc/apache2/sites-available/resilio-sync.conf
Copie y pegue las siguientes líneas en el archivo. Reemplace resilio.example.com
con su verdadero nombre de dominio. También debe agregar un registro DNS A para este subdominio.
<VirtualHost *:80> ServerName resilio.example.com ErrorDocument 404 /404.html ProxyPass / http://localhost:8888/ ProxyPassReverse / http://localhost:8888/ ErrorLog ${APACHE_LOG_DIR}/resilio_error.log CustomLog ${APACHE_LOG_DIR}/resilio_access.log combined </VirtualHost>
Guarde y cierre el archivo. Luego habilite este servidor virtual.
sudo a2ensite resilio-sync.conf
Reiniciar Apache
sudo systemctl restart apache2
Ahora puede acceder a la interfaz de usuario web a través de resilio.example.com
.
Proteja la GUI web de Resilio Sync con HTTPS
Para cifrar el tráfico HTTP cuando visita la interfaz de usuario web de Resilio Sync a través de un nombre de dominio, podemos habilitar HTTPS instalando un certificado TLS gratuito emitido por Let's Encrypt. Ejecute el siguiente comando para instalar el cliente Let's Encrypt (certbot) en el servidor Ubuntu 20.04, 18.04.
sudo apt install certbot
Si usa Nginx, también necesita instalar el complemento Certbot Nginx.
sudo apt install python3-certbot-nginx
A continuación, ejecute el siguiente comando para obtener e instalar el certificado TLS.
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d resilio.example.com
Si usa Apache, instale el complemento Certbot Apache.
sudo apt install python3-certbot-apache
Y ejecute este comando para obtener e instalar el certificado TLS.
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d resilio.example.com
donde
--nginx
:use el complemento nginx.--apache
:Utilice el complemento de Apache.--agree-tos
:Acepto los términos del servicio.--redirect
:Forzar HTTPS por redirección 301.--hsts
: Agregue el encabezado Strict-Transport-Security a cada respuesta HTTP. Obligar al navegador a usar siempre TLS para el dominio. Protege contra la eliminación de SSL/TLS.--staple-ocsp
: Habilita el grapado OCSP. Se grapa una respuesta OCSP válida al certificado que ofrece el servidor durante TLS.
Ahora se debe obtener el certificado e instalarlo automáticamente.
Y puede acceder a la interfaz de usuario web de Resilio Sync a través de HTTPS (https://resilio.example.com
).
Abrir el puerto de sincronización de Resilio en el cortafuegos
Además del puerto de interfaz de usuario web, Resilio Sync también necesita escuchar en la interfaz pública para conectarse con los pares. El puerto de escucha es diferente para cada dispositivo. Puede encontrarlo en Resilio Sync Web UI yendo a Preferencias -> Avanzado .
Si habilitó el firewall UFW en su servidor Ubuntu, entonces necesita abrir este puerto. Por ejemplo, mi puerto es 22251, así que ejecuto el siguiente comando para abrirlo.
sudo ufw allow 22251
Aplicación Resilio Sync para iOS
Uso Resilio Sync para sincronizar archivos entre mi escritorio Ubuntu, el servidor Ubuntu y el iPhone. Algunos dicen que la aplicación de iOS es un completo desastre, pero encontré que funcionaba muy bien. De manera predeterminada, la sincronización selectiva está habilitada en la aplicación iOS. Eso significa que los archivos individuales se sincronizarán solo cuando elija hacerlo. Si desactiva la Sincronización selectiva, todos los archivos se sincronizarán inmediatamente.
Cómo configurar la sincronización selectiva
En la interfaz de usuario web, Resilio Sync le dice que la sincronización selectiva es una función profesional para los usuarios de Linux, pero en realidad podemos configurar la sincronización selectiva desde la línea de comandos. Cada carpeta de sincronización tiene un .sync
oculto carpeta creada por Resilio Sync. En esta carpeta oculta, hay un archivo llamado IgnoreList
, que es un archivo .txt codificado en UTF-8 que lo ayuda a especificar archivos, rutas y reglas individuales para ignorar durante el trabajo de sincronización. Es compatible con "?" y los símbolos comodín “*”.
Por ejemplo, necesito sincronizar una carpeta entre la computadora A y B en modo de lectura y escritura. La computadora B contiene un archivo que no quiero que se sincronice con la computadora A. Estos son los pasos que hice para ignorar ese archivo.
- Agrego la carpeta en la interfaz de usuario web Resilio Sync de la computadora A.
- Ahora la computadora A tiene un
.sync
carpeta oculta. - Agrego el nombre de ese archivo en
IgnoreList
en la computadora A, por lo que se negará a recibir ese archivo de la computadora B. - Comparta la carpeta con la computadora B en modo de lectura y escritura.
- Una vez que finaliza la sincronización, puedo agregar el nombre de ese archivo en la
IgnoreList
de la computadora B , por lo que la computadora B no compartirá ese archivo con otras computadoras si una nueva computadora se une a la sincronización.
Conclusión
Espero que este tutorial le haya ayudado a instalar Resilio Sync en Ubuntu 20.04 y Ubuntu 18.04. Como siempre, si esta publicación le resultó útil, suscríbase a nuestro boletín informativo gratuito para obtener más consejos y trucos. Cuídate 🙂