Поштові SMTP-порти - значення, особливості та опис

Поштові SMTP-порти - значення, особливості та опис

Simple Mail Transfer Protocol (SMTP) - це стандарт для e-mail-пошти. Спочатку був зафіксований в RFC 821 (1982 р.), останній раз оновлювався в 2008 році з розширеними додаваннями SMTP за RFC 5321 (широко поширеним сьогодні протоколом).

Хоча поштові сервери та інші поштові агенти застосовують SMTP для передачі та отримання e-mail-кореспонденції, програмне забезпечення користувацького класу, як правило, використовує SMTP-порти тільки для відправки даних на сервер для ретрансляції. Для отримання повідомлень клієнтські програми зазвичай використовують або IMAP, або POP3. Дані протоколи найбільш зручні і затребувані для цих цілей: мають розширений функціонал і широкий спектр можливостей.

Характерні особливості

SMTP-зв 'язок між поштовими серверами використовує порт TCP 25. Поштові клієнти часто надсилають вихідні листи на поштовий сервер по порту 587. Незважаючи на те, що застарілі поштові провайдери як і раніше дозволяють використовувати нестандартний порт 465 для цієї мети.

SMTP-з 'єднання, захищені TLS, відомі як SMTPS, можуть бути виконані з використанням технології STARTTLS.

Запатентовані системи і системи електронної пошти використовують свої власні нестандартні протоколи для доступу до поштових скриньок на своїх поштових серверах - всі компанії використовують порти SMTP-сервера, коли відправка або отримання електронної пошти відбуваються за межами їх власних систем.

Призначення SMTP

Майже всі дії в Інтернеті стають можливими завдяки протоколам - спеціальним правилам мережевого програмного забезпечення, які дозволяють комп 'ютеру зв' язуватися з усіма мережами, щоб користувачі могли робити покупки, читати новини, відправляти електронну пошту. Протоколи життєво важливі для повсякденної мережевої діяльності - вони вбудовані в мережеве програмне забезпечення і використовуються за замовчуванням.

Протокол SMTP-порту надає набір кодів, які спрощують обмін повідомленнями електронної пошти між серверами (мережевий комп 'ютер, який обробляє вхідну та вихідну електронну пошту). Це свого роду скорочення, яке дозволяє серверу розбити різні частини повідомлення на категорії, які може зрозуміти інший сервер. Коли користувач надсилає повідомлення, воно перетворюється на рядки тексту, розділені кодовими словами (або цифрами), які визначають призначення кожного розділу.

Технічна термінологія

SMTP - це протокол TCP/IP, який використовується для роботи з e-mail-поштою. Однак оскільки він обмежений можливістю відправляти повідомлення в чергу на приймаючій стороні, він зазвичай використовується або з POP3, або з IMAP, які дозволяють зберігати дані на сервер і при необхідності завантажувати їх. Іншими словами, зазвичай використовують програму, яка вибирає SMTP для відправки e-mail і POP3 або IMAP для отримання кореспонденції. У системах на основі Unix sendmail є найбільш широко використовуваним SMTP-сервером для електронної пошти. У комерційний пакет Sendmail входить сервер POP3. Microsoft Exchange включає SMTP-сервер і так само може бути налаштований на підтримку POP3.


SMTP, як правило, використовується для роботи через інтернет-порт 25. Альтернативою SMTP, який широко використовується в Європі, є X.400. Багато поштових серверів тепер підтримують Extended Simple Mail Transfer Protocol (ESMTP), який дозволяє передавати мультимедійні файли у вигляді електронної пошти.

Історія

У 1960-х роках використовувалися різні форми обміну електронними повідомленнями. Користувачі спілкувалися за допомогою систем, створених для конкретних мейнфреймів. Оскільки все більше комп 'ютерів ставали взаємопов' язаними, з 'явилася необхідність у розробці стандартів, що дозволяють користувачам різних систем відправляти електронну пошту один одному. SMTP виник із цих стандартів, розроблених у 1970-х роках.

Подальші реалізації включають FTP Mail Protocol, починаючи з 1973 року. Робота з розвитку тривала в 1970-х рр., поки ARPANET не перейшла в сучасний Інтернет в 1980 році. Потім Джон Постель запропонував протокол передачі поштових даних.

SMTP почав широко застосовуватися на початку 1980-х рр. У той час даний протокол був доповненням до Unix для поштової програми Unix Copy Program. SMTP найкраще працює, коли відправляюча і приймаюча машини підключені до Мережі, використовують механізм зберігання і відправки і є прикладами технології push.

Модель обробки пошти

E-mail-пошта відправляється поштовим клієнтом (поштовим агентом користувача, MUA) на поштовий сервер (агент відправки пошти, MSA) з використанням SMTP на TCP-порт 587. Більшість провайдерів поштових скриньок як і раніше дозволяють відправку на традиційний порт 25. MSA доставляє пошту на свій поштовий агент (агент передачі пошти, MTA). Часто ці агенти є примірниками загального програмного забезпечення, активованого з різними параметрами на одному комп 'ютері. Локальна обробка може виконуватися або на одній машині, або розділятися між кількома машинами. Процеси поштового агента на одній машині можуть обмінюватися файлами, але якщо обробка виконується на декількох машинах, вони передають повідомлення між собою, використовуючи SMTP-порт, де кожна машина налаштована на використання наступної машини як інтелектуального хосту.

Огляд протоколу

SMTP - це текстовий протокол, орієнтований на з 'єднання, в якому відправник пошти спілкується з поштовим одержувачем шляхом видачі командних рядків і надання необхідних даних по надійному впорядкованому каналу потоку даних. Сеанс SMTP складається з команд, створених SMTP-клієнтом (ініціюючим агентом, відправником або передавачем) і відповідними відповідями від SMTP-сервера (агента прослуховування або одержувача). Сеанс може включати в себе нуль або більше SMTP-транзакцій, які складаються з трьох послідовностей команд/відповідей:

  • MAIL (сервер mail.ru SMTP-порту), щоб встановити зворотну адресу, також званий зворотний шлях.
  • RCPT, щоб встановити отримувача повідомлення. Ця команда може видаватися неодноразово, але один раз для кожного користувача.
  • DATA, щоб сигналізувати початок тексту і його зміст. Цей параметр складається з заголовка і тіла повідомлення, розділеного порожнім рядком. DATA - це група команд, на яку сервер відповідає двічі: один раз для самої команди DATA, щоб підтвердити, що він готовий прийняти дані, повторно - після закінчення послідовності інформації, щоб прийняти або відхилити всі повідомлення.

Крім проміжної відповіді для DATA, відповідь кожного сервера може бути або додатною, або від 'ємною (код 2xx). Негативні відповіді можуть бути постійними (коди 5xx) або тимчасовими (коди 4xx). Відхилення - це постійний збій, і клієнт повинен відправити повідомлення відмов на сервер, на який він його отримав. Падіння - це позитивна відповідь, за якою слідує відмова від повідомлення.


Поштові SMTP-порти та їх значення

SMTP - тільки протокол доставки. При звичайному використанні пошти відправляється на цільовий поштовий сервер, наприклад, SMTP-сервер порту mail. Дані маршрутизуються на основі цільового сервера, а не окремих користувачів, до яких він адресований. Інші протоколи (POP або IMAP) спеціально розроблені для використання окремими користувачами, які отримують повідомлення і керують поштовими скриньками. SMTP, POP і IMAP є неприйнятними протоколами для ретрансляції пошти за допомогою комп 'ютерів з переривчастим зв' язком. Вони призначені для роботи після остаточної доставки, коли інформація, критично важлива для правильної роботи поштового ретранслятора, була видалена.

Пуск черги порожніх повідомлень

Remote Message Queue Starting - це функція SMTP, яка дозволяє віддаленому хосту запустити обробку пошти на сервері, щоб вона могла отримувати повідомлення, призначені для неї, відправивши команду TURN. Однак ця функція створювала потенційну загрозу безпеці даних і була розширена в RFC 1985 командою ETRN, яка більш надійно працює з використанням методу автентифікації на основі інформації про систему доменних імен.

Міжнародна адреса електронної пошти

Користувачі, чий сценарій не є латинським, або які використовують діакритичні символи не в наборі символів ASCII, мали труднощі з вимогою адреси електронної пошти латинського алфавіту (SMTP-порт mail.ru). RFC 6531 був створений для вирішення цієї проблеми, надаючи можливості інтернаціоналізації для SMTP, розширення SMTPUTF8 і підтримки багатобайтових і не-ASCII-символів в адресах електронної пошти. Приклади: діакритичні знаки та інші мовні символи (грецький і китайський). Також актуально для SMTP-порту Yandex.

Поточна підтримка цього документа на даний момент обмежена, але є великий інтерес до широкого впровадження RFC 6531 і відповідних RFC в таких країнах, як Китай, які мають велику користувальницьку базу, де Latin (ASCII) є іноземним сценарієм.

Вихідна пошта SMTP-сервера

Клієнт електронної пошти повинен знати IP-адресу свого вихідного SMTP-сервера. Це має бути вказано як частина його конфігурації (зазвичай це назва DNS). Цей сервер буде надавати вихідні повідомлення від імені користувача.


Обмеження доступу до сервера вихідної пошти

Адміністраторам сервера необхідно накласти певний контроль на тих клієнтів, які можуть використовувати сервер. Це дозволяє боротися зі зловживаннями і спамом. Широко використовувалися подібні рішення:

раніше багато систем вводили обмеження на використання місця розташування клієнта, дозволяючи тільки використання клієнтами, чия IP-адреса є одним з адміністраторів сервера. Використання з будь-якої іншої IP-адреси клієнта заборонено.

Сучасні SMTP-сервери зазвичай пропонують альтернативну систему, що вимагає автентифікації клієнтів за обліковими даними, перш ніж дозволяти доступ.

SMTP - який порт використовується?

Зв 'язок між поштовими серверами зазвичай завжди використовує стандартне значення порту TCP 25, призначеного для SMTP. Проте поштові клієнти зазвичай використовують певні порти порту smtp ssl. Більшість провайдерів інтернет-послуг тепер блокують весь трафік вихідного порту від своїх клієнтів як захід захисту від спаму. З тієї ж причини підприємства зазвичай налаштовують свій брандмауер, щоб дозволити вихідний порт з призначених поштових серверів.

Приклад транспорту SMTP

Типовий приклад відправки повідомлення через SMTP на дві поштові скриньки (alice і theboss), розташованих в одному і тому ж поштовому домені (example.com або localhost.com), відтворюється в наступному сеансі обміну даними. Після того як відправник повідомлення (клієнт SMTP) встановлює надійний канал зв 'язку для приймача повідомлень (SMTP-сервер), сеанс відкривається з сервером, зазвичай містить його повне доменне ім' я (FQDN), в цьому випадку smtp, example або com. Клієнт ініціює своє діалогове вікно, відповідаючи командою HELO, що ідентифікує себе в параметрі команди з його повною доменною назвою (або літералом адреси, якщо він недоступний).


Додаткові суфікси

Клієнти дізнаються, які параметри підтримує сервер, використовуючи вітання EHLO, замість вихідного HELO. Клієнти повертаються в HELO тільки якщо сервер не підтримує розширення SMTP.

Сучасні клієнти можуть використовувати ключове слово SSRE розширення ESMTP для запиту сервера для максимального розміру повідомлення, яке буде прийнято. Старі клієнти та сервери можуть намагатися передавати повідомлення з надлишковим розміром, які будуть відхилені після використання мережевих ресурсів, включаючи час з 'єднання до мережевих посилань.

Методи захисту від спаму і автентифікація електронною поштою

Вихідний дизайн SMTP не мав можливості ідентифікувати відправників або перевіряти, чи дозволено серверам відправляти від їх імені. У результаті можливе використання спуфінгу електронної пошти, що зазвичай використовується в поштовому спамі та фішингу.

Виконуються спеціальні пропозиції для зміни SMTP або їх заміни повністю. Одним з прикладів цього є Internet Mail 2000, але ні він, ні будь-який інший не досягли великого успіху перед мережевим ефектом величезної встановленої бази класичного SMTP. Замість цього поштові сервери тепер використовують цілий ряд методів, у тому числі DomainKeys, DomainKeys Identified Mail, Policy Policy Framework і DMARC, DNSBLs і greylisting для