Як встановити і налаштувати програму sendmail

Це практичне керівництво описує процес налаштування обробки електронної пошти після реєстрації домену. Програмне забезпечення Sendmail є програмним забезпеченням операційних систем (ОС) Unix / Linux, яке займається обробкою електронної пошти. Це не поштова агент користувача (ПАП), як ті поштові програми, які ви знаєте. Це просто програма доставки. Sendmail це агент відправки пошти (АОП). Він обробляє тільки доставку. Мережеві провайдери використовують Sendmail для доставки пошти локальним користувачам в інших мережах.

Метод 1 з 6: скачати Sendmail
1
Скачайте Sendmail. Вам може бути автоматично запропоновано короткий початкове повідомлення, яке буде показувати поточну версію. Інструкції, описані нижче, підходять до версії 8.10.0 і новіше.
  • 2
    Зберіть і встановіть Sendmail на свою машину. У більшості випадків цей процес включає в себе розпакування дистрибутива, читання файлів README і sendmail / README, і набір команди Build в директорії Sendmail. Подивіться файл INSTALL в кореневому каталозі дистрибутива для точних деталей.
  • Метод 2 з 6: установка Sendmail
    1

    Відео: [VITOSAP] Первісна установка і настройка програми.

    Мається на увазі, що Sendmail використовує інформацію з системи доменних імен (DNS), щоб з`ясувати, який з IP-адрес відноситься до якого-небудь поштової скриньки.
  • 2
    Виберіть доступне доменне ім`я. У нашому прикладі ми будемо використовувати yourdomain.com.
  • 3
    Налаштуйте свою DNS на сервері. Встановіть дві машини як первинне і вторинне імена сервера для вашого домену. Передбачається, що навички настройки вже є, в іншому випадку, настійно рекомендується прочитати книгу Про’Рейлі "DNS і зв`язка" 4-е видання. Перед продовженням ознайомтеся зі зв`язкою.
  • 4
    Налаштуйте поштові записи (MX record) для свого домену (Зауваження: записи типу CNAME використовуватися не могут- для подробиць подивіться параграф 5.2.2 робочих нотаток 1123). Поштові записи пояснюються в книзі Про’Рейлі- 2-е видання дає огляд в параграфі 15.3 і описує як їх настроїти в пункті 21.3, в свою чергу, третє видання пояснює все про них в параграфі 9.3. У вас є два варіанти для поштових повідомлень
  • 5
    Визначтеся зі своїм методом підключення:
  • Якщо поштовий сервер, що обслуговує ваш новий домен, має постійне підключення до мережі Інтернет, то він повинен стати первинним поштовим (MX) хостом для домену. У цій конфігурації ваші поштові записи будуть виглядати наступним чином:
  • yourdomain.com. IN MX 10 yourmailserver.yourdomain.com.
  • В іншому випадку вам буде потрібно знайти іншу машину, щоб утворити чергу пошти для вашого домену, коли ви не підключені. Не забудьте спочатку отримати підтвердження від власника машини. Ця машина повинна бути налаштована для ретрансляції на ваш домен. Якщо запущено Sendmail, то це можна легко зробити, просто додавши ваш домен в файл доменів ретрансляції на цій машині. Вам слід перенаправити ваші поштові записи на цю машину. наприклад:
  • yourdomain.com. IN MX 10 yourmailserver.yourdomain.com.
  • yourdomain.com. IN MX 20 othermailserver.otherdomain.com.

  • 6


    Тепер, коли встановлено імена серверів, зареєструйте свій домен, використовуючи одну із записів. Коли будете реєструватися, повідомте дані про двох серверних іменах, і потім домен буде вказувати на ваш сервер.
  • Метод 3 з 6: налаштуйте Sendmail
    1
    прочитайте уважно cf / README файл. Це дасть вам інструкції по створенню .mc файлу в каталозі cf / cf . Ваш файл mailserver.mc зазвичай буде виглядати так:
    • divert (-1) dnl
    • #
    • # Цей файл містить глобальні визначення для yourdomain.com
    • #
    • divert (0) dnl
    • VERSIONID (&# 96; @ (#) mailserver.mc 1.0 (yourdomain.com) 5/1 / 97`)
    • OSTYPE (solaris2) dnl
    • DOMAIN (yourdomain.com) dnl
    • FEATURE (&# 96; virtusertable`, &# 96; dbm / etc / mail / virtusertable`) dnl
    • MAILER (local) dnl
    • MAILER (smtp) dnl

    • Ваша поточна операційна система (ОС) буде замінена на solaris2.
  • 2
    Стандартний файл cf / domain / yourdomain.com.m4 виглядає так:
  • divert (-1) dnl
  • #
  • # Цей файл містить глобальні визначення для yourdomain.com
  • #
  • divert (0) dnl
  • VERSIONID (&# 96; @ (#) yourdomain.com.m4 1.0 (yourdomain.com) 5/1 / 97`)
  • FEATURE (&# 96; use_cw_file`) dnl
  • 3
    Також він може мати дещо інші функції feature () і визначення define (). Ключем до всього цього є віртуальна таблиця користувача.
  • 4
    згенеруйте собі /etc/mail/sendmail.cf файл зі свого mailserver.mc файлу наступним чином:
  • cd sendmail-VERSION / cf / cf
  • / Build mailserver.cf
  • cp mailserver.cf /etc/mail/sendmail.cf
  • 5
    Створіть віртуальну таблицю користувача. Це детально пояснюється в книзі Sendmail, в параграфі 19.6.28 у 2-му виданні, або в параграфі 4.8.51 видання 3-го- тут дано огляд. Ця таблиця є базою даних, яка розподіляє віртуальні адреси за адресами фізичним. Ви створюєте текстовий файл, в якому кожен рядок містить пару ключ / значення, розділену TAB. наприклад:
  • Приклад 1:
  • [email protected] jschmoe
  • [email protected] [email protected]
  • @ Yourdomain.com jschmoe
  • У цьому першому прикладі адреса [email protected] буде призначений локальному користувачеві з ім`ям jschmoe- [email protected] призначений віддаленому користувачеві [email protected], і будь-хто, у кого ім`я yourdomain.com також буде спрямований на jschmoe.

  • Приклад 2:
  • [email protected] jschmoe% 3
  • [email protected] &npsp- error: nouser No such user here (помилка: немає користувача Немає облікового запису з таким ім`ям)
  • [email protected] yourdomain-list
  • @ Yourdomain.com %[email protected]
  • У цьому другому прикладі адреса [email protected] буде спрямований на локального користувача jschmoe% 3 (Подивіться в зауваженні 3 нижче для пояснення, що означає% 3), адреса [email protected] поверне наведену помилку, адреса [email protected] буде спрямований на локального користувача yourdomain-list (Якого ви можете використовувати як файл псевдонімів для остаточного рішення) і будь-який інший користувач з yourdomain.com буде направлений до віддаленому користувачеві з тим же самим ім`ям, але з othercompany.com.
  • 6
    Якщо у вас є локальні користувачі, скажімо Сем, і в файлі немає ключа для [email protected] і немає ключа для універсальної пастки @ yourdomain.com, то Sendmail повернеться до локальному користувачеві по імені Сем при проходженні [email protected]. Щоб запобігти цьому, ви повинні використовувати також універсальну пастку або явно заданий ключ для [email protected]- приклад з error: nouser (помилка: немає користувача) , описана вище, може бути корисна в цій ситуації.
  • 7
    Якщо ви хочете, щоб віртуальний адреса розподілявся між декількома фізичними, то вам необхідно зробити це в обхід. Призначте віртуальною адресою розподілятися на локальні псевдоніми, потім призначте, щоб локальну адресу розподілявся між набором адрес. Наприклад, у віртуальній таблиці користувача:
  • [email protected] localjoe

    потім у файлі псевдонімів:
  • localjoe: [email protected], [email protected]
  • У прикладі, наведеному вище:
  • [email protected] jschmoe% 3


  • 8

    Відео: Установка, Користування, Налаштування програми "Zona"

    % 3 є збереженням необов`язковою +деталізація частини вихідного адреси. Загалом, + деталізація позначає, що коли Sendmail отримує адресу на кшталт користувач + деталізація @ domain, то якщо домен знаходиться в класі w (дивіться крок №7 нижче), sendmail здійснює перевірку, щоб з`ясувати чи може користувач + деталізація бути визначений, потім просто повертається, якщо такого користувача немає. Таким чином, все:
  • [email protected]
  • [email protected]
  • [email protected]

    повинні все відповідати записи вище, з % 3 збереженням +деталізація (detail) частини нічого, +foo і +дійсно довга частина (reallylongextrapart) відповідно.
  • Допускається кілька доменів, причому ВА в кожному з них є незалежними. Так, для прикладу, у вас може бути:
  • [email protected] localjoe
  • [email protected] [email protected]
  • [email protected] localjoe
  • [email protected] error: nouser No such user here (помилка: немає користувача Немає облікового запису з таким ім`ям)
  • 9
    Для людей, що займаються адмініструванням декількох доменів, може виявитися легше зберігати список кожного домена в окремому файлі, потім написати коротку програму, щоб з`єднати всі подібні файли разом в головну віртуальну таблицю користувача. Але ми забігаємо вперед це наступний крок ...
  • Метод 4 з 6: побудова Користувальницької Таблиці Sendmail
    1
    Побудуйте віртуальну таблицю користувача. Якщо наведений вище текстовий файл віртуальної таблиці знаходиться в sourcefile, і ви використовуєте тип бази даних dbm, то слід скористатися командою:
    • makemap dbm / etc / mail / virtusertable lt; sourcefile
    • Зауваження: якщо ви побудували Sendmailз NEWDB замість NDBM, то в вищенаведених рядках використовуйте хеш замість dbm.
    • Це створить один або кілька нетекстових файлів (зазвичай /etc/mail/virtusertable.dir і /etc/mail/virtusertable.pag, або /etc/mail/virtusertable.db), Але насправді не змінить сам/ Etc / mail / virtusertable,так що це рекомендоване положення для sourcefile.
    • Якщо ви хочете перетворити назад імена локальних користувачів для вихідної пошти, то вам знадобиться додати параметри для таблиці налаштувань в свій .mc файл:
    • FEATURE (&# 96; genericstable`, &# 96; dbm / etc / mail / genericstable`) dnl
    • GENERICS_DOMAIN_FILE (&# 96; / etc / mail / generics-domains`) dnl
  • І вам необхідно створити таблицю налаштувань/ Etc / mail / genericstable, яка схожа на / Etc / mail / virtusertable описану вище, за винятком того, що стовпці міняються місцями:
  • jschmoe [email protected]
  • Метод 5 з 6: додавання своїх доменних імен в Sendmail
    1
    Дайте доменне ім`я в sendmailкожному класу w. Зазвичай це робиться додаванням рядка в / Etc / mail / local-host-names (відомий як /etc/sendmail.cw до версії 8.10) зі значенням кожного доменного імені. Подібним чином, якщо ви використовуєте таблицю налаштувань (genericstable), то вам потрібно додати будь-які домени, імена яких ви хочете перетворювати назад, в / Etc / mail / generics-domains.
  • 2
    Перезапустіть або дайте команду SIGHUP sendmail.
  • 3
    Вам не потрібно перезавантажувати sendmail при зміні віртуального користувача або таблиць з параметрами налаштування, тільки при зміні файлу /etc/mail/sendmail.cf або файлів класу, на кшталт / Etc / mail / local-host-names.
  • Додатковий крок потрібно для хостів без постійного підключення. Як було відмічено в розділі конфігурації MX, якщо ви користуєтеся іншим хостом, щоб поставити свою пошту в чергу до того моменту, коли ви під`єднали, вам доведеться примусово відправити пошту в чергу на вторинний поштовий сервер. Щоб це завершити, коли ваш первинний сервер підключиться, вам слід запустити програму etrn.pl Яка є складовою частиною каталогу дистрибутива sendmail:
  • etrn.pl secondary-mx-host yourdomain.com
  • Радять поставити це в кінець програми запуску Sendmail на будь-якому первинному MX. Це може бути особливо корисно в якості послідовного виконання, коли який-небудь скрипт ініціює з`єднання на первинному MX без постійного підключення.
  • На даному етапі ви повинні бути встановлені, і люди повинні мати можливість відправляти електронні повідомлення на адреси @ yourdomain.com.
  • Метод 6 з 6: перевірка вашого конфігураційного файлу
    1
    Протестуйте своє з`єднання і переконайтеся, що все працює, як і очікувалося перед оголошенням нового доменного імені та поштових адрес для цього домену. Якщо щось працює не так, як очікувалося, ви можете зробити тест за допомогою режиму тестування Sendmail:
    • sendmail -bt
    • Тут кілька прикладів того, що можна спробувати в тестовому режимі (переконайтеся, що домен знаходиться в класі w :):

    Поради

    • Що робить Sendmail :
    • Слухає мережеві порти в очікуванні пошти.
    • Сортує пошту і доставляє її на локальні або зовнішні сервера.
    • Додає пошту до файлів або додає запис про неї за допомогою інших програм.
    • Створює чергу пошти (якщо негайна доставка закінчилася невдало).
    • Перетворює поштові адреси в / з імен користувачів, або оперує зі списками відправки пошти.
    • читає правила для спеціальної обробки пошти, так щоб вони могли відловлювати спам або перевіряти на коректність.
  • Якщо ви зібрали Sendmail з NEWDB замість NDBM, то вам доведеться використовувати хеш замість dbm в рядку вище.


  • Увага, тільки СЬОГОДНІ!

    Увага, тільки СЬОГОДНІ!
    » » Як встановити і налаштувати програму sendmail