DNS-перенаправление или прокси-заглушку через iptables + nginx/apache.

Download the latest version of the modification

DNS-перенаправление или прокси-заглушку через iptables + nginx/apache.

Если вы хотите сделать так, чтобы при попытке зайти на заблокированный сайт пользователь видел сообщение о блокировке (например, как у Роскомнадзора), можно использовать DNS-перенаправление или прокси-заглушку через iptables + nginx/apache.

1. Вариант: DNS-подмена (самый простой)

Настроить локальный DNS (например, dnsmasq), чтобы заблокированные домены перенаправлялись на ваш IP с заглушкой.

# В /etc/dnsmasq.conf добавляем:
address=/заблокированный-сайт.ru/192.168.1.100

Где 192.168.1.100 — IP вашего сервера с веб-заглушкой.

2. Вариант: iptables + веб-сервер (nginx/apache)

Шаг 1: Настроить перехват трафика на 80/443 порт

# Перехватываем HTTP-запросы (80 порт) и перенаправляем на локальный веб-сервер
iptables -t nat -A PREROUTING -p tcp --dport 80 -d заблокированный-сайт.ru -j DNAT --to-destination ваш-сервер:80

# Если нужен HTTPS (443 порт), то аналогично:
iptables -t nat -A PREROUTING -p tcp --dport 443 -d заблокированный-сайт.ru -j DNAT --to-destination ваш-сервер:80

Шаг 2: Настроить веб-сервер (nginx) для заглушки

server {
    listen 80;
    server_name заблокированный-сайт.ru;

    location / {
        return 200 "Доступ к сайту заблокирован по решению администратора";
        # Или можно отдавать HTML-страницу:
        # root /var/www/blocked;
        # index index.html;
    }
}

Можно сделать красивую страницу в стиле РКН.

3. Вариант: Прозрачный прокси (Squid) с подменой

Если у вас стоит Squid, можно настроить deny_info:

acl blocked_sites dstdomain .rutracker.org .thepiratebay.org
http_access deny blocked_sites
deny_info http://ваш-сервер/blocked.html blocked_sites

И разместить на ваш-сервер/blocked.html сообщение о блокировке.

Итог

  • Самый простой способ — DNS-подмена (dnsmasq).

  • Более надежныйiptables + nginx (перехват трафика + заглушка).

  • Для корпоративных сетей — Squid с deny_info.

Если нужно полное подобие РКН, можно сделать редирект на страницу с объяснением причины блокировки.

Download Files

Downloads

No comments yet.

Добавить комментарий

Поделитесь своим мнением

Insulting, harassing, or discussing politics is prohibited, especially in light of the war between Ukraine and Russia. We'll ban you without the possibility of recovery.

Подтвердите, что вы не робот

Комментарий будет опубликован после проверки
или
регистрация Я забыл свой пароль
Оцените работу движка
Статистика