3proxy
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| 3proxy [2026/10/08 09:23] – bonterkoz | 3proxy [2026/10/13 09:10] (текущий) – bonterkoz | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| ====== Установка 3proxy на Debian ====== | ====== Установка 3proxy на Debian ====== | ||
| + | |||
| + | |||
| + | < | ||
| + | Тест: | ||
| + | curl --connect-to :: | ||
| + | Должны увидеть, | ||
| + | ss -tlnp | grep 1234 | ||
| + | Проверка работы прокси | ||
| + | curl -x http:// | ||
| + | curl -x 81.177.140.227: | ||
| + | |||
| + | Проверка открытости/ | ||
| + | nc -vz 81.177.140.227 80 | ||
| + | Connection to 81.177.140.227 80 port [tcp/http] succeeded! | ||
| + | |||
| + | </ | ||
| + | |||
| + | < | ||
| + | # | ||
| + | set -euo pipefail | ||
| + | |||
| + | # ======================= НАСТРОЙКИ ======================= | ||
| + | PROXY_PORT=" | ||
| + | SOCKS_PORT="" | ||
| + | PROXY_USER=" | ||
| + | PROXY_PASS="" | ||
| + | BLOCK_LOCAL=" | ||
| + | # ========================================================= | ||
| + | |||
| + | REPO=" | ||
| + | SRC_DIR="/ | ||
| + | BIN="/ | ||
| + | CONF_DIR="/ | ||
| + | LOG_DIR="/ | ||
| + | UNIT="/ | ||
| + | SVC_USER=" | ||
| + | |||
| + | ok() { echo -e " | ||
| + | inf() { echo -e " | ||
| + | die() { echo -e " | ||
| + | |||
| + | [[ $EUID -eq 0 ]] || die " | ||
| + | [[ " | ||
| + | [[ -z " | ||
| + | [[ -n " | ||
| + | |||
| + | inf " | ||
| + | export DEBIAN_FRONTEND=noninteractive | ||
| + | apt-get update -qq | ||
| + | apt-get install -y -qq build-essential git ca-certificates curl >/ | ||
| + | |||
| + | VERSION=$(git ls-remote --tags --refs " | ||
| + | inf " | ||
| + | rm -rf " | ||
| + | git clone -q --depth 1 ${VERSION: | ||
| + | make -C " | ||
| + | |||
| + | systemctl stop 3proxy 2>/ | ||
| + | install -m 0755 " | ||
| + | ok " | ||
| + | |||
| + | id " | ||
| + | install -d -m 0750 -o root -g " | ||
| + | install -d -m 0750 -o " | ||
| + | |||
| + | [[ -f " | ||
| + | { | ||
| + | echo " | ||
| + | echo " | ||
| + | echo " | ||
| + | echo " | ||
| + | echo "log $LOG_DIR/ | ||
| + | echo ' | ||
| + | echo " | ||
| + | echo "users $PROXY_USER: | ||
| + | echo "auth strong" | ||
| + | [[ " | ||
| + | echo "allow $PROXY_USER" | ||
| + | echo "proxy -n -a -p$PROXY_PORT" | ||
| + | [[ -n " | ||
| + | } > " | ||
| + | chown root:" | ||
| + | ok " | ||
| + | |||
| + | cat > " | ||
| + | [Unit] | ||
| + | Description=3proxy tiny proxy server | ||
| + | After=network-online.target | ||
| + | Wants=network-online.target | ||
| + | |||
| + | [Service] | ||
| + | Type=simple | ||
| + | User=$SVC_USER | ||
| + | Group=$SVC_USER | ||
| + | ExecStart=$BIN $CONF | ||
| + | Restart=on-failure | ||
| + | RestartSec=5 | ||
| + | LimitNOFILE=65536 | ||
| + | AmbientCapabilities=CAP_NET_BIND_SERVICE | ||
| + | CapabilityBoundingSet=CAP_NET_BIND_SERVICE | ||
| + | NoNewPrivileges=true | ||
| + | ProtectSystem=strict | ||
| + | ProtectHome=true | ||
| + | PrivateTmp=true | ||
| + | ReadOnlyPaths=$CONF_DIR | ||
| + | ReadWritePaths=$LOG_DIR | ||
| + | |||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | EOF | ||
| + | |||
| + | systemctl daemon-reload | ||
| + | systemctl enable -q 3proxy | ||
| + | systemctl restart 3proxy | ||
| + | sleep 2 | ||
| + | systemctl is-active --quiet 3proxy || { journalctl -u 3proxy -n 30 --no-pager; die " | ||
| + | ok " | ||
| + | |||
| + | PORTS=(" | ||
| + | if command -v ufw >/ | ||
| + | for p in " | ||
| + | ok "UFW: открыты порты ${PORTS[*]}" | ||
| + | fi | ||
| + | |||
| + | IP=$(curl -s --max-time 10 -x " | ||
| + | [[ -n " | ||
| + | |||
| + | echo | ||
| + | echo " | ||
| + | echo " HTTP(S): http:// | ||
| + | [[ -n " | ||
| + | echo " Конфиг: | ||
| + | echo " | ||
| + | SCRIPT_EOF | ||
| + | sudo bash / | ||
| + | </ | ||
| + | Удаление позже тоже одной строкой: | ||
| + | < | ||
| + | sudo systemctl disable --now 3proxy; sudo rm -f / | ||
| + | </ | ||
| < | < | ||
| Строка 45: | Строка 185: | ||
| </ | </ | ||
| + | |||
| + | Удаление позже тоже одной строкой: | ||
| + | < | ||
| + | sudo systemctl disable --now 3proxy; sudo rm -f / | ||
| + | </ | ||
| < | < | ||
| Строка 54: | Строка 199: | ||
| </ | </ | ||
| - | < | ||
| - | Тест: | ||
| - | curl --connect-to :: | ||
| - | Должны увидеть, | ||
| - | ss -tlnp | grep 1234 | ||
| - | Проверка работы прокси | ||
| - | curl -x http:// | ||
| - | curl -x 81.177.140.227: | ||
| - | Проверка открытости/ | ||
| - | nc -vz 81.177.140.227 80 | ||
| - | Connection to 81.177.140.227 80 port [tcp/http] succeeded! | ||
| - | |||
| - | </ | ||
3proxy.1791440619.txt.gz · Последнее изменение: — bonterkoz
