[docker] Add firewall between Docker containers and adm network
Signed-off-by: Yohann D'ANELLO <ynerant@crans.org>certbot_on_virtu
parent
b8e0653b3f
commit
3d0f7a5f5f
|
@ -0,0 +1,4 @@
|
||||||
|
---
|
||||||
|
glob_docker:
|
||||||
|
dns_network: 172.16.10.100/30
|
||||||
|
adm_network: 172.16.0.0/16
|
6
hosts
6
hosts
|
@ -47,6 +47,9 @@ vsftpd
|
||||||
[dhcp:children]
|
[dhcp:children]
|
||||||
routeurs_vm
|
routeurs_vm
|
||||||
|
|
||||||
|
[docker:children]
|
||||||
|
gitlab_runner
|
||||||
|
|
||||||
[django_cas]
|
[django_cas]
|
||||||
cas.adm.crans.org
|
cas.adm.crans.org
|
||||||
|
|
||||||
|
@ -85,6 +88,9 @@ neree.adm.crans.org
|
||||||
[gitlab]
|
[gitlab]
|
||||||
gitzly.adm.crans.org
|
gitzly.adm.crans.org
|
||||||
|
|
||||||
|
[gitlab_runner]
|
||||||
|
gitlab-ci.adm.crans.org
|
||||||
|
|
||||||
[grafana]
|
[grafana]
|
||||||
monitoring.adm.crans.org
|
monitoring.adm.crans.org
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
#!/usr/bin/env ansible-playbook
|
#!/usr/bin/env ansible-playbook
|
||||||
---
|
---
|
||||||
# Deploy Gitlab CI
|
# Deploy Gitlab CI
|
||||||
- hosts: gitlab-ci.adm.crans.org
|
- hosts: gitlab_runner
|
||||||
|
vars:
|
||||||
|
docker: '{{ glob_docker | default({}) | combine(loc_docker | default({})) }}'
|
||||||
roles:
|
roles:
|
||||||
- docker
|
- docker
|
||||||
- gitlab-runner
|
- gitlab-runner
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
- name: Restart Docker
|
||||||
|
systemd:
|
||||||
|
name: docker
|
||||||
|
daemon_reload: true
|
||||||
|
state: restarted
|
|
@ -43,3 +43,12 @@
|
||||||
register: apt_result
|
register: apt_result
|
||||||
retries: 3
|
retries: 3
|
||||||
until: apt_result is succeeded
|
until: apt_result is succeeded
|
||||||
|
|
||||||
|
- name: Protect adm from Docker containers
|
||||||
|
template:
|
||||||
|
src: systemd/system/docker.service.d/override.conf.j2
|
||||||
|
dest: /etc/systemd/system/docker.service.d/override.conf
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0644
|
||||||
|
notify: Restart Docker
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[Service]
|
||||||
|
# Allow domain resolution, don't use adm network for anything else
|
||||||
|
ExecStartPost=/bin/sh -c "/usr/sbin/iptables -I FORWARD 1 -i docker0 -d {{ docker.dns_network }} -p udp --dport 53 -j ACCEPT; /usr/sbin/iptables -I FORWARD 2 -d {{ docker.adm_network }} -i docker0 -j REJECT --reject-with icmp-port-unreachable"
|
||||||
|
ExecStopPost=/usr/sbin/iptables --flush FORWARD
|
Loading…
Reference in New Issue