Ansible: plusieurs éléments intéressants

This commit is contained in:
Stephane M B079 2025-02-12 13:55:14 +01:00
parent 282871f0da
commit 7bf85a556c
2 changed files with 36 additions and 16 deletions

View File

@ -68,26 +68,27 @@
- name: Configurer l'utilisateur smauro - name: Configurer l'utilisateur smauro
user: user:
name: "{{ user }}" name: "{{ user }}"
password: "{{ root_password | password_hash('sha512') }}" password: "{{ user_password | password_hash('sha512') }}" # Utilisation de la variable dynamique
shell: /bin/bash shell: /bin/bash
groups: sudo groups: sudo
state: present state: present
become: yes become: yes
# 8. Installer les paquets nécessaires
- name: Installer les paquets nécessaires - name: Installer les paquets nécessaires
apt: apt:
name: ["sudo", "vim", "curl", "git", "htop", "gnupg", "apache2"] name: ["sudo", "vim", "curl", "git", "htop", "gnupg", "apache2"]
state: present state: present
become: yes become: yes
# 9. Installer les dépendances requises pour ajouter un dépôt
- name: Installer les dépendances requises pour ajouter un dépôt - name: Installer les dépendances requises pour ajouter un dépôt
apt: apt:
name: ["apt-transport-https", "ca-certificates", "lsb-release", "curl"] name: ["apt-transport-https", "ca-certificates", "lsb-release", "curl"]
state: present state: present
become: yes become: yes
# 10. Ajouter le dépôt Sury pour PHP 8.3
# 8. Ajouter le dépôt Sury pour PHP 8.3
- name: Ajouter le dépôt Sury pour PHP 8.3 - name: Ajouter le dépôt Sury pour PHP 8.3
shell: echo "deb https://packages.sury.org/php/ bookworm main" | tee /etc/apt/sources.list.d/sury-php.list shell: echo "deb https://packages.sury.org/php/ bookworm main" | tee /etc/apt/sources.list.d/sury-php.list
become: yes become: yes
@ -96,14 +97,14 @@
shell: curl -fsSL https://packages.sury.org/php/apt.gpg | tee /etc/apt/trusted.gpg.d/sury-php.gpg > /dev/null shell: curl -fsSL https://packages.sury.org/php/apt.gpg | tee /etc/apt/trusted.gpg.d/sury-php.gpg > /dev/null
become: yes become: yes
# 11. Mettre à jour et upgrader le système
- name: Mettre à jour et upgrader le système - name: Mettre à jour et upgrader le système
apt: apt:
update_cache: yes update_cache: yes
upgrade: dist upgrade: dist
become: yes become: yes
# 10. Installer PHP 8.3 et ses extensions # 12. Installer PHP 8.3 et modules requis
- name: Installer PHP 8.3 et modules requis - name: Installer PHP 8.3 et modules requis
apt: apt:
name: name:
@ -125,33 +126,26 @@
state: restarted state: restarted
become: yes become: yes
# 11. Configurer Apache avec PHP 8.3 # 13. Redémarrer Apache
#- name: Activer PHP 8.3 dans Apache
#command: a2enmod php8.3
#become: yes
- name: Redémarrer Apache - name: Redémarrer Apache
systemd: systemd:
name: apache2 name: apache2
state: restarted state: restarted
become: yes become: yes
# 14. Activer les modules rewrite et expires dans Apache
- name: Activer les modules rewrite et expires dans Apache - name: Activer les modules rewrite et expires dans Apache
command: a2enmod rewrite expires command: a2enmod rewrite expires
become: yes become: yes
# 15. Redémarrer Apache après activation des modules
- name: Redémarrer Apache après activation des modules - name: Redémarrer Apache après activation des modules
systemd: systemd:
name: apache2 name: apache2
state: restarted state: restarted
become: yes become: yes
- name: Redémarrer la machine # 16. Remplacer "clean" par le hostname dans /etc/hosts
reboot:
msg: "Redémarrage après configuration."
pre_reboot_delay: 5
become: yes
- name: Remplacer "clean" par le hostname dans /etc/hosts - name: Remplacer "clean" par le hostname dans /etc/hosts
replace: replace:
path: /etc/hosts path: /etc/hosts
@ -159,3 +153,18 @@
replace: "{{ ansible_hostname }}" replace: "{{ ansible_hostname }}"
become: yes become: yes
# 17. Retirer 'PermitRootLogin yes' dans /etc/ssh/sshd_config
- name: Retirer ou modifier 'PermitRootLogin yes' dans /etc/ssh/sshd_config
lineinfile:
path: /etc/ssh/sshd_config
regexp: '^PermitRootLogin\s+yes'
line: 'PermitRootLogin no'
state: present
become: yes
# 18. Redémarrer la machine
- name: Redémarrer la machine
reboot:
msg: "Redémarrage après configuration."
pre_reboot_delay: 5
become: yes

View File

@ -168,3 +168,14 @@
msg: "Redémarrage après configuration." msg: "Redémarrage après configuration."
pre_reboot_delay: 5 pre_reboot_delay: 5
become: yes become: yes
# 19. Attendre que la machine soit de nouveau accessible
- name: Attendre que la machine soit de nouveau accessible
wait_for_connection:
timeout: 300
become: no
# 20. Confirmation
- name: Confirmer que la VM est de nouveau accessible
debug:
msg: "La VM {{ ansible_hostname }} est de nouveau accessible !"