Paillasse/ansible/roles/sauvegardes/tasks/main.yml
Adam Belkacemi e879a214a9 ajoute les sauvegardes chiffrées vers Dedibackup (rôle Ansible, timer quotidien, rotation)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-07 11:08:22 +02:00

70 lines
1.9 KiB
YAML

---
- name: installer age et lftp
ansible.builtin.apt:
name:
- age
- lftp
state: present
update_cache: true
cache_valid_time: 3600
- name: créer le répertoire de la clé age
ansible.builtin.file:
path: "{{ sauvegardes_age_dir }}"
state: directory
owner: root
group: root
mode: "0700"
- name: générer la paire de clés age (si absente)
ansible.builtin.command:
cmd: "age-keygen -o {{ sauvegardes_age_cle }}"
creates: "{{ sauvegardes_age_cle }}"
- name: restreindre les permissions de la clé privée age
ansible.builtin.file:
path: "{{ sauvegardes_age_cle }}"
owner: root
group: root
mode: "0600"
- name: lire la clé publique age (pour affichage, jamais la clé privée)
ansible.builtin.command:
cmd: "grep -oP '(?<=public key: )age1\\S+' {{ sauvegardes_age_cle }}"
register: sauvegardes_age_pub
changed_when: false
- name: déployer le script de sauvegarde
ansible.builtin.template:
src: sauvegarde-dedibackup.sh.j2
dest: /usr/local/sbin/sauvegarde-dedibackup.sh
owner: root
group: root
mode: "0700"
- name: déployer le service systemd
ansible.builtin.template:
src: sauvegarde-dedibackup.service.j2
dest: /etc/systemd/system/sauvegarde-dedibackup.service
mode: "0644"
notify: recharger systemd
- name: déployer le timer systemd
ansible.builtin.template:
src: sauvegarde-dedibackup.timer.j2
dest: /etc/systemd/system/sauvegarde-dedibackup.timer
mode: "0644"
notify: recharger systemd
- name: appliquer les changements systemd
ansible.builtin.meta: flush_handlers
- name: activer et démarrer le timer de sauvegarde
ansible.builtin.systemd:
name: sauvegarde-dedibackup.timer
enabled: true
state: started
- name: afficher la clé publique age (à connaître, jamais la privée)
ansible.builtin.debug:
msg: "Clé publique age du serveur : {{ sauvegardes_age_pub.stdout }}"