Перейти к содержимому
Калькуляторы
Блокировка веб ресурса  

566 пользователей проголосовало

  1. 1. Для блокировка используем



Блокировка сайтов провайдерами маневры с DNS

Всем привет. Работает фильтр, вроде все норм. Но пропуски есть, в среднем до 10 за день.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Добрый день! Есть отлаженный скрипт, который скачивает и разархивирует дамп реестра и все это крутится на фряхе. Подскажите как из полученного дампа приготовить конфигурационные файлы для extfilter, может есть готовое решение?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@toropyga есть готовый в исходниках фильтра, посмотрите, подгоните под свою базу

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня нет базы, есть dump.xml и задача приготовить из него конфигурационные файлы для extfilter. Пробовал через zapret.pl сделать, выдает: 140059611510592:error:02001002:system library:fopen:No such file or directory:crypto/bio/bss_file.c:69:fopen('./cert.pem','r')
140059611510592:error:2006D080:BIO routines:BIO_new_file:no such file:crypto/bio/bss_file.c:76:
unable to load certificate

Изменено пользователем toropyga

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@toropyga запрет сам за дампом лезет и грузит в базу. А найти не может вашу подпись 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

т.е. если я правильно понял reg_template.xml это обычный файл запроса, а сертификат нужно сконвертировать с помощью P12FromGostSCP и куда то положить, тогда  вопрос куда положить и нужно ли подписывать файл запроса?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@toropyga да, только еще обработать опенссл с поддержкой госта

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Cramac Разобрался, спасибо!

Изменено пользователем toropyga

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

При запуске extfilter получаю: 

EAL: Detected 4 lcore(s)
EAL: Probing VFIO support...
EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !
EAL: PCI device 0000:01:00.0 on NUMA socket -1
EAL:   probe driver: 8086:10c9 net_e1000_igb
EAL: PCI device 0000:01:00.1 on NUMA socket -1
EAL:   probe driver: 8086:10c9 net_e1000_igb
Out of range

 

В логах: 

2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: extFilter
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: -n
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: 2
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: -c
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: 0x07
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: --master-lcore
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: 0
Подскажите в чем может быть дело?

Изменено пользователем toropyga

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

dpdk status 

Скрытый текст

Network devices using DPDK-compatible driver
============================================
0000:01:00.0 '82576 Gigabit Network Connection 10c9' drv=igb_uio unused=
0000:01:00.1 '82576 Gigabit Network Connection 10c9' drv=igb_uio unused=

Network devices using kernel driver
===================================
0000:03:00.0 'RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller 8168' if=ens33 drv=r8169 unused=igb_uio *Active*

 

tuned.conf

Скрытый текст

[main]
include=latency-performance

[bootloader]
cmdline=isolcpus=1,2,3 default_hugepagesz=1G hugepagesz=1G hugepages=4

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

10 часов назад, toropyga сказал:

При запуске extfilter получаю: 

EAL: Detected 4 lcore(s)
EAL: Probing VFIO support...
EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !
EAL: PCI device 0000:01:00.0 on NUMA socket -1
EAL:   probe driver: 8086:10c9 net_e1000_igb
EAL: PCI device 0000:01:00.1 on NUMA socket -1
EAL:   probe driver: 8086:10c9 net_e1000_igb
Out of range

 

В логах: 

2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: extFilter
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: -n
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: 2
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: -c
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: 0x07
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: --master-lcore
2021-02-15 17:43:02.291 [1779] Debug Application - DPDK command line: 0
Подскажите в чем может быть дело?

 

конфиг полностью покажите

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пошарив в ветке нашел проблему, стояли ';' после queues. Теперь фильтр запускается, но через несколько секунд падает с ошибкой: 

Fatal Application - Cannot init mbuf pool on socket 0

 

Изменено пользователем toropyga

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В 15.02.2021 в 05:11, Morphus сказал:

Подскажите mac адрес чего вы указывали для отправки ответов ?

 

у меня на витруалке в режиме моста, там не надо адрес указывать

 

5 часов назад, toropyga сказал:

Fatal Application - Cannot init mbuf pool on socket 0

 

А Вы когда dpdk собирали, прибили сетевые карты к нему? 

http://doc.dpdk.org/guides-17.05/linux_gsg/build_dpdk.html

Изменено пользователем admf
link install dpdk 17.05

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 час назад, admf сказал:

А Вы когда dpdk собирали, прибили сетевые карты к нему? 

http://doc.dpdk.org/guides-17.05/linux_gsg/build_dpdk.html

 

ну как бы вот:

[localhost]# ./dpdk-devbind.py --status

Network devices using DPDK-compatible driver
============================================
0000:01:00.0 '82576 Gigabit Network Connection 10c9' drv=igb_uio unused=
0000:01:00.1 '82576 Gigabit Network Connection 10c9' drv=igb_uio unused=

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Попробуйте запустить еще  testpmd в dpdk-setup.sh  - он более подробно пишет про ошибки. Как мне кажется это в сторону dpdk надо покапать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Развернул все на другом железе (DL360G6 32G оперативы, 2xE5540, Centos7), стартует и почти сразу падает

extFilter.log

Скрытый текст

2021-02-18 13:40:27.741 [1818] Debug Application - Uninitializing subsystem: Logging Subsystem
2021-02-18 15:21:25.603 [1810] Debug Application - DPDK command line: extFilter
2021-02-18 15:21:25.609 [1810] Debug Application - DPDK command line: -n
2021-02-18 15:21:25.609 [1810] Debug Application - DPDK command line: 2
2021-02-18 15:21:25.609 [1810] Debug Application - DPDK command line: -c
2021-02-18 15:21:25.609 [1810] Debug Application - DPDK command line: 0x07
2021-02-18 15:21:25.609 [1810] Debug Application - DPDK command line: --master-lcore
2021-02-18 15:21:25.609 [1810] Debug Application - DPDK command line: 0
2021-02-18 15:21:25.848 [1810] Information ACL - Memory usage before acl read: realmem 8284 peakrealmem: 8284 curVirtMem: 78224 peakVirtMem: 78224
2021-02-18 15:21:25.848 [1810] Information ACL - Building ACL from file /usr/local/etc/extfilter/config/hosts
2021-02-18 15:21:25.856 [1810] Information ACL - Used 32768 bytes of memory for acl4 rules (334 entries)
2021-02-18 15:21:25.856 [1810] Information ACL - Used 0 bytes of memory for acl6 rules (0 entries)
2021-02-18 15:21:25.856 [1810] Information ACL - Memory usage after acl read: realmem 8388 peakrealmem: 8388 curVirtMem: 78224 peakVirtMem: 78224
2021-02-18 15:21:25.856 [1810] Information ACL - Memory usage bedore acl setup: realmem 8464 peakrealmem: 8464 curVirtMem: 78224 peakVirtMem: 78224
2021-02-18 15:21:25.859 [1810] Information ACL - Memory usage after acl setup: realmem 8500 peakrealmem: 10512 curVirtMem: 78224 peakVirtMem: 86416
2021-02-18 15:21:25.982 [1810] Information TriesControl - Loaded 222871 lines from the domains file '/usr/local/etc/extfilter/config/domains'
2021-02-18 15:21:26.086 [1810] Information TriesControl - Loaded 115218 lines from the urls file '/usr/local/etc/extfilter/config/urls'
2021-02-18 15:21:26.162 [1810] Information TriesControl - Masked domains: #keys 79071, #nodes 111992
2021-02-18 15:21:26.645 [1810] Information TriesControl - URLS: #keys 337657, #nodes 485524
2021-02-18 15:21:26.645 [1810] Information TriesControl - Set active trie in the slot 0
2021-02-18 15:21:26.750 [1810] Information TriesControl - Loaded 244138 lines from the domains file '/usr/local/etc/extfilter/config/ssl_host'
2021-02-18 15:21:26.822 [1810] Information TriesControl - Masked domains: #keys 79071, #nodes 111992
2021-02-18 15:21:27.083 [1810] Information TriesControl - URLS: #keys 238766, #nodes 336550
2021-02-18 15:21:27.083 [1810] Information TriesControl - Set active trie in the slot 0
2021-02-18 15:21:27.083 [1810] Information Application - Setting mbuf size to 16384
2021-02-18 15:21:27.085 [1810] Fatal Application - Cannot init mbuf pool on socket 0
2021-02-18 15:21:27.085 [1810] Fatal Application - Memory initialization error
2021-02-18 15:21:27.085 [1810] Debug Application - Shutting down
2021-02-18 15:21:27.085 [1810] Debug Application - Uninitializing subsystem: Logging Subsystem
 

Цитата

Попробуйте запустить еще  testpmd в dpdk-setup.sh  - он более подробно пишет про ошибки. Как мне кажется это в сторону dpdk надо покапать.

testpmd выдает: 

Launching app
sudo: /app/testpmd: command not found

 

extfiltr.ini

Скрытый текст

; Переводить имя хоста в прописные буквы. Если url_normalization установлен в true, то не имеет значения.
;lower_host = false

domainlist = /usr/src/extfilter/cfg_files/domains
urllist = /usr/src/extfilter/cfg_files/urls
ssllist = /usr/src/extfilter/cfg_files/ssl_host

; файл с ip:port для блокировки
hostlist = /usr/src/extfilter/cfg_files/hosts

; Список ip адресов/сетей для блокировки ssl если нет server_name в ssl hello пакете. Загружается если block_undetected_ssl = true.
sslips = /usr/src/extfilter/cfg_files/ssl_ips

; если false, то будет послан ответ от сервера 403 Forbidden вместо редиректа. Default: false
http_redirect = true

# если в конце url будет указан символ ? иди &, то после этого символа будет добавлен блокированный url: redirect_url[?|&]uri=http://...
redirect_url = http://exemple.com

; посылать tcp rst в сторону сервера от имени клиента. Default: false
rst_to_server = false

; Default: 0 - disable
statistic_interval = 300

; Блокировать ssl по ip из файла с ip адресами в случае отсутствия SNI. Default: false
block_ssl_no_sni = false

; Какие ядра использовать. Default: все ядра, кроме management.
core_mask = 7

; файл статистики (для extfilter-cacti)
;statisticsfile = /var/run/extFilter_stat

; mtu на интерфейсе для отправки пакетов в сторону абонентов. Default: 1500
; out_mtu = 1500


; CLI для управления или сбора статистики extfilter
; cli_port = 9999
; cli_address = 127.0.0.1

; Количество каналов памяти (для DPDK)
; memory_channels = 2

; Количество повторных пакетов в сторону клиента (от 1 до 3)
; answer_duplication = 1

; Режим работы фильтра. Может быть зеркало (mirror) или мост (inline)
 operation_mode = inline

; Использовать jumbo frames
; jumbo_frames = false

; Максимальная длина ethernet фрейма при включенном jumbo_frames
; max_pkt_len = 9600

; здесь задаются порты, с которых необходимо снимать трафик
; формат:
; [port n]
; queues = a,b; a1,b1...
; n - номер порта dpdk
; a - номер очереди
; b - ядро, обрабатывающее очередь a
; Пример:
[port 0]
queues = 0,1
type = subscriber
mapto = 1

; Порт для отправки уведомлений через dpdk
[port 1]
queues = 0,2
type = network
mapto = 0

; На какой mac адрес отправлять пакеты
;mac = 00:01:02:03:04:05

[dpi]
; Масштабирование количества обрабатываемых потоков 1..10
; scale = 2

; Собирать и анализировать фрагментированные пакеты
; fragmentation_ipv6_state = true
; fragmentation_ipv4_state = true
; fragmentation_ipv4_table_size = 512
; fragmentation_ipv6_table_size = 512

; Собирать и анализировать tcp потоки с неправильными порядком
; tcp_reordering = true

[logging]
loggers.root.level = information
loggers.root.level = debug
loggers.root.channel = fileChannel
channels.fileChannel.class = FileChannel
channels.fileChannel.path = /var/log/extFilter.log
channels.fileChannel.rotation = 1 M
channels.fileChannel.purgeCount = 4
channels.fileChannel.archive = timestamp
channels.fileChannel.formatter.class = PatternFormatter
channels.fileChannel.formatter.pattern = %Y-%m-%d %H:%M:%S.%i [%P] %p %s - %t
channels.fileChannel.formatter.times = local
 

 

Понимаю что отрубается из-за нехватки памяти, но где не пойму.Я думаю это связано с настройкой hugepages.

До запуска фильтра:

grep Huge /proc/meminfo:

AnonHugePages:     71680 kB
HugePages_Total:       4
HugePages_Free:        4
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB

 

После:

AnonHugePages:     71680 kB
HugePages_Total:       4
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Помогите разобраться в чем дело.

Изменено пользователем toropyga

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

5 минут назад, Cramac сказал:

Памяти мало?!

32Гб мало? Сейчас сделал:  echo 2048 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages. Фильтр запустился, но хотелось бы разобраться. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 минуты назад, toropyga сказал:

32Гб мало? Сейчас сделал:  echo 2048 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages. Фильтр запустился, но хотелось бы разобраться. 

Там для загрузки блок листов много нужно. Потом кушать мало начинает.

Изменено пользователем arhead

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Хорошо, тогда подскажите сколько нужно и какие параметры указать в tuned.conf 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 минуту назад, toropyga сказал:

Хорошо, тогда подскажите сколько нужно и какие параметры указать в tuned.conf 

Тут зависит сколько будет заблокировано. Поставьте 2048 понаблюдайте будет ли вылетать фильтр при HUP. Если будет вылетать,то увеличить. Если не ошибаюсь то echo 2048 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages это получается вы отдаете не все 32 гб, а только часть под hugepages.

cat /proc/meminfo | grep Huge там видно будет сколько вы выделили.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

у меня тюнед не заработал, я в груб прописал в загрузку

 

isolcpus=1,2,3 default_hugepagesz=1G hugepagesz=1G hugepages=16

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всем привет. Подскажите, все равно остаются пропуски.

Сейчас вот проверил, в отчете есть ссылки

 

Скрытый текст

 

280276  http://www.28365365.tw/ ФНС

463678 http://crc07.com ФНС
 

и еще несколько адресов.

В таблице доменов или урлов записей с таким ИД нет. Где их искать?

 

или вот такой есть, в доменах, но не хочет блочится

Скрытый текст

yh3313.com

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

36 минут назад, Cramac сказал:

Всем привет. Подскажите, все равно остаются пропуски.

 Сейчас вот проверил, в отчете есть ссылки

 

  Скрыть содержимое

 

280276  http://www.28365365.tw/ ФНС

463678 http://crc07.com ФНС
 

и еще несколько адресов.

В таблице доменов или урлов записей с таким ИД нет. Где их искать?

 

или вот такой есть, в доменах, но не хочет блочится

  Скрыть содержимое

yh3313.com

 

Эти блокировать только по IP. Они переадресованы с других блоченых которые есть в списках. И их увы DPI не блокирует.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

8 минут назад, arhead сказал:

Эти блокировать только по IP. Они переадресованы с других блоченых которые есть в списках. И их увы DPI не блокирует.

У некоторых из них довольно часто меняются ip адреса, как выход можно блочить при помощи днс, если у вас например unbound то таким скриптом:

https://github.com/myth11/unbound_rkn  

Либо прописать статикой эти узлы с ответом ip страницы с блокировкой.

 

на порту к ревизору зарезать возможность обращения к другим днс, кроме вашего. Хотя они должны использовать только те днс, что получили по dhcp

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.