Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cyb3r-jak3/terraform-cloudflare-browser-ssh
Custom Terraform module to create an browser ssh application including a tunnel.
https://github.com/cyb3r-jak3/terraform-cloudflare-browser-ssh
cloudflare-terraform terraform-module
Last synced: about 4 hours ago
JSON representation
Custom Terraform module to create an browser ssh application including a tunnel.
- Host: GitHub
- URL: https://github.com/cyb3r-jak3/terraform-cloudflare-browser-ssh
- Owner: Cyb3r-Jak3
- License: mit
- Created: 2023-07-18T00:02:35.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-20T21:44:58.000Z (6 months ago)
- Last Synced: 2024-05-21T00:14:37.966Z (6 months ago)
- Topics: cloudflare-terraform, terraform-module
- Language: HCL
- Homepage: https://registry.terraform.io/modules/Cyb3r-Jak3/browser-ssh/cloudflare/latest
- Size: 12.7 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# terraform-cloudflare-browser-ssh
This is a simple terraform modules that creates a tunnel to a host using Cloudflare's browser ssh.
Includes a configured Tunnel, Access Application, and SSH CA certificate.## Requirements
| Name | Version |
|------|---------|
| [cloudflare](#requirement\_cloudflare) | >= 4.40.0 |
| [random](#requirement\_random) | >= 3.5.1 |## Providers
| Name | Version |
|------|---------|
| [cloudflare](#provider\_cloudflare) | >= 4.40.0 |
| [random](#provider\_random) | >= 3.5.1 |## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [cloudflare_zero_trust_access_application.app](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_access_application) | resource |
| [cloudflare_zero_trust_access_short_lived_certificate.ssh_cert](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_access_short_lived_certificate) | resource |
| [cloudflare_zero_trust_tunnel_cloudflared.ssh_tunnel](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_tunnel_cloudflared) | resource |
| [cloudflare_zero_trust_tunnel_cloudflared_config.ssh_tunnel](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_tunnel_cloudflared_config) | resource |
| [random_password.tunnel_secret](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/password) | resource |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [access\_application\_name](#input\_access\_application\_name) | Name of the Access Application. Defaults to 'SSH for ${var.domain}' | `string` | n/a | yes |
| [account\_id](#input\_account\_id) | Cloudflare Account ID | `string` | n/a | yes |
| [allowed\_idps](#input\_allowed\_idps) | List of IDPs allowed to authenticate to the application | `list(string)` | n/a | yes |
| [app\_launcher\_visible](#input\_app\_launcher\_visible) | Whether to show the app launcher | `bool` | `true` | no |
| [domain](#input\_domain) | Domain to use for the SSH Tunnel | `string` | n/a | yes |
| [policies](#input\_policies) | List of policies to apply to the application | `list(string)` | `[]` | no |
| [session\_duration](#input\_session\_duration) | Session duration for the application | `string` | `"24h"` | no |
| [skip\_interstitial](#input\_skip\_interstitial) | Whether to skip the interstitial page | `bool` | `false` | no |
| [ssh\_host](#input\_ssh\_host) | Host to connect to via SSH | `string` | `"localhost"` | no |
| [ssh\_port](#input\_ssh\_port) | Port to connect to via SSH | `number` | `22` | no |
| [team\_name](#input\_team\_name) | Zero Trust Organization Team Name | `string` | n/a | yes |
| [tunnel\_name](#input\_tunnel\_name) | Name of the SSH Tunnel | `string` | `""` | no |## Outputs
| Name | Description |
|------|-------------|
| [application\_id](#output\_application\_id) | Browser SSH Access Application ID |
| [aud](#output\_aud) | Audience tag for the SSH Access Application |
| [ssh\_cert](#output\_ssh\_cert) | SSH Certificate for the SSH Access Application |
| [tunnel\_cname](#output\_tunnel\_cname) | CNAME for the SSH Tunnel |
| [tunnel\_id](#output\_tunnel\_id) | Tunnel ID |
| [tunnel\_token](#output\_tunnel\_token) | Token for the SSH Tunnel. Needed to connect to the tunnel. |