diff --git a/README.md b/README.md index 6fa7e57..79bfca0 100644 --- a/README.md +++ b/README.md @@ -3,21 +3,21 @@ ![Latest tag from master branch](https://github.com/serjs/socks5-server/workflows/Latest%20tag%20from%20master%20branch/badge.svg) ![Release tag](https://github.com/serjs/socks5-server/workflows/Release%20tag/badge.svg) -Simple socks5 server using go-socks5 with authentication options +Simple socks5 server using go-socks5 with authentication, allowed ips list and destination FQDNs filtering -## Start container with proxy +# Examples -``` -docker run -d --name socks5 -p 1080:1080 \ - -e PROXY_USER= \ - -e PROXY_PASSWORD= \ - -e ALLOWED_DEST_FQDN= \ - serjs/go-socks5-proxy -``` +- Run docker container using default container port 1080 and expose it to world using host port 1080, with auth creds -Leave `PROXY_USER` and `PROXY_PASSWORD` empty for skip authentication options while running socks5 server. + ```docker run -d --name socks5 -p 1080:1080 -e PROXY_USER= -e PROXY_PASSWORD= serjs/go-socks5-proxy``` -## List of all supported config parameters + - Leave `PROXY_USER` and `PROXY_PASSWORD` empty for skip authentication options while running socks5 server, see example below + +- Run docker container using specifit container port and expose it to host port 1090, without auth creds + + ```docker run -d --name socks5 -p 1090:9090 -e PROXY_PORT=9090 serjs/go-socks5-proxy``` + +# List of supported config parameters |ENV variable|Type|Default|Description| |------------|----|-------|-----------| @@ -25,25 +25,26 @@ Leave `PROXY_USER` and `PROXY_PASSWORD` empty for skip authentication options wh |PROXY_PASSWORD|String|EMPTY|Set proxy password for auth, used with PROXY_USER| |PROXY_PORT|String|1080|Set listen port for application inside docker container| |ALLOWED_DEST_FQDN|String|EMPTY|Allowed destination address regular expression pattern. Default allows all.| -|TZ|String|UTC|Set Timezone like in many common Operation Systems| |ALLOWED_IPS|String|Empty|Set allowed IP's that can connect to proxy, separator `,`| -`ALLOWED_IPS` parameter is not included in `serjs/go-socks5-proxy` image.\ -You can build your image with: + +# Build your own image: `docker-compose -f docker-compose.build.yml up -d`\ Just don't forget to set parameters in the `.env` file. -## Test running service +# Test running service -Without authentication +Assuming that you are using container on 1080 host docker port -```curl --socks5 :1080 http://ifcfg.co``` - result must show docker host ip (for bridged network) +## Without authentication + +```curl --socks5 :1080 https://ifcfg.co``` - result must show docker host ip (for bridged network) or -```docker run --rm curlimages/curl:7.65.3 -s --socks5 :1080 http://ifcfg.co``` +```docker run --rm curlimages/curl:7.65.3 -s --socks5 :1080 https://ifcfg.co``` -With authentication - result must show docker host ip (for bridged network) +## With authentication ```curl --socks5 :1080 -U : http://ifcfg.co``` @@ -51,7 +52,7 @@ or ```docker run --rm curlimages/curl:7.65.3 -s --socks5 :@:1080 http://ifcfg.co``` -## Authors +# Authors * **Sergey Bogayrets**