Contoh arahan smtp. Prinsip operasi protokol. Hadkan akses mengikut lokasi

SMTP(Mel Mudah Protokol Pemindahan- protokol pemindahan mel mudah) ialah protokol rangkaian, bertujuan untuk penghantaran E-mel pada rangkaian TCP/IP. ESMTP(English Extended SMTP) - sambungan berskala bagi protokol SMTP. Pada masa ini, "protokol SMTP" biasanya merujuk kepada ESMTP dan sambungannya. SMTP menggunakan TCP Ports 25.

Protokol SMTP menggunakan arahan teks ASCII mudah dan mengembalikan respons berkod tiga aksara dengan mesej teks. Protokol SMTP diterangkan dalam Internet Request For Comment (RFC) nombor 821, yang dibangunkan oleh Internet Engineering Task Force (IETF) dan diterbitkan pada 21 Ogos 1982. Sejak itu, ia telah mengalami beberapa pengubahsuaian, tetapi secara umum arahan asas protokol tidak berubah.

Perintah Pelanggan SMTP Asas

Pasukan HELO

Mengikut definisi, arahan protokol SMTP adalah empat aksara panjang. Ucapan yang dihantar oleh pelanggan kepada pelayan adalah arahan HELO. Format arahan adalah seperti berikut:

nama domain HELO

Tujuan arahan HELO adalah untuk membentangkan klien kepada pelayan SMTP. Malangnya, kaedah capaian ini dibangunkan pada peringkat awal pembangunan Internet, apabila tidak banyak percubaan penembusan tanpa kebenaran ke dalam Internet. sistem komputer. Seperti yang anda lihat, pelanggan boleh memanggil dirinya apa-apa nama pada baris arahan. Ini telah membawa kepada fakta bahawa pada masa ini kebanyakan pelayan SMTP menggunakan arahan ini secara formal semata-mata. Jika mereka benar-benar cuba mengenal pasti pelanggan, maka mekanisme diaktifkan penukaran songsang DNS untuk tujuan menentukan nama hos sebenar klien mengikut sistem nama domain berdasarkan alamat IPnya. Biasanya, atas sebab keselamatan, pelayan SMTP akan menolak sambungan ke hos yang alamat IPnya tidak diselesaikan kepada nama hos yang sepadan. Menghantar perintah ini, pelanggan memberitahu pelayan bahawa ia ingin mewujudkan sambungan dengannya. Dengan bertindak balas kepada arahan ini, pelayan, seterusnya, memberitahu bahawa sambungan baru telah diwujudkan dengan klien dan bersedia untuk menerima arahan berikutnya daripadanya.

Apabila bekerja dengan protokol SMTP, anda mesti membezakan antara klien SMTP. Pengguna pelanggan dan hos pelanggan bukanlah perkara yang sama. Apabila membuat mesej e-mel, pengguna sistem e-mel juga merupakan pelanggan hos tempatannya. Sebaik sahaja mesej mel dihantar, ia bukan lagi pelanggan proses SMTP. Kini komputer hos tempatannya mengendalikan proses penghantaran mesej dan bertindak sebagai pelanggan SMTP itu sendiri. Apabila localhost menyambung ke hos jauh untuk menghantar mesej menggunakan protokol SMTP, ia bertindak sebagai pelanggan proses SMTP. Perintah HELO mengiklankan nama hos tempatan sebagai pelanggan, bukan pengguna sebenar yang menghantar mesej itu. Selalunya konsep ini keliru, yang menjadikannya sukar untuk menyelesaikan masalah yang timbul dalam sistem e-mel.

arahan AUTH

Memanjangkan perbualan SMTP dengan arahan AUTH diterangkan dalam RFC 4954.

    PLAIN (Menggunakan pengekodan Base64.)

    LOGIN (Menggunakan pengekodan Base64.)

    GSSAPI (Antara Muka Program Aplikasi Perkhidmatan Keselamatan Generik)

    DIGEST-MD5 (Pengesahan akses Digest)

Satu-satunya perbezaan antara PLAIN dan LOGIN ialah dalam pilihan pertama log masuk + kata laluan dihantar dalam satu baris, dan dalam pilihan kedua - pertama log masuk, kemudian kata laluan. Tetapi kesemuanya semestinya dikodkan dalam Base64.

arahan MAIL

Arahan MAIL digunakan untuk mewujudkan sesi e-mel dengan pelayan selepas arahan HELO telah dihantar. Ia menunjukkan dari siapa mesej itu datang. Format arahan MAIL adalah seperti berikut:

Laluan terbalik MAIL

Argumen laluan terbalik bukan sahaja menentukan penghantar mesej, tetapi juga menentukan laluan yang melaluinya mesej boleh dikembalikan jika ia tidak dapat dihantar. Jika pengirim adalah pengguna pada komputer klien yang memulakan sesi SMTP, maka format arahan adalah seperti berikut:

MEL DARIPADA: [e-mel dilindungi]

Ambil perhatian bahawa medan FROM menentukan alamat e-mel pengirim mesej, termasuk nama penuh komputer hos pelanggan. Maklumat ini mesti ada dalam medan FROM mesej mel (tetapi lebih lanjut mengenainya kemudian). Jika mesej mel melalui beberapa nod dalam perjalanan dari pengirim kepada penerima, maka setiap daripada mereka akan menambah maklumat tentang dirinya dalam medan . Dengan cara ini laluan mesej melalui pelayan mel didokumenkan. Selalunya, e-mel daripada pelanggan rangkaian persendirian mesti melalui beberapa pelayan e-mel sebelum sampai ke Internet. Maklumat yang terkandung dalam medan laluan terbalik selalunya berguna dalam menyelesaikan masalah dalam sistem e-mel atau dalam mengenal pasti pelayan mel yang cuba menyembunyikan identiti mereka dengan menghantar mesej melalui pelayan SMTP yang tidak diketahui.

Pasukan RCPT

Perintah RCPT menentukan penerima mesej. Berbilang pengguna boleh menerima mesej yang sama. Biasanya, setiap penerima ditentukan pada baris yang berasingan dengan arahan RCPT. Format arahan RCPT adalah seperti berikut:

laluan hadapan RCPT

Argumen laluan hadapan menentukan tempat e-mel dimajukan. Biasanya ini termasuk alamat e-mel penuh, tetapi mungkin juga termasuk nama pengguna pelayan SMTP tempatan. Pertimbangkan sebagai contoh perintah berikut:

RCPT KE: haley

Perintah ini menentukan bahawa mesej harus dihantar kepada haley pengguna pada pelayan SMTP yang memproses mesej. Dengan cara yang sama, anda boleh menghantar mesej kepada pengguna komputer lain yang bukan pengguna pelayan SMTP yang mesej dihantar. Pertimbangkan, sebagai contoh, arahan berikut:

RCPT KEPADA: [e-mel dilindungi]

Perintah yang dihantar ke pelayan SMTP bernama shardrach.smallorg.org memaksa pelayan memutuskan sama ada untuk menghantar mesej. Memandangkan pengguna tidak berdaftar dengan pelayan shardrach tempatan, pelayan perlu menentukan perkara yang perlu dilakukan seterusnya dengan mesej tersebut. Dalam kes ini, terdapat tiga tindakan yang mungkin untuk hos shardrach. Mari kita lihat mereka dengan lebih dekat.

    Hos shardrach boleh memajukan mesej kepada penerima dan mengembalikan respons afirmatif kepada pengirim (OK). Dalam kes ini dia menambah namanya pada medan Arahan MAIL untuk memasukkannya ke dalam laluan mesej jika perlu untuk memberitahu pengirim.

    Shardrach hos tidak dapat memajukan mesej dan memberitahu pengirim, sambil mengesahkan bahawa alamat hos meshach.smallorg.org adalah betul. Jadi pengirim boleh cuba menghantar semula mesej terus ke meshach.smallorg.org.

    Shardrach hos tidak boleh memajukan mesej dan menghantar pemberitahuan bahawa operasi ini tidak boleh dilakukan dengan pelayan ini. Kemudian sebab-sebab apa yang berlaku harus dianalisis oleh pentadbir sistem.

Pada zaman awal Internet, mesej e-mel dihantar secara membuta tuli antara komputer di seluruh dunia menggunakan algoritma penghantaran asal. mesej mel.

arahan DATA

Perintah ini adalah yang utama dalam protokol SMTP. Selepas memproses arahan MAIL dan RCPT, arahan DATA digunakan untuk menghantar bahagian maklumat mesej. Format arahan DATA adalah seperti berikut:

Semua yang mengikuti arahan ini ditafsirkan sebagai mesej yang akan dihantar. Pelayan SMTP biasanya menambahkan pengepala mesej dengan cap masa dan maklumat laluan kembali. Program klien menunjukkan penghujung mesej dengan melepasi garisan diikuti dengan satu titik. Format baris ini adalah seperti berikut:

.

Setelah menerima urutan ini, pelayan SMTP "memahami" bahawa penghantaran mesej telah selesai dan harus mengembalikan kod respons yang akan memberitahu klien bahawa mesejnya telah diterima.

HANTAR arahan

Perintah SEND digunakan untuk menghantar mesej mel terus ke terminal pengguna berdaftar sistem. Perintah ini dilaksanakan hanya apabila pengguna log masuk dan biasanya mesej pop timbul, serupa dengan arahan tulis dalam UNIX. Perintah ini mempunyai kelemahan yang serius: dengan bantuannya, pengguna luaran boleh dengan mudah menentukan siapa yang masuk masa ini berada dalam sistem. "Peluang" ini telah lama dieksploitasi secara aktif oleh penggodam untuk mendapatkan ID pengguna Internet daripada mangsa yang tidak mengesyaki yang log masuk ke dalam sistem. Disebabkan kebimbangan keselamatan, kebanyakan pakej perisian SMTP hari ini tidak lagi mengandungi arahan ini.

arahan RSET

Perintah RSET adalah singkatan untuk set semula. Jika pelanggan menjadi keliru tentang respons yang diterima daripada pelayan, atau memutuskan bahawa sambungan telah terputus, ia boleh mengeluarkan arahan RSET dan mengembalikan sesi ke titik permulaannya - melaksanakan arahan HELO. Dalam kes ini, semua arahan yang dihantar sebelum ini - MAIL, RCPT dan DATA akan dibatalkan. Selalunya arahan ini digunakan sebagai " pilihan terakhir" apabila klien sama ada kehilangan urutan arahan atau menerima respons yang tidak dijangka daripada pelayan.

VRFY

Perintah VRFY adalah singkatan untuk pengesahan. Ia boleh digunakan untuk menentukan sama ada pelayan boleh menghantar mel kepada penerima tertentu sebelum melaksanakan arahan RCPT. Format arahan ini adalah seperti berikut:

nama pengguna VRFY

Setelah menerima arahan ini, pelayan SMTP menentukan sama ada ia mempunyai pengguna pada pelayan tempatan dengan nama diberi. Jika pengguna sedemikian ditemui, pelayan akan mengembalikan respons dengan penuh alamat pos pengguna. Jika tiada pengguna sedemikian pada pelayan tempatan, maka pelayan SMTP boleh sama ada mengembalikan respons negatif kepada klien atau menunjukkan bahawa ia akan memajukan semua mesej kepada pengguna jauh. Ini bergantung pada sama ada pelayan SMTP akan memajukan mesej kepada klien jauh.

Perintah VRFY boleh menjadi alat yang berkesan apabila menyelesaikan masalah e-mel. Selalunya, apabila menghantar mesej e-mel, pengguna salah mengeja destinasi atau nama hos dan kemudian tertanya-tanya mengapa mesej mereka tidak diterima. Sudah tentu, perkara pertama yang mereka akan lakukan ialah mengadu kepada pentadbir sistem pos kepada prestasi sistem e-mel yang menjijikkan. Sebagai pentadbir sistem e-mel, anda boleh menyemak kefungsian alamat e-mel dalam dua cara. Pertama, menggunakan arahan hos DNS, yang membolehkan anda menentukan ketepatan nama domain dan kehadiran pelayan mel yang menyediakan domain. Dan kedua, anda boleh pergi dengan menggunakan telnet ke port 25 pelayan mel dan kemudian mengeluarkan arahan VRFY, yang akan menentukan sama ada nama pengguna adalah betul. Penyenaraian 5.3 menunjukkan contoh penggunaan arahan VRFY untuk mengesahkan nama pengguna.

1 [riley@ shadrach riley] $ telnet localhost 25 2 Mencuba 127.0.0.1... 3 Disambungkan ke localhost. 4 Watak melarikan diri ialah "^]" . 5 220 shadrach.smallorg.org ESMTP Sendmail 8.9.3/ 8.9.3; Kha, 26 Ogos 1999 19:20:16 -050 6 HELO localhost 7 250 shadrach.smallorg.org Hello localhost [127.0.0.1], gembira bertemu dengan anda 8 VRFY kaya 9 250< rich@ shadrach,smallorg.org>10 VRFY prez@ mechach.smallorg.org 11 252< prez@ mechach.smallorg.org>12 VRFY jessica 13 550 jessica... Pengguna tidak diketahui 14 QUIT 15 221 shadrach.smallorg.org menutup sambungan 16 Sambungan ditutup oleh -tuan rumah asing. 17 [riley@shadrach riley]$

Baris 8-13 menunjukkan output arahan VRFY. Baris 8 cuba melakukan VRFY pada pengguna tempatan kaya raya. Respons pelayan SMTP pada baris 9 mengesahkan bahawa pengguna dengan nama itu wujud dalam sistem dan alamat e-mel penuh pelanggan dikembalikan. Baris 10 menunjukkan pilihan lain untuk menentukan arahan VRFY. Di sini pelanggan cuba mengeluarkan arahan VRFY kepada pengguna pada komputer jauh. Respons yang diterima pada baris 11 daripada sistem shadrach adalah berbeza daripada keputusan yang diterima pada baris 9. Bahagian Respons Pelayan membincangkan maksud kod yang dikembalikan oleh pelayan dengan lebih terperinci. Dalam kes kami, ambil perhatian bahawa sistem shadrach memberitahu pelanggan bahawa mel akan dimajukan kepada prez pengguna pada pelayan jauh meshach.smallorg.org. Baris 12 menunjukkan percubaan untuk menyemak nama yang tidak wujud dalam sistem meshach. Maklum balas pelayan SMTP pada baris 13 adalah jelas.

    Semak kewujudan pengguna menggunakan bash dan curl. $echo -e "VRFY [e-mel dilindungi]\nBERHENTI"| curl telnet:// mail.example.com:25 220 mail.1-talk.com ESMTP Postfix 252 2.0.0 nama pengguna@ example.com 221 2.0.0 Selamat tinggal

Pasukan NOOP

Perintah NOOP adalah singkatan untuk tiada operasi. Perintah ini tidak mempunyai kesan pada pelayan SMTP kecuali pelayan mengembalikan kod tindak balas positif kepadanya. Ia digunakan semasa menguji sambungan tanpa memajukan mesej.

Perintah BERHENTI

Perintah QUIT melakukan apa yang dikatakannya, i.e. memberitahu pelayan SMTP bahawa komputer klien telah selesai sesi semasa dan mahu menutup sambungan. Pelayan SMTP mesti bertindak balas kepada arahan ini dan kemudian memulakan dan menutup sambungan TCP. Jika pelayan menerima arahan QUIT semasa menghantar mel, maka semua data yang dihantar semasa sesi mesti dimusnahkan dan tidak akan sampai kepada penerima.

Format mesej (E-mel)

Medan pengepala standard mengikut RFC 822

RFC 822 memerlukan mesej dibahagikan kepada dua bahagian. Bahagian pertama dipanggil tajuk. Semua data yang mengenal pasti mesej dimasukkan ke dalamnya. Bahagian kedua dipanggil badan mesej. Pengepala terdiri daripada medan data yang digunakan sebagai maklumat tambahan yang diperlukan dalam mesej. Medan pengepala dan isi mesej mesti diasingkan baris kosong. Tiada susunan khusus untuk medan pengepala, i.e. Medan pengepala boleh diletakkan dalam sebarang susunan. Selain itu, medan pengepala boleh diulang dalam mesej yang sama. Angka tersebut menunjukkan pandangan umum bagi mesej e-mel yang mematuhi keperluan RFC 822.

Format mesej mengikut RFC 822

    Medan pengepala yang diterima

Format medan tajuk Diterima: adalah seperti berikut:

Diterima: daripada nama hos mengikut nama hos melalui laluan fizikal dengan id mesej id protokol untuk destinasi e-mel akhir

Medan pengepala Diterima digunakan untuk mengenal pasti pelayan SMTP yang terlibat dalam proses penyampaian mesej daripada pengirim kepada penerima. Setiap pelayan menambah medan Diterima sendiri pada mesej mel, menunjukkan maklumat khusus tentang dirinya sendiri. Subbidang dalam medan Diterima menunjukkan laluan, protokol dan komputer yang mengambil bahagian dalam penghantaran mesej.

    Medan pengepala Laluan Kembali

Format medan pengepala ini adalah seperti berikut:

Laluan Kembali: laluan

Pelayan SMTP terakhir dalam rantaian pemajuan menambah medan Laluan Kembali pada mesej. Tujuannya adalah untuk menentukan laluan melalui mana mesej sampai kepada penerima. Jika mesej dihantar terus ke pelayan penerima, hanya satu alamat akan dipaparkan dalam medan ini. Jika tidak, ia akan dipaparkan di sini senarai penuh pelayan yang melaluinya mesej dihantar untuk sampai ke penerima. Mungkin berbeza daripada MAIL FROM (iaitu, alamat pemulangan mungkin dinyatakan berbeza daripada alamat pengirim).

    Medan pengepala pemula

Medan Pemula menunjukkan alamat pengirim mesej. Maklumat ini sangat berguna dalam situasi di mana mesej telah ditolak beberapa kali oleh rangkaian peribadi sebelum ia sampai ke Internet. Format medan ini adalah seperti berikut:

Balas-Kepada: alamat

Medan Originator hanyalah medan tambahan kecil dalam medan pengepala berbilang warna. Ia boleh digunakan sebagai laluan yang lebih mudah untuk paket SMTP kecil. Ini menghapuskan keperluan untuk medan pengepala yang lebih kompleks yang mengenal pasti pengirim.

    Hantar semula medan pengepala

Medan pengepala Resent mengenal pasti mesej mel yang atas sebab tertentu terpaksa dihantar semula oleh klien. Format medan ini adalah seperti berikut:

Resent-Reply-To: alamat

    Medan pengepala tulen

Data medan pengepala mengenal pasti pengirim emel. Format medan tulen:

Daripada: nama pengguna Pengirim: nama pengguna

Medan Daripada: mengenal pasti pengarang mesej. Biasanya medan Daripada: dan Pengirim: adalah pengguna yang sama, jadi hanya satu daripada medan ini sebenarnya diperlukan. Dalam kes di mana pengirim mel bukan pengarang mesej, tetapi ia hanya dihantar dari alamatnya, kedua-dua medan mesti dinyatakan - ini memastikan bahawa mesej dikembalikan kepada pengirim jika penghantaran kepada penerima adalah mustahil . Medan pengepala sahih semula

Medan Resent-authentic mengenal pasti penghantar mesej yang telah dihantar semula oleh program klien atas sebab tertentu. Format medan ini adalah seperti berikut:

Resent-From: date-time Resent-Sender: date-time Medan Resent-From: dan Resent-Sender: berfungsi sama dengan medan From: dan Sender:. Mereka hanya menggambarkan bahawa mesej itu telah dihantar semula oleh pelanggan atas sebab yang tidak diketahui.

Medan pengepala tarikh

Medan pengepala tarikh digunakan untuk meletakkan cap masa pada mesej apabila ia dihantar daripada klien ke pelayan. Medan Tarikh mempunyai format berikut:

Date: date-time Resent-Date: date-time Medan Tarikh: akan memajukan maklumat dalam pengepala mesej sama seperti mesej asal. Pilihan ini boleh berguna apabila menjejak masa respons, terutamanya berbilang respons.

    Medan pengepala destinasi

Medan pengepala Destinasi menunjukkan alamat e-mel penerima mesej. Bidang ini adalah maklumat semata-mata. Pelayan SMTP tidak akan menghantar mesej ke peti mel pengguna dalam apa jua keadaan sehingga ia menerima arahan RCPT yang dikeluarkan untuk pengguna yang diberi(lihat bahagian "Arahan Pelanggan SMTP Asas"). Format medan ini adalah seperti berikut:

Kepada: alamat Resent-To: alamat CC: address Resent-CC: address BCC: address Resent-BCC: address

Medan Kepada:, CC:, dan BCC: menetapkan algoritma pemprosesan e-mel standard. Kebanyakan pakej e-mel menggunakan istilah ini untuk mengklasifikasikan penerima mesej. Medan CC: Sama seperti memo, dan penerima yang dinyatakan di dalamnya harus menerima "salinan" mesej. Satu lagi konsep baharu yang diperkenalkan oleh sistem e-mel ialah BCC: atau salinan karbon buta. Medan "salinan halimunan" juga menunjukkan penerima salinan mesej, tetapi alamatnya tidak kelihatan kepada orang luar (ini tidak sepenuhnya beretika). Terdapat beberapa perdebatan tentang pilihan ini mengenai etika komputer, tetapi hari ini hampir semua program e-mel menyokong ciri ini.

    Medan pengepala pilihan

Medan pilihan ialah medan yang mengenal pasti mesej dengan lebih terperinci kepada pelayan SMTP, tetapi, menurut RFC 822, mungkin tidak terdapat dalam mesej. Walau bagaimanapun, bidang ini kini meluas dan ramai di antara anda perlu berurusan dengannya. Format sebahagian daripadanya adalah seperti berikut:

Message-ID: message-id Resent-Message-ID: message-id In-Reply-To: message-id Rujukan: message-id Kata kunci: teks - senarai Subjek: teks Ulasan: teks Disulitkan: perkataan

Yang paling berguna dan kerap digunakan bagi set ini ialah medan Subjek:. Kebanyakan program e-mel membenarkan pengirim memasukkan baris subjek satu baris yang menerangkan kandungan mesej kepada penerima. Baris teks ini agak kerap digunakan oleh program klien mel apabila menjana senarai mesej yang diterima. Medan pilihan lain juga membantu mengenal pasti mesej mel. Medan ini ialah Message-ID: (Pengecam Mesej). Medan ini memberikan nombor pengenalan unik kepada mesej, yang kemudiannya boleh muncul dalam mesej yang dikembalikan. Medan penyulitan khas Disulitkan: menunjukkan sama ada mesej telah disulitkan untuk tujuan keselamatan dan dalam Kata kunci: boleh ditetapkan kata kunci, yang boleh digunakan apabila mencari teks tertentu yang terdapat dalam mesej.

Data binari dan MIME

Algoritma pengekodan MIME mengambil kira jenisnya fail binari menjalani penukaran, dan maklumat tambahan tentang fail dihantar ke penyahkod. Algoritma MIME membenarkan data binari diletakkan terus ke dalam mesej mel standard, seperti yang ditakrifkan oleh RFC 822. Lima medan pengepala baharu telah dicipta untuk menerangkan data binari yang dibenamkan dalam mesej format RFC 822. Program mel yang menyokong standard MIME mesti mengendalikan semua jenis pengepala baharu ini dengan betul.

    Medan pengepala Versi MIME

Medan pengepala pilihan pertama mengandungi versi MIME yang digunakan oleh pengirim semasa pengekodan mesej. Pada masa ini medan ini sentiasa 1.0.

    Medan Content-Transfer-Encoding

Medan pengepala Content-Transfer-Encoding menentukan cara data binari disertakan dalam mesej teks ASCII. Hari ini ada tujuh dalam pelbagai cara pengekodan data binari, tetapi pengekodan base64 adalah yang paling biasa. Kaedah pengekodan ini menukarkan blok 6-bit data binari kepada blok 8-bit yang dibaca sebagai teks ASCII.

    Medan Content-ID

Medan pengepala ini digunakan untuk mengenal pasti sesi MIME oleh kod ID tertentu apabila kandungannya kompleks.

    Medan Kandungan-Penerangan

Medan pengepala Perihalan Kandungan digunakan untuk menyediakan penerangan teks ASCII bagi data yang disertakan dalam mesej mel. Ini mudah apabila menghantar dokumen yang dibuat menggunakan pemproses perkataan atau grafik yang tidak berbeza sedang dikodkan base64.

Medan pengepala Jenis Kandungan

    Medan pengepala Jenis Kandungan

Medan tajuk ini adalah tempat aksi utama permainan kami berlaku. Medan ini mengenal pasti data yang terkandung dalam mesej MIME. Pada masa ini terdapat tujuh kelas data utama yang dikenal pasti dalam MIME. Setiap kelas mempunyai subkelas sendiri, yang mencirikan dengan lebih terperinci jenis data yang terkandung dalam mesej.

Jenis data teks mengenal pasti data ASCII yang harus dibaca dalam bentuk mentahnya. Terdapat juga dua subkelas di sini - teks biasa, i.e. teks ASCII yang tidak diformat, dan teks yang diperkaya, yang merangkumi elemen pemformatan yang serupa dengan teks yang diperkaya format teks. Program e-mel terkini malah boleh mengendalikan Format Teks Kaya (RTF).

Jenis data mesej membenarkan program e-mel untuk dihantar mesej ringkas dalam format RFC 822. Subkelas jenis ini ialah rfc822, yang menunjukkan bahawa lampiran adalah mesej biasa, mematuhi RFC 822; separa, yang membolehkan anda memecahkan mesej yang panjang kepada beberapa bahagian, dan badan luar, yang membolehkan anda meletakkan penunjuk ke objek yang bukan sebahagian daripada mesej.

Jenis data imej menentukan lampiran data binari, yang mewakili imej grafik, kepada mesej. Pada masa ini terdapat dua subkelas yang ditakrifkan untuk jenis ini - jpeg dan gif.

Jenis data video, oleh itu, menentukan bahawa data yang dilampirkan pada mesej adalah data video. Pada masa ini hanya terdapat satu subkelas yang ditakrifkan untuk jenis ini, format mpeg.

Jenis data audio menandakan kandungan mesej sebagai data audio (fail bunyi). Di sini juga, hanya satu subkelas asas telah ditakrifkan setakat ini, yang sepadan dengan satu saluran ISDN dengan kekerapan pensampelan 8 KHz.

Jenis data aplikasi sepadan dengan data binari yang dilampirkan pada mesej yang merupakan aplikasi (contohnya, elektronik jadual Microsoft Excel atau dokumen yang dibuat menggunakan teks pemproses Microsoft Perkataan). Sehingga kini, dua subkelas jenis data ini telah ditakrifkan - postskrip dan aliran oktet. Selalunya subkelas aliran oktet digunakan apabila melampirkan data aplikasi pada mesej, seperti dokumen Microsoft Perkataan atau hamparan Microsoft Excel.

Jenis data berbilang bahagian mengenal pasti mesej yang mengandungi beberapa jenis data yang berbeza. Format ini agak biasa dalam program e-mel yang menyokong output mesej dalam beberapa cara, seperti teks ASCII. teks HTML atau fail audio. Pengecam sempadan memisahkan jenis data yang berbeza. Pada masa yang sama, setiap jenis data dikenal pasti oleh medan pengepala jenis data tertentu. Jenis data berbilang bahagian mempunyai empat subkelas.

Subkelas bercampur menunjukkan bahawa setiap bahagian mesej adalah bebas dan semuanya harus dibentangkan kepada penerima mengikut susunan ia disisipkan oleh pengirim. Subkelas selari menunjukkan bahawa setiap bahagian mesej adalah bebas dan kesemuanya boleh dibentangkan kepada penerima dalam sebarang susunan. Subkelas seterusnya, alternatif, menentukan bahawa semua bahagian mesej adalah data yang sama, tetapi dibentangkan dalam bentuk yang berbeza. Dalam kes ini, penerima boleh memilih cara terbaik untuk melihat data yang diterima. Subkelas ringkasan adalah serupa dalam banyak cara dengan subkelas campuran, tetapi menentukan bahawa badan mesej sentiasa diwakili dalam format RFC822.

1 $ telnet localhost 25 2 Mencuba 127.0.0.1... 3 Disambungkan ke localhost. 4 Watak melarikan diri ialah "^]". 5 220 shadrach.smallorg.org ESMTP Sendmail 8.9.3/8.9.3; Isn, 30 Ogos 1999 07:36:58 -050 6 HELO localhost 7 258 shadrach.smallorg.org Hello localhost, gembira dapat bertemu dengan anda 8 MAIL FROM:rich@localhost 9 250 rich@localhost... Pengirim ok 10 RCPT KE: kaya 11 250 kaya... Penerima ok 12 DATA 13 354 Masukkan mel, akhiri dengan "." pada baris dengan sendirinya 14 Daripada:"Rich Blum" 15 Kepada: "kaya" 16 Subjek:Ujian mesej teks berformat 17 Versi MIME: 1.0 18 Jenis Kandungan: berbilang bahagian/alternatif; boundary=bounds1 19 20 –bounds1 21 Jenis Kandungan: teks/plain; charset=us-ascii 22 23 Ini ialah bahagian teks biasa mesej yang boleh dibaca oleh pembaca e-mel mudah. 25 26 –-bounds1 27 Jenis Konteks: teks/diperkaya 28 29 Ini adalah teks yang kaya versi SAMA mesej. 30 31 –-sempadan1-- 32 . 33 250 MAA04305 Mesej diterima untuk penghantaran 34 QUIT 35 221 shadrach.smallorg.org sambungan penutupan 36 Sambungan ditutup oleh hos asing. 37 Anda mempunyai mel baharu dalam /var/spool/mail/rich 38 $

Penyenaraian 5.6. Contoh Sesi SMTP dengan Lampiran MIME Berbilang (html, txt) Contoh mesej yang ditunjukkan dalam Penyenaraian 5.6 ialah mesej MIME yang mempunyai dua bahagian. Baris 18 menunjukkan jenis data mesej. Jenis berbilang bahagian/alternatif menunjukkan bahawa mesej mengandungi jenis data yang berbeza yang dipisahkan oleh pembatas sempadan1. Jenis data pertama bermula pada baris 21 dan teks ASCII ringkas yang boleh dibaca oleh hampir mana-mana program e-mel.

Jenis data kedua bermula pada baris 27 dan teks kaya menggunakan format teks kaya.

Kerana jenis MIME ditentukan untuk mesej adalah berbilang bahagian/alternatif, kemudian menentukan versi lampiran yang hendak dipaparkan bergantung sepenuhnya kepada program e-mel.

Protokol SMTP yang dipertingkatkan

Sejak diperkenalkan pada tahun 1982, protokol SMTP telah melakukan tugas yang sangat baik untuk menghantar mesej antara komputer di Internet. Walau bagaimanapun, dari masa ke masa, batasan yang wujud dalam protokol menjadi ketara. Kemudian, bukannya menggantikan protokol standard, yang digunakan secara meluas pada masa itu, ia telah memutuskan untuk menambah baik beberapa fungsi protokol SMTP. Pada masa yang sama, ia telah memutuskan untuk meninggalkan semua spesifikasi SMTP dalam bentuk asalnya dan hanya menambah fungsi baharu kepada mereka.

Pada tahun 1995 ia dikeluarkan dokumen RFC 1869, di mana kaedah untuk melanjutkan keupayaan protokol SMTP ditakrifkan, dipanggil "Perkhidmatan SMTP Lanjutan".

SMTP lanjutan dilaksanakan seperti berikut. Pada permulaan sesi SMTP, arahan HELO telah digantikan dengan arahan jemputan - EHLO. Apabila pelayan SMTP menerima arahan sedemikian, ini bermakna pelanggan boleh menghantarnya dilanjutkan arahan SMTP. Penyenaraian 5.7 menunjukkan sesi contoh menggunakan EHLO serta arahan tambahan.

1 $ telnet localhost 25 2 Mencuba 127.0.0.1... 3 Disambungkan ke localhost. 4 Watak melarikan diri ialah "^]". 5 220 shadrach.smallorg.org ESMTP Sendmail 8.9.3/8.9.3; Isn, 30 Ogos 1999 16:36:48 -050 6 EHLO localhost 7 250-shadrach.smallorg.org Hello localhost, gembira dapat bertemu dengan anda 8 250-EXPN 9 250-VERB 10 250-8BITMIME 11 250-25SIZE 13 250-ONEX 14 250-ETRN 15 250-XUSR 16 250 BANTUAN 17 BANTUAN DSN 18 214-MEL DARIPADA: [ RET=( PENUH || HDRS) ] [ ENVID= ] 19 214-RCPT KEPADA: [ MAKLUMAN=(JANGAN PERNAH,BERJAYA,GAGAL,KELEWATAN) ] 20 214- [ ORCPT= ] 21 214- Pemberitahuan Status Penghantaran SMTP. 22 214-Penerangan: 23 214- RET Kembalikan sama ada mesej penuh atau hanya pengepala. 24 214- "Pengecam sampul surat" ENVID Pengirim untuk penjejakan. 25 214- MAKLUMAN Bila hendak menghantar DSN. Berbilang pilihan adalah OK, koma - 26 214- dibataskan. TIDAK PERNAH mesti muncul dengan sendirinya. 27 214- Penerima asal ORCPT. 28 214 Tamat maklumat BANTUAN 29 BANTUAN ETRN 30 214-ETRN [ | @ | #] 31 214- Jalankan baris gilir untuk yang ditentukan , atau 32 214- semua hos dalam sesuatu yang diberikan , atau nama khas 33 214- (khusus pelaksanaan). 34 214 Tamat maklumat BANTUAN 35 BERHENTI 36 221 sambungan penutup shadrach.smallorg.org 37 Sambungan ditutup oleh hos asing. $38

Baris 6 menentukan arahan SMTP EHLO untuk menyambung ke pelayan SMTP. Baris 7–16 memaparkan respons pelayan. Ambil perhatian bahawa pelayan memberi isyarat bahawa lebih banyak arahan tersedia untuk digunakan, i.e. Sesi berlangsung dalam mod "dilanjutkan". Salah satu kumpulan arahan baharu dipanggil parameter Pemberitahuan Status Penghantaran. Parameter ini boleh digunakan dengan arahan MAIL dan RCPT untuk memaparkan status penghantaran mesej tertentu E-mel. Walau bagaimanapun, bagi kami sebagai pentadbir sistem mel, arahan ETRN adalah yang paling menarik.

Perintah TURN telah pun disebut sebelum ini. Perintah ini sangat berkesan, tetapi malangnya tidak selamat. Untuk mengimbangi kekurangan ini, RFC 1985 mentakrifkan pelaksanaan baharu Perintah TURN, yang menyediakan tahap keselamatan yang lebih tinggi. Perintah ETRN membenarkan klien SMTP mengeluarkan permintaan kepada pelayan SMTP untuk memulakan sambungan SMTP lain dengan klien untuk menghantar mesej kepadanya. Satu-satunya perbezaan antara arahan ETRN dan arahan TURN ialah permintaan itu bukan untuk menggunakan sambungan sedia ada, tetapi untuk membuka sesi SMTP baharu. Dengan cara ini, pelayan SMTP boleh menyambung ke komputer klien menggunakan algoritma resolusi nama DNS biasa. Dalam kes ini, pembukaan sambungan baharu bukan berdasarkan nama di mana komputer pelanggan didaftarkan pada pelayan, tetapi pada nama hos sebenar pelanggan. Dalam kes ini, jika penggodam mewujudkan sambungan SMTP yang tidak dibenarkan dan menggunakan arahan ETRN, pelayan SMTP hanya akan mewujudkan sambungan baharu dengan pelanggan sebenar dan memajukan e-mel kepadanya. Akibatnya, tiada kemalangan jiwa berlaku. Format arahan ETRN adalah seperti berikut:

Di sini, peranan nama boleh sama ada nama hos atau nama domain (jika terdapat permintaan untuk menerima mel untuk keseluruhan domain). Pasukan ETRN adalah bantuan yang sangat baik untuk pentadbir e-mel. Jika pembekal Internet anda menyimpan mel untuk pelayan mel anda, maka menggunakan arahan ini anda boleh memberitahunya bahawa ia sedia menerima mel yang dikumpul untuk anda. Terdapat beberapa cara untuk melaksanakan algoritma sedemikian. Salah satunya ialah penggunaan khas program Perl, yang disertakan dengan program sendmail. Kerjanya adalah tepat bahawa selepas mewujudkan sambungan dengan pembekal Internet, ia mengeluarkan arahan ETRN dengan nama domain anda sebagai hujah. Setelah menerima arahan ini, pelayan SMTP pembekal memulakan sambungan SMTP lain dengan pelayan SMTP tempatan anda (melalui sambungan PPP yang sama) dan menghantar semua mel yang dimaksudkan untuk domain anda yang terdapat dalam baris gilir untuk penghantaran.

Kemungkinan kebanyakan orang yang membaca panduan ini sudah biasa dengan teknologi komunikasi yang paling biasa digunakan: e-mel. Tetapi pernahkah anda berfikir tentang bagaimana ia sebenarnya berfungsi? Dalam artikel ini, kita akan mempelajari cara perkhidmatan ini berfungsi dan apakah POP3, SMTP dan IMAP.

POP3(protokol Pejabat Pos versi 3) sering digunakan untuk berkomunikasi dengan pelayan e-mel jauh dan memuat turun mesej ke klien e-mel tempatan dan kemudian memadamkannya pada pelayan, contohnya, Thunderbird, Windows Mail, dsb. Walau bagaimanapun, pelanggan e-mel biasanya menawarkan pilihan sama ada untuk meninggalkan salinan mesej pada pelayan atau tidak. Jika anda menggunakan berbilang peranti untuk menghantar mesej, adalah disyorkan untuk membiarkan ciri ini didayakan, jika tidak, pada peranti lain anda tidak akan mempunyai akses kepada mesej yang dihantar yang tidak disimpan pada pelayan jauh. Perlu diingatkan juga bahawa POP3 ialah protokol sehala sahaja, yang bermaksud data diambil daripada pelayan jauh dan dihantar kepada pelanggan tempatan.

Port POP3 lalai ialah:

Port 110 – port tanpa penyulitan

Port 995 ialah port SSL/TLS, juga dikenali sebagai POP3S

Langkah 2 - Perbezaan antara POP3 dan IMAP, dan apakah port untuk IMAP?

IMAP (protokol lapisan aplikasi untuk mengakses e-mel), serta POP3, digunakan untuk menerima mesej e-mel pada klien tempatan, namun, ia mempunyai perbezaan yang ketara - hanya pengepala e-mel dimuat turun, teks surat itu sendiri kekal pada pelayan. Protokol ini Komunikasi berfungsi dalam dua arah; jika perubahan berlaku pada klien tempatan, ia dihantar ke pelayan. IMAP telah menjadi lebih popular baru-baru ini kerana penyedia perkhidmatan e-mel gergasi seperti Gmail telah mula mengesyorkannya dan bukannya POP3.

Port IMAP lalai ialah:

  • Port 143 – port tanpa penyulitan
  • Port 993 ialah port SSL/TLS, juga dikenali sebagai IMAPS

Langkah 3 - SMTP, protokol untuk komunikasi e-mel keluar

Protokol Pemindahan Mel Mudah ( SMTP), digunakan untuk berkomunikasi dengan pelayan jauh dan kemudian menghantar mesej daripada klien tempatan ke pelayan jauh, dan akhirnya ke pelayan penerima mesej. Pada pelayan e-mel anda, proses ini dikawal perkhidmatan khas (MTA). Perlu diingat bahawa SMTP digunakan semata-mata untuk menghantar mesej.

Port SMTP:

  • Port 25 – port tanpa penyulitan
  • Port 465 ialah port SSL/TLS, juga dikenali sebagai SMTPS

Kesimpulan

Kami berharap anda kini mempunyai pemahaman yang jelas tentang cara protokol e-mel berfungsi dan port yang mereka gunakan. Dalam tutorial ini, kami mempelajari apa itu POP3, SMTP dan IMAP serta kegunaannya. Sebagai contoh, POP3 dan IMAP digunakan untuk tujuan yang sama, tetapi mereka mendekati tugas ini secara berbeza. IMAP meninggalkan kandungan mesej pada pelayan dan POP3 memuat turunnya ke komputer anda. Juga, kami mengetahui apa pelabuhan standard untuk SMTP, POP3 dan IMAP.

Selama beberapa dekad, pengguna Internet telah menggunakan e-mel untuk bertukar-tukar mesej dan surat. Sehingga awal 90-an abad yang lalu, mesej elektronik digunakan, sebagai peraturan, oleh pekerja organisasi besar. Dengan pengkomputeran yang meluas dan penyebaran World Wide Web, e-mel telah menjadi sebahagian daripada kehidupan pengguna biasa.

Perkembangan teknologi Internet telah membawa kepada kemunculan apa yang dipanggil protokol mel yang digunakan untuk surat-menyurat rangkaian. Mereka memungkinkan untuk memproses huruf besar, menyediakan pengguna dengan semua jenis perkhidmatan.

Ia tidak dikekang oleh mana-mana subsistem penghantaran data tertentu. Operasinya hanya memerlukan saluran yang boleh dipercayai untuk aliran penghantaran mereka sambil mengekalkan ketenteraman.

SMTP digunakan terutamanya untuk menghantar surat dan permintaan pengguna ke pelayan, selepas itu mel dihantar kepada penerima. Untuk menerima surat, anda memerlukan klien mel anda untuk bekerja pada protokol IMAP atau POP3.

Untuk apa ia digunakan?

Ini adalah protokol mel standard hari ini. Semua orang menggunakannya pengirim surat dan pelayan.

Pengehosan tapak web maya untuk CMS popular:

Prinsip operasi protokol.

SMTP ialah protokol teks, prinsip operasinya memerlukan sambungan di mana pengguna menghantar e-mel berkomunikasi dengan penerimanya menggunakan baris arahan tertentu. Dan data diterima melalui penggunaan saluran komunikasi yang boleh dipercayai. Biasanya, saluran komunikasi ini ialah sambungan TCP.

Sesi kerja protokol terdiri daripada mel yang dihantar - Pelanggan SMTP beberapa arahan dan respons pelayan kepada mereka. Pada sesi bekerja kedua-dua pelanggan dan pelayan menukar parameter yang diperlukan.

Operasi protokol termasuk gabungan yang terdiri daripada urutan arahan dan tindak balas berikut:

  • Arahan MAIL FROM - menunjukkan alamat e-mel pemulangan;
  • Perintah RCPT TO - menentukan penerima surat tertentu;
  • DATA ialah arahan yang bertanggungjawab untuk menghantar teks mesej e-mel. Ini ialah badan surat, yang merangkumi pengepala dan badan surat, dipisahkan oleh baris kosong.

Pelanggan SMTP awal mungkin klien e-mel penerima, atau ejen pemindahan mel pada pelayan.

Cara protokol mel lain berfungsi.

SMTP hanyalah protokol untuk menyampaikan surat-menyurat pada rangkaian. Dia tidak boleh, atas arahan, mengambil mesej e-mel dari pelayan jauh atau entah bagaimana menguruskan kotak e-mel.

Terdapat protokol lain untuk ini, seperti IMAP dan POP. Penggunaannya adalah lebih baik apabila menyambung ke rangkaian buat sementara waktu atau apabila PC dihidupkan secara berkala.

POP.

Protokol Pejabat Pos ialah protokol rangkaian ringkas yang merangkumi tiga perisa: POP, POP2 dan POP3. Mereka direka untuk menghantar surat-menyurat kepada pengguna daripada pelayan mel pusat, untuk memadam mel daripada pelayan, dan untuk mengenal pasti pengguna. Gabungan log masuk dan kata laluan digunakan untuk pengenalan. Perlu diingat bahawa ketiga-tiga protokol tidak boleh ditukar ganti.

Protokol termasuk SMTP, yang digunakan untuk menghantar mel keluar.

Selaras dengan POP3, surat yang tiba di e-mel tertentu disimpan pada pelayan sehingga ia dimuat turun ke PC semasa sesi seterusnya. Sebaik sahaja muat turun telah berlaku, ia menjadi mungkin untuk membaca mesej semasa memutuskan sambungan daripada rangkaian. POP3 dianggap sebagai protokol mel terpantas.

IMAP.

DENGAN menggunakan Internet Mesej Protokol Akses Ia menjadi mungkin untuk menyimpan mesej dalam direktori fail pada pelayan dan mencari sebarang rentetan mesej terus di sana.

Protokol ini sesuai untuk pengguna yang komputernya menggunakan sambungan berterusan ke Internet. Ia berbeza daripada POP kerana apabila mesej baharu diimbas, hanya pengepalanya dimuat turun.

Hari ini kami akan memberitahu anda secara terperinci tentang protokol Internet yang paling banyak digunakan - POP3, IMAP dan SMTP. Setiap protokol ini mempunyai tujuan dan fungsi tertentu. Mari cuba fikirkan.

Protokol POP3 dan portnya

Protokol Pejabat Pos 3 (POP3) ialah protokol mel standard yang direka untuk menerima e-mel daripada pelayan jauh kepada klien e-mel.POP3 membolehkan anda menyimpan mesej e-mel ke komputer anda dan juga membacanya jika anda berada di luar talian. Adalah penting untuk ambil perhatian bahawa jika anda memilih untuk menggunakan POP3 untuk menyambung ke akaun mel anda, e-mel yang telah dimuat turun ke komputer anda akan dipadamkan daripada pelayan mel. Sebagai contoh, jika anda menggunakan berbilang komputer untuk menyambung ke satu akaun e-mel, maka POP3 mungkin bukan pilihan terbaik dalam situasi ini. Sebaliknya, memandangkan mel disimpan secara setempat, pada PC pengguna tertentu, ini membolehkan anda mengoptimumkan ruang cakera pada bahagian pelayan mel.

Secara lalai, protokol POP3 menggunakan port berikut:

  • Port 110 ialah port POP3 lalai. Ia tidak selamat.
  • Port 995 – Port ini harus digunakan jika anda ingin mewujudkan sambungan selamat.

Protokol dan port IMAP

Internet Message Access Protocol (IMAP) ialah protokol e-mel yang direka untuk mengakses mel daripada klien e-mel tempatan. IMAP dan POP3 ialah protokol paling popular di Internet yang digunakan untuk menerima e-mel. Kedua-dua protokol ini disokong oleh semua klien mel moden (MUA - Ejen Pengguna Mel) dan pelayan WEB.

Walaupun POP3 membenarkan akses mel daripada hanya satu aplikasi, IMAP membenarkan akses daripada berbilang pelanggan. Atas sebab ini, IMAP paling mudah disesuaikan dalam kes di mana berbilang pengguna memerlukan akses kepada akaun e-mel yang sama.

Secara lalai, protokol IMAP menggunakan port berikut:

  • Pelabuhan 143– port lalai. Tidak selamat.
  • Pelabuhan 993– port untuk sambungan selamat.
Protokol SMTP dan portnya

Simple Mail Transfer Protocol (SMTP) ialah protokol standard untuk menghantar mesej mel melalui Internet.

Protokol ini diterangkan dalam RFC 821 dan RFC 822, pertama kali diterbitkan pada Ogos 1982. Dalam skop data RFC, format alamat mestilah dalam format nama pengguna@nama domain. Penghantaran mel adalah serupa dengan kerja biasa perkhidmatan pos: sebagai contoh, surat kepada alamat [e-mel dilindungi], akan ditafsirkan seperti berikut: ivan_ivanov ialah alamat, dan merionet.ru ialah poskod. Jika nama domain penerima berbeza daripada nama domain pengirim, maka MSA (Ejen Penyerahan Mel) akan menghantar surat tersebut melalui Ejen Pemindahan Mel (MTA). Idea utama MTA adalah untuk mengalihkan surat kepada yang lain zon domain, sama seperti cara mel tradisional menghantar surat ke bandar atau wilayah lain. MTA juga menerima mel daripada MTA lain.

Protokol SMTP menggunakan port berikut.

4085/2, protokol Mel Sorokin D. S. Kaedah memerangi spam

SMTP

SMTP (Simple Mail Transfer Protocol) ialah protokol rangkaian yang digunakan secara meluas yang direka untuk menghantar e-mel melalui rangkaian TCP/IP.

Urus niaga SMTP

SMTP ialah protokol teks berasaskan sambungan di mana penghantar mesej berkomunikasi dengan penerima dengan mengeluarkan baris arahan dan menerima data yang diperlukan melalui saluran yang boleh dipercayai, yang biasanya sambungan TCP (Transmission Control Protocol). Sesi SMTP terdiri daripada arahan yang dihantar oleh klien SMTP dan respons yang sepadan daripada pelayan SMTP. Apabila sesi dibuka, pelayan dan pelanggan menukar parameternya. Sesi boleh termasuk sifar atau lebih operasi SMTP (urus niaga).

arahan SMTP

Operasi SMTP terdiri daripada tiga urutan arahan/tindak balas:

MAIL FROM - menetapkan alamat pemulangan (iaitu. Laluan Kembali, 53121. Dari, mdari). Ini adalah alamat untuk surat yang dikembalikan.

RCPT TO - menetapkan penerima daripada mesej ini. Perintah ini boleh diberikan beberapa kali, sekali untuk setiap penerima. Alamat ini juga merupakan sebahagian daripada shell.

DATA - untuk menghantar teks mesej. Ini adalah kandungan surat itu sendiri, bertentangan dengan sampul suratnya. Ia terdiri daripada pengepala mesej dan badan mesej yang dipisahkan oleh baris kosong. DATA pada asasnya ialah sekumpulan arahan, dan pelayan bertindak balas dua kali: pertama kepada arahan DATA itu sendiri, untuk memberitahu

kesediaan untuk menerima teks; dan kali kedua selepas tamat urutan data untuk menerima atau menolak keseluruhan surat.

Sebagai tambahan kepada respons perantaraan untuk arahan DATA, setiap respons pelayan boleh menjadi positif (kod respons 2xx) atau negatif. Yang terakhir, seterusnya, boleh kekal (kod 5xx) atau sementara (kod 4xx). Kegagalan pelayan SMTP untuk menghantar mesej adalah ralat kekal; dalam kes ini pelanggan mesti menghantar surat pemulangan. Selepas penetapan semula - respons positif, kemungkinan besar mesej akan ditolak. Pelayan juga mungkin menunjukkan bahawa data tambahan dijangka daripada klien (kod 3xx).

Hos awal (pelanggan SMTP) boleh sama ada klien e-mel pengguna akhir (secara fungsi ditakrifkan sebagai ejen pos- MUA), dan ejen pemajuan mesej (MTA) pada pelayan, i.e. pelayan bertindak sebagai pelanggan dalam sesi yang sesuai untuk menyampaikan mesej. Pelayan berfungsi sepenuhnya menyokong baris gilir mesej untuk menghantar semula mesej sekiranya berlaku ralat.

MUA mengetahui pelayan SMTP untuk mel keluar daripada tetapannya. Pelayan SMTP, bertindak sebagai pelanggan, iaitu pemajuan mesej, menentukan pelayan yang hendak disambungkan dengan melihat rekod DNS MX (Mail eXchange) sumber untuk setiap domain penerima. Sekiranya rekod MX tidak dijumpai, MTA yang serasi (bukan semua) akan kembali kepada rekod A yang mudah. Pelayan pemajuan juga boleh dikonfigurasikan untuk menggunakan Pintar tuan rumah.

Pelayan SMTP, bertindak sebagai pelanggan, mewujudkan sambungan TCP dengan pelayan seperti yang direka untuk Port SMTP 25. MUA harus menggunakan port 587 untuk menyambung ke

Ejen Penyerahan Mesej (MSA). Perbezaan utama antara MTA dan MSA ialah pengesahan SMTP hanya diperlukan untuk yang terakhir.

SMTPS

SMTPS merujuk kepada kaedah keselamatan lapisan pengangkutan SMTP. Ia direka untuk memastikan pengesahan pihak, integriti data dan kerahsiaan. SMTPS bukanlah protokol proprietari atau sambungan kepada SMTP, ia hanyalah satu cara untuk mengamankan SMTP pada lapisan pengangkutan.

Pelanggan dan pelayan menggunakan SMTP biasa pada peringkat aplikasi, tetapi sambungannya dijamin oleh SSL atau TLS. Ini berlaku selepas sambungan telah diwujudkan sebelum sebarang data mel dihantar.

SMTPS menggunakan port 465.

POP3 (Post Office Protocol Versi 3) ialah protokol aplikasi Internet standard yang digunakan oleh klien e-mel untuk mendapatkan semula mesej e-mel daripada pelayan jauh melalui sambungan TCP/IP. POP dan IMAP (Internet Message Access Protocol) ialah protokol Internet yang paling biasa untuk mendapatkan semula mel. Hampir semua pelanggan dan pelayan e-mel moden menyokong kedua-dua piawaian. Protokol POP telah dibangunkan dalam beberapa versi, dengan versi ketiga (POP3) menjadi standard semasa. Kebanyakan penyedia perkhidmatan e-mel (seperti Hotmail, Gmail dan Yahoo! Mail) turut menyokong IMAP dan POP3. Versi sebelumnya protokol (POP, POP2) sudah lapuk.

POP menyokong keperluan muat turun dan padam mudah untuk mengakses peti mel jauh. Walaupun kebanyakan pelanggan POP menyediakan keupayaan untuk meninggalkan mel pada pelayan selepas memuat turun, mereka yang menggunakan Pelanggan POP biasanya menyambung, mendapatkan semula semua e-mel, menyimpannya pada komputer pengguna sebagai mesej baharu, padamkannya daripada pelayan, dan kemudian putuskan sambungan.

Pelayan POP3 mendengar pada port 110 yang terkenal. Penyulitan komunikasi untuk POP3 diminta selepas protokol dimulakan, menggunakan sama ada arahan STLS (jika disokong) atau POP3S, yang bersambung ke pelayan menggunakan TLS atau SSL pada port TCP 995.

Perintah POP3

Hujah

Sekatan

Jawapan yang mungkin

Sokongan dia tidak

* +OK maildrop mempunyai n mesej

[Nama]

* -ERR kata laluan dibekalkan untuk

wajib

[nama] tidak betul

* +Nama OK ialah peti mel yang sah

* -ERR tidak pernah mendengar tentang peti mel

* +OK surat mel dikunci dan

Berfungsi selepas pemindahan berjaya

* -ERR kata laluan tidak sah

nama peti mel

* -ERR tidak dapat dikunci

[mesej]

Tersedia selepas berjaya

* +OK mesej dipadamkan

pengenalan

* -ERR tiada mesej sedemikian

[mesej]

Tersedia selepas berjaya

* +OK penyenaraian imbasan berikut

pengenalan

* -ERR tiada mesej sedemikian

Tersedia selepas berjaya

pengenalan

[mesej]

Tersedia selepas berjaya

* +OK mesej menyusul

pengenalan

* -ERR tiada mesej sedemikian

Tersedia selepas berjaya

pengenalan

Tersedia selepas berjaya

pengenalan

[mesej]

Tersedia selepas berjaya

[kuantiti

pengenalan

* -ERR tiada mesej sedemikian

IMAP

Protokol alternatif untuk mengumpul mesej daripada pelayan mel ialah IMAP. IMAP (Internet Message Access Protocol) ialah protokol peringkat aplikasi untuk mengakses e-mel.

Berdasarkan protokol pengangkutan TCP dan menggunakan port 143.

POP3 mempunyai beberapa kelemahan, dan yang paling serius ialah kekurangan keupayaan untuk mengawal pergerakan dan penyimpanan mesej pada pelayan. Mesej, sebagai peraturan, dimuat turun dari pelayan mel sekaligus, selepas itu ia dipadamkan dari pelayan, iaitu, tidak ada keupayaan untuk memilih mesej untuk diterima.

Untuk menangani masalah yang berkaitan dengan ciri POP3 ini, Universiti Washington membangunkan protokol baharu yang membolehkan pengguna menerima e-mel daripada peti mel yang sama dari berbilang lokasi tanpa mesej diedarkan di antara titik penerima. Pengguna diberi peluang untuk menguruskan mesej dalam peti melnya dan fungsi perkhidmatan tambahan peti mel pada pelayan.

Faedah IMAP

Apabila menggunakan POP3, klien menyambung ke pelayan hanya untuk tempoh masa yang diperlukan untuk memuat turun mesej baharu. Apabila menggunakan IMAP, sambungan tidak putus sehingga antaramuka pengguna aktif dan mesej dimuat turun hanya apabila diminta oleh klien. Ini membolehkan anda mengurangkan masa respons untuk pengguna yang peti melnya mengandungi banyak mesej besar.

Protokol POP memerlukan klien semasa menjadi satu-satunya yang disambungkan ke peti mel. IMAP membenarkan berbilang pelanggan mengakses peti mel pada masa yang sama dan menyediakan pelanggan dengan keupayaan untuk memantau perubahan yang dibuat oleh pelanggan lain yang disambungkan pada masa yang sama.

Terima kasih kepada sistem bendera yang ditakrifkan dalam IMAP4, pelanggan boleh menjejaki status mesej (baca, balasan dihantar, dipadam, dsb.); data bendera disimpan pada pelayan.

Pelanggan IMAP4 boleh membuat, menamakan semula dan memadam peti mel dan mengalihkan mesej antara peti mel. Anda juga boleh menggunakan Sambungan Senarai Kawalan Akses IMAP4 (ACL) (RFC 4314) untuk mengawal hak akses peti mel.

Mencari mesej berlaku di bahagian pelayan. IMAP4 mempunyai mekanisme sambungan yang jelas.

Kaedah anti-spam

Mel spam moden diedarkan dalam ratusan ribu salinan dalam hanya beberapa puluh minit. Selalunya, spam datang melalui jangkitan perisian hasad komputer pengguna adalah rangkaian zombi. Apa yang boleh dilawan dengan serangan ini? Industri keselamatan IT moden menawarkan banyak penyelesaian, dan anti-spammer mempunyai pelbagai teknologi dalam senjata mereka. Namun, tiada satu pun teknologi sedia ada bukanlah "peluru perak" ajaib terhadap spam. Penyelesaian sejagat langsung tidak wujud. Kebanyakan produk moden menggunakan pelbagai teknologi, jika tidak keberkesanan produk tidak akan tinggi.

DNSBL

DNSBL - senarai hitam DNS atau senarai blok DNS - senarai hos yang disimpan menggunakan sistem seni bina DNS. Biasanya digunakan untuk memerangi spam. Pelayan mel mengakses DNSBL dan menyemaknya untuk alamat IP klien dari mana ia menerima mesej. Jika jawapannya positif, ia dianggap cubaan sedang dibuat untuk menerima mesej spam. Pelayan penghantaran menerima ralat 5xx (ralat maut) dan mesej tidak diterima. Pelayan mel penghantar mencipta "resit lantunan" kepada pengirim yang menunjukkan bahawa mel tidak dihantar.

Terdapat 2 kaedah menggunakan teknologi ini.

1. Sekatan tidak jelas - penolakan mesej yang datang daripada alamat IP yang terletak dalam DNSBL

2. Pendekatan yang seimbang. Dengan pendekatan ini, mesej yang datang daripada alamat IP

yang terletak di DNSBL tidak disekat, tetapi fakta ini diambil kira apabila mengklasifikasikan "spam" surat itu.

Apabila menggunakan pendekatan pertama, semua surat daripada alamat IP yang disertakan dalam DNSBL ditolak dengan jelas. Tidak kira sama ada alamat IP telah disenaraihitamkan dengan sewajarnya atau secara tidak sengaja (yang menjadi semakin biasa dalam amalan). Penggunaan pendekatan kedua digambarkan dengan sempurna oleh penapis spam sumber terbuka spamassassin. Apabila pendekatan berwajaran digunakan untuk mengklasifikasikan mesej, iaitu analisis berdasarkan pelbagai kriteria. Dalam kes ini, kehadiran alamat IP penghantar dalam senarai hitam bukanlah satu-satunya faktor yang mempengaruhi keputusan mengenai klasifikasi mesej, yang seterusnya bermakna pengurangan bilangan penapis positif palsu dalam kes di mana alamat IP penghantar adalah. disenaraihitamkan akibat kemalangan yang tidak masuk akal.

Kawalan massa

Teknologi ini melibatkan mengenal pasti dalam aliran mel mesej massa, yang benar-benar sama atau berbeza sedikit. Untuk membina penganalisis "jisim" yang berfungsi, aliran mel yang besar diperlukan, jadi teknologi ini ditawarkan pengeluar besar, mempunyai jumlah mel yang besar yang boleh mereka analisis.

Kelebihan: Jika teknologi itu berfungsi, ia dijamin dapat mengesan mel besar-besaran.

Kelemahan: Pertama, mel "besar" mungkin bukan spam, tetapi mel yang agak sah (contohnya, Ozon.ru, Subscribe.ru menghantar beribu-ribu mesej yang hampir sama, tetapi ini bukan spam). Kedua, pengirim spam tahu cara "menerobos" perlindungan sedemikian menggunakan teknologi pintar. Mereka menggunakan perisian yang menjana pelbagai kandungan - teks, grafik, dsb. - dalam setiap spam