This project is a cross-platform proxy server application designed to handle network traffic. It includes features such as domain and IP blocking and provides a graphical user interface for ease of management.
- Cross-platform Support: Runs on Linux, macOS, and Windows.
- Domain and IP Blocking: Configurable lists for blocking unwanted traffic.
- HTTP Parsing: Efficient parsing of HTTP requests and responses.
- Graphical Interface: User-friendly GUI built with Raylib for managing settings.
Proxy-Project/
├── README.md
├── makefile
├── proxy
├── asset/
│ ├── Consolas.ttf
│ ├── blocked_domains.txt
│ ├── blocked_ips.txt
│ ├── instruction.txt
│ └── project-creator.txt
├── include/
│ ├── gui.h
│ ├── common_lib.h
│ ├── cross_platform.h
│ ├── domain_process.h
│ ├── http_parser.h
│ ├── netinc.h
│ ├── proxy.h
│ ├── raylib.h
│ ├── raymath.h
│ └── rlgl.h
├── lib/
│ ├── Linux/
│ │ └── libraylib.a
│ ├── MacOS/
│ │ └── libraylib.dylib
│ └── Window/
│ └── libraylib.a
└── src/
├── gui.cpp
├── domain_process.cpp
├── http_parser.cpp
├── main.cpp
├── netimpl.cpp
└── proxy.cpp
- Development Tools:
- GCC or Clang for Linux, MacOS
- MinGW for Windows
- Dependencies:
- Raylib (included in the
lib/folder).
- Raylib (included in the
-
Clone the Repository:
git clone https://github.com/NgTrongDoanh/Proxy-Project.git cd Proxy-Project -
Build the Application: Run the provided
makefile:make
-
Run the Proxy Server:
./proxy
- Blocking Settings:
Edit the files in the
asset/directory:blocked_domains.txt: Add domains to block, one per line.blocked_ips.txt: Add IPs to block, one per line.
Feel free to submit pull requests or report issues. Contributions are always welcome!
- Developed using Raylib for graphical interface.
- Special thanks to the contributors and the open-source community.
Dự án này là một ứng dụng máy chủ proxy đa nền tảng được thiết kế để xử lý lưu lượng mạng. Nó bao gồm các tính năng như chặn tên miền và IP, đồng thời cung cấp giao diện người dùng đồ họa để quản lý dễ dàng.
- Hỗ trợ đa nền tảng: Chạy trên Linux, macOS và Windows.
- Chặn tên miền và IP: Danh sách cấu hình để chặn lưu lượng không mong muốn.
- Phân tích HTTP: Phân tích hiệu quả các yêu cầu và phản hồi HTTP.
- Giao diện đồ họa: Giao diện người dùng thân thiện được xây dựng bằng Raylib để quản lý các cài đặt.
Proxy-Project/
├── README.md
├── makefile
├── proxy
├── asset/
│ ├── Consolas.ttf
│ ├── blocked_domains.txt
│ ├── blocked_ips.txt
│ ├── instruction.txt
│ └── project-creator.txt
├── include/
│ ├── gui.h
│ ├── common_lib.h
│ ├── cross_platform.h
│ ├── domain_process.h
│ ├── http_parser.h
│ ├── netinc.h
│ ├── proxy.h
│ ├── raylib.h
│ ├── raymath.h
│ └── rlgl.h
├── lib/
│ ├── Linux/
│ │ └── libraylib.a
│ ├── MacOS/
│ │ └── libraylib.dylib
│ └── Window/
│ └── libraylib.a
└── src/
├── gui.cpp
├── domain_process.cpp
├── http_parser.cpp
├── main.cpp
├── netimpl.cpp
└── proxy.cpp
- Công cụ phát triển:
- GCC hoặc Clang cho Linux, MacOS
- MinGW cho Windows
- Phụ thuộc:
- Raylib (đã bao gồm trong thư mục
lib/).
- Raylib (đã bao gồm trong thư mục
-
Sao chép kho lưu trữ:
git clone https://github.com/NgTrongDoanh/Proxy-Project.git cd Proxy-Project -
Xây dựng ứng dụng: Chạy
makefileđã cung cấp:make
-
Chạy máy chủ proxy:
./proxy
- Cài đặt chặn:
Chỉnh sửa các tệp trong thư mục
asset/:blocked_domains.txt: Thêm các tên miền để chặn, mỗi tên miền một dòng.blocked_ips.txt: Thêm các IP để chặn, mỗi IP một dòng.
Hãy gửi pull request hoặc báo cáo lỗi. Luôn hoan nghênh các đóng góp!
- Được phát triển bằng Raylib cho giao diện đồ họa.
- Đặc biệt cảm ơn các nhà đóng góp và cộng đồng mã nguồn mở.
- Nguyễn Trọng Doanh
- Lê Văn Trường
- Nguyễn Lê Khánh# Proxy-Project