Apuntes de Kirby
  • 👀whoami
  • 🦉Redes
    • Introducción Redes
      • Organizaciones
      • Historia
      • Puntos de conexión
      • Métodos de acceso a la red
    • Clasificación de las redes
    • Topología de las red
    • Direccionamiento IP
      • IPv4
        • Subredes IPv4
        • Superredes IPv4
        • VLSM
      • IPv6
      • MAC
      • NAT
    • Enrutamiento
      • Enrutamiento estático
      • Enrutamiento dinámico
        • RIPv1 & RIPv2
        • Tablas de enrutamiento
    • Redes conmutadas
    • Switches
      • Arranque
      • Recuperación
      • Administración básica
    • CML
      • 🚧1er CML lab
    • CISCO
      • ¿Qué son las VLAN?
        • Ejemplo 1 de VLAN
        • Ejemplo 2 de VLAN
      • Acceso y password
      • NAT / PAT
    • Firewalls
      • Tipos de firewalls
      • ZPF
        • Funcionamiento
        • Configurando un ZPF
      • Sophos Firewall XG
        • Sophos home
        • Aprendiendo a usar Sophos
      • pfSense
        • Instalando pfSense
        • OpenVPN en pfSense
        • Port Forward
        • Alias
    • Proxy
      • Squid en pfSense
        • Squid Proxy Server
        • SquidGuard Proxy
      • Proxy reverse Nginx
    • 🚧Suricata
  • 🐝Servicios
    • Servidores Web
      • Nginx
        • NGINX, hosts virtuales
        • Hosts virtuales basados en dominio
        • PHP-FPM
        • Nginx: PHP y MySQL
          • MySQLi - PHP
        • En Alpine linux
        • 🚧Proxy
    • Servidores de correo
      • Seguridad en el correo
      • Postfix
      • hMailServer
      • Clientes de correo
        • Mailutils
        • Mutt
    • Servidores de FTP
      • FileZilla
      • VSFTPD
      • FTP vía IIS
    • Servidores DNS
      • DNS - Windows Server 2016
      • DNS - Ubuntu Server 22.04
      • Systemd
    • Servidores DHCP
      • DHCP-Windows Server 2016
      • DHCP-Ubuntu Server 22.04
    • Servidores MySQL
    • 🚧Mensajería instantánea
      • Ejabberd
    • 🚧Imágenes - Vídeos
      • FFMPEG + YT-DLP
      • Plex
      • Jellyfin
      • Plesk
      • RTMP
      • SRT
    • Webmin + Virtualmin
  • NextCloud
  • 🔑Seguridad
    • NAS
      • Instalación Synology NAS en VirtualBox
        • Creación de volúmenes y su uso
        • Actualización Synology NAS
        • Creación de usuarios y carpetas compartidas
        • Funciones del panel de control
          • Acceso por SSH
          • Configuración de los servicios de archivos
          • Configuración de red
          • Copias de seguridad (restauración)
          • Seguridad
          • Personalizar páginas de inicio
          • Servicio de notificaciones
        • Centro de paquetes Synology
          • Servidores multimedia
          • Paquetes de utilidades
          • Cloud Sync
          • Hyper Backup
          • Synology Office
      • Truenas
        • Rsync en Truenas
      • OpenmediaVault
    • Backups
      • Rsync
        • Ejemplo de rsync
    • ¿Qué son las ACL?
    • SOPS/AGE
    • RAID
      • mdadm
  • 🐳Virtualización
    • Proxmox
      • Instalar en VMWare
      • Instalar en VirtualBox
      • Entorno Proxmox
      • Almacenamiento local
      • Añadir discos
      • Clonar
      • Qemu agent
      • Linux container - LXC
      • Clúster
      • Red Interna
      • 🚧Proxmox Backup
      • 🚧Otras consideraciones
    • Alpine Linux
    • Contenedores
      • Docker
        • YAML
        • Instalando Docker
        • Portainer
          • Instalando Portainer
          • Dentro de Portainer
        • Docker volumen
        • Docker compose
          • Docker: PHP y MySQL
          • Importar sitio web en Docker
          • Instalando Wordpress
      • Pi-hole
        • Instalando Pi-hole en Docker
        • Instalando Pi-hole en Debian
        • RDP
          • RDP - Docker
  • 🐞Misceláneas
    • Datos - codificación
    • IPTables
    • Túnel con Cloudflare
    • Servidor de video
    • Comandos de Linux
    • Anaconda & Spyder
    • CGI - NGINX
    • Arduino
      • Capítulo 0 Blink
      • Capítulo 1 Led
      • Capítulo 2 Botton & LED
  • ⁉️Interesante
    • Curioso
    • Ideas
Powered by GitBook
On this page

Was this helpful?

Edit on GitHub
  1. Seguridad
  2. Backups
  3. Rsync

Ejemplo de rsync

Un ejemplo completo

Supongamos que tenemos que hacer copias de seguridad en un servidor de backups, utilizando el comando rsync. SUpongamos que se quiere mantener actualizado un directorio de un equipo cliente. Para ello debemos:

  • verificar que existe el directorio del equipo cliente

  • verificar los archivos contenidos en el directorio

  • crear un script que realice todo esto y además ejecute el backup

  • configurar el programador de tareas: crontab

¿Cómo podemos probarlo?

Os propongo dos opciones:

  • Equipo host y una VM.

    • El host hace de server y la VM es el equipo cliente. Desde el host ejecutamos el script y donde se almacenan las copias. Un detalle es que tengo instalado Ubuntu en mi PC.

    • El host hace de cliente (Windows) y la VM es el server. Desde la VM ejecutamos el script y donde se almacenan las copias.

  • Dos VM.

    • Una de las VM hace de server y la otra de cliente. Ambas conectadas a una red NAT.

#!/bin/bash

   scr="source/"
   dst="/home/kirby/Documentos/1.iFP/5.MIS_APUNTES/servicios-de-red/scripting/funciona-ok-en-1PC/destino/"
   cliente=$(cat clienteRemoto.txt)

   testRemoteDir(){
        for host in $cliente; do

           sshpass -p $(cat sshpass.txt)  ssh $host 'bash -s' < detest.sh "$scr $dst $host"
           echo "Desde test.sh digo que: Return: $?"

           if [ -n "$?" ]
             then
                echo "Hago la copia"
                 sshpass -p $(cat sshpass.txt) rsync -avzh -e ssh $(cat clienteRemoto.txt):~/$scr/  $dst

            else
                echo "No hice nada: $res"
           fi
        done

   }


  testRemoteDir
  echo "llegué al final"

Links

PreviousRsyncNext¿Qué son las ACL?

Last updated 1 year ago

Was this helpful?

🔑
https://geekland.eu/ejecutar-comandos-y-scripts-con-ssh-en-equipos-remotos/
https://itsfoss.com/es/funciones-bash/
https://atareao.es/tutorial/scripts-en-bash/funciones-en-bash/