-
Notifications
You must be signed in to change notification settings - Fork 1
feat: add SSL Bump support for HTTPS content inspection #131
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
💥 WHOOSH! Smoke Claude springs into action on this pull request! [Panel 1 begins...] |
Smoke Test Results (Run #20378121588)PR #111: docs: streamline README for first-time visitors ✅ GitHub MCP Test: PASS Overall: PASS
|
|
Smoke Test Results (Claude Engine) ✅ GitHub MCP: Last 2 merged PRs retrieved
✅ File Writing: Created test file successfully ✅ Bash Tool: File verification passed ❌ Playwright MCP: Page loaded but assets blocked (tunnel connection failures) Overall Status: PARTIAL PASS (3/4 tests passed; Playwright networking issues expected in firewall environment)
|
Test Coverage Report
Coverage ThresholdsThe project has the following coverage thresholds configured:
Coverage report generated by `npm run test:coverage` |
Co-authored-by: Mossaka <[email protected]>
Co-authored-by: Mossaka <[email protected]>
Co-authored-by: Mossaka <[email protected]>
cfd060b to
34b0ec9
Compare
|
@copilot, please address the following issues:
and then because this's a power-user feature, can you add documentation, and make it optional (should not come out of the box and affects perf under default mode)? |
Co-authored-by: Mossaka <[email protected]>
Fixed all three issues in commit af0bc2d:
Also added power-user warnings to documentation and increased SSL certificate cache from 4MB to 16MB per code review feedback. |
- Fix SSL database initialization: security_file_certgen requires the
directory to NOT exist, but Docker volume mounts create it. Now
initSslDb() creates the complete DB structure (certs/, index.txt,
size) directly on the host.
- Simplify entrypoint.sh: Since DB is pre-initialized on host, the
entrypoint only needs to fix permissions for the proxy user.
- Fix Squid config ordering: ACL definitions must appear before
ssl_bump rules that reference them. Moved ${aclSection} before
${sslBumpSection} in the config template.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <[email protected]>
Two issues fixed:
1. URL pattern deny rule was blocking CONNECT requests:
- The deny rule `http_access deny allowed_domains` was evaluated
for CONNECT requests, blocking SSL bump before the URL check
- Added `!CONNECT` to only deny actual HTTP requests after bump
- CONNECT requests now pass through for domain-allowed hosts
2. URL pattern regex escaping was corrupting .* wildcards:
- Input `https://api.github.com/users/.*` was becoming
`^https://api\.github\.com/users/\..*` (incorrect)
- Now preserves .* patterns using placeholder before escaping
- Output is correctly `^https://api\.github\.com/users/.*`
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <[email protected]>
src/ssl-bump.ts- CA generation utilitiessrc/types.ts- Add SSL Bump configuration typessrc/squid-config.ts- Add SSL Bump configurationsrc/docker-manager.ts- Handle CA certificate mountingsrc/cli.ts- Add CLI flags--ssl-bumpand--allow-urlscontainers/squid/Dockerfile- Add OpenSSL toolscontainers/agent/entrypoint.sh- Add CA certificate injectionparseUrlPatterns()to transform user URLs to regex patternshttp_port 3128 ssl-bumpfor explicit proxy)Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.