Add emojis to README
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
# Rotation de mot de passe SSH/sudo
|
# 🔐 Rotation de mot de passe SSH/sudo
|
||||||
|
|
||||||
Petit projet Ansible pour changer le mot de passe d'un compte Linux existant
|
Petit projet Ansible pour changer le mot de passe d'un compte Linux existant
|
||||||
sur un ou plusieurs serveurs.
|
sur un ou plusieurs serveurs.
|
||||||
@@ -7,13 +7,13 @@ Le playbook demande le nouveau mot de passe au lancement et l'applique sur les
|
|||||||
hotes cibles avec `chpasswd` via `sudo`. Le mot de passe n'est pas stocke dans
|
hotes cibles avec `chpasswd` via `sudo`. Le mot de passe n'est pas stocke dans
|
||||||
les fichiers du depot et la tache de changement est masquee avec `no_log: true`.
|
les fichiers du depot et la tache de changement est masquee avec `no_log: true`.
|
||||||
|
|
||||||
## Fichiers principaux
|
## 📁 Fichiers principaux
|
||||||
|
|
||||||
- `ansible.cfg` : configuration Ansible du projet.
|
- ⚙️ `ansible.cfg` : configuration Ansible du projet.
|
||||||
- `inventories/hosts.yml` : inventaire principal et variables de connexion.
|
- 🗂️ `inventories/hosts.yml` : inventaire principal et variables de connexion.
|
||||||
- `playbooks/change_password.yml` : playbook de changement de mot de passe.
|
- ▶️ `playbooks/change_password.yml` : playbook de changement de mot de passe.
|
||||||
|
|
||||||
## Configuration
|
## ⚙️ Configuration
|
||||||
|
|
||||||
Les variables communes sont definies dans `inventories/hosts.yml`, sous
|
Les variables communes sont definies dans `inventories/hosts.yml`, sous
|
||||||
`all.vars` :
|
`all.vars` :
|
||||||
@@ -25,8 +25,8 @@ all:
|
|||||||
password_target_user: admin
|
password_target_user: admin
|
||||||
```
|
```
|
||||||
|
|
||||||
- `ansible_user` est l'utilisateur SSH utilise pour se connecter aux serveurs.
|
- 👤 `ansible_user` est l'utilisateur SSH utilise pour se connecter aux serveurs.
|
||||||
- `password_target_user` est le compte dont le mot de passe sera change.
|
- 🔑 `password_target_user` est le compte dont le mot de passe sera change.
|
||||||
|
|
||||||
Gardez `password_target_user` identique a `ansible_user` lorsque le compte SSH
|
Gardez `password_target_user` identique a `ansible_user` lorsque le compte SSH
|
||||||
et le compte sudo sont les memes.
|
et le compte sudo sont les memes.
|
||||||
@@ -52,11 +52,11 @@ ssh_password_servers:
|
|||||||
linux-server-02.example.com:
|
linux-server-02.example.com:
|
||||||
```
|
```
|
||||||
|
|
||||||
- `ssh_key_servers` regroupe les serveurs accessibles avec une cle SSH. Le
|
- 🔐 `ssh_key_servers` regroupe les serveurs accessibles avec une cle SSH. Le
|
||||||
chemin de la cle privee est factorise dans les variables du groupe.
|
chemin de la cle privee est factorise dans les variables du groupe.
|
||||||
- `ssh_password_servers` regroupe les serveurs accessibles avec un mot de passe
|
- 🔑 `ssh_password_servers` regroupe les serveurs accessibles avec un mot de passe
|
||||||
SSH. Utilisez `--ask-pass` pour ces hotes.
|
SSH. Utilisez `--ask-pass` pour ces hotes.
|
||||||
- `linux_servers` reste le groupe de rollout principal. Un hote peut appartenir
|
- 🖥️ `linux_servers` reste le groupe de rollout principal. Un hote peut appartenir
|
||||||
a la fois a `linux_servers` et a une famille d'authentification.
|
a la fois a `linux_servers` et a une famille d'authentification.
|
||||||
|
|
||||||
Si un serveur avec cle SSH utilise une cle differente, placez l'exception sur
|
Si un serveur avec cle SSH utilise une cle differente, placez l'exception sur
|
||||||
@@ -71,7 +71,7 @@ ssh_key_servers:
|
|||||||
ansible_ssh_private_key_file: ~/.ssh/special_server_key
|
ansible_ssh_private_key_file: ~/.ssh/special_server_key
|
||||||
```
|
```
|
||||||
|
|
||||||
## Utilisation
|
## 🚀 Utilisation
|
||||||
|
|
||||||
Lancez le playbook avec demande du mot de passe `sudo` :
|
Lancez le playbook avec demande du mot de passe `sudo` :
|
||||||
|
|
||||||
@@ -82,7 +82,7 @@ ansible-playbook playbooks/change_password.yml --ask-become-pass
|
|||||||
Le playbook demandera ensuite le nouveau mot de passe du compte cible, avec
|
Le playbook demandera ensuite le nouveau mot de passe du compte cible, avec
|
||||||
confirmation.
|
confirmation.
|
||||||
|
|
||||||
## Deploiement progressif
|
## 🧭 Deploiement progressif
|
||||||
|
|
||||||
Commencez par un petit groupe de test :
|
Commencez par un petit groupe de test :
|
||||||
|
|
||||||
@@ -117,7 +117,7 @@ Pour cibler les serveurs avec mot de passe SSH, ajoutez `--ask-pass` :
|
|||||||
ansible-playbook playbooks/change_password.yml --ask-pass --ask-become-pass --limit ssh_password_servers
|
ansible-playbook playbooks/change_password.yml --ask-pass --ask-become-pass --limit ssh_password_servers
|
||||||
```
|
```
|
||||||
|
|
||||||
## Verification
|
## ✅ Verification
|
||||||
|
|
||||||
Verifier que l'inventaire est lisible :
|
Verifier que l'inventaire est lisible :
|
||||||
|
|
||||||
@@ -131,11 +131,11 @@ Verifier la syntaxe du playbook :
|
|||||||
ansible-playbook playbooks/change_password.yml --syntax-check
|
ansible-playbook playbooks/change_password.yml --syntax-check
|
||||||
```
|
```
|
||||||
|
|
||||||
## Regles de securite
|
## 🛡️ Regles de securite
|
||||||
|
|
||||||
- Ne commitez jamais de mot de passe en clair.
|
- 🚫 Ne commitez jamais de mot de passe en clair.
|
||||||
- Utilisez `vars_prompt`, `ansible-vault` ou une source externe pour les secrets.
|
- 🔒 Utilisez `vars_prompt`, `ansible-vault` ou une source externe pour les secrets.
|
||||||
- Conservez `no_log: true` sur les taches qui manipulent un mot de passe ou un
|
- 🤫 Conservez `no_log: true` sur les taches qui manipulent un mot de passe ou un
|
||||||
hash de mot de passe.
|
hash de mot de passe.
|
||||||
- Testez toujours sur un groupe restreint avant de cibler tous les serveurs.
|
- 🧪 Testez toujours sur un groupe restreint avant de cibler tous les serveurs.
|
||||||
- Ne modifiez pas la politique SSH pendant une rotation de mot de passe.
|
- 🧷 Ne modifiez pas la politique SSH pendant une rotation de mot de passe.
|
||||||
|
|||||||
Reference in New Issue
Block a user