Cú pháp smtp. Các lệnh máy khách SMTP cơ bản. Giải pháp mạng và truyền tệp được quản lý

Trong nhiều thập kỷ, người dùng Internet đã sử dụng email để trao đổi tin nhắn và thư từ. Cho đến đầu những năm 90 của thế kỷ trước, tin nhắn điện tử thường được sử dụng bởi nhân viên của các tổ chức lớn. Với sự tin học hóa rộng rãi và sự lan rộng của World Wide Web, email đã trở thành một phần trong cuộc sống của người dùng thông thường.

Sự phát triển của công nghệ Internet đã dẫn đến sự xuất hiện của cái gọi là giao thức thư được sử dụng để trao đổi thư từ trên mạng. Chúng cho phép xử lý các chữ cái lớn, cung cấp cho người dùng tất cả các loại dịch vụ.

Nó không bị hạn chế bởi bất kỳ hệ thống con truyền dữ liệu cụ thể nào. Hoạt động của nó chỉ yêu cầu một kênh đáng tin cậy cho luồng truyền tải của chúng trong khi vẫn duy trì trật tự.

SMTP được sử dụng chủ yếu để gửi thư và yêu cầu của người dùng đến máy chủ, sau đó thư sẽ được gửi đến người nhận. Để nhận được thư, bạn cần có ứng dụng thư khách để làm việc Giao thức IMAP hoặc POP3.

Cái này được dùng để làm gì?

Ngày nay điều này là điển hình giao thức bưu chính. Tất cả các chương trình thư và máy chủ đều sử dụng nó.

Lưu trữ trang web ảo cho CMS phổ biến:

Nguyên lý hoạt động của giao thức.

SMTP là một giao thức văn bản; nguyên tắc hoạt động của nó yêu cầu một kết nối mà qua đó người dùng gửi e-mail, liên hệ với người nhận bằng dòng lệnh cụ thể. Và dữ liệu được nhận thông qua việc sử dụng kênh liên lạc đáng tin cậy. Thông thường, kênh liên lạc này là kết nối TCP.

Một phiên giao thức làm việc bao gồm một số lệnh được gửi bởi ứng dụng thư khách SMTP và phản hồi của máy chủ đối với chúng. Trong phiên làm việc, cả máy khách và máy chủ đều trao đổi các tham số cần thiết.

Hoạt động giao thức bao gồm một sự kết hợp bao gồm trình tự sau lệnh và phản hồi:

  • Lệnh MAIL FROM - cho biết địa chỉ email gửi lại;
  • Lệnh RCPT TO - xác định người nhận một lá thư cụ thể;
  • DATA là lệnh chịu trách nhiệm gửi nội dung của email. Đây là phần thân của bức thư, bao gồm phần đầu và phần thân của bức thư, tách biệt với nhau dòng trống.

Ứng dụng khách SMTP ban đầu có thể là ứng dụng email của người nhận hoặc tác nhân chuyển thư trên máy chủ.

Các giao thức thư khác hoạt động như thế nào

SMTP chỉ là một giao thức để gửi thư từ trên mạng. Theo lệnh, anh ta không thể nhận email từ máy chủ từ xa hoặc bằng cách nào đó quản lý hộp thư điện tử.

Có các giao thức khác cho việc này, chẳng hạn như IMAP và POP. Nên sử dụng chúng khi kết nối mạng tạm thời hoặc khi PC được bật định kỳ.

NHẠC POP.

Giao thức bưu điện rất đơn giản giao thức mạng, bao gồm ba loại: POP, POP2 và POP3. Chúng được thiết kế để gửi thư từ máy chủ thư trung tâm đến người dùng, xóa thư khỏi máy chủ và nhận dạng người dùng. Sự kết hợp giữa thông tin đăng nhập và mật khẩu được sử dụng để nhận dạng. Điều đáng chú ý là cả ba giao thức đều không thể thay thế cho nhau.

Giao thức bao gồm SMTP, được sử dụng để truyền thư đi.

Theo POP3, các bức thư gửi đến một e-mail cụ thể sẽ được lưu trữ trên máy chủ cho đến khi chúng được tải xuống PC trong phiên tiếp theo. Sau khi quá trình tải xuống diễn ra, bạn có thể đọc tin nhắn trong khi ngắt kết nối mạng. POP3 được coi là giao thức thư nhanh nhất.

IMAP.

VỚI sử dụng mạng Internet Giao thức truy cập tin nhắn cho phép lưu trữ tin nhắn trong các thư mục tệp trên máy chủ và tìm kiếm bất kỳ chuỗi tin nhắn nào trực tiếp tại đó.

Giao thức này phù hợp với những người dùng có máy tính sử dụng kết nối Internet liên tục. Nó khác với POP ở chỗ khi quét tin nhắn mới, chỉ có tiêu đề của chúng được tải xuống.

Và các tác nhân chuyển tiếp thư khác sử dụng SMTP để gửi và nhận thư; chạy ở cấp độ người dùng, các ứng dụng thư khách thường chỉ sử dụng SMTP để gửi thư đến máy chủ thư để chuyển tiếp. Các ứng dụng khách thường sử dụng POP để nhận tin nhắn. Giao thức bưu điện- giao thức Bưu điện) hoặc IMAP (eng. Giao thức truy cập tin nhắn Internet ) hoặc các hệ thống độc quyền (chẳng hạn như Microsoft Exchange và Lotus Notes / Domino) để truy cập tài khoản hộp thư của bạn trên máy chủ.

Câu chuyện

Vào những năm 1960 họ đã sử dụng các loại khác nhau truyền thông điện tử. Mọi người liên lạc với nhau bằng các hệ thống được thiết kế cho các máy tính lớn cụ thể. Khi tất cả nhiều máy tính hơn trở nên kết nối với nhau, đặc biệt là trên mạng ARPANET của Chính phủ Hoa Kỳ, các tiêu chuẩn được phát triển để người dùng trên các hệ thống khác nhau có thể viết tin nhắn điện tử cho nhau. Những tiêu chuẩn này, được phát triển vào những năm 1970, đã trở thành nền tảng cho SMTP.

Nguồn gốc của SMTP có thể bắt nguồn từ hai triển khai được mô tả vào năm 1971 - Giao thức hộp thư và SNDMSG, được Ray Tomlinson của BBN Technologies “phát minh” cho các máy tính TOPS-20/TENEX gửi tin nhắn qua ARPANET (vào thời điểm đó chúng được sử dụng được kết nối với ít hơn 50 máy chủ).

Các triển khai tiếp theo bao gồm FTP Mail và Giao thức thư, được phát triển vào năm 1973. Sự phát triển tiếp tục trong suốt những năm 1970 cho đến khi ARPANET phát triển thành Internet hiện đại vào khoảng năm 1980. Cùng năm đó, Jon Postel đề xuất Giao thức vận chuyển thư, nhờ đó FTP không còn là giao thức cơ sở để gửi thư. SMTP được xuất bản trong RFC 821 (cũng được viết bởi Postel) vào tháng 8 năm 1982.

Tiêu chuẩn SMTP được phát triển cùng thời với Usenet, một mạng dữ liệu có một số điểm tương đồng với SMTP. SMTP được sử dụng rộng rãi vào đầu những năm 1980. Vào thời điểm đó, nó là một tiện ích bổ sung để chạy Unix chương trình thư Chương trình sao chép Unix (UUCP), phù hợp hơn để xử lý việc chuyển các tin nhắn điện tử giữa các định kỳ các thiết bị đã được kết nối. Mặt khác, SMTP hoạt động tốt khi cả thiết bị gửi và nhận được kết nối liên tục trên mạng. Cả hai thiết bị đều sử dụng cơ chế lưu trữ và chuyển tiếp và là ví dụ về công nghệ đẩy. Mặc dù các nhóm tin Usenet vẫn được phân phối giữa các máy chủ sử dụng UUCP, thư UUCP đã biến mất một cách hiệu quả cùng với "đường dẫn bang" (chuỗi các máy chủ trên mạng mà thư phải đi để đến đích), được sử dụng làm tiêu đề định tuyến. Bài viết Viết lại người gửi chứa thông tin kỹ thuật. Tài liệu tham khảo về lịch sử của SMTP và định tuyến nguồn ban đầu thông qua RFC 1123.

Vì giao thức này ban đầu có giao diện văn bản (ASCII) nên nó không hoạt động tốt với các tệp nhị phân và ký tự từ nhiều ngôn ngữ không phải tiếng Anh. Các tiêu chuẩn như Tiện ích mở rộng thư Internet đa năng (MIME) đã được phát triển để mã hóa các tệp nhị phân để truyền qua SMTP. Các tác nhân chuyển tiếp được phát triển sau Sendmail thường cũng triển khai tùy chọn 8 bit thuần túy, do đó, chiến lược "chỉ gửi tám" thay thế có thể được sử dụng để truyền dữ liệu văn bản tùy ý (trong bất kỳ mã hóa ký tự giống ASCII 8 bit nào) qua SMTP. Tuy nhiên, vẫn còn vấn đề về krakozyabr, do cách hiển thị bộ ký tự khác nhau giữa các nhà sản xuất, mặc dù bản thân các địa chỉ bưu chính vẫn cho phép sử dụng riêng ASCII. Ngày nay, các bộ chuyển tiếp 8 bit thuần túy thường hỗ trợ phần mở rộng 8BITMIME, cho phép truyền các tệp nhị phân gần như dễ dàng như văn bản thuần túy. Gần đây, tiện ích mở rộng SMTPUTF8 đã được tạo để hỗ trợ văn bản được mã hóa UTF-8, cho phép bao gồm nội dung và địa chỉ quốc tế bằng cách sử dụng bảng chữ cái như Cyrillic hoặc tiếng Trung.

Nhiều người nổi bật đã đóng góp vào đặc tả SMTP cốt lõi, bao gồm Jon Postel, Eric Allman, Dave Crocker, Ned Fried, Randall Jellens, Jon Klensin và Keith Moore.

Mô hình xử lý thư

Email được gửi bởi một ứng dụng thư khách (MUA, tác nhân người dùng thư) đến máy chủ thư (MSA, tác nhân gửi thư) bằng cách sử dụng SMTP trên cổng TCP 587. Từ đó, MSA gửi thư đến các tác nhân chuyển thư (MTA) của nó. đại lý chuyển nhượng). Thường thì hai tác nhân này chỉ đơn giản là những ví dụ khác nhau về cùng một thứ phần mềm, được khởi chạy với các thông số khác nhau trên cùng một thiết bị. Việc xử lý cục bộ có thể được thực hiện trên một máy riêng biệt hoặc được phân chia giữa nhiều thiết bị khác nhau; trong trường hợp đầu tiên, các quá trình liên quan có truy cập chung tới các tập tin, trong trường hợp thứ hai, SMTP được sử dụng để chuyển tiếp thư nội bộ, với mỗi máy chủ được cấu hình để sử dụng thiết bị tiếp theo làm vật chủ trung gian. Bản thân mỗi quy trình là một MTA, tức là một máy chủ SMTP.

MTA biên phải tìm được máy chủ đích. Nó sử dụng Hệ thống tên miền (DNS) để tra cứu các bản ghi trao đổi thư ( trao đổi thư- MX) thuộc miền của người nhận (phần địa chỉ nằm bên phải ký hiệu @). Bản ghi MX của thư được trả về chứa tên máy chủ mục tiêu. MTA sau đó kết nối với máy chủ trao đổi dưới dạng máy khách SMTP.

Khi mục tiêu MX chấp nhận tin nhắn đến, nó sẽ chuyển nó đến đại lý chuyển phát thư (MDA) để gửi thư đến địa phương. MDA cung cấp khả năng lưu thư ở định dạng hộp thư thích hợp. Một lần nữa, việc nhận thư có thể được thực hiện bởi một số hoặc bởi một máy tính - hình ảnh hiển thị hai hộp thư gần nhất cho mỗi trường hợp. MDA có thể gửi thư trực tiếp đến bộ lưu trữ hoặc truyền chúng qua mạng bằng cách sử dụng SMTP hoặc bất kỳ phương tiện nào khác, bao gồm cả Thư cục bộ Giao thức chuyển giao- LMTP) - một phiên bản phái sinh của SMTP, dành cho mục đích này.

Sau khi được gửi đến máy chủ thư cục bộ, thư sẽ được lưu trữ để tìm kiếm hàng loạt đối với các ứng dụng thư khách được xác thực (MUA). Tin nhắn được các ứng dụng lấy ra người dùng cuối(ứng dụng thư khách) bằng Giao thức truy cập thư Internet (IMAP, tạo điều kiện truy cập vào thư và quản lý thư được lưu trữ) hoặc với sử dụng bài đăng Giao thức Office (POP), thường sử dụng định dạng tệp mbox truyền thống hoặc hệ thống độc quyền như Miscrosoft Exchange/Outlook hoặc Lotus Notes/Domino. Ứng dụng thư khách trên mạng có thể sử dụng một trong hai phương pháp, nhưng giao thức tìm kiếm thường không tuân theo các tiêu chuẩn chính thức.

SMTP xác định việc truyền tải tin nhắn chứ không phải nội dung của nó. Do đó, nó chỉ định trình bao bọc thư và các tham số của nó (chẳng hạn như người gửi trình bao bọc), nhưng không chỉ định tiêu đề hoặc nội dung của chính thư đó. STD 10 và RFC 5321 xác định SMTP (trình bao bọc), trong khi STD 11 và RFC 5322 xác định thông báo (tiêu đề và nội dung), được gọi chính thức là định dạng tin nhắn thư(Định dạng tin nhắn Internet).

Tổng quan về giao thức

SMTP là một giao thức văn bản dựa trên kết nối, trong đó người gửi tin nhắn giao tiếp với người nhận bằng cách đưa ra các dòng lệnh và nhận dữ liệu cần thiết thông qua kênh đáng tin cậy, thường là kết nối TCP (Giao thức điều khiển truyền). Phiên SMTP bao gồm các lệnh được gửi bởi máy khách SMTP và các phản hồi tương ứng từ máy chủ SMTP. Khi một phiên được mở, máy chủ và máy khách sẽ trao đổi các tham số của nó. Một phiên có thể bao gồm không hoặc nhiều hoạt động SMTP (giao dịch).

Hoạt động SMTP bao gồm ba chuỗi lệnh/phản hồi (xem ví dụ bên dưới). Mô tả trình tự:

  • THƯ ĐẾN TỪ- đặt địa chỉ trả về (tức là Return-Path, 53121.From, mfrom). Đây là địa chỉ để nhận thư trả lại.
  • RCPT ĐẾN- đặt người nhận của tin nhắn này. Lệnh này có thể được đưa ra nhiều lần, một lần cho mỗi người nhận. Những địa chỉ này cũng là một phần của shell.
  • DỮ LIỆU- để gửi nội dung tin nhắn. Đây chính là nội dung của bức thư, trái ngược với phong bì của nó. Nó bao gồm tiêu đề thư và nội dung thư được phân tách bằng một dòng trống. DATA về cơ bản là một nhóm lệnh và máy chủ phản hồi hai lần: đầu tiên là chính lệnh DATA, để cho biết rằng nó đã sẵn sàng chấp nhận văn bản; và lần thứ hai sau khi kết thúc chuỗi dữ liệu để chấp nhận hoặc từ chối toàn bộ bức thư.

Ngoài các phản hồi trung gian cho lệnh DATA, mỗi phản hồi của máy chủ có thể là dương (mã phản hồi 2xx) hoặc âm. Ngược lại, cái sau có thể là vĩnh viễn (mã 5xx) hoặc tạm thời (mã 4xx). Máy chủ SMTP từ chối gửi tin nhắn - lỗi vĩnh viễn; trong trường hợp này khách hàng phải gửi thư trả lời. Sau khi thiết lập lại - phản hồi tích cực, tin nhắn rất có thể sẽ bị từ chối. Máy chủ cũng có thể cho biết rằng dữ liệu bổ sung được mong đợi từ máy khách (mã 3xx).

Máy chủ ban đầu (máy khách SMTP) có thể là ứng dụng thư khách của người dùng cuối (được xác định theo chức năng là tác nhân thư - MUA) hoặc tác nhân chuyển thư (MTA) trên máy chủ, tức là. máy chủ hoạt động như một máy khách trong phiên thích hợp để chuyển tiếp tin nhắn. Các máy chủ đầy đủ chức năng hỗ trợ hàng đợi tin nhắn để truyền lại tin nhắn trong trường hợp có lỗi.

MUA biết máy chủ SMTP dành cho thư đi từ cài đặt của nó. Máy chủ SMTP, hoạt động như một máy khách, tức là chuyển tiếp thư, xác định máy chủ nào sẽ kết nối bằng cách xem bản ghi DNS MX (Mail eXchange) tài nguyên cho miền của từng người nhận. Trong trường hợp không tìm thấy bản ghi MX, các MTA tương thích (không phải tất cả) sẽ quay trở lại bản ghi A đơn giản. Máy chủ chuyển tiếp cũng có thể được cấu hình để sử dụng Máy chủ thông minh.

Máy chủ SMTP, hoạt động với tư cách là máy khách, thiết lập kết nối TCP với máy chủ trên cổng 25 do SMTP thiết kế. MUA phải sử dụng cổng 587 để kết nối với tác nhân cung cấp thư (MSA). Sự khác biệt chính giữa MTA và MSA là việc xác thực SMTP chỉ được yêu cầu cho phần sau.

Truy xuất tin nhắn và SMTP

SMTP chỉ là một giao thức phân phối. Nó không thể truy xuất tin nhắn từ máy chủ từ xa theo yêu cầu. Các giao thức khác như POP và IMAP đã được phát triển để truy xuất thư và quản lý hộp thư. Tuy nhiên, SMTP cung cấp khả năng bắt đầu xếp hàng tin nhắn trên một máy chủ từ xa để hệ thống yêu cầu có thể nhận tất cả các tin nhắn hướng đến nó (xem Bắt đầu hàng đợi tin nhắn từ xa bên dưới). POP và IMAP được ưu tiên sử dụng khi máy tính của người dùng không bật liên tục hoặc tạm thời được kết nối với Internet.

Bắt đầu hàng đợi tin nhắn từ xa

Bắt đầu hàng đợi tin nhắn từ xa là một tính năng của SMTP cho phép máy chủ từ xa bắt đầu xử lý hàng đợi tin nhắn trên máy chủ để nó có thể nhận các tin nhắn dành cho nó bằng lệnh TURN. Tuy nhiên, tính năng này được coi là không an toàn và đã được mở rộng trong RFC 1985 bằng lệnh ETRN, hoạt động đáng tin cậy hơn do thực tế là nó dựa trên thông tin DNS Phương pháp xác thực.

Chuyển tiếp thư theo yêu cầu

ODMR (Chuyển tiếp thư theo yêu cầu) là một tiện ích mở rộng SMTP được tiêu chuẩn hóa trong RFC 2645, cho phép chuyển tiếp thư đến người dùng được xác thực.

Quốc tế hóa

Nhiều người dùng có bộ ký tự khác với bảng chữ cái Latinh phải đối mặt với yêu cầu về địa chỉ email bằng tiếng Latinh. Để giải quyết vấn đề này, RFC 6531 đã được tạo ra, cung cấp khả năng quốc tế hóa cho SMTP - một phần mở rộng của SMTPUTF8. RFC 6531 cung cấp hỗ trợ cho các ký tự nhiều byte và không phải ASCII trong địa chỉ thư, ví dụ: δοκιμή@παράδειγμα.δοκιμή hoặc 测试@测试.测试. Hỗ trợ hiện tại còn hạn chế, nhưng có mối quan tâm lớn đến việc áp dụng rộng rãi RFC 6531 và các RFC liên quan ở các quốc gia có cơ sở người dùng lớn mà tiếng Latin không phải là bảng chữ cái bản địa.

Máy chủ SMTP thư đi

Ứng dụng thư khách phải biết địa chỉ IP của máy chủ SMTP, địa chỉ này được đặt như một phần của cấu hình (thường ở dạng tên DNS). Máy chủ sẽ gửi tin nhắn đi thay mặt cho người dùng.

Hạn chế truy cập vào máy chủ thư đi

Quản trị viên máy chủ cần kiểm soát những máy khách nào có thể sử dụng máy chủ. Điều này cho phép họ chống lại các hành vi lạm dụng như thư rác. Hai giải pháp thường được sử dụng:

  • Trước đây, nhiều hệ thống đã áp đặt các hạn chế về vị trí của máy khách, chỉ cho phép sử dụng bởi những người có địa chỉ IP nằm trong số địa chỉ do quản trị viên kiểm soát.
  • Các máy chủ hiện đại thường cung cấp một hệ thống thay thế yêu cầu khách hàng xác thực để có quyền truy cập.

Hạn chế quyền truy cập theo vị trí

Trong trường hợp này, máy chủ SMTP của ISP sẽ không cho phép truy cập vào người dùng “ngoài” mạng của nhà cung cấp. Chính xác hơn, máy chủ chỉ có thể thừa nhận những người dùng có địa chỉ IP được cung cấp bởi ISP nhất định, tương đương với việc yêu cầu kết nối Internet thông qua ISP đó. Người dùng di động thường có thể thấy mình đang ở một mạng khác với mạng của nhà cung cấp dịch vụ của họ và do đó tin nhắn sẽ không được gửi.

Hệ thống này có nhiều loại. Ví dụ: máy chủ SMTP của một tổ chức có thể chỉ cho phép người dùng trên cùng một mạng truy cập, chặn những người dùng khác. Máy chủ cũng có thể thực hiện một số kiểm tra về địa chỉ IP của máy khách. Những phương pháp này thường được các tổ chức và cơ quan, chẳng hạn như các trường đại học, sử dụng để sử dụng máy chủ nội bộ. Tuy nhiên, hầu hết trong số họ hiện nay đều sử dụng các phương thức xác thực được mô tả bên dưới.

Bằng cách hạn chế quyền truy cập vào một số địa chỉ nhất định, quản trị viên máy chủ có thể dễ dàng xác định địa chỉ của bất kỳ kẻ tấn công nào. Nếu người dùng có thể sử dụng các ISP khác nhau để kết nối Internet thì loại hạn chế này trở nên không thực tế và việc thay đổi địa chỉ máy chủ SMTP thư đi đã định cấu hình là không thực tế. Rất mong muốn có thể sử dụng thông tin cấu hình máy khách mà không cần thay đổi.

Xác thực ứng dụng khách

Thay vì hạn chế vị trí được mô tả trước đó, các máy chủ SMTP hiện đại thường yêu cầu xác thực người dùng trước khi có quyền truy cập. Hệ thống này linh hoạt hơn, hỗ trợ người dùng di động và cung cấp cho họ một lựa chọn cố định về máy chủ thư đi đã được cấu hình.

mở rayleigh

Một máy chủ có thể truy cập vào mạng rộng và không cung cấp các loại hạn chế truy cập này được gọi là rơle mở. Bây giờ các máy chủ như vậy được coi là hình thức xấu.

Cổng

Quản trị viên máy chủ chọn cổng mà máy khách sẽ sử dụng để chuyển tiếp thư đi - 25 hoặc 587. Thông số kỹ thuật và nhiều máy chủ hỗ trợ cả hai cổng. Mặc dù một số máy chủ hỗ trợ cổng 465 cho SMTP an toàn nhưng tốt nhất nên sử dụng cổng tiêu chuẩn và các lệnh ESMTP nếu cần một phiên bảo mật giữa máy khách và máy chủ.

Một số máy chủ được cấu hình để từ chối tất cả các chuyển tiếp trên cổng 25, nhưng người dùng được xác thực trên cổng 587 được phép chuyển tiếp tin nhắn đến bất kỳ địa chỉ hợp lệ nào.

Một số ISP chặn cổng 25, chuyển hướng lưu lượng truy cập đến máy chủ SMTP của riêng họ, bất kể địa chỉ đích. Do đó, người dùng của họ không thể truy cập máy chủ bên ngoài mạng của nhà cung cấp trên cổng 25.

Một số máy chủ hỗ trợ quyền truy cập được xác thực trên một cổng bổ sung ngoài 25, cho phép người dùng kết nối với chúng ngay cả khi cổng 25 bị chặn.

Một ví dụ về phiên SMTP đơn giản

C: - máy khách, S: - máy chủ

S: (đang chờ kết nối) C: (Kết nối với cổng máy chủ 25) S:220 mail.company.tld ESMTP CommuniGate Pro 5.1.4i rất vui được gặp bạn! C:Xin chào Tên miền S:250 phải đủ điều kiện C:THƯ TỪ: S:250 [email được bảo vệ] người gửi đã chấp nhận C:RCPT GỬI: S:250 [email được bảo vệ]được thôi C:RCPT ĐẾN: S:550 [email được bảo vệ] tài khoản người dùng không xác định C:DỮ LIỆU S:354 Nhập thư, kết thúc bằng "." trên một dòng riêng C: từ: [email được bảo vệ]// tới chữ C:to: [email được bảo vệ]// chưa được thêm C:subject: chủ đề // vào danh mục thư rác C: //C:Hi! C:. S:250 769947 tin nhắn được chấp nhận để gửi C: BỎ S:221 mail.company.tld CommuniGate Pro SMTP đóng kết nối S: (đóng kết nối)

Kết quả của cuộc họp như vậy là lá thư sẽ được chuyển đến người nhận [email được bảo vệ], nhưng sẽ không được chuyển tới người nhận [email được bảo vệ], vì địa chỉ đó không tồn tại.

Tiện ích mở rộng bổ sung

Nhiều khách hàng yêu cầu tiện ích mở rộng SMTP được máy chủ hỗ trợ bằng cách sử dụng lệnh EHLO từ đặc tả SMTP nâng cao (RFC 1870). HELO chỉ được sử dụng nếu máy chủ không phản hồi EHLO. Các máy khách hiện đại có thể sử dụng khóa mở rộng ESMTP SIZE để yêu cầu kích thước thư tối đa sẽ được chấp nhận. Các máy khách và máy chủ cũ hơn có thể cố gắng truyền các tin nhắn có dung lượng quá lớn, những tin nhắn này sẽ bị từ chối sau khi tiêu tốn tài nguyên mạng, bao gồm cả thời gian kết nối. Người dùng có thể xác định trước kích thước tối đa được máy chủ ESMTP chấp nhận theo cách thủ công. Máy khách thay thế lệnh HELO bằng EHLO.

S: 220 smtp2.example.com Hậu tố ESMTP C: EHLO bob.example.org S: 250-smtp2.example.com Xin chào bob.example.org S: 250-SIZE 14680064 S: 250-ỐNG S: 250 TRỢ GIÚP

smtp2.example.com tuyên bố rằng nó sẽ chấp nhận một tin nhắn không lớn hơn 14.680.064 octet (byte 8 bit). Tùy thuộc vào việc sử dụng thực tế của máy chủ, nó có thể khoảnh khắc này không chấp nhận một tin nhắn có tầm cỡ này. Trong trường hợp đơn giản nhất, máy chủ ESMTP sẽ chỉ quảng cáo SIZE tối đa khi tương tác với người dùng qua EHLO.

Bảo mật SMTP và thư rác

Đặc tả SMTP ban đầu không bao gồm bất kỳ phương tiện nào để xác thực người gửi. Sau đó, phần mở rộng đã được giới thiệu trong RFC 2554. Tiện ích mở rộng SMTP (ESMTP) cung cấp cơ chế cho ứng dụng email khách chỉ định cơ chế bảo mật cho máy chủ, xác thực và hồ sơ bảo mật SASL (Lớp xác thực và bảo mật đơn giản) cho các lần truyền thư tiếp theo.

Các sản phẩm của Microsoft triển khai giao thức riêng - SPA (Xác thực mật khẩu bảo mật) bằng tiện ích mở rộng SMTP-AUTH.

Tuy nhiên, tính không thực tế của việc triển khai và quản lý rộng rãi SMTP-AUTH có nghĩa là vấn đề thư rác không thể được giải quyết bằng nó.

Việc sửa đổi rộng rãi SMTP, cũng như thay thế hoàn toàn, được coi là không thực tế do cơ sở cài đặt SMTP rất lớn. Internet Mail 2000 là một trong những ứng cử viên cho sự thay thế đó.

Thư rác hoạt động do nhiều yếu tố khác nhau, bao gồm việc triển khai MTA không chuẩn và các lỗ hổng bảo mật hệ điều hành (trầm trọng hơn do kết nối băng thông rộng liên tục) cho phép kẻ gửi thư rác điều khiển từ xa máy tính của người dùng cuối và gửi thư rác từ máy tính đó.

Có một số đề xuất về các giao thức phụ để giúp SMTP hoạt động. Nhóm nghiên cứu chống thư rác (ASRG), một bộ phận của Nhóm nghiên cứu công nghệ Internet, đang nghiên cứu xác thực thư và các đề xuất khác nhằm cung cấp xác thực đơn giản, linh hoạt, nhẹ và có thể mở rộng. Công việc gần đây của Lực lượng Đặc nhiệm Kỹ thuật Internet (IETF) bao gồm MARID (2004), dẫn đến hai thử nghiệm được IETF phê duyệt vào năm 2005 và Thư xác định DomainKeys vào năm 2006.

Tiện ích mở rộng ESMTP

RFC 1869 yêu cầu phiên phải được bắt đầu bằng lệnh EHLO thay vì lệnh HELO. Nếu máy chủ không hỗ trợ tiện ích mở rộng, nó sẽ phản hồi lỗi với EHLO; trong trường hợp này, máy khách phải gửi lệnh HELO và không sử dụng tiện ích mở rộng giao thức.

Nếu máy chủ hỗ trợ ESMTP thì ngoài lời chào, nó sẽ cung cấp danh sách các tiện ích mở rộng giao thức SMTP được hỗ trợ, ví dụ:

Ehlo office.company1.tld 250-mail.company2.tld rất vui được gặp bạn 250-DSN 250-SIZE 250-StartTLS 250-AUTH LOGIN PLAIN CRAM-MD5 DIGEST-MD5 GSSAPI MSN NTLM 250-ETRN 250-TURN 250-ATRN 250-KHÔNG GẶP 250-GIÚP 250-ỐC ỐNG 250 EHLO

Tiêu chuẩn RFC

  • RFC 1870 Tiện ích mở rộng dịch vụ SMTP để khai báo kích thước thư (thay thế RFC 1653)
  • Tiện ích mở rộng dịch vụ SMTP RFC 2034 để trả về mã lỗi nâng cao
  • Khuyến nghị chống thư rác RFC 2505 cho MTA SMTP (BCP 30)
  • Tiện ích mở rộng dịch vụ SMTP RFC 4954 để xác thực (thay thế RFC 2554)
  • Định dạng tin nhắn Internet RFC 2822 (thay thế RFC 822 hay còn gọi là STD 11)
  • RFC 2920 Phần mở rộng dịch vụ SMTP cho đường dẫn lệnh (STD 60)
  • Phần mở rộng dịch vụ SMTP RFC 3030 để truyền các tin nhắn MIME lớn và nhị phân
  • Tiện ích mở rộng dịch vụ SMTP RFC 3207 để bảo mật SMTP qua bảo mật lớp truyền tải (thay thế RFC 2487)
  • RFC 3461 Tiện ích mở rộng dịch vụ SMTP cho thông báo trạng thái gửi (thay thế RFC 1891)
  • RFC 3462 Loại nội dung nhiều phần/báo cáo để báo cáo thư quản trị hệ thống thư (thay thế RFC 1892)
  • Mã trạng thái nâng cao RFC 3463 cho SMTP (thay thế RFC 1893)
  • RFC 3464 Định dạng tin nhắn mở rộng cho thông báo trạng thái gửi (thay thế RFC 1894)
  • Hướng dẫn viết văn bản RFC 3552 về các cân nhắc bảo mật
  • Khuyến nghị RFC 3834 về phản hồi tự động cho thư điện tử
  • Gửi tin nhắn RFC 4409 cho thư (thay thế RFC 2476)
  • Giao thức truyền thư đơn giản RFC 5321 (thay thế RFC 821 hay còn gọi là STD 10, RFC 974, RFC 1869, RFC 2821)
  • Tiện ích mở rộng SMTP RFC 5336 cho địa chỉ email được quốc tế hóa
  • Bản dịch RFC 2505 - Hướng dẫn ngăn chặn thư rác cho MTA SMTP
  • Bản dịch RFC 2554 - Tiện ích mở rộng dịch vụ SMTP để xác thực
  • Bản dịch RFC 5321 - Giao thức truyền thư đơn giản (SMTP)

Văn học

  • Hughes L Giao thức, tiêu chuẩn và triển khai e-mail trên Internet. - Nhà xuất bản Artech House, 1998. - ISBN 0-89006-939-5
  • Săn C gửi thư Sách dạy nấu ăn. - O"Reilly Media, 2003. - ISBN 0-596-00471-0
  • Johnson K Giao thức email Internet: Hướng dẫn dành cho nhà phát triển - Addison-Wesley Professional, 2000. - ISBN 0-201-43288-9
  • Loshin P Các tiêu chuẩn email thiết yếu: RFC và giao thức được thực hiện thực tế. - John Wiley & Sons, 1999. - ISBN 0-471-34597-0
  • Rhoton J Hướng dẫn lập trình viên về Thư Internet: SMTP, POP, IMAP và LDAP. - Elsevier, 1999. -

SMTP được triển khai ở mạng hiện đại Tiêu chuẩn TCP/IP. Thông tin về việc sử dụng giao thức này xuất hiện lần đầu tiên vào năm 1982. Mặc dù thực tế là máy chủ SMTP cũng có thể được sử dụng để nhận tin nhắn, nhưng ngày nay hầu hết các ứng dụng email khách chỉ sử dụng nó để gửi, ưu tiên các công nghệ khác (ví dụ: POP hoặc IMAP) cho tiếp nhận thông tin. Giao thức này là một trong những giao thức phổ biến nhất và được sử dụng bởi số lượng lớn các chương trình thư và máy chủ.

Chức năng của SMTP là kiểm tra xem các cài đặt và tham số để gửi thư có được chỉ định chính xác hay không. Giao thức này xác minh cài đặt máy tính của người dùng đang cố gắng gửi tin nhắn và sau đó gửi chúng nếu tất cả cài đặt đã được thực hiện chính xác. Sau đó, công việc SMTP không kết thúc và máy chủ chờ thông báo về việc gửi dữ liệu thành công. Nếu một tin nhắn không thể gửi được vì lý do nào đó, một tin nhắn tương ứng sẽ được gửi đến người gửi.

Thiết lập SMTP

Thiết lập SMTP bao gồm việc cài đặt phần mềm cần thiết và xác định địa chỉ máy chủ được sử dụng để gửi. Để gửi từ phía người dùng, bạn cần cài đặt một chương trình máy khách có thể gửi thư và liên lạc với máy chủ SMTP bằng giao thức TCP/IP. Sau đó, chương trình được khởi chạy và định cấu hình để hoạt động với dịch vụ gửi và nhận thư bằng cách chỉ định các cài đặt cần thiết. Sau đó, người dùng sẽ cố gắng gửi tin nhắn. Nếu cài đặt chính xác, thư sẽ được gửi đến người nhận.

Số đông dịch vụ hiện đại email đã có máy chủ được cấu hình để gửi tin nhắn. Nếu bạn không sử dụng phần mềm của bên thứ ba để gửi thư, bạn có thể gửi thư mà không cần thực hiện cài đặt bổ sung trên trang web dịch vụ nơi bạn có tài khoản.

Quản trị viên máy chủ SMTP hiện đại yêu cầu người dùng xác thực trước khi họ có thể gửi tin nhắn của mình. Trước tiên, người dùng phải cho biết thông tin đăng nhập và mật khẩu của mình trên máy chủ, sau đó mới tiến hành gửi. Sự bảo vệ nàyđược sử dụng để chặn khả năng gửi thư rác bằng các giao thức SMTP đơn giản. Trước đây, để nhận dạng ở Giao thức SMTPđịa chỉ IP duy nhất của người gửi đã được sử dụng.

Các độc giả blog thân mến, đã lâu rồi tôi không viết bài mới nhưng việc này có những lý do khách quan. Tôi rất vui vì bạn tiếp tục bình luận về các bài viết trước của tôi và vẫn là độc giả của blog của chúng tôi. Mình sẽ cố gắng liên lạc với các bạn trong thời gian sắp tới và mang đến cho các bạn nhiều bài viết thú vị và hữu ích. Bài viết hôm nay sẽ dành riêng cho các máy chủ SMTP, thứ không thể thiếu trong bản tin email tin nhắn.

SMTP là một giao thức chịu trách nhiệm nhận tin nhắn có nguồn gốc từ người dùng và truyền chúng đến một người nhận cụ thể. Tin nhắn luôn đi qua nhiều máy chủ để đến đích và SMTP đơn giản hóa quy trình này.

Giả sử bạn đang gửi tin nhắn đến một người nhận cụ thể. ID email của bạn, ví dụ: “người dùng” và bạn có tài khoản được đăng ký tại “mail.ru” – “ [email được bảo vệ]" Địa chỉ của người nhận - " [email được bảo vệ]».

Khi bạn tạo tài khoản trên dịch vụ thư mail.ru, ứng dụng thư khách của bạn (ví dụ: Microsoft Outlook) cài đặt tài khoản được lưu tự động. Chuyện gì xảy ra tiếp theo:

  1. Ứng dụng thư khách liên lạc với máy chủ thư Mail.ru của bạn qua cổng 25.
  2. Ứng dụng thư khách giao tiếp với máy chủ SMTP của máy chủ thư, cung cấp cho nó địa chỉ người gửi và người nhận cũng như nội dung của thư.
  3. Máy chủ SMTP chia địa chỉ người nhận thành hai phần: tên/thông tin đăng nhập (người nhận) của người nhận và tên miền (gmail.com).
  4. Máy chủ SMTP “nói chuyện” với máy chủ DNS (Tên miền Server) và nhận thông tin về địa chỉ IP của máy chủ SMTP gmail.com của người nhận. DNS phản hồi bằng cách gửi một hoặc nhiều địa chỉ IP Máy chủ SMTP, mà gmail.com sử dụng.
  5. Máy chủ SMTP trên mail.ru liên hệ với máy chủ SMTP gmail.com qua cổng 25 và gửi tin nhắn tới nó. Máy chủ SMTP gmail.com xác định rằng tên miền cho "người nhận" tồn tại trên gmail.com và chuyển tin nhắn POP3 đến máy chủ gmail.com, máy chủ này sẽ đặt tin nhắn vào hộp thư của người nhận.
  6. Nếu vì lý do nào đó mà máy chủ SMTP mail.ru không thể liên lạc với máy chủ SMTP gmail.com thì thư sẽ được đưa vào hàng đợi gửi. Máy chủ SMTP thường sử dụng người gửi tin nhắn để gửi lại các tin nhắn đang trong hàng đợi. Người gửi tin nhắn sẽ cố gắng gửi tin nhắn trong hàng đợi theo định kỳ. Các nỗ lực sẽ được lặp lại trong những khoảng thời gian nhất định (ví dụ: 15 phút). Sau bốn giờ chờ đợi và cố gắng gửi, chương trình thường gửi cho người gửi một lá thư thông báo về lỗi gửi. Sau năm ngày, hầu hết các chương trình gửi sẽ ngừng thử và trả lại email cho người gửi dưới dạng chưa gửi.

Trong trường hợp máy chủ SMTP nguồn (mail.ru) không thể giao tiếp trực tiếp với máy chủ SMTP gmail.com, nó sẽ truyền thông báo qua một hoặc nhiều máy chủ SMTP chuyển tiếp trung gian. Đổi lại, máy chủ chuyển tiếp nhận được tin nhắn gốc và sau đó gửi nó đến máy chủ đích hoặc chuyển hướng nó đến một máy chủ chuyển tiếp khác. Quá trình lặp lại cho đến khi tin nhắn được gửi hoặc cho đến khi hết thời gian và số lần thử lại được chỉ định để chờ phản hồi từ máy chủ.

Máy chủ SMTP hiểu các lệnh văn bản đơn giản. Những cái tiêu chuẩn là:

HELO – bắt đầu phiên

EHLO - bắt đầu phiên và yêu cầu chế độ mở rộng - ESMTP (Nếu máy chủ không hỗ trợ tiện ích mở rộng, nó sẽ phản hồi lỗi EHLO, trong trường hợp này máy khách phải gửi lệnh HELO và không sử dụng tiện ích mở rộng giao thức.)

THƯ TỪ: — địa chỉ người gửi

RCPT TO: - địa chỉ người nhận

DỮ LIỆU – truyền dữ liệu (chữ cái). Các trường “Tới”, “Từ” và “Chủ đề” phải chiếm ba dòng đầu tiên

RSET - thiết lập lại phiên

QUIT – ngắt kết nối

HELP – trợ giúp (thông tin bổ sung)

VRFY – kiểm tra sự tồn tại của một địa chỉ

EXPN – địa chỉ mở rộng

(SMTP) là một tiêu chuẩn cho e-mail. Được ghi lại lần đầu trong RFC 821 (1982), nó được cập nhật lần cuối vào năm 2008 với sự bổ sung mở rộng của SMTP cho RFC 5321 (một giao thức được sử dụng rộng rãi ngày nay).

Mặc dù máy chủ thư và các tác nhân thư khác sử dụng SMTP để gửi và nhận thư từ e-mail, phần mềm cấp người dùng, theo quy định, chỉ sử dụng cổng SMTP để gửi dữ liệu đến máy chủ để chuyển tiếp. Các ứng dụng khách thường sử dụng IMAP hoặc POP3 để nhận tin nhắn. Các giao thức này thuận tiện nhất và được yêu cầu cho các mục đích này: chúng có chức năng nâng cao và nhiều khả năng.

Đặc trưng

Giao tiếp SMTP giữa các máy chủ thư sử dụng cổng TCP 25. Ứng dụng thư khách thường gửi email đi đến máy chủ thư trên cổng 587. Mặc dù các nhà cung cấp thư cũ vẫn cho phép sử dụng cổng 465 không chuẩn cho mục đích này.

Các kết nối SMTP được bảo vệ bởi TLS, được gọi là SMTPS, có thể được thực hiện bằng công nghệ STARTTLS.

Các hệ thống email và độc quyền sử dụng các giao thức không chuẩn của riêng họ để truy cập hộp thư trên máy chủ email của họ - tất cả các công ty đều sử dụng cổng máy chủ SMTP khi việc gửi hoặc nhận email diễn ra bên ngoài hệ thống của họ.

Đích SMTP

Hầu hết mọi thứ trên Internet đều có thể thực hiện được nhờ các giao thức—các quy tắc phần mềm mạng đặc biệt cho phép máy tính giao tiếp với tất cả các mạng để người dùng có thể mua sắm, đọc tin tức và gửi email. Các giao thức rất quan trọng đối với hoạt động kết nối mạng hàng ngày—chúng được tích hợp vào phần mềm mạng và được sử dụng theo mặc định.

Giao thức cổng SMTP cung cấp một bộ mã tạo điều kiện thuận lợi cho việc trao đổi email giữa các máy chủ (một máy tính nối mạng xử lý email đến và đi). Đây là một loại tốc ký cho phép máy chủ chia nhỏ các phần khác nhau của tin nhắn thành các danh mục mà máy chủ khác có thể hiểu được. Khi người dùng gửi tin nhắn, nó sẽ chuyển thành các dòng văn bản được phân tách bằng các từ mã (hoặc số) xác định mục đích của từng phần.

Thuật ngữ kỹ thuật

SMTP là giao thức TCP/IP được sử dụng để làm việc với e-mail. Tuy nhiên, do bị giới hạn ở khả năng gửi tin nhắn đến hàng đợi ở đầu nhận nên nó thường được sử dụng với POP3 hoặc IMAP, cho phép dữ liệu được lưu trữ trên máy chủ và được tải xuống khi cần thiết. Nói cách khác, họ thường sử dụng ứng dụng chọn SMTP để gửi e-mail và POP3 hoặc IMAP để nhận thư. Trên các hệ thống dựa trên Unix, sendmail là máy chủ SMTP được sử dụng rộng rãi nhất cho email. Gói Sendmail thương mại bao gồm máy chủ POP3. Microsoft Exchange bao gồm một máy chủ SMTP và cũng có thể được cấu hình để hỗ trợ POP3.

SMTP thường được sử dụng để hoạt động qua cổng Internet 25. Một giải pháp thay thế cho SMTP được sử dụng rộng rãi ở Châu Âu là X.400. Nhiều máy chủ thư hiện hỗ trợ Giao thức truyền thư đơn giản mở rộng (ESMTP), cho phép bạn chuyển tập tin đa phương tiện dưới dạng email.

Câu chuyện

Vào những năm 1960 họ đã sử dụng hình dạng khác nhau trao đổi thông điệp điện tử. Người dùng giao tiếp bằng cách sử dụng các hệ thống được xây dựng cho các máy tính lớn cụ thể. Khi ngày càng có nhiều máy tính được kết nối với nhau, cần phải phát triển các tiêu chuẩn để cho phép người dùng của các hệ thống khác nhau gửi email cho nhau. SMTP phát triển từ những tiêu chuẩn này được phát triển vào những năm 1970.

Các triển khai tiếp theo bao gồm Giao thức Thư FTP, bắt đầu từ năm 1973. Công việc phát triển tiếp tục vào những năm 1970 cho đến khi ARPANET trở thành Internet hiện đại vào năm 1980. Sau đó Jon Postel đề xuất một giao thức truyền dữ liệu thư.

SMTP bắt đầu được sử dụng rộng rãi vào đầu những năm 1980. Trong khi giao thức này là một tiện ích bổ sung Unix cho chương trình thư Chương trình Sao chép Unix. SMTP hoạt động tốt nhất khi máy gửi và máy nhận được kết nối với Internet, sử dụng cơ chế lưu trữ và gửi và là ví dụ về công nghệ đẩy.

Mô hình xử lý thư

E-mail được gửi bởi một ứng dụng email (Mail User Agent, MUA) đến một máy chủ thư (Mail Submission Agent, MSA) bằng cách sử dụng SMTP trên cổng TCP 587. Hầu hết các nhà cung cấp hộp thư vẫn cho phép gửi đến cổng truyền thống 25. MSA gửi thư đến cổng TCP của bạn đại lý chuyển thư (đại lý chuyển thư, MTA). Thông thường các tác nhân này là các phiên bản của phần mềm chung được kích hoạt bằng thông số khác nhau trên một máy tính. Việc xử lý cục bộ có thể được thực hiện trên một máy hoặc được chia sẻ trên nhiều máy. Quy trình đại lý bưu điện một máy có thể trao đổi tệp, nhưng nếu quá trình xử lý được thực hiện trên nhiều máy, chúng sẽ chuyển tin nhắn giữa nhau bằng cổng SMTP, trong đó mỗi máy được định cấu hình để sử dụng máy tiếp theo làm máy chủ thông minh.

Tổng quan về giao thức

SMTP là một giao thức hướng kết nối, dựa trên văn bản, trong đó người gửi thư giao tiếp với người nhận thư bằng cách đưa ra các dòng lệnh và cung cấp dữ liệu cần thiết qua kênh luồng dữ liệu có trật tự, đáng tin cậy. Phiên SMTP bao gồm các lệnh do máy khách SMTP (tác nhân khởi tạo, người gửi hoặc bộ phát) đưa ra và các phản hồi tương ứng từ máy chủ SMTP (tác nhân nghe hoặc người nhận). Một phiên có thể bao gồm không hoặc nhiều giao dịch SMTP, bao gồm ba chuỗi lệnh/phản hồi:


Ngoài phản hồi trung gian cho DATA, phản hồi từ mỗi máy chủ có thể là tích cực hoặc tiêu cực (mã 2xx). Phản hồi tiêu cực có thể là vĩnh viễn (mã 5xx) hoặc tạm thời (mã 4xx). Từ chối là lỗi vĩnh viễn và máy khách phải gửi thông báo từ chối đến máy chủ nơi nó nhận được. Cú ngã là một phản ứng tích cực, sau đó là sự từ chối tin nhắn.

Cổng Mail SMTP và ý nghĩa của chúng

SMTP chỉ là một giao thức phân phối. Trong sử dụng bình thường, thư được gửi đến máy chủ thư mục tiêu, chẳng hạn như cổng thư máy chủ SMTP. Dữ liệu được định tuyến dựa trên máy chủ đích thay vì người dùng cá nhân mà nó được gửi tới. Các giao thức khác (POP hoặc IMAP) được thiết kế riêng để sử dụng bởi người dùng cá nhân, nhận tin nhắn và quản lý hộp thư. SMTP, POP và IMAP không phải là các giao thức được chấp nhận để chuyển tiếp thư qua các máy tính có kết nối không liên tục. Chúng được thiết kế để hoạt động sau lần gửi cuối cùng, khi thông tin quan trọng đối với hoạt động bình thường của chuyển tiếp thư đã bị xóa.

Bắt đầu hàng đợi tin nhắn trống

Bắt đầu hàng đợi tin nhắn từ xa là một tính năng SMTP cho phép máy chủ từ xa bắt đầu xử lý thư trên máy chủ để nó có thể nhận các tin nhắn dành cho nó bằng cách gửi lệnh TURN. Tuy nhiên, tính năng này tiềm ẩn rủi ro bảo mật dữ liệu và đã được mở rộng trong RFC 1985 bằng lệnh ETRN. Lệnh này hoạt động an toàn hơn bằng cách sử dụng phương thức xác thực dựa trên thông tin Hệ thống tên miền.

Địa chỉ email quốc tế

Người dùng có chữ viết không phải là tiếng Latinh hoặc sử dụng dấu phụ không có trong bộ ký tự ASCII, gặp khó khăn với yêu cầu về địa chỉ email bằng bảng chữ cái Latinh (cổng SMTP mail.ru). RFC 6531 được tạo ra để giải quyết vấn đề này bằng cách cung cấp khả năng quốc tế hóa cho SMTP, phần mở rộng cho SMTPUTF8 và hỗ trợ các ký tự nhiều byte và không phải ASCII trong địa chỉ email. Ví dụ: dấu phụ và các ký hiệu ngôn ngữ khác (tiếng Hy Lạp và tiếng Trung Quốc). Cũng có liên quan đến cổng Yandex SMTP.

Hỗ trợ hiện tại cho tài liệu này còn hạn chế nhưng có sự quan tâm lớn đến triển khai rộng rãi RFC 6531 và RFC tương ứng ở các quốc gia như Trung Quốc có lượng người dùng lớn trong đó tiếng Latin (ASCII) là chữ viết nước ngoài.

Thư đi từ máy chủ SMTP

Ứng dụng email phải biết địa chỉ IP của máy chủ SMTP ban đầu của nó. Điều này phải được chỉ định như một phần của cấu hình của nó (thường là Tên DNS). Máy chủ này sẽ cung cấp các tin nhắn gửi đi thay mặt cho người dùng.

Hạn chế truy cập vào máy chủ thư đi

Quản trị viên máy chủ cần áp đặt một số biện pháp kiểm soát nhất định đối với những khách hàng có thể sử dụng máy chủ. Điều này giúp chống lạm dụng và thư rác. Các giải pháp tương tự đã được sử dụng rộng rãi:

Trước đây, nhiều hệ thống đã áp đặt các hạn chế đối với việc sử dụng vị trí của máy khách, chỉ cho phép những máy khách có địa chỉ IP là một trong những quản trị viên máy chủ sử dụng. Việc sử dụng từ bất kỳ địa chỉ IP khách hàng nào khác đều bị cấm.

Các máy chủ SMTP hiện đại thường cung cấp một hệ thống thay thế yêu cầu khách hàng xác thực bằng thông tin xác thực trước khi cho phép truy cập.

SMTP - cổng nào được sử dụng?

Giao tiếp giữa các máy chủ thư thường luôn sử dụng giá trị cổng TCP mặc định là 25, được gán cho SMTP. Tuy nhiên, các ứng dụng email thường sử dụng cổng cụ thể cổng ssl smtp. Hầu hết các nhà cung cấp dịch vụ Internet hiện đều chặn tất cả lưu lượng truy cập cổng đi từ khách hàng của họ như một biện pháp chống thư rác. Vì lý do tương tự, các doanh nghiệp thường định cấu hình tường lửa của mình để cho phép các cổng gửi đi từ các máy chủ thư được chỉ định.

Ví dụ về vận chuyển SMTP

Một ví dụ điển hình về việc gửi tin nhắn qua SMTP tới hai hộp thư(alice và theboss) nằm trong cùng một miền thư (example.com hoặc localhost.com) được sao chép trong phiên trao đổi tiếp theo. Sau khi người gửi tin nhắn (máy khách SMTP) thiết lập kênh liên lạc đáng tin cậy đến người nhận tin nhắn (máy chủ SMTP), một phiên được mở bằng máy chủ thường chứa tên miền đủ điều kiện (FQDN), trong trường hợp này là smtp, ví dụ hoặc com. Máy khách khởi tạo hộp thoại của mình bằng cách phản hồi bằng lệnh HELO tự xác định chính nó trong tham số lệnh với đầy đủ thông số của nó. tên miền(hoặc một địa chỉ bằng chữ nếu không có sẵn).

Tiện ích mở rộng bổ sung

Khách hàng tìm hiểu những tùy chọn mà máy chủ hỗ trợ bằng cách sử dụng lời chào EHLO thay vì HELO ban đầu. Máy khách chỉ quay lại HELO nếu máy chủ không hỗ trợ tiện ích mở rộng SMTP.

Khách hàng hiện đại có thể sử dụng từ khóa SSRE tiện ích mở rộng ESMTP dùng để truy vấn máy chủ về kích thước tin nhắn tối đa sẽ được chấp nhận. Máy khách và máy chủ kế thừa có thể cố gắng truyền các tin nhắn có kích thước quá lớn nhưng sẽ bị từ chối sau khi sử dụng hết tài nguyên mạng, bao gồm cả thời gian kết nối với các liên kết mạng.

Phương pháp chống thư rác và xác thực email

Thiết kế ban đầu của SMTP không có cách nào để xác định người gửi hoặc kiểm tra xem máy chủ có được phép gửi thay mặt họ hay không. Kết quả là có thể xảy ra việc giả mạo email, cách này thường được sử dụng trong thư rác và lừa đảo.

sản xuất Ưu đãi đặc biệtđể thay đổi SMTP hoặc thay thế chúng hoàn toàn. Một ví dụ về điều này là Internet Mail 2000, nhưng cả nó lẫn bất kỳ dịch vụ nào khác đều không đạt được nhiều thành công trước hiệu ứng mạng của cơ sở cài đặt khổng lồ của SMTP cổ điển. Thay vào đó, các máy chủ thư bây giờ sử dụng toàn bộ dòng các phương pháp bao gồm DomainKeys, DomainKeys Identified Mail, Policy Framework và DMARC, DNSBL và greylisting để từ chối hoặc cách ly các email đáng ngờ.