Repository navigation
DRU-1110 -- Let the secrets proxy reach named private networks - #94
Merged
Merged
Conversation
czpython
force-pushed
the
claude/dru-1110-proxy-private-networks-11edb1
branch
from
November 8, 2026 19:09
ab5bf16 to
c9cab91
Compare
The proxy refused every destination that is not public. A box had no way to reach a server on a private network through it, such as an on-prem model server. The proxy now reads SECRETS_PROXY_PRIVATE_NETWORKS, a comma-separated list of CIDRs, into its private_networks option. An address inside a named network is reachable for CONNECT, for plain HTTP, and for the upstream connect. The list is empty by default, so an install that does not set it does not change. Loopback stays refused inside a named network, because the exchange listens there, and so does the unspecified address, which connects to loopback. An invalid CIDR stops the proxy at start. Upstream CA trust stays with mitmproxy's own ssl_verify_upstream_trusted_ca option. The deploy, security, and architecture docs name the setting. The proxy test file drops a one-caller helper and an unused argument, as the checklist asks of a touched file.
czpython
force-pushed
the
claude/dru-1110-proxy-private-networks-11edb1
branch
from
November 9, 2026 10:50
c9cab91 to
dac1fab
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The secrets proxy refused every destination that is not public. A box had no way to reach a server on a private network through it, such as an on-prem model server.
SECRETS_PROXY_PRIVATE_NETWORKS, a comma-separated list of CIDRs, into itsprivate_networksoption. It reads the variable the same way asSECRETS_EXCHANGE_URL, so the imageCMDdoes not change.Swap.can_reachaccepts an address inside a named network. CONNECT, plain HTTP, and the upstream connect resolve the host, then ask it, so they follow this one rule.0.0.0.0, which connects to loopback. Multicast stays refused.172.17.0.1/16, makes mitmproxy exit at start.ssl_verify_upstream_trusted_caoption. This change adds no CA setting.Checks
uv run ruff check,uv run ruff format --check: passuv run pyright src/secrets_exchange/tests/test_swap.py: 0 errorsdruks-house-rules check --base origin/main(v0.0.5): passuv run pytest src/secrets_exchange/tests/test_swap.py: 59 passed. CI runs the full suite.