Skip to main content

Python Socks5 Proxy Server

Allows users to run a Proxy5 server on thier own local computer, implemented using sockets.


Installation

Running the following to install:

pip install makiproxy5

Usage

if __name__ == "__main__":
	ps = ProxyServer(host=None, port=10696, username=None, password=None, max_clients=3, secure=True)
	ps.run()
  • host : This is the current local IP of the devices, this will be automatically so can be left blank.
  • port : State the local port you want to clients to use when connecting to the proxy server.
  • username : Set allowed username that can access the proxy server during authentication.
  • password : Corresponding password required for username during authentication.
  • max_client : Allow a maximum of x concurrent connections to the proxy server.
  • secure : Disables no authentication method, so all users must provide username/pass to connect.

Example

Example usage for initializing proxy server.

ProxyServer(username="maki", password="password", port=10696, secure=True).run()

Client Connection Options:

There are many ways to use this server, I will mention a few for aid.


Journey and Motivation

I wanted to watch UK TV shows that weren't available while abroad so decided to make a proxy server running on a raspberry pi so that I could watch free of charge and effortlessly.

Of course I could of just bought a monthly subscription to a VPN service or a proxy for a month, but what's the fun in that? I wanted to challenge myself, learn more about things I depend on instead of just using it.

I started my journey by looking at RFC for proxy5 protocol, and inspecting wireshark for proxy server running in practical way, so I could implement it myself.

Inspecting using Wireshark.


Michael Peres 22/07/2022

End

Metadata

Release files for makiproxy5 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for makiproxy5 0.0.1
File Size Uploaded
makiproxy5-0.0.1.tar.gz 20.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for makiproxy5 0.0.1
File Interpreter ABI Platform
makiproxy5-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 41.1 kB

Release files / makiproxy5-0.0.1.tar.gz

Download URL makiproxy5-0.0.1.tar.gz
Size 20.3 kB
Tags Source
SHA-256 checksum
How to use checksums
b33d335c48254c3d13f0a86213a8478e1e3dd0612da29ee467b3fe259bb47d0b
BLAKE2b-256 checksum
How to use checksums
9ae5ab49dd4da3d86637358cc175074c371ebc0e9d0cc697b14615c708e98b5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.3

Release files / makiproxy5-0.0.1-py3-none-any.whl

Download URL makiproxy5-0.0.1-py3-none-any.whl
Size 20.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ebf656ec9f3d91722f51e85c0a83878b1e27532cbc6a9d71697defd727678ba4
BLAKE2b-256 checksum
How to use checksums
af2397d51212f2172e7ceb013bf3c84881fc5d674a6909df866836abd87d9a3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.3

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page