opentunnel-cli 1.0.23 → 1.0.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +43 -2
  2. package/dist/cli/index.js +722 -85
  3. package/dist/cli/index.js.map +1 -1
  4. package/dist/client/CloudflareTunnelClient.d.ts +110 -0
  5. package/dist/client/CloudflareTunnelClient.d.ts.map +1 -0
  6. package/dist/client/CloudflareTunnelClient.js +531 -0
  7. package/dist/client/CloudflareTunnelClient.js.map +1 -0
  8. package/dist/client/NgrokClient.d.ts +18 -1
  9. package/dist/client/NgrokClient.d.ts.map +1 -1
  10. package/dist/client/NgrokClient.js +130 -4
  11. package/dist/client/NgrokClient.js.map +1 -1
  12. package/dist/client/TunnelClient.d.ts +0 -1
  13. package/dist/client/TunnelClient.d.ts.map +1 -1
  14. package/dist/client/TunnelClient.js +2 -96
  15. package/dist/client/TunnelClient.js.map +1 -1
  16. package/dist/client/index.d.ts +1 -0
  17. package/dist/client/index.d.ts.map +1 -1
  18. package/dist/client/index.js +3 -1
  19. package/dist/client/index.js.map +1 -1
  20. package/dist/index.d.ts +1 -0
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +3 -1
  23. package/dist/index.js.map +1 -1
  24. package/dist/lib/index.d.ts +2 -0
  25. package/dist/lib/index.d.ts.map +1 -0
  26. package/dist/lib/index.js +18 -0
  27. package/dist/lib/index.js.map +1 -0
  28. package/dist/lib/pages/index.d.ts +2 -0
  29. package/dist/lib/pages/index.d.ts.map +1 -0
  30. package/dist/lib/pages/index.js +6 -0
  31. package/dist/lib/pages/index.js.map +1 -0
  32. package/dist/lib/pages/not-running.d.ts +10 -0
  33. package/dist/lib/pages/not-running.d.ts.map +1 -0
  34. package/dist/lib/pages/not-running.js +117 -0
  35. package/dist/lib/pages/not-running.js.map +1 -0
  36. package/dist/server/TunnelServer.d.ts +1 -3
  37. package/dist/server/TunnelServer.d.ts.map +1 -1
  38. package/dist/server/TunnelServer.js +7 -58
  39. package/dist/server/TunnelServer.js.map +1 -1
  40. package/dist/shared/credentials.d.ts +101 -0
  41. package/dist/shared/credentials.d.ts.map +1 -0
  42. package/dist/shared/credentials.js +302 -0
  43. package/dist/shared/credentials.js.map +1 -0
  44. package/dist/shared/ip-filter.d.ts +75 -0
  45. package/dist/shared/ip-filter.d.ts.map +1 -0
  46. package/dist/shared/ip-filter.js +203 -0
  47. package/dist/shared/ip-filter.js.map +1 -0
  48. package/dist/shared/types.d.ts +34 -0
  49. package/dist/shared/types.d.ts.map +1 -1
  50. package/package.json +6 -3
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  <h1 align="center">OpenTunnel</h1>
2
2
 
3
- <p align="center">Self-hosted alternative to ngrok. Expose local services to the internet with custom subdomains.</p>
3
+ <p align="center">Self-hosted alternative to ngrok. Expose local services to the internet with custom subdomains, or use ngrok/Cloudflare Tunnel.</p>
4
4
 
5
5
  ---
6
6
 
@@ -38,6 +38,9 @@ opentunnel server -d --domain example.com --letsencrypt --email admin@example.co
38
38
 
39
39
  # Private server (with auth)
40
40
  opentunnel server -d --domain example.com --letsencrypt --email admin@example.com --auth-tokens "SECRET"
41
+
42
+ # Custom port (if 8080/443 is occupied)
43
+ opentunnel server -d --domain example.com --port 8443 --letsencrypt --email admin@example.com --auth-tokens "SECRET"
41
44
  ```
42
45
 
43
46
  **DNS Setup:** Point `op.example.com` and `*.op.example.com` to your server IP.
@@ -54,6 +57,42 @@ opentunnel setdomain yourdomain.com
54
57
  opentunnel expl 3000
55
58
  ```
56
59
 
60
+ ### Using ngrok or Cloudflare Tunnel
61
+
62
+ Don't have a server? Use third-party tunnel providers:
63
+
64
+ ```bash
65
+ # With Cloudflare Tunnel (free, no account needed for quick tunnels)
66
+ opentunnel http 3000 --cloudflare
67
+ opentunnel http 3000 --cf
68
+
69
+ # With ngrok
70
+ opentunnel http 3000 --ngrok
71
+ opentunnel http 3000 --ngrok --region eu
72
+ ```
73
+
74
+ ### Authentication & Named Tunnels
75
+
76
+ Store credentials securely and manage Cloudflare named tunnels:
77
+
78
+ ```bash
79
+ # Login to providers
80
+ opentunnel login cloudflare # Opens browser for OAuth
81
+ opentunnel login ngrok --token YOUR_TOKEN
82
+
83
+ # Create and manage named tunnels
84
+ opentunnel create my-tunnel --cf
85
+ opentunnel tunnels --cf
86
+ opentunnel route my-tunnel app.example.com
87
+ opentunnel delete my-tunnel --cf
88
+
89
+ # Use named tunnel with -n flag
90
+ opentunnel http 3000 --cf -n my-tunnel
91
+
92
+ # View stored credentials
93
+ opentunnel config list
94
+ ```
95
+
57
96
  ---
58
97
 
59
98
  ## Documentation
@@ -64,12 +103,14 @@ opentunnel expl 3000
64
103
  | [Server Guide](docs/server-guide.md) | Server deployment and configuration |
65
104
  | [Commands Reference](docs/commands.md) | All CLI commands and options |
66
105
  | [Configuration File](docs/configuration.md) | opentunnel.yml reference |
106
+ | [Troubleshooting](docs/troubleshooting.md) | Common issues and solutions |
67
107
  | [Home Use Guide](docs/home-use-guide.md) | Running from home with port forwarding |
68
108
  | [Domain Setup](docs/domain-setup.md) | DNS and SSL configuration |
69
109
  | [DuckDNS & Free DNS](docs/duckdns-setup.md) | Free DNS services setup |
110
+ | [Cloudflare Tunnel](docs/cloudflare-tunnel.md) | Cloudflare Tunnel & named tunnels |
70
111
  | [Multi-Domain](docs/multi-domain.md) | Multiple domains on one server |
71
112
  | [Authentication](docs/authentication.md) | Token-based authentication |
72
- | [IP Access Control](docs/ip-access-control.md) | Allow/deny IP ranges |
113
+ | [IP Access Control](docs/ip-access-control.md) | Allow/deny IP ranges (cross-provider) |
73
114
  | [Firewall (Dymo API)](docs/firewall-dymo-api.md) | Fraud detection and bot protection |
74
115
 
75
116
  ---