[Linux] NAT over PPPoE

Симптомы: часть сайтов открывается, часть – нет. tcpdump показывает нормальное прохождение пакетов в обе стороны. Всему виной PPPoE с его overhead’ом на размер пакета.

Решение простое:

iptables -I FORWARD 1 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Но что оно означает? Оно означает “нормализовать пакет” согласно PMTU, то есть, уменьшить размер MSS так, что бы пакет прошёл от источника к назначению, при этом выбрав наименьший MTU среди всех промежуточных.

Важно! Правило нужно размещать в самом начале.

Suricata: best IDS+IPS

Suricata is an open source network threat detection engine that provides capabilities including intrusion detection (IDS), intrusion prevention (IPS) and network security monitoring. It does extremely well with deep packet inspection and pattern matching which makes it incredibly useful for threat and attack detection.

Читати далі

[rsyslog] Учимся правильно исключать логи

В сети много примеров, как это делать, но зачастую они устаревшие. И так, буду приводить рабочие конфигурации в порядке убывая версий (от новой к старой).

if ($programname contains "spamd") then {
   action(type="omfile" file="/var/log/mail.log")
   stop
}

Читати далі

CSI Linux: дистрибутив для форензики и расследований

CSI Linux Investigator представляет собой сборку линукс-дистрибутивов, базирующихся на операционной системе Ubuntu, с предустановлеными пакетами специализированного программного обеспечения. Распространяется сборка в виде OVA-файла, который без проблем импортируется в Oracle VM Virtual Box.

Взято с https://habr.com

Debian: история одного обновления

Расскажу об одной, на первый взгляд, странной проблеме. Основная проблема: после обновления с 10 на 11 через некоторое время интерфейс теряет адрес, полученный через DHCP. Откатываешься (это виртуальная машина, поэтому через snapshot’ы такое легко провернуть) обратно на 10-ку – всё работает. Важный момент: такое наблюдается только с серверами у которых DHCP. Так же, на всех серверах (как статических, так и с DHCP) присутствует и другая проблема: после перезагрузки, сервер отвечает на icmp, но ровно 5 минут недоступны вообще никакие сервисы: ssh, http,…

Читати далі

[exim] Failover (+ by pass) для av_scanner/spamd_address

В данной статье расскажу о повышении отказоустойчивости работы почты в случае проблем с антивирусом и антиспамом. Содержание будет разбито на 2 части: как использовать несколько экземпляров и как сделать by pass, если так случилось, что все экземпляры недоступны.

Читати далі

Не запускается ntp, дебажим и находим причину

На одном из серверов FreeBSD перестал запускаться ntpd. То есть, работал и в один момент перестал. Причиной стал простой reboot сервера, без изменений конфига. Странно, но нужно разобраться. Начинаем стандартно: ldd, truss, дефолтный конфиг, дефолтные опции, включение debug’a в ntp и никакого намёка на проблему. Усложняет тот факт, что есть другой сервер с такими же настройками и такой же версией ОС и там всё работает. Остаётся один вариант – дебаггер gdb.

Читати далі

zfs: продолжаем send/receive после обрыва связи

Раньше приходилось заново копировать после каждого обрыва. Но потом придумали механизм, основанный на bookmark’ах, который позволяет продолжить копирование с места разрыва.

Читати далі

[nginx] Захватывать заголовки содержащие слово XXX

Сразу скажу, код не мой, а нашёл его в рассылке nginx.ru, но что бы не потерять, оформил в виде заметки

Данный код использует lua и матчит header по слову Foo

content_by_lua_block { 
local h = ngx.req.get_headers() 
for k, v in pairs(h) do 
if k == k:match("([%w].Foo.*)") then 
ngx.header[k] = v 
end 
end 
ngx.say('headers with Foo are captured'); 
}