SecureProxy is an easy-to-use DNS solution designed to help users access restricted websites securely and efficiently. With its whitelist capabilities and simple setup process, SecureProxy ensures secure and unrestricted browsing on any device. Ideal for entry-level users, this solution bypasses censorship and provides safe, open internet access.
Caution
SecureProxy is built on a microservice architecture, where different components work independently yet cohesively:
- Laravel Application: Acts as the central API and admin panel.
SecureProxy integrates with the following components for enhanced functionality:
- DNS Server: Interacts with the Laravel API to resolve domain names.
- Proxy Server: Routes traffic through the SecureProxy API for unrestricted access.
- Easy Setup: Quick and simple configuration process.
- Whitelist Capabilities: Control access to specific websites.
- Secure Browsing: Ensures safe and private internet access.
- Cross-Device Compatibility: Works on any device with internet access.
- Admin Panel: Central management through a Laravel-based admin panel.
SecureProxy operates as a central API within a microservice framework. It interacts with both DNS servers and proxy servers to manage and route traffic. The Laravel application serves as the backbone, providing an admin panel for configuration and monitoring.
-
DNS Request Handling:
- A client requests the resolution of a domain name.
- The DNS server sends the client's IP address and the requested domain to the SecureProxy API.
- The SecureProxy API checks if the domain and client IP pass the configured filters:
- If the domain and client IP pass the filters: The API responds with the IP address of the proxy server instead of the real IP.
- If the domain and client IP do not pass the filters: The API responds with the real IP address of the domain.
-
Proxy Request Handling:
- When the client receives the proxy server IP, it attempts to connect to the requested domain through the proxy server.
- The proxy server sends the client's IP address and the requested domain to the SecureProxy API.
- The SecureProxy API verifies the request:
- If the request passes verification: The proxy server routes the traffic to the intended destination, ensuring secure and unrestricted access.
- If the request does not pass verification: The proxy server denies the request.
This process ensures that only authorized traffic is routed through the proxy, providing a secure and controlled browsing experience.
- Docker
- Docker Compose
- Git
To deploy SecureProxy using Docker Compose, follow these steps:
-
Clone the Repository:
git clone https://github.com/a1383n/secure-proxy.git cd secure-proxy
-
Configure Environment Variables: Create a
.env
file in the project root and configure your environment variables as needed. You can use the provided.env.example
as a template. -
Build and Start the Containers:
docker-compose up -d
To create a Fillament user, follow these steps:
-
Enter the Application Container:
docker-compose exec app bash
-
Run the Fillament User Creation Command:
php artisan make:fillament-user
-
Follow the Prompts: Provide the necessary information as prompted.
To seed the database with initial data:
-
Enter the Application Container:
docker-compose exec app bash
-
Run the Seeder:
php artisan db:seed
Once deployed, see http://127.0.0.1:8000
SecureProxy is licensed under the MIT License. See the LICENSE file for details.