{"id":48229617,"url":"https://github.com/route1337/ansible-role-managecloudflared","last_synced_at":"2026-04-04T19:29:37.672Z","repository":{"id":56748153,"uuid":"471822473","full_name":"route1337/ansible-role-managecloudflared","owner":"route1337","description":"Deploy and configure cloudflared using pre-created tunnel credentials","archived":false,"fork":false,"pushed_at":"2024-10-01T03:39:29.000Z","size":34,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-09T06:51:27.404Z","etag":null,"topics":["ansible","cloudflare","cloudflared","reverse-proxy","tunnel","vpn","zero-trust"],"latest_commit_sha":null,"homepage":"https://galaxy.ansible.com/route1337/manage_cloudflared","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/route1337.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null},"funding":{"github":"route1337"}},"created_at":"2022-03-19T22:04:23.000Z","updated_at":"2024-11-11T16:19:03.000Z","dependencies_parsed_at":"2022-08-16T01:30:42.919Z","dependency_job_id":null,"html_url":"https://github.com/route1337/ansible-role-managecloudflared","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/route1337/ansible-role-managecloudflared","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/route1337%2Fansible-role-managecloudflared","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/route1337%2Fansible-role-managecloudflared/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/route1337%2Fansible-role-managecloudflared/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/route1337%2Fansible-role-managecloudflared/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/route1337","download_url":"https://codeload.github.com/route1337/ansible-role-managecloudflared/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/route1337%2Fansible-role-managecloudflared/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31410703,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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","cloudflare","cloudflared","reverse-proxy","tunnel","vpn","zero-trust"],"created_at":"2026-04-04T19:29:37.575Z","updated_at":"2026-04-04T19:29:37.643Z","avatar_url":"https://github.com/route1337.png","language":"Ruby","funding_links":["https://github.com/sponsors/route1337"],"categories":[],"sub_categories":[],"readme":"Ansible Role - manage_cloudflared\n==========================\nThis repo contains the Ansible role for configuring a cloudflared server in either WARP mode, or ingress mode.\n\nWhat this role does\n-------------------\nThis Ansible role will allow you to configure cloudflared on an Ubuntu 20.04+ server in either WARP tunnel mode, or in ingress mode.\n\n1. Download and install cloudflared via a package repo\n2. Configure cloudflared\n    1. Set cloudflared to start as a service\n    2. Start cloudflared\n\nVariables\n---------\nThe tunnel configuration files will need to be supplied, as this role intentionally does not include authentication and tunnel creation\nfor security reasons.\n\nThe following variables are required:\n\n1. `manage_cloudflared.warp` - Use WARP tunneling instead of ingresses (Default: `false`)\n   ```yaml\n   manage_cloudflared.warp: true\n   manage_cloudflared.tunnel_uuid: \"a1b234c5-de67-89f0-g123-4hi5jk678l90\"\n   manage_cloudflared.account_tag: \"1234567abcdefg890123hijklom45678\"\n   manage_cloudflared.tunnel_secret: \"YmFkc2VjcmV0Cg==\"\n   manage_cloudflared.tunnel_name: \"internal_warp\"\n   ```\n2. Either the `manage_cloudflared.console_token` method or the local configuration method\n   ```yaml\n   console_token: \"BASE64 STRING OF TUNNEL TOKEN\"\n   ```\n   OR\n   ```yaml\n   manage_cloudflared.tunnel_uuid: \"a1b234c5-de67-89f0-g123-4hi5jk678l90\"\n   manage_cloudflared.account_tag: \"1234567abcdefg890123hijklom45678\"\n   manage_cloudflared.tunnel_secret: \"YmFkc2VjcmV0Cg==\"\n   manage_cloudflared.tunnel_name: \"internal_websites\"\n   manage_cloudflared.ingresses:\n      - hostname: statuspage.externaldomain.com\n        service: \"https://10.1.2.3:443\"\n        dont_verify_ssl: true\n        host_header: \"status.internaldomain.com\"\n      - hostname: timeclock.externaldomain.com\n        service: \"https://timeclock.internaldomain.net:443\"\n      - hostname: timeclock.externaldomain.com\n        service: \"https://timeclock.internaldomain.net:443\"\n   ```\n\nZTA Managed Tunnels\n-------------------\nIf you use `manage_cloudflared.console_token` you don't need to specify any other variables as the Zero Trust Console will\nmanage everything else.\n\nAdditionally, please note that migrating between config file managed and ZTA managed tunnels will not work because the service install test\nonly checks if the service exists, so installing one prior to the other will not result in removing the old style of service. You will have\nto manually remove the old service first.\n\nTesting\n-------\nDue to the nature of the service this role is configuring, all testing is done manually.  \n[TESTING.md](TESTING.md) contains details and instructions for testing. \n\nDonate To Support This Ansible Role\n-----------------------------------\nRoute 1337 LLC's open source code heavily relies on donations. If you find this Ansible role useful, please consider using the GitHub Sponsors button to show your continued support.\n\nThank you for your support!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froute1337%2Fansible-role-managecloudflared","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froute1337%2Fansible-role-managecloudflared","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froute1337%2Fansible-role-managecloudflared/lists"}