Категорії
Misc, staff, other

Добавляем свой самоподписный сертификат в список доверенных корневых

И так, нам нужен собственно сам сертификат в формате PEM, который нужно положить в правильное место:
– Linux: /usr/share/ca-certificates/mozilla
– FreeBSD: /usr/share/certs/trusted
– Oracle Solaris /etc/certs/CA

Теперь нужно сгенерировать симлинк с именем хеша в папку с сертификатами. Тут есть 2 варианта: использовать утилиту c_rehash (доступна в пакете openssl-perl) или сделать это вручную. Если не хотите ничего сломать и нужно сделать для одного сертификата, то лучше вручную. Делается так:

Категорії
Mail systems Misc, staff, other

dovecot, roundcube, sieve, nonASCII папки

Если вы используете фильтры sieve, созданные через roundcube, то по-умолчанию они создаются в кодировке mUTF-7. Вот, что говорится в RFC3501 (protocol imap)

5.1.3. Mailbox International Naming Convention

By convention, international mailbox names in IMAP4rev1 are specified
using a modified version of the UTF-7 encoding described in [UTF-7].
Modified UTF-7 may also be usable in servers that implement an
earlier version of this protocol.

Категорії
Misc, staff, other

poll/epoll/kqueque

EPOLL

For few fds, this backend is a bit little slower than poll and select, but it scales phenomenally better. While poll and select usually scale like O(total_fds) where n is the total number of fds (or the highest fd), epoll scales either O(1) or O(active_fds).

Категорії
Mail systems Misc, staff, other

[dovecot] autoreply via sieve

В базовом функционале roundcube уже есть плагин sieve. И тут остаётся дело за малым: прикрутить это всё к dovecot+exim (via dovecot delivery). И так, ниже настройки dovecot.conf:

Категорії
Misc, staff, other WWW

[nginx] proxy_pass DNS name

При использовании proxy_pass, особенно если в качестве upstream’ов используется DNS name есть один нюанс, который хоть и описан в документации, но требует пояснения. Ниже цитата из рассылки nginx:

Категорії
Mail systems Misc, staff, other

[dovecot] Cached message size larger than expected

Если кратко, то данная ошибка говорит, что размер письма отличается от ожидаемого. Такое поведение возникает, если содержимое файла письма изменилось (случайно или преднамеренно). При этом разные клиенты могут по-разному отображать это письмо: частично или вообще никак (показывать ошибку). В сети почти все варианты решения выглядят так: удалите из папки Maildir файлы dovecot.* и перезапустите dovecot (dovecot перепланирует папку и создаст заново эти файлы). Такой рецепт подойдёт, если у вас старая версия, до 2.0.X включительно. Но если у вас версия 2.1.Х, то это не поможет.

Категорії
Misc, staff, other

[pure-authd] Большая нагрузка

pure-authd очень удобный механизм для внешней аутентификации. Но при большой нагрузке это может стать реальной проблемой: он однопоточный. Да, он все запросы складывает в свой backlog, но легче от этого не становится. И вы можете ждать своей очереди на аутентификацию и минуту и две и больше. Но у большинства ftp-клиентов таймаут на аутентификацию стоит в 20 секунд, поэтому это не вариант на высоких нагрузках.

Категорії
Linux Misc, staff, other

[nginx] listen socket

Ниже будут выдержки цитат из рассылки nginx, которые объясняют простые вещи при открытии/переоткрытии сокета не только в случае nginx’a, а и некоторых общих случаях.

Категорії
Mail systems Misc, staff, other

[exim] DKIM/SPF: white list

Определяем переменные:

domainlist spf_white_list = domain1.com : domain2.com
domainlist dkim_white_list = other1.com : other2.com

Описываем сам white list для SPF (ОБЯЗАТЕЛЬНО ПЕРЕД ПРОВЕРКОЙ SPF):

acl_check_data:
...
# SPF whitelist
accept sender_domains = +spf_white_list
logwrite = SPF: domain <$sender_address_domain> is whitelisted

Описываем сам white list для DKIM (ОБЯЗАТЕЛЬНО ПЕРЕД ПРОВЕРКОЙ DKIM):

acl_check_dkim:
...
accept sender_domains = +dkim_white_list
logwrite = DKIM: domain <$sender_address_domain> is whitelisted

Категорії
FreeBSD Misc, staff, other Security

[FreeBSD] tcpdump IPSec

Если попробовать “прослушать” IPSec трафик, то ничего не выйдет. Но выход всё-таки есть. Вот набор команд, которые позволят это сделать:

sysctl net.enc.in.ipsec_filter_mask=0
sysctl net.enc.out.ipsec_filter_mask=0
ifconfig enc0 up
tcpdump -ni enc0

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP