Skip to content

ImMALWARE/dns.malw.link

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dns.malw.link

Вся информация для пользователей тут: https://info.dns.malw.link

DNS и SNI Proxy обходят блокировки IP-адресов от самих сервисов. Блокировки РКН обходить они не имеют возможности, потому что РКН блокирует сайты по SNI. IP-блокировки РКН эта система обойти сможет, но их уже почти не встретишь.

Установка на свой сервер

Требуется хоть какое-то базовое знание Linux и командной строки.

  1. Склонируйте репозиторий:

    git clone --depth 1 https://github.com/ImMALWARE/dns.malw.link
  2. Убедитесь, что у вас установлены пакеты curl, dig, docker, docker-compose, nano, socat.

    Для установки Docker и Docker-compose можно использовать команды:

    curl -fsSL https://get.docker.com -o get-docker.sh
    sh get-docker.sh
  3. Убедитесь, что у вас свободны порты 53, 80, 443, 853, 8443, 9339, 30000.

    • 53 - UDP DNS сервер
    • 80 - Временный HTTP сервер для генерации SSL сертификатов через acme.sh
    • 443 - SNI Proxy/DNS-over-HTTPS
    • 853 - DNS-over-TLS
    • 8443 - Не будет открыт для внешних подключений, используется для внутренней системы
    • 9339 - Прокси для одной из игр Supercell, кроме mo.co
    • 30000 - Прокси для игры mo.co

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

  4. Запустите автоматический установщик

    cd dns.malw.link
    ./installer.sh
  5. Следуйте инструкциям установщика. Он спросит о выборе компонентов.

Как это работает

DNS-сервер dnsdist настроен отвечать IP-адресом специального прокси-сервера на запросы chatgpt.com, gemini.google.com и т.д. На этом сервере запущен nginx на порту 443. В результате ваш браузер отправляет запросы для chatgpt.com к этому прокси-серверу вместо настоящего сервера.

Содержимое запросов полностью зашифровано, за одним исключением - SNI (имя домена). Nginx считывает этот SNI и перенаправляет весь поток данных на настоящий сервер, а затем возвращает ответ от него обратно вашему браузеру.

Таким образом, chatgpt.com получает запросы с вашими данными, но видит IP-адрес прокси-сервера, а не вашего компьютера, и поэтому не применяет блокировку. При этом весь трафик остается зашифрованным, потому что прокси-сервер не обладает приватным ключом чужих доменов.

На домены, которых лучше бы не существовало, он отвечает адресом 0.0.0.0. Такого адреса не существует, поэтому запросы к ним просто сбрасываются.

Вместо настройки DNS-сервера можно отредактировать файл hosts. hosts - это текстовый файл со списком доменов и их IP-адресов. Каждый раз, когда вы вводите домен в браузере, сначала проверяется файл hosts, и если там есть запись для этого домена, то сразу берётся это значение, DNS-запрос не отправляется. В hosts для тех же доменов тоже указан IP-адрес прокси-сервера.

У доменов, которых лучше бы не существовало, тоже в hosts указан адрес 0.0.0.0

About

DNS-сервер + SNI Proxy обходят IP-блокировки сайтов

Resources

License

Stars

417 stars

Watchers

11 watching

Forks

Sponsor this project

Contributors

Languages