Skip to content
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

feat: introduce request forwarder abstraction and security improvements #20

Open
wants to merge 13 commits into
base: main
Choose a base branch
from

Conversation

valdo404
Copy link
Owner

This PR introduces a new forwarder abstraction for handling HTTP requests in the proxy server and removes sensitive files.

Changes:

  • Add Forwarder trait for abstracting request forwarding logic
  • Implement DirectForwarder for direct request handling
  • Add initial structure for ProxyForwarder (to be implemented)
  • Clean up unused imports and fix compilation issues
  • Remove certificates from git history and add patterns to .gitignore for security

Security:

  • Removed certificates from git history using git filter-branch
  • Added *.crt, *.key, and *.pem patterns to .gitignore
  • Force pushed changes to ensure certificates are completely removed from history

This change will make it easier to add different forwarding strategies in the future, such as proxy support, load balancing, or custom request handling, while maintaining proper security practices.

Laurent Valdes added 13 commits February 1, 2025 00:18
- Add --proxy flag to specify upstream proxy
- Implement proxy forwarding in ProxyForwarder
- Fix request body handling with ByteStreamBody
- Clean up and simplify proxy implementation
- Add basic tests for proxy forwarding
- Add hyper-tls dependency for HTTPS support
- Configure HttpsConnector for TLS connections
- Preserve original scheme when rewriting requests
- Clean up imports and dependencies
- Add --insecure flag to skip TLS verification for self-signed certs
- Update ProxyForwarder to use HttpsConnector for proxy connections
- Add idle timeout for proxy connections
- Pass insecure flag through run_http_server
- Rename proxy to upstream_proxy
- Rename insecure to upstream_insecure
- Handle CONNECT requests separately
- Keep original absolute URIs
- Fix URI handling for non-absolute URIs
- Clean up imports
- Add hyper-http-proxy dependency
- Replace custom proxy implementation with ProxyConnector
- Simplify request handling using dedicated proxy toolkit
- Clean up imports and unused code
- Add proxy configuration to HTTPS server
- Pass proxy settings to both HTTP and HTTPS servers
- Fix main function to handle proxy configuration correctly
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant