JoeProxy is a macOS application designed to act as an SSL/TLS proxy for inspecting and decrypting network traffic. The application facilitates generating SSL certificates, starting and stopping a proxy server, and displaying decrypted network traffic in a user-friendly interface.
- Generate and manage SSL certificates
- Start and stop the proxy server
- Real-time decryption and display of network traffic
- Filtering and logging of requests and responses
- User-friendly UI for managing logs and actions
- macOS
- Homebrew (for installing OpenSSL)
-
Install Homebrew (if not already installed):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
Install OpenSSL using Homebrew:
brew install openssl
-
Ensure the OpenSSL binary is in your PATH:
echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.zshrc source ~/.zshrc
-
Clone the repository:
git clone https://github.com/yourusername/JoeProxy.git cd JoeProxy
-
Open the project in Xcode:
open JoeProxy.xcodeproj
-
Build and run the project in Xcode.
- Open the application.
- Click on the "Actions" menu.
- Select "Generate Certificate".
- Open the application.
- Click on the "Actions" menu.
- Select "Start Server".
- Open the application.
- Click on the "Actions" menu.
- Select "Stop Server".
- Use the text field at the top of the log view to filter logs in real-time.
- Columns can be moved and resized to customize the view.
Run all unit tests to ensure the application is working correctly:
swift test