Sign inSign up

edgd1er/go-socks5-proxy

By edgd1er

Updated 1 day ago

forked from serjs/socks5-server: https://github.com/serjs/socks5-server/

Image
0

100K+

edgd1er/go-socks5-proxy repository overview

go-socks5-proxy

Latest build from master branch

Release tag

Docker Size Docker Pulls Docker Stars ImageLayers

Forked from serjs/socks5-server

Minor changes:

  • check for gh actions deps changes
  • scan for vuln

Simple socks5 server using go-socks5 with authentication, allowed ips list and destination FQDNs filtering

Examples

  • Run docker container using default container port 1080 and expose it to world using host port 1080, with auth creds

    docker run -d --name socks5 -p 1080:1080 -e PROXY_USER=<PROXY_USER> -e PROXY_PASSWORD=<PROXY_PASSWORD> serjs/go-socks5-proxy

    • Leave PROXY_USER and PROXY_PASSWORD empty for skip authentication options while running socks5 server, see example below
  • Run docker container using default container port 1080 and expose it to world using host port 1080, with PROXY_CREDENTIALS multi-user authentication

    docker run -d --name socks5 -p 1080:1080 -e PROXY_CREDENTIALS='[{"username":"TEST_USERNAME","password":"password123"}]' serjs/go-socks5-proxy

List of supported config parameters

ENV variableTypeDefaultDescription
PROXY_USERStringEMPTYSet proxy user (also required existed PROXY_PASS)
PROXY_PASSWORDStringEMPTYSet proxy password for auth, used with PROXY_USER
PROXY_PORTString1080Set listen port for application inside docker container
ALLOWED_DEST_FQDNStringEMPTYAllowed destination address regular expression pattern. Default allows all.
ALLOWED_IPSStringEmptySet allowed IP's that can connect to proxy, separator ,

Build your own image:

docker-compose -f docker-compose.build.yml up -d
Just don't forget to set parameters in the .env file (cp .env.example .env) and edit it with your config parameters

Test running service

Assuming that you are using container on 1080 host docker port

Without authentication

curl --socks5 <docker host ip>:1080 https://ifcfg.co - result must show docker host ip (for bridged network)

or

docker run --rm curlimages/curl:7.65.3 -s --socks5 <docker host ip>:1080 https://ifcfg.co

With authentication

curl --socks5 <docker host ip>:1080 -U <PROXY_USER>:<PROXY_PASSWORD> http://ifcfg.co

or

docker run --rm curlimages/curl:7.65.3 -s --socks5 <PROXY_USER>:<PROXY_PASSWORD>@<docker host ip>:1080 http://ifcfg.co

Authors

  • Sergey Bogayrets

See also the list of contributors who participated in this project.

Tag summary

Content type

Image

Digest

sha256:6358c294a

Size

2 MB

Last updated

1 day ago

docker pull edgd1er/go-socks5-proxy