{"id":25492361,"url":"https://github.com/spatteriight/ansible-role-tinc","last_synced_at":"2026-06-16T20:32:33.431Z","repository":{"id":251691959,"uuid":"779488897","full_name":"spatterIight/ansible-role-tinc","owner":"spatterIight","description":"An Ansible role to install and configure simple Tinc VPN networks","archived":false,"fork":false,"pushed_at":"2026-06-14T20:22:30.000Z","size":42,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-14T22:15:58.770Z","etag":null,"topics":["ansible","tinc"],"latest_commit_sha":null,"homepage":"https://www.tinc-vpn.org/","language":"Just","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spatterIight.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-03-30T00:38:17.000Z","updated_at":"2026-06-14T20:21:40.000Z","dependencies_parsed_at":"2024-08-05T04:59:37.455Z","dependency_job_id":"d3f989a9-fb4c-4bde-a498-5307298fb6da","html_url":"https://github.com/spatterIight/ansible-role-tinc","commit_stats":null,"previous_names":["spatteriight/ansible-role-tinc"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/spatterIight/ansible-role-tinc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spatterIight%2Fansible-role-tinc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spatterIight%2Fansible-role-tinc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spatterIight%2Fansible-role-tinc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spatterIight%2Fansible-role-tinc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spatterIight","download_url":"https://codeload.github.com/spatterIight/ansible-role-tinc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spatterIight%2Fansible-role-tinc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34423214,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-16T02:00:06.860Z","response_time":126,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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","tinc"],"created_at":"2025-02-18T22:29:34.852Z","updated_at":"2026-06-16T20:32:33.419Z","avatar_url":"https://github.com/spatterIight.png","language":"Just","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ansible-role-tinc\n\n## What it is\n\nInstall and configure simple Tinc VPN networks\n\n## How to use\n\nTo use this role simply define, at a minimum, the `tinc_networks` variable and execute the role agaisn't your host(s).\n\nOne thing to keep in mind is how this role manages the RSA key-pair:\n\n  1. If a private key does not exist AND is not defined in `tinc_networks` it will be generated.\n  2. If a public key is not defined it will be generated based on the private key and printed. In this case you must add it your `tinc_networks` definition and re-run the role.\n  3. If you do store the private key in Ansible, be sure to store it in an Ansible Vault.\n\n## Role Variables\n\n| Variable         | Default   | Description                                     |\n|------------------|-----------|-------------------------------------------------|\n| `tinc_user`      | root      | The user to permission as                       |\n| `tinc_group`     | root      | The group to permission as                      |\n| `tinc_directory` | /etc/tinc | The base tinc configuration directory           |\n| `tinc_networks`  | []        | A list of dictionaries of networks to configure |\n\n## Default Playbook\n\n```yaml\n---\n- hosts: node\n  become: true\n  gather_facts: true\n  roles:\n    - ansible-role-tinc\n  vars:\n    # ansible-role-tinc\n    tinc_networks:\n      - network_name: \"cyberpunk\"\n        host_name: \"lucy\"\n        interface: \"tun0\"\n        ip: \"172.24.16.2\"\n        mask: \"26\"\n        connect_to: \"delamain\"\n        rsa_public_key: |\n          -----BEGIN RSA PUBLIC KEY-----\n          MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqskqZbuN6CfD1XQIMHfZ\n          e0SX/5S8VRAG0KPDUwAGcOGy4nn9rhEvKJvtddjjgwHkrM9Ze2u0SEsfmOTc5gBg\n          W+wqZBU335IlY/EBV5/vWOtXSDmPUsGyP0Fc07TxqwdVv3YziLwVit4+HEZmaEXI\n          794DPbaGICcYMMR0qJoYwFytoTpLZn13AWoYO88VXJHfMsH5NQ6QoCxa4dCuRamy\n          s3c4WCtWpgrtRT/EmeT+CCG9veWX12ToTNotEa6GsuVS7yqeGW40DMPpunEfwleG\n          WdqIN88M208x3cCQHvbLpXRqDlqr8XkEHb144lYHALldTKDbDLkeHkTBZlHP4U1/\n          uQIDAQAB\n          -----END RSA PUBLIC KEY-----\n        hosts:\n          - host_name: \"delamain\"\n            address: \"35.212.81.255\"\n            port: \"655\"\n            rsa_public_key: |\n                -----BEGIN RSA PUBLIC KEY-----\n                MIIBCgKCAQEA6u1UJxH7H2qnQzbsdbHCD6tkVxeYC0B5bXu2T2zz+oGtKsBGe33f\n                DhDg1KiX/WsrCZqKXQRBAOPDCmxxatNbKAv8h8uLAWUh5ibrxcwuE6+KhGmkmTkE\n                dAnur8n4Mr+rM0YOBqzGE4oIfmjn/9CWZBh1gknw7WI9mPGvNe0368qEfviabqcR\n                a9EOzqRK91QhmC+ZZQmm1bx8OsmpT5m5b1FgxMprYk/pTVi5wa8FyGg7ELjkYwzM\n                nvuSNAyHkHfbz957mlaqQc/0Y/DHA+4Od9jlE85u4ev++UYhWTq/EiwmZ0Ehx9K+\n                EOCLzLbeS6SiUqVN7YOy85qN2IkKLYezGwIDAQAB\n                -----END RSA PUBLIC KEY-----\n```\n\n## Molecule\n\nThis role supports [Molecule](https://docs.ansible.com/projects/molecule/), an Ansible testing framework designed for developing and testing Ansible collections, playbooks, and roles.\n\nRefer to [this page](./molecule/README.md) for details about how to utilize it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspatteriight%2Fansible-role-tinc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspatteriight%2Fansible-role-tinc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspatteriight%2Fansible-role-tinc/lists"}