Commit Graph

214 Commits

Author SHA1 Message Date
Brian Picciano
dcbf45ec85 Allow for disabling https for proxied domains 2023-08-03 14:58:49 +02:00
Brian Picciano
7a1a2297d4 Move proxy config into domain (bigger change than it sounds like) 2023-08-03 14:14:51 +02:00
Brian Picciano
b44fd575a9 Rename primary_domain to interface_domain, and make it optional 2023-08-03 11:18:31 +02:00
Brian Picciano
e67cd6725a Return all domains from all_domains
This fixes an issue where the domain manager sync job wouldn't have
synced private builtin domains ever.
2023-08-03 10:29:57 +02:00
Brian Picciano
7f8e40c19f Fixed tests for git and acme::store 2023-08-03 10:02:03 +02:00
Brian Picciano
337f3c9cef Do cert syncing within domain manager 2023-08-02 19:59:05 +02:00
Brian Picciano
96b38f2c97 Support for gemini fully fleshed out 2023-08-01 16:44:16 +02:00
Brian Picciano
d429b51cf8 Fix self-signed cert generation, not_before is required apparently 2023-07-31 20:48:00 +02:00
Brian Picciano
8a530d4f7d Fix static file index.gmi 2023-07-31 20:47:14 +02:00
Brian Picciano
5a15f07872 Include builtins in origin syncing 2023-07-27 16:43:09 +02:00
Brian Picciano
24e4dc42b1 Add static directory, useful for testing 2023-07-27 16:42:19 +02:00
Brian Picciano
795817f99d Implement gemini cert store 2023-07-27 16:09:44 +02:00
Brian Picciano
4c1f843048 Move Certificate and PrivateKey into their own tls module 2023-07-27 14:29:04 +02:00
Brian Picciano
7a9ae81376 rename sync_cert to sync_https_cert 2023-07-27 14:12:22 +02:00
Brian Picciano
ef8c5827a0 Include template dev config file, ignore the one actually being used 2023-07-27 14:08:43 +02:00
Brian Picciano
cdd0eacdd8 Update gemini proxying according to feedback from the tokio_rustls issue 2023-07-27 12:50:56 +02:00
Brian Picciano
c1659fab2a Got gemini proxy working, via a custom tokio_rustls branch 2023-07-24 19:06:01 +02:00
Brian Picciano
c8176c819f Got basic gemini listening working. Proxying does not yet work, nor does serving the origin 2023-07-22 11:31:55 +02:00
Brian Picciano
2d1e237735 A bit of module structure tidying 2023-07-21 14:43:39 +02:00
Brian Picciano
31782be10d Moved http proxy under the service module 2023-07-19 22:36:29 +02:00
Brian Picciano
f7ecafbc17 Rename Proxy descr to HttpProxy 2023-07-19 21:36:57 +02:00
Brian Picciano
b81b59fc0a Get rid of remove_path_prefix, it's not useful 2023-07-19 21:27:03 +02:00
Brian Picciano
188ebaa30b Add add/remove_path_prefix fields to domain settings 2023-07-19 17:38:37 +02:00
Brian Picciano
edadaab792 Remove serve_protocols option for now, it's not useful 2023-07-19 15:24:43 +02:00
Brian Picciano
63f4975d5a Fix deserialization of FlatDomainSettings boolean flags 2023-07-18 19:05:51 +02:00
Brian Picciano
ccd2285b11 Prevent users from seeing proxy config in web interface 2023-07-18 19:00:37 +02:00
Brian Picciano
87c779ebb6 Fix rendering on domain.html 2023-07-18 18:31:36 +02:00
Brian Picciano
7049252787 Support serve_protocols field on domain settings 2023-07-17 20:22:22 +02:00
Brian Picciano
5099f79260 Add ability to add request headers to proxied requests 2023-07-17 16:54:03 +02:00
Brian Picciano
651f3f4bb7 Pass the full domain::Settings into the proxy code 2023-07-17 16:19:25 +02:00
Brian Picciano
8f74757f23 send x-forwarded-proto header from proxy 2023-07-16 17:54:56 +02:00
Brian Picciano
b060cafa8e Fix config to match the README, add proxy to README 2023-07-16 17:43:31 +02:00
Brian Picciano
a917f32f04 Got proxy origin working, more or less 2023-07-16 17:10:13 +02:00
Brian Picciano
9beeffcdcf Revert "Have get_file accept and return structs, which will be easier to extend going forward"
This reverts commit a86020eedf.

Turns out that even with this change proxying won't work properly via
origin::Store, it'll just have to be a special case. I'm keeping the
commit around in case we want this for a later case.
2023-07-16 16:09:37 +02:00
Brian Picciano
4a2ac7460f Initial implementation of proxy module 2023-07-16 16:09:20 +02:00
Brian Picciano
a86020eedf Have get_file accept and return structs, which will be easier to extend going forward 2023-07-16 15:40:20 +02:00
Brian Picciano
c336486f5a Define proxy origin 2023-07-16 15:10:02 +02:00
Brian Picciano
5dd2e756cc Rename domain::Domain to domain::Settings, finished renaming it everywhere 2023-07-16 14:38:48 +02:00
Brian Picciano
5a4ff4ca65 Add secret service.http.form_method field for debugging 2023-07-16 13:55:06 +02:00
Brian Picciano
4483185e75 Add builtin domains to configuration 2023-07-15 19:45:56 +02:00
Brian Picciano
03428cef02 Use an HTTP challenge for ensuring that domains are correctly set up, rather than checking DNS records directly 2023-07-12 20:25:35 +02:00
Brian Picciano
28104f36e1 Add token::MemStore, use it for http01 challenges 2023-07-12 19:01:31 +02:00
Brian Picciano
811aef209a introduce unexpected::Result 2023-07-12 19:01:15 +02:00
Brian Picciano
af1dc183ec Support for CNAME records 2023-07-11 19:16:09 +02:00
Brian Picciano
2693e0eac2 Implement support for AAAA records 2023-07-10 18:23:52 +02:00
Brian Picciano
7d64f44dab Rewrite README with new config file documentation 2023-07-09 17:13:25 +02:00
Brian Picciano
ceb2ba3cf4 Move dns records under service in the config 2023-07-09 16:57:36 +02:00
Brian Picciano
57b56934a9 Switch to using a config file 2023-07-09 16:09:00 +02:00
Brian Picciano
1bc3420930 remove github run dir 2023-07-09 15:34:58 +02:00
Brian Picciano
7c68702ab8 Introduce domain::Config 2023-07-09 15:09:40 +02:00