Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
1984tech [2018/05/25 13:46] |
1984tech [2022/09/24 14:39] (поточний) |
||
---|---|---|---|
Рядок 1: | Рядок 1: | ||
+ | ====== 1984tech - блокування за списком доменів ====== | ||
+ | {{ : | ||
+ | Декілька посилань для загального розвитку: | ||
+ | * [[https:// | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | |||
+ | Трохи технологічних посилань: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | Списки доменів: | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ====== Завантаження та налаштування ====== | ||
+ | |||
+ | Завантажуємо, | ||
+ | |||
+ | # wget --no-check-certificate https:// | ||
+ | # unzip master.zip | ||
+ | # cd 1984tech-master/ | ||
+ | |||
+ | Для використання функціоналу з блокування доменів по їх IP адресах, | ||
+ | |||
+ | # pear install Net_DNS2 | ||
+ | |||
+ | ====== Блокування доменів засобами DNS / ISC-BIND ====== | ||
+ | | ||
+ | Робимо конфігурацію cli/ | ||
+ | |||
+ | # php cli/dnsgen --preview | ||
+ | | ||
+ | Далі можна переходити до розгортання пресетів | ||
+ | | ||
+ | # cat named/ | ||
+ | # cp -R named/ | ||
+ | |||
+ | Переконуємось, | ||
+ | # php cli/dnsgen --preview > / | ||
+ | | ||
+ | або вірно виставити повний шлях до цього файлу у конфізі cli/ | ||
+ | # php cli/dnsgen --generate | ||
+ | |||
+ | або ж просто використовуйте сімлінки ФС. Загалом, | ||
+ | |||
+ | Список завантажуваних доменів, | ||
+ | # php cli/dnsgen --list | ||
+ | |||
+ | А також ознайомитись з усіма опціями що підтримуються, | ||
+ | # php cli/dnsgen --help | ||
+ | | ||
+ | Не забуваємо, | ||
+ | # / | ||
+ | |||
+ | А після оновлення файлу зон варто зробити | ||
+ | # rndc reload | ||
+ | | ||
+ | |||
+ | У випадку, | ||
+ | # cp -R webstub / | ||
+ | # chmod -R 777 / | ||
+ | | ||
+ | ====== Блокування доменів засобами DNS / unbound ====== | ||
+ | |||
+ | Працює приблизно таким самим чином, як і блокування за допомогою bind - тобто генеруючи кастомні файли зон. Для цього також використовується скрипт cli/dnsgen з наступними параметрами: | ||
+ | # php cli/dnsgen --preview-unbound | ||
+ | |||
+ | для попереднього перегляду, | ||
+ | # php cli/dnsgen --generate-unbound | ||
+ | |||
+ | Для генерації файлу зон. Де його буде згенеровано, | ||
+ | Далі, | ||
+ | < | ||
+ | include: "/ | ||
+ | </ | ||
+ | |||
+ | Якось так: \\ | ||
+ | {{: | ||
+ | |||
+ | Після чого, героїчно це все перезавантажуємо | ||
+ | # unbound-control reload | ||
+ | | ||
+ | ====== Блокування засобами фаєрволу / IPFW ====== | ||
+ | |||
+ | Далі як водиться редагуємо конфіг cli/ | ||
+ | |||
+ | Перш за все, нам необхідно буде вирішити, | ||
+ | |||
+ | # ipfw add 1984 deny ip from any to table\(42\) | ||
+ | # ipfw add 1984 deny ip from table\(42\) to any | ||
+ | |||
+ | або ж використати заворот за допомогою fwd, якось так: | ||
+ | # ipfw add 1984 fwd 127.0.0.1, | ||
+ | # ipfw add 1984 fwd 127.0.0.1, | ||
+ | |||
+ | Працездатність можна перевірити наприклад подивившись як резолвляться домени | ||
+ | # php cli/ipfwgen --resolve | ||
+ | | ||
+ | або як виглядає скрипт, | ||
+ | # php cli/ipfwgen --preview | ||
+ | |||
+ | Далі включаємо фантазію, | ||
+ | # php cli/ipfwgen --generate | ||
+ | | ||
+ | або напряму апдейтимо табличку у фаєрволі за допомогою | ||
+ | # php cli/ipfwgen --tableupdate | ||
+ | | ||
+ | ====== Блокування засобами Mikrotik ====== | ||
+ | |||
+ | При великому бажанні, | ||
+ | Детальніше з його опціями, | ||
+ | |||
+ | # php cli/mtgen --help | ||
+ | |||
+ | Візуально ви можете перевірити, | ||
+ | # php cli/mtgen --preview | ||
+ | | ||
+ | У цілому все виглядає аналогічно блокуванню за допомогою фаєрволу ipfw. Також ви можете спробувати скористатись блокуванням за іменем домену, | ||
+ | # php cli/mtgen --listmk | ||
+ | |||
+ | ====== Блокування засобами Mikrotik static DNS records ====== | ||
+ | Для самих маленьких/ | ||
+ | Зробити то можна наступним способом: | ||
+ | |||
+ | * візуально можете перевірити генерацію за допомогою | ||
+ | |||
+ | # php cli/ | ||
+ | | ||
+ | |||
+ | |||
+ | * згенерувати файл (шлях до якого задається опцією **MT_DNSSTATIC_SCRIPT_PATH**) з готовим скриптом для копіпасту до Mikrotik CLI/ | ||
+ | |||
+ | # php cli/ | ||
+ | |||
+ | Також, для тих, хто працює виключно через Winbox і страшенно боїться Mikrotik CLI/ | ||
+ | * створюємо скрипт **StaticDNSAdder.rsc** на Mikrotik і копіпастимо в нього вміст одноіменного скрпта // | ||
+ | * створюємо файлові чанки (шлях до каталогу, | ||
+ | |||
+ | # php cli/ | ||
+ | |||
+ | * кладемо створені чанки, які будуть іменуватись якось так **mt_dnsstatic_chunk_< | ||
+ | * запускаємо скрипт, | ||
+ | |||
+ | Дуже рекомендовано ознайомитись з іншими опціями **MT_DNSSTATIC_*** в **1984tech.ini** \\ | ||
+ | Додатковий мануал [[https:// | ||
+ | |||
+ | ====== Блокування на Linux засобами ipset/ | ||
+ | |||
+ | Перш за все, потрібно перевірити опції в cli/ | ||
+ | # ipset -N blacklist iphash | ||
+ | # iptables -t filter -A FORWARD -m set --match-set blacklist dst -j DROP | ||
+ | |||
+ | Далі ми можемо отримати скрипт оновлення списку в ipset за допомогою команди | ||
+ | # php cli/ | ||
+ | |||
+ | У випадку, | ||
+ | # php cli/ | ||
+ | |||
+ | Також ви можете захотіти (ми не знаємо причин для цього) використовувати для блокування просто iptables. Скрипт для оновлення вашого фаєрволу ви можете отримати за допомогою команди | ||
+ | # php cli/ | ||
+ | |||
+ | |||
+ | ====== Блокування засобами проксі / Squid ====== | ||
+ | Squid - виконує функцію прозорого проксі, | ||
+ | * При блокуванні HTTP трафіку - клієнтові показується наша сторінка з причиною блокування. | ||
+ | * При блокуванні HTTPS трафіку - Squid просто скидає з' | ||
+ | |||
+ | < | ||
+ | Неможливо отримати доступ до сайту | ||
+ | </ | ||
+ | |||
+ | Як це все насправді працює і налаштовується, | ||
+ | |||
+ | ====== Блокування засобами Juniper ====== | ||
+ | |||
+ | Тут також все типово. Аж одна опція у конфізі JUN_LISTNAME, | ||
+ | |||
+ | # php cli/jungen --preview | ||
+ | |||
+ | Та наступні налаштування фаєрволу: | ||
+ | |||
+ | < | ||
+ | MX80# set firewall family inet filter blacklist-ip-drop interface-specific | ||
+ | MX80# set firewall family inet filter blacklist-ip-drop term drop from destination-prefix-list blacklist-ip | ||
+ | MX80# set firewall family inet filter blacklist-ip-drop term drop then discard | ||
+ | MX80# set firewall family inet filter blacklist-ip-drop term other then accept | ||
+ | MX80# set interfaces xe-0/0/0 unit 1111 family inet filter output blacklist-ip-drop | ||
+ | </ | ||
+ | |||
+ | |||
+ | ====== Блокування засобами Cisco ====== | ||
+ | |||
+ | Вказуємо за допомогою опції CIS_LISTNUM номер адрес ліста для чорного списку, | ||
+ | # php cli/cisgen --preview | ||
+ | |||
+ | Використовувати це можна за допомогою: | ||
+ | < | ||
+ | Cisco-6500(config)# | ||
+ | Cisco-6500(config)# | ||
+ | Cisco-6500(config-if)# | ||
+ | </ | ||
+ | |||
+ | ====== Блокування засобами PDNSD ====== | ||
+ | Для конфігу PDNSD (зазвичай лежить тут /// | ||
+ | * візуально можете перевірити генерацію за допомогою | ||
+ | |||
+ | # php cli/ | ||
+ | |||
+ | |||
+ | * згенерувати файл (шлях до якого задається опцією **PDNSD_SCRIPT_PATH**) з готовим скриптом для копіпасту до **pdnsd.conf** можна так | ||
+ | |||
+ | # php cli/ | ||
+ | | ||
+ | Після успіщної генерації файлу просто копіпастимо його вміст до конфігу PDNSD і робимо йому restart. \\ | ||
+ | Детальніше про PDNSD: \\ | ||
+ | https:// | ||
+ | https:// | ||
+ | https:// |