online scripts & tutorials
// портфолио скриптов и туториалов

Скрипты.
Туториалы.
Инфраструктура.

Коллекция готовых bash-скриптов и пошаговых руководств для быстрого развёртывания серверных решений.

Скрипты

1 запись
install_3proxy.sh BASH
Установка и настройка 3proxy SOCKS5
Автоматическая установка 3proxy из исходников, настройка SOCKS5 на порту 1080 с авторизацией, systemd-сервис и оптимизация сетевых параметров ядра.
bash script
#!/bin/bash

# Установка зависимостей
apt update && apt install -y git build-essential tcpdump || { echo "Ошибка установки зависимостей"; exit 1; }

# Клонирование репозитория
cd /opt && git clone https://github.com/z3APA3A/3proxy.git || { echo "Ошибка клонирования репозитория"; exit 1; }
cd 3proxy

# Компиляция
make -f Makefile.Linux || { echo "Ошибка компиляции 3proxy"; exit 1; }
cp bin/3proxy /usr/local/bin/ && chmod +x /usr/local/bin/3proxy || { echo "Ошибка копирования 3proxy"; exit 1; }
mkdir -p /etc/3proxy /var/log/3proxy || { echo "Ошибка создания директорий"; exit 1; }

# Конфигурационный файл
cat > /etc/3proxy/3proxy.cfg <<EOF
maxconn 5000
nserver 1.1.1.1
nserver 8.8.8.8
nscache 65536
timeouts 5 30 60 180 1800 15 60
log /var/log/3proxy/3proxy.log
logformat "- +_L%Y-%m-%d %H:%M:%S %N.%p %E %U %C:%c %R:%r %O %I %h %T"
auth strong
users tguser:CL:tgpass123
authcache user 300
allow tguser
socks -p1080 -a
EOF

# systemd сервис
cat > /etc/systemd/system/3proxy.service <<EOF
[Unit]
Description=3Proxy Proxy Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/3proxy /etc/3proxy/3proxy.cfg
Restart=always
LimitNOFILE=200000
[Install]
WantedBy=multi-user.target
EOF

# Оптимизация системных лимитов
echo "* soft nofile 200000" >> /etc/security/limits.conf
echo "* hard nofile 200000" >> /etc/security/limits.conf

# Оптимизация сетевого стека
sysctl -w net.core.somaxconn=65535       || { echo "Ошибка настройки сети"; exit 1; }
sysctl -w net.ipv4.ip_local_port_range="10240 65535" || { echo "Ошибка настройки сети"; exit 1; }
sysctl -w net.ipv4.tcp_tw_reuse=1        || { echo "Ошибка настройки сети"; exit 1; }

# Открытие порта и запуск
ufw allow 1080/tcp 2>/dev/null || true
systemctl daemon-reload
systemctl enable 3proxy
systemctl restart 3proxy || { echo "Ошибка запуска 3proxy"; exit 1; }
systemctl status 3proxy  || { echo "3proxy не запустился"; exit 1; }

echo "Установка и настройка 3proxy завершена успешно"

// Туториал — как развернуть

01

Арендуйте VPS-сервер

Подойдёт любой Linux-сервер на базе Ubuntu/Debian. Минимальные требования: 1 CPU, 512 MB RAM. Можно взять у провайдеров типа Hetzner, DigitalOcean, TimeWeb и т.д.

02

Подключитесь по SSH

Откройте терминал и выполните подключение:

ssh root@YOUR_SERVER_IP

03

Создайте файл скрипта

touch script.sh

04

Откройте файл в редакторе nano

nano script.sh

05

Вставьте код скрипта

Нажмите кнопку [ COPY ] выше, чтобы скопировать скрипт в буфер обмена. Затем в nano вставьте через Ctrl + Shift + V (или правая кнопка мыши → Paste в большинстве SSH-клиентов).

06

Сохраните и закройте файл

В nano нажмите Ctrl + O → Enter (сохранить), затем Ctrl + X (выйти).

07

Запустите скрипт

Дайте скрипту права на выполнение и запустите его от root:

bash script.sh

Скрипт выполняется несколько минут — компилирует 3proxy из исходников. По завершении вы увидите сообщение Установка и настройка 3proxy завершена успешно

08

Проверьте, что прокси работает

Убедитесь, что сервис запустился:

systemctl status 3proxy

После успешной установки SOCKS5-прокси будет доступен на порту 1080. Логин: tguser, пароль: tgpass123 — не забудьте сменить их в конфиге /etc/3proxy/3proxy.cfg.