Но иногда, VPN требует установить специальное клиентское программное обеспечение на персональный компьютер или на смартфон, на что у Вас может не быть достаточно прав. В таком случае можно воспользоваться бесплатной альтернативой прокси-туннель SOCKS 5.
В этой статье мы рассмотрим как его установить в Docker контейнере, используя так же docker-compose.
Установим Docker.
Но для начала, нужно обновить пакеты ОС. apt update
Установим необходимые пакеты, и добавим новый репозиторий:apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Обновим пакеты с новым репозиторием:
apt update
Теперь установим сам Docker.apt-get install docker-ce docker-ce-cli containerd.io
Проверим версию:docker --version
Проверим статус:
systemctl status docker
Если он не запустился, то запускаем:
systemctl start docker
И добавляем в автозапуск.
systemctl enable docker
Установим Docker-Compose
Для данного проекта нам будет достаточно версии 1.25.
curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Устанавливаем права на запуск. chmod +x /usr/local/bin/docker-compose
Проверяем как установился Docker-Compose:docker-compose --version
Добавляем пользователя Linux в группу docker:
usermod -aG docker $USER
Создадим файл *.yaml для Docker-Compose.
Что бы ориентироваться в будущем в том что у нас установлено, создадим отдельную папку для данного проекта в каталоге /home и перейдем в него.
mkdir /home/socks5 && cd /home/socks5
Вы так же можете использовать другую директорию для размещения этого и других проектов.
Воспользуемся репозиторием для создания файла docker-compose.yaml по ссылке https://hub.docker.com/r/xkuma/socks5
Создаем файл docker-compose.yaml или docker-compose.yml,
vim docker-compose.yaml
И добавляем в него следующий код:
version: "2.1"
services:
socks5:
image: olebedev/socks5
container_name: socks5_test
environment:
- PROXY_USER=your_user
- PROXY_PASSWORD=your_pass
ports:
- 1080:1080/tcp
restart: always
Где:
container_name: название Вашего контейнера;
PROXY_USER: пользователь;
PROXY_PASSWORD: пароль к пользователю
1080:1080/tcp: порт на котором будет работать SOCKS.
Запускаем скрипт (для этого нужно находиться в директории где создан наш файл. В данном случае это /home/socks5/):
docker-compose up -d
Дожидаемся скачивания образов, и развертывания.
Проверяем:
docker-compose ps
или
docker ps
Так же это можно сделать одной командой без использования docker compose.
docker run -d -p 1080:1080 -e PROXY_USER=your_user -e PROXY_PASSWORD=your_pass -e PROXY_SERVER=0.0.0.0:1080 xkuma/socks5
Теперь для подключения можете использовать логин и пароль с портом и IP Вашего сервера.
Что бы проверить и убедиться все ли верно настроено, можем воспользоваться ниже приведенной командой на другом сервере:
curl --socks5 your_user:[email protected]:1080 https://ifconfig.io
Если все верно настроено, то в ответ мы получим IP сервера на котором размещен наш SOCKS5.
Например, для подключения SOCKS5 в Telegram вводим:
Сервер/Хост: IP:1080
Пользователь: your_user
Пароль: your_pass
В браузерах, Google Chrome или Firefox можете воспользоваться дополнительными плагинами для подключения данного SOCKS5.
Безопасного Вам серфинга.