В наши дни популярны VPN, но многие пользователи по-прежнему предпочитают использовать прокси-сервер SOCKS для туннелирования сетевых подключений через них, поскольку он обеспечивает более быстрое подключение к Интернету и идеально подходит для управления торрент-трафиком, несмотря на общий недостаток незашифрованного трафика.
Вы даже можете получить доступ к заблокированным сайтам в вашей стране, используя прокси-сервер SOCKS. Доступно множество общедоступных прокси-серверов SOCKS, но, как упоминалось ранее, трафик на прокси-сервере SOCKS не шифруется, поэтому использование общедоступного может быть рискованным.
В этой статье мы покажем вам, как установить и настроить прокси-сервер SOCKS5 в Linux с помощью MicroSocks.
MicroSocks: легкий прокси-сервер SOCKS5
MicroSocks — это легкий и многопоточный прокси-сервер SOCKS5, предназначенный для надежной обработки запросов на серверах с низкими ресурсами, потребляя минимальные ресурсы и мягко запрещая новые подключения во время больших нагрузок вместо их прерывания.
Он поддерживает IPv4, IPv6, DNS, использует TCP (в настоящее время UDP отсутствует) для сетевого прокси и позволяет пользователям подключаться с паролем или без него, или путем предоставления одноразового пароля, и все это без необходимости создавать или редактировать какой-либо файл конфигурации.
Теперь давайте посмотрим, как установить MicroSocks в популярные дистрибутивы Linux, такие как Debian, Ubuntu, Linux Mint, Red Hat, Fedora, Rocky Linux, Arch или любые другие.
Установите MicroSocks в Linux
MicroSocks доступен в большинстве репозиториев Linux, таких как Debian, дистрибутивы на основе Ubuntu и Arch systems, где вы можете быстро установить его с помощью одной из соответствующих команд в зависимости от вашего дистрибутива Linux.
# On Debian, Ubuntu, Kali Linux, Linux Mint, Zorin OS, Pop!_OS, etc. $ sudo apt install microsocks # On Arch Linux, Manjaro, BlackArch, Garuda, etc. $ sudo pacman -S microsocks
В дистрибутивах на базе Red Hat и Fedora или в старых дистрибутивах Debian и Ubuntu вы можете собрать и установить его из исходного кода, который также предоставляет вам последнюю версию.
Для начала убедитесь, что в вашей системе Linux установлены средства разработки, затем выполните следующую серию команд для установки MicroSocks из исходного кода.
$ wget http://ftp.barfooze.de/pub/sabotage/tarballs/microsocks-1.0.4.tar.xz $ tar -xvf microsocks-1.0.4.tar.xz && cd microsocks*/ $ make && sudo make install
После завершения установки исполняемый файл MicroSocks будет добавлен в каталог “/usr /local /bin”.
Запустите прокси-сервер MicroSocks SOCKS5
Теперь, когда установка завершена, доступна команда “microsocks”, но перед этим давайте рассмотрим несколько вариантов, которые вы можете использовать с ней.
Опция | Описание |
---|---|
“-1“ | Это позволяет вам пройти аутентификацию один раз, после чего ваш IP-адрес будет включен в белый список, что позволит вам позже подключаться к прокси-серверу без аутентификации. |
“-q“ | Отключить ведение журнала. |
“-i ip-address“ | Укажите IP-адрес для прослушивания; если его не указать, это означает прослушивание всех сетевых интерфейсов сервера (по умолчанию “0.0.0.0“). |
“-p port“ | Установите порт, который будет использоваться для прослушивания (по умолчанию “1080“). |
“-u user” и “-P password“ | Укажите имя пользователя и пароль для аутентификации обычным текстом, который может быть любым, независимо от существующих пользователей на сервере. |
В нашем случае мы настроил прокси-сервер MicroSocks на VPS и запустили его с помощью следующей команды, которая прослушивает все IP-адреса сервера с портом 8484, именем пользователя “proxyuser“ и паролем “securepassword“.
$ microsocks -1 -p 8484 -u proxyuser -P securepassword
Вывод:
andreyex@server:-$ microsocks -1 -p 8484 -u proxyuser -P securepassword
client[5] ****** connected to ******* 36:443
Чтобы подключиться к вышеупомянутому прокси-серверу MicroSocks с локального компьютера, выполните следующую команду, заменив выделенные зеленым поля правильной информацией о прокси-сервере.
$ curl --socks5 user:password@server-ip:port https://www.google.com/
Вывод:
Как только вы это сделаете, ваш локальный компьютер будет внесен в белый список для прокси-сервера MicroSocks из-за опции “-1”, что позволит вам настроить SOCKS5 в вашем браузере или системе Linux без предоставления учетных данных.
Чтобы подключиться к прокси-серверу MicroSocks из Firefox, перейдите в “Настройки“, затем “Общие“, прокрутите вниз до раздела “Сетевые настройки” и нажмите “Настройки«.
Затем убедитесь, что вы включили ручную настройку прокси-сервера, выберите SOCKS v5 и укажите хост и номер порта вашего прокси-сервера SOCKS5.
Теперь в вашем Firefox настроен прокси-сервер MicroSocks, поэтому весь ваш просмотр будет осуществляться через прокси-сервер. Если вы столкнулись с ошибкой при сбое подключения, обязательно повторно выполните предыдущую команду curl.
Чтобы подключить ваш локальный компьютер (работающий под управлением GNOME) к прокси-серверу MicroSocks, сначала откройте “Настройки“, перейдите к “Сеть“, а затем “Прокси“.
Затем переключите “Сетевой прокси” и выберите конфигурацию “Вручную”.
Наконец, введите хост и порт вашего прокси-сервера MicroSocks в разделе “ХОСТ SOCKS5” и сохраните изменения.
Теперь ваша система работает на GNOME и подключена к вашему прокси-серверу MicroSocks.
Разрешить прослушивание прокси-сервером MicroSocks порта брандмауэра
Если вы используете систему Ubuntu с UFW (простой брандмауэр), вам необходимо открыть порт, который прослушивает ваш прокси-сервер. Сначала проверьте состояние брандмауэра:
$ sudo ufw status
Если он активен и запущен, то откройте порт для прокси-сервера MicroSocks, который по умолчанию равен 1080; однако, поскольку я выбрал пользовательский порт 8484, используя опцию “-p”, мне нужно разрешить этот порт с помощью следующей команды:
$ sudo ufw allow 8484/tcp
Вывод:
andreyex@server:~$ sudo ufw status Status: active andreyex@server:~$ sudo ufw allow 8484/tcp Rule added Rule added (v6) andreyex@server:~$
Создайте службу Systemd прокси-сервера MicroSocks
Чтобы прокси-сервер MicroSocks работал в фоновом режиме и запускался автоматически при загрузке без какого-либо ручного вмешательства, вы можете создать службу Systemd.
Для начала откройте свой терминал и создайте файл Systemd service, используя приведенную ниже команду.
$ 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 -1 -u ${MICROSOCKS_LOGIN} -P ${MICROSOCKS_PASSW} [Install] WantedBy=multi-user.target
Сохраните и закройте файл, затем создайте файл конфигурации MicroSocks для переменных пользователя и пароля, используемых в приведенном выше сервисном файле Systemd.
$ sudo nano /etc/microsocks.conf
Скопируйте и вставьте следующий фрагмент, убедитесь, что вы заменили информацию о пользователе и пароле правильными данными о прокси-сервере MicroSocks. Кроме того, если вы настроили порт или ограниченный IP-адрес в сервисном файле Systemd, установите соответствующие значения в этом файле конфигурации.
# used by the systemd service file MICROSOCKS_LOGIN="proxy-user" MICROSOCKS_PASSW="proxy-password"
Сохраните и закройте файл, затем используйте следующую команду для включения и запуска службы:
$ sudo systemctl enable --now microsocks.service
Чтобы проверить состояние службы, запустите команду “systemctl status microsocks”.
Удалить MicroSocks из Linux
Чтобы удалить прокси-сервер MicroSocks из вашей системы Linux, установленный через диспетчер пакетов, запустите:
# On Debian, Ubuntu, Kali Linux, Linux Mint, Zorin OS, Pop!_OS, etc. $ sudo apt remove microsocks # On Arch Linux, Manjaro, BlackArch, Garuda, etc. $ sudo pacman -R microsocks
Если вы установили его непосредственно из исходного кода, то запустите:
$ sudo rm /usr/local/bin/microsocks
Чтобы отключить и удалить службу Systemd, запустите:
$ sudo systemctl disable --now microsocks.service $ sudo rm /etc/microsocks.conf
Если вы разрешили порт прослушивания MicroSocks в UFW, выполните следующую команду, чтобы найти его индексный номер:
$ sudo ufw status numbered
Затем удалите соответствующий порт с помощью команды “sudo ufw delete [no]”.