Commit graph

189 commits

Author SHA1 Message Date
Julian Labus 50cc1a3efa
Role prerequisites: add task to generate SSH keys 2018-06-15 09:00:43 +02:00
Tobias Hachmer 98324509dd Role users: update public key of kokel 2018-03-20 06:27:03 +01:00
Tobias Hachmer bd8586f20a Role service-respondd: update exec option 2018-03-04 20:54:23 +01:00
Tobias Hachmer 6904d9fb25 Role server-basic: add template for standard apt sources 2018-03-04 19:51:35 +01:00
Tobias Hachmer f3eb2e1b02 Playbooks: fix role intendation 2018-03-02 07:21:07 +01:00
Tobias Hachmer dda20fcdae Role service-prometheus: fix trailing spaces 2018-03-02 07:18:19 +01:00
Tobias Hachmer 886cdb2417 Handlers: move all handlers into their roles, again 2018-03-01 06:34:55 +01:00
Tobias Hachmer 2fbaea9e37 Inventory: add backbone gateway extrasahne to bgp_mwu_servers 2018-02-28 17:19:57 +01:00
Tobias Hachmer ba83cecc17 Inventory: add gateway lotuswurzel 2018-02-28 17:18:54 +01:00
Julian Labus a97d27779d
Fix READMEs 2018-02-28 15:20:51 +01:00
Julian Labus 004681b553
Role service-bird: calculate peer addresses of other ansible managed hosts 2018-02-28 11:16:55 +01:00
Julian Labus d4d4ad0147
Role service-fastd-mesh: replace rstrip with rsplit 2018-02-28 11:16:49 +01:00
Julian Labus 0d60aa9f99
Role network-meshbridge: don't set individual MAC on bridge 2018-02-28 11:16:37 +01:00
Julian Labus dc72070628
Role system-sysctl-gateway: add small delay to sysctl startup
- sysctl starts to quick after modules-load and setting the nf_conntrack parameters fails
2018-02-28 11:16:30 +01:00
Julian Labus f5732aeb2a
Role network-routing: fix netmasks 2018-02-28 11:16:22 +01:00
Julian Labus f81a5c1a5f
Role network-iptables-gateway: load module nf_conntrack at boot 2018-02-28 11:16:15 +01:00
Julian Labus ce47909a2c
Inventory: add gateway ingwer.freifunk-mwu.de 2018-02-28 11:16:05 +01:00
Tobias Hachmer 7359c03bf8 Role service-nginx: enable IPv6 support 2018-02-28 06:15:43 +01:00
Tobias Hachmer 89281c68a8 Role server-basic: ensure rpcbind is not installed 2018-02-28 06:06:14 +01:00
Tobias Hachmer 3c8d012ac7 Add role users 2018-02-28 06:04:25 +01:00
Julian Labus be84e6f148
Role service-nginx-firmware: enable IPv6 support 2018-02-25 18:13:26 +01:00
Tobias Hachmer 4ccb9a52ea Revert "Role network-meshbridge: update workaround to set hwaddress"
This reverts commit f81bbfed65.
2018-02-06 06:00:16 +01:00
Tobias Hachmer a947803e28 Revert "Role network-routing: move interface specific routes to role network-meshbridge"
This reverts commit d3298d4a3c.
2018-02-06 06:00:01 +01:00
Tobias Hachmer e633015873 Role service-fastd: explicitly clear ExecStart to prevent multiple definitions 2018-02-05 20:44:41 +01:00
Tobias Hachmer bd52ad6dd7 Role server-basic: fix networking.service from ifupdown2 - some interfaces come up too late 2018-02-05 17:37:52 +01:00
Tobias Hachmer 95140f12ea Role service-fastd: configure systemd service unit overrides instead of replacing the whole file 2018-02-05 15:46:56 +01:00
Tobias Hachmer 3e311bd995 Role service-dhcpd: add override settings for kea-dhcp4-server service unit 2018-02-05 15:31:40 +01:00
Julian Labus d3298d4a3c Role network-routing: move interface specific routes to role network-meshbridge 2018-02-02 06:38:06 +01:00
Julian Labus f81bbfed65 Role network-meshbridge: update workaround to set hwaddress
`pre-up` doesn't work properly as it is called before the bridge is created.
Initializing the bridge via `up` in the batman mesh interface seems to be a better solution.
2018-02-02 06:38:06 +01:00
Tobias Hachmer b246e8982b Add role service-nullmailer 2018-01-07 17:40:33 +01:00
Tobias Hachmer 90f486eb60 Role service-bird-icvpn: correct roa log messages 2018-01-02 10:45:09 +01:00
Tobias Hachmer 64f99ea396 Rename ffmwu custom config config dir from ~/.config to ~/.ffmwu-config 2017-12-31 13:41:46 +01:00
Tobias Hachmer 41a1d0bac3 Add role service-vnstat 2017-12-31 12:40:00 +01:00
Tobias Hachmer 7c80d75632 Role server-basic: update handling of dummy module 2017-12-30 23:10:11 +01:00
Tobias Hachmer c79fb69789 Role server-basic: add unattended-upgrades 2017-12-30 22:47:58 +01:00
Tobias Hachmer 96a8c0e1c9 Inventory group vars all: add missing legacy gateway wasserfloh 2017-12-30 11:37:43 +01:00
Tobias Hachmer b36f4dfe5b Role service-fastd-mesh: update peer limit config
* rename setting timeout to remote_data_timeout
* introduce setting remote_fetch_timeout
2017-12-30 11:26:47 +01:00
Tobias Hachmer 7757387dd5 Role service-nginx: add nginx.conf templating 2017-12-29 20:31:46 +01:00
Tobias Hachmer a2104ddcc5 Role service-tinc: fix handling of systemd unit
* remove init script if present
* nets.boot not necessary with new systemd unit
* update systemd tasks to use systemd unit tinc@
* update handler
2017-12-29 14:27:52 +01:00
Tobias Hachmer 0a51ee02a3 Role service-dhcpd: change dhcp daemon to kea 2017-12-28 22:12:00 +01:00
n0trax 7abc41ee92 Fix systemd service scripts (#12) 2017-12-14 19:45:27 +01:00
Tobias Hachmer 2faa4e11dd Role network-iptables-gateway: omit dropping invalid packets 2017-12-14 06:33:39 +01:00
kokel c8b1f999fe
Merge pull request #11 from freifunk-mwu/devel
Restructure ansible
2017-12-05 06:05:30 +01:00
kokel 513e914437
Revert "Restructure ansible (#8)" (#10)
This reverts commit ff1dac07ba.
2017-12-05 06:02:44 +01:00
kokel ff1dac07ba
Restructure ansible (#8)
* Add filename prefix to playbooks

* Inventory: clean up & rename role ffmwu-prereq to test-prerequisites

Remove all hosts which aren't set up by ansible, yet. Prepare to start
from scratch. Only add hosts to the inventory which will be set up
completly by ansible.

* Role test-prerequisites: improve tasks; update OS to current debian
stable

* Add a bunch of new roles

- Update Readme
- Update ansible.cfg
- Add playbook to set up gateways
- Add group variables

* Roles: add role documentation

* Some restructuring (#3)

* Modify prerequisites role and integrate prerequisites role into all playbooks (#4)

* Add relaxed yamllint config and fix errors

* Add role service-rclocal

* Add role service-bird

* Move localtestvm to separate role (untested) (#6)

* Add role git-repos

* Add role service-bird-icvpn; add python3-yaml package to server-basic
role

* Add role service-bird-ffrl

* Set 'become' default to True (#7)

* Retouch tasks due to 'become' defaults to True

* Add role service-bird-ffrl to playbook gateways

* Role service-bird-ffrl: correct ipaddr filters

* Update readme of roles service-fastd-mesh + service-fastd-intragate

* Update Readme.md

- update passwordstore lookup for fastd secrets
- add explanation about sensible informations

* Role server-basic: add package bridge-utils

* Add role service-tinc

* Add role system-sysctl-gateway

* Add version to git modules in roles:

- git-fastd-peers
- git-repos
- service-tinc

* Add readme for role prerequisites

* Add role network-iptables-gateway

 - move netfilter specific sysctl settings

* Role kmod-batman: load kernel modules

* Role service-bird-icvpn: use a task and not a handler to set file attrs

* Add role service-bind-slave

* Restructure network interfaces in order to use ifupdown2

- rewrite interface templates for batman, fastd, ffrl and meshbridge
- add package ethtool to role server-basic
- use more ipaddr filters and get rid of unneeded variables in dict
ffrl_exit_server
- change ffrl_public_ipv4_nat variable to ip/prefix format
- update readme files

* Role service-dhcpd: fix disabled notify

* Role service-fastd-mesh + service-fastd-intragate: fix mac address format

* Restructure service-fastd roles

- migrate role git-fastd-peers
- add role service-fastd
- add repo clone for ffbin peers (currently hardcoded)
- add role dependency to role service-fastd-mesh +
service-fastd-intragate
- add systemd handlers

* Role service-tinc: use a task instead of a handler for systemd stuff

* Role service-radvd: update handlers

* Update loop keys

* Role service-radvd: optimize ipaddr filters

* Role service-radvd: make more parameters configurable

* Update Readme.md

* Role service-fastd-mesh: add systemd unit + timer to update mesh peers

* Role service-bird + service-bird-icvpn: add systemd unit + timer to update roa+peers+tinc hosts

* Role git-repos: change branch of backend-scripts repo to drop-photon

* Role service-bind-slave: fix file permissions

* Role service-bind-slave: add systemd unit + timer to update icvpn bind config

* Role service-bird-icvpn: rename systemd unit+timer icvpn-update to icvpn-tinc-bgp-update

* Roles service-fastd-mesh + service-fastd-intragate: rename fastd socket

* Role service-rclocal: fix wrong interface

* Role network-iptables-gateway: rename var internet_exit_mtu_ipv[4|6] to internet_exit_tcp_mss_ipv[4|6]

* FFRL Internet Exit: move IPv4 NAT address to a single dummy interface

* Roles service-bird[|-ffrl|-icvpn]: rework handlers

* Update some ipaddr filters

* Fix wrong IP subnet calculation in roles service-radvd + service-rclocal

* Role service-fastd-mesh: move peer limit to a separate file which isn't managed by ansible

* Role service-fastd: ensure fastd service is masked

* Role service-fastd-mesh: add systemd timer for fastd peer limit update script

* Update Readme.md

* Migrate nested dictionary `meshes` into a list of dictionaries

 - migrate dictionary `ipv6` into two simple lists
 - migrate dictionary `forward_zones` into a list

* Restructure fastd configuration to define multiple instances easily

 - introduce mesh subdictionary `fastd`
 - change fastd instance naming
 - change fastd network interface naming (identical with fastd instance
names)
 - change mac address prefixes

* Roles service-fastd-[mesh|intragate]: update role dependencies

* Role network-batman: update batman-ifaces due to fastd instance change

 - update README.md

* Role network-fastd: update README.md

* Readme.md: add control machine requirements

* Role service-fastd-mesh: fix typo in handler

* Role service-fastd: use own systemd unit fastd@.service

- original uses %I which does not escaping, so dashes will be replaced
by slashes
- use %i instead of %I

* Add role network-routing

- move static routes from role service-rclocal to scripts run by systemd
unit
- mv routing specific sysctl settings

* Use package module where possible instead of apt

* Remove unnecessary handlers

* Move all handlers to one single role

* Update Readme.md

* Move IP rules from role `service-rclocal` to role `network-routing`

- add scripts to configure and delete IP rules via a systemd unit
- delete role `service-rclocal`
- update README.md
- add new handler

* Role network-routing: fix typos in ffmwu-del-ip-rules.sh template

* Add role service-respondd

* Roles service-fastd-[intragate|mesh]: update mac prefixes due to fastd instances change

* Fix some whitespaces

* Ensure systemd units are started

* Add role service-nginx

* Add role service-nginx-firmware

* Add missing variables for role service-nginx-firmware

* Add roles service-nginx(-firmware) to playbook gateways

* Role service-nginx: add autoindex options to default vhost

* Flush handlers after configuring network interfaces

* Role service-respondd: also listen on fastd-interfaces

* Update fastd peer limit configuration

 * add list of legacy gateways (temporarily)
 * change backend-scripts branch to ansible
 * Role server-basic: ensure ffmwu config directory is present
 * Role service-fastd: add fastd-status script
 * role service-fastd-mesh: add templating for fastd peer limit
configuration

* Update Readme.md

* Lowercase all network interface names

* Inventory: add new gateway uffschnitt.freifunk-mwu.de

* Role server-repos: change ffmwu repo to stretch

* Role service-respondd: install python3 module dependency

* Role server-repos: remove universe-factory repo since fastd package is available in debian upstream

* Pretty format ansible.cfg

* Inventory host_vars: use single file instead of subfolder

* Role prerequisites: add cname asserts

* Role network-meshbridge: workaround to set mac address on boot and get ipv6 address configured correctly

* Playbook gateways: reorder roles

* Rename role server-repos to server-apt-repos

- Role server-apt-repos: add readme

* Role server-basic: add locale setting

* Roles service-fastd-mesh + service-fastd-intragate

- remove on-up|on-down stanzas from fastd.conf
- update readme

* Move dummy module from role kmod-batman to server-basic

* Roles service-fastd-[mesh|intragate]: reload networking on fastd instance start

* Rework passwordstore lookup handling in roles service-fastd-mesh und service-fastd-intragate

* Role service-tinc: rework passwordstore lookup

* Role network-iptables-gateway: fix freifunk bridge rules

* Role service-fastd-mesh: ensure fastd_status.json file is present; reorder nginx roles

* Role network-routing: add missing service dependency for ffmwu-static-routes service unit

* Role service-tinc: add task to enable post-merge script

* Add prometheus role (#9)
2017-12-05 05:59:06 +01:00
n0trax ad5b658467 Add prometheus role (#9) 2017-12-05 05:58:34 +01:00
Tobias Hachmer 0f9cee0e7d Role service-tinc: add task to enable post-merge script 2017-12-04 16:32:38 +01:00
Tobias Hachmer 89c187a975 Role network-routing: add missing service dependency for ffmwu-static-routes service unit 2017-12-04 06:21:25 +01:00
Tobias Hachmer 466a08a0b3 Role service-fastd-mesh: ensure fastd_status.json file is present; reorder nginx roles 2017-11-30 23:12:15 +01:00
Tobias Hachmer 80bd91a469 Role network-iptables-gateway: fix freifunk bridge rules 2017-11-14 23:09:55 +01:00