Proyecto

General

Perfil

Configuración » Histórico » Versión 1

Martin Andres Gomez Gimenez, 2021-04-09 09:31

1 1 Martin Andres Gomez Gimenez
h1. Configuración
2
3
La configuración de Backup-cron se realiza desde el archivo _/etc/backup-cron/backup-cron.conf_ de acuerdo a lo que se describe a continuación:
4
5
6
h2. Ruta de almacenamiento
7
8
9
<pre>
10
#------------------------------------------------------------------------------#
11
# BACKUP_PATH: ruta de almacenamiento predeterminada para las copias de resguardo.
12
#
13
BACKUP_PATH="/home/admin/backup"
14
15
</pre>
16
17
18
h2. Encriptación de respaldos
19
20
Para encriptar respaldos se utiliza "GnuPG":https://gnupg.org/ y clave asimétrica la cual debe configurarse previamente.
21
22
<pre>
23
#------------------------------------------------------------------------------#
24
# Encriptación de respaldos
25
#
26
# PGP_ID: Identificador de la clave PGP para encritar los respaldos.
27
#
28
# IMPORTANTE: Asegurese de resguardar bien el par de claves GPG, dado que de otro
29
# modo en caso de desastre solo tendrá varios GiB de datos inservibles.
30
#
31
# Los respaldos encriptados podran desencriptarse con el comando:
32
# gpg --decrypt --output backup.tar.bz2 backup.tar.bz2.gpg
33
#
34
PGP_ID=""
35
</pre>
36
37
38
h2. Opciones de envío por correo electrónico
39
40
Las siguientes opciones le permiten configurar el envío de alertas mediante correo electrónico. Para ello es necesario tener instalado y configurado mail-mta/nullmailer o similar para poder realizar correctamente el envío de correos electrónicos. 
41
42
<pre>
43
#------------------------------------------------------------------------------#
44
# Opciones de envío por correo electrónico.
45
#
46
# RECIPIENTS: debe configurar una cuenta de correo en lugar de "root".
47
# HOST: nombre del servidor o maquina donde se realizan los respaldos.
48
# FECHA: fecha del respaldo
49
# GENERIC_SUBJECT: asunto genérico para el correo electrónico de resumen.
50
#
51
RECIPIENTS="root"
52
HOST=$(/bin/hostname --fqdn)
53
FECHA=$(date +%Y%m%d)
54
GENERIC_SUBJECT="${HOST}: Resumen de respaldo N° ${FECHA} para"
55
</pre>
56
57
58
h2. Copia de respaldos a destinos remotos
59
60
El envío de los respaldos a un destino remoto via SCP, se configura con las siguientes opciones:
61
62
<pre>
63
#------------------------------------------------------------------------------#
64
# Copiar archivos de respaldo a servidor remoto vía SCP
65
# REMOTE_IP: URL o IP del servidor remoto (pueden especificarse varias separadas
66
# por espacios).
67
# REMOTE_USER: Usuario al cual conectarse usando un certificado SSL.
68
#
69
REMOTE_IP=""
70
REMOTE_USER="admin"
71
</pre>
72
73
74
75
h2. Remoción de respaldos incrementales
76
77
Por defecto Backup-cron dejará 3 conjunto de respaldos completos (full + incrementales). Los conjuntos de respaldos se generan cada mes comenzando por un respaldo llamado "full" seguido de respaldos "incrementales.
78
79
<pre>
80
#------------------------------------------------------------------------------#
81
# Remoción de respaldos incrementales.
82
# KEEP_INCREMENTAL: número de conjuntos de prespaldos incrementales a preservar.
83
# Cuando este número se supera se elimina el mas antigüo.
84
#
85
KEEP_INCREMENTAL="3"
86
</pre>
87
88
89
h2. Limpieza de respaldos estándar
90
91
Las siguientes opciones de limpieza son para los respaldos de bases de datos MySQL y PostgreSQL.
92
93
<pre>
94
#------------------------------------------------------------------------------#
95
# Variables de tmpwatch
96
# (Requiere el paquete app-admin/tmpwatch)
97
# TMPWATCH: ruta al binario de tmpwatch
98
# MTIME: tiempo de modificación utilizado para borrar archivos 
99
# por defecto 168 (1 semana).
100
# SEMANAS: número de semanas a preservar las copias de respaldo en servidores
101
# remotos.
102
#
103
TMPWATCH="/usr/sbin/tmpwatch"
104
MTIME="168"
105
SEMANAS="4"
106
</pre>
107
108
109
h2. Limpieza de respaldos recibidos remotamente.
110
111
Si el servidor aloja respaldos remotos de bases de datos MySQL y PostgreSQL, es posible configurar las siguientes opciones:
112
113
<pre>
114
#------------------------------------------------------------------------------#
115
# clean_backup-cron
116
#
117
# El conjunto de scripts clean_backups-cron borra los backups transferidos desde
118
# servidores y maquinas remotas.
119
# HOSTS: listado de hosts remotos separados por espacios.
120
HOSTS=""
121
</pre>
122
123
124
125
h2. Opciones para respaldos en cintas
126
127
<pre>
128
#------------------------------------------------------------------------------#
129
# backup_tape.cron: respaldos en cintas.
130
#
131
# TAPE: dispositivo de unidad de cintas
132
# DIRSTOBACK: directorios a respaldar en cinta.
133
#
134
TAPE="/dev/st0"
135
DIRSTOBACK="/"
136
</pre>
137
138
139
140
h2. Datos para respaldar bases de datos MySQL
141
142
<pre>
143
#------------------------------------------------------------------------------#
144
# mysqldump.cron
145
#
146
# Variables a editar por el usuario:
147
# BDB_HOST: el nombre o la dirección de IP donde se ejecuta el servidor MySQL.
148
# DB_USER: usuario de la base de datos MySQL.
149
# DB_PASSWD: contraseña de la base de datos MySQL.
150
#
151
BDB_HOST="localhost"
152
BDB_USER="root"
153
BDB_PASSWD="yourpassword"
154
</pre>
155
156
157
h2. Datos para respaldar bases de datos PostgreSQL
158
159
<pre>
160
#------------------------------------------------------------------------------#
161
# pg_dump.cron
162
#
163
# Variables a editar por el usuario:
164
# BDB_PG_HOST: el nombre del servidor o la ruta al socket unix donde se ejecuta 
165
# PostGreSQL.
166
# BDB_PG_USER: usuario de la base de datos PostgreSQL.
167
# BDB_PG_PASSWD: contraseña de la base de datos PostgreSQL.
168
#
169
BDB_PG_HOST="/run/postgresql/.s.PGSQL.5432"
170
BDB_PG_USER="postgres"
171
BDB_PG_PASSWD="yourpassword"
172
</pre>