/ etc / aliases vs virtusertable

. У меня есть почтовый сервер, на котором работает Sendmail, на котором размещено несколько почтовых доменов. Так, например, электронные письма, адресованные @ aaa.com и @ bbb.com, отправляются на один и тот же сервер. Все это время я использую / etc / mail / virtusertable для управления сопоставлением разных пользователей разных почтовых доменов с разными локальными учетными записями.

Но теперь я только что обнаружил / etc / псевдонимы могут делать аналогичные вещи.

  • В чем разница между ролью / etc / aliases и / etc / mail / virtusertable ?
  • Что могут псевдонимы , но не virtusertable , и наоборот?

Я поискал в Интернете, но не нашел ни одного сайта, на котором бы очень подробно сравнивались различия.

7
задан 25 November 2015 в 10:52
4 ответа

Ключевые различия между virtusertable и псевдонимами в sendmail

virtusertable обеспечивают однозначное отображение адреса получателя. псевдонимы обеспечивают отображение «один ко многим» (удобно для списков рассылки).

псевдонимы отображают "бездоменного" получателя (получатели в локальных доменах электронной почты с вырезанной доменной частью электронной почты). virtusertable отображает полный адрес получателя.

virtusertable обрабатывает переназначение «всех других / оставшихся адресов в домене электронной почты».

Отображение «виртуального в псевдоним» может использоваться для получения одного ко многим отображение.


Подсказка на уровне мастера : Можно сделать так, чтобы sendmail.cf обрабатывал псевдонимы для полных писем (пользовательская часть и домен), но sendmail.cf, созданный с использованием файлов m4, предоставляемых sendmail.org, не обрабатывает его. Реализация этого не будет очень сложной, но, IMHO, некоторые неожиданные "побочные эффекты" гарантированы => надлежащий период тестирования будет ДЛИННЫЙ .

6
ответ дан 2 December 2019 в 23:22

Основное отличие, которое я помню, состоит в том, что virtusertable может содержать информацию домена , а также информацию пользователя ; то есть; (hidden) и (hidden) являются действительными и разными левыми частями в virtusertable , но используются вместе в псевдонимах , они будут производить ошибка дублирования псевдонима .

Это все еще оставляет целую группу записей, которые могут законно войти в любую; я считаю, что следует использовать псевдонимы везде, где это возможно, оставляя virtusertable для тех вещей, которые зависят от домена.

bangal (qv) отмечает некоторые более важные различия, например, возможность для отправки электронной почты в каналы и файлы.

2
ответ дан 2 December 2019 в 23:22

Краткий ответ:

Псевдонимы - это процесс преобразования одного имени локального получателя в системе в другое и Псевдоним происходит только для локальных имен . Это означает, что имя пользователя должно быть доступно через getpwnam из базы данных паролей:

например, локальный файл паролей / etc / passwd, NIS и LDAP.

Функция sendmail virtusertable обеспечивает поддержку виртуальных пользователей, то есть отображает несистемных пользователей.


Я процитировал следующее из здесь . Очень хорошо объяснено, пожалуйста, посмотрите.

/ etc / mail / aliases

Этот файл базы данных содержит список виртуальных почтовых ящиков, которые расширен до пользователей, файлов, программ или других псевдонимов. Вот несколько записи для иллюстрации формата файла:

 root: localuser
ftp-ошибки: джо, эрик, пол
bit.bucket: / dev / null
procmail: "| / usr / local / bin / procmail"
 

Имя почтового ящика в левой части двоеточия расширяется до цель (и) справа. Первая запись расширяет корневой почтовый ящик до почтовый ящик localuser, который затем просматривается в / etc / mail / aliases база данных. Если совпадений не найдено, появляется сообщение доставлен местному пользователю. Вторая запись показывает список рассылки. Пишите на ftp-bugs расширен до трех локальных почтовых ящиков: joe, eric и paul. Удаленный почтовый ящик можно указать как (скрытый) Третий запись показывает, как писать почту в файл, в данном случае / dev / null. В последняя запись демонстрирует, как отправлять почту программе, / usr / local / bin / procmail через канал UNIX®. Обратитесь к псевдонимам (5) для больше информации о формате этого файла.

/ etc / mail / virtusertable

Этот файл базы данных отображает почтовые адреса для виртуальных доменов и пользователей. в реальные почтовые ящики. Эти почтовые ящики могут быть локальными, удаленными, псевдонимами. определены в / etc / mail / aliases или файлах. Это позволяет использовать несколько виртуальных домены, которые будут размещены на одном компьютере.

В следующем примере показано, как создавать пользовательские записи с помощью этот (скрытый) корень (скрыто) (скрыто) @ example.com Джо

Этот файл обрабатывается в порядке первого совпадения. Когда адрес электронной почты совпадает с адресом слева, он сопоставляется с локальным почтовый ящик, указанный справа. Формат первой записи в этом пример отображает конкретный адрес электронной почты в локальный почтовый ящик, тогда как формат второй записи отображает конкретный адрес электронной почты на удаленный почтовый ящик. Наконец, любой адрес электронной почты с example.com, который не соответствует любая из предыдущих записей будет соответствовать последнему сопоставлению и будет отправлено в локальный почтовый ящик joe.

Теперь немного более подробные ответы на ваши вопросы:

  • Файл базы данных псевдонимов содержит список виртуальных почтовых ящиков, которые расширяются до пользователей, файлов, программ или других псевдонимов.
  • Этот файл базы данных виртуальных пользователей сопоставляет почтовые адреса виртуальных доменов и пользователей с реальными почтовыми ящиками. Эти почтовые ящики могут быть локальными, удаленными, псевдонимами, определенными в / etc / mail / aliases, или файлами. Это позволяет размещать несколько виртуальных доменов на одной машине.
  • С другой стороны, виртуальная функция sendmail настраивает поддержку таблицы виртуальных пользователей. Таблица виртуальных пользователей отображает входящую почту, предназначенную для someuser @ host , на someotheruser @ otherhost . Это можно рассматривать как расширенную функцию псевдонима почты, которая работает не только с пользователем-адресатом, но и с доменом назначения. Ключевая часть (слева) должна быть либо полным адресом (пользователь, хост и имя домена), либо адресом без части хоста (только домен).
5
ответ дан 2 December 2019 в 23:22

Попробуйте следующее:

Если ваш MTA сервер является основным MX для кучки DOMAINS, то вы маршрутизируете их через virtusertable. Virtusertable позволяет выбирать отдельные письма назначения, такие как "abuse@..." и "postmaster@", и пересылать все остальное на один почтовый ящик или другой сервер с другим именем, но сохраняя при этом все, что осталось от '@'. Например:

    abuse@xyz.com:         helpdesk                   <--- which could be in /etc/aliases to a list
    postmaster@xyz.com:    adminteam@vendor.xyz       <--- specific destination
    @xyz.com:              %1@customer2.server.com    <--- route everything else to another host`

Ваш файл /etc/aliases действительно предназначен для настройки простых назначений от одного пользователя к другому или от одного пользователя к группе других пользователей:

    root:       sa@system.com           <--- route all root mail to sysadmin
    sales:      jdoe,mdoe,sone,mike@somewhere.com,sally@elsewhere.com  <-- to a list
    nobody:     /dev/null               <--- anything sent to "nobody" disappears forever

Псевдонимы не очень хорошо справляются с несколькими доменами, с другой стороны, virtusertable очень хорошо справляется с ними.

Вам нужно будет настроить MX-записи соответствующим образом и т.д.

Спасибо, Давид

1
ответ дан 2 December 2019 в 23:22

Теги

Похожие вопросы