3proxy не работает socks5

Одминский блог

Блог о технологиях, технократии и методиках борьбы с граблями

Проблемы работы auth strong в режиме socks 3proxy

Возникла тут необходимость поднять прокси сервер SOCKS5 для ботофермы одной онлайн игрухи. Поднимал я есессно на моем проверенном 3proxy, хотя как поговаривают бывалые ботоводы, по сравнению с Dante ( о котором буду живописать позже), продукт от ЗАРАЗы шибко прожорливый.

Но все бы было замечательно, если бы не некоторый нюанс. Все мануалы, имеющиеся в сети, расписываю элементарную настройку socks, но почему то у меня сложилось впечатление, что все (как на самом деле и я) просто копипастят из одного источника, хотя на деле никто ничего не проверял.

Итак как настроить 3proxy я уже писал, так что просто перейду к пляскам с бубнами вокруг socks. У меня есть сервер, одна сетевуха, на которой поднято десяток виртуальных интерфейсов и которые я хочу заставить принимать запросы по socks.

Файл конфигурации, работающий в элиптическом вакууме тырнетных мануалов, выглядит следующим образом:

##### 3proxy.cfg ######
#!/usr/local/bin/3proxy
daemon
pidfile /usr/local/3proxy/3proxy.pid
nserver 8.8.8.8
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
log /usr/local/3proxy/logs/3proxy.log
rotate 30
logformat “G%d-%m-%Y %H:%M:%S | %U | %C | %R:%r | %O | %I |%n”
archiver gz /usr/bin/gzip %F
users test:CL:qwerty
auth strong
allow test
maxconn 100
socks -iVPS-IP1 -eVPS-IP1 -p1080
socks -iVPS-IP2 -eVPS-IP2 -p1080
socks -iVPS-IP3 -eVPS-IP3 -p1080
flush
##################

Читайте также:  Что делать если сломалась стрелка орхидеи

Вот по всем мануалам, это полностью рабочий конфиг. Но у меня он не давал ничего, т.е. логин браузера просто дропался, не выдавая никаких промтов логина.

Довольно долго я пытался понять что к чему в работе прокси сервера, пока не догадался все проверить через модуль пакета socks. Продукт 3proxy поставляется в двух вариантах: в виде отдельных модулей под каждый тип прокси и в виде общего комбайна 3proxy. Модули запускаются из командной строки на основе директив, тогда как комбайн пользует собственный конфиг.

Запустил сокс прокси через консоль
socks -d -l/var/log/socktest.log -iVPS-IP1 -eVPS-IP1 -p1080
и получил вполне рабочий socks прокси, принимающий запросы и прекрасно работающий. Единственный минус его был в том, что через консоль невозможно задать аутентификацию по пользователю.

Поэтому я попробовал поиграться с аутентификацией пользователей уже в самом пакете 3proxy и оказалось, что отключение аутентификации auth none или же включение аутентификации на основе IP auth iponly прекрасно работали, как сами по себе, так и в формате двойной аутентификации (которая возможно с версии 0.6) auth iponly strong

То есть загвоздка именно в пользовательской аутентификации, а сам сервер работает нормально.

В логах все выглядело довольно занятно:

попытка соединиться с IE 6.0 (видимо подставляется дефолтный виндовый аккаунт)
26-05-2014 15:36:21 | Administrator | Browser-IP| 93.158.134.3:80 | 0 | 0 |93.158.134.3
26-05-2014 15:36:21 | Administrator | Browser-IP | 212.30.134.158:80 | 0 | 0 |212.30.134.158
попытка коннекта с FF
26-05-2014 15:39:02 | – |Browser-IP | 173.194.112.97:80 | 0 | 0 |173.194.112.97
26-05-2014 15:39:02 | – |Browser-IP | 173.194.112.104:80 | 0 | 0 |173.194.112.104
попытка коннекта с другого FF где в настройках уже прописан логин
26-05-2014 16:35:04 | – |Browser-IP | 141.101.120.15:80 | 0 | 0 |www.whatismyip.com

Попытки оттрейсить соединение, дали такую картину:
лог L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T
1401123271.665 SOCK5.1080 00004 – Browser-IP:63422 213.180.193.75:80 0 0 0 CONNECT_bar-navig.yandex.ru:80
1401123271.667 SOCK5.1080 00004 – Browser-IP:63423 87.245.216.177:80 0 0 0 CONNECT_toolbarqueries.google.com:80
1401123271.723 SOCK5.1080 00004 – Browser-IP:63424 213.180.193.75:80 0 0 0 CONNECT_bar-navig.yandex.ru:80

лог L%C – %U [%d/%o/%Y:%H:%M:%S %z] “”%T”” %z %N.%p %E %U %C:%c %R:%r %O %I %h
61.231.92.242 – — [26/May/2014:13:44:40 -0400] “CONNECT Browser-IP” -0400 SOCK4.1080 00004 – 61.231.92.242:3225 Browser-IP:25 0 0 0
61.231.92.242 – — [26/May/2014:13:44:41 -0400] “CONNECT Browser-IP” -0400 SOCK5.1080 00004 – 61.231.92.242:4028 Browser-IP:25 0 0 0

Учитывая, что с бубнами вокруг этого косяка я пляшу уже третьи сутки, то решил пока переключиться, но по мере возможностей буду ковырять дальше, ибо тесты на версии 0.6 не дали ничего нового, ровно как и попытки поднять на дебе – центосине.

Источник

Установка 3proxy

Статья давно не обновлялась, поэтому информация могла устареть.

Содержание

Заказ виртуального сервера

  1. Зайдите на http://firstvds.ru и зарегистрируйтесь.
  2. Закажите виртуальный сервер с тарифным планом не меньше VDS-KVM-Разгон и операционной системой Debian-8-x86_64 при этом виртуализация должна быть KVM. Размещение proxy-серверов на других виртуализациях запрещено.

Установка 3proxy с поддержкой http(s) и socks5-proxy

Некоторые люди хотят установить у себя на сервере proxy-сервер. Squid который также описан в wiki потребляет много ресурсов, да и сложнее в настройке. Поэтому рассмотрим установку простого и легкого сервера с поддержкой протоколов http и socks. Ни в коем случае не устанавливайте сервер без авторизации, т.к. этим незамедлительно воспользуются злоумышленники и создадут большой трафик и рассылку спама через сервер.

Итак, далее краткое описание установки и настройки.

Установка из репозиторий

Переносим исполняемый файл

Переносим файл для автозапуска

Создаем новый конфигурационный файл

Или переносим из образца конфигурационный файл

Пример файла конфигурации

Пример файла конфигурации 3proxy.cfg, который должен у вас получиться после его редактирования:

Ограничьте права доступа к файлу только пользователю root (поскольку в файле хранятся пароли доступа, для безопасности)

Добавьте 3proxy в автозапуск:

И запустите его:

Настройка закончена. На порту 3128 теперь у вас работает http-proxy, на порту 1080 socks-proxy

Запуск на определенном IP

При такой конфигурации прокси будет запущен на 3х разных IP и выдавать разный IP в зависимости от того на какой IP подключились.

Исправление некоторых проблем.

Проблема 1.

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

Проблема 2.

Ваш прокси-сервер, с дефолтными портами, рано или поздно найдут. И ваши логи, в которых отражаются все соединения, и если вы их ведёте, станут занимать всё больше места. Решений 3.

  1. Поменять порты. Но найти всё равно могут.
  1. Не вести логи.
  2. В фаерволе разрешить доступ с определённых адресов, остальным запретить. Довольно негибкое, но железное решение.

Лучше предусмотреть всё заранее.

Упрощенный конфиг анонимного http(s) proxy сервера на порту 3128

Также создать директорию под логи и выставить права (мы запускаем сервер с минимальными правами nobody в системе используя директивы setgid/setud)

Источник

RTFM.WIKI

Ordnung muß sein. Ordnung über alles (18+)

Инструменты пользователя

Инструменты сайта

Боковая панель

Линкшэринг

socialite Display:icon facebook twitter

ALARM!

Добавить новую страницу

Реклама

Содержание

Установка SOCKS5 сервера 3proxy

На Github’е можно найти множество bash скриптов упрощяющих установку 3proxy

Исходные данные: vMACHINA VPS, CentOS 7.5.1804.

Задача: Настроить 3proxy для работы HTTP/Socks прокси с поддержкой работы через IPv6.

Порт HTTP прокси 3333, порт Socks прокси 4444.

Установка

К сожалению последних версий 3proxy в репозиториях нет. Поэтому и для CentOS и для Debian/Ubuntu необходимо будет собирать 3proxy вручную. Старый добрый make install.

Для сборки из исходного кода нам нужен компилятор gcc

Скачиваем последнюю доступную версию с Github и компилируем

make install не делаем.

Добавим нового системного пользователя от имени которого будет работать 3proxy (без доступа к shell и без домашнего каталога)

В дальнейшем нам понадобятся UID и GID нового пользователя

Следуя правилам FHS наш 3proxy будет установлен в каталоге /opt .

Создаём необходимые каталоги и копируем скомпилированные файлы

Делаем chown и chmod

Пользователи

Пользователей можно указывать в самом конфигурационном файле

в отдельном файле

или же одновременно в конфигурационном файле и отдельном файле

Примечание

proxy -6 -p[номер_порта] -i[IPv4-адрес] -e[IPv6-адрес]

Пример конфигурационного файла

опции -4 , -46 , -64 , -6 задают приоритет разрешения имен в адреса IPv4 и IPv6 (только IPv4, приоритет IPv4, приоритет IPv6, только IPv6). Подробности в 3proxy FAQ

Важно! Если используется только v6, то с socks-сервером могут быть проблемы.

Для плагина FoxyProxy например требуется включить опцию Send DNS through SOCKS5 proxy

При правильной настройке сайт ipv6-test.com покажет следующий результат

IPv6

IPv4+IPv6

Конфигурационный файл

Финальный вариант файла /opt/3proxy/etc/3proxy.cfg

Небольшие пояснения по опциям flush и allow

Мы можем например глобально разрешить только HTTP и HTTPS, но отдельно для socks открыть дополнительный доступ для TCP 1500.

Allow, как нетрудно догадаться служит для разрешения соединения. Синтаксис следующий:

То есть в нашем тестовом конфигурационном файле разрешено

Пример ограничения использования прокси-сервера подсетями Telegram (источник)

Firewall

В нашем примере http-прокси использует порт TCP 3333, а socks-прокси порт TCP 4444.

init.d/systemd

В CentOS 7 используется systemd, поэтому необходимо создать unit-файл с новым сервисом /etc/systemd/system/3proxy.service

Обновляем список сервисов в systemd, добавляем сервис в автозагрузку и запускаем его

Источник

Пропадает соединение через http proxy, socks всегда работает идеально! #405

Comments

zhanadamian commented Dec 1, 2019

  • 3proxy установлено на разных ОС: ubuntu, win7, win10.
  • интерфейсы: на входе — ethernet, выход — карта rndis (3g modem в hilink).
  • ip на интерфейсах прописаны статично.
  • в конфигах все привязано к ip.

У меня есть необходимость перезагружать 3g модем и тогда rndis исчезает на секунд 30 из интерфейсов, а также периодически делать реконнект модема с пропаданием инета на 30сек — минуту (в этом случае rndis и его внутр ip шлюза не меняются и остаются доступны)
В случае с http — прокси после описанных манипуляций остается висеть в процессах/как запущенный сервис, но реально не работает.
В течении минуты-две в примерно 80% случаев все опять начинает работать.
В остальных 20% лечится перезагрузкой http прокси.
Возможно это таймауты или еще что, подскажите, куда копать!
При необходимости дам логи.
И в любом случае — огромное Спасибо за Супер программу!

запускается socks и http отдельными конфигами и сервисами вот такими строками
proxy -n -a -p33333 -ix.x.x.x -ex.x.x.x
socks -n -a -p33343 -ix.x.x.x -ex.x.x.x
———конфиг——-
monitor /. /3proxyXX.cfg
daemon
timeouts 1 5 30 60 180 1800 15 60
nserver Y.Y.Y.Y
nscache 65536
users aaaa:CL:bbbbb
authcache ip 3600
auth cache strong
allow aaaa
maxconn 125
#socks -n -a -p3333 -ix.x.x.x -eY.Y.Y.Y
proxy -n -a -p3334 -ix.x.x.x -eY.Y.Y.Y
flush
end

The text was updated successfully, but these errors were encountered:

Источник

Настройка минимального SOCKS прокси 3proxy

Для некоторых актуален вопрос, какой же прокси выбрать и как его настроить. Поскольку, если выставить любой прокси без авторизации, а Tor, например, ее не умеет, то достаточно быстро прокси станет достоянием общественности, а ваш IP начнет потихоньку баниться сервисами, если вообще не попадет на карандаш к спецслужбам. Но, предостерегу, даже если на прокси стоит авторизация, не забываем, что любой софт может содержать ошибки, а потому лучше спрятать его куда-то на нештатный порт и расставить ловушки против сканеров портов.

Итак, я в свое время полистал разные софтинки и среди минимальных по размеру (если у вас серьезный траффик, то статья не для вас) выбрал 3proxy. Симпатичная утилитка, хоть автор и предупреждал, что он не профессионал, а падать она ни разу не падала, да и кроссплатформенная. Пользуюсь уже больше полугода, могу порекомендовать.

это, в принципе, ненужная опция, но у меня почему-то 3proxy пытался открыть порт обычного прокси, даже если его в конфиге не указывать. Видимо, где-то хардкод при сборке. А порт по умолчанию у меня занят. Чтобы не было конфликтов — прибил ненужный порт.

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

Дополню по конфигу. То, что он описывает (пробовать не надо, чужое — не трогай).

Подключаемся юзером telega с паролем password на адрес 77.37.240.57:3128. Тип подключения — socks5
После успешного подключения соединение пойдет с вероятностью 90% на имя_сервера, либо на 10.0.0.2 с вероятностью 10%.

Источник

Оцените статью