
При отправке почты на узел системы для каждого пользователя UNIX на компьютере автоматически создается почтовый ящик.
Есть ли способ отключить эти почтовые ящики по умолчанию?
Примером одного из таких почтовых ящиков является root@nodename.
Было бы предпочтительнее не удалять имя узла из local-host-names.
У меня есть и другие домены, настроенные на этом сервере sendmail, которые должны работать.
решение1
Сначала вам нужнопосмотрите здесь, чтобы понять, как создать отправку sendmail.cf
и sendmail.mc
перезапустить sendmail после этого.
Теперь забудьте virtusertable. Мы определим класс имен пользователей, которым разрешено получать почту. Все остальные будут отброшены. Для этого мы добавляем следующий раздел в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
Переключатель гарантирует, что 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
).