Merge branch 'mise_a_niveau' into 'main'
Mise à jour de ansible See merge request nounous/ansible!353merge-requests/353/merge
commit
7b68f65243
4
all.yml
4
all.yml
|
@ -12,10 +12,8 @@
|
||||||
- import_playbook: plays/borgbackup_client.yml
|
- import_playbook: plays/borgbackup_client.yml
|
||||||
- import_playbook: plays/cas.yml
|
- import_playbook: plays/cas.yml
|
||||||
- import_playbook: plays/certbot.yml
|
- import_playbook: plays/certbot.yml
|
||||||
- import_playbook: plays/constellation.yml
|
|
||||||
- import_playbook: plays/dhcp.yml
|
- import_playbook: plays/dhcp.yml
|
||||||
- import_playbook: plays/dns-authoritative.yml
|
- import_playbook: plays/dns-authoritative.yml
|
||||||
- import_playbook: plays/dns-recursive.yml
|
|
||||||
- import_playbook: plays/dovecot.yml
|
- import_playbook: plays/dovecot.yml
|
||||||
- import_playbook: plays/ethercalc.yml
|
- import_playbook: plays/ethercalc.yml
|
||||||
- import_playbook: plays/etherpad.yml
|
- import_playbook: plays/etherpad.yml
|
||||||
|
@ -51,6 +49,7 @@
|
||||||
- import_playbook: plays/radvd.yml
|
- import_playbook: plays/radvd.yml
|
||||||
- import_playbook: plays/re2o-ldap.yml
|
- import_playbook: plays/re2o-ldap.yml
|
||||||
- import_playbook: plays/re2o.yml
|
- import_playbook: plays/re2o.yml
|
||||||
|
- import_playbook: plays/restic_client.yml
|
||||||
- import_playbook: plays/reverse-proxy.yml
|
- import_playbook: plays/reverse-proxy.yml
|
||||||
- import_playbook: plays/root.yml
|
- import_playbook: plays/root.yml
|
||||||
- import_playbook: plays/roundcube.yml
|
- import_playbook: plays/roundcube.yml
|
||||||
|
@ -63,6 +62,5 @@
|
||||||
- import_playbook: plays/unbound.yml
|
- import_playbook: plays/unbound.yml
|
||||||
- import_playbook: plays/utilities.yml
|
- import_playbook: plays/utilities.yml
|
||||||
- import_playbook: plays/vm_setup.yml
|
- import_playbook: plays/vm_setup.yml
|
||||||
- import_playbook: plays/vsftpd.yml
|
|
||||||
- import_playbook: plays/wireguard.yml
|
- import_playbook: plays/wireguard.yml
|
||||||
- import_playbook: plays/zamok.yml
|
- import_playbook: plays/zamok.yml
|
||||||
|
|
|
@ -9,8 +9,7 @@ glob_borg:
|
||||||
- /backup/borg-server
|
- /backup/borg-server
|
||||||
- /backup/borg-adh
|
- /backup/borg-adh
|
||||||
remote:
|
remote:
|
||||||
- borg@backup-ft.adm.crans.org:/backup/borg-server/{{ ansible_hostname }}
|
- ssh://borg@backup-ft.adm.crans.org/backup/borg-server/{{ ansible_hostname }}
|
||||||
- borg@backup-thot.adm.crans.org:/backup/borg-server/{{ ansible_hostname }}
|
|
||||||
retention:
|
retention:
|
||||||
- ["daily", 4]
|
- ["daily", 4]
|
||||||
- ["monthly", 6]
|
- ["monthly", 6]
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
glob_home_nounou:
|
glob_home_nounou:
|
||||||
mounts:
|
mounts:
|
||||||
- ip: "{{ query('ldap', 'ip4', 'tealc', 'adm') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'tealc', 'adm') }}"
|
||||||
mountpoint: /pool/home
|
mountpoint: /pool/home
|
||||||
target: /home_nounou
|
target: /home_nounou
|
||||||
name: home_nounou
|
name: home_nounou
|
||||||
|
|
|
@ -3,8 +3,8 @@ glob_ldap:
|
||||||
uri: 'ldap://yson-partou.adm.crans.org/'
|
uri: 'ldap://yson-partou.adm.crans.org/'
|
||||||
users_base: 'cn=Utilisateurs,dc=crans,dc=org'
|
users_base: 'cn=Utilisateurs,dc=crans,dc=org'
|
||||||
servers:
|
servers:
|
||||||
- "{{ query('ldap', 'ip4', 'wall-e', 'adm') }}"
|
- "{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}"
|
||||||
# - "{{ query('ldap', 'ip4', 'sam', 'adm') }}"
|
# - "{{ lookup('ldap', 'ip4', 'sam', 'adm') }}"
|
||||||
# - "{{ query('ldap', 'ip4', 'daniel', 'adm') }}"
|
# - "{{ lookup('ldap', 'ip4', 'daniel', 'adm') }}"
|
||||||
# - "{{ query('ldap', 'ip4', 'jack', 'adm') }}"
|
# - "{{ lookup('ldap', 'ip4', 'jack', 'adm') }}"
|
||||||
base: 'dc=crans,dc=org'
|
base: 'dc=crans,dc=org'
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
---
|
---
|
||||||
glob_mirror:
|
glob_mirror:
|
||||||
hostname: mirror.adm.crans.org
|
hostname: mirror.adm.crans.org
|
||||||
ip: "{{ query('ldap', 'ip4', 'eclat', 'adm') }}"
|
ip: "{{ lookup('ldap', 'ip4', 'eclat', 'adm') }}"
|
||||||
|
|
||||||
debian_mirror: http://mirror.adm.crans.org/debian
|
debian_mirror: http://mirror.adm.crans.org/debian
|
||||||
ubuntu_mirror: http://mirror.adm.crans.org/ubuntu
|
|
||||||
proxmox_mirror: http://mirror.adm.crans.org/proxmox/debian/pve
|
proxmox_mirror: http://mirror.adm.crans.org/proxmox/debian/pve
|
||||||
debian_components: main contrib non-free
|
debian_components: main contrib non-free
|
||||||
ubuntu_components: main restricted universe multiverse
|
|
||||||
|
|
|
@ -3,12 +3,12 @@ glob_network_interfaces:
|
||||||
vlan:
|
vlan:
|
||||||
- name: srv
|
- name: srv
|
||||||
id: 2
|
id: 2
|
||||||
gateway: "{{ query('ldap', 'ip4', 'passerelle', 'srv') }}"
|
gateway: "{{ lookup('ldap', 'ip4', 'passerelle', 'srv') }}"
|
||||||
gateway_v6: "{{ query('ldap', 'ip6', 'passerelle', 'srv') }}"
|
gateway_v6: "{{ lookup('ldap', 'ip6', 'passerelle', 'srv') }}"
|
||||||
- name: srv_nat
|
- name: srv_nat
|
||||||
id: 3
|
id: 3
|
||||||
gateway: "{{ query('ldap', 'ip4', 'passerelle', 'srv-nat') }}"
|
gateway: "{{ lookup('ldap', 'ip4', 'passerelle', 'srv-nat') }}"
|
||||||
gateway_v6: "{{ query('ldap', 'ip6', 'passerelle', 'srv-nat') }}"
|
gateway_v6: "{{ lookup('ldap', 'ip6', 'passerelle', 'srv-nat') }}"
|
||||||
- name: san
|
- name: san
|
||||||
id: 4
|
id: 4
|
||||||
extra:
|
extra:
|
||||||
|
@ -19,14 +19,14 @@ glob_network_interfaces:
|
||||||
- "mtu 9000"
|
- "mtu 9000"
|
||||||
- name: adm
|
- name: adm
|
||||||
id: 10
|
id: 10
|
||||||
dns: "{{ query('ldap', 'ip4', 'romanesco', 'adm') }}"
|
dns: "{{ lookup('ldap', 'ip4', 'romanesco', 'adm') }}"
|
||||||
- name: adh
|
- name: adh
|
||||||
id: 12
|
id: 12
|
||||||
- name: adh_adm
|
- name: adh_adm
|
||||||
id: 13
|
id: 13
|
||||||
- name: renater
|
- name: renater
|
||||||
id: 38
|
id: 38
|
||||||
gateway: "{{ query('ldap', 'ip4', 'dsi', 'renater') }}"
|
gateway: "{{ lookup('ldap', 'ip4', 'dsi', 'renater') }}"
|
||||||
- name: lp
|
- name: lp
|
||||||
id: 56
|
id: 56
|
||||||
- name: auto
|
- name: auto
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
---
|
---
|
||||||
glob_prometheus_nginx_exporter:
|
glob_prometheus_nginx_exporter:
|
||||||
listen_addr: "{{ query('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
listen_addr: "{{ lookup('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
---
|
---
|
||||||
glob_prometheus_node_exporter:
|
glob_prometheus_node_exporter:
|
||||||
listen_addr: "{{ query('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
listen_addr: "{{ lookup('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
---
|
||||||
|
glob_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_exclude:
|
||||||
|
- /var/cache
|
||||||
|
- /var/lib/lxcfs
|
||||||
|
to_backup:
|
||||||
|
- /etc
|
||||||
|
- /var
|
||||||
|
retention:
|
||||||
|
- [--keep-daily, 2]
|
||||||
|
- [--keep-weekly, 2]
|
||||||
|
- [--keep-monthly, 2]
|
||||||
|
- [--keep-yearly, 1]
|
||||||
|
remote:
|
||||||
|
- rest:http://{{ ansible_hostname }}:{{ vault.restic[ansible_hostname].rest_password }}@172.16.10.14/{{ ansible_hostname }}/
|
|
@ -1,3 +1,3 @@
|
||||||
---
|
---
|
||||||
glob_rsyslog_client:
|
glob_rsyslog_client:
|
||||||
server: "{{ query('ldap', 'ip4', 'tealc', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'tealc', 'adm') }}"
|
||||||
|
|
|
@ -12,4 +12,4 @@ glob_service_ssh_known_hosts:
|
||||||
frequency: "*/10 * * * *"
|
frequency: "*/10 * * * *"
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
server: "ldaps://{{ query('ldap', 'ip4', 'wall-e', 'adm') }}"
|
server: "ldaps://{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}"
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
glob_sudo:
|
||||||
|
group: "NOUNOUS"
|
|
@ -1,4 +1,5 @@
|
||||||
---
|
---
|
||||||
|
# Semble mettre à jour les routes
|
||||||
glob_service_proxy:
|
glob_service_proxy:
|
||||||
git:
|
git:
|
||||||
remote: https://gitlab.adm.crans.org/nounous/proxy.git
|
remote: https://gitlab.adm.crans.org/nounous/proxy.git
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
loc_home_nounou:
|
loc_home_nounou:
|
||||||
mounts:
|
mounts:
|
||||||
- ip: "{{ query('ldap', 'ip4', 'thot', 'adm') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'thot', 'adm') }}"
|
||||||
mountpoint: /home_nounou
|
mountpoint: /home_nounou
|
||||||
target: /home_nounou
|
target: /home_nounou
|
||||||
name: home_nounou
|
name: home_nounou
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
---
|
---
|
||||||
loc_ldap:
|
loc_ldap:
|
||||||
servers:
|
servers:
|
||||||
- "{{ query('ldap', 'ip4', 'thot', 'adm') }}"
|
- "{{ lookup('ldap', 'ip4', 'thot', 'adm') }}"
|
||||||
|
|
|
@ -2,4 +2,4 @@
|
||||||
loc_service_ssh_known_hosts:
|
loc_service_ssh_known_hosts:
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
server: "ldaps://{{ query('ldap', 'ip4', 'thot', 'adm') }}"
|
server: "ldaps://{{ lookup('ldap', 'ip4', 'thot', 'adm') }}"
|
||||||
|
|
|
@ -49,4 +49,4 @@ glob_bird:
|
||||||
ipv6: true
|
ipv6: true
|
||||||
|
|
||||||
glob_prometheus_bird_exporter:
|
glob_prometheus_bird_exporter:
|
||||||
listen_addr: "{{ query('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
listen_addr: "{{ lookup('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
glob_ceph:
|
|
||||||
mirror: 'http://mirror.adm.crans.org/download.ceph.com/debian-quincy'
|
|
||||||
mirror_key: 'http://mirror.adm.crans.org/download.ceph.com/keys/release.asc'
|
|
|
@ -15,7 +15,7 @@ glob_service_certbot:
|
||||||
config:
|
config:
|
||||||
"crans.org":
|
"crans.org":
|
||||||
zone: _acme-challenge.crans.org
|
zone: _acme-challenge.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_challenge.
|
name: certbot_challenge.
|
||||||
|
|
|
@ -1,47 +0,0 @@
|
||||||
---
|
|
||||||
glob_constellation:
|
|
||||||
django_secret_key: "{{ vault.constellation.django_secret_key }}"
|
|
||||||
admins:
|
|
||||||
- ('Root', 'root@crans.org')
|
|
||||||
allowed_hosts:
|
|
||||||
- 'constellation.crans.org'
|
|
||||||
- 'intranet.crans.org'
|
|
||||||
email:
|
|
||||||
ssl: false
|
|
||||||
host: "{{ query('ldap', 'ip4', 'redisdead', 'adm') }}"
|
|
||||||
port: 25
|
|
||||||
user: ''
|
|
||||||
password: ''
|
|
||||||
from: "root@crans.org"
|
|
||||||
from_full: "Crans <root@crans.org>"
|
|
||||||
database:
|
|
||||||
host: "{{ query('ldap', 'ip4', 'tealc', 'adm') }}"
|
|
||||||
port: 5432
|
|
||||||
user: 'constellation'
|
|
||||||
password: "{{ vault.constellation.django_db_password }}"
|
|
||||||
name: 'constellation'
|
|
||||||
front: true
|
|
||||||
crontab: true
|
|
||||||
applications:
|
|
||||||
- 'access'
|
|
||||||
- 'billing'
|
|
||||||
- 'dnsmanager'
|
|
||||||
- 'firewall'
|
|
||||||
- 'layers'
|
|
||||||
- 'management'
|
|
||||||
- 'member'
|
|
||||||
- 'topography'
|
|
||||||
- 'unix'
|
|
||||||
stripe:
|
|
||||||
private_key: '{{ vault.constellation.stripe.live.private_key }}'
|
|
||||||
public_key: '{{ vault.constellation.stripe.live.public_key }}'
|
|
||||||
note:
|
|
||||||
url: 'https://note.crans.org/'
|
|
||||||
client_id: '{{ vault.constellation.note.client_id }}'
|
|
||||||
client_secret: '{{ vault.constellation.note.client_secret }}'
|
|
||||||
debug: false
|
|
||||||
owner: root
|
|
||||||
group: _nounou
|
|
||||||
version: main
|
|
||||||
settings_local_owner: www-data
|
|
||||||
settings_local_group: _nounou
|
|
|
@ -1,30 +0,0 @@
|
||||||
---
|
|
||||||
loc_nginx:
|
|
||||||
service_name: constellation
|
|
||||||
ssl: []
|
|
||||||
servers:
|
|
||||||
- ssl: false
|
|
||||||
default: true
|
|
||||||
server_name:
|
|
||||||
- "constellation.crans.org"
|
|
||||||
- "intranet.crans.org"
|
|
||||||
locations:
|
|
||||||
- filter: "/static"
|
|
||||||
params:
|
|
||||||
- "alias {% if constellation.version == 'main' %}/var/lib/constellation/static/{% else %}/var/local/constellation/static/{% endif %}"
|
|
||||||
|
|
||||||
- filter: "/media"
|
|
||||||
params:
|
|
||||||
- "alias {% if constellation.version == 'main' %}/var/lib/constellation/media/{% else %}/var/local/constellation/media/{% endif %}"
|
|
||||||
|
|
||||||
- filter: "/doc"
|
|
||||||
params:
|
|
||||||
- "alias /var/www/constellation-doc/"
|
|
||||||
|
|
||||||
- filter: "/"
|
|
||||||
params:
|
|
||||||
- "uwsgi_pass constellation"
|
|
||||||
- "include /etc/nginx/uwsgi_params"
|
|
||||||
upstreams:
|
|
||||||
- name: 'constellation'
|
|
||||||
server: 'unix:///var/run/uwsgi/app/constellation/constellation.sock'
|
|
|
@ -8,8 +8,5 @@ glob_service_dhcp:
|
||||||
name: dhcp
|
name: dhcp
|
||||||
install_dir: /var/local/services/dhcp
|
install_dir: /var/local/services/dhcp
|
||||||
generated: true
|
generated: true
|
||||||
cron:
|
|
||||||
frequency: "*/2 * * * *"
|
|
||||||
options: -q
|
|
||||||
dependencies:
|
dependencies:
|
||||||
- python3-jinja2
|
- python3-jinja2
|
||||||
|
|
|
@ -6,14 +6,14 @@ glob_django_cas:
|
||||||
dn: 'cn=Utilisateurs,dc=crans,dc=org'
|
dn: 'cn=Utilisateurs,dc=crans,dc=org'
|
||||||
password: "{{ vault.cas.ldap.password }}"
|
password: "{{ vault.cas.ldap.password }}"
|
||||||
user: 'cn=cas,ou=service-users,dc=crans,dc=org'
|
user: 'cn=cas,ou=service-users,dc=crans,dc=org'
|
||||||
server: "{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}"
|
||||||
db:
|
db:
|
||||||
host: tealc.adm.crans.org
|
host: tealc.adm.crans.org
|
||||||
password: "{{ vault.cas.database.password }}"
|
password: "{{ vault.cas.database.password }}"
|
||||||
secret_key: "{{ vault.cas.secret_key }}"
|
secret_key: "{{ vault.cas.secret_key }}"
|
||||||
mail:
|
mail:
|
||||||
address: 'root@crans.org'
|
address: 'root@crans.org'
|
||||||
host: "{{ query('ldap', 'ip4', 'redisdead', 'adm') }}"
|
host: "{{ lookup('ldap', 'ip4', 'redisdead', 'adm') }}"
|
||||||
port: 25
|
port: 25
|
||||||
|
|
||||||
loc_nginx:
|
loc_nginx:
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
glob_dovecot:
|
glob_dovecot:
|
||||||
ldap:
|
ldap:
|
||||||
uri: "ldap://{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}/"
|
uri: "ldap://{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}/"
|
||||||
dn: 'cn=dovecot,ou=service-users,dc=crans,dc=org'
|
dn: 'cn=dovecot,ou=service-users,dc=crans,dc=org'
|
||||||
pass: "{{ vault.dovecot.dnpass }}"
|
pass: "{{ vault.dovecot.dnpass }}"
|
||||||
users_base: 'cn=Utilisateurs,dc=crans,dc=org'
|
users_base: 'cn=Utilisateurs,dc=crans,dc=org'
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
---
|
---
|
||||||
glob_ethercalc:
|
glob_ethercalc:
|
||||||
ip: "{{ query('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
ip: "{{ lookup('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
||||||
|
|
|
@ -36,4 +36,4 @@ service_nginx:
|
||||||
- "proxy_pass http://localhost:8444"
|
- "proxy_pass http://localhost:8444"
|
||||||
|
|
||||||
glob_galene:
|
glob_galene:
|
||||||
version: 0.6.1
|
version: 0.96.3
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
glob_keepalived:
|
glob_keepalived:
|
||||||
mail_source: keepalived@crans.org
|
mail_source: keepalived@crans.org
|
||||||
mail_destination: root@crans.org
|
mail_destination: root@crans.org
|
||||||
smtp_server: "{{ query('ldap', 'ip4', 'redisdead', 'adm') }}"
|
smtp_server: "{{ lookup('ldap', 'ip4', 'redisdead', 'adm') }}"
|
||||||
routeur_id: "{{ ansible_hostname }}"
|
routeur_id: "{{ ansible_hostname }}"
|
||||||
pool:
|
pool:
|
||||||
VI_ALL:
|
VI_ALL:
|
||||||
|
@ -20,19 +20,19 @@ glob_keepalived:
|
||||||
ipv6:
|
ipv6:
|
||||||
- {ip: '2a0c:700:28::1/64', scope: 'global'}
|
- {ip: '2a0c:700:28::1/64', scope: 'global'}
|
||||||
- vlan: srv
|
- vlan: srv
|
||||||
ipv4: "{{ query('ldap', 'ip4', 'passerelle', 'srv') }}/26"
|
ipv4: "{{ lookup('ldap', 'ip4', 'passerelle', 'srv') }}/26"
|
||||||
ipv6:
|
ipv6:
|
||||||
- {ip: "{{ query('ldap', 'ip6', 'passerelle', 'srv') }}/64", scope: 'global'}
|
- {ip: "{{ lookup('ldap', 'ip6', 'passerelle', 'srv') }}/64", scope: 'global'}
|
||||||
- {ip: 'fe80::1/64', scope: 'link'}
|
- {ip: 'fe80::1/64', scope: 'link'}
|
||||||
- vlan: srv_nat
|
- vlan: srv_nat
|
||||||
ipv4: "{{ query('ldap', 'ip4', 'passerelle', 'srv-nat') }}/24"
|
ipv4: "{{ lookup('ldap', 'ip4', 'passerelle', 'srv-nat') }}/24"
|
||||||
ipv6:
|
ipv6:
|
||||||
- {ip: "{{ query('ldap', 'ip6', 'passerelle', 'srv-nat') }}/64", scope: 'global'}
|
- {ip: "{{ lookup('ldap', 'ip6', 'passerelle', 'srv-nat') }}/64", scope: 'global'}
|
||||||
- {ip: 'fe80::1/64', scope: 'link'}
|
- {ip: 'fe80::1/64', scope: 'link'}
|
||||||
- vlan: adh
|
- vlan: adh
|
||||||
ipv4: "{{ query('ldap', 'ip4', 'passerelle', 'adh') }}/24"
|
ipv4: "{{ lookup('ldap', 'ip4', 'passerelle', 'adh') }}/24"
|
||||||
ipv6:
|
ipv6:
|
||||||
- {ip: "{{ query('ldap', 'ip6', 'passerelle', 'adh') }}/48", scope: 'global'}
|
- {ip: "{{ lookup('ldap', 'ip6', 'passerelle', 'adh') }}/48", scope: 'global'}
|
||||||
- {ip: 'fe80::1/64', scope: 'link'}
|
- {ip: 'fe80::1/64', scope: 'link'}
|
||||||
# - vlan: ens
|
# - vlan: ens
|
||||||
# ipv4: 100.84.0.99/16
|
# ipv4: 100.84.0.99/16
|
||||||
|
|
|
@ -57,13 +57,13 @@ glob_mailman3:
|
||||||
database:
|
database:
|
||||||
user: "mailman3"
|
user: "mailman3"
|
||||||
pass: "{{ vault.mailman3.database.pass }}"
|
pass: "{{ vault.mailman3.database.pass }}"
|
||||||
host: "{{ query('ldap', 'ip4', 'tealc', 'adm') }}"
|
host: "{{ lookup('ldap', 'ip4', 'tealc', 'adm') }}"
|
||||||
port: 5432
|
port: 5432
|
||||||
name: "mailman3"
|
name: "mailman3"
|
||||||
web_database:
|
web_database:
|
||||||
user: "mailman3web"
|
user: "mailman3web"
|
||||||
pass: "{{ vault.mailman3.web_database.pass }}"
|
pass: "{{ vault.mailman3.web_database.pass }}"
|
||||||
host: "{{ query('ldap', 'ip4', 'tealc', 'adm') }}"
|
host: "{{ lookup('ldap', 'ip4', 'tealc', 'adm') }}"
|
||||||
port: 5432
|
port: 5432
|
||||||
name: "mailman3web"
|
name: "mailman3web"
|
||||||
restadmin_pass: "{{ vault.mailman3.restadmin_pass }}"
|
restadmin_pass: "{{ vault.mailman3.restadmin_pass }}"
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
---
|
---
|
||||||
glob_nginx:
|
glob_nginx:
|
||||||
contact: contact@crans.org
|
contact: contact@crans.org
|
||||||
|
extra_params: []
|
||||||
who: "L'équipe technique du Cr@ns"
|
who: "L'équipe technique du Cr@ns"
|
||||||
service_name: service
|
service_name: service
|
||||||
ssl:
|
ssl:
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
---
|
---
|
||||||
glob_prometheus_postfix_exporter:
|
glob_prometheus_postfix_exporter:
|
||||||
listen_addr: "{{ query('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
listen_addr: "{{ lookup('ldap', 'ip4', ansible_hostname, 'adm') }}"
|
||||||
|
|
|
@ -14,6 +14,6 @@ loc_service_prefix_delegation:
|
||||||
prefix: "2a0c:700:12::"
|
prefix: "2a0c:700:12::"
|
||||||
length: "48"
|
length: "48"
|
||||||
ldap:
|
ldap:
|
||||||
server: "ldaps://{{ query('ldap', 'ip4', 'flirt', 'adm') }}"
|
server: "ldaps://{{ lookup('ldap', 'ip4', 'flirt', 'adm') }}"
|
||||||
binddn: "{{ vault.ldap_adh_reader.binddn }}"
|
binddn: "{{ vault.ldap_adh_reader.binddn }}"
|
||||||
password: "{{ vault.ldap_adh_reader.bindpass }}"
|
password: "{{ vault.ldap_adh_reader.bindpass }}"
|
||||||
|
|
|
@ -8,14 +8,14 @@ glob_printer:
|
||||||
- 'imprimante.crans.org'
|
- 'imprimante.crans.org'
|
||||||
email:
|
email:
|
||||||
ssl: false
|
ssl: false
|
||||||
host: "{{ query('ldap', 'ip4', 'redisdead', 'adm') }}"
|
host: "{{ lookup('ldap', 'ip4', 'redisdead', 'adm') }}"
|
||||||
port: 25
|
port: 25
|
||||||
user: ''
|
user: ''
|
||||||
password: ''
|
password: ''
|
||||||
from: "root@crans.org"
|
from: "root@crans.org"
|
||||||
from_full: "Crans <root@crans.org>"
|
from_full: "Crans <root@crans.org>"
|
||||||
database:
|
database:
|
||||||
host: "{{ query('ldap', 'ip4', 'tealc', 'adm') }}"
|
host: "{{ lookup('ldap', 'ip4', 'tealc', 'adm') }}"
|
||||||
port: 5432
|
port: 5432
|
||||||
user: 'helloworld'
|
user: 'helloworld'
|
||||||
password: "{{ vault.printer.django_db_password }}"
|
password: "{{ vault.printer.django_db_password }}"
|
||||||
|
@ -27,9 +27,9 @@ glob_printer:
|
||||||
note_id: 2088
|
note_id: 2088
|
||||||
note_alias: 'Crans'
|
note_alias: 'Crans'
|
||||||
printer_name: 'Lexmark_X950_Series'
|
printer_name: 'Lexmark_X950_Series'
|
||||||
domain: "{{ query('ldap', 'ip4', 'printer', 'lp') }}"
|
domain: "{{ lookup('ldap', 'ip4', 'printer', 'lp') }}"
|
||||||
scan_server:
|
scan_server:
|
||||||
address: "{{ query('ldap', 'ip4', ansible_hostname, 'lp') }}"
|
address: "{{ lookup('ldap', 'ip4', ansible_hostname, 'lp') }}"
|
||||||
port: 9751
|
port: 9751
|
||||||
debug: false
|
debug: false
|
||||||
owner: www-data
|
owner: www-data
|
||||||
|
@ -38,7 +38,7 @@ glob_printer:
|
||||||
settings_local_owner: www-data
|
settings_local_owner: www-data
|
||||||
settings_local_group: _nounou
|
settings_local_group: _nounou
|
||||||
ldap:
|
ldap:
|
||||||
uri: "ldaps://{{ query('ldap', 'ip4', 'tealc', 'adm') }}/"
|
uri: "ldaps://{{ lookup('ldap', 'ip4', 'tealc', 'adm') }}/"
|
||||||
dn_template: uid=%(user)s,ou=passwd,dc=crans,dc=org
|
dn_template: uid=%(user)s,ou=passwd,dc=crans,dc=org
|
||||||
group_search: ou=group,dc=crans,dc=org
|
group_search: ou=group,dc=crans,dc=org
|
||||||
read_group: cn=_user,ou=group,dc=crans,dc=org
|
read_group: cn=_user,ou=group,dc=crans,dc=org
|
||||||
|
|
|
@ -13,7 +13,7 @@ glob_service_prometheus_target:
|
||||||
options: ""
|
options: ""
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
server: "ldaps://{{ query('ldap', 'ip4', 'wall-e', 'adm') }}"
|
server: "ldaps://{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}"
|
||||||
|
|
||||||
glob_ninjabot:
|
glob_ninjabot:
|
||||||
config:
|
config:
|
||||||
|
|
|
@ -9,7 +9,7 @@ glob_re2o:
|
||||||
- 'intranet.adm.crans.org'
|
- 'intranet.adm.crans.org'
|
||||||
- 're2o.crans.org'
|
- 're2o.crans.org'
|
||||||
- 'intranet.crans.org'
|
- 'intranet.crans.org'
|
||||||
- "{{ query('ldap', 'ip4', 're2o', 'adm') }}"
|
- "{{ lookup('ldap', 'ip4', 're2o', 'adm') }}"
|
||||||
from_email: "root@crans.org"
|
from_email: "root@crans.org"
|
||||||
smtp_server: smtp.adm.crans.org
|
smtp_server: smtp.adm.crans.org
|
||||||
ldap:
|
ldap:
|
||||||
|
@ -18,7 +18,7 @@ glob_re2o:
|
||||||
dn: "{{ vault.slapd.re2o.admin.binddn }}"
|
dn: "{{ vault.slapd.re2o.admin.binddn }}"
|
||||||
database:
|
database:
|
||||||
password: "{{ vault.re2o.database.password }}"
|
password: "{{ vault.re2o.database.password }}"
|
||||||
uri: "{{ query('ldap', 'ip4', 'tealc', 'adm') }}"
|
uri: "{{ lookup('ldap', 'ip4', 'tealc', 'adm') }}"
|
||||||
optional_apps:
|
optional_apps:
|
||||||
- api
|
- api
|
||||||
- captcha
|
- captcha
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
---
|
---
|
||||||
glob_re2o_front:
|
glob_re2o_front:
|
||||||
server_names:
|
server_names:
|
||||||
- "{{ query('ldap', 'ip4', 're2o', 'adm') }}"
|
- "{{ lookup('ldap', 'ip4', 're2o', 'adm') }}"
|
||||||
- "[{{ query('ldap', 'ip6', 're2o', 'adm') }}]"
|
- "[{{ lookup('ldap', 'ip6', 're2o', 'adm') }}]"
|
||||||
- re2o.adm.crans.org
|
- re2o.adm.crans.org
|
||||||
- intranet.adm.crans.org
|
- intranet.adm.crans.org
|
||||||
- re2o.crans.org
|
- re2o.crans.org
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
glob_re2o_ldap:
|
glob_re2o_ldap:
|
||||||
suffix: dc=crans,dc=org
|
suffix: dc=crans,dc=org
|
||||||
url: "ldaps://{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}:636"
|
url: "ldaps://{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}:636"
|
||||||
root_password_hash: "{{ vault.slapd.re2o.admin.bindpass_hash }}"
|
root_password_hash: "{{ vault.slapd.re2o.admin.bindpass_hash }}"
|
||||||
certificate: "{{ vault.slapd.re2o.certificate }}"
|
certificate: "{{ vault.slapd.re2o.certificate }}"
|
||||||
private_key: "{{ vault.slapd.re2o.private_key }}"
|
private_key: "{{ vault.slapd.re2o.private_key }}"
|
||||||
|
|
|
@ -8,7 +8,7 @@ loc_service_certbot:
|
||||||
config:
|
config:
|
||||||
"crans.org":
|
"crans.org":
|
||||||
zone: _acme-challenge.crans.org
|
zone: _acme-challenge.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_challenge.
|
name: certbot_challenge.
|
||||||
|
@ -16,7 +16,7 @@ loc_service_certbot:
|
||||||
algorithm: HMAC-SHA512
|
algorithm: HMAC-SHA512
|
||||||
"crans.eu":
|
"crans.eu":
|
||||||
zone: _acme-challenge.crans.org
|
zone: _acme-challenge.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_challenge.
|
name: certbot_challenge.
|
||||||
|
@ -24,7 +24,7 @@ loc_service_certbot:
|
||||||
algorithm: HMAC-SHA512
|
algorithm: HMAC-SHA512
|
||||||
"crans.fr":
|
"crans.fr":
|
||||||
zone: _acme-challenge.crans.org
|
zone: _acme-challenge.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_challenge.
|
name: certbot_challenge.
|
||||||
|
@ -49,34 +49,35 @@ glob_reverseproxy:
|
||||||
# Services web Crans
|
# Services web Crans
|
||||||
- {from: belenios.crans.org, to: 172.16.10.111}
|
- {from: belenios.crans.org, to: 172.16.10.111}
|
||||||
- {from: cas.crans.org, to: 172.16.10.120}
|
- {from: cas.crans.org, to: 172.16.10.120}
|
||||||
- {from: constellation-dev.crans.org, to: 172.16.10.167}
|
|
||||||
- {from: eclats.crans.org, to: 172.16.10.104}
|
- {from: eclats.crans.org, to: 172.16.10.104}
|
||||||
- {from: ftps.crans.org, to: 172.16.10.113}
|
- {from: element.crans.org, to: "172.16.10.118"}
|
||||||
- {from: ethercalc.crans.org, to: "172.16.10.133:8000"}
|
- {from: ethercalc.crans.org, to: "172.16.10.133:8000"}
|
||||||
- {from: framadate.crans.org, to: 172.16.10.109}
|
- {from: framadate.crans.org, to: 172.16.10.109}
|
||||||
|
- {from: ftps.crans.org, to: 172.16.10.113}
|
||||||
- {from: galene-token.crans.org, to: "172.16.10.115:3000"}
|
- {from: galene-token.crans.org, to: "172.16.10.115:3000"}
|
||||||
- {from: grafana.crans.org, to: "172.16.10.121:3000"}
|
- {from: grafana.crans.org, to: "172.16.10.121:3000"}
|
||||||
- {from: hedgedoc.crans.org, to: "172.16.10.128:3000"}
|
|
||||||
- {from: helloworld.crans.org, to: 172.16.10.131}
|
- {from: helloworld.crans.org, to: 172.16.10.131}
|
||||||
|
- {from: hosts.crans.org, to: 172.16.10.114}
|
||||||
- {from: imprimante.crans.org, to: 172.16.10.131}
|
- {from: imprimante.crans.org, to: 172.16.10.131}
|
||||||
- {from: intranet.crans.org, to: 172.16.10.156}
|
- {from: intranet.crans.org, to: 172.16.10.156}
|
||||||
- {from: linx.crans.org, to: "172.16.10.119:8080"}
|
- {from: linx.crans.org, to: "172.16.10.119:8080"}
|
||||||
- {from: lists.crans.org, to: 172.16.10.110}
|
- {from: lists.crans.org, to: 172.16.10.110}
|
||||||
- {from: matrix.crans.org, to: "172.16.10.123:8008"}
|
- {from: mediakiwi.crans.org, to: "172.16.10.144"}
|
||||||
- {from: mirrors.crans.org, to: 172.16.10.104}
|
- {from: mirrors.crans.org, to: 172.16.10.104}
|
||||||
- {from: nextcloud.crans.org, to: 172.16.10.137}
|
- {from: nextcloud.crans.org, to: 172.16.10.146}
|
||||||
- {from: onlyoffice.crans.org, to: 172.16.10.148}
|
- {from: onlyoffice.crans.org, to: 172.16.10.148}
|
||||||
- {from: owncloud.crans.org, to: 172.16.10.136}
|
- {from: owncloud.crans.org, to: 172.16.10.136}
|
||||||
- {from: pad.crans.org, to: "172.16.10.130:9001"}
|
- {from: pad.crans.org, to: "172.16.10.130:9001"}
|
||||||
|
- {from: pdf.crans.org, to: "172.16.10.140"}
|
||||||
- {from: re2o.crans.org, to: 172.16.10.156}
|
- {from: re2o.crans.org, to: 172.16.10.156}
|
||||||
- {from: re2o-dev.crans.org, to: 172.16.10.166}
|
- {from: re2o-dev.crans.org, to: 172.16.10.166}
|
||||||
- {from: roundcube.crans.org, to: 172.16.10.107}
|
- {from: roundcube.crans.org, to: 172.16.10.107}
|
||||||
- {from: tmpad.crans.org, to: "172.16.10.130:9002"}
|
- {from: tmpad.crans.org, to: "172.16.10.130:9002"}
|
||||||
|
- {from: vaultwarden.crans.org, to: "172.16.10.159"}
|
||||||
- {from: webirc.crans.org, to: "172.16.10.31:9000"}
|
- {from: webirc.crans.org, to: "172.16.10.31:9000"}
|
||||||
- {from: webmail.crans.org, to: 172.16.10.107}
|
- {from: webmail.crans.org, to: 172.16.10.107}
|
||||||
- {from: wiki.crans.org, to: 172.16.10.161}
|
- {from: wiki.crans.org, to: 172.16.10.161}
|
||||||
- {from: zero.crans.org, to: 172.16.10.130}
|
- {from: zero.crans.org, to: 172.16.10.130}
|
||||||
- {from: hosts.crans.org, to: 172.16.10.114}
|
|
||||||
|
|
||||||
# Zamok
|
# Zamok
|
||||||
- {from: amap.crans.org, to: 172.16.10.31}
|
- {from: amap.crans.org, to: 172.16.10.31}
|
||||||
|
@ -84,10 +85,9 @@ glob_reverseproxy:
|
||||||
- {from: perso.crans.org, to: 172.16.10.31}
|
- {from: perso.crans.org, to: 172.16.10.31}
|
||||||
|
|
||||||
redirect_sites:
|
redirect_sites:
|
||||||
- {from: crans.org, to: www.crans.org}
|
|
||||||
|
|
||||||
# Aliases or legacy support
|
# Aliases or legacy support
|
||||||
- {from: adopteunpingouin.crans.org, to: install-party.crans.org}
|
- {from: adopteunpingouin.crans.org, to: install-party.crans.org}
|
||||||
|
- {from: adopteunmanchot.crans.org, to: install-party.crans.org}
|
||||||
- {from: clubs.crans.org, to: perso.crans.org}
|
- {from: clubs.crans.org, to: perso.crans.org}
|
||||||
- {from: i-p.crans.org, to: install-party.crans.org}
|
- {from: i-p.crans.org, to: install-party.crans.org}
|
||||||
- {from: pot-vieux.crans.org, to: perso.crans.org/club-vieux}
|
- {from: pot-vieux.crans.org, to: perso.crans.org/club-vieux}
|
||||||
|
@ -97,7 +97,15 @@ glob_reverseproxy:
|
||||||
- {from: tv.crans.org, to: wiki.crans.org/CransTv}
|
- {from: tv.crans.org, to: wiki.crans.org/CransTv}
|
||||||
- {from: wikipedia.crans.org, to: wiki.crans.org}
|
- {from: wikipedia.crans.org, to: wiki.crans.org}
|
||||||
|
|
||||||
|
# To the wiki
|
||||||
|
- {from: mediawiki.crans.org, to: mediakiwi.crans.org}
|
||||||
|
|
||||||
|
# To pdf
|
||||||
|
- {from: stirling.crans.org, to: pdf.crans.org}
|
||||||
|
- {from: stirling-pdf.crans.org, to: pdf.crans.org}
|
||||||
|
|
||||||
static_sites:
|
static_sites:
|
||||||
- autoconfig.crans.org
|
- autoconfig.crans.org
|
||||||
- install-party.crans.org
|
- install-party.crans.org
|
||||||
|
- crans.org
|
||||||
- www.crans.org
|
- www.crans.org
|
||||||
|
|
|
@ -20,8 +20,8 @@ loc_dhcp:
|
||||||
vlan: "adh"
|
vlan: "adh"
|
||||||
default_lease_time: "600"
|
default_lease_time: "600"
|
||||||
max_lease_time: "7200"
|
max_lease_time: "7200"
|
||||||
routers: "{{ query('ldap', 'ip4', 'passerelle', 'adh') }}"
|
routers: "{{ lookup('ldap', 'ip4', 'passerelle', 'adh') }}"
|
||||||
dns: ["{{ query('ldap', 'ip4', 'romanesco', 'adh') }}"]
|
dns: ["{{ lookup('ldap', 'ip4', 'romanesco', 'adh') }}"]
|
||||||
domain_name: "adh.crans.org"
|
domain_name: "adh.crans.org"
|
||||||
domain_search: "adh.crans.org"
|
domain_search: "adh.crans.org"
|
||||||
options: []
|
options: []
|
||||||
|
@ -31,9 +31,25 @@ loc_service_dhcp:
|
||||||
git:
|
git:
|
||||||
remote: https://gitlab.adm.crans.org/nounous/dhcp.git
|
remote: https://gitlab.adm.crans.org/nounous/dhcp.git
|
||||||
version: main
|
version: main
|
||||||
cron:
|
systemd:
|
||||||
frequency: "*/2 * * * *"
|
Unit:
|
||||||
options: -r
|
After: network-online.target
|
||||||
|
Wants: network-online.target
|
||||||
|
StartLimitBurst: 3
|
||||||
|
StartLimitInterval: 40
|
||||||
|
Service:
|
||||||
|
Restart: on-failure
|
||||||
|
RestartSec: 10
|
||||||
|
ExecStart: "/usr/bin/python3 /var/local/services/dhcp/dhcp.py -r"
|
||||||
|
Type: oneshot
|
||||||
|
User: root
|
||||||
|
timer:
|
||||||
|
Unit: []
|
||||||
|
Timer:
|
||||||
|
OnCalendar: "*:0/2"
|
||||||
|
Persistent: true
|
||||||
|
Install:
|
||||||
|
WantedBy: timers.target
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
server: ldaps://flirt.adm.crans.org
|
server: ldaps://flirt.adm.crans.org
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
glob_slapd:
|
glob_slapd:
|
||||||
master_ip: "{{ query('ldap', 'ip4', 'wall-e', 'adm') }}"
|
master_ip: "{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}"
|
||||||
regex: "^(role:(dhcp|dns|dns-primary|dns-secondary|ftp|gitlab|miroir|ntp|pve|radius|backup)|ecdsa-sha2-nistp256:.*|ssh-(ed25519|dss|rsa):.*|description:.*|location:.*)$"
|
regex: "^(role:(dhcp|dns|dns-primary|dns-secondary|ftp|gitlab|miroir|ntp|pve|radius|backup)|ecdsa-sha2-nistp256:.*|ssh-(ed25519|dss|rsa):.*|description:.*|location:.*)$"
|
||||||
replication_credentials: "{{ vault.slapd.main.replication_credentials }}"
|
replication_credentials: "{{ vault.slapd.main.replication_credentials }}"
|
||||||
private_key: "{{ vault.slapd.main.private_key }}"
|
private_key: "{{ vault.slapd.main.private_key }}"
|
||||||
|
|
|
@ -4,17 +4,17 @@ glob_sssd:
|
||||||
domain: wall-e.adm.crans.org
|
domain: wall-e.adm.crans.org
|
||||||
enumerate: "true"
|
enumerate: "true"
|
||||||
servers:
|
servers:
|
||||||
- "ldaps://{{ query('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
- "ldaps://{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
||||||
- "ldaps://{{ query('ldap', 'ip4', 'sam', 'adm') }}/"
|
- "ldaps://{{ lookup('ldap', 'ip4', 'sam', 'adm') }}/"
|
||||||
- "ldaps://{{ query('ldap', 'ip4', 'daniel', 'adm') }}/"
|
- "ldaps://{{ lookup('ldap', 'ip4', 'daniel', 'adm') }}/"
|
||||||
- "ldaps://{{ query('ldap', 'ip4', 'jack', 'adm') }}/"
|
- "ldaps://{{ lookup('ldap', 'ip4', 'jack', 'adm') }}/"
|
||||||
base: "dc=crans,dc=org"
|
base: "dc=crans,dc=org"
|
||||||
secondary:
|
secondary:
|
||||||
domain: yson-partou.adm.crans.org
|
domain: yson-partou.adm.crans.org
|
||||||
enumerate: "false"
|
enumerate: "false"
|
||||||
servers:
|
servers:
|
||||||
- "ldaps://{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}/"
|
- "ldaps://{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}/"
|
||||||
- "ldaps://{{ query('ldap', 'ip4', 'terenez', 'adm') }}/"
|
- "ldaps://{{ lookup('ldap', 'ip4', 'terenez', 'adm') }}/"
|
||||||
base: "dc=crans,dc=org"
|
base: "dc=crans,dc=org"
|
||||||
bind:
|
bind:
|
||||||
dn: "{{ vault.sssd.secondary_ldap.binddn }}"
|
dn: "{{ vault.sssd.secondary_ldap.binddn }}"
|
||||||
|
|
|
@ -20,7 +20,7 @@ glob_thelounge:
|
||||||
join: "#general"
|
join: "#general"
|
||||||
ldap_enable: "false"
|
ldap_enable: "false"
|
||||||
ldap:
|
ldap:
|
||||||
url: "ldap://{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}"
|
url: "ldap://{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}"
|
||||||
primaryKey: "cn"
|
primaryKey: "cn"
|
||||||
rootDN: "{{ vault.thelounge.ldap.rootDN }}"
|
rootDN: "{{ vault.thelounge.ldap.rootDN }}"
|
||||||
rootPassword: "{{ vault.thelounge.ldap.rootPassword }}"
|
rootPassword: "{{ vault.thelounge.ldap.rootPassword }}"
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
loc_home_nounou:
|
loc_home_nounou:
|
||||||
mounts:
|
mounts:
|
||||||
- ip: "{{ query('ldap', 'ip4', 'ft', 'adm') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'ft', 'adm') }}"
|
||||||
mountpoint: /home_nounou
|
mountpoint: /home_nounou
|
||||||
target: /home_nounou
|
target: /home_nounou
|
||||||
name: home_nounou
|
name: home_nounou
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
---
|
---
|
||||||
loc_ldap:
|
loc_ldap:
|
||||||
servers:
|
servers:
|
||||||
- "{{ query('ldap', 'ip4', 'ft', 'adm') }}"
|
- "{{ lookup('ldap', 'ip4', 'ft', 'adm') }}"
|
||||||
|
|
|
@ -2,4 +2,4 @@
|
||||||
loc_service_ssh_known_hosts:
|
loc_service_ssh_known_hosts:
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
server: "ldaps://{{ query('ldap', 'ip4', 'ft', 'adm') }}"
|
server: "ldaps://{{ lookup('ldap', 'ip4', 'ft', 'adm') }}"
|
||||||
|
|
|
@ -5,6 +5,8 @@ glob_debian_images:
|
||||||
rsync_module: 'mirror'
|
rsync_module: 'mirror'
|
||||||
include_extra_images: false
|
include_extra_images: false
|
||||||
|
|
||||||
|
# Semble servir à synchroniser les nounous et apprenti⋅es avec le ldap dans
|
||||||
|
# proxmox
|
||||||
glob_service_proxmox_user:
|
glob_service_proxmox_user:
|
||||||
git:
|
git:
|
||||||
remote: https://gitlab.adm.crans.org/nounous/proxmox-user.git
|
remote: https://gitlab.adm.crans.org/nounous/proxmox-user.git
|
||||||
|
@ -18,7 +20,7 @@ glob_service_proxmox_user:
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
admin:
|
admin:
|
||||||
uri: "ldaps://{{ query('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
uri: "ldaps://{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
||||||
userBase: "ou=passwd,dc=crans,dc=org"
|
userBase: "ou=passwd,dc=crans,dc=org"
|
||||||
realm: "pam"
|
realm: "pam"
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -34,7 +36,7 @@ loc_service_certbot:
|
||||||
config:
|
config:
|
||||||
"adm.crans.org":
|
"adm.crans.org":
|
||||||
zone: _acme-challenge.adm.crans.org
|
zone: _acme-challenge.adm.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_adm_challenge.
|
name: certbot_adm_challenge.
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
---
|
---
|
||||||
|
# Semble servir à synchroniser les nounous et apprenti⋅es avec le ldap dans
|
||||||
|
# proxmox
|
||||||
glob_service_proxmox_user:
|
glob_service_proxmox_user:
|
||||||
git:
|
git:
|
||||||
remote: https://gitlab.adm.crans.org/nounous/proxmox-user.git
|
remote: https://gitlab.adm.crans.org/nounous/proxmox-user.git
|
||||||
|
@ -12,11 +14,11 @@ glob_service_proxmox_user:
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
admin:
|
admin:
|
||||||
uri: "ldaps://{{ query('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
uri: "ldaps://{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
||||||
userBase: "ou=passwd,dc=crans,dc=org"
|
userBase: "ou=passwd,dc=crans,dc=org"
|
||||||
realm: "pam"
|
realm: "pam"
|
||||||
user:
|
user:
|
||||||
uri: "ldaps://{{ query('ldap', 'ip4', 'flirt', 'adm') }}/"
|
uri: "ldaps://{{ lookup('ldap', 'ip4', 'flirt', 'adm') }}/"
|
||||||
userBase: "ou=users,dc=adh,dc=crans,dc=org"
|
userBase: "ou=users,dc=adh,dc=crans,dc=org"
|
||||||
realm: "pve"
|
realm: "pve"
|
||||||
binddn: "{{ vault.ldap_adh_reader.binddn }}"
|
binddn: "{{ vault.ldap_adh_reader.binddn }}"
|
||||||
|
|
|
@ -1,8 +1,53 @@
|
||||||
---
|
---
|
||||||
glob_moinmoin:
|
glob_moinmoin:
|
||||||
|
data_dir: /var/local/wiki/data
|
||||||
|
front_page: PageAccueil
|
||||||
|
interwikiname: CransWiki
|
||||||
|
ip_autorised:
|
||||||
|
- ip.startswith('185.230.76.') # IPv4 Crans
|
||||||
|
- ip.startswith('185.230.77.')
|
||||||
|
- ip.startswith('185.230.78.')
|
||||||
|
- ip.startswith('185.230.79.')
|
||||||
|
- ip.startswith('172.16.') # IPv4 local
|
||||||
|
- ip.startswith('138.231.')
|
||||||
|
- ip.startswith('45.66.108.') # IPv4 Aurore
|
||||||
|
- ip.startswith('45.66.109.')
|
||||||
|
- ip.startswith('45.66.110.')
|
||||||
|
- ip.startswith('45.66.111.')
|
||||||
|
- ip.startswith('2a0c:700:') # IPv6 Crans
|
||||||
|
- ip.startswith('2a09:6840:') # IPv6 Aurore
|
||||||
|
mail:
|
||||||
|
from: Crans Wiki <wiki@crans.org>
|
||||||
|
server: smtp.adm.crans.org
|
||||||
main: false
|
main: false
|
||||||
|
new_account_ip:
|
||||||
|
- 45.66.108.0/22, # IPv4 Aurore
|
||||||
|
- 100.64.0.0/10, # IPv4 adherents
|
||||||
|
- 138.231.175.203/32, # IPv4 PC Kfet
|
||||||
|
- 172.16.0.0/16, # IPv4 local
|
||||||
|
- 185.230.76.0/22, # IPv4 Crans
|
||||||
|
- 2a0c:700::/32, # IPv6 Crans
|
||||||
|
- 2a09:6840::/32, # IPv6 Aurore
|
||||||
|
site_name: Crans Wiki
|
||||||
|
superuser:
|
||||||
|
- u"Benjamin"
|
||||||
|
- u"DsAc"
|
||||||
|
- u"PeBecue"
|
||||||
|
- u"SolalNathan"
|
||||||
|
- u"VanilleNiven"
|
||||||
|
- u"WikiAeltheos"
|
||||||
|
- u"WikiBleizi"
|
||||||
|
- u"WikiGabo"
|
||||||
|
- u"WikiKorenstin"
|
||||||
|
- u"WikiLzebulon"
|
||||||
|
- u"WikiPigeonMoelleux"
|
||||||
|
- u"WikiPollion"
|
||||||
|
- u"WikiShirenn"
|
||||||
|
- u"Wiki20-100"
|
||||||
|
|
||||||
loc_nginx:
|
loc_nginx:
|
||||||
|
extra_params:
|
||||||
|
- "limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;"
|
||||||
service_name: wiki
|
service_name: wiki
|
||||||
ssl: []
|
ssl: []
|
||||||
servers:
|
servers:
|
||||||
|
@ -33,6 +78,7 @@ loc_nginx:
|
||||||
|
|
||||||
- filter: "/"
|
- filter: "/"
|
||||||
params:
|
params:
|
||||||
|
- "limit_req zone=mylimit burst=100 nodelay"
|
||||||
- "uwsgi_pass unix:///var/run/uwsgi/app/moinmoin/socket"
|
- "uwsgi_pass unix:///var/run/uwsgi/app/moinmoin/socket"
|
||||||
- "include uwsgi_params"
|
- "include uwsgi_params"
|
||||||
|
|
||||||
|
|
|
@ -7,3 +7,20 @@ loc_unattended:
|
||||||
|
|
||||||
loc_needrestart:
|
loc_needrestart:
|
||||||
override: []
|
override: []
|
||||||
|
|
||||||
|
loc_borg:
|
||||||
|
to_backup:
|
||||||
|
- /etc
|
||||||
|
- /home_nounou
|
||||||
|
- /var
|
||||||
|
|
||||||
|
loc_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_backup:
|
||||||
|
- /etc
|
||||||
|
- /home_nounou
|
||||||
|
- /var
|
||||||
|
|
||||||
|
loc_sudo:
|
||||||
|
group: "USERS"
|
||||||
|
|
|
@ -10,14 +10,14 @@ loc_needrestart:
|
||||||
|
|
||||||
loc_home_nounou:
|
loc_home_nounou:
|
||||||
mounts:
|
mounts:
|
||||||
- ip: "{{ query('ldap', 'ip4', 'ft', 'adm') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'ft', 'adm') }}"
|
||||||
mountpoint: /home_nounou
|
mountpoint: /home_nounou
|
||||||
target: /home_nounou
|
target: /home_nounou
|
||||||
name: home_nounou
|
name: home_nounou
|
||||||
owner: root
|
owner: root
|
||||||
group: _user
|
group: _user
|
||||||
mode: '0750'
|
mode: '0750'
|
||||||
- ip: "{{ query('ldap', 'ip4', 'ft', 'adm') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'ft', 'adm') }}"
|
||||||
mountpoint: /rpool/backup
|
mountpoint: /rpool/backup
|
||||||
target: /backup
|
target: /backup
|
||||||
name: backup
|
name: backup
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
adm: ens18
|
|
||||||
|
|
||||||
loc_unattended:
|
|
||||||
reboot: true
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
||||||
|
|
||||||
loc_home_nounou:
|
|
||||||
mounts:
|
|
||||||
- ip: "{{ query('ldap', 'ip4', 'thot', 'adm') }}"
|
|
||||||
mountpoint: /home_nounou
|
|
||||||
target: /home_nounou
|
|
||||||
name: home_nounou
|
|
||||||
owner: root
|
|
||||||
group: _user
|
|
||||||
mode: '0750'
|
|
||||||
- ip: "{{ query('ldap', 'ip4', 'thot', 'adm') }}"
|
|
||||||
mountpoint: /rpool/backup
|
|
||||||
target: /backup
|
|
||||||
name: backup
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: '0755'
|
|
|
@ -18,9 +18,9 @@ loc_wireguard:
|
||||||
peers:
|
peers:
|
||||||
- public_key: "{{ vault.wireguard.sputnik.pubkey }}"
|
- public_key: "{{ vault.wireguard.sputnik.pubkey }}"
|
||||||
allowed_ips:
|
allowed_ips:
|
||||||
- "{{ query('ldap', 'ip4', 'sputnik', 'adm') }}/32"
|
- "{{ lookup('ldap', 'ip4', 'sputnik', 'adm') }}/32"
|
||||||
- "{{ query('ldap', 'ip6', 'sputnik', 'adm') }}/128"
|
- "{{ lookup('ldap', 'ip6', 'sputnik', 'adm') }}/128"
|
||||||
endpoint: "{{ query('ldap', 'ip4', 'sputnik', 'srv') }}:51820"
|
endpoint: "{{ lookup('ldap', 'ip4', 'sputnik', 'srv') }}:51820"
|
||||||
post_up:
|
post_up:
|
||||||
- "sysctl -w net.ipv4.conf.%i.proxy_arp=1"
|
- "sysctl -w net.ipv4.conf.%i.proxy_arp=1"
|
||||||
- "sysctl -w net.ipv6.conf.%i.proxy_ndp=1"
|
- "sysctl -w net.ipv6.conf.%i.proxy_ndp=1"
|
||||||
|
@ -36,7 +36,7 @@ loc_wireguard:
|
||||||
peers:
|
peers:
|
||||||
- public_key: "{{ vault.wireguard.routeur_ft.pubkey }}"
|
- public_key: "{{ vault.wireguard.routeur_ft.pubkey }}"
|
||||||
allowed_ips:
|
allowed_ips:
|
||||||
- "{{ query('ldap', 'network', 'adm') }}"
|
- "{{ lookup('ldap', 'network', 'adm') }}"
|
||||||
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
||||||
persistent_keepalive: 25
|
persistent_keepalive: 25
|
||||||
post_up:
|
post_up:
|
||||||
|
@ -54,7 +54,7 @@ loc_wireguard:
|
||||||
peers:
|
peers:
|
||||||
- public_key: "{{ vault.wireguard.routeur_thot.pubkey }}"
|
- public_key: "{{ vault.wireguard.routeur_thot.pubkey }}"
|
||||||
allowed_ips:
|
allowed_ips:
|
||||||
- "{{ query('ldap', 'network', 'adm') }}"
|
- "{{ lookup('ldap', 'network', 'adm') }}"
|
||||||
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
||||||
persistent_keepalive: 25
|
persistent_keepalive: 25
|
||||||
post_up:
|
post_up:
|
||||||
|
@ -69,7 +69,7 @@ loc_wireguard:
|
||||||
loc_service_proxy:
|
loc_service_proxy:
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
- server: "ldaps://{{ query('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
- server: "ldaps://{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
||||||
protocol: "proxy"
|
protocol: "proxy"
|
||||||
filter: ".adm.crans.org"
|
filter: ".adm.crans.org"
|
||||||
proxy:
|
proxy:
|
||||||
|
|
|
@ -10,6 +10,28 @@ loc_borg:
|
||||||
- /var/mail
|
- /var/mail
|
||||||
- /var/lib/lxcfs
|
- /var/lib/lxcfs
|
||||||
|
|
||||||
|
loc_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_exclude:
|
||||||
|
- /var/cache
|
||||||
|
- /var/mail
|
||||||
|
- /var/lib/lxcfs
|
||||||
|
pool:
|
||||||
|
to_exclude:
|
||||||
|
- "*.pyc"
|
||||||
|
- "\\#*\\#"
|
||||||
|
- "*~"
|
||||||
|
to_backup:
|
||||||
|
- /pool/home
|
||||||
|
- /pool/mail
|
||||||
|
retention:
|
||||||
|
- [--keep-daily, 4]
|
||||||
|
- [--keep-weekly, 4]
|
||||||
|
- [--keep-monthly, 6]
|
||||||
|
backup_extra_param: " --exclude-if-present .nobackup"
|
||||||
|
|
||||||
|
# Semble créer les homes des nouvelleaux adhérent⋅es
|
||||||
loc_service_home:
|
loc_service_home:
|
||||||
name: home
|
name: home
|
||||||
install_dir: /var/local/services/home
|
install_dir: /var/local/services/home
|
||||||
|
@ -23,7 +45,7 @@ loc_service_home:
|
||||||
version: master
|
version: master
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
server: "ldap://{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}/"
|
server: "ldap://{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}/"
|
||||||
binddn: "{{ vault.services.home.ldap.binddn }}"
|
binddn: "{{ vault.services.home.ldap.binddn }}"
|
||||||
basedn: cn=Utilisateurs,dc=crans,dc=org
|
basedn: cn=Utilisateurs,dc=crans,dc=org
|
||||||
password: "{{ vault.services.home.ldap.bindpass }}"
|
password: "{{ vault.services.home.ldap.bindpass }}"
|
||||||
|
@ -34,6 +56,7 @@ loc_service_home:
|
||||||
path: /pool/mail
|
path: /pool/mail
|
||||||
quota: 10G
|
quota: 10G
|
||||||
|
|
||||||
|
# Semble faire les backups des homes individuellement avec borg
|
||||||
loc_service_borg:
|
loc_service_borg:
|
||||||
name: borg
|
name: borg
|
||||||
install_dir: /var/local/services/borg
|
install_dir: /var/local/services/borg
|
||||||
|
@ -48,7 +71,7 @@ loc_service_borg:
|
||||||
version: main
|
version: main
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
server: "ldap://{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}"
|
server: "ldap://{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}"
|
||||||
binddn: "{{ vault.services.home.ldap.binddn }}"
|
binddn: "{{ vault.services.home.ldap.binddn }}"
|
||||||
rootdn: cn=Utilisateurs,dc=crans,dc=org
|
rootdn: cn=Utilisateurs,dc=crans,dc=org
|
||||||
password: "{{ vault.services.home.ldap.bindpass }}"
|
password: "{{ vault.services.home.ldap.bindpass }}"
|
|
@ -1,17 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
disable: true
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
||||||
|
|
||||||
loc_borg:
|
|
||||||
to_backup:
|
|
||||||
- /etc
|
|
||||||
- /home_nounou
|
|
||||||
- /var
|
|
||||||
|
|
||||||
loc_slapd:
|
|
||||||
ip: "{{ query('ldap', 'ip4', 'cephiroth', 'adm') }}"
|
|
||||||
replica: true
|
|
||||||
replica_rid: 5
|
|
|
@ -1,7 +1,6 @@
|
||||||
---
|
---
|
||||||
interfaces:
|
interfaces:
|
||||||
adm: ens18
|
adm: ens18
|
||||||
srv_nat: ens19
|
|
||||||
|
|
||||||
loc_unattended:
|
loc_unattended:
|
||||||
reboot: true
|
reboot: true
|
||||||
|
|
|
@ -1,38 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
adm: eth0
|
|
||||||
srv_nat: eth1
|
|
||||||
|
|
||||||
loc_unattended:
|
|
||||||
reboot: true
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
||||||
|
|
||||||
loc_constellation:
|
|
||||||
allowed_hosts:
|
|
||||||
- 'constellation-dev.crans.org'
|
|
||||||
database:
|
|
||||||
host: '127.0.0.1'
|
|
||||||
user: 'constellation-dev'
|
|
||||||
name: 'constellation-dev'
|
|
||||||
applications:
|
|
||||||
- 'access'
|
|
||||||
- 'billing'
|
|
||||||
- 'debug'
|
|
||||||
- 'dnsmanager'
|
|
||||||
- 'firewall'
|
|
||||||
- 'layers'
|
|
||||||
- 'management'
|
|
||||||
- 'member'
|
|
||||||
- 'topography'
|
|
||||||
- 'unix'
|
|
||||||
stripe:
|
|
||||||
private_key: '{{ vault.constellation.stripe.test.private_key }}'
|
|
||||||
public_key: '{{ vault.constellation.stripe.test.public_key }}'
|
|
||||||
note:
|
|
||||||
url: 'https://note-dev.crans.org/'
|
|
||||||
client_id: '{{ vault.constellation.note.client_id }}'
|
|
||||||
client_secret: '{{ vault.constellation.note.client_secret }}'
|
|
||||||
debug: true
|
|
||||||
version: dev
|
|
|
@ -1,8 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
disable: true
|
|
||||||
adm: ens18
|
|
||||||
san: ens19
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
|
@ -6,7 +6,7 @@ loc_needrestart:
|
||||||
override: []
|
override: []
|
||||||
|
|
||||||
loc_slapd:
|
loc_slapd:
|
||||||
ip: "{{ query('ldap', 'ip4', 'daniel', 'adm') }}"
|
ip: "{{ lookup('ldap', 'ip4', 'daniel', 'adm') }}"
|
||||||
replica: true
|
replica: true
|
||||||
replica_rid: 2
|
replica_rid: 2
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
---
|
---
|
||||||
interfaces:
|
interfaces:
|
||||||
adm: ens18
|
adm: ens18
|
||||||
srv: ens19
|
san: ens19
|
||||||
|
srv_nat: ens20
|
||||||
|
|
||||||
loc_unattended:
|
loc_unattended:
|
||||||
reboot: true
|
reboot: true
|
|
@ -12,7 +12,7 @@ loc_needrestart:
|
||||||
|
|
||||||
loc_nfs_mount:
|
loc_nfs_mount:
|
||||||
mounts:
|
mounts:
|
||||||
- ip: "{{ query('ldap', 'ip4', 'tealc', 'san') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'tealc', 'san') }}"
|
||||||
mountpoint: /pool/mirror
|
mountpoint: /pool/mirror
|
||||||
target: /mirror
|
target: /mirror
|
||||||
name: mirror
|
name: mirror
|
||||||
|
|
|
@ -11,7 +11,15 @@ loc_borg:
|
||||||
- /home_nounou
|
- /home_nounou
|
||||||
- /var
|
- /var
|
||||||
|
|
||||||
|
loc_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_backup:
|
||||||
|
- /etc
|
||||||
|
- /home_nounou
|
||||||
|
- /var
|
||||||
|
|
||||||
loc_slapd:
|
loc_slapd:
|
||||||
ip: "{{ query('ldap', 'ip4', 'ft', 'adm') }}"
|
ip: "{{ lookup('ldap', 'ip4', 'ft', 'adm') }}"
|
||||||
replica: true
|
replica: true
|
||||||
replica_rid: 6
|
replica_rid: 6
|
||||||
|
|
|
@ -10,33 +10,6 @@ loc_needrestart:
|
||||||
override: []
|
override: []
|
||||||
|
|
||||||
loc_prometheus:
|
loc_prometheus:
|
||||||
node:
|
|
||||||
config:
|
|
||||||
- job_name: servers
|
|
||||||
file_sd_configs:
|
|
||||||
- files:
|
|
||||||
- '/etc/prometheus/targets/node.json'
|
|
||||||
relabel_configs:
|
|
||||||
- source_labels: [__address__]
|
|
||||||
target_label: __param_target
|
|
||||||
- source_labels: [__param_target]
|
|
||||||
target_label: instance
|
|
||||||
- source_labels: [__param_target]
|
|
||||||
target_label: __address__
|
|
||||||
replacement: '$1:9100'
|
|
||||||
|
|
||||||
nginx:
|
|
||||||
config:
|
|
||||||
- job_name: nginx
|
|
||||||
file_sd_configs:
|
|
||||||
- files:
|
|
||||||
- '/etc/prometheus/targets/nginx.json'
|
|
||||||
relabel_configs:
|
|
||||||
- source_labels: [__address__]
|
|
||||||
target_label: instance
|
|
||||||
- source_labels: [instance]
|
|
||||||
target_label: __address__
|
|
||||||
replacement: '$1:9117'
|
|
||||||
|
|
||||||
apache:
|
apache:
|
||||||
config:
|
config:
|
||||||
|
@ -50,29 +23,59 @@ loc_prometheus:
|
||||||
target_label: __address__
|
target_label: __address__
|
||||||
replacement: '$1:9117'
|
replacement: '$1:9117'
|
||||||
|
|
||||||
|
bind:
|
||||||
|
config:
|
||||||
|
- job_name: bind
|
||||||
|
file_sd_configs:
|
||||||
|
- files:
|
||||||
|
- '/etc/prometheus/targets/bind.json'
|
||||||
|
relabel_configs:
|
||||||
|
- source_labels: [__address__]
|
||||||
|
target_label: __param_target
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: instance
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: __address__
|
||||||
|
replacement: '$1:9119'
|
||||||
|
|
||||||
|
bird:
|
||||||
|
config:
|
||||||
|
- job_name: bird
|
||||||
|
file_sd_configs:
|
||||||
|
- files:
|
||||||
|
- '/etc/prometheus/targets/bird.json'
|
||||||
|
relabel_configs:
|
||||||
|
- source_labels: [__address__]
|
||||||
|
target_label: __param_target
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: instance
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: __address__
|
||||||
|
replacement: '$1:9324'
|
||||||
|
|
||||||
blackbox:
|
blackbox:
|
||||||
file: targets/blackbox.json
|
file: targets/blackbox.json
|
||||||
targets:
|
targets:
|
||||||
|
- http://ftp.crans.org/
|
||||||
|
- https://cas.crans.org/
|
||||||
- https://crans.org/
|
- https://crans.org/
|
||||||
- https://www.crans.org/
|
- https://www.crans.org/
|
||||||
- https://webirc.crans.org/
|
|
||||||
- https://jitsi.crans.org/
|
|
||||||
- https://ftps.crans.org/
|
|
||||||
- http://ftp.crans.org/
|
|
||||||
- https://grafana.crans.org/
|
|
||||||
- https://roundcube.crans.org/
|
|
||||||
- https://zero.crans.org/
|
|
||||||
- https://wiki.crans.org/PageAccueil
|
|
||||||
- https://framadate.crans.org/
|
|
||||||
- https://pad.crans.org/
|
|
||||||
- https://lists.crans.org/
|
|
||||||
- https://cas.crans.org/
|
|
||||||
- https://ethercalc.crans.org/
|
- https://ethercalc.crans.org/
|
||||||
|
- https://framadate.crans.org/
|
||||||
|
- https://ftps.crans.org/
|
||||||
- https://gitlab.crans.org/
|
- https://gitlab.crans.org/
|
||||||
- https://perso.crans.org/crans/
|
- https://grafana.crans.org/
|
||||||
- https://install-party.crans.org/
|
- https://install-party.crans.org/
|
||||||
- https://intranet.crans.org/
|
- https://intranet.crans.org/
|
||||||
|
- https://jitsi.crans.org/
|
||||||
|
- https://lists.crans.org/
|
||||||
- https://owncloud.crans.org/
|
- https://owncloud.crans.org/
|
||||||
|
- https://pad.crans.org/
|
||||||
|
- https://perso.crans.org/crans/
|
||||||
|
- https://roundcube.crans.org/
|
||||||
|
- https://webirc.crans.org/
|
||||||
|
- https://wiki.crans.org/PageAccueil
|
||||||
|
- https://zero.crans.org/
|
||||||
config:
|
config:
|
||||||
- job_name: blackbox
|
- job_name: blackbox
|
||||||
file_sd_configs:
|
file_sd_configs:
|
||||||
|
@ -106,27 +109,30 @@ loc_prometheus:
|
||||||
- target_label: __address__
|
- target_label: __address__
|
||||||
replacement: 127.0.0.1:9115
|
replacement: 127.0.0.1:9115
|
||||||
|
|
||||||
bird:
|
ilo_snmp:
|
||||||
config:
|
config:
|
||||||
- job_name: bird
|
- job_name: ilo_snmp
|
||||||
file_sd_configs:
|
file_sd_configs:
|
||||||
- files:
|
- files:
|
||||||
- '/etc/prometheus/targets/bird.json'
|
- '/etc/prometheus/targets/ilo_snmp.json'
|
||||||
|
metrics_path: '/snmp'
|
||||||
|
params:
|
||||||
|
module:
|
||||||
|
- ilo
|
||||||
relabel_configs:
|
relabel_configs:
|
||||||
- source_labels: [__address__]
|
- source_labels: [__address__]
|
||||||
target_label: __param_target
|
target_label: __param_target
|
||||||
- source_labels: [__param_target]
|
- source_labels: [__param_target]
|
||||||
target_label: instance
|
target_label: instance
|
||||||
- source_labels: [__param_target]
|
- replacement: '127.0.0.1:9116'
|
||||||
target_label: __address__
|
target_label: __address__
|
||||||
replacement: '$1:9324'
|
|
||||||
|
|
||||||
bind:
|
mtail:
|
||||||
config:
|
config:
|
||||||
- job_name: bind
|
- job_name: mtail
|
||||||
file_sd_configs:
|
file_sd_configs:
|
||||||
- files:
|
- files:
|
||||||
- '/etc/prometheus/targets/bind.json'
|
- '/etc/prometheus/targets/mtail.json'
|
||||||
relabel_configs:
|
relabel_configs:
|
||||||
- source_labels: [__address__]
|
- source_labels: [__address__]
|
||||||
target_label: __param_target
|
target_label: __param_target
|
||||||
|
@ -134,7 +140,50 @@ loc_prometheus:
|
||||||
target_label: instance
|
target_label: instance
|
||||||
- source_labels: [__param_target]
|
- source_labels: [__param_target]
|
||||||
target_label: __address__
|
target_label: __address__
|
||||||
replacement: '$1:9119'
|
replacement: '$1:3903'
|
||||||
|
|
||||||
|
mysql:
|
||||||
|
config:
|
||||||
|
- job_name: mysql
|
||||||
|
file_sd_configs:
|
||||||
|
- files:
|
||||||
|
- '/etc/prometheus/targets/mysql.json'
|
||||||
|
relabel_configs:
|
||||||
|
- source_labels: [__address__]
|
||||||
|
target_label: __param_target
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: instance
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: __address__
|
||||||
|
replacement: '$1:9104'
|
||||||
|
|
||||||
|
nginx:
|
||||||
|
config:
|
||||||
|
- job_name: nginx
|
||||||
|
file_sd_configs:
|
||||||
|
- files:
|
||||||
|
- '/etc/prometheus/targets/nginx.json'
|
||||||
|
relabel_configs:
|
||||||
|
- source_labels: [__address__]
|
||||||
|
target_label: instance
|
||||||
|
- source_labels: [instance]
|
||||||
|
target_label: __address__
|
||||||
|
replacement: '$1:9117'
|
||||||
|
|
||||||
|
node:
|
||||||
|
config:
|
||||||
|
- job_name: servers
|
||||||
|
file_sd_configs:
|
||||||
|
- files:
|
||||||
|
- '/etc/prometheus/targets/node.json'
|
||||||
|
relabel_configs:
|
||||||
|
- source_labels: [__address__]
|
||||||
|
target_label: __param_target
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: instance
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: __address__
|
||||||
|
replacement: '$1:9100'
|
||||||
|
|
||||||
postfix:
|
postfix:
|
||||||
config:
|
config:
|
||||||
|
@ -166,54 +215,50 @@ loc_prometheus:
|
||||||
target_label: __address__
|
target_label: __address__
|
||||||
replacement: '$1:9187'
|
replacement: '$1:9187'
|
||||||
|
|
||||||
mysql:
|
printer_snmp:
|
||||||
config:
|
config:
|
||||||
- job_name: mysql
|
- job_name: printer_snmp
|
||||||
file_sd_configs:
|
static_configs:
|
||||||
- files:
|
- targets: ["printer.lp.crans.org"]
|
||||||
- '/etc/prometheus/targets/mysql.json'
|
|
||||||
relabel_configs:
|
|
||||||
- source_labels: [__address__]
|
|
||||||
target_label: __param_target
|
|
||||||
- source_labels: [__param_target]
|
|
||||||
target_label: instance
|
|
||||||
- source_labels: [__param_target]
|
|
||||||
target_label: __address__
|
|
||||||
replacement: '$1:9104'
|
|
||||||
|
|
||||||
mtail:
|
|
||||||
config:
|
|
||||||
- job_name: mtail
|
|
||||||
file_sd_configs:
|
|
||||||
- files:
|
|
||||||
- '/etc/prometheus/targets/mtail.json'
|
|
||||||
relabel_configs:
|
|
||||||
- source_labels: [__address__]
|
|
||||||
target_label: __param_target
|
|
||||||
- source_labels: [__param_target]
|
|
||||||
target_label: instance
|
|
||||||
- source_labels: [__param_target]
|
|
||||||
target_label: __address__
|
|
||||||
replacement: '$1:3903'
|
|
||||||
|
|
||||||
ilo_snmp:
|
|
||||||
config:
|
|
||||||
- job_name: ilo_snmp
|
|
||||||
file_sd_configs:
|
|
||||||
- files:
|
|
||||||
- '/etc/prometheus/targets/ilo_snmp.json'
|
|
||||||
metrics_path: '/snmp'
|
metrics_path: '/snmp'
|
||||||
params:
|
params:
|
||||||
module:
|
module:
|
||||||
- ilo
|
- printer_mib
|
||||||
relabel_configs:
|
relabel_configs:
|
||||||
- source_labels: [__address__]
|
- source_labels: [__address__]
|
||||||
target_label: __param_target
|
target_label: __param_target
|
||||||
- source_labels: [__param_target]
|
- source_labels: [__param_target]
|
||||||
target_label: instance
|
target_label: instance
|
||||||
- replacement: '127.0.0.1:9116'
|
- replacement: "{{ lookup('ldap', 'ip4', 'helloworld', 'adm') }}:9116"
|
||||||
target_label: __address__
|
target_label: __address__
|
||||||
|
|
||||||
|
synapse:
|
||||||
|
config:
|
||||||
|
- job_name: synapse
|
||||||
|
static_configs:
|
||||||
|
- targets: ["matrix.crans.org"]
|
||||||
|
scrape_interval: 15s
|
||||||
|
metrics_path: "/_synapse/metrics"
|
||||||
|
|
||||||
|
jitsi:
|
||||||
|
config:
|
||||||
|
- job_name: jitsi
|
||||||
|
static_configs:
|
||||||
|
- targets: ["jitsi.adm.crans.org"]
|
||||||
|
relabel_configs:
|
||||||
|
- source_labels: [__address__]
|
||||||
|
target_label: __param_target
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: instance
|
||||||
|
- source_labels: [__param_target]
|
||||||
|
target_label: __address__
|
||||||
|
replacement: '$1:9700'
|
||||||
|
|
||||||
|
|
||||||
|
tsdb:
|
||||||
|
retention_time: "180d"
|
||||||
|
retention_size: "200GB"
|
||||||
|
|
||||||
ups_snmp:
|
ups_snmp:
|
||||||
config:
|
config:
|
||||||
- job_name: ups_snmp
|
- job_name: ups_snmp
|
||||||
|
@ -233,23 +278,3 @@ loc_prometheus:
|
||||||
target_label: instance
|
target_label: instance
|
||||||
- replacement: 127.0.0.1:9116
|
- replacement: 127.0.0.1:9116
|
||||||
target_label: __address__
|
target_label: __address__
|
||||||
|
|
||||||
printer_snmp:
|
|
||||||
config:
|
|
||||||
- job_name: printer_snmp
|
|
||||||
static_configs:
|
|
||||||
- targets: ["printer.lp.crans.org"]
|
|
||||||
metrics_path: '/snmp'
|
|
||||||
params:
|
|
||||||
module:
|
|
||||||
- printer_mib
|
|
||||||
relabel_configs:
|
|
||||||
- source_labels: [__address__]
|
|
||||||
target_label: __param_target
|
|
||||||
- source_labels: [__param_target]
|
|
||||||
target_label: instance
|
|
||||||
- replacement: "{{ query('ldap', 'ip4', 'helloworld', 'adm') }}:9116"
|
|
||||||
target_label: __address__
|
|
||||||
tsdb:
|
|
||||||
retention_time: "180d"
|
|
||||||
retention_size: "200GB"
|
|
||||||
|
|
|
@ -22,7 +22,7 @@ loc_service_certbot:
|
||||||
config:
|
config:
|
||||||
"crans.org":
|
"crans.org":
|
||||||
zone: _acme-challenge.crans.org
|
zone: _acme-challenge.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_challenge.
|
name: certbot_challenge.
|
||||||
|
@ -30,7 +30,7 @@ loc_service_certbot:
|
||||||
algorithm: HMAC-SHA512
|
algorithm: HMAC-SHA512
|
||||||
"adm.crans.org":
|
"adm.crans.org":
|
||||||
zone: _acme-challenge.adm.crans.org
|
zone: _acme-challenge.adm.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_adm_challenge.
|
name: certbot_adm_challenge.
|
||||||
|
|
|
@ -11,4 +11,4 @@ loc_needrestart:
|
||||||
override: []
|
override: []
|
||||||
|
|
||||||
loc_snmp_exporter:
|
loc_snmp_exporter:
|
||||||
listen_address: "{{ query('ldap', 'ip4', 'helloworld', 'adm') }}:9116"
|
listen_address: "{{ lookup('ldap', 'ip4', 'helloworld', 'adm') }}:9116"
|
||||||
|
|
|
@ -54,22 +54,22 @@ loc_inspircd:
|
||||||
- name: crans.org
|
- name: crans.org
|
||||||
- name: adm.crans.org
|
- name: adm.crans.org
|
||||||
bind:
|
bind:
|
||||||
- address: "{{ query('ldap', 'ip4', 'irc', 'srv') }}"
|
- address: "{{ lookup('ldap', 'ip4', 'irc', 'srv') }}"
|
||||||
type: clients
|
type: clients
|
||||||
clair: 6667
|
clair: 6667
|
||||||
ssl: 6697
|
ssl: 6697
|
||||||
certificate: crans.org
|
certificate: crans.org
|
||||||
- address: "{{ query('ldap', 'ip6', 'irc', 'srv') }}"
|
- address: "{{ lookup('ldap', 'ip6', 'irc', 'srv') }}"
|
||||||
type: clients
|
type: clients
|
||||||
clair: 6667
|
clair: 6667
|
||||||
ssl: 6697
|
ssl: 6697
|
||||||
certificate: crans.org
|
certificate: crans.org
|
||||||
- address: "{{ query('ldap', 'ip4', 'irc', 'adm') }}"
|
- address: "{{ lookup('ldap', 'ip4', 'irc', 'adm') }}"
|
||||||
type: clients
|
type: clients
|
||||||
clair: 6667
|
clair: 6667
|
||||||
ssl: 6697
|
ssl: 6697
|
||||||
certificate: adm.crans.org
|
certificate: adm.crans.org
|
||||||
- address: "{{ query('ldap', 'ip6', 'irc', 'adm') }}"
|
- address: "{{ lookup('ldap', 'ip6', 'irc', 'adm') }}"
|
||||||
type: clients
|
type: clients
|
||||||
clair: 6667
|
clair: 6667
|
||||||
ssl: 6697
|
ssl: 6697
|
||||||
|
@ -80,28 +80,28 @@ loc_inspircd:
|
||||||
connect:
|
connect:
|
||||||
- name: zamok
|
- name: zamok
|
||||||
allows:
|
allows:
|
||||||
ipv4: "{{ query('ldap', 'ip4', 'zamok', 'srv') }}/32"
|
ipv4: "{{ lookup('ldap', 'ip4', 'zamok', 'srv') }}/32"
|
||||||
ipv6: "{{ query('ldap', 'ip6', 'zamok', 'srv') }}/128"
|
ipv6: "{{ lookup('ldap', 'ip6', 'zamok', 'srv') }}/128"
|
||||||
threshold: 1
|
threshold: 1
|
||||||
- name: irc
|
- name: irc
|
||||||
allows:
|
allows:
|
||||||
ipv4: "{{ query('ldap', 'ip4', 'irc', 'srv') }}/32"
|
ipv4: "{{ lookup('ldap', 'ip4', 'irc', 'srv') }}/32"
|
||||||
ipv6: "{{ query('ldap', 'ip6', 'irc', 'srv') }}/128"
|
ipv6: "{{ lookup('ldap', 'ip6', 'irc', 'srv') }}/128"
|
||||||
threshold: 1
|
threshold: 1
|
||||||
- name: gitlab
|
- name: gitlab
|
||||||
allows:
|
allows:
|
||||||
ipv4: "{{ query('ldap', 'ip4', 'gitzly', 'srv') }}/32"
|
ipv4: "{{ lookup('ldap', 'ip4', 'gitzly', 'srv') }}/32"
|
||||||
ipv6: "{{ query('ldap', 'ip6', 'gitzly', 'srv') }}/128"
|
ipv6: "{{ lookup('ldap', 'ip6', 'gitzly', 'srv') }}/128"
|
||||||
threshold: 10
|
threshold: 10
|
||||||
commandrate: 10000
|
commandrate: 10000
|
||||||
- name: monitoring
|
- name: monitoring
|
||||||
allows:
|
allows:
|
||||||
ipv4: "{{ query('ldap', 'ip4', 'fyre', 'adm') }}/32"
|
ipv4: "{{ lookup('ldap', 'ip4', 'fyre', 'adm') }}/32"
|
||||||
ipv6: "{{ query('ldap', 'ip6', 'fyre', 'adm') }}/128"
|
ipv6: "{{ lookup('ldap', 'ip6', 'fyre', 'adm') }}/128"
|
||||||
threshold: 10
|
threshold: 10
|
||||||
commandrate: 10000
|
commandrate: 10000
|
||||||
modes: true
|
modes: true
|
||||||
dns: "{{ query('ldap', 'ip4', 'romanesco', 'srv') }}"
|
dns: "{{ lookup('ldap', 'ip4', 'romanesco', 'srv') }}"
|
||||||
services:
|
services:
|
||||||
name: services.irc.crans.org
|
name: services.irc.crans.org
|
||||||
port: 6668
|
port: 6668
|
||||||
|
@ -127,7 +127,7 @@ loc_service_certbot:
|
||||||
config:
|
config:
|
||||||
"crans.org":
|
"crans.org":
|
||||||
zone: _acme-challenge.crans.org
|
zone: _acme-challenge.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_challenge.
|
name: certbot_challenge.
|
||||||
|
@ -135,7 +135,7 @@ loc_service_certbot:
|
||||||
algorithm: HMAC-SHA512
|
algorithm: HMAC-SHA512
|
||||||
"adm.crans.org":
|
"adm.crans.org":
|
||||||
zone: _acme-challenge.adm.crans.org
|
zone: _acme-challenge.adm.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_adm_challenge.
|
name: certbot_adm_challenge.
|
||||||
|
|
|
@ -6,7 +6,7 @@ loc_needrestart:
|
||||||
override: []
|
override: []
|
||||||
|
|
||||||
loc_slapd:
|
loc_slapd:
|
||||||
ip: "{{ query('ldap', 'ip4', 'jack', 'adm') }}"
|
ip: "{{ lookup('ldap', 'ip4', 'jack', 'adm') }}"
|
||||||
replica: true
|
replica: true
|
||||||
replica_rid: 3
|
replica_rid: 3
|
||||||
|
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
adm: ens18
|
|
||||||
san: ens19
|
|
||||||
zef: ens20
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
|
@ -1,8 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
disable: true
|
|
||||||
adm: ens18
|
|
||||||
san: ens19
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
|
@ -1,8 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
adm: ens18
|
|
||||||
san: ens19
|
|
||||||
zef: ens20
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
|
@ -16,3 +16,11 @@ loc_borg:
|
||||||
to_exclude:
|
to_exclude:
|
||||||
- /var/mail
|
- /var/mail
|
||||||
- /var/lib/lxcfs
|
- /var/lib/lxcfs
|
||||||
|
|
||||||
|
loc_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_exclude:
|
||||||
|
- /var/cache
|
||||||
|
- /var/mail
|
||||||
|
- /var/lib/lxcfs
|
||||||
|
|
|
@ -15,4 +15,4 @@ loc_needrestart:
|
||||||
loc_ldap:
|
loc_ldap:
|
||||||
base_dn: "{{ vault.slapd.re2o.admin.binddn }}"
|
base_dn: "{{ vault.slapd.re2o.admin.binddn }}"
|
||||||
password: "{{ vault.slapd.re2o.admin.bindpass }}"
|
password: "{{ vault.slapd.re2o.admin.bindpass }}"
|
||||||
uri: "ldap://{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}"
|
uri: "ldap://{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}"
|
||||||
|
|
|
@ -12,7 +12,7 @@ loc_needrestart:
|
||||||
|
|
||||||
loc_nfs_mount:
|
loc_nfs_mount:
|
||||||
mounts:
|
mounts:
|
||||||
- ip: "{{ query('ldap', 'ip4', 'tealc', 'san') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'tealc', 'san') }}"
|
||||||
mountpoint: /pool/ftp
|
mountpoint: /pool/ftp
|
||||||
target: /ftp
|
target: /ftp
|
||||||
name: ftp
|
name: ftp
|
||||||
|
|
|
@ -10,4 +10,4 @@ loc_needrestart:
|
||||||
override: []
|
override: []
|
||||||
|
|
||||||
loc_re2o_ldap_replica:
|
loc_re2o_ldap_replica:
|
||||||
url: "ldaps://{{ query('ldap', 'ip4', 'yson-partou', 'adm') }}:636"
|
url: "ldaps://{{ lookup('ldap', 'ip4', 'yson-partou', 'adm') }}:636"
|
||||||
|
|
|
@ -25,7 +25,7 @@ loc_service_certbot:
|
||||||
config:
|
config:
|
||||||
"crans.org":
|
"crans.org":
|
||||||
zone: _acme-challenge.crans.org
|
zone: _acme-challenge.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_challenge.
|
name: certbot_challenge.
|
||||||
|
@ -33,7 +33,7 @@ loc_service_certbot:
|
||||||
algorithm: HMAC-SHA512
|
algorithm: HMAC-SHA512
|
||||||
"adm.crans.org":
|
"adm.crans.org":
|
||||||
zone: _acme-challenge.adm.crans.org
|
zone: _acme-challenge.adm.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_adm_challenge.
|
name: certbot_adm_challenge.
|
||||||
|
|
|
@ -18,14 +18,14 @@ loc_wireguard:
|
||||||
peers:
|
peers:
|
||||||
- public_key: "{{ vault.wireguard.boeing.viarezo.pubkey }}"
|
- public_key: "{{ vault.wireguard.boeing.viarezo.pubkey }}"
|
||||||
allowed_ips:
|
allowed_ips:
|
||||||
- "{{ query('ldap', 'network', 'adm') }}"
|
- "{{ lookup('ldap', 'network', 'adm') }}"
|
||||||
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
||||||
endpoint: "{{ query('ldap', 'ip4', 'boeing', 'srv') }}:51821"
|
endpoint: "{{ lookup('ldap', 'ip4', 'boeing', 'srv') }}:51821"
|
||||||
persistent_keepalive: 25
|
persistent_keepalive: 25
|
||||||
post_up:
|
post_up:
|
||||||
- "sysctl -w net.ipv4.conf.%i.proxy_arp=1"
|
- "sysctl -w net.ipv4.conf.%i.proxy_arp=1"
|
||||||
- "sysctl -w net.ipv6.conf.%i.proxy_ndp=1"
|
- "sysctl -w net.ipv6.conf.%i.proxy_ndp=1"
|
||||||
- "ip route add {{ query('ldap', 'ip4', 'tealc', 'adm') }} dev %i proto proxy"
|
- "ip route add {{ lookup('ldap', 'ip4', 'tealc', 'adm') }} dev %i proto proxy"
|
||||||
- "python3 /var/local/services/proxy/proxy.py --alter"
|
- "python3 /var/local/services/proxy/proxy.py --alter"
|
||||||
pre_down:
|
pre_down:
|
||||||
- "sysctl -w net.ipv4.conf.%i.proxy_arp=0"
|
- "sysctl -w net.ipv4.conf.%i.proxy_arp=0"
|
||||||
|
@ -35,8 +35,8 @@ loc_wireguard:
|
||||||
loc_service_proxy:
|
loc_service_proxy:
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
- server: "ldaps://{{ query('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
- server: "ldaps://{{ lookup('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
||||||
- server: "ldaps://{{ query('ldap', 'ip4', 'ft', 'adm') }}/"
|
- server: "ldaps://{{ lookup('ldap', 'ip4', 'ft', 'adm') }}/"
|
||||||
protocol: "proxy"
|
protocol: "proxy"
|
||||||
filter: ".adm.crans.org"
|
filter: ".adm.crans.org"
|
||||||
proxy:
|
proxy:
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
---
|
||||||
|
loc_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_backup:
|
||||||
|
- /etc
|
||||||
|
- /home_nounou
|
||||||
|
- /var
|
|
@ -1,45 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
adm: ens18
|
|
||||||
auto: ens19
|
|
||||||
|
|
||||||
loc_unattended:
|
|
||||||
reboot: true
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
||||||
|
|
||||||
loc_wireguard:
|
|
||||||
tunnels:
|
|
||||||
- name: "boeing"
|
|
||||||
listen_port: 51820
|
|
||||||
private_key: "{{ vault.wireguard.routeur_thot.privkey }}"
|
|
||||||
table: "off"
|
|
||||||
peers:
|
|
||||||
- public_key: "{{ vault.wireguard.boeing.aurore.pubkey }}"
|
|
||||||
allowed_ips:
|
|
||||||
- "{{ query('ldap', 'network', 'adm') }}"
|
|
||||||
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
|
||||||
endpoint: "{{ query('ldap', 'ip4', 'boeing', 'srv') }}:51822"
|
|
||||||
persistent_keepalive: 25
|
|
||||||
post_up:
|
|
||||||
- "sysctl -w net.ipv4.conf.%i.proxy_arp=1"
|
|
||||||
- "sysctl -w net.ipv6.conf.%i.proxy_ndp=1"
|
|
||||||
- "ip route add {{ query('ldap', 'ip4', 'tealc', 'adm') }} dev %i proto proxy"
|
|
||||||
- "python3 /var/local/services/proxy/proxy.py --alter"
|
|
||||||
pre_down:
|
|
||||||
- "sysctl -w net.ipv4.conf.%i.proxy_arp=0"
|
|
||||||
- "sysctl -w net.ipv6.conf.%i.proxy_ndp=0"
|
|
||||||
- "ip route flush proto proxy; ip -6 route flush proto proxy; ip neigh flush proxy proto proxy"
|
|
||||||
|
|
||||||
|
|
||||||
loc_service_proxy:
|
|
||||||
config:
|
|
||||||
ldap:
|
|
||||||
- server: "ldaps://{{ query('ldap', 'ip4', 'wall-e', 'adm') }}/"
|
|
||||||
- server: "ldaps://{{ query('ldap', 'ip4', 'thot', 'adm') }}/"
|
|
||||||
protocol: "proxy"
|
|
||||||
filter: ".adm.crans.org"
|
|
||||||
proxy:
|
|
||||||
default: "boeing"
|
|
||||||
aurore: "ens18"
|
|
|
@ -11,8 +11,17 @@ loc_borg:
|
||||||
- /home_nounou
|
- /home_nounou
|
||||||
- /var
|
- /var
|
||||||
|
|
||||||
|
|
||||||
|
loc_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_backup:
|
||||||
|
- /etc
|
||||||
|
- /home_nounou
|
||||||
|
- /var
|
||||||
|
|
||||||
loc_slapd:
|
loc_slapd:
|
||||||
ip: "{{ query('ldap', 'ip4', 'sam', 'adm') }}"
|
ip: "{{ lookup('ldap', 'ip4', 'sam', 'adm') }}"
|
||||||
replica: true
|
replica: true
|
||||||
replica_rid: 1
|
replica_rid: 1
|
||||||
|
|
||||||
|
|
|
@ -18,21 +18,21 @@ loc_wireguard:
|
||||||
tunnels:
|
tunnels:
|
||||||
- name: "sputnik"
|
- name: "sputnik"
|
||||||
addresses:
|
addresses:
|
||||||
- "{{ query('ldap', 'ip4', 'sputnik', 'adm') }}/24"
|
- "{{ lookup('ldap', 'ip4', 'sputnik', 'adm') }}/24"
|
||||||
- "{{ query('ldap', 'ip6', 'sputnik', 'adm') }}/64"
|
- "{{ lookup('ldap', 'ip6', 'sputnik', 'adm') }}/64"
|
||||||
listen_port: 51820
|
listen_port: 51820
|
||||||
private_key: "{{ vault.wireguard.sputnik.privkey }}"
|
private_key: "{{ vault.wireguard.sputnik.privkey }}"
|
||||||
peers:
|
peers:
|
||||||
- public_key: "{{ vault.wireguard.boeing.sputnik.pubkey }}"
|
- public_key: "{{ vault.wireguard.boeing.sputnik.pubkey }}"
|
||||||
allowed_ips:
|
allowed_ips:
|
||||||
- "{{ query('ldap', 'network', 'adm') }}"
|
- "{{ lookup('ldap', 'network', 'adm') }}"
|
||||||
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
- "fd00:0:0:{{ query('ldap', 'vlanid', 'adm') }}::/64"
|
||||||
endpoint: "{{ query('ldap', 'ip4', 'boeing', 'srv') }}:51820"
|
endpoint: "{{ lookup('ldap', 'ip4', 'boeing', 'srv') }}:51820"
|
||||||
post_up:
|
post_up:
|
||||||
- "/sbin/ip link set sputnik alias adm"
|
- "/sbin/ip link set sputnik alias adm"
|
||||||
|
|
||||||
loc_slapd:
|
loc_slapd:
|
||||||
ip: "{{ query('ldap', 'ip4', 'sputnik', 'adm') }}"
|
ip: "{{ lookup('ldap', 'ip4', 'sputnik', 'adm') }}"
|
||||||
replica: true
|
replica: true
|
||||||
replica_rid: 4
|
replica_rid: 4
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ loc_service_certbot:
|
||||||
config:
|
config:
|
||||||
"crans.org":
|
"crans.org":
|
||||||
zone: _acme-challenge.crans.org
|
zone: _acme-challenge.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_challenge.
|
name: certbot_challenge.
|
||||||
|
@ -56,7 +56,7 @@ loc_service_certbot:
|
||||||
algorithm: HMAC-SHA512
|
algorithm: HMAC-SHA512
|
||||||
"adm.crans.org":
|
"adm.crans.org":
|
||||||
zone: _acme-challenge.adm.crans.org
|
zone: _acme-challenge.adm.crans.org
|
||||||
server: "{{ query('ldap', 'ip4', 'silice', 'adm') }}"
|
server: "{{ lookup('ldap', 'ip4', 'silice', 'adm') }}"
|
||||||
port: 53
|
port: 53
|
||||||
key:
|
key:
|
||||||
name: certbot_adm_challenge.
|
name: certbot_adm_challenge.
|
||||||
|
@ -82,4 +82,4 @@ loc_bind:
|
||||||
loc_service_ssh_known_hosts:
|
loc_service_ssh_known_hosts:
|
||||||
config:
|
config:
|
||||||
ldap:
|
ldap:
|
||||||
server: "ldaps://{{ query('ldap', 'ip4', 'sputnik', 'adm') }}"
|
server: "ldaps://{{ lookup('ldap', 'ip4', 'sputnik', 'adm') }}"
|
||||||
|
|
|
@ -21,13 +21,11 @@ loc_postgres:
|
||||||
- db: roundcube
|
- db: roundcube
|
||||||
user: roundcube
|
user: roundcube
|
||||||
map: {name: webmail, system: www-data, pg: roundcube}
|
map: {name: webmail, system: www-data, pg: roundcube}
|
||||||
- {db: owncloud, user: owncloud}
|
|
||||||
- {db: cas, user: cas}
|
- {db: cas, user: cas}
|
||||||
- {db: hedgedoc, user: hedgedoc}
|
- {db: owncloud, user: owncloud}
|
||||||
- {db: sqlgrey, user: sqlgrey, method: ident}
|
- {db: sqlgrey, user: sqlgrey, method: ident}
|
||||||
- {db: re2o, user: re2o}
|
- {db: re2o, user: re2o}
|
||||||
- {db: re2o_test, user: re2o}
|
- {db: re2o_test, user: re2o}
|
||||||
- {db: constellation-dev, user: constellation-dev}
|
|
||||||
- {db: mailman3, user: mailman3}
|
- {db: mailman3, user: mailman3}
|
||||||
- {db: mailman3web, user: mailman3web}
|
- {db: mailman3web, user: mailman3web}
|
||||||
- {db: all, user: all, subnets: ['127.0.0.1/32', '::1/128'], local: true}
|
- {db: all, user: all, subnets: ['127.0.0.1/32', '::1/128'], local: true}
|
||||||
|
@ -43,6 +41,27 @@ loc_borg:
|
||||||
- /var
|
- /var
|
||||||
- /pool/home
|
- /pool/home
|
||||||
|
|
||||||
|
loc_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_backup:
|
||||||
|
- /etc
|
||||||
|
- /var
|
||||||
|
pool:
|
||||||
|
force_calendar: "5:00"
|
||||||
|
to_exclude:
|
||||||
|
- "*.pyc"
|
||||||
|
- "\\#*\\#"
|
||||||
|
- "*~"
|
||||||
|
to_backup:
|
||||||
|
- /pool/home
|
||||||
|
- /pool/mail
|
||||||
|
retention:
|
||||||
|
- [--keep-daily, 4]
|
||||||
|
- [--keep-weekly, 4]
|
||||||
|
- [--keep-monthly, 6]
|
||||||
|
backup_extra_param: " --exclude-if-present .nobackup"
|
||||||
|
|
||||||
loc_rsyslog_server:
|
loc_rsyslog_server:
|
||||||
name: tealc
|
name: tealc
|
||||||
root: /pool/logs
|
root: /pool/logs
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
adm: ens18
|
|
||||||
san: ens19
|
|
||||||
zef: ens20
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
|
@ -1,17 +0,0 @@
|
||||||
---
|
|
||||||
interfaces:
|
|
||||||
disable: true
|
|
||||||
|
|
||||||
loc_needrestart:
|
|
||||||
override: []
|
|
||||||
|
|
||||||
loc_borg:
|
|
||||||
to_backup:
|
|
||||||
- /etc
|
|
||||||
- /home_nounou
|
|
||||||
- /var
|
|
||||||
|
|
||||||
loc_slapd:
|
|
||||||
ip: "{{ query('ldap', 'ip4', 'thot', 'adm') }}"
|
|
||||||
replica: true
|
|
||||||
replica_rid: 5
|
|
|
@ -19,27 +19,37 @@ loc_borg:
|
||||||
- /var/lib/lxcfs
|
- /var/lib/lxcfs
|
||||||
- /var/lib/mysql
|
- /var/lib/mysql
|
||||||
|
|
||||||
|
loc_restic:
|
||||||
|
config:
|
||||||
|
base:
|
||||||
|
to_exclude:
|
||||||
|
- /var/cache
|
||||||
|
- /var/mail
|
||||||
|
- /var/lib/podman
|
||||||
|
- /var/lib/lxcfs
|
||||||
|
- /var/lib/mysql
|
||||||
|
|
||||||
loc_thelounge:
|
loc_thelounge:
|
||||||
host: "\"{{ query('ldap', 'ip4', 'zamok', 'adm') }}\""
|
host: "\"{{ lookup('ldap', 'ip4', 'zamok', 'adm') }}\""
|
||||||
oidentd: "\"/usr/local/lib/thelounge/.oidentd.conf\""
|
oidentd: "\"/usr/local/lib/thelounge/.oidentd.conf\""
|
||||||
reverseProxy: "true"
|
reverseProxy: "true"
|
||||||
ldap_enable: "true"
|
ldap_enable: "true"
|
||||||
|
|
||||||
loc_crans_scripts:
|
loc_crans_scripts:
|
||||||
group: nounou
|
group: nounou
|
||||||
dests:
|
dest:
|
||||||
- /usr/scripts
|
- /usr/scripts
|
||||||
|
|
||||||
loc_nfs_mount:
|
loc_nfs_mount:
|
||||||
mounts:
|
mounts:
|
||||||
- ip: "{{ query('ldap', 'ip4', 'cameron', 'san') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'cameron', 'san') }}"
|
||||||
mountpoint: /pool/home
|
mountpoint: /pool/home
|
||||||
target: /home
|
target: /home
|
||||||
name: home
|
name: home
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: '0755'
|
mode: '0755'
|
||||||
- ip: "{{ query('ldap', 'ip4', 'cameron', 'san') }}"
|
- ip: "{{ lookup('ldap', 'ip4', 'cameron', 'san') }}"
|
||||||
mountpoint: /pool/mail
|
mountpoint: /pool/mail
|
||||||
target: /var/mail
|
target: /var/mail
|
||||||
name: var-mail
|
name: var-mail
|
||||||
|
|
60
hosts
60
hosts
|
@ -6,7 +6,6 @@ zamok.adm.crans.org
|
||||||
[arpproxy]
|
[arpproxy]
|
||||||
boeing.adm.crans.org
|
boeing.adm.crans.org
|
||||||
routeur-ft.adm.crans.org
|
routeur-ft.adm.crans.org
|
||||||
routeur-thot.adm.crans.org
|
|
||||||
|
|
||||||
[autoconfig]
|
[autoconfig]
|
||||||
hodaur.adm.crans.org
|
hodaur.adm.crans.org
|
||||||
|
@ -16,7 +15,6 @@ cameron.adm.crans.org
|
||||||
|
|
||||||
[backups]
|
[backups]
|
||||||
backup-ft.adm.crans.org
|
backup-ft.adm.crans.org
|
||||||
backup-thot.adm.crans.org
|
|
||||||
|
|
||||||
[baie]
|
[baie]
|
||||||
cameron.adm.crans.org
|
cameron.adm.crans.org
|
||||||
|
@ -31,41 +29,27 @@ routeurs_vm
|
||||||
[blackbox]
|
[blackbox]
|
||||||
fyre.adm.crans.org
|
fyre.adm.crans.org
|
||||||
|
|
||||||
[ceph_test]
|
|
||||||
tealch.adm.crans.org
|
|
||||||
kameron.adm.crans.org
|
|
||||||
otter.adm.crans.org
|
|
||||||
daneel.adm.crans.org
|
|
||||||
listenup.adm.crans.org
|
|
||||||
|
|
||||||
[certbot]
|
[certbot]
|
||||||
irc.adm.crans.org
|
irc.adm.crans.org
|
||||||
proxy-pve-adh.adm.crans.org
|
proxy-pve-adh.adm.crans.org
|
||||||
sputnik.adm.crans.org
|
|
||||||
|
|
||||||
[certbot:children]
|
[certbot:children]
|
||||||
dovecot
|
dovecot
|
||||||
galene
|
galene
|
||||||
gitlab
|
|
||||||
jitsi
|
|
||||||
mailman
|
|
||||||
postfix
|
postfix
|
||||||
reverseproxy
|
reverseproxy
|
||||||
virtu
|
virtu
|
||||||
vsftpd_mirror
|
vsftpd_mirror
|
||||||
|
|
||||||
[constellation:children]
|
# Catégorie des VM de test/dev
|
||||||
constellation_front
|
[dev]
|
||||||
|
re2o-dev.crans.org
|
||||||
[constellation_front]
|
|
||||||
constellation-dev.adm.crans.org
|
|
||||||
|
|
||||||
[dhcp:children]
|
[dhcp:children]
|
||||||
routeurs_vm
|
routeurs_vm
|
||||||
|
|
||||||
[dropbear]
|
[dropbear]
|
||||||
ft.adm.crans.org
|
ft.adm.crans.org
|
||||||
thot.adm.crans.org
|
|
||||||
|
|
||||||
[docker:children]
|
[docker:children]
|
||||||
gitlab_runner
|
gitlab_runner
|
||||||
|
@ -117,9 +101,6 @@ fyre.adm.crans.org
|
||||||
[irc]
|
[irc]
|
||||||
irc.adm.crans.org
|
irc.adm.crans.org
|
||||||
|
|
||||||
[jitsi]
|
|
||||||
jitsi.adm.crans.org
|
|
||||||
|
|
||||||
[keepalived]
|
[keepalived]
|
||||||
routeur-daniel.adm.crans.org
|
routeur-daniel.adm.crans.org
|
||||||
routeur-jack.adm.crans.org
|
routeur-jack.adm.crans.org
|
||||||
|
@ -150,10 +131,8 @@ irc.adm.crans.org
|
||||||
ptf.adm.crans.org
|
ptf.adm.crans.org
|
||||||
|
|
||||||
[nginx:children]
|
[nginx:children]
|
||||||
constellation_front
|
|
||||||
django_cas
|
django_cas
|
||||||
galene
|
galene
|
||||||
jitsi
|
|
||||||
mailman
|
mailman
|
||||||
mirror_frontend
|
mirror_frontend
|
||||||
printer
|
printer
|
||||||
|
@ -166,7 +145,6 @@ wiki
|
||||||
eclat.adm.crans.org
|
eclat.adm.crans.org
|
||||||
|
|
||||||
[opendkim:children]
|
[opendkim:children]
|
||||||
mailman
|
|
||||||
postfix
|
postfix
|
||||||
|
|
||||||
[postfix]
|
[postfix]
|
||||||
|
@ -242,7 +220,6 @@ helloworld.adm.crans.org
|
||||||
wall-e.adm.crans.org
|
wall-e.adm.crans.org
|
||||||
#sam.adm.crans.org
|
#sam.adm.crans.org
|
||||||
#sputnik.adm.crans.org
|
#sputnik.adm.crans.org
|
||||||
#thot.adm.crans.org
|
|
||||||
|
|
||||||
[sssd]
|
[sssd]
|
||||||
zamok.adm.crans.org
|
zamok.adm.crans.org
|
||||||
|
@ -263,17 +240,11 @@ sam.adm.crans.org
|
||||||
|
|
||||||
[virtu_backup]
|
[virtu_backup]
|
||||||
ft.adm.crans.org
|
ft.adm.crans.org
|
||||||
thot.adm.crans.org
|
|
||||||
|
|
||||||
[virtu_ceph]
|
|
||||||
daneel.adm.crans.org
|
|
||||||
listenup.adm.crans.org
|
|
||||||
|
|
||||||
[virtu:children]
|
[virtu:children]
|
||||||
virtu_adh
|
virtu_adh
|
||||||
virtu_adm
|
virtu_adm
|
||||||
virtu_backup
|
virtu_backup
|
||||||
virtu_ceph
|
|
||||||
|
|
||||||
[vsftpd_mirror]
|
[vsftpd_mirror]
|
||||||
eclat.adm.crans.org
|
eclat.adm.crans.org
|
||||||
|
@ -285,20 +256,15 @@ kiwi.adm.crans.org
|
||||||
[wireguard]
|
[wireguard]
|
||||||
boeing.adm.crans.org
|
boeing.adm.crans.org
|
||||||
routeur-ft.adm.crans.org
|
routeur-ft.adm.crans.org
|
||||||
routeur-thot.adm.crans.org
|
|
||||||
sputnik.adm.crans.org
|
sputnik.adm.crans.org
|
||||||
|
|
||||||
[crans_routeurs:children]
|
[crans_routeurs:children]
|
||||||
routeurs_vm
|
routeurs_vm
|
||||||
|
|
||||||
[crans_physical]
|
[crans_physical]
|
||||||
thot.adm.crans.org
|
|
||||||
zamok.adm.crans.org
|
zamok.adm.crans.org
|
||||||
cephiroth.adm.crans.org
|
|
||||||
#zbee.adm.crans.org
|
|
||||||
|
|
||||||
[crans_physical:children]
|
[crans_physical:children]
|
||||||
aurore_physical
|
|
||||||
baie
|
baie
|
||||||
virtu
|
virtu
|
||||||
viarezo_physical
|
viarezo_physical
|
||||||
|
@ -309,24 +275,19 @@ belenios.adm.crans.org
|
||||||
boeing.adm.crans.org
|
boeing.adm.crans.org
|
||||||
cas.adm.crans.org
|
cas.adm.crans.org
|
||||||
chene.adm.crans.org
|
chene.adm.crans.org
|
||||||
constellation-dev.adm.crans.org
|
|
||||||
eclaircie.adm.crans.org
|
eclaircie.adm.crans.org
|
||||||
eclat.adm.crans.org
|
eclat.adm.crans.org
|
||||||
ethercalc.adm.crans.org
|
ethercalc.adm.crans.org
|
||||||
en7.adm.crans.org
|
en7.adm.crans.org
|
||||||
flirt.adm.crans.org
|
flirt.adm.crans.org
|
||||||
fluxx.adm.crans.org
|
|
||||||
fyre.adm.crans.org
|
fyre.adm.crans.org
|
||||||
gitlab-ci.adm.crans.org
|
gitlab-ci.adm.crans.org
|
||||||
gitzly.adm.crans.org
|
gitzly.adm.crans.org
|
||||||
helloworld.adm.crans.org
|
helloworld.adm.crans.org
|
||||||
hodaur.adm.crans.org
|
hodaur.adm.crans.org
|
||||||
horde.adm.crans.org
|
|
||||||
irc.adm.crans.org
|
irc.adm.crans.org
|
||||||
jitsi.adm.crans.org
|
|
||||||
kenobi.adm.crans.org
|
kenobi.adm.crans.org
|
||||||
kiwi.adm.crans.org
|
kiwi.adm.crans.org
|
||||||
ldap-adm.adm.crans.org
|
|
||||||
linx.adm.crans.org
|
linx.adm.crans.org
|
||||||
mailman.adm.crans.org
|
mailman.adm.crans.org
|
||||||
neree.adm.crans.org
|
neree.adm.crans.org
|
||||||
|
@ -344,6 +305,7 @@ routeur-2754.adm.crans.org
|
||||||
silice.adm.crans.org
|
silice.adm.crans.org
|
||||||
trinity.adm.crans.org
|
trinity.adm.crans.org
|
||||||
voyager.adm.crans.org
|
voyager.adm.crans.org
|
||||||
|
wall-e.adm.crans.org
|
||||||
yson-partou.adm.crans.org
|
yson-partou.adm.crans.org
|
||||||
|
|
||||||
[viarezo_physical]
|
[viarezo_physical]
|
||||||
|
@ -357,20 +319,7 @@ routeur-ft.adm.crans.org
|
||||||
viarezo_physical
|
viarezo_physical
|
||||||
viarezo_vm
|
viarezo_vm
|
||||||
|
|
||||||
[aurore_physical]
|
|
||||||
thot.adm.crans.org
|
|
||||||
|
|
||||||
[aurore_vm]
|
|
||||||
backup-thot.adm.crans.org
|
|
||||||
routeur-thot.adm.crans.org
|
|
||||||
|
|
||||||
[aurore:children]
|
|
||||||
aurore_physical
|
|
||||||
aurore_vm
|
|
||||||
|
|
||||||
[crans_vm:children]
|
[crans_vm:children]
|
||||||
aurore_vm
|
|
||||||
ceph_test
|
|
||||||
routeurs_vm
|
routeurs_vm
|
||||||
viarezo_vm
|
viarezo_vm
|
||||||
|
|
||||||
|
@ -390,7 +339,6 @@ ilo-jack.adm.crans.org
|
||||||
ilo-odlyd.adm.crans.org
|
ilo-odlyd.adm.crans.org
|
||||||
ilo-sam.adm.crans.org
|
ilo-sam.adm.crans.org
|
||||||
ilo-stitch.adm.crans.org
|
ilo-stitch.adm.crans.org
|
||||||
ilo-thot.adm.crans.org
|
|
||||||
ilo-zamok.adm.crans.org
|
ilo-zamok.adm.crans.org
|
||||||
|
|
||||||
# everything at crans
|
# everything at crans
|
||||||
|
|
|
@ -63,18 +63,18 @@ class LookupModule(LookupBase):
|
||||||
def ip4(self, host, vlan):
|
def ip4(self, host, vlan):
|
||||||
"""
|
"""
|
||||||
Retrieve the first IPv4 addresse of an interface of a device
|
Retrieve the first IPv4 addresse of an interface of a device
|
||||||
query('ldap', 'ip4', HOST, VLAN)
|
lookup('ldap', 'ip4', HOST, VLAN)
|
||||||
"""
|
"""
|
||||||
result = [ res for res in self.ip(host, vlan) if ipaddress.ip_address(res).version == 4 ]
|
result = [ res for res in self.ip(host, vlan) if ipaddress.ip_address(res).version == 4 ]
|
||||||
return result[0]
|
return [result[0]]
|
||||||
|
|
||||||
def ip6(self, host, vlan):
|
def ip6(self, host, vlan):
|
||||||
"""
|
"""
|
||||||
Retrieve the first IPv6 addresse of an interface of a device
|
Retrieve the first IPv6 addresse of an interface of a device
|
||||||
query('ldap', 'ip6', HOST, VLAN)
|
lookup('ldap', 'ip6', HOST, VLAN)
|
||||||
"""
|
"""
|
||||||
result = [ res for res in self.ip(host, vlan) if ipaddress.ip_address(res).version == 6 ]
|
result = [ res for res in self.ip(host, vlan) if ipaddress.ip_address(res).version == 6 ]
|
||||||
return result[0]
|
return [result[0]]
|
||||||
|
|
||||||
def all_ip(self, host):
|
def all_ip(self, host):
|
||||||
"""
|
"""
|
||||||
|
@ -200,7 +200,7 @@ class LookupModule(LookupBase):
|
||||||
query_id = self.base.search(f"cn={network},ou=networks,{self.base_dn}", ldap.SCOPE_BASE, "objectClass=ipNetwork")
|
query_id = self.base.search(f"cn={network},ou=networks,{self.base_dn}", ldap.SCOPE_BASE, "objectClass=ipNetwork")
|
||||||
result = self.base.result(query_id)
|
result = self.base.result(query_id)
|
||||||
result = result[1][0][1]
|
result = result[1][0][1]
|
||||||
return str(ipaddress.ip_network('{}/{}'.format(result['ipNetworkNumber'][0].decode('utf-8'), result['ipNetmaskNumber'][0].decode('utf-8'))))
|
return [str(ipaddress.ip_network('{}/{}'.format(result['ipNetworkNumber'][0].decode('utf-8'), result['ipNetmaskNumber'][0].decode('utf-8'))))]
|
||||||
elif terms[0] == 'zones':
|
elif terms[0] == 'zones':
|
||||||
query_id = self.base.search(f"ou=networks,{self.base_dn}", ldap.SCOPE_ONELEVEL, "objectClass=ipNetwork")
|
query_id = self.base.search(f"ou=networks,{self.base_dn}", ldap.SCOPE_ONELEVEL, "objectClass=ipNetwork")
|
||||||
result = self.base.result(query_id)
|
result = self.base.result(query_id)
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
---
|
---
|
||||||
- import_playbook: ssh_known_hosts.yml
|
- import_playbook: ssh_known_hosts.yml
|
||||||
|
|
||||||
- hosts: server
|
- hosts: server,!dev,!apprentis.adm.crans.org
|
||||||
vars:
|
vars:
|
||||||
borg: "{{ glob_borg | default({}) | combine(loc_borg | default({})) }}"
|
borg: "{{ glob_borg | default({}) | combine(loc_borg | default({})) }}"
|
||||||
roles:
|
roles:
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
#!/usr/bin/env ansible-playbook
|
|
||||||
---
|
|
||||||
- hosts: constellation
|
|
||||||
vars:
|
|
||||||
constellation: "{{ glob_constellation | combine(loc_constellation | default({}), recursive=True) }}"
|
|
||||||
roles:
|
|
||||||
- constellation
|
|
||||||
|
|
||||||
- hosts: constellation_front
|
|
||||||
vars:
|
|
||||||
constellation: "{{ glob_constellation | combine(loc_constellation | default({}), recursive=True) }}"
|
|
||||||
nginx: "{{ glob_nginx | combine(loc_nginx | default({})) }}"
|
|
||||||
roles:
|
|
||||||
- nginx
|
|
||||||
- constellation-front
|
|
||||||
- constellation-doc
|
|
|
@ -62,6 +62,13 @@
|
||||||
roles:
|
roles:
|
||||||
- prometheus-postfix-exporter
|
- prometheus-postfix-exporter
|
||||||
|
|
||||||
|
# Export apache metrics (avait disparu depuis f7347e41d2)
|
||||||
|
#- hosts: zamok.adm.crans.org
|
||||||
|
# vars:
|
||||||
|
# adm_ipv4: "{{ ansible_all_ipv4_addresses | ipaddr(adm_subnet) | first }}"
|
||||||
|
# roles:
|
||||||
|
# - prometheus-apache-exporter
|
||||||
|
|
||||||
# Monitor logs with mtail
|
# Monitor logs with mtail
|
||||||
- hosts: mtail
|
- hosts: mtail
|
||||||
vars:
|
vars:
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/usr/bin/env ansible-playbook
|
||||||
|
---
|
||||||
|
|
||||||
|
- hosts: server,!dev
|
||||||
|
vars:
|
||||||
|
restic: "{{ glob_restic | default({}) | combine(loc_restic | default({}), recursive=true) }}"
|
||||||
|
roles:
|
||||||
|
- restic-client
|
|
@ -30,6 +30,7 @@
|
||||||
- import_playbook: scripts.yml
|
- import_playbook: scripts.yml
|
||||||
- import_playbook: vm_setup.yml
|
- import_playbook: vm_setup.yml
|
||||||
- import_playbook: borgbackup_client.yml
|
- import_playbook: borgbackup_client.yml
|
||||||
|
- import_playbook: restic_client.yml
|
||||||
- import_playbook: network_interfaces.yml
|
- import_playbook: network_interfaces.yml
|
||||||
- import_playbook: nullmailer.yml
|
- import_playbook: nullmailer.yml
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
- import_playbook: bird.yml
|
- import_playbook: bird.yml
|
||||||
- import_playbook: freeradius.yml
|
- import_playbook: freeradius.yml
|
||||||
- import_playbook: firewall.yml
|
- import_playbook: firewall.yml
|
||||||
- import_playbook: dns-recursive.yml
|
|
||||||
- import_playbook: prefix-delegation.yml
|
- import_playbook: prefix-delegation.yml
|
||||||
- import_playbook: radvd.yml
|
- import_playbook: radvd.yml
|
||||||
- import_playbook: keepalived.yml
|
- import_playbook: keepalived.yml
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
roles:
|
roles:
|
||||||
- ldap-client
|
- ldap-client
|
||||||
|
|
||||||
- hosts: server,!ovh_physical,!tealc.adm.crans.org,!sam.adm.crans.org,!routeur-sam.adm.crans.org,!ft.adm.crans.org,!thot.adm.crans.org
|
- hosts: server,!ovh_physical,!apprentis.adm.crans.org,!ft.adm.crans.org,!routeur-sam.adm.crans.org,!sam.adm.crans.org,!tealc.adm.crans.org
|
||||||
vars:
|
vars:
|
||||||
nfs_mount: "{{ glob_home_nounou | default({}) | combine(loc_home_nounou | default({})) }}"
|
nfs_mount: "{{ glob_home_nounou | default({}) | combine(loc_home_nounou | default({})) }}"
|
||||||
roles:
|
roles:
|
||||||
|
|
|
@ -2,9 +2,10 @@
|
||||||
---
|
---
|
||||||
- hosts: server
|
- hosts: server
|
||||||
vars:
|
vars:
|
||||||
root: "{{ glob_root | default({}) | combine(loc_root | default({})) }}"
|
|
||||||
ntp_client: "{{ glob_ntp_client | combine(loc_ntp_client | default({})) }}"
|
|
||||||
needrestart: "{{ glob_needrestart | default({}) | combine(loc_needrestart | default({})) }}"
|
needrestart: "{{ glob_needrestart | default({}) | combine(loc_needrestart | default({})) }}"
|
||||||
|
ntp_client: "{{ glob_ntp_client | combine(loc_ntp_client | default({})) }}"
|
||||||
|
root: "{{ glob_root | default({}) | combine(loc_root | default({})) }}"
|
||||||
|
sudo: "{{ glob_sudo | default({}) | combine(loc_sudo | default({})) }}"
|
||||||
unattended: "{{ glob_unattended | default({}) | combine(loc_unattended | default({})) }}"
|
unattended: "{{ glob_unattended | default({}) | combine(loc_unattended | default({})) }}"
|
||||||
roles:
|
roles:
|
||||||
- root
|
- root
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
#!/usr/bin/env ansible-playbook
|
|
||||||
---
|
|
||||||
# Deploy vsftpd server on the mirrors
|
|
||||||
- hosts: vsftpd_mirror
|
|
||||||
vars:
|
|
||||||
certbot: "{{ loc_certbot | default(glob_certbot | default([])) }}"
|
|
||||||
vsftpd: "{{ glob_vsftpd_mirror | default({}) | combine(loc_vsftpd | default({})) }}"
|
|
||||||
roles:
|
|
||||||
- certbot
|
|
||||||
- vsftpd
|
|
||||||
|
|
||||||
# Deploy vstfpd on the camera serveur
|
|
||||||
- hosts: vsftpd_cameras
|
|
||||||
vars:
|
|
||||||
vsftpd: "{{ glob_vsftpd_cameras | default({}) | combine(loc_vsftpd | default({})) }}"
|
|
||||||
roles:
|
|
||||||
- vsftpd
|
|
|
@ -8,4 +8,3 @@
|
||||||
roles:
|
roles:
|
||||||
- zamok-tools
|
- zamok-tools
|
||||||
# - postfix
|
# - postfix
|
||||||
- prometheus-node-exporter-postfix
|
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
# Arpproxy
|
||||||
|
|
||||||
|
Active arpproxy. Utilise le repo [proxy](https://gitlab.crans.org/nounous/proxy).
|
|
@ -0,0 +1,9 @@
|
||||||
|
---
|
||||||
|
- name: Restart timer
|
||||||
|
service:
|
||||||
|
name: borgmatic.timer
|
||||||
|
state: restarted
|
||||||
|
|
||||||
|
- name: systemctl daemon-reload
|
||||||
|
systemd:
|
||||||
|
daemon_reload: true
|
|
@ -61,13 +61,27 @@
|
||||||
register: borg_init
|
register: borg_init
|
||||||
changed_when: '"does not exist" in borg_init.stderr'
|
changed_when: '"does not exist" in borg_init.stderr'
|
||||||
|
|
||||||
- name: Deploy borg cron
|
- name: Deploy borgmatic systemd
|
||||||
template:
|
template:
|
||||||
src: cron.d/borg.j2
|
src: "systemd/system/{{ item }}.j2"
|
||||||
dest: /etc/cron.d/borg{{ borg.path_suffix | default('') }}
|
dest: /etc/systemd/system/{{ item }}
|
||||||
|
mode: 0600
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
loop:
|
||||||
|
- borgmatic.service
|
||||||
|
- borgmatic.timer
|
||||||
|
notify:
|
||||||
|
- Restart timer
|
||||||
|
- systemctl daemon-reload
|
||||||
|
|
||||||
- name: Indicate role in motd
|
- name: Indicate role in motd
|
||||||
template:
|
template:
|
||||||
src: update-motd.d/04-service.j2
|
src: update-motd.d/04-service.j2
|
||||||
dest: /etc/update-motd.d/04-borgbackup
|
dest: /etc/update-motd.d/04-borgbackup
|
||||||
mode: 0755
|
mode: 0755
|
||||||
|
|
||||||
|
- name: Enable timer
|
||||||
|
service:
|
||||||
|
name: borgmatic.timer
|
||||||
|
enabled: true
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
{{ ansible_header | comment }}
|
|
||||||
|
|
||||||
PATH=$PATH:/usr/sbin:/usr/bin:/usr/local/bin:/sbin:/bin
|
|
||||||
|
|
||||||
{% if borg.path_suffix is defined %}
|
|
||||||
{{ 60 | random(seed=inventory_hostname) }} {{ 24 | random(seed=inventory_hostname) }} * * * root borgmatic -c /etc/borgmatic/config{{ borg.path_suffix }}.yaml --syslog-verbosity 1
|
|
||||||
{% else %}
|
|
||||||
{{ 60 | random(seed=inventory_hostname) }} {{ 24 | random(seed=inventory_hostname) }} * * * root borgmatic --syslog-verbosity 1
|
|
||||||
{% endif %}
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue