Set up a $5 socks proxy for Telegram in 5 minutes
Why do I neet it?
Well, actually you don’t… Unless your country is trying to block Telegram, while it is you major communication client for work or for personal usage.
If you’re living in Russia, the connection may be sometimes lost for several minutes. Even so the Telegram developers have done a great job and the connection is pretty stable for the last several days. Thank you guys!
Where
You can get you the cheapest $5 VPS with Ubuntu on board on DigitalOcean
How to set up a proxy in 5 minutes
1. Install the docker engine
You can follow the simple steps from the official documentation
OR
Just enter this code to be short:
# Uninstall old versions
sudo apt-get remove docker docker-engine docker.io containerd runc
# Update the apt package index and install packages to allow apt to use a repository over HTTPS:
sudo apt-get update
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
# Add Docker’s official GPG key and install the repository:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
# Install Docker Engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
2. Set up the dante container
You can use the precreated container for the dante proxy from this github repository.
It will give you a fully configured container with dante socks proxy on board and lets you easily specify a username, password and a port to connect to it.
Clone:
git clone git@github.com:zinovyev/dante-docker.git
cd dante-docker
Configure:
You can change the username, password and port options of this image by editing the part of this Dockerfile where the environment variables are set:
ENV DANTE_USERNAME username
ENV DANTE_PASSWORD password
ENV DANTE_PORT 1080
Build:
docker build -t dante:test .
Run:
Use your remote IP and the port specified in the Dockerfile
docker run -p <your-remote-ip>:<port>:<port> dante:test
Check it out:
Figure out the IP of your running container with help of inspect command:
docker inspect dante-test | grep IPAddress
Supposing that the IP is 172.17.0.2 (remembers to replace IP, username, password and 1080 with your own values):
curl -v -x socks5://username:password@172.17.0.2:1080 https://www.zinovyev.net