sendmail + dovecot

Как говориться: «давно не брал я в руки шашку»

Намедни скрещивал sendmail c dovecot.
Раньше между MDA и dovecot была прослойка антиспама DSPAM. Но производитель перестал осуществлять поддержку и пришлось с этой прогой попрощаться. Причем у довекота свое хитрое хранилище почты, никоим образом не пересекающееся с домашними директориями пользователей. База пользователей хранится в LDAP, поиск пользователя по uid без домена.  Т.е. они там просто vasia, petia, а не vasia@domen.com и т.п.
По этой причине стандартные «быстрые» howto не подошли.
Пример из официального руководства http://wiki2.dovecot.org/LDA/Sendmail не работал. После преобразования имен sendmail упорно выдавал пользователя с доменом локальной машины. Т.е. на входе преобразования petia@virt.domain.com, на выходе petia@host.com
Проблема решается путем удаления флага h и замены правила EnvToSMTP на PseudoToReal.

В результате получился вот такой m4

######################################################################
# to user = user@domain.com  use  F=DFMPhnu95l
# to user = user   use  F=DFMPnu95l
Mdovecot,   P=/usr/libexec/dovecot/dovecot-lda, 

            F=DFMPnu95l,
            S=EnvFromSMTP/HdrFromSMTP,

            R=PseudoToReal/HdrFromSMTP,
            T=DNS/RFC822/X-Unix,
            A=/usr/libexec/dovecot/dovecot-lda -d $u

sendmail.mc содержит:

define(`confLOCAL_MAILER’,`dovecot’)dnl
MAILER(dovecot)dnl

И самое смешное, после того как все это начало работать, я подумал: » а зачем так сложно?» и прикрутил sendmail к dovecot через LMTP 🙂 Тем более что в howto было написано: Best solution is to use LMTP instead 🙂 Но к сожалению эта фраза попалась мне только после окончания прикручивания своего мейлера 🙁

FEATURE(`local_lmtp’,`[IPC]’,`FILE /var/run/dovecot/lmtp’)dnl
MAILER(local)dnl

Майлер local по автомату не подставляет имя хоста.

fail2ban sendmail

Фильтр для sendmail

 [Definition]
failregex = [<HOST>] .*to MTA
            [<HOST>] .* Mailbox disabled for this recipient
            [<HOST>], reject.*… Relaying denied
            (User unknown)n* [<HOST>]
            badlogin: .* [<HOST>] plaintext .* SASL

Отличная штука этот fail2ban 🙂

Полезное дело однако

Хорошие знакомые собирают деньги на выпуск документального исторического фильма. Рекомендую вместо покупки пары бутылок пива вложиться в полезное начинание 🙂 http://start.planeta.ru/campaigns/1381

Выключили свет, включили свет.

Вчера дома вырубили свет, потом включили. В результате я составил хейт рейтинг интернет провайдеров и не только. Оценки по старой доброй 5-ти бальной системе.

  1. МТС мобильный интернет — 0. Не работал.
  2. Искрателеком домашний интернет — 0. Не работал, служба поддержки после 3-х часов общения вызывает стойкий рвотный рефлекс. Сегодня пойду разрывать контракт и забирать свои деньги.
  3. Beeline мобильный интернет — 4. Тут правда билайн не виноват, но я понял почему Нокия в перде.
  4. Beeline домашний инет — 2. Служба поддержки работает как часы, но оплатить инет по кредитке не удалось. Совет дня: «найдите ближайший терминал оплаты и через него, через него…» это в пол двенадцатого ночи? Поэтому — 2.
  5. МГТС — 2. Телефон работает, но при попытке набора номера поддержки билайна 8 800ххххххх — отвечает, что такого номера в природе не существует. Олд скул, он всегда — олд скул.
В итоге: Никогда не куплю нокию. Вчера телефон выжил тока потому, что я кинул его в диван, если бы попал в стенку…Буду брать только телефоны со стандартными симками, поскольку в единственный телефон с андроидом можно было вставить тока микросим, а оно у меня тока от МТС :(Дома надо иметь резервный канал, потому что… они все такие провайдеры шо пипец.

Как получить DN текущего пользователя на Windows компьютере.

Сижу на вин компе подключенном к домену. Доступа к контроллеру домена нет. Надо получить dn текущего пользователя.
Решение:
Пишем vbs файл
Set objSysInfo = CreateObject(«ADSystemInfo»)
Wscript.Echo objSysInfo.UserName
Запускаем, смотрим.
Возможно есть более простой способ, но по быстрому получилось вот так.
Да. Иногда приходится заниматься и вот такой вот фигней.

Мода движется по кругу.

Оконные менеджеры в UNIX ругали за минималистский интерфейс. Плоско, без бантиков.
Смотрю на интерфейс Windows 8 и новых программ от MS, что то это мне напоминает. Квадратиш, практиш гуд 🙂 Плоское, квадратное, без рюшечек …
Мне кажется пойдет новая волна критики интерфейсов в UNIX — мол у вас там все не квадратное, не плоское, полупрозрачное, с тенями, границы окон гнуться, фигня вобщем 🙂

nxserver, ubuntu, не отображается меню

Настраивал тут nxserver товарищу, нарвался на то, что при входе пользователя не рисуется рабочий стол. Как я и подозревал, во всем виноват compiz 🙂 нечего 3D плюшки по сети гонять! Вот nx и не гоняет. В результате у пользователя нет рабочего стола.

Решение проблемы простое, запускать сессию пользователя в 2D режиме. Ищем файл node.cfg, изменяем параметр.
CommandStartGnome = «/usr/bin/gnome-session —session=ubuntu-2d»
Все довольны.

Предчувствие gentoo.

Предчувствую, что gentoo станет моим любимым дистрибутивом. Причина вот в этом: Команда Gentoo Linux планирует совершить форк проекта udev.

Прямо как в любимом фильме: «я такую неприязнь испытываю к systemd, что аж кушать не могу» 🙂