Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- fecha=$(date +%H-%M-%S)
- # servidor destino de backups
- server=192.168.0.88
- # usuario remoto
- backupuser="sambaserver"
- # si el script recibe el argumento 'ssh-key'
- # se generan el par de claves 'ssh'.
- if [ "$1" == "ssh-key" ]; then
- ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa
- ssh-copy-id -i $HOME/.ssh/id_rsa.pub $backupuser@$server
- exit 0
- # si recibe como argumento 'gpg-key'
- # entonces genera un par de claves gpg
- # en este caso sin contraseña
- elif [ "$1" == "gpg-key" ]; then
- gpg --batch --gen-key <<EOF
- %no-protection
- Key-Type: RSA
- Key-Length: 2048
- Subkey-Type: RSA
- Subkey-Length: 2048
- Name-Real: Your Name
- Name-Email: educacionit@$HOSTNAME
- Expire-Date: 0
- %commit
- EOF
- # se exporta la llave publica
- gpg --export -a "educacionit@$HOSTNAME" > educacionit.$HOSTNAME.pub
- # se envia la llave publica al servidor de backup
- scp educacionit.$HOSTNAME.pub $backupuser@$server:~/
- # se le envia el comando al servidor de backup mediante ssh
- # para que importe la clave privada que le enviamos.
- #
- ssh $backupuser@$server gpg --import educacionit.$HOSTNAME.pub
- exit 0
- fi
- # Backups
- #Firmar los archivos de '/etc/samba'
- # eliminar firma previa, usamos la opcion -f por si no existe.
- rm /etc/samba/*.sign
- gpg --detach-sign -u educacionit@$HOSTNAME -o /etc/samba/smb.conf.sign /etc/samba/smb.conf
- # backup de configuracion
- rsync -av -e "ssh -i /root/.ssh/id_rsa" /etc/samba/smb.conf* sambaserver@$server:~/
- # backup de directorio de archivos compartidos en samba
- rsync -av -e "ssh -i /root/.ssh/id_rsa" /srv/samba sambaserver@$server:~/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement