Ящик входящих сообщений автоматически создается для каждого пользователя UNIX в ящике, когда почта отправляется на имя узла системы.
Есть ли способ отключить эти почтовые ящики по умолчанию?
Примером одного из этих почтовых ящиков является root @ nodename.
Было бы предпочтительно не удалять имя узла из имен локальных хостов.
У меня есть другие домены, настроенные на этом сервере sendmail, которые должны продолжать работать.
Сначала вам нужно посмотри сюда, чтобы понять, как создать sendmail.cf
из sendmail.mc
и после этого перезапустите sendmail.
А теперь забудьте о виртуозности. Мы определим класс имен пользователей, которым разрешено получать почту. Все остальное будет отброшено. Для этого мы добавляем следующий раздел в sendmail.mc
LOCAL_CONFIG
C{Receive} user1 user2 user3
Если вы хотите определить этих пользователей во внешнем файле, вместо прямого редактирования вашего sendmail.mc
используйте строку F вместо строки C:
LOCAL_CONFIG
F{Receive} -o /etc/mail/receive.allow
Таким образом, каждая строка в файле /etc/mail/receive.allow
содержит имя пользователя, которому разрешено получать почту. В -o
switch гарантирует, что sendmail не будет жаловаться, если файл не существует.
Теперь, когда определены пользователи, которым разрешено получать почту, мы добавляем следующие строки:
LOCAL_RULE_0
R${Receive} $#OK
R${Receive} < @ $=w . > $* $#OK
R$* $#discard $: $1
Не копируйте и не вставляйте приведенный выше фрагмент кода. Левая часть кода - это табуляция, отделенная от правой. Так что введите его вместо этого. Далее следуйте инструкциям по компиляции sendmail.cf
из sendmail.mc
и перезапустите sendmail.
Каждый раз, когда вы изменяете sendmail.mc
чтобы добавить пользователя, вам нужно воспроизвести sendmail.cf
и перезапустите sendmail. Если вы решите хранить разрешенных пользователей во внешнем файле, каждый раз, когда вы изменяете этот файл, вам нужно перезапускать sendmail (нет необходимости в новом sendmail.cf
).