{"id":21538634,"url":"https://github.com/freifunkbremen/ansible","last_synced_at":"2025-04-10T03:24:15.024Z","repository":{"id":33303130,"uuid":"36947866","full_name":"FreifunkBremen/ansible","owner":"FreifunkBremen","description":"ansible-Scripts to build new VPN-Gateways","archived":false,"fork":false,"pushed_at":"2024-07-18T18:14:36.000Z","size":1440,"stargazers_count":13,"open_issues_count":9,"forks_count":4,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-24T04:43:27.264Z","etag":null,"topics":["ansible","freifunk-bremen-gateway","ic-vpn","infrastructure"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FreifunkBremen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-06-05T18:13:25.000Z","updated_at":"2024-07-18T18:14:39.000Z","dependencies_parsed_at":"2023-11-18T00:56:43.908Z","dependency_job_id":"59c2b8c3-bb5e-46d0-8a5c-5e8841e7897c","html_url":"https://github.com/FreifunkBremen/ansible","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FreifunkBremen%2Fansible","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FreifunkBremen%2Fansible/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FreifunkBremen%2Fansible/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FreifunkBremen%2Fansible/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FreifunkBremen","download_url":"https://codeload.github.com/FreifunkBremen/ansible/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248149438,"owners_count":21055781,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","freifunk-bremen-gateway","ic-vpn","infrastructure"],"created_at":"2024-11-24T04:12:45.495Z","updated_at":"2025-04-10T03:24:14.997Z","avatar_url":"https://github.com/FreifunkBremen.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Ansible Freifunk Bremen\n=======================\n\nIn this repository are playbooks for deploying services on Freifunk Bremen machines.\n\n## Dependencies\n\nWith PyPI:\n\n    virtualenv pythonenv\n    source pythonenv/bin/activate\n    pip install -r requirements.txt\n\nOr as Debian/Ubuntu packages:\n\n    apt-get install python-dnspython ca-certificates\n\n## Playbooks\n\n  * services: Generic service host for Freifunk Bremen community.\n  * vpnserver: vpnserver sets up a Freifunk Bremen gateway.\n\n## Site-Conf\n\nCommunity related variables are defined in `site/site.conf` and `group_vars/all.yml`.\nThis variables are used by the ansible-tasks.\n\n    pgp_keyserver:        'pool.sks-keyservers.net'\n    site_git_root:        'https://github.com/FreifunkBremen'\n    site_city:            'bremen'\n    site_domain:          'bremen.freifunk.net'\n    site_vpn_prefix:      'vpn'\n    icvpn_as:             65196\n    fastd_peers_limit:    150\n\nOther communities need to modify this variables.\n\n## Hosts\n\nThe hosts-file defines all machines where our services are deployed on as well as community related variables. For other communities the variables are to be changed.\nVariables:\n\n    ipv6_local_network  = \"fd75:3707:b8c2::/64\",\n\nHosts:\n\n    vpn0*.bremen.freifunk.net\n\nwith exit_ipv4=gre and ansible_ssh_port=* (both optional).\n\n## Gateway Playbook\n\nPlaybook vpnserver sets up a Freifunk Bremen gateway. When executed additional variabels need to be defined. For example to set up a Freifunk gateway on vpn05 the following command is used:\n\n    ansible-playbook playbooks/vpnserver.yml --limit=vpn05.bremen.freifunk.net\n\nFor detailed information about the roles see README.md inside of the role.\n\n\n## Afterwork\nAfter setting up a vpnserver you have to do something by hand.\n\n### Create DNS-Entries\nIn Bremen you need a VPN-Entry and NTP-Entry.\n\n### Add fastd-public-key to site.confg\nYou got your key from running\n```\nfastd --show-key -c /etc/fastd/{{site_code}}/fastd.conf\n```\nThen add it to your site.conf - From Bremen you found it [here](https://github.com/FreifunkBremen/gluon-site-ffhb/blob/master/site.conf)\n\n**Do not forget to add NTP-Server either.**\n\n\n### Add bgp internal routing\nAsk to other VPN-Owner to run ansible again.\nOn this way the other vpns got the new internal routing in ```bird``` and ```bird6```.\n[See here](https://github.com/FreifunkBremen/ansible/tree/master/roles/router-bird/templates)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffreifunkbremen%2Fansible","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffreifunkbremen%2Fansible","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffreifunkbremen%2Fansible/lists"}