В этой статье я расскажу как поднять и настроить тунельные прокси на debian
Первым делом покупаем сервер на http://cloud4box.com/
Для этого регистрируемся на сайте и заходим в панель управления
Переходим во вкладку виртуальные серверы и заказываем сервер
Выбираем сервер за 170 руб и ложим в корзину.
Выбираем ОС — Debian-8-x86_64
Теперь воспользуемся промокодом «bo07943», который даст нам скидку. Доменное имя выберете любое или оставьте пустым.
Оплачиваем заказ и переходим на сайт тунельброкера https://www.tunnelbroker.net/
Проходим регистрацию. Затем создаём туннель. Для этого кликаем на Create Regular Tunnel
Копируем наш ipv4 от сервера
И вставляем в поле IPv4 Endpoint (Your side) и тапаем на пустое место
Наш ipv4 проверится на валидность и высветится надпись «IP is a potential tunnel endpoint» на зелёном фоне.
Если этого не произошло -значит ваш сервер ещё не активен. Подождите.
Выбираем любую локацию и жмём «Create Tunnel»
После жмём на Assign /48
И видим что нам выделили /48 подсеть. Нам она пригодиться в дальнейшем.
Переходим во вкладку «Example Configurations» и выбираем Debian/Ubuntu
Появятся наши настройки СЕТИ, которые нам тоже пригодятся!
Переходи непосредственно к настройки сервера. Для этого нам нужен SSH клиент, если у вас его нет , то качайте
Открываем ssh клиент и вбиваем ipv4 от нашего сервера и пароль от ssh (лежат в письме на почте, которую вы указали при реги) и логинимся.
Если не нашли письмо от хостинга то пароль можно узнать нажав на кнопку «перейти»
Затем жмём «изменить»
и тут увидим наш пароль от ssh
Появляется консоль. Остальные окна нам пока не нужны. Работаем с консолью.
Первым делом подготавливаем сервер.
Вставляем команду (тапаем в области чёрной консоли правой кнопкой мышки)
apt-get update
След команды
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
Закрываем консоль и после ребута открываем новое
Скачиваем и компилируем ndppd
apt-get -y install vim git gcc g++ makegit clone https://github.com/DanielAdolfsson/ndppd.git cd ndppd make all && make install
Теперь давайте настроим сеть, для этого переходим на сайт тунельброкера во вкладку «Example Configurations» и копируем содержимое
Открываем
nano /etc/network/interfaces
И вставляем из буфера в самый низ дока наши настройки.
Сохраняем документ и закрываем , нажав сочетаний клавиш 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
) на свою, для этого скопируйте свою подсеть с сайта тунельброкера
Сохраняем документ и закрываем , нажав сочетаний клавиш ctrl+O, Enter, ctrl+X
Ребутаем наш сервер, для того чтобы настройки сети вступили в силу
reboot
После ребута зайдём опять в консоль и забьём команду
ifconfig
И увидим что появился у нас новый интерфейс he-ipv6
Идём дальше )))
Запускаем наш ndppd
ndppd -d -c /root/ndppd/ndppd.conf
Должны появится 3 строчки как на скрине ниже
Скачиваем и устанавливаем 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 — наша подсеть, которую мы получили у брокера (выше мы её уже копировали)
Сохраняем документ и закрываем , нажав сочетаний клавиш 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 и наша строка автоматически с копируется
Заменим в команде ниже на наш ipv6 (соблюдаем пробелы)
ping6 -I 2001:470:5b3a:7670:154с:5f61:5579:dda8 ipv6.google.com
Закройет наш ip.list, нажав ctrl+X
А теперь скопируем эту команду и ставим в консоль и нажмём enter
Должны пойти пинги как на скрине ниже. Если этого не наблюдается, то вы где то ошиблись и сеть у вас не настроена.
Для того чтобы остановить пинг, нажимаем ctrl+C
Скачиваем скрипт 3proxy.sh на сервер в папку 3proxy
wget https://kak-podnyat-proksi-ipv6.ru/3proxy.sh
Устанавливаем права на выполнение
chmod +x 3proxy.sh
Редактируем наш скрипт, для этого открываем его
nano 3proxy.sh
И меняем содержимое согласно скрину ниже. Где логин и пароль к прокси устанавливаете на ваш вкус
Запускаем наш скрипт
./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:порт:логин:пароль
Начальный порт прописан в скрипте, как и все остальные данные. Напомню!!!
Будет меняться только наш порт от 30000-до 30499 в нашем случае. Полный список прокси я формирую в exle
Всем спасибо за внимание.
ПОКА, ПОКА !!!! )))
Бро, исправь в пункте «Скачиваем и устанавливаем 3proxy» команды, там повторяешься с ndppd. А так спасибо за мануал, очень помог :)
Поправил. Спасибо за внимательность)
Подскажите, пожалуйста, почему во время установки apt-get install gcc++ git make screen mc wget, в конце выдает оповещение о проблеме установки пакетов:
The following packages have unmet dependencies:
gcc-doc : Depends: gcc-4.9-doc (>= 4.9.1-2) but it is not installable
gccgo-doc : Depends: gccgo-4.9-doc (>= 4.9.1-2) but it is not installable
E: Unable to correct problems, you have held broken packages.
Попробуйте в начале обновить apt-get update && apt-get -y upgrade