Как заблокировать сайты с помощью iptables

Я хотел бы заблокировать сайты с помощью iptables . Как мне это сделать, и как я могу обеспечить сохранение правил iptables ?

  • Как увидеть попытки подключения, отклоненные брандмауэром в режиме реального времени?
  • Настройка Iptables NATforwarding
  • Предел пропускной способности по порту на iptables
  • Настройка маршрутизации и iptables для нового VPN-подключения для перенаправления ** только ** портов 80 и 443
  • Выключатель kill OpenVPN не работает
  • Разделение двух сетей
  • Какие правила iptables разрешают ntp?
  • Как настроить iptables для трафика на порт 80 из определенных источников
  • 6 Solutions collect form web for “Как заблокировать сайты с помощью iptables”

    Блокирование сайтов с помощью правил iptables – очень плохая идея, главным образом потому, что iptables (так как большинство брандмауэров) имеет дело с IP-адресами, а отношения между сайтом и его IP-адресом довольно слабы:

    1. На одном сайте может быть много IP-адресов, которые могут быть изменены довольно часто. Как только правила iptables создаются, даже если вы укажете имя сайта как часть правила, используется первый IP-адрес в этот момент . Если адрес сайта изменяется, ваши правила iptables будут устаревшими.

    2. Один IP-адрес может содержать множество сайтов (и это часто бывает). Это будет только чаще, из-за нехватки IP-адресов. Если вы блокируете IP-адрес, вы блокируете все размещенные на нем сайты.

    Поэтому, хотя в других ответах объясняется, как вы это делаете, я настоятельно призываю вас найти другое решение. Например, установка прозрачного HTTP-прокси обеспечит то, что вам нужно. Этот прозрачный HTTP-прокси HOWTO немного устарел, но он поможет вам начать работу.

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

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

    Вы можете использовать сопоставление строк iptables для достижения этого:

     iptables -A OUTPUT -p tcp -m string --string "block-me.com" --algo kmp -j REJECT 

    -A OUTPUT добавляет следующее правило в цепочку OUTPUT .

    -m string --string "block-me.com" --algo kmp сообщает iptables искать строку block-me.com с использованием алгоритма соответствия Knuth-Morris-Pratt .

    Самый простой способ сделать ваши iptables восстанавливается при перезагрузке вашего компьютера – установить пакет iptables-persistent если он доступен в вашей системе. Если вы установите пакет после установки новых правил, вас спросят, хотите ли вы сохранить используемые в настоящее время правила для постоянного использования. iptables-persistent основном просто загружает правила, сохраненные в файлах /etc/iptables/rules.v4 и /etc/iptables/rules.v6 .

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

     iptables-save > /etc/iptables/rules.v4 iptables-save > /etc/iptables/rules.v6 

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

    На самом деле вам также не нужны iptables-persistent . У этого вопроса есть еще одно почти простое решение.

    Обратите внимание, что вам нужно запустить iptables-save как root, или с помощью sudo :

     sudo bash -c "iptables-save > /etc/iptables/rules.v4" 

    Если вы просто запустите sudo iptables-save > /etc/iptables/rules.v4 вы получите сообщение «access denied» для rules.v4 .

    Существует несколько способов ограничить сайты https.

    1- Squid Proxy

    2- IPtables

    С Squid Proxy Server

    -> Откройте конфигурацию Squid в моем случае (vim /etc/squid/squid.conf)

    -> Поместите правила, как определено.

    Acl badsite dstdomain .facebook.com .soundcloud.com .playit.pk .songs.com

    Http_reply_access deny badsite # Эта строка блокирует HTTP

    Http_access deny CONNECT badsite # Этот блок строк HTTPS

    -> После этого перезапустите кальмара

    С Iptables Вам нужно установить правила как определить здесь

    Iptables -N STREAM

    Iptables -I OUTPUT -m string –string "www.facebook.com" –algo bm – from 1 –to 600 -j STREAM

    Iptables -I OUTPUT -m string –string "facebook.com" –algo bm – from 1 –to 600 -j STREAM

    Iptables -I FORWARD -m string –string "www.facebook.com" –algo bm – from 1 –to 600 -j STREAM

    Iptables -I FORWARD -m string –string "facebook.com" –algo bm – from 1 –to 600 -j STREAM iptables -A STREAM -j REJECT

    В разделе gentoo, чтобы сохранить правила iptables, которые вы добавили, используйте

     /etc/init.d/iptables save 

    Тем не менее, вам также необходимо убедиться, что сценарий инициализации iptables (целью которого является перезагрузка правил) запускается при загрузке:

     rc-update add iptables default 

    Обе команды должны выполняться как root (через sudo, если вы его установили)

    Ok, Предположим, вы хотите заблокировать IP-адрес 192.168.1.5, просто введите это в командной строке в свой сценарий оболочки:

     iptables -A INPUT -s 192.168.1.5 -j DROP 

    Затем вы можете заблокировать исходящий IP-адрес 192.168.1.2 с сервера с помощью этой команды:

     iptables -A OUTPUT -d 192.168.1.2 -j DROP 

    И он должен блокировать этот сайт, когда-либо беспокоя вас. надеюсь это поможет.

     -A INPUT -p tcp -m tcp -d www.facebook.com -j DROP 

    Мы просто изучили его сегодня

    Debian 7

    Если вы хотите разрешить им пинговать этот сайт, просто добавьте --dport 80,443 после имени веб-сайта

    Interesting Posts

    Когда rm удаляет открытые файлы?

    Обновление Windows 8.1 с 32-разрядной версией до версии Windows 64 с 64-разрядной версией

    Кнопка «Пуск» для Windows 8

    Каков самый чистый способ написать формулу массива, чтобы облегчить добавление большего количества строк?

    SSD в Windows XP

    Как запустить оболочку Windows 7 Explorer с привилегиями администратора по умолчанию?

    Будет ли обновление до Windows 10 с 8.1 удалять существующий вирус и вредоносное ПО ..?

    Принудительное приложение для запуска в 32-битном процессе в 64-битной Windows

    Как переключаться между языками в Windows 10, как в OS X?

    Скрипт Windows для копирования некоторого текста в буфер обмена?

    Браузер, где я могу добавить свой собственный CSS или Javascript

    Серьезность ошибки «умного» диска. Как долго это будет продолжаться?

    Может кто-нибудь объяснить, как это произошло?

    Способ записи загрузочного компакт-диска в раздел?

    У вас есть надстройка для Firefox, например NoScript, но для файлов cookie (что позволяет сделать белый список во время просмотра в Интернете)?

    Давайте будем гением компьютера.