Поиск по сайту:

Настройка облегченного прокси-сервера Socks5 в Ubuntu 24.04/Debian 12

В этом пошаговом руководстве для начинающих показано, как установить и настроить легкий прокси-сервер Socks5 в Ubuntu или Debian.

Из-за плохого сетевого соединения я решил настроить на своем удаленном VPS прокси-сервер для онлайн-игры. Однако обучающие материалы в Интернете в основном используют Dante, который потребляет слишком много оперативной памяти и приводит к тому, что моему дешевому VPS-серверу часто не хватает памяти.

Покопавшись, я нашел облегченный прокси-сервер Socks5 под названием Microsocks. И вот как его установить и использовать в Debian и Ubuntu.

Шаг 1. Установите Microsocks

Microsocks — это многопоточный, небольшой и эффективный сервер SOCKS5, который поддерживает IPv4, IPv6, DNS и использует протокол TCP для сетевого прокси. Его легко настроить, он очень легкий и потребляет менее 4 МБ памяти на моем сервере. К сожалению, он НЕ поддерживает UDP, поскольку для этого требуется почти вдвое больше существующего кода, что делает его уже не «микро».

Debian Bullseye, Bookworm, а также Ubuntu 24.04 и Ubuntu 22.04 включают пакет программного обеспечения в системный репозиторий. Вы можете просто подключиться к серверу и запустить команду для его установки:

sudo apt install microsocks

Для старых Ubuntu и Debian, у которых нет пакета в репозитории, или если вы хотите получить последнюю версию, выполните следующие шаги один за другим для сборки из исходного кода.

  1. Сначала запустите команду для установки библиотек зависимостей для сборки исходного кода:

    sudo apt install build-essential debhelper
  2. Загрузите исходный архив с помощью команды:

    wget http://ftp.barfooze.de/pub/sabotage/tarballs/microsocks-1.0.4.tar.xz

    Со временем ссылка устареет! Перейдите на эту страницу github, чтобы найти самую последнюю ссылку для скачивания, и используйте ее для замены ссылки, указанной в приведенной выше команде.

  3. После загрузки архива используйте команду для извлечения (соответственно замените имя пакета):

    tar -Jxf microsocks-1.0.4.tar.xz

    Замените -Jxf в команде, если расширение файла изменилось. -zxf для .tar.gz или -jxf для tar.bz2.

  4. Наконец, перейдите в извлеченную папку и запустите команду для сборки и установки:

    cd microsocks*
    make && sudo make install

После успешной установки вы увидите исполняемый файл, установленный в каталог /usr/local/bin:

Шаг 2. Запустите сервер Microsocks SOCKS5.

После установки пакета программного обеспечения просто выполните приведенную ниже команду, чтобы запустить прокси-сервер:

microsocks -1 -q -i 100.111.122.123 -p 1234 -u JI -P abcde454

В команде все аргументы можно пропустить.

  • -1 активирует режим auth_once. После успешной аутентификации определенного IP-адреса он добавляется в белый список и может больше использовать прокси-сервер без аутентификации.
  • -q отключить журнал. Нужна версия 1.0.4+.
  • -i 100.111.122.123 указывает, какой IP-адрес прослушивать. Пропустите это, чтобы прослушивать все сетевые интерфейсы сервера.
  • -p 1234 указывает прослушивать порт 1234. Пропустите его, по умолчанию будет прослушиваться 1080.
  • -u JI и -P abcde454 определяют имя пользователя и пароль для аутентификации. Имя пользователя может быть любым текстом, а не именем существующего пользователя на сервере.

В моем случае вместо этого я использую команду ниже. Которые прослушивают весь IP-адрес сервера, порт 1080, аутентифицированный пользователем JI и паролем abcde454.

microsocks -1 -u JI -P abcde454

После этого попробуйте подключиться с помощью клиента Socks5 или вместо этого запустить команду, чтобы проверить:

curl --socks5 user:password@server-ip:port https://www.google.com/

Создайте сервис systemd для сервера SOCKS5.

Благодаря этому запросу вы можете запускать прокси-сервер в фоновом режиме как системную службу и автоматически при запуске.

1. Для этого сначала нажмите Ctrl+C, чтобы выйти из приведенной выше команды, если она запущена. Затем запустите команду для создания служебного файла и отредактируйте его с помощью редактора nano:

sudo nano /etc/systemd/system/microsocks.service

Когда файл откроется в командной строке, вставьте строку ниже:

[Unit]
Description=microsocks SOCKS5 server
Documentation=https://github.com/rofl0r/microsocks
After=network.target auditd.service

[Service]
EnvironmentFile=/etc/microsocks.conf
ExecStart=/usr/bin/microsocks -u ${MICROSOCKS_LOGIN} -P ${MICROSOCKS_PASSW}

[Install]
WantedBy=multi-user.target

ПРИМЕЧАНИЕ. Если вы установили прокси-сервер из исходного кода, замените /usr/bin/microsocks на /usr/local/bin/microsocks в строках выше и при необходимости добавьте дополнительные флаги, например -1, -p $ {PORT}.

Завершив редактирование файла, нажмите Ctrl+S для сохранения и Ctrl+X для выхода.

2. Затем создайте файл конфигурации /etc/microsocks.conf и отредактируйте его с помощью nano:

sudo nano /etc/microsocks.conf

Когда файл откроется, напишите следующие строки и сохраните его:

# used by the systemd service file
MICROSOCKS_LOGIN="any_name_here"
MICROSOCKS_PASSW="any_password_here"

Также добавьте IP="xx.xx.xx.xx" и/или PORT="xxxx", если вы включили флаги на последнем шаге через служебный файл systemd.

3. Наконец, включите и запустите службу с помощью команды:

sudo systemctl enable --now microsocks.service

И проверьте, активен ли он, с помощью systemctl status microsocks.

Шаг 3. Откройте порт прослушивания в брандмауэре.

Если на вашем сервере включен брандмауэр, вам необходимо открыть порт для функции прокси-сервера.

Для этого сначала запустите команду, чтобы проверить состояние брандмауэра:

sudo ufw status

Если он активно работает, вы можете открыть порт 1080 (замените номер порта, если другой используется для microsocks) с помощью команды:

sudo ufw allow 1080/tcp

Подключитесь к серверу SOCKS5 с локального компьютера.

В моем случае в Windows я использую проксификатор для подключения к прокси-серверу. Это приложение требует оплаты за использование. Просто найдите в Google информацию о загрузке и руководстве по использованию.

Для Ubuntu и других Linux (или Windows для веб-браузера) вы можете включить флаг -1 на стороне сервера, а затем запустить приведенную ниже команду на локальном компьютере для подключения и аутентификации (замените пользователя, пароль, сервер -ip и порт) в первый раз:

curl --socks5 user:password@server-ip:port https://www.google.com/

Далее вы можете перейти в Сеть -> Прокси, чтобы включить прокси-сервер Socks5 без аутентификации:

Удалить:

Чтобы удалить прокси-сервер SOCKS5 в Debian или Ubuntu, используйте команду:

sudo apt remove microsocks

Либо просто удалите исполняемый файл, если вы установили его из исходников:

sudo rm /usr/local/bin/microsocks

Также отключите службу systemd, если она установлена:

sudo systemctl disable --now microsocks.service

И запустите sudo rm /etc/microsocks.conf, чтобы удалить файл конфигурации.

Статьи по данной тематике