Commit Graph

382 Commits

Author SHA1 Message Date
Anders Pitman
967099e3a1 Implement deleting waygates 2022-03-13 18:03:30 -06:00
Anders Pitman
c91b322a23 Implement Waygate web UI
Moved from waygate library to handle inside boringproxy.
2022-03-13 17:25:09 -06:00
Anders Pitman
31e48bf2e7 Add waygates.tmpl 2022-03-11 12:08:17 -07:00
Anders Pitman
b7438a05bd Add /waygates page 2022-03-10 19:39:47 -07:00
Anders Pitman
bd186fb331 Merge branch 'master' into implement-waygate 2022-03-09 12:21:35 -07:00
Anders Pitman
ebf114e182 Fix bug when creating client tokens
It was using the user that made the request as the user to get
the list of clients from, which meant for example if an admin made
the request, you were limited to the names of clients that the
admin also used.
2022-03-09 12:19:44 -07:00
Anders Pitman
91f8ccbd6f Implement adding non-wildcard domains 2022-03-09 11:48:02 -07:00
Anders Pitman
2f89820589 Improve dual stack handling
Now creates both A and AAAA records, and checks added domains
for both IPv4 and IPv6.
2022-03-09 11:42:06 -07:00
Anders Pitman
951fa52c81 Move /waygate/authorized into waygate library 2022-03-08 11:23:19 -07:00
Anders Pitman
42cbf1abe2 Move /waygate/authorize into waygate library 2022-03-08 11:11:03 -07:00
Anders Pitman
da4b2d1035 Merge branch 'master' into implement-waygate 2022-03-07 13:23:12 -07:00
Anders Pitman
c583e1409b Update issue templates 2022-03-07 13:22:27 -07:00
Anders Pitman
f39d9be54f Implement DNS record verification
Checks to make sure DNS indicates an A/AAAA record matching the
public IP address of the server before allowing the domain name
to be added.

Uses a random host to verify wildcard domains.

Might be more robust to actually communicate with the
authoritative servers, or check from multiple geo locations, but
this is probably fine for now and maybe forever.
2022-03-07 13:10:11 -07:00
Anders Pitman
9c6ee1134c Verify waygate domains aren't already taken 2022-03-07 12:10:46 -07:00
Anders Pitman
3687aa25b5 Rename AddWaygateTunnel to AddWaygate 2022-03-07 12:05:05 -07:00
Anders Pitman
1215162f49 Implement using actual domain list for waygates 2022-03-07 12:02:12 -07:00
Anders Pitman
4d8b9aeaae Implement managing domains 2022-03-06 15:09:09 -07:00
Anders Pitman
1832e99e22 Improve waygate names some more 2022-03-04 14:00:04 -07:00
Anders Pitman
6e970434fc Rename WaygateTunnel to Waygate 2022-03-04 13:07:49 -07:00
Anders Pitman
31e2eb2687 Rename some things 2022-03-04 13:02:48 -07:00
Anders Pitman
29074f9cd0 Rename talisman to token 2022-03-04 12:49:03 -07:00
Anders Pitman
5d1be78478 Implement GET for /api/users and /api/tokens 2022-03-04 11:45:36 -07:00
Anders Pitman
c1c0f6d239 Delete oauth codes after use 2022-03-03 14:25:55 -07:00
Anders Pitman
ec4e24d913 Implement waygate authorization grant flow 2022-03-03 14:01:39 -07:00
Anders Pitman
f232e1db24 Merge branch 'master' into oauth2 2022-03-01 15:41:30 -07:00
Anders Pitman
2e0ff06c33 Merge pull request #170 from WGrobler/update-upstream
Minor code fixes/updates
2022-03-01 15:41:14 -07:00
Anders Pitman
608b93a6c9 Basic working waygate client 2022-03-01 13:39:54 -07:00
Anders Pitman
e11e03c8d2 First draft of Waygate implementation 2022-02-25 14:28:33 -07:00
Anders Pitman
a602c6cfa7 Merge branch 'master' into oauth2 2022-02-25 11:26:57 -07:00
Willem@105.pve1.lan
27c6c811a5 fixed printLoginInfo not displaying correct ports 2022-02-25 08:34:04 +02:00
Willem Grobler
a7fccf99ff Merge branch 'boringproxy:master' into update-upstream 2022-02-25 07:46:42 +02:00
Willem@105.pve1.lan
0e135126f4 open tunnel domain in new tab 2022-02-25 07:45:07 +02:00
Anders Pitman
da7396dc31 Remove print 2022-02-24 14:51:28 -07:00
Anders Pitman
c7a5131420 Merge pull request #169 from boringproxy/client-override-ssh-port
Implement overriding SSH server per tunnel
2022-02-24 14:35:41 -07:00
Anders Pitman
f880512e4b Merge pull request #168 from boringproxy/server-tls
Implement raw server TLS tunnels
2022-02-24 14:35:30 -07:00
Anders Pitman
dcb06497ad Implement overriding SSH server per tunnel
This lets you use a proxy for connecting to the SSH server, which
is useful on networks that block SSH/port 22. For example you can
use the boringproxy tuntls command to create a proxy that will
tunnel the client's SSH connections over TLS to the server.

It's all very meta and forces at least double encryption, but it
could be useful.
2022-02-24 14:33:13 -07:00
Anders Pitman
197e202d69 Implement raw server TLS tunnels
Also cleaned up things a bit by moving the ProxyTcp logic into
a separate file and sharing it between the client and server.
2022-02-24 14:12:09 -07:00
Anders Pitman
3350d12c0e Merge pull request #166 from boringproxy/add-tuntls-command
Add tuntls command
2022-02-24 11:40:51 -07:00
Anders Pitman
2547cb2b34 Add tuntls command
When used in conjunction with raw Client TLS termination, allows
wrapping plain TCP in TLS with SNI routing. Supports both
stdin/stdout (useful for things like ssh ProxyCommand) and
listening on a local port and forwarding all connections to that
port.
2022-02-24 11:38:57 -07:00
Willem@105.pve1.lan
60ba341205 print web UI token (fix after v0.9.0 changes) 2022-02-24 18:57:14 +02:00
Anders Pitman
41f41aaf13 Merge pull request #164 from boringproxy/fix-client-tls-bug
Fix client TLS bug
2022-02-23 17:32:34 -07:00
Anders Pitman
3b639adec8 Fix client TLS bug
Wasn't properly handling the ACME protocol for raw TLS tunnels.
2022-02-23 17:30:02 -07:00
Anders Pitman
cc13336047 Merge branch 'master' into oauth2 2022-02-23 09:09:10 -07:00
Anders Pitman
23846951d3 Merge pull request #162 from WGrobler/docker-server
accept-ca-terms
2022-02-23 08:52:27 -07:00
Willem@105.pve1.lan
58a2727f84 accept-ca-terms 2022-02-23 12:33:36 +02:00
Anders Pitman
38cbc3ea80 Merge branch 'master' into oauth2 2022-02-22 11:55:05 -07:00
Anders Pitman
d90342bd60 Merge pull request #160 from dmahmalat/db-dir-flag
Add db-dir to specify where to save boringproxy_db.json
2022-02-22 11:52:50 -07:00
Anders Pitman
17d432dc13 Merge pull request #159 from dmahmalat/acme-email-server-flag
Add acme-email flag to server to avoid manual prompt
2022-02-22 11:51:43 -07:00
Anders Pitman
0211618ac5 Rename borehole to waygate 2022-02-21 13:19:47 -07:00
Dany Mahmalat
32d2ef14ee Add db-dir to specify where to save boringproxy_db.json 2022-02-21 14:32:31 -05:00