Coder Social home page Coder Social logo

a1383n / secure-proxy Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 1 MB

SecureProxy is an easy-to-use DNS solution for accessing restricted websites. With whitelist capabilities and simple setup, it ensures secure, unrestricted browsing on any device. Ideal for entry-level users, it bypasses censorship for safe, open internet access.

License: MIT License

PHP 80.42% JavaScript 0.15% Blade 18.66% Dockerfile 0.45% Shell 0.33%
laravel laravel-framework php

secure-proxy's Introduction

SecureProxy

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

The responsibility for using this program lies with the user. In some countries, including Iran, using proxies to bypass internet censorship is illegal. Users must ensure their use of this program complies with all applicable laws.

Components

SecureProxy is built on a microservice architecture, where different components work independently yet cohesively:

  • Laravel Application: Acts as the central API and admin panel.

Dependencies

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.

Features

  • 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.

How It Works

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.

Virtualized Workflow

  1. 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.
  2. 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.

Prerequisites

  • Docker
  • Docker Compose
  • Git

Deployment

To deploy SecureProxy using Docker Compose, follow these steps:

  1. Clone the Repository:

    git clone https://github.com/a1383n/secure-proxy.git
    cd secure-proxy
  2. 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.

  3. Build and Start the Containers:

    docker-compose up -d

Creating a Fillament User

To create a Fillament user, follow these steps:

  1. Enter the Application Container:

    docker-compose exec app bash
  2. Run the Fillament User Creation Command:

    php artisan make:fillament-user
  3. Follow the Prompts: Provide the necessary information as prompted.

Database Seeding

To seed the database with initial data:

  1. Enter the Application Container:

    docker-compose exec app bash
  2. Run the Seeder:

    php artisan db:seed

Usage

Once deployed, see http://127.0.0.1:8000

License

SecureProxy is licensed under the MIT License. See the LICENSE file for details.

secure-proxy's People

Contributors

a1383n avatar dependabot[bot] avatar github-actions[bot] avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.