Переход к предыдущей публикации screen - оставляем процессы в фоне и идем спать (пример файла .screenrc) Изменения в оформлении сайта Переход к следущей публикации
 
Я хочу добавить Daemony`s Live RSS ленту в Google Reader Я хочу добавить Daemony`s Live RSS ленту в Яндекс.Лента Я хочу получать RSS ленту Daemony`s Live Blog по электронной почте Я хочу добавить Daemony`s Live RSS ленту в My Yahoo Я хочу добавить Daemony`s Live RSS ленту в My MSN
золотые украшения, ювелирный магазин динамо - сокровищница Якутии

 

Добавить комментарий

~/.forward - почему может не работать пользовательская переадресация почты

~/.forward - почему может не работать пользовательская переадресация почты | .forward, aliases, FreeBSD, mail, mail forward, sendmail, smtp, unix, алиас, переадресация, перенаправление, почта, сервер Обычно, если почтовый smtp сервер на FreeBSD настроен с использованием аккаунтов системных пользователей (из /etc/passwd) и не используется какая-либо специфическая конфигурация вроде “почтовых каталогов” (maildir), то вся входящая почта отдельного пользователя складывается в “почтовый ящик” формата mbox, представляющий собой обычный текстовый файл. Письма в нем, вместе с RFC заголовками будут записываться последовательно один за одним. Располагается этот файл в каталоге /var/mail/. mbox файлы называются обычно так же, как и имя пользователя. Для каждого пользовательского mbox выставляются права “user:user -rw——-”, чтобы обычные пользователи могли получать доступ только к своему файлу почты.

Для того, чтобы почта не складывалась в mbox пользователя, а перенаправлялась на сторонний почтовый сервер, можно настроить переадресацию. Для sendmail (а на тестовом сервере у меня работает именно он) это делается через указание алиаса в файле /etc/mail/aliases. Но изменить в нем что-либо может только root. Обычный пользователь может сам изменить адрес перенаправления, создав в своем домашнем каталоге файл .forward и указав в нем всего лишь адрес электронной почты, куда нужно передать всю почту для этого пользователя. Можно указать несколько адресов, каждый из которых (если я не ошибаюсь) должен начинаться с новой строки.

Сегодня один товарищ (с аккаунтом на тестовом сервере) задал вопрос: “Почему не работает переадресация? В файле ~/.forward все прописано…”. Я посмотрел - действительно прописано. Гм… где-то я уже такое видел когда-то, но не сразу вспомнил в чем трабла (а записывать надо было :lol: ). Посмотрел в почтовый лог:

Mar  6 11:21:29 testers sendmail[58597]: m269Kxal058592: forward /home/serg/.forward.testers+: Group writable directory
Mar  6 11:21:29 testers sendmail[58597]: m269Kxal058592: forward /home/serg/.forward+: Group writable directory
Mar  6 11:21:29 testers sendmail[58597]: m269Kxal058592: forward /home/serg/.forward.testers: Group writable directory
Mar  6 11:21:29 testers sendmail[58597]: m269Kxal058592: forward /home/serg/.forward: Group writable directory

Ага. Ну конечно же:

# ls -la /home/ | grep serg
drwxrwx–x  12 serg serg 1024  6 мар 10:59 serg

Права на запись пользовательского каталога для группы почему-то мешают sendmail’у обрабатывать инструкции в файле ~/.forward

Возникает вопрос почему. Хотя мне это мало интересно (sendmail для штатного почтового сервера я не использую). Видать, че-то с вопросами безопасности связано…

 # chmod g-rw /home/serg

И переадресация ~/.forward работает.

 

Ключевые слова


| | | | | | | | | | | |
 

Публикации по теме

Четверг, 6 марта, 2008 12:25:38 EET

Подпишись на RSS ленту и будь в курсе обновлений

Я хочу добавить Daemony`s Live RSS ленту в Google Reader Я хочу добавить Daemony`s Live RSS ленту в Яндекс.Лента Я хочу получать RSS ленту Daemony`s Live Blog по электронной почте Я хочу добавить Daemony`s Live RSS ленту в My Yahoo Я хочу добавить Daemony`s Live RSS ленту в My MSN

Я хочу подписаться на Daemony`s Live RSS ленту комментариев к записям
  1. Комментарии (3) к публикации “~/.forward - почему может не работать пользовательская переадресация почты”

  2. № 1 .:. Andris говорит:

    Как я понимаю, корни всего этого растут отсюда. Выдержка:

    When sendmail causes mail to be delivered to a program listed in a .forward or :include: file, that program is run with the group permissions possessed by the user who owns that .forward or :include: file. The file’s owner attribute is used to initialize the list of group permissions that are in force when the program is run. This list is determined by scanning the /etc/group file, NIS or NIS+ group maps, or other similar vendor-specific databases (such as netinfo on OpenStep).

    It is possible for users to obtain group permissions they should not have by linking to a file that is owned by someone else, but on which they have group write permissions. By changing that file, users can acquire the group permissions of the owner of that file.

    Exploitation is possible if the attacked user has a file that is group writable by the attacker on the same file system as either (a) the attacker’s home directory or (b) an :include: file that is referenced directly from the aliases file and is in a directory writable by the attacker. The first (.forward) attack only works against root. This attack does not give users root “owner” permissions, but does give them access to the groups that list root in /etc/group.

    P.S. Спасибо за интересный блог и сайт! :)

    2008-08-09 10:31:54 EEST
  3. № 2 .:. Andris говорит:

    Да, и напоследок: опцией DontBlameSendmail в своём sendmail.cf можно заставить этот MTA прекратить подобную ругань. Подробнее, естественно, здесь.

    2008-08-09 10:38:29 EEST
  4. № 3 .:. Daemony говорит:

    Andris, спасибо за интересный коммент. :) Не знал…

    2008-08-09 10:48:21 EEST

Добавить комментарий

Быстрая вставка HTML тегов

Подсказки:
  • Для вставки фрагментов кода используйте "быстрый" тег <PRE></PRE>.
  • Для цитирования фрагментов текста используйте "Цитата".
  • Поддерживаются также другие HTML теги.

Поля, помеченные красной "звездочкой" обязательны к заполнению.