Помниться шутка ещё из fido:
Q: У FreeBSD есть 3 файервола, какой использовать?
A: Правильно настроенный.
Помниться шутка ещё из fido:
Q: У FreeBSD есть 3 файервола, какой использовать?
A: Правильно настроенный.
Вводные данные: 2 сервера Linux связаны между собой через OpenVPN туннель. Нужно для части клиентов за одним из концов VPN’a завернуть весь трафик в туннель, то есть, что бы они выходили в интернет не через свой GW, а через удалённый GW, пройдя через VPN.
UPD. В данной схеме есть нюанс: она будет работать, если клиентские машины находятся за хостом, который является OpenVPN-клиентом. В обратном случае, пакеты просто не будут покидать хост, хотя через tcpdump вы их будете видеть. Связано это с особенностями самого OpenVPN’a. Пока не нашёл как это можно решить. Как workaround, можно либо изменить роли клиент-сервер, либо использовать простой туннель или другой тип VPN’a.
iroute в OpenVPN нужен для того, что бы добавлять маршруты в подсеть клиентов, когда они подключаются. Данный параметр прописывается исключительно в CCD (client-config-dir). Но есть нюанс: обязательно с iroute нужно прописывать route в конфиге server.conf. Да, про это упомянуто в документации, но не все ёё внимательно читают
Remember that you must also add the route to the system routing table as well (such as by using the –route directive). The reason why two routes are needed is that the –route directive routes the packet from the kernel to OpenVPN. Once in OpenVPN, the –iroute directive routes to the specific client.
То есть, если нужно добавить клиентскую подсеть 192.168.10.0/24, то правильно сделать так:
ccd/client:
iroute 192.168.10.0 255.255.255.0
server.conf:
route 192.168.10.0 255.255.255.0
Сетевого анализатор sniffglue 0.14.0 , выполняющий анализ трафика в пассивном режиме и использующий многопоточность для распределения работы по разбору пакетов по всем ядрам процессора. Проект нацелен на безопасную и надёжную работу при перехвате пакетов в сетях не заслуживающих доверия, а также на вывод наиболее полезной информации в конфигурации по умолчанию. Код продукта написан на языке программирования Rust и распространяется под лицензией GPLv3+. Поддерживается работа на системах Linux и macOS.
Недавно появилась задача использовать собственные маршруты при подключении через OpenVPN на MacOSX. Если это сделать по аналогии с OpenVPN – просто добавить в конфиг параметр up/route-up, то в логе вы увидите, что не удалось выполнить из-за дубликата параметра. Что за ересь? Идём на сайт tunnelblick’a в раздел документации и видим, что нужно использовать специфические имена скриптов. Но куда их ложить?
Нашёл в интернете заметку, где сказано, что ложить их нужно по такому пути /Library/Application Support/Tunnelblick/Users/<user_name>/<config_name>.tlbk/Contents/Resources/, если у вас личный когфиг, или по такому /Library/Application Support/Tunnelblick/Shared/<config_name>.tblk/Contents/Resources, если общий.
Примечание. Если tunnelblick после изменений спросит “обезопасить ли конфигурацию” – отвечайте нет, иначе он удаляет папку с конфигом (а значит и все скрипты) и создаёт заново.
Здесь буду приводить лишь некоторые нюансы, которые являются нестандартными. После вставки модема смотрим его VID:PID:
$ lsusb Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 005: ID 12d1:14db Huawei Technologies Co., Ltd. E353/E3131 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Недавно столкнулся с ситуацией, когда идёт запрос на bind, а он должен forward’ить запросы определённой зоны дальше. И тут начинается интересное: приходит запрос на А-запись, а bind forward’ит её дальше уже как АААА-запись. Через tcpdump это выглядит так:
IP 192.168.1.137.61275 > 192.168.1.1.53: 8461+ A? srv2304.domain.local. (40)
IP 192.168.1.1.61034 > 192.168.1.50.53: 7530+ AAAA? srv2304.domain.local. (40)
IP 192.168.1.50.53 > 192.168.1.1.61034: 7530* 0/1/0 (98)
Как оказывается, просто включить NAT недостаточно. Более того, недостаточно даже подключить helper через sysctl:
net.netfilter.nf_conntrack_helper=1
В сети пишут, что нужно подгрузить модули (некоторые ещё уточняют, что это нужно было до версии 8.Х включитель, а с 9-ой достаточно просто подключить helper через sysctl, но как оказывается, недостаточно)
Бесплатный stateful и stateless генератор клиентского и серверного трафика L4-L7, масштабируемый до цифр в 400 Гбит/сек на одном сервере. Данный инструмент может использоваться для тестирования и сравнения различных сетевых решений, включая и область кибербезопасности, — DPI, МСЭ, IPS, NAT, балансировщики нагрузки, кеширующие сервера.
Официальный сайт https://trex-tgn.cisco.com
Представлен выпуск проекта netutils-linux 2.5.0, в рамках которого развивается набор утилит для мониторинга и тюнинга производительности сетевого стека Linux. Исходные тексты проекта написаны на Python (поддерживаются python 2.6+ и 3.4+) и поставляются под лицензией MIT.