sudo apt update && sudo apt upgrade -y sudo apt install -y docker.io docker-compose
Проверьте, что служба Docker запущена:
sudo systemctl enable --now docker sudo systemctl status docker
sudo docker pull 3proxy/3proxy:latest
Проверка загрузки образа:
sudo docker images | grep 3proxy
Создайте директорию для конфигурации и логов:
sudo mkdir -p /opt/3proxy/conf sudo mkdir -p /opt/3proxy/logs sudo chmod -R 775 /opt/3proxy/logs
Создайте конфигурационный файл:
sudo vim /opt/3proxy/conf/3proxy.cfg
Пример содержимого файла `3proxy.cfg`:
log /logs/3proxy.log D logformat "%d-%m-%Y %H:%M:%S %U %C:%c %R:%r %O %I %T" rotate 30 timeouts 1 5 30 60 180 1800 15 60 nserver 1.0.0.1 nserver 1.1.1.1 nserver 8.8.8.8 nserver 8.8.4.4 nscache 65536 #internal 171.11.0.2 #external 171.11.0.2 auth strong #CR — пароль задан в зашифрованном формате, CL - открытом # Генерация openssl passwd -1 "mySuperPass" $1$egr16gds$d24LEK8X/2llF4DN7627X/ users "myuser:CR:$1$5412$P325N2v1j2wbdXwRReMng." allow myuser proxy -p58172 flush #proxy -p58172 -n socks -p3129
sudo apt install makepasswd makepasswd --crypt-md5 echo "пароль" | makepasswd --crypt-md5 --stdin
Опцию –stdin поддерживает версия 1.4
Или использовать
openssl passwd -1 "MySecretPassword"
Создайте файл `docker-compose.yml` по пути `/opt/3proxy/docker-compose.yml`:
sudo vim /opt/3proxy/docker-compose.yml
Содержимое `docker-compose.yml`:
---
services:
3proxy:
image: 3proxy/3proxy:latest
container_name: 3proxy
volumes:
- /opt/3proxy/conf:/usr/local/3proxy/conf:ro
- /opt/3proxy/logs:/usr/local/3proxy/logs
ports:
- "58172:58172"
ulimits:
nofile:
soft: 65536
hard: 65536
healthcheck:
test: ["CMD-SHELL", "nc -z 127.0.0.1 58172 || exit 1"]
interval: 15s
timeout: 3s
retries: 5
start_period: 5s
logging:
driver: json-file
options:
max-size: "10m"
max-file: "3"
restart: unless-stopped
Запустите сервис в фоне:
sudo docker compose -f /opt/3proxy/docker-compose.yml up -d
Проверьте статус контейнера:
sudo docker ps
sudo ufw allow 58172 comment "3Proxy HTTP" sudo ufw reload
Проверьте, прослушивается ли порт:
sudo ss -ntulp | grep 58172