Личный прокси с пионерками и пятнашками. Заметка основана на разных руководствах из инета и личном опыте
Озадачился я созданием личного прокси с пионерками и пятнашками. Решил строить его на зарубежном хостинге и после некоторого времени наткнулся на украинский HyperHost (вот реферальная ссылка: https://hyperhost.ua/client/aff.php?aff=1045). Условия мне показались довольно приятными и вкусными: чуть меньше 300р в месяц. К тому же контора даёт 7 бесплатных дней на тестирование.
Регистрируюсь. Через некоторое время звонят на указанный при регистрации телефон, задают пару вопросов (зачем мне хостинг и нужна-ли помощь) и высылают на мыло данные для доступа к личному кабинету.
VPS я выбрал с предустановленным Ubuntu16. Подключаюсь к серверу по SSH (логин: root) и начинаю таинство созидания.
Для начала качаем исходники и собираем:
apt update
apt upgrade
apt install nano git wget curl autoconf automake libtool pkg-config checkinstall libwrap0 libwrap0-dev libpam0g-dev
mkdir dante && cd ~/dante
wget https://www.inet.no/dante/files/dante-1.4.2.tar.gz
tar -zxvf dante-1.4.2.tar.gz
cd dante-1.4.2
./configure --prefix=/etc/dante
make
checkinstall
Отвечаем yes на все вопросы.
Устанавливаем:
dpkg -i /root/dante/dante-1.4.2/dante_1.4.2-1_amd64.deb
Создаем конфигурационный файл:
nano /etc/sockd.conf
И вписываем туда это:
internal: venet0:0 port = 2013
external: venet0:0
user.privileged: root
user.notprivileged: nobody
socksmethod: username
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
}
socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
command: bind connect udpassociate
}
Создаем пользователя и задаем ему пароль (это будет логин/пароль для нашего прокси):
useradd -s /usr/sbin/nologin username
passwd username
Для запуска нашего прокси будем использовать rc.local:
nano /etc/rc.local
Перед строкой exit 0 вписываем такую строчку:
/etc/dante/sbin/sockd -f /etc/sockd.conf -D
Вот и всё! Перезагружаем наш сервер и у нас работает свой личный SOCKS5 прокси. Но использовать его для телеги мы не будем. Для телеграм мы поднимем другой сервис!
Для начала, узнаем, что такое MTProxy:
MTProto Proxy или MTProxy — это сетевой протокол семейства MTProto нового поколения, разработанный командой Telegram. Трафик шифруется по криптографическому протоколу MTProto (Telegram Messaging Protocol), на основе которого шифруются все данные в инфраструктуре Telegram. Данный протокол используется только внутри Telegram и трафик извне по нему не проходит. Для подключения вместо логина и пароля, как в SOCKS, достаточно только пароля. Трафик зашифрован секретным ключом и почти не отличается от обычного HTTPS или TLS. Для подключения к MTProxy достаточно кликнуть по ссылке с ним. Работает на всех десктопных и мобильных версиях Telegram.
Ставить будем Async MTProto Proxy от alexbers. Спросите меня "почему не из официальных репозиториев?". Отвечаю "эта версия ставится всего несколькими командами".
Итак, начинаем:
apt install git nano python3
git clone -b stable https://github.com/alexbers/mtprotoproxy.git; cd mtprotoproxy
Создаём секретный ключ:
head -c 16 /dev/urandom | xxd -ps
Запоминаем полученные буковки-циферки.
Открываем конфиг:
nano /root/mtprotoproxy/config.py
И приводим к такому виду:
PORT = 443
# name -> secret (32 hex chars)
USERS = {
"tg": "СЕКРЕТНЫЙКЛЮЧ" # тут в кавычки вставляем результат команды "head -c 16 /dev/urandom | xxd -ps"
}
# Makes the proxy harder to detect
# Can be incompatible with very old clients
SECURE_ONLY = True
# Makes the proxy even more hard to detect
# Compatible only with the recent clients
TLS_ONLY = True
# The domain for TLS, bad clients are proxied there
# Use random existing domain, proxy checks it on start
TLS_DOMAIN = "www.yandex.ru"
# Tag for advertising, obtainable from @MTProxybot
# AD_TAG = "3c09c680b76ee91a4c25ad51f742267d"
Тут всё просто до полного безобразия. Открываем crontab:
crontab -e
И вставляем туда такую строку:
@reboot /usr/bin/python3 /root/mtprotoproxy/mtprotoproxy.py
Ссылку для распространения между друзьями узнаем запустив установленный сервер:
/usr/bin/python3 /root/mtprotoproxy/mtprotoproxy.py
Если всё хорошо, то увидим подобное:
Вот то что после первого tg: и есть наша ссылка для автоматической настройки мессенджера телеграм
Нижняя Тура, Россия
На форуме: Amarok