Как настроить мобильные прокси на linux своими руками

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

  • Сервер в виде обычного ПК или ноутбука;
  • USB хаб, желательно промышленный;
  • Модемы huawei e3372h (huawei e8372h)

На сервер нужно установить Linux, а именно ubuntu16 — 64bit. Можно десктопную версию, но я предпочтительно выбираю серверную.

Скачать образ вы можете на оф. сайте https://releases.ubuntu.com/16.04/
После записать образ на флешку при помощи rufus , так же скачать можете на сайте https://rufus.ie/ru/
Выставить в bios приоритет загрузки , чтобы читал вначале флешку и установить Linux.
Если ставите серверную версию, то при установке выберите пакет ssh server (понадобится для подключения к серверу по ssh). Так же рекомендую перед установкой сразу подключить проводной инет от вашего роутера, чтобы сеть сразу сконфигурировалась.

Модемы должны быть прошитыми с возможностью настройки dhcp, а именно с возможностью задать каждому модемы свой ip (шлюз).
Модемам нужно задать ip :

  • 192.168.11.1
  • 192.168.12.1
  • 192.168.13.1
  • 192.168.14.1
  • 192.168.15.1
  • и т.д.

Каждый модем подписать, чтобы после легко ориентироваться где какой.

Так же можете настроить автосмену imei при перезагрузке модема и установить fix ttl 64 или 128. Это нужно чтобы можно было использовать смартфонные тарифы.

Пишу всё довольно сжато, т.к. думаю читатели данной статьи уже неплохо ориентируются в работе с unix системами. Ведь не зря вы тут).
После того как авторизуетесь на сервере под своим юзером, я рекомендую установить пароль для root и в настройках ssh разрешить доступ от root. Если для вас это кажется небезопасно, то можете работать через sudo.

Ну что поехали) Выкладываю скрипт, который несёт в себе коммерческую цену, но я его предоставляю совершенно бесплатно.
Перед всеми манипуляциями проверяем есть ли инет на сервере, можно через ping ya.ru


Авторизовываемся в консоле (терминале) и скачиваем скрипт, командой:

wget https://kak-podnyat-proksi-ipv6.ru/skript/frigate-proxy.sh

Если Вы работаете через своего пользователя то не забываем делать все команды через sudo.

Предоставляем права:

chmod +x frigate-proxy.sh

Открываем скрипт любым удобным способом. Можно открыть любым тектсовым редактором через sftp или прям из консоли через тот же консольный текстовый редактор nano.

Нужно указать то количество модемов на которых вы хотите настроить мобильные прокси.

По умолчанию стоит 40, можете оставить это значение, если у вас меньшее количество. Если же у Вас больше модемов то поправьте это значение на нужное.

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

Ранее я видел настройки, где каждый usb модем привязывался к конкретному usb порту хаба. В нашем же случае это учтено.

Так же совет, перед настройкой Вы легко можете посмотреть количество модемов которое видит система.

Для этого забейте команду:

lsusb | grep -o "Huawei" | wc -l

Вывод покажет количество модемов, которые видит система. Иногда сервер не видит большое количество модемов из-за ограничения кол-ва устройств по стандарту USB 3.0
Если Вы столкнулись с этим, то это можно поправить. Вначале посмотрите id xHCI командой:

lspci -nn | grep xHCI

Если команда отработала и показала вывод, то смотрим значение id (8086:8c31), подставляем в след команды и вводим их в консоль:

sudo setpci -H1 -d 8086:8c31 d8.l=0
sudo setpci -H1 -d 8086:8c31 d0.l=0

Так же после того как отработает скрипт запишите эти 2 команды в автозагрузку /etc/rc.local

Запускаем наш скрипт командой:

bash /root/frigate-proxy.sh

Как только скрипт отработал, в папке root появятся 2 фала proxyhttp.txt и proxysocks.txt с Вашими мобильными прокси.

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

Статический ip нужен для того чтобы подключиться к прокси удалённо.

Если же прокси хотите использовать в локальной сети то это не требуется.

Проверить прокси на валидность Вы можете так же через консоль командой (для https и socks5 прокси соответственно):

curl --proxy login:pass@ip:port ipinfo.io/ip
curl --socks5 login:pass@ip:port ipinfo.io/ip

Также для диагностики работы прокси можете использовать ping.

Например проверить есть ли интернет на модеме:

ping -I 192.168.11.100 google.com

Проверить доступность самого модема:

ping 192.168.11.1

Так же выкладываю содержимого всего скрипта, на тот случай если основной файл затрётся.

В скрипте так же имеются комментарии для основных команд.

#!/bin/bash
iface=`ls /sys/class/net/ | head -1`
IP=`ip addr list $iface | grep " inet " | head -n 1 | cut -d " " -f 6 | cut -d / -f 1`
via=`ip route | grep default | cut -d " " -f 3`
export TAB= \t'
nmodem=`lsusb | grep -o "Huawei" | wc -l`
ipv4=`curl ipinfo.io/ip`
# обновление
apt-get update
# правим имена интерфейсов, чтобы они определялись по порядку eth1,eth2...
sed -i -e 's/GRUB_CMDLINE_LINUX=""/GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"/' /etc/default/grub
update-grub
# установка необходимых пакетов
apt-get -y install gcc g++ git make curl usb-modeswitch dos2unix pwgen dsniff

sed -i -e 's/ domain-name-servers,//' /etc/dhcp/dhclient.conf


# расширение лимитов на открытие файлов
echo "root hard nofile 250000
root soft nofile 500000
nobody hard nofile 250000
nobody soft nofile 500000
* hard nofile 250000
* soft nofile 500000
root hard nproc 20000
root soft nproc 40000
nobody hard nproc 20000
nobody soft nproc 40000
* hard nproc 20000
* soft nproc 40000" >> /etc/security/limits.conf
# настройка сетовых интерфейсов для 40 модемов
echo "# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address $IP
netmask 255.255.255.0
gateway $via
dns-nameservers $via
auto eth1 eth2 eth3 eth4 eth5 eth6 eth7 eth8 eth9 eth10 eth11 eth12 eth13 eth14 eth15 eth16 eth17 eth18 eth19 eth20 eth21 eth22 eth23 eth24 eth25 eth26 eth27 eth28 eth29 eth30 eth31 eth32 eth33 eth34 eth35 eth36 eth37 eth38 eth39 eth40
iface eth1 inet dhcp
iface eth2 inet dhcp
iface eth3 inet dhcp
iface eth4 inet dhcp
iface eth5 inet dhcp
iface eth6 inet dhcp
iface eth7 inet dhcp
iface eth8 inet dhcp
iface eth9 inet dhcp
iface eth10 inet dhcp
iface eth11 inet dhcp
iface eth12 inet dhcp
iface eth13 inet dhcp
iface eth14 inet dhcp
iface eth15 inet dhcp
iface eth16 inet dhcp
iface eth17 inet dhcp
iface eth18 inet dhcp
iface eth19 inet dhcp
iface eth20 inet dhcp
iface eth21 inet dhcp
iface eth22 inet dhcp
iface eth23 inet dhcp
iface eth24 inet dhcp
iface eth25 inet dhcp
iface eth26 inet dhcp
iface eth27 inet dhcp
iface eth28 inet dhcp
iface eth29 inet dhcp
iface eth30 inet dhcp
iface eth31 inet dhcp
iface eth32 inet dhcp
iface eth33 inet dhcp
iface eth34 inet dhcp
iface eth35 inet dhcp
iface eth36 inet dhcp
iface eth37 inet dhcp
iface eth38 inet dhcp
iface eth39 inet dhcp
iface eth40 inet dhcp" > /etc/network/interfaces
# установка отпечатка андроид
echo "net.ipv4.ip_forward=1
net.ipv4.route.min_adv_mss = 256
net.ipv4.tcp_rmem = 8192 87380 16777216
net.ipv4.tcp_wmem = 6144 87380 1048576" >> /etc/sysctl.conf
# создание файла, отвечающий за перевод модема в нужный режим
cat > /usr/share/usb_modeswitch/12d1:1f01 << END
DefaultVendor = 0x12d1
DefaultProduct = 0x1f01
TargetVendor = 0x12d1
TargetProduct = 0x14dс
# switch to 12d1:14dc (default HiLink CDC-Ether mode)
MessageContent="55534243123456780000000000000a11062000000000000100000000000000"
END
# предоставление прав файлу
chmod +x /usr/share/usb_modeswitch/12d1:1f01
# удаляем файл 40-usb_modeswitch.rules
rm /lib/udev/rules.d/40-usb_modeswitch.rules
cd /lib/udev/rules.d/
# скачиваем файл 40-usb_modeswitch.rules для того чтобы модемы переходили в нужный режим и определялись как сетевая карта
wget https://kak-podnyat-proksi-ipv6.ru/skript/mob/40-usb_modeswitch.rules

# создаём таблицу маршрутизации для 40 модемов
#
export TAB= \t'
for i in {11..100}
do
echo "$i${TAB}route$i" >> /etc/iproute2/rt_tables
done
#

cd /etc/network/if-up.d
wget https://kak-podnyat-proksi-ipv6.ru/skript/mob/ip-rout/add_routes16
mv add_routes16 add_routes
chmod +x add_routes

cd /root/
# скачиваем файл скрипта iface_checker.sh
wget https://kak-podnyat-proksi-ipv6.ru/skript/iface_checker.sh
# предоставляем им права
chmod +x iface_checker.sh
# скачиваем файл скрипта реконетка
wget https://kak-podnyat-proksi-ipv6.ru/skript/mob/rekonekt.sh
# предоставляем ему права
chmod +x rekonekt.sh
# прописываем крон для 40ка модемов, если у вас меньшее кол-во модемов то после удаляем лишнее
echo "* * * * * /root/iface_checker.sh >/dev/null 2>&1
* * * * * /root/ip_route.sh >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.11.100.lock /root/rekonekt.sh -r 4G -i 192.168.11.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.12.100.lock /root/rekonekt.sh -r 4G -i 192.168.12.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.13.100.lock /root/rekonekt.sh -r 4G -i 192.168.13.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.14.100.lock /root/rekonekt.sh -r 4G -i 192.168.14.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.15.100.lock /root/rekonekt.sh -r 4G -i 192.168.15.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.16.100.lock /root/rekonekt.sh -r 4G -i 192.168.16.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.17.100.lock /root/rekonekt.sh -r 4G -i 192.168.17.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.18.100.lock /root/rekonekt.sh -r 4G -i 192.168.18.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.19.100.lock /root/rekonekt.sh -r 4G -i 192.168.19.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.20.100.lock /root/rekonekt.sh -r 4G -i 192.168.20.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.21.100.lock /root/rekonekt.sh -r 4G -i 192.168.21.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.22.100.lock /root/rekonekt.sh -r 4G -i 192.168.22.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.23.100.lock /root/rekonekt.sh -r 4G -i 192.168.23.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.24.100.lock /root/rekonekt.sh -r 4G -i 192.168.24.1 >/dev/null 2>&1
*/2 * * * * /usr/bin/flock -w 0 /var/run/192.168.25.100.lock /root/rekonekt.sh -r 4G -i 192.168.25.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.26.100.lock /root/rekonekt.sh -r 4G -i 192.168.26.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.27.100.lock /root/rekonekt.sh -r 4G -i 192.168.27.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.28.100.lock /root/rekonekt.sh -r 4G -i 192.168.28.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.29.100.lock /root/rekonekt.sh -r 4G -i 192.168.29.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.30.100.lock /root/rekonekt.sh -r 4G -i 192.168.30.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.31.100.lock /root/rekonekt.sh -r 4G -i 192.168.31.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.32.100.lock /root/rekonekt.sh -r 4G -i 192.168.32.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.33.100.lock /root/rekonekt.sh -r 4G -i 192.168.33.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.34.100.lock /root/rekonekt.sh -r 4G -i 192.168.34.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.35.100.lock /root/rekonekt.sh -r 4G -i 192.168.35.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.36.100.lock /root/rekonekt.sh -r 4G -i 192.168.36.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.37.100.lock /root/rekonekt.sh -r 4G -i 192.168.37.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.38.100.lock /root/rekonekt.sh -r 4G -i 192.168.38.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.39.100.lock /root/rekonekt.sh -r 4G -i 192.168.39.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.40.100.lock /root/rekonekt.sh -r 4G -i 192.168.40.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.41.100.lock /root/rekonekt.sh -r 4G -i 192.168.41.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.42.100.lock /root/rekonekt.sh -r 4G -i 192.168.42.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.43.100.lock /root/rekonekt.sh -r 4G -i 192.168.43.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.44.100.lock /root/rekonekt.sh -r 4G -i 192.168.44.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.45.100.lock /root/rekonekt.sh -r 4G -i 192.168.45.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.47.100.lock /root/rekonekt.sh -r 4G -i 192.168.47.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.48.100.lock /root/rekonekt.sh -r 4G -i 192.168.48.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.49.100.lock /root/rekonekt.sh -r 4G -i 192.168.49.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.50.100.lock /root/rekonekt.sh -r 4G -i 192.168.50.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.51.100.lock /root/rekonekt.sh -r 4G -i 192.168.51.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.52.100.lock /root/rekonekt.sh -r 4G -i 192.168.52.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.53.100.lock /root/rekonekt.sh -r 4G -i 192.168.53.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.54.100.lock /root/rekonekt.sh -r 4G -i 192.168.54.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.55.100.lock /root/rekonekt.sh -r 4G -i 192.168.55.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.56.100.lock /root/rekonekt.sh -r 4G -i 192.168.56.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.57.100.lock /root/rekonekt.sh -r 4G -i 192.168.57.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.58.100.lock /root/rekonekt.sh -r 4G -i 192.168.58.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.59.100.lock /root/rekonekt.sh -r 4G -i 192.168.59.1 >/dev/null 2>&1
*/5 * * * * /usr/bin/flock -w 0 /var/run/192.168.60.100.lock /root/rekonekt.sh -r 4G -i 192.168.60.1 >/dev/null 2>&1" > /var/spool/cron/crontabs/$USER
dos2unix /var/spool/cron/crontabs/$USER
/etc/init.d/cron restart
# создаём директорию
mkdir /usr/local/3proxy
# переходим в директорию
cd /usr/local/3proxy
# скачиваем компилированный основной файл 3proxy
wget https://kak-podnyat-proksi-ipv6.ru/skript/mob/3proxy
# предоставляем ему права
chmod +x /usr/local/3proxy/3proxy
# создаём директорию
mkdir /usr/local/3proxy/mob/
# переходим в директорию
cd /usr/local/3proxy/mob/
# скачиваем скрипт по проверку пингов на модеме
wget https://kak-podnyat-proksi-ipv6.ru/skript/mob/chekping.sh
# предоставляем ему права
chmod +x /usr/local/3proxy/mob/chekping.sh
# создаём директорию для логов
mkdir /usr/local/3proxy/mob/log
# переходим в директорию /etc/init.d/
cd /etc/init.d/
# скачиваем файл для запуска 3proxy как сервиса
wget https://kak-podnyat-proksi-ipv6.ru/skript/mob/servis3proxy/3proxy
# предоставляем ему права
chmod +x /etc/init.d/3proxy
# устанавливаем в автозагрузку 3proxy
update-rc.d 3proxy defaults
cd
# устанавливаем архиваторы для архивации логов
#apt-get install -y aptitude
#aptitude update
#aptitude install rar unrar
#apt install -y zip unzip
#apt install sshpass
# создаём файлы конфигов 3proxy, указывая своё значение вместо "40" тут for i in {1..40} (226 строка)
cd /usr/local/3proxy/mob/
n=1
ipv4=`curl ipinfo.io/ip`
iponly=8.8.8.8,2.2.2.2 # впишите ip для авторизации через запятую
porthttp=7001
portsocks=8001
for i in {1..40}; do
login=`pwgen -s1`
pass=`pwgen -s1`
ipmodem=$((${i}+10))
echo "monitor /usr/local/3proxy/mob/3proxy$i.cfg

daemon
timeouts 1 5 30 60 180 1800 15 60
maxconn 5000
nserver 192.168.$ipmodem.1
nscache 65535
log /dev/null
auth iponly strong
users $login:CL:$pass
allow $login
allow * $iponly * * * * *
proxy -n -a -p$porthttp -i$IP -e192.168.$ipmodem.100
socks -n -a -p$portsocks -i$IP -e192.168.$ipmodem.100
flush" >> /usr/local/3proxy/mob/3proxy$n.cfg
echo "$ipv4:$porthttp:$login:$pass" >> /root/proxyhttp.txt
echo "$ipv4:$portsocks:$login:$pass" >> /root/proxysocks.txt
((inc+=1))
((n+=1))
((porthttp+=1))
((portsocks+=1))
done


echo "" > /etc/rc.local

cat > /etc/rc.local << END
#!/bin/bash
ulimit -n 600000
ulimit -u 600000
sudo route del default && sudo route add default gw $via eth0
exit 0
END

# после отработки скрипта перезагружаем сервер командой reboot и чекаем прокси proxyhttp.txt и proxysocks.txt

Если не хотите заморачиваться со всей настройкой, то можете приобрести готовые мобильные прокси у нас https://frigate-proxy.ru

Как поднять мобильные прокси на windows (много модемов)

Поднимаем несколько мобильных прокси на windows

В этой статье расскажу о том, как легко поднять свои мобильные прокси на модемах с прошивкой hilink на windows. На одном компе с виндой можно поднять до 15 ти мобильных прокси (15 модемов), потом действует ограничение на кол-во подключённых usb интерфейсов и винда просто напросто не видит наши модемы! Но это нам не мешает, ведь мы можем масштабиться, купив несколько ПК.

Что нам нужно:
— комп на борту Windows 7/10
— 4G модем Huawei E3372h или кому ещё нужно бюджетнее вариант то 3G модемы Huawei E3531
— USB хаб с активным питанием (от розетки)
— симки само собой с активированным инетом

Роутер сгодиться любой, думаю он у вас есть. Он нужен всего лишь для подключения основного интернета со статическим ip и проброса портов, но опять же зависит от загруженности ваших проектов. Кстати есть возможность использовать 4G модем как основное подключение в связке со сторонним сервисом или купить симку уже со статическим белым ip. Для этого лучше купить роутер (тот же микротик например) с поддержкой USB порта.

К модемам главное требование, чтобы они были прошиты модифицированной прошивкой, где есть возможность замены IP адреса (шлюза) в настройках dhcp сервера!

Первым делом смотрите наличие этой функции в вашей прошивке. Если нету, то можете найти прошивку и перепрошить свой модем. Вот прошивка для модема Huawei E3372h.

Так же советую взять USB удлинители для разноса модема в разные стороны, чтобы они не грелись и не глушили друг друга. Хватит и 0,5 метров USB кабеля, самое главное не продешевите и не купите самые дешёвые.

Приступим непосредственно к самой настройке.

Первым делом нам нужно настроить модемы. Для этого подключаем поочерёдно модемы к компу , переходим в настройки -система -DHCP и меняем ip-адрес. Тут не принципиально с какого ip начинать, можно на первом модеме оставить по дефолту ip 192.168.8.1 , а остальным уже задать по возрастанию 192.168.9.1 , 192.168.10.1 и т.д. Чтобы потом не путаться где какой задан ip -советую их подписать.

Настроили мы модемы. Подключаем все модемы к компу через USB хаб. Они должны все определиться в сетевых подключениях как сетевые карты NDIS

Ethernet 21 это моё основное подключение от роутера (проводной инет со статикой) с локальным  ip 192.168.88.3
Ethernet 20 это первый модем с шлюзем 192.168.2.1
Ethernet 23 это второй модем с шлюзем 192.168.3.1
Ethernet 24 это третий модем с шлюзем 192.168.4.1

После подключения всех модемов, нужно убедиться что основной инет у нас от основного проводного подключений, для этого переходим на любой сайт по проверке ip.

Если ip показал от одного из модемов. то нужно сделать следующее- перейти в сетевые подключения, нажать ПКМ на основное подключение (в моём случае Ethernet 21) и перейти в свойства.

Кстати я сразу задал компу статический локальный ip 192.168.88.3 (не путайте со статическим белым ip от провайдера), чтобы он не менялся при перезагрузке роутера (в данном случае у меня микротик с подсетью 192.168.88.0/24).

где:

192.168.88.3 — статический локальный ip компа
255.255.255.0  — маска подсети (/24 подсеть)
192.168.88.1 — это шлюз и днс (он же ip от веб интерфейса вашего роутера)

Нажимаем на дополнительно и настраиваем метрику как на скрине

После этого на сайте по проверке ip должен светиться ваш ip от основного подключения. Если не помогло, то попробуйте перезагрузить комп.

Устанавливаем 3proxy сервер на windows

В зависимости от разрядности ОС 64/32 bit скачиваем нужную версию 3proxy

Разархивируем архив у корень диска С и переименуем папку в «3proxy»

Переходим в папку C:\3proxy\bin64\ или если 32 битная версия то C:\3proxy\bin\

Создаём тестовый документ 3proxy.txt — это будет конфиг прокси

Открывает конфиг и вставляем следующее содержимое

monitor C:\3proxy\bin64\3proxy.txt
maxconn 500
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
#log C:\3proxy\log\3proxy.log D
#logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
#rotate 180
auth strong
users login1:CL:pass1
allow login1
proxy -n -a -p8062 -i192.168.88.3 -e192.168.2.100
proxy -n -a -p8063 -i192.168.88.3 -e192.168.3.100
proxy -n -a -p8064 -i192.168.88.3 -e192.168.4.100
flush

Знаком # я закомментировал строки отвечающие за логирование. Если вы хотите продавать прокси 3-им лицам то советую вести логирование запросов. Для этого создайте папку log и раскомментируйте строки, убрав знак # перед строками !

Так же подредактируйте первую строку в зависимости от установленной версии 3Proxy.

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

192.168.88.3 — это локальный ip адрес компа
192.168.2.100 — это ip первого модема (шлюз 192.168.2.1)
192.168.3.100 — это ip второго модема (шлюз 192.168.3.1)
192.168.4.100 — это ip третьего модема (шлюз 192.168.4.1)

В данном примере мы создали 3 прокси протокола http/s с авторизацией по логину и паролю.
Где login1 это логин, pass1 пароль, можете поменять на свои, но имейте в виду логин прописывается в 2-х местах!

Осталось только запустить 3proxy как службу. Для этого открываем командную строку с правами администратора и забиваем команду
Для 32 бит

C:\3proxy\bin\3proxy.exe --install C:\3proxy\bin\3proxy.txt

Для 64 бит

C:\3proxy\bin64\3proxy.exe --install C:\3proxy\bin64\3proxy.txt

После этого мы можем проверять свои прокси на этом же компе.

наши прокси

192.168.88.3:8062:login1:pass1
192.168.88.3:8063:login1:pass1
192.168.88.3:8064:login1:pass1

Так же для проверки наличия интернета на модемах я использую команду ping  из командной строки. Так можно прочекать есть ли инет на всех модемах!

Открываем CMD  и забиваем след команды поочерёдно, должны пойти пинги. Если нет то смотрите тариф, симку, уровень сигнала, профиль на модеме и т.п.

ping -S 192.168.2.100 vk.com
ping -S 192.168.3.100 vk.com
ping -S 192.168.4.100 vk.com

Таким образом мы проверяем обратный пинг от домена vk.com !

Если хотите использовать эти прокси в локалке то нужно открыть порта в брандмауэре!

Создаём новое правило для входящих подключений , для порта.

Указываем диапазон своих портов

Жмём далее , далее и вписываем любое имя (3proxy) для этого правила!

После этого прокси будут работать и на других компах подключенные к вашему роутеру.

Если хотите использовать прокси удалённо , то нужно сделать проброс ваших портов. Эти настройки производятся на вашем роутере и исходя из модели они отличаются! Смотрите инструкции по пробросу портов для вашего роутера!

Смена ip по таймауту настраивается через сторонний софт MasterModems,  разработанный специально для этих целей.

пример заполнения файла data.txt:
Формат:
IP{TAB}3G/4G{TAB}Reconnect timeout (minutes)

где указывается шлюз модема, режим работы модема, таймаут смены ip в минутах

Для приобретения софта пишите мне в ЛС vk или tg

На этом статью завершаю. По конфигурации 3proxy можете почитать на официальной странице 3proxy , а так же прикрепляю мануал по 3proxy!

Обзор настройки мобильных прокси на виндовс (много модемов)

Поднимаем прокси с использованием плагина PCREPlugin для 3proxy

Плагин регулярных выражений совместимых с Perl (PCRE) для 3proxy

plugin /etc/3proxy/src/PCREPlugin.ld.so pcre_plugin
pcre_rewrite clidata,cliheader,srvdata,srvheader,request dunno «94\.242\.59\.161» «»
#####_filtersize_start
filtermaxsize 20485760
#####_filtersize_end

pcre_rewrite — позволяет искать совпадения и производить замену подстрок

clidata — данные полученные от клиента, например данные POST-запроса
cliheader — содержимое заголовков запроса клиента, например заголовки HTTP
srvdata — данные полученные от сервера, например содержимое HTML-страницы
srvheader — содержимое заголовков ответа сервера, например заголовки HTTP
содержимое запроса клиента (например строка HTTP GET-запроса).
deny — запретить данный запрос без просмотра дальнейших правил

+ Новая команда «filtermaxsize» для предотвращения фильтрации, если ожидаемая Длина содержимого
больше заданного значения.

Как поднять прокси сервер на windows

Как поднять прокси сервер на windows

В этом видео настраиваем прокис на windows. Настраиваем сеть и поднимаем прокси на виндовс.

Сервер на базе windows server 2012 r2

ХОСТИНГ ДЛЯ ПОКУПКИ СЕРВЕРА
https://pinspb.ru (нет реферальной программы)

РЕГИСТРАЦИЯ

В качества благодарности прошу уточнить при покупки сервера мой ЛИЦЕВОЙ СЧЕТ:17726 личному менеджеру, связавшись по телеграмму для регистраиции и получения личного кабинета https://t.me/ndedikov

БЛОГ ПО НАСТРОЙКЕ ПРОКСИ
https://kak-podnyat-proksi-ipv6.ru

МАГАЗИН IPV4
http://funny-productru.deer.io

ПАМЯТКА ПО НАСТРОЙКЕ

1 Настрока сети
2 Скачиваем 3proxy с официального сайта для Windows (Распаковываем на рабочий стол архив)
3 Создаём конфиг 3proxy.txt в папке C:\Users\Администратор\Desktop\3proxy-0.8.11\bin
4 Переходим в командной строке в дирректорию cd C:\Users\Администратор\Desktop\3proxy-0.8.11\bin
5 Устанавливаем 3proxy как службу 3proxy.exe —install 3proxy.txt
6 Проверяем службу 3proxy через диспетчер задач
7 Окрываем порт (диапазон портов) Панель управления — Система и безопасность — Брандмауэр виндовс — Дополнительные параметры — Правила для входящих подключений — Создать правило — Для порта — Указываем порт — Даём имя правилу.
8 Проверяем прокси

ОБРАТНАЯ СВЯЗЬ В ТЕЛЕГРАМЕ
@residentmobile

ОБРАТНАЯ СВЯЗЬ ВКОНТАКТЕ
https://vk.com/borisbaktashev

Как поднять прокси сервер на виндовс https://youtu.be/uIwCecQ-Leo

Как поднять proxy ipv6 36 подсеть

Поднимаем прокси ipv6 36 подсеть

Привет читатели моего блога. Сегодня будем настраивать прокси ipv6  из 36 подсети.
Для начала хочу сказать что мы будем генерировать уникальные адреса из купленной нами 36 подсетки, таким образом чтобы каждый ip адрес был из своей 48 подсети. Это считается минимальным эталоном качества.

Так же хотелось мы отметить что из 36 сетке мы так же можем генерить разные 48  адреса как же как и из 32 сетке. Главное отличие в том что в 36 подсеть содержит всего 4000 уникальных адресов, каждый адрес из которых находится в своей 48 подсетки. А 32 подсеть содержит 65000 адресов.

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

Вся инструкция по установке сводится к 3 командам в консоли.

1 команда скачивает скрипт , 2 команда даёт права на выполнение и 3 команда стартует скрипт. В итоге мы получаем прокси в txt формате на сервер.

Поехали)

Во перевых нам нужно приобрести сервер и 2 подсети (одна бесплатная 64 и 36 платная)

Ценник следующий

Подсеть /36 стоит 1999 руб/мес + разовый платёж за подключение сетки 2999 руб + сам сервер тарифа VILLAGE 899 руб/мес

Итого:

Первый мес 5897 руб (1,50 руб/мес за 1 прокси)

Последующие 2898 руб (0,70 руб/мес за 1 прокси)

На выходе 4000 прокси

Вся инструкция написана для провайдера https://vpsville.ru

Регистрация по реферальной программе даст вам возможность бесплатной консультации и настройки в случае сложности при поднятии прокси.

Покупаем серфер, для этого выбираем тариф VILLAGE

Покупка сервера осуществляется при регистрации. После чего нужно просто пополнить счёт и через некоторое время у вас в панели появится сервер. На почту придут ssh доступы от сервера. Они нам пригодятся.

Переходим в раздел «сеть»

Подключаем бесплатную /64 подсеть. После заказываем /36 подсеть. И пишем онлайн консультанту, спрашиваем когда подключат сетку. Обычно сутки уходит на подключение.

После того как вы получили 36 подсеть, она появится в разделе «сеть», так же  вас оповестят по почте, можем приступать к настройке.

Для этого подключаемся по ssh через любимый ssh клиет и скачиваем скрипт

wget https://kak-podnyat-proksi-ipv6.ru/skript/proksik36.sh

Откроем этот скрипт через редактор nano

nano proksik36.sh

Нам нужно отредактировать следующее

Меняйте на свои данные и сохраняйте документ (Ctrl+O, Enter, Ctrl+X)

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

chmod +x proksik36.sh
bash proksik36.sh

Через 15 мин скрипт отработает и на сервере появится документ proxylist.txt, в котором будут находиться ваши прокси.

Напоследок изменим настройки ДНС

nano /etc/network/interfaces

Заменим публичные ДНС гугла на локальный адрес 127.0.0.1

И ребутнём наш сервер, предварительно сохранив документ interfaces

reboot

Можете проверять прокси на валидность.

На этом всё. Всем удачи!

Как поднять мобильные прокси 3G/4G на модеме

Поднимаем мобильные прокси на 3G/4G модеме(ах)


Новая инфа по поднятию прокси на более проф. уровне-читайте по ссылке 
https://vk.com/@ipv6proxy-podnimaem-mobilnye-proksi


мобильные прокси

Всем привет. Думаю моя новая статья Вам понравится и вы её оцените. Долго решался её написать, но всё таки , руки дошли. Темка актуальная и набирает обороты.
Появляются новые магазинчики по продаже мобильных прокси. Но как правило их единицы. И pool адресов не так широк по гео локациям как хотелось бы, да и мы всегда хотим всё таки свое решение.

Мы сейчас говорим о домашнем решении, которое подойдёт для бытовых нужд ))) Если у вас завалялся модемчик или парочку.

Мы не будем сравнивать свой способ поднятия с проф решениями, которые использую магазы по продаже мобильных прокси. У них промышленные радио терминалы, антенные блоки по городам , серверы в Дата центрах ,а так же лицензии на ПО и т.д.

Одним из таких магазинов является airsocks.in

Не буду отрицать то что моё решение не идеальное, но это первый  шаг в этом направлении. Дальше будет больше. Начнём с 1 модема. Подключим к ПК и поднимем на нём прокси, который можно будет юзать из локальной сети вместе с вашим основным инетом. Так же есть решение использовать мобильные прокси удалённо, этот способ тоже рассмотрим в продолжении статьи. Настроим рекконнект модема и смену IP адреса на свистке.

Для облегчения решения будем поднимать мобильные прокси на виртуальной машине с установленной ОС Centos7, а не на реальном железе, так как у многих его просто нет (подойдёт и старый нетбук-уже практиковал такое решение).

Рассмотрим детально процесс установки Centos7 на VirtualBox , настройку модема, установку прокси и настройку маршрутизации .

Что касается модемов. Тут точно не могу сказать подойдёт ли ваш. Я использую те модемы, которые при подключение создают новый интерфейс. В процессе мы дойдём до этого шага и поймёте подойдёт ли ваш модем для этих целей.  Я использую модемы модели Мегафон М-150-1, Мегафон М-150-2, МТС 423S и т.п.

Установка Centos7 на VirtualBox

Для этих целей я использую образ iso минимальный пакет. Скачайте его по ссылке здесь или по ссылки с яндекс диска. VirtualBox качайте с оф сайта.

Запускаем VirtualBox  и создаём новую вирт машину. Указываем любое имя а так же выбираем тип и версию как на скрине ниже

Указываем объём ОЗУ , в зависимости сколько у вас , но 1024 Мб вполне хватит

Создаём новый вирт жёский диск с 4-8 Г памяти.

Выбираем тип жёсткого диска

Динамический вирт жёсткий диск

И создаём вирт жесткий диск.

Настроим нашу вирт машину.

И выставляем все настройки как на скринах ниже

Сохраняем изменения и запускаем вирт машину.

Устанавливаем Linux

Чтобы освободить мышку от вирт машины, нажмите правый Ctrl

Подтвердите автоматическое разбиение дисков, для этого выберете  «Расположение установки» и нажмите готово.

Перейдите в «Сеть и имя узла»

Включите интерфейс , в моём случае это wi-fi. Если вы подключениы к ПК витой парой то там будет другой интерфейс. В случае подключения к ПК провода от оптики , мобильные прокси будут доступны извне , а не только локально.

Переходим наконец то к установки. Думаю вы уже наигрались правым Ctrl-ом )))

Нажимаем «Начать установку»

После создадите пароль к Root пользователю, дождётесь полной установки и перезагрузите вирт машину.

Настройка виртуальной машины и поднятие прокси

Запускаем наш виртуальный  сервер с установленной ОС Centos7.

Вводим имя пользователя «root»

Тапаем Enter и вводим пароль от root что задавали ранее (ввод пароля невиден, так что не пугайтесь).

Всё мы залогинились. Первым делом посмотрим наши интерфейсы и наши ip адреса. Для этого вводим команду

ip a

Видим свой интерфейс enp0s8  и его ip , в моём случае локальный 192.168.0.104

Если у вас возникли проблемы и нет ip адреса , то проверьте раздел настройки вирт машины «сеть» и перезагрузите вирт машину.

Теперь мы можем залогинится к своему серверу по ssh со своего компа , узнав ip сервера. Я использую Bitvise SSH клиент.

Открываем Bitvise SSH и вводим ip 192.168.0.104, порт ssh 22 по умолчанию , логин root и пароль что вы уже знаете.

Логинимся !

Сворачиваем лишние окна. Нам нужна командная строка от сервера.

Первая команда- обновляем систему

yum update

Enter, если требует подтверждение действия, то набираем «y» и жмём ещё раз Enter.

Подключаем репозитории и устанавливаем необходимые дополнения

yum -y install wget nano minicom epel-release net-tools

Отключаем фаервол

systemctl stop firewalld && systemctl disable firewalld

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

yum -y groupinstall "Development Tools"

Всё самое необходимое установили. Переходим к самому интересному — подключению 3g/4g модема к ПК и проброс USB на наш вирт сервер.

Подключаем модем к ПК, обязательно с сим картой и активированным тарифом под инет. После подключения переходим в виртуал бокс к настройкам нашей вирт машины. Переходим к настройкам USB и добавляем наш модем , в моём случае у меня хайвей и сохраняем.

Передёргиваем наш модем, чтобы он пробросился именно на вирт машину.

Ждём немного пока модем загрузится и проверяем командой

ip a

появился ли новый интерфейс.

Как видим у меня появился новый интерфейс wwp0s6u1i2

В данный момент модем мигает синим индикатором, что говорит о том что 3g сигнал есть, но пока модем не подключился к сети. Так же у модема ещё нет ip адреса. Мы это исправим.

Для начала подключимся к сети через свисток. Для этого сначала посмотрим какие устройства определились на этом USB.

Вводим команду

ls /dev/ttyUSB*

И видим что у меня определилось 2 устройства ttyUSB0 ttyUSB1. Какое то из них отвечает за 3g модем . Нужно определить какое именно. В большинстве случаев ttyUSB0

Для этого попробуем подключиться через устройство ttyUSB0

echo -en 'AT^NDISDUP=1,1,"internet"\r\n' > /dev/ttyUSB0

где, «internet» это точка доступа оператора мегафон.

Если после команды индикатор модема мигает то пробуем

echo -en 'AT^NDISDUP=1,1,"internet"\r\n' > /dev/ttyUSB1

В моём случае модем подключился по ttyUSB1 и индикатор загорелся.

Узнаем наш ip

wget -qO- eth0.me

Видим что ip на данный момент от нашего основного интернета что раздаётся по локальной сети.

Для того чтобы инет был от модема нам нужно поднять интерфейс от модема и присвоить ему ip. Можно воспользоваться dhcp-клиентом, но мы лучше пропишем получение ip адреса по  dhcp в настройках интерфейса.

Создаём интерфейс через редактор nano , nano /etc/sysconfig/network-scripts/ifcfg-*****, вместо ***** указываем имя вашего интерфейса от 3g модема.

nano /etc/sysconfig/network-scripts/ifcfg-wwp0s6u1i2

Я решил модем воткнуть не напрямую к ПК, а через активный USB хаб с доп питанием от розетки.

Вот так выглядит у меня модемы подключённые к хабу.

Именно с доп питанием от 220В, так как при подключении большого кол-ва модемов через обычный хаб , модемы будут отваливаться. Им просто не будет хватать питания. Так же лучше подключать хаб именно в тот USB который ближе всего расположен к сетевой карте, на нетбуках это usb порт рядом со входом Ethernet, куда вы подключаете провод от интеренета.

Думаю подойдёт любой usb хаб с активным питанием. А вот мой :

Ладно , отвлеклись немного мы. Сейчас подключаем 1 модем и нам он не пригодится пока.

В дальнейшем , при подключении 2-х и более модемов, он нам пригодится.

И так открыли новый тестовый док nano /etc/sysconfig/network-scripts/ifcfg-wwp0s6u1i2, в который нужно прописать следующее:

DEVICE="wwp0s6u1i2"
NAME="wwp0s6u1i2"
TYPE="Ethernet"
ONBOOT="no"
BOOTPROTO="dhcp"
HWADDR="XX:XX:XX:XX:XX:XX"
NM_CONTROLLED="no"
NOZEROCONF="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="no"
ZONE="external"
PEERDNS="yes"

Поменяйте значения DEVICE, NAME, HWADDR на свои.

DEVICE, NAME вы уже знаете, а вот

HWADDR (мак адрес) можете узнать из команды

ip a

Вот что получилось у меня:

Сохраняем док, нажатием кнопок последовательно Ctrl+O, Enter, Ctrl+X

Поднимаем наш интерфейс. Не забываем , что модем уже подключился к сети и горит постоянно индикатор на модеме.

ifup wwp0s6u1i2

Проверяем и смотрим ip на модеме

ifconfig

И видим то что интерфейс получил ip адрес

10.215.198.64 это наш локальный ip (серый) от NAT сети оператора Мегафон.

Мы получили серый ip от оператора.

Проверим наш белый ip , который виден всем. Тот что мы можем получить на сайте 2ip.

wget -qO- eth0.me

И видим что ip поменялся. Мы получаем наш ip от оператора Мегафон.

Немного отклонюсь от темы и расскажу почему мобильные прокси стабильны к баннам со стороны соц сетей. Ответ прост. Если вы загуглите что такое NAT, то узнаете почему))) . Я скажу своими словами.

Так как устройств много на планете земля и каждому нужен свой ip, придумали такую технологию как NAT. Как раз серый ip , что мы получили в интерфейсе это и есть ip промежуточного звена (маршрутизатора оператора) , к которому в свою очередь подключаются очень много мобильных устройств. И уже каждому устройству присваивается белый ip , что мы видим, при переходе на сайт например 2ip. Как вы уже догадались соц сети не могут заблокировать именно ip NAT, тем самым поставив блок 1000000 пользователей.

Поехали дальше. 

Для поднятия 1 прокси на 1 модеме 3g не нужно настраивать маршрутизацию. А вот если мы подключим 2 и более модемов на 1 сервер, то вот тут уже нам понадобится создавать таблицы маршрутизации. Мы это рассмотрим в следующей моей статье.

Установка прокси сервера 3Proxy

Устанавливаем прокси сервер 3proxy. Откроем FTP клиент, которое свернули в начале и перенесём на сервер в директорию root архив 3proxy

Разархивируем 3proxy.gz

tar zxfv 3proxy.gz

Открываем директорию 3proxy-0.8.8

cd 3proxy-0.8.8/

Компилируем

make -f Makefile.Linux

Создаём директорию

mkdir /usr/local/3proxy

Копируем бинарник

cp src/3proxy /usr/local/3proxy/

Делаем полные права пользователя

chmod +x /usr/local/3proxy/3proxy

Создаём главный конфигуратор 3proxy.cfg

nano /usr/local/3proxy/3proxy.cfg

И вставляем следующее содержимое:

monitor /usr/local/3proxy/3proxy.cfg

daemon
timeouts 1 5 30 60 180 1800 15 60
maxconn 5000
nscache 65535
log /dev/null
flush
proxy -n -a -p8000 -i192.168.0.104 -e100.67.106.102

где 192.168.0.104 это ip адрес от вашей локальной сети или оптоволокна, а 100.67.106.102 это ip от оператора Мегафон, 8000 это порт (можете указать тут любой от 2000 до 65000)

Строчка monitor /usr/local/3proxy/3proxy.cfg будет подхватывать наши изменения на литу , если их будем вносить, что очень удобно. Думаю адреса ip вы поняли где брать ))
Ещё раз покажу скрин со своими ip (не смотрите на  о что у меня разные ip при написании статьи, я не однократно ребутал сервер, дабы всё проработать)

Надеюсь вы уже вкурили и понимаете что да как.

Осталось запустить наши прокси командой:

/usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg

Можно проверять ваш прокси на валидность. Для этого воспользуемся браузером мазила. В настройках забиваем ip и порт.

Переходим на сайт 2ip

Вот что отобразилось у меня

Проверим на определение прокси. Жмём на Прокси: не используется «уточнить» на сайте 2ip

При этом конечно же должен быть отключён банально flash плеер

И видим прекрасную картину . Всё как и положено, даже DNS от мегафона. Временные зоны определяются таким образом и на обычном подключении через 3g модем.

На этом статью подвожу к завершению. В следующей статье рассмотрим процесс рекконекта модема, подгрузу и влючение прокси автоматом при загрузке сервера. А так же рассмотрим подключение 2-х и более модемов на 1 сервер и поднятие на них прокси 3G. На этом всем пока, пока!

Реконнект 3g/4g модема и смена динамического ip

Для того чтобы менялся Ip адрес на модеме, нужно отключить соединение и включить. При этом поменяется белый ip адрес, что по мне не акти какое решение. И я перезагружаю модем полностью, можно по питанию рубануть модем, отключив питание на шине. Но мне это показалось немного геморойно. И я использую мне понравившиеся AT команды.

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

echo -e "AT^RESET\r\n" >/dev/ttyUSB1

При этом модем перезагрузится, время перезагрузки составляет 20 секунд, что вполне годно для работы.

После нужно заново подключиться к сети с модема и поднять интерфейс. Так же поменять ip адрес в конфиге 3proxy.

Чтобы не делать это всё вручную напишем простой bash скрипт.

nano proksik3g.sh

содержимое скрипта

#!/bin/bash

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
echo -e "AT^RESET\r\n" >/dev/ttyUSB1
killall 3proxy
sleep 20
echo -en 'AT^NDISDUP=1,1,"internet"\r\n' > /dev/ttyUSB1
ifdown wwp0s6u1i2
ifup wwp0s6u1i2
IP=`ip addr list wwp0s6u1i2 | grep " inet " | head -n 1 | cut -d " " -f 6 | cut -d / -f 1`
echo "" > /usr/local/3proxy/3proxy.cfg
cat > /usr/local/3proxy/3proxy.cfg << END
monitor /usr/local/3proxy/3proxy.cfg

daemon
timeouts 1 5 30 60 180 1800 15 60
maxconn 5000
nscache 65535
log /dev/null
flush
proxy -n -a -p8000 -i192.168.0.104 -e$IP
END
/usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg

В данном скрипте wwp0s6u1i2 это название интерфейса. IP получаем автоматически , командой  grep

Можете скачать скрипт по ссылке

Закачайте скрипт на сервер в паку root

и предоставьте права на выполнение

chmod +x proksik3g.sh

И кстати установите psmisc для того чтобы срабатывала команда killall 3proxy, что находится в скрипте

yum install psmisc

После уже можете запустить скрипт для реконнекта модема

bash proksik3g.sh

Если вы сделали всё правильно, то модем перезагрузится и поменяется ip.

В продолжении статьи мы рассмотрим подключение 2-го модема и поднятие прокси на 2-х модемов на 1 сервере.

У кого возникли вопросы . Можете спросить в комментарии. Всем удачи!

Управление реконнектом 3g/4g модема через зеннопостер

В продолжении статьи решил написать в начале о процессе автоматизации смены ip на модеме по средствам маленького шаблона зеннопостера на сишарпе.

Чтобы в процессе выполнения какого либо проекта , в определённое время у вас происходила смена ip адреса.

Что делает шаблон- он подключается по SSH к нашему виртуальному серверу и запускает bash скрипт для реконнекта модема. Как вы уже догадались всё очень просто.

Шаблон состоит из 1 блока С#

Этот блок можете вставить куда угодно в вашем проекте.

Из входящих настроек всего 3 переменные: ip вирт сервера, имя пользователя root и пароль от вирт сервера.

Скачать шаблон  можете по ссылке.

Вскоре сниму видео обзор по работе шаблона , а так же продемонстрирую смену ip.

Уже скоро буду подключать 2-ва модема и более. Будьте на связи!

Видео о работе шаблона по автоматизации реконнекта модема и смена ip адреса

Давненько не писал продолжение статьи. Сегодня хочу Вам рассказать о том как сделать доступ к мобильным проксям удалённо. Например Вы сидите на работе, а модем у вас дома и надо использовать его удалённо, хоть из другого города.

Немного поигравшись с вирт машиной- всё таки решил поднимать моб прокси на отдельном сервер с Linux на борту (Centos7). Завалялся старый нетбук. Почему бы им и не воспользоваться. С вирт машиной возникают проблемы при пробрасывании USB, не всегда получается пробросить несколько модемов. Другое дело сервер на базе компьютера , в данном случае нетбука.

Как вы уже поняли на небуке стоит Centos7. К нетбуку подключен инет по проводу от провайдера Ростелеком  с динамическим ip и что самое главное нет NAT, т.е наш ip в настройках сети совпадает с тем ip что отображается на сайте 2ip.ru например.

Так же к нетбуку подключён разлоченный 4g модем с симкой от мегафона.

Забегу немного вперёд и скажу как устроен механизм удалённого доступа к моб ip адресу.

Т.к ip мобильного оператора за NAT -ом , то он не доступен к подключению из инета. Соответственно подключаемся мы к ip от провайдера Ростелеком, (в моём случае) это будет входящее соединение, а исходящее соединение уже по ip от Мегафона.

Мы подняли ip на интерфейсе wwan1 от Мегафона. Так же у нас имеется интерфейс enp7s0 от проводного инета и интерфейс wlp5s0 от wi-fi

ip как видим уже доступны на интерфейсах.

Так как у меня дома стоит wi-fi роутер, который раздаёт инет всем устройством, то основной провод от инета Ростелеком подключен к самому роутеру WAN. От роутера уже выходит через LAN 2 провода , один на мой стационарный комп, другой уже к нетбуку.

Чтобы мы получили не локальный ip адрес на нетбуке нужно в настройках роутера пробросить мост на том LAN где подключен сам нетбук.

У меня это выглядит вот так

Можно воспользоваться конечно же свитчем. Кому как проще.

Так мы получили тем самым ip адрес на нетбуке , такой же если бы мы подключили провод от провайдера непосредственно в сам нетбук. Но так как мен нужен wi-fi то я пробросил мост на LAN4.

где

lAN1 -мой стационарный комп

LAN4- сервер linux на базе нетбука

WAN- сам инет от оператора Ростелеком

Немного разобрались как и что подключено.

Теперь настало время настройки маршрутизации. Чтобы наша схема работала и у нас был доступ к моб прокси из вне — нам нужно настроить так чтобы на сервере было 2 активных подключения. Основной и дополнительный.

Для этого создаём таблицу маршрутизации

echo "101 T1" >> /etc/iproute2/rt_tables

Теперь нам нужно настроить саму маршрутицацию

ip route add $NETWORK dev wwan1 src $IP table T1
ip route add default via $DEFAULT table T1
ip route add $NETWORK dev wwan1 src $IP
ip rule add from $IP table T1

, где

NETWORK — сеть от оператора мегафон

IP — сам адрес от мегафон

DEFAULT -шлюз от мегафон

Для того чтобы нам вручную после реконета  каждый раз не узнавать эти значения и по новой не настраивать маршрутизацию , я написал маленький bash скрипт 4G.sh, расположенный в директории root

#!/bin/bash
# Copyright
# Boris O. Baktashev
# https://kak-podnyat-proksi-ipv6.ru
# 2016

echo -e "AT^RESET\r\n" >/dev/ttyUSB1 #рестарт модема 4g

killall 3proxy #убиваем все процессы 3proxy
sleep 20 #ждём 20 секунд, пока загрузится модем
echo -en 'AT^NDISDUP=1,1,"internet"\r\n' > /dev/ttyUSB1 #подключаемся к интеренету от Мегафон
ifdown wwan1 #выключаем интерфейс от 4G модема
ifup wwan1 #включаем интерфейс от 4G модема

IP=`ip addr list wwan1 | grep " inet " | head -n 1 | cut -d " " -f 6 | cut -d / -f 1` #узнаём адрес мегафон
DEFAULT=`ip route list table unspec | grep "default via" | head -n 1 | cut -d " " -f 3` #узнаём шлюз мегафон
NETWORK=`ip route list table unspec | grep "dev wwan1 proto kernel scope link src" | head -n 1 | cut -d " " -f 1 | cut -d / -f 1` # узнаём адрес сети мегафон

dhclient -r enp7s0 #отключаем интерфейс от проводного интернета
 dhclient enp7s0 #включаем интерфейс от проводного интернета

killall noip2 #убиваем процесс динамического ДНС
/usr/local/bin/noip2 #запускаем динамич ДНС

IPv4=`ip addr list enp7s0 | grep " inet " | head -n 1 | cut -d " " -f 6 | cut -d / -f 1` #узнаём адрес от провайдера проводного интернета

ip route add $NETWORK dev wwan1 src $IP table T1
ip route add default via $DEFAULT table T1
ip route add $NETWORK dev wwan1 src $IP
ip rule add from $IP table T1

echo "" > /etc/3proxy.cfg #чистием конфиг 3proxy
cat > /etc/3proxy.cfg << END #создаём новый конфиг 3proxy
daemon
timeouts 1 5 30 60 180 1800 15 60
maxconn 5000
nscache 65535
log /dev/null
proxy -n -a -p8000 -i$IPv4 -e$IP
END

/usr/bin/3proxy /etc/3proxy.cfg #запускаем прокси

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

bash 4G.sh

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

Т.к у нас ip от провайдера ростелеком динамический, то соответственно он также меняется.

Для этого я подключил Динамический ДНС от noip.com

Что даёт нам  DDNS- в независимости от нашего ip адреса который будет меняться, мы сможем обращаться к нему по домену. Т.е. Поменялся ip и нам не нужно его даже узнавать. Потому что можем обратиться к домену , который уже получил информацию о нашем новом ip адресе. Тем самым у нас имеется статический домен.

Как настроить DDNS на Linux в этой статье я не буду рассматривать.

Так как подключение от 4G модема не стабильно, нам нужно написать скрипт который будет проверять на наличие интренета на интерфесе от мегафона и в том случае если нет сигнала — поднимать инет и производить все настройки и поднятие прокси. В дальнейшем мы положим скрипт в крон , который будет проверять доступность инета со свистка каждые 5 минут.

Для этого пишем скрипт watchdog, взятый за основу с сайта habrahabr.ru и немного видоизмененный

#!/bin/bash

export PATH="$PATH:/usr/sbin"
SN="$(basename "$0")"
IP=`ip addr list wwan1 | grep " inet " | head -n 1 | cut -d " " -f 6 | cut -d / -f 1`

function print_help() {
 printf "\n"
 printf "Использование: %s options...\n" "$SN"
 printf "Параметры:\n"
 printf " -s Проверяемый ресурс.\n"
 printf " -i Имя сетевого интерфейса.\n"
 printf " -d Шина и порт модема lsusb -t.\n"
 printf " -n Число ошибочных пингов.\n"
 printf " -m Маркер модема, из команды lsusb.\n"
 printf " -h Справка.\n"
 printf "\n"
}

# Если скрипт запущен без аргументов, открываем справку.
if [[ $# = 0 ]]; then
 print_help && exit 1
fi
while getopts ":s:i:d:n:m:h" opt ;
do
 case $opt in
 s) SITE=$OPTARG;
 ;;
 i) IF=$OPTARG;
 ;;
 d) DEV=$OPTARG;
 ;;
 n) EP=$OPTARG;
 ;;
 m) MM=$OPTARG;
 ;;
 h) print_help
 exit 1
 ;;
 *) printf "Неправильный параметр\n";
 printf "Для вызова справки запустите %s -h\n" "$SN";
 exit 1
 ;;
 esac
done

if [[ "$SITE" == "" ]] || [[ "$IF" == "" ]] || [[ "$DEV" == "" ]] || [[ "$EP" == "" ]] || [[ "$MM" == "" ]] ; then
 printf "\n"
 printf "Одна или несколько опций не указаны.\n"
 printf "Для справки наберите: %s -h\n" "$SN"
 printf "\n"
 exit 1
fi

M="$(lsusb | grep -w "$MM")" #строка модема из lsusb



if [[ "$M" != "" ]]; then #если модем выбран, можно проверять пинги

if grep -w -q "$IF" /proc/net/dev; then #проверяем наличие сетевого интерфейса
 printf "\n"
 printf "Проверка доступности %s через интерфейс %s\n" "$SITE" "$IF"
 printf "\n"
 if [[ "$EP" -ge 6 ]]; then
 printf "Число ошибочных пингов должно быть меньше или равно 5\n"
 exit 1
 else
 printf "Делаем пинги...\n"
 flag="0"
 for i in {1..5}; do #делаем 5 пингов до сервера
 timeout -k 2 -s TERM 16 ping -w 14 -s 8 -c 1 -I "$IP" "$SITE" || flag=$((flag+1)) && printf "пинг:%s/5 (ошибок:%s)\n" "$i" "$flag" #пинг не прошел - инкрементируем счетчик
 if (("$flag" >= "$EP")); then
 break
 else
 read -r -t 1 > /dev/null
 fi
 done
 printf "потерь пакетов: %s из %s\n" "$flag" "$i"
 printf "\n"

if (("$flag" >= "$EP")); then #если потерь пакетов больше 2х
 M="$(lsusb | grep "$MM")" #на всякий случай снова глянем - вдруг модем выдернули
 printf "Будет сброшен модем:\n"
 ifdown "$IF" #деактивируем интерфейс
 bash 4G.sh
 fi
 fi
 fi
 else
 printf "\n"
 printf "Интерфейс %s не существует\n" "$IF"
 printf "\n"
 exit 1
 fi
else
 printf "Модем %s не найден.\n" "$MM"
fi

Ложем скрипт в крон

crontab -e
*/5 * * * * /usr/local/bin/watchdog -m Huawei -s ya.ru -i wwan1 -n 3 -d 1-1 > /dev/null 2>&1

Скрипт каждые 5 минут будет проверять наличие соединения и если его нет — производить все настройки.

а наш прокси в не зависимости от ip будет доступен по адресу

***.sytes.net:8000 (в нашем случае порт 8000, прокси без авторизации)

Если нам нужен рекконект модема, то скрипт 4G.sh так же можете положить в крон.

Рекконект можема занимает по времени ориентировочно 40 сек.

Проверяем скорость и пинг нашего моб прокси.

На этом пока всё. ПОКА ВСЁ…)

Настройка socks5

Как настроить socks5 3proxy

Приветствую! Сегодня мы будем настраивать socks5. Довольно таки часто задают такой вопрос -Как настроить socks5 прокси. Хотелось бы отметить что существенных отличий от настройки от http нет. Единственное отличие это немного видоизменён основной конфигуратор 3proxy.
Что же- начнём.
Для начала покупаем сервер. Я буду разбирать на примере хостинга с которым привык работать. Указываю реф ссылку, потому что именно тем, кто зарегистрировался по рефке я готов помочь в решении проблем, возникших при настройки прокси. А так же я предоставлю свой личный промо код, который даст вам 250 руб бонусом при пополнение баланса от 250 руб.

Переходим по ссылке http://racktech.ru и наводим на вкладку VPS/VDS

screenshot_14

Выбираем KVM VPS

screenshot_1

Покупаем сервер за 120 руб (минимальный тариф-можно поднять 500 прокси с одним лог пассом)
И кстати у данного хостинга первая /64 подсеть идёт бесплатно.
Проходим процесс регистрации- заполняем все поля. Операционную систему ставим любую, нам всё равно придётся переустановить её на другую. При покупке почему то нет нужной нам.
screenshot_3
На почту приходят данные от учётной записи, а именно логин (наша почта) и пароль. Если при регистрации-говорит что логин уже занят, то воспользуйтесь новой почтой, возможно ваша почта уже была использована на типичном сайте хостинга https://vpsville.ru

screenshot_4

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

screenshot_5

Теперь нам надо пополнить баланс (минимальный платёж 250 руб), но нам надо пополнить на 270 руб на всякий случай, чтобы воспользоваться промо-кодом и получить ещё + 250 руб бонусом. Переходим во вкладку баланс и пополняем счёт удобным для вас способом.

screenshot_6

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

screenshot_7

и вводим мой  бонус код «proksik»

screenshot_8

И получаем бонус ))) Теперь у вас на счету должна появится цифра 516 руб, которой хватит вам на 133 дня

screenshot_9

Дожидаемся активации сервера (сервер был заказан в момент регистрации).
Если сервер активен то он появится во вкладке «сервер» и ему будет при вязан ip

screenshot_10

Идём дальше. Как только сервер активируют можем получать бесплатно свою /64 подсеть. Для этого переходим во вкладку «сеть» и кликаем на ipv6 /64 сеть (первая /64 подсеть бесплатная)

screenshot_11

Она подгрузится моментально. Теперь нам надо переустановить ОС на нужную нам Ubuntu 16-04 x86-64

Переходим опять во вкладку «сеть» и жмём на «переустановка»
screenshot_12

Выбираем Ubuntu 16-04 x86-64 и переустанавливаем ОС.
screenshot_13

На почту придёт новое письмо с данными от сервера. Нас интересует пароль от SSH.

screenshot_15

Подготовительные работы закончены. Приступим к настройки самих прокси. Как мы уже знаем у нас есть сервер и /64 ipv6 подсеть.

Нам потребуется ssh клиент. У кого нет качаем здесь.

Устанавливаем его и запускаем. Вводим наш ip от сервера, пароль и логинимся.
screenshot_16

Открываются консоль и ftp клиент. Сворачиваем лишнее и оставляем только чёрную консоль. Работать будем тут.
Всё что требуется от вас -это чётко повторять и не допускать маленьких ошибок и идти последовательно шаг за шагом.
Для того чтобы вставить команду в консоль-просто тапаем на консоль правой кнопкой мышки (ПКМ)

Приступаем. Копируем первую команду и вставляем в консоль. Жмём Enter.

apt-get -y install vim git gcc g++ make

Открываем конфигуратор sysctl.conf

nano /etc/sysctl.conf

И в конце документа (для перемещения используем стрелочки на клавиатуре) добавляем следующее

net.ipv6.ip_nonlocal_bind = 1

И сохраняем файл, нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

Применяем изменения, для этого вводим команду ниже и жмём Enter

sysctl -p

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

cd ~
 git clone https://anonscm.debian.org/cgit/collab-maint/ndppd.git
 cd ~/ndppd
 make all && make install

Создаем конфигурационный файл, для этого используем команду ниже

nano /root/ndppd/ndppd.conf

Вставляем содержимое, изменив  подсеть на свою

route-ttl 30000
proxy eth0 {
 router no
 timeout 500 
 ttl 30000
 rule 2a07:14c0:0:8198::/64 {
 static
 }
}

screenshot_17

Сохраняем конфиг, нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

Запускаем ndppd.conf

ndppd -d -c /root/ndppd/ndppd.conf

В консоли должны появится 3 строчки как на скрине ниже

screenshot_18

Переходим к настройки сети

Добавляем адрес на ens3, изменив свою подсеть в команде что написана ниже

ip -6 addr add 2a07:14c0:0:8198::2/64 dev eth0

На скрине ниже видно что мы берём свою подсеть и вставялем после двоеточия цифру 2

screenshot_19

Добавляем маршрут по умолчанию на ens3

ip -6 route add default via 2a07:14c0:0:8198::1

Так же берётся просто подсеть (4 сектора) без /64, после двоеточия прописывается цифра 1

И прикрепляем нашу сеть к ens3

ip -6 route add local 2a07:14c0:0:8198::/64 dev eth0

Тут меняется только подсеть в таком виде как нам выдал хостинг.

Cкачиваем и устанавливаем 3proxy (можете копировать сразу 4 команды и после отработки 3 команд нажать enter)

cd ~
git clone https://github.com/z3APA3A/3proxy.git
cd 3proxy/
make -f Makefile.Linux

Создаем файл ip.list с нужным количеством ipv6 адресов сгенерированных в случайном порядке.
Для этого скачиваем c моего сайта скрипт генерации файла ip.list

wget https://kak-podnyat-proksi-ipv6.ru/random-ipv6_64-address-generator.sh

Сменим права на скрипт

chmod +x random-ipv6_64-address-generator.sh

Правим скрипт

nano random-ipv6_64-address-generator.sh

Нам надо поменять 2 значения
MAXCOUNT=500
network=2a07:14c0:0:8198

MAXCOUNT это число ip которые мы хотим сгенерить а network- это наша подсеть (4 сектора)

Редактируем и сохраняем файл, нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

screenshot_20

Сгенерируем ip и запишем их в ip.list

./random-ipv6_64-address-generator.sh > ip.list

Проверим пинг 1 из адреса. Для этого посмотрим ip которые только что сгенерили

cat ip.list

Появится список наших ip. Скопируем один из адресов, выделив его мышкой.

После замените в команде ниже ip на ваш

ping6 -I 2a07:14c0:0:8198:4a50:b855:570a:6ac7 ipv6.google.com

И вставьте в консоль, нажмите enter. Должны пойти пинги как на скрине ниже
screenshot_21

Чтобы остановить пинг, нажмите ctrl+C

Скачиваем скрипт 3proxy.sh на сервер

wget https://kak-podnyat-proksi-ipv6.ru/skript/3proxy.sh

Поменяем права использования на скрипт

chmod +x 3proxy.sh

Отредактируем его

nano 3proxy.sh

Надо поменять логин и пароль для авторизации прокси (ivan:CL:76602949). CL оставляем. ivan-логин в моём случае, а 76602949 -это пароль
Так же меняем свой ip от сервера как на скрине ниже

screenshot_22

После редактирования сохраняем файл, нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

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

./3proxy.sh > 3proxy.cfg

Увеличиваем лимиты

ulimit -n 600000
ulimit -u 600000

Запускаем прокси

/root/3proxy/src/3proxy /root/3proxy/3proxy.cfg

Чистим файл автозагрузки и открываем его

echo "" > /etc/rc.local
nano /etc/rc.local

Приведём его к виду (4,5,6 строчки мы уже редактировали, когда настраивали сеть, можете скопировать от туда и вставить оставив впереди /sbin/)

#!/bin/bash
ulimit -n 600000
ulimit -u 600000
/sbin/ip -6 addr add 2a07:14c0:0:8198::2/64 dev eth0
/sbin/ip -6 route add default via 2a07:14c0:0:8198::1
/sbin/ip -6 route add local 2a07:14c0:0:8198::/64 dev eth0
/root/ndppd/ndppd -d -c /root/ndppd/ndppd.conf
/root/3proxy/src/3proxy /root/3proxy/3proxy.cfg
exit 0

Сохраняем файл, нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

Наши прокси готовы, осталось нам сформировать полный прокси лист. Для этого я использую обычный xlsx файл. Прокси будут состоять из нашего ip сервера, порта (начальный порт 30000) , логина и пароля, которые мы уже указывали с вами в скрипте. Меняться будет только порт, Остальное будет неизменно. На выходе у нас будут разные ipv6 адреса.

Поднимаем тунельные прокси на Debian-8-x86_64

В этой статье я расскажу как поднять и настроить тунельные прокси на debian

Первым делом покупаем сервер на http://cloud4box.com/
Для этого  регистрируемся на сайте и заходим в панель управления как поднять тунельные прокси

screenshot_1
как поднять тунельные прокси

Переходим во вкладку виртуальные серверы и заказываем сервер

Выбираем сервер за 170 руб и ложим в корзину.
screenshot_2

Выбираем ОС — Debian-8-x86_64

screenshot_17

Теперь воспользуемся промокодом  «bo07943», который даст нам скидку. Доменное имя выберете любое или оставьте пустым.
screenshot_3

Оплачиваем заказ и переходим на сайт тунельброкера https://www.tunnelbroker.net/

Проходим регистрацию. Затем создаём туннель. Для этого кликаем на Create Regular Tunnel
screenshot_5

Копируем наш ipv4 от сервера
screenshot_7

И вставляем в поле IPv4 Endpoint (Your side) и тапаем на пустое место
screenshot_6

Наш ipv4 проверится на валидность и высветится надпись «IP is a potential tunnel endpoint» на зелёном фоне.
Если этого не произошло -значит ваш сервер ещё не активен. Подождите.
Выбираем любую локацию и жмём «Create Tunnel»
screenshot_9

После жмём на Assign /48
screenshot_10

И видим что нам выделили /48 подсеть. Нам она пригодиться в дальнейшем.
Переходим во вкладку «Example Configurations» и выбираем  Debian/Ubuntu
Появятся наши настройки СЕТИ, которые нам тоже пригодятся!
screenshot_11

Переходи непосредственно к настройки сервера. Для этого нам нужен SSH клиент, если у вас его нет , то качайте

Открываем ssh клиент и вбиваем ipv4 от нашего сервера и пароль от ssh (лежат в письме на почте, которую вы указали при реги) и логинимся.
screenshot_12

Если не нашли письмо от хостинга то пароль можно узнать нажав на кнопку «перейти»
screenshot_13

Затем жмём «изменить»
screenshot_14

и тут увидим наш пароль от ssh
screenshot_15

Появляется консоль. Остальные окна нам пока не нужны. Работаем с консолью.
Первым делом подготавливаем сервер.
Вставляем команду (тапаем в области чёрной консоли правой кнопкой мышки)

apt-get update

screenshot_18

След команды

apt-get update
apt-get install gcc++ git make screen mc wget

 

Добавим бэкпорты в репозиторий

echo "deb http://ftp.debian.org/debian jessie-backports main" >> /etc/apt/sources.list

И выполним команду

apt-get update

Установим требуемое ядро

apt-get -t jessie-backports --yes --force-yes install linux-image-amd64

Перезагрузим сервер

reboot

Закрываем консоль и после ребута открываем новое

screenshot_19

Скачиваем и компилируем ndppd

apt-get -y install vim git gcc g++ make
git clone https://github.com/DanielAdolfsson/ndppd.git
cd ndppd
make all && make install

Теперь давайте настроим сеть, для этого переходим на сайт тунельброкера во вкладку «Example Configurations» и копируем содержимое

Открываем

nano /etc/network/interfaces

И вставляем из буфера в самый низ дока наши настройки.
screenshot_20

Сохраняем документ и закрываем , нажав сочетаний клавиш ctrl+O, Enter, ctrl+X
Создаём конфигурационный файл ndppd.conf

nano /root/ndppd/ndppd.conf

Конфигурация (содержимое)

route-ttl 30000
proxy he-ipv6 {
   router no
   timeout 500   
   ttl 30000
   rule 2001:470:5b3a::/48 {
      static
   }
}

Заменив подсеть (2001:470:5b3a::/48) на свою, для этого скопируйте свою подсеть с сайта тунельброкера
screenshot_21

Сохраняем документ и закрываем , нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

Ребутаем наш сервер,  для того чтобы настройки сети вступили в силу

reboot

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

ifconfig

И увидим что появился у нас новый интерфейс he-ipv6
screenshot_22

Идём дальше )))
Запускаем наш ndppd

ndppd -d -c /root/ndppd/ndppd.conf

Должны появится 3 строчки как на скрине ниже
screenshot_23

Скачиваем и устанавливаем 3proxy

cd ~
git clone https://github.com/z3APA3A/3proxy.git
cd 3proxy/
chmod +x src/
touch src/define.txt
echo "#define ANONYMOUS 1" > src/define.txt
sed -i '31r src/define.txt' src/proxy.h
make -f Makefile.Linux

Создаём ip.list с нужным количеством ipv6 адресов
Для этого скачиваем скрипт с моего сайта

wget https://kak-podnyat-proksi-ipv6.ru/random-ipv6_48-address-generator.sh

Правим скрипт, что скачали.
Открываем его

nano random-ipv6_48-address-generator.sh

Меняем
MAXCOUNT=500 — количество ipv6 для генерации

network=2001:470:5b3a — наша подсеть, которую мы получили у брокера (выше мы её уже копировали)

screenshot_24

Сохраняем документ и закрываем , нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

Устанавливаем права на выполнение

chmod +x random-ipv6_48-address-generator.sh

Генерируем список ipv6 адресов в файл ip.list

./random-ipv6_48-address-generator.sh > ip.list

Добавить ядру net.ipv6.ip_nonlocal_bind = 1 (в sysctl.conf)
Открываем

nano /etc/sysctl.conf

и в конце списка дописываем строчку

net.ipv6.ip_nonlocal_bind = 1

Сохраняем документ и закрываем , нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

Применить изменения

sysctl -p

Добавить адрес на he-ipv6, заменив 2001:470:5b3a::/48 на свою подсеть

ip -6 addr add 2001:470:5b3a::2/48 dev he-ipv6

И прикрепить нашу сеть к lo

ip -6 route add local 2001:470:5b3a::/48 dev lo

Проверим пинг одного из адреса, для этого откроем ip.list и скопируем один ipv6
Открываем ip.list

nano ip.list

И скопируем один из адресов, для этого просто выделите одну строку с нашим ipv6  и наша строка автоматически с копируется
screenshot_25

Заменим в команде ниже на наш ipv6 (соблюдаем пробелы)

ping6 -I 2001:470:5b3a:7670:154с:5f61:5579:dda8 ipv6.google.com

Закройет наш ip.list, нажав ctrl+X
А теперь скопируем эту команду и ставим в консоль и нажмём enter

Должны пойти пинги как на скрине ниже. Если этого не наблюдается, то вы где то ошиблись и сеть у вас не настроена.
screenshot_26
Для того чтобы остановить пинг, нажимаем ctrl+C

Скачиваем скрипт 3proxy.sh на сервер в папку 3proxy

wget https://kak-podnyat-proksi-ipv6.ru/3proxy.sh

Устанавливаем права на выполнение

chmod +x 3proxy.sh

Редактируем наш скрипт, для этого открываем его

nano 3proxy.sh

И меняем содержимое согласно скрину ниже. Где логин и пароль к прокси устанавливаете на ваш вкус

screenshot_27

Запускаем наш скрипт

./3proxy.sh> 3proxy.cfg

Убираем лимиты

ulimit -n 600000
ulimit -u 600000

Запускаем 3proxy

/root/3proxy/src/3proxy /root/3proxy/3proxy.cfg

Чистием файл автозагрузки

echo "" > /etc/rc.local

Открываем чистый файл автозагрузки

nano /etc/rc.local

И вставляем содержимое, заменив 4 и 5 строчку на свои значения (выше мы уже их использовали для настройки сети, перед тем как проверял пинг, /sbin/ оставляем)

#!/bin/bash
ulimit -n 600000
ulimit -u 600000
/sbin/ip -6 addr add 2001:470:5b3a::2/48 dev he-ipv6 /sbin/ip -6 route add local 2001:470:5b3a::/48 dev lo
/root/ndppd/ndppd -d -c /root/ndppd/ndppd.conf /root/3proxy/src/3proxy /root/3proxy/3proxy.cfg exit 0

Сохраняем документ и закрываем , нажав сочетаний клавиш ctrl+O, Enter, ctrl+X

Теперь можем проверять наши прокси.
Надеюсь сформировать лист с прокси вы сможете сами
Прокси будут состоять из:

ip:порт:логин:пароль
Начальный порт прописан в скрипте, как и все остальные данные. Напомню!!!

screenshot_28

Будет меняться только наш порт от 30000-до 30499 в нашем случае. Полный список прокси я формирую в exle
Всем спасибо за внимание.
ПОКА, ПОКА !!!! )))

 

Настройка ipv6 ubuntu

Настройка ipv6 ubuntu

Привет дорогие друзья и читатели моего блога.

Сегодня мы будем с Вами поднимать прокси сервер на Ubuntu 14.04 amd 64.
У нас уже имеется сервер. Если же у Вас нет, то смело покупайте сервер по этой инструкции.
Только не забудьте установить ОС — Ubuntu 14.04 amd 64
Для того чтобы не настраивать интерфейсы и не прописывать ваши ipv6 что выделил хостинг, советаю Вам переустановить повторно ОС на туже Ubuntu 14.04 amd 64, как это сделать описано в этой статье .

Тем самым нам не придётся настраивать сеть на сервере и она  настроится автоматически.

Всё мы убедились что наши ipv6 пингуются, что говорит о правильной настройки сети. Повторюсь что как настроить сеть и проверить пинг описано здесь.

Приступим к настройке и поднятию самих прокси.
Для этого забиваем поочерёдно команды что я напишу ниже и ждём полного их выполнения.

Перед этим откроем ftp клиент на сервере и закачаем 6 deb файлов в директорию root.

как поднять прокси на ubuntu 14.04 amd 64
как поднять прокси на ubuntu 14.04 amd 64

Вбиваем поочерёдно команды

1 команда

apt-get install squid-langpack

2 команда

apt-get install libecap2 libltdl7 libnetfilter-conntrack3 ssl-cert libmnl0

3 команда

dpkg -i squid3-common_3.3.8-1ubuntu6.6_all.deb

4 команда

dpkg -i squid3_3.3.8-1ubuntu6.6_amd64.deb

Чистим файл squid.conf

echo "" > /etc/squid3/squid.conf

Переходим в директорию squid3

cd /etc/squid3/

Копируем скрипт squid.sh по генерации squid.conf (перед этим его подредактировав)

как поднять прокси на squid
как поднять прокси на squid

Создаём ip.list

nano ip.list

И копируем туда все наши ipv6 что выдал хостинг (в столбик)

Сохраняем и закрываем файл, нажав сочетание клавиш Ctrl+O, Enter, Ctrl+X

Меняем права на использование файла squid.sh

chmod +x squid.sh

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

./squid.sh > squid.conf

После открываем только что созданный конфигуратор squid.conf через notepadd++ и в конец добавляем следующее содержимое (или открываем командой nano squid.conf)

# Установка директории кэша и его настройка
 cache_dir ufs /var/spool/squid3 100 16 256
 minimum_object_size 2 KB
 maximum_object_size 61440 KB
 coredump_dir /var/spool/squid3
#----------
 refresh_pattern ^ftp: 1440 20% 10080
 refresh_pattern ^gopher: 1440 0% 1440
 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
 refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
 refresh_pattern . 0 20% 4320
 #----------
 dns_v4_first off
#----------
 #анонимный
 via off
 forwarded_for delete

Сохраняем файл.
Выполняем 2 последовательно команды

service squid3 restart
squid3 -k check

Добавляем команды файерволла в автозапуск:

nano /etc/rc.local

И прописываем перед последней строчкой exit 0

iptables -A OUTPUT -o eth0 -m owner -p tcp --dport 443 --uid-owner proxy -j REJECT
iptables -A OUTPUT -o eth0 -m owner -p tcp --dport 80 --uid-owner proxy -j REJECT

Выполняем команду

/etc/rc.local

Перезапускаем squid

service squid3 restart

Устанавливаем htpasswd

apt-get install apache2-utils

Добавляем юзера, вместо *** прописываем желаемый логин для авторизации прокси

htpasswd -c /etc/squid3/internet_users ***

Попросит 2 раза ввести пароль (ВНИМАНИЕ! ПРИ ВВОДЕ ПАРОЛЯ НЕ ПОЯВЛЯЕТСЯ НИ ЗВЕЗДОЧКИ, НИ СИМВОЛЫ, НО НАБИРАЯ ИЛИ ВСТАВЛЯЯ ЛЮБОЙ ПАРОЛЬ СТРОКА ОСТАЕТСЯ ПУСТОЙ)

Перезапускаем squid и ребутаем

service squid3 restart
reboot

После ребута формируем наш прокси лист (я это делаю в exele) и можем чекать наши прокси
На этом настройка прокси закончена.

Если у Вас возникли вопросы, можете написать мне в личку вк https://vk.com/borisbaktashev

Так же я предоставляю услугу по настройки прокси и провожу обучение.

 

Настройка 3proxy ipv6

Настройка 3proxy ipv6

Приветствую дорогой читатель моего блога.

Сегодня будем рассматривать настройку ipv6 на 3proxy.
Как Вы знаете для настройки прокси используются 2 основных прокси серверов. Это squid и 3proxy.

Сейчас будем рассматривать настройку 3proxy на операционной системе Centos 6 (можно использовать и другие ОС-такие как debion или ubuntu).

В первую очередь нужно приобрести сервер. Для этого я использую хостинг http://cloud4box.com

Цены на этом хостинге приемлемые и они следят за попадание их подсетей в чёрный список социальных сетей.
Покупаем сервер по инструкции  (после добавления сервера в корзину, не забудьте воспользоваться 30 % скидкой на покупку сервера, применив наш промо код «bo07943») Единственное выберите операционную сиситему CentOS-6-amd64.
После подгрузки всех ipv6, можно начинать настройку прокси. Кстати при повторной переустановки ОС, сервер не нуждается в дополнительной настройки сети и править интерфейсы не придётся. Так что для новичков лучше повторно переустановить ОС на ту же CentOS-6-amd64. Для этого зайдите в личный кабинет на сайте http://cloud4box.com и перейдите во вкладку «Виртуальные серверы»

 

 

как настроить прокси ipv6 на 3 proxy
как настроить прокси ipv6 на 3 proxy

Тапнуть по самому серверу и кликнуть на «перейти»

screenshot_20

Далее по скрину

screenshot_21

После того как переустановили ОС, подключаемся через SSH клиент к серверу и проверяем интерфейсы-прописались ли наши ipv6.

Для этого забиваем следующую команду

ifconfig

Должно появиться следующее (прописаться наши ipv6 и Scope:Global)

screenshot_22

Если у вас отобразилось тоже самое , то идём дальше.

Проверим пинг 1 из адреса

ping6 -I 2001:470:ebc3:b55:7e53:b58d:cffc:4ecd ipv6.google.com

Подставив вместо 2001:470:ebc3:b55:7e53:b58d:cffc:4ecd свой ipv6, что выдал хостинг.
Должны пойти пинги как на скрине ниже
screenshot_23
Если пинг есть, то сеть настроена и наши ipv6 работают. Чтобы остановить пинг нажмите сочетание клавиш ctrl+C

Теперь можем приступать к установки дистрибутивов и прокси сервера 3proxy.

Я не буду разбирать описание команд-просто копируйте команды последовательно, дождавшись их полного выполнения. Для того чтобы вставить команду из буфера в консоль — необходимо нажать сочетание клавиш Shift+Insert или тапнуть в область консоли ПКМ.
1 команда

yum update && yum -y install wget gcc mc net-tools nano

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

screenshot_24

Откроется папка root, куда мы и должны положить архив 3proxy-0.8.6.tar.gz и скрипт по созданию конфига (перед этим его надо немного подредактировать-рассмотрим ниже)

screenshot_25

Рассмотрим скрипт который создаёт конфигуратор 3proxy.cfg с одним логином и паролем для авторизации прокси. Я использую ещё скрипт который создаёт прокси с уникальными логинами и паролями для каждого прокси (так же имеется в комплекте).

Откроем скрипт через редактор Notepad++  и редактируем данные по авторизации прокси и прописываем свой основной ipv4 адрес сервера.

screenshot_26

Вот теперь можно забивать следующие команды

Разархивируем 3proxy-0.8.6.tar.gz

tar zxfv 3proxy-0.8.6.tar.gz

Открываем директорию

cd 3proxy-3proxy-0.8.6/

Компилируем

make -f Makefile.Linux

Создаём директорию

mkdir /usr/local/3proxy

Копируем бинарник

cp src/3proxy /usr/local/3proxy/

Делаем полные права пользователя

chmod +x /usr/local/3proxy/3proxy

Создаем файл ip.list

nano ip.list

И вставляем все наши ipv6 в столбик, что выдал хост.

Сохраняем и закрываем файл, нажав сочетание клавиш Ctrl+O, Enter, Ctrl+X

Добавляем публичные ДНС, для этого открываем файл

nano /etc/resolv.conf

и вписываем внизу файла

nameserver 2001:4860:4860::8888
nameserver 2001:4860:4860::8844

Сохраняем и закрываем файл, нажав сочетание клавиш Ctrl+O, Enter, Ctrl+X

Отключаем фаерволы

chkconfig iptables off && service iptables stop
chkconfig ip6tables off && service ip6tables stop

Меняем права использования скрипта

chmod +x 3proxy.sh

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

./3proxy.sh > 3proxy.cfg

Запускаем 3proxy

/usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg

Убиваем процесс 3proxy.cfg

killall 3proxy

Увеличиваем лимиты

ulimit -n 600000
ulimit -u 600000

И снова запускаем 3proxy

/usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg

Добавление в автозагрузку файл

nano /etc/rc.local

приведите к виду

#!/bin/bash
 ulimit -n 600000
 ulimit -u 600000
 modprobe ipv6
 /usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg
 exit 0

Сохраняем и закрываем файл, нажав сочетание клавиш Ctrl+O, Enter, Ctrl+X Всё наши прокси готовы.
Осталось сформировать наш прокси лист, который будет сосотоять из нашего основного ipv4 сервера, порта и логина и пароля. Все эти данные мы прописывали с вами в конфигураторе. Меняется лишь порт. начальный порт 30000

Можно чекать их прокси чекером или проверить их работоспособность через браузер.