Commit dfe84fb8 authored by klafyvel's avatar klafyvel

Ajout du rôle apt-dater

parent 143bfadb
......@@ -28,10 +28,10 @@ Exemple d'extrait de fichier:
Il faut être root sur les machines cibles. Soit en utilisant la clé root président, soit avec son mot de passe perso.
La clé root président est dans le home de l'utilisateur ansible. Afin de ne pas taper 30 fois le mot de passe de déverrouillage, on pourra faire :
La clé root ansible est dans le home de l'utilisateur ansible. Afin de ne pas taper 30 fois le mot de passe de déverrouillage, on pourra faire :
```
$ ssh-agent bash # ou zsh, cela permet d'entrer dans un environnement où on sauvegarde les clés ssh
$ ssh-add ~/.ssh/root_rezo # on charge la clé ssh root du rézo
$ ssh-add ~/.ssh/root_ansible # on charge la clé ssh root dédiée à ansible
```
Si on souhaite utiliser son mot de passe perso, on se réfèrera à [cette page](https://docs.ansible.com/ansible/latest/user_guide/intro_getting_started.html#remote-connection-information)
......@@ -45,3 +45,23 @@ $ ansible all -m ping -i hosts -u root
## Playbooks
Les playbooks sont les recettes de cuisine à appliquer aux serveurs.
Pour utiliser l'un des playbooks, on n'oubliera pas de spécifier que l'on souhaite utiliser notre fichier hosts perso.
```
ansible-playbook -i hosts rezo_basic.yaml
```
### rezo_basic.yaml
Ce playbook réalise les opérations usuelles après une installation de machine au Rézo. Il réalise entre autre :
* Mise à jour de la machine
* Déploiement des clés ssh root prez et apt-dater;
* Activation de l'accès par le LDAP;
* Installation de ZSH;
* Installation de Vim
* Installation de fail2ban;
* Installation d'apticron;
* Déploiement du motd Rézo.
Pour que le rôle fonctionne, on installe normalement la machine via l'installateur dédié, puis on place le nom de domaine ou son adresse IP dans le fichier hosts. Si la machine ne correspond à aucun groupe, il suffit de la mettre en tête de fichier.
# rezo_basic.yaml
# Ce rôle réalise le déploiement classique pour une machine du rézo
# après une installation. Se référer au fichier README.md pour plus de
# précisions.
---
- hosts: all
remote_user: root
tasks:
- name: Upgrade the machine
apt:
update_cache: yes
upgrade: yes
- name: Deploy root_rezo ssh key
authorized_key:
user: root
state: present
key: "{{ lookup('file', './ssh/root_rezo.pub') }}"
- include_role:
name: apt-dater
- name: Install ZSH
apt:
name: zsh
- name: Install vim
apt:
name: vim
ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAHxw/CCIAmyFO1eMIimpdzMhacQWIh9fUSgRlVB60cMmfvCA0yLPas1oWW+jA3XNSuXsW65TzI589zGQ08HD72dNQG+777sa1fpF0KG8JSnA5BNS6ihWgeE+l1p2EiW4DBFbnN/N3gP7FoEHjpw+SGZVQVKc0cijwkkJflFvoX4xOic4A== apt-dater@era
- name: Install apt-dater-host
apt:
name: apt-dater-host
- name: Add apt-dater user
user:
name: apt-dater
system: yes
groups: ssh
- name: Deploy apt_dater ssh key
authorized_key:
user: apt-dater
state: present
key: "{{ lookup('file', 'apt-dater.pub') }}"
- name: Change ssh files' mode
file:
path: /home/apt-dater/.ssh
mode: '700'
owner: apt-dater
group: apt-dater
- name: Backup sudoers file
copy:
remote_src: yes
src: /etc/sudoers
dest: /etc/sudoers.tmp
- name: Allow apt-dater to perform aptitude actions
lineinfile:
path: /etc/sudoers.tmp
line: "apt-dater ALL=NOPASSWD: /usr/bin/apt-get, /usr/bin/aptitude"
state: present
insertafter: "# User privilege specification"
- name: sudoers file check
shell: visudo -q -c -f /etc/sudoers.tmp && mv -f /etc/sudoers.tmp /etc/sudoers
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC1VXpH9GwfgR7fSWaCj4DirunOFNF2tmANjEAlFL+uBf9lUSYAXLJiz5i10sHvVgcT4eopeFVVscSPaUae6B+rNl/h/rTmh4+mbtWVLDeCGPq1WkT/ZJljK85iOna+kIFBhCwT7vK3vl0RNgXKrKE7xcIJJ32iBY7Bc3mzqfDoB36bcsDE71RdYQS4rKej+qX7NYoIcetBFdmsR1yOfOx/QRbd8zO+pIiK06LIpw9PK4WzfV2PN1YGzvFmHMyXiB0KHMSV1hHf1l9v8P3yv/T7iHuBFD9i8i9gS35tdws7OZ1PHl6D2dSU+LVXL3IuRWSYtGIMyF9+bTLdTX2lOHis7EetvCjHLJDuyRMQyApvi4D34zW5SlazqmTD3pBUfqMf8x0P1YGNta3nVrhyG6619Jm9ZpnHZV5/bQaJ5Q0+dklFegmYvf9KLEDKTjfD7E4Z8X/TQS1uAPX4wTzPEEks6zKjta69a1KWNHeWrHziwG8GDVZNAW1ZabHTSqTi2nN95lPpF6CEUO6UcnwX0rhVvMRLiCPWwJ4jZj4gzs88gu8vBJHMtxwDnHfn5ofEm2w9swooUGHTe8l+4VScsHuOjSXFji1bCUy2tXCtA6ukhq5cSYlIAmV9J+ULrwFVq1CBFKpg+IFMeWCKc84TyE0/+hoE5n8s5mFf4x25Y2hoAQ== root@president
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment