Cara Memeriksa Koneksi SMTP dengan Sesi Telnet Manual
Burung
7 Feb 2020
1 min read

Poin Penting
Pengujian telnet manual adalah cara cepat dan sederhana untuk mendiagnosis masalah konektivitas dan konfigurasi SMTP.
Gunakan untuk memverifikasi apakah server SMTP terjangkau, terkonfigurasi dengan benar, dan menerima koneksi.
Uji coba dapat mengungkapkan port yang diblokir, pembatasan relay, kesalahan DNS, atau masalah kompatibilitas TLS.
Perintah SMTP penting termasuk EHLO/HELO, MAIL FROM, RCPT TO, DATA, dan QUIT.
Port 25 adalah standar untuk relay, sementara 465 dan 587 digunakan untuk pengiriman aman.
Otentikasi yang dienkode Base64 (AUTH LOGIN) diperlukan ketika server meminta kredensial login.
Alat seperti Swaks atau platform pengujian email terintegrasi dapat mengotomatiskan dan memperluas langkah-langkah diagnostik telnet.
Sorotan Tanya jawab
Mengapa menggunakan telnet daripada alat pengujian email yang khusus?
Telnet memberi Anda visibilitas langsung ke dialog SMTP mentah. Ini sangat berharga untuk pemecahan masalah di tingkat protokol dan mengonfirmasi respons server tanpa lapisan pihak ketiga.
Apa cara tercepat untuk mengetahui apakah port SMTP saya terblokir?
Jalankan
telnet mail.example.com 25. Jika Anda mendapatkan “Koneksi ditolak,” kemungkinan ISP atau host Anda memblokir port tersebut.Apakah saya perlu melakukan otentikasi saat melakukan pengujian dengan telnet?
Hanya jika server mail memerlukan otentikasi. Gunakan perintah
AUTH LOGINdan kirim nama pengguna serta kata sandi Anda yang dienkode dalam Base64.Bisakah saya mengirim email lengkap melalui telnet?
Ya. Setelah
DATA, tambahkan header dan tubuh Anda, akhiri dengan satu titik(.)pada barisnya sendiri, dan kemudian ketikQUIT.Apakah telnet aman untuk pengujian SMTP?
Telnet tidak mengenkripsi data dan mentransmisikannya dalam teks biasa. Gunakan hanya untuk pengujian di lingkungan yang aman dan terkontrol. Untuk koneksi yang aman, uji melalui TLS menggunakan alat yang mendukung STARTTLS.
Di dunia email, ada banyak aspek untuk pengujian, tetapi salah satu tes yang paling dasar yang dapat Anda lakukan adalah dengan menghubungi server SMTP tertentu menggunakan telnet. Pemeriksaan SMTP ini berguna untuk menentukan apakah masalah yang paling mendasar ada atau tidak.
Di dunia email, ada banyak aspek untuk pengujian, tetapi salah satu tes paling dasar yang dapat Anda lakukan adalah dengan melakukan telnet ke server SMTP tertentu. Pengecekan SMTP ini berguna untuk menentukan apakah masalah paling dasar ada atau tidak.
Apakah server aktif?
Apakah ada firewall yang memblokir komunikasi?
Apakah server email mengizinkan pengalihan dari domain/alamat email tertentu?
Perintah SMTP apa yang didukung oleh server email?
Apakah server merespons dengan nama host yang benar?
Apakah koneksi berfungsi di luar perangkat lunak atau API pihak ketiga?
Semua pertanyaan ini dan lainnya dapat dijawab dengan tes telnet yang sederhana.
Sebelum kita mulai, pastikan untuk membuka artikel pendamping kami untuk posting ini: Kemana Pesan Bounce Dikirim? di tab baru sehingga Anda dapat membacanya setelah selesai dengan blog ini.
Sebagai catatan, perintah yang digunakan dalam contoh berikut (serta perintah tambahan) dijelaskan di bagian 4.1 dari RFC 2821.
Di dunia email, ada banyak aspek untuk pengujian, tetapi salah satu tes paling dasar yang dapat Anda lakukan adalah dengan melakukan telnet ke server SMTP tertentu. Pengecekan SMTP ini berguna untuk menentukan apakah masalah paling dasar ada atau tidak.
Apakah server aktif?
Apakah ada firewall yang memblokir komunikasi?
Apakah server email mengizinkan pengalihan dari domain/alamat email tertentu?
Perintah SMTP apa yang didukung oleh server email?
Apakah server merespons dengan nama host yang benar?
Apakah koneksi berfungsi di luar perangkat lunak atau API pihak ketiga?
Semua pertanyaan ini dan lainnya dapat dijawab dengan tes telnet yang sederhana.
Sebelum kita mulai, pastikan untuk membuka artikel pendamping kami untuk posting ini: Kemana Pesan Bounce Dikirim? di tab baru sehingga Anda dapat membacanya setelah selesai dengan blog ini.
Sebagai catatan, perintah yang digunakan dalam contoh berikut (serta perintah tambahan) dijelaskan di bagian 4.1 dari RFC 2821.
Di dunia email, ada banyak aspek untuk pengujian, tetapi salah satu tes paling dasar yang dapat Anda lakukan adalah dengan melakukan telnet ke server SMTP tertentu. Pengecekan SMTP ini berguna untuk menentukan apakah masalah paling dasar ada atau tidak.
Apakah server aktif?
Apakah ada firewall yang memblokir komunikasi?
Apakah server email mengizinkan pengalihan dari domain/alamat email tertentu?
Perintah SMTP apa yang didukung oleh server email?
Apakah server merespons dengan nama host yang benar?
Apakah koneksi berfungsi di luar perangkat lunak atau API pihak ketiga?
Semua pertanyaan ini dan lainnya dapat dijawab dengan tes telnet yang sederhana.
Sebelum kita mulai, pastikan untuk membuka artikel pendamping kami untuk posting ini: Kemana Pesan Bounce Dikirim? di tab baru sehingga Anda dapat membacanya setelah selesai dengan blog ini.
Sebagai catatan, perintah yang digunakan dalam contoh berikut (serta perintah tambahan) dijelaskan di bagian 4.1 dari RFC 2821.
Bagaimana Cara Mengirim Email Menggunakan Telnet?
Kirim email melalui telnet dapat membantu Anda mengidentifikasi masalah keterkiriman dalam konfigurasi Anda saat ini.
Sebelum Anda mengirim email menggunakan telnet, pastikan telnet telah diinstal dan diaktifkan di komputer Anda. Sebagian besar komputer sudah dilengkapi dengan klien telnet bawaan. Untuk versi Windows yang tidak memilikinya, klien dapat diinstal dengan membuka bagian "Program dan Fitur" di panel kontrol dan memilih "Aktifkan atau nonaktifkan fitur Windows". Dengan jendela ini terbuka, pilih "klien telnet" dan kemudian klik OK.
Setelah klien telnet terverifikasi diinstal di server, buka jendela terminal tempat Anda akan memasukkan perintah prompt Anda. Di Windows, gunakan Windows + R, ketik "cmd", dan tekan enter. Untuk pengguna Mac, Anda akan menemukan ikon terminal dengan membuka Finder dan mencari "Utilitas" di halaman Aplikasi, atau dengan memasukkan "terminal" dalam fungsi pencarian Launchpad.
Selanjutnya, kita perlu menemukan server email untuk masuk. Untuk ini, kita akan membutuhkan catatan DNS MX untuk domain tertentu. Ini dapat ditemukan dengan perintah berikut (untuk contoh ini port25.com akan digunakan, tetapi domain apa pun dapat diganti):
Windows:
nslookup -type=mx port25.com Non-authoritative answer: port25.com MX preference = 100, mail exchanger = mail.port25.com
Linux:
nslookup -type=mx port25.com Non-authoritative answer: port25.com mail exchanger = 100 mail.port25.com
Referensi Cepat Port SMTP
Berikut adalah referensi cepat untuk port pengiriman SMTP umum dan kapan menggunakannya:
Port | Enkripsi | Kasus Penggunaan Tipikal | Catatan |
|---|---|---|---|
25 | Tidak ada / TLS Opportunistik | Relay server-ke-server | Sering diblokir oleh ISP untuk kontrol spam |
465 | SSL/TLS Implisit | Pengiriman aman warisan | Dikurangi tetapi masih digunakan oleh sistem yang lebih tua |
587 | STARTTLS | Pengiriman terautentikasi modern | Direkomendasikan untuk pengiriman email klien |
Untuk konfigurasi dan optimasi server email yang lebih lanjut, lihat panduan kami tentang tips konfigurasi PowerMTA. Jika relay SMTP Anda menggunakan port yang berbeda dari 25 seperti yang ditunjukkan dalam contoh, Anda akan menggunakan port yang ditentukan oleh respons server pertukaran email ke nslookup. Anda juga dapat memverifikasi port yang digunakan SMTP Anda dengan menanyakan kepada administrator Anda atau masuk ke server pertukaran email dan meninjau protokolnya.
Selanjutnya kita perlu DNS PTR untuk IP yang akan kita gunakan. Pertama, kita perlu tahu alamat IP apa yang dilihat internet seolah-olah kita memilikinya. Untuk menemukannya kita dapat menggunakan situs web seperti:
Dengan alamat IP jalankan perintah berikut, di mana A.B.C.D adalah alamat IP.
Windows:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
Linux:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
server.example.com hanyalah contoh, dan hasil Anda akan berbeda.
Jadi sekarang kita telah mendapatkan catatan MX untuk port25.com dan PTR untuk IP yang akan kita gunakan, saatnya untuk masuk ke server SMTP. Untuk melakukannya, gunakan perintah berikut:
telnet mail.port25.com 25
Sesomething yang mirip dengan berikut sekarang harus ditampilkan:
Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready
Jika Anda menerima pesan kesalahan seperti "tidak dapat terhubung" pada saat ini, entah nomor portnya benar atau server email sedang menghadapi masalah.
Perintah pertama yang perlu kita berikan kepada server email untuk penguji email SMTP kita adalah EHLO atau HELO. Ini adalah salam dasar yang memulai komunikasi antara klien telnet dan server SMTP. Juga dikirim adalah DNS PTR untuk alamat IP tempat kita terhubung seperti yang ditentukan sebelumnya.
EHLO server.example.com
Sesuatu yang mirip dengan berikut harus dikembalikan:
250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN
Ini menunjukkan perintah SMTP yang diterima oleh server SMTP. Tidak semua server SMTP mendukung satu set perintah yang sama. Misalnya, yahoo hanya menunjukkan berikut:
250-8BITMIME 250-SIZE 41943040 250 PIPELINING
Dan aol hanya menunjukkan satu dengan:
250 DSN
Perintah berikutnya yang perlu kita berikan adalah perintah MAIL FROM. Ini menentukan alamat tempat pengembalian dikirim. Ini tidak sama dengan header dari, yaitu alamat email yang ditampilkan di klien email.
MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok
Pastikan Anda menggunakan nama domain yang sesuai dengan domain server email Anda. Misalnya, jika domain email Anda adalah anycompany.com, Anda harus menggunakan you@anycompany.com alih-alih alamat email eksternal seperti you@free-mail-provider.com. Variasi dalam nama domain dapat menyebabkan pesan kesalahan muncul.
Sekarang setelah perintah MAIL FROM telah dikirim, kita dapat mengirim perintah RCPT TO . Perintah ini memberi tahu server email SMTP kepada siapa pesan harus dikirim. Ini dapat sama atau berbeda dari header ke, yaitu alamat email yang ditampilkan di klien email.
RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> ok
Periksa kembali alamat penerima Anda sebelum mengirim perintah RCPT TO — pesan kesalahan yang muncul di sini dapat menunjukkan bahwa alamat email penerima salah eja atau diblokir.
Perintah terakhir yang dijalankan sebelum memulai isi pesan adalah perintah DATA . Perintah ini memberi tahu server email SMTP bahwa semua yang akan dikirim selanjutnya adalah isi pesan (yang juga berisi header).
DATA 354 kirim pesan
Penting untuk dicatat bahwa jika server email mendukung PIPELINING, seperti mail.port25.com, server email SMTP mungkin menunggu hingga perintah DATA dikeluarkan sebelum merespons perintah lainnya setelah EHLO/HELO. Dalam hal ini, masukkan perintah MAIL FROM, RCPT TO, dan DATA sebelum menunggu respons.
SeNow that the DATA command has been sent we can start sending the message contents. Ini dimulai dengan berbagai header. Setidaknya sebuah pesan harus mengandung to, from, subject, dan header tanggal. Header yang dimasukkan di sini akan ditampilkan kepada pengguna di klien email mereka.
From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400
Dengan header yang diatur, kita sekarang menambahkan satu baris kosong dengan pengembalian carriage/feed baris (cukup tekan enter dua kali) dan kemudian kita mulai isi sebenarnya dari pesan.
Halo Dunia, Ini adalah pesan percobaan yang dikirim dari sesi telnet manual. Hormat kami, administrator SMTP
Dengan pesan selesai, kita perlu memberi tahu server SMTP bahwa kita telah selesai dengan pesan dan ingin server email SMTP menerimanya. Ini dilakukan dengan titik di baris itu sendiri. Jika selama penulisan pesan diperlukan titik di baris itu sendiri, Anda harus menempatkan 2 titik, yang pertama menghindari yang kedua.
. 250 2.6.0 pesan diterima
Jika Anda mendapatkan pesan kesalahan alih-alih notifikasi "diberikan", catat detailnya yang relevan dan hubungi penyedia email Anda untuk mendapatkan bantuan lebih lanjut. Masalah koneksi juga mungkin terkait dengan protokol keamanan - pastikan Anda menggunakan TLS 1.2 atau lebih tinggi untuk koneksi yang aman.
Terakhir, perintah QUIT dikirim untuk menutup koneksi:
QUIT 221 2.0.0 mail.port25.com mengucapkan selamat tinggal
Dengan demikian server email sekarang telah menerima pesan untuk pengiriman, tes kirim email telnet Anda selesai, dan itu seharusnya berada di kotak masuk alamat RCPT TO!!!
Berikut adalah semua perintah tanpa interupsi:
telnet mail.port25.com 25 Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready EHLO server.example.com 250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN MAIL FROM:<support@port25.com> 250 2.1.0 MAIL ok RCPT TO:<support@port25.com> 250 2.1.5 <support@port25.com> ok DATA 354 send message From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400 Hello World, This is a test message sent from a manual telnet session. Yours truly, SMTP administrator . 250 2.6.0 message received QUIT 221 2.0.0 mail.port25.com says goodbye
Mengirim email menggunakan telnet memungkinkan Anda menguji kemampuan koneksi dengan cepat dan dengan biaya yang lebih rendah daripada peralatan atau perangkat lunak diagnostik yang kuat. Untuk alat pengujian SMTP yang lebih canggih, pertimbangkan menggunakan Swaks dengan SparkPost untuk pengujian email yang komprehensif.
Kirim email melalui telnet dapat membantu Anda mengidentifikasi masalah keterkiriman dalam konfigurasi Anda saat ini.
Sebelum Anda mengirim email menggunakan telnet, pastikan telnet telah diinstal dan diaktifkan di komputer Anda. Sebagian besar komputer sudah dilengkapi dengan klien telnet bawaan. Untuk versi Windows yang tidak memilikinya, klien dapat diinstal dengan membuka bagian "Program dan Fitur" di panel kontrol dan memilih "Aktifkan atau nonaktifkan fitur Windows". Dengan jendela ini terbuka, pilih "klien telnet" dan kemudian klik OK.
Setelah klien telnet terverifikasi diinstal di server, buka jendela terminal tempat Anda akan memasukkan perintah prompt Anda. Di Windows, gunakan Windows + R, ketik "cmd", dan tekan enter. Untuk pengguna Mac, Anda akan menemukan ikon terminal dengan membuka Finder dan mencari "Utilitas" di halaman Aplikasi, atau dengan memasukkan "terminal" dalam fungsi pencarian Launchpad.
Selanjutnya, kita perlu menemukan server email untuk masuk. Untuk ini, kita akan membutuhkan catatan DNS MX untuk domain tertentu. Ini dapat ditemukan dengan perintah berikut (untuk contoh ini port25.com akan digunakan, tetapi domain apa pun dapat diganti):
Windows:
nslookup -type=mx port25.com Non-authoritative answer: port25.com MX preference = 100, mail exchanger = mail.port25.com
Linux:
nslookup -type=mx port25.com Non-authoritative answer: port25.com mail exchanger = 100 mail.port25.com
Referensi Cepat Port SMTP
Berikut adalah referensi cepat untuk port pengiriman SMTP umum dan kapan menggunakannya:
Port | Enkripsi | Kasus Penggunaan Tipikal | Catatan |
|---|---|---|---|
25 | Tidak ada / TLS Opportunistik | Relay server-ke-server | Sering diblokir oleh ISP untuk kontrol spam |
465 | SSL/TLS Implisit | Pengiriman aman warisan | Dikurangi tetapi masih digunakan oleh sistem yang lebih tua |
587 | STARTTLS | Pengiriman terautentikasi modern | Direkomendasikan untuk pengiriman email klien |
Untuk konfigurasi dan optimasi server email yang lebih lanjut, lihat panduan kami tentang tips konfigurasi PowerMTA. Jika relay SMTP Anda menggunakan port yang berbeda dari 25 seperti yang ditunjukkan dalam contoh, Anda akan menggunakan port yang ditentukan oleh respons server pertukaran email ke nslookup. Anda juga dapat memverifikasi port yang digunakan SMTP Anda dengan menanyakan kepada administrator Anda atau masuk ke server pertukaran email dan meninjau protokolnya.
Selanjutnya kita perlu DNS PTR untuk IP yang akan kita gunakan. Pertama, kita perlu tahu alamat IP apa yang dilihat internet seolah-olah kita memilikinya. Untuk menemukannya kita dapat menggunakan situs web seperti:
Dengan alamat IP jalankan perintah berikut, di mana A.B.C.D adalah alamat IP.
Windows:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
Linux:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
server.example.com hanyalah contoh, dan hasil Anda akan berbeda.
Jadi sekarang kita telah mendapatkan catatan MX untuk port25.com dan PTR untuk IP yang akan kita gunakan, saatnya untuk masuk ke server SMTP. Untuk melakukannya, gunakan perintah berikut:
telnet mail.port25.com 25
Sesomething yang mirip dengan berikut sekarang harus ditampilkan:
Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready
Jika Anda menerima pesan kesalahan seperti "tidak dapat terhubung" pada saat ini, entah nomor portnya benar atau server email sedang menghadapi masalah.
Perintah pertama yang perlu kita berikan kepada server email untuk penguji email SMTP kita adalah EHLO atau HELO. Ini adalah salam dasar yang memulai komunikasi antara klien telnet dan server SMTP. Juga dikirim adalah DNS PTR untuk alamat IP tempat kita terhubung seperti yang ditentukan sebelumnya.
EHLO server.example.com
Sesuatu yang mirip dengan berikut harus dikembalikan:
250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN
Ini menunjukkan perintah SMTP yang diterima oleh server SMTP. Tidak semua server SMTP mendukung satu set perintah yang sama. Misalnya, yahoo hanya menunjukkan berikut:
250-8BITMIME 250-SIZE 41943040 250 PIPELINING
Dan aol hanya menunjukkan satu dengan:
250 DSN
Perintah berikutnya yang perlu kita berikan adalah perintah MAIL FROM. Ini menentukan alamat tempat pengembalian dikirim. Ini tidak sama dengan header dari, yaitu alamat email yang ditampilkan di klien email.
MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok
Pastikan Anda menggunakan nama domain yang sesuai dengan domain server email Anda. Misalnya, jika domain email Anda adalah anycompany.com, Anda harus menggunakan you@anycompany.com alih-alih alamat email eksternal seperti you@free-mail-provider.com. Variasi dalam nama domain dapat menyebabkan pesan kesalahan muncul.
Sekarang setelah perintah MAIL FROM telah dikirim, kita dapat mengirim perintah RCPT TO . Perintah ini memberi tahu server email SMTP kepada siapa pesan harus dikirim. Ini dapat sama atau berbeda dari header ke, yaitu alamat email yang ditampilkan di klien email.
RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> ok
Periksa kembali alamat penerima Anda sebelum mengirim perintah RCPT TO — pesan kesalahan yang muncul di sini dapat menunjukkan bahwa alamat email penerima salah eja atau diblokir.
Perintah terakhir yang dijalankan sebelum memulai isi pesan adalah perintah DATA . Perintah ini memberi tahu server email SMTP bahwa semua yang akan dikirim selanjutnya adalah isi pesan (yang juga berisi header).
DATA 354 kirim pesan
Penting untuk dicatat bahwa jika server email mendukung PIPELINING, seperti mail.port25.com, server email SMTP mungkin menunggu hingga perintah DATA dikeluarkan sebelum merespons perintah lainnya setelah EHLO/HELO. Dalam hal ini, masukkan perintah MAIL FROM, RCPT TO, dan DATA sebelum menunggu respons.
SeNow that the DATA command has been sent we can start sending the message contents. Ini dimulai dengan berbagai header. Setidaknya sebuah pesan harus mengandung to, from, subject, dan header tanggal. Header yang dimasukkan di sini akan ditampilkan kepada pengguna di klien email mereka.
From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400
Dengan header yang diatur, kita sekarang menambahkan satu baris kosong dengan pengembalian carriage/feed baris (cukup tekan enter dua kali) dan kemudian kita mulai isi sebenarnya dari pesan.
Halo Dunia, Ini adalah pesan percobaan yang dikirim dari sesi telnet manual. Hormat kami, administrator SMTP
Dengan pesan selesai, kita perlu memberi tahu server SMTP bahwa kita telah selesai dengan pesan dan ingin server email SMTP menerimanya. Ini dilakukan dengan titik di baris itu sendiri. Jika selama penulisan pesan diperlukan titik di baris itu sendiri, Anda harus menempatkan 2 titik, yang pertama menghindari yang kedua.
. 250 2.6.0 pesan diterima
Jika Anda mendapatkan pesan kesalahan alih-alih notifikasi "diberikan", catat detailnya yang relevan dan hubungi penyedia email Anda untuk mendapatkan bantuan lebih lanjut. Masalah koneksi juga mungkin terkait dengan protokol keamanan - pastikan Anda menggunakan TLS 1.2 atau lebih tinggi untuk koneksi yang aman.
Terakhir, perintah QUIT dikirim untuk menutup koneksi:
QUIT 221 2.0.0 mail.port25.com mengucapkan selamat tinggal
Dengan demikian server email sekarang telah menerima pesan untuk pengiriman, tes kirim email telnet Anda selesai, dan itu seharusnya berada di kotak masuk alamat RCPT TO!!!
Berikut adalah semua perintah tanpa interupsi:
telnet mail.port25.com 25 Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready EHLO server.example.com 250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN MAIL FROM:<support@port25.com> 250 2.1.0 MAIL ok RCPT TO:<support@port25.com> 250 2.1.5 <support@port25.com> ok DATA 354 send message From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400 Hello World, This is a test message sent from a manual telnet session. Yours truly, SMTP administrator . 250 2.6.0 message received QUIT 221 2.0.0 mail.port25.com says goodbye
Mengirim email menggunakan telnet memungkinkan Anda menguji kemampuan koneksi dengan cepat dan dengan biaya yang lebih rendah daripada peralatan atau perangkat lunak diagnostik yang kuat. Untuk alat pengujian SMTP yang lebih canggih, pertimbangkan menggunakan Swaks dengan SparkPost untuk pengujian email yang komprehensif.
Kirim email melalui telnet dapat membantu Anda mengidentifikasi masalah keterkiriman dalam konfigurasi Anda saat ini.
Sebelum Anda mengirim email menggunakan telnet, pastikan telnet telah diinstal dan diaktifkan di komputer Anda. Sebagian besar komputer sudah dilengkapi dengan klien telnet bawaan. Untuk versi Windows yang tidak memilikinya, klien dapat diinstal dengan membuka bagian "Program dan Fitur" di panel kontrol dan memilih "Aktifkan atau nonaktifkan fitur Windows". Dengan jendela ini terbuka, pilih "klien telnet" dan kemudian klik OK.
Setelah klien telnet terverifikasi diinstal di server, buka jendela terminal tempat Anda akan memasukkan perintah prompt Anda. Di Windows, gunakan Windows + R, ketik "cmd", dan tekan enter. Untuk pengguna Mac, Anda akan menemukan ikon terminal dengan membuka Finder dan mencari "Utilitas" di halaman Aplikasi, atau dengan memasukkan "terminal" dalam fungsi pencarian Launchpad.
Selanjutnya, kita perlu menemukan server email untuk masuk. Untuk ini, kita akan membutuhkan catatan DNS MX untuk domain tertentu. Ini dapat ditemukan dengan perintah berikut (untuk contoh ini port25.com akan digunakan, tetapi domain apa pun dapat diganti):
Windows:
nslookup -type=mx port25.com Non-authoritative answer: port25.com MX preference = 100, mail exchanger = mail.port25.com
Linux:
nslookup -type=mx port25.com Non-authoritative answer: port25.com mail exchanger = 100 mail.port25.com
Referensi Cepat Port SMTP
Berikut adalah referensi cepat untuk port pengiriman SMTP umum dan kapan menggunakannya:
Port | Enkripsi | Kasus Penggunaan Tipikal | Catatan |
|---|---|---|---|
25 | Tidak ada / TLS Opportunistik | Relay server-ke-server | Sering diblokir oleh ISP untuk kontrol spam |
465 | SSL/TLS Implisit | Pengiriman aman warisan | Dikurangi tetapi masih digunakan oleh sistem yang lebih tua |
587 | STARTTLS | Pengiriman terautentikasi modern | Direkomendasikan untuk pengiriman email klien |
Untuk konfigurasi dan optimasi server email yang lebih lanjut, lihat panduan kami tentang tips konfigurasi PowerMTA. Jika relay SMTP Anda menggunakan port yang berbeda dari 25 seperti yang ditunjukkan dalam contoh, Anda akan menggunakan port yang ditentukan oleh respons server pertukaran email ke nslookup. Anda juga dapat memverifikasi port yang digunakan SMTP Anda dengan menanyakan kepada administrator Anda atau masuk ke server pertukaran email dan meninjau protokolnya.
Selanjutnya kita perlu DNS PTR untuk IP yang akan kita gunakan. Pertama, kita perlu tahu alamat IP apa yang dilihat internet seolah-olah kita memilikinya. Untuk menemukannya kita dapat menggunakan situs web seperti:
Dengan alamat IP jalankan perintah berikut, di mana A.B.C.D adalah alamat IP.
Windows:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
Linux:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
server.example.com hanyalah contoh, dan hasil Anda akan berbeda.
Jadi sekarang kita telah mendapatkan catatan MX untuk port25.com dan PTR untuk IP yang akan kita gunakan, saatnya untuk masuk ke server SMTP. Untuk melakukannya, gunakan perintah berikut:
telnet mail.port25.com 25
Sesomething yang mirip dengan berikut sekarang harus ditampilkan:
Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready
Jika Anda menerima pesan kesalahan seperti "tidak dapat terhubung" pada saat ini, entah nomor portnya benar atau server email sedang menghadapi masalah.
Perintah pertama yang perlu kita berikan kepada server email untuk penguji email SMTP kita adalah EHLO atau HELO. Ini adalah salam dasar yang memulai komunikasi antara klien telnet dan server SMTP. Juga dikirim adalah DNS PTR untuk alamat IP tempat kita terhubung seperti yang ditentukan sebelumnya.
EHLO server.example.com
Sesuatu yang mirip dengan berikut harus dikembalikan:
250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN
Ini menunjukkan perintah SMTP yang diterima oleh server SMTP. Tidak semua server SMTP mendukung satu set perintah yang sama. Misalnya, yahoo hanya menunjukkan berikut:
250-8BITMIME 250-SIZE 41943040 250 PIPELINING
Dan aol hanya menunjukkan satu dengan:
250 DSN
Perintah berikutnya yang perlu kita berikan adalah perintah MAIL FROM. Ini menentukan alamat tempat pengembalian dikirim. Ini tidak sama dengan header dari, yaitu alamat email yang ditampilkan di klien email.
MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok
Pastikan Anda menggunakan nama domain yang sesuai dengan domain server email Anda. Misalnya, jika domain email Anda adalah anycompany.com, Anda harus menggunakan you@anycompany.com alih-alih alamat email eksternal seperti you@free-mail-provider.com. Variasi dalam nama domain dapat menyebabkan pesan kesalahan muncul.
Sekarang setelah perintah MAIL FROM telah dikirim, kita dapat mengirim perintah RCPT TO . Perintah ini memberi tahu server email SMTP kepada siapa pesan harus dikirim. Ini dapat sama atau berbeda dari header ke, yaitu alamat email yang ditampilkan di klien email.
RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> ok
Periksa kembali alamat penerima Anda sebelum mengirim perintah RCPT TO — pesan kesalahan yang muncul di sini dapat menunjukkan bahwa alamat email penerima salah eja atau diblokir.
Perintah terakhir yang dijalankan sebelum memulai isi pesan adalah perintah DATA . Perintah ini memberi tahu server email SMTP bahwa semua yang akan dikirim selanjutnya adalah isi pesan (yang juga berisi header).
DATA 354 kirim pesan
Penting untuk dicatat bahwa jika server email mendukung PIPELINING, seperti mail.port25.com, server email SMTP mungkin menunggu hingga perintah DATA dikeluarkan sebelum merespons perintah lainnya setelah EHLO/HELO. Dalam hal ini, masukkan perintah MAIL FROM, RCPT TO, dan DATA sebelum menunggu respons.
SeNow that the DATA command has been sent we can start sending the message contents. Ini dimulai dengan berbagai header. Setidaknya sebuah pesan harus mengandung to, from, subject, dan header tanggal. Header yang dimasukkan di sini akan ditampilkan kepada pengguna di klien email mereka.
From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400
Dengan header yang diatur, kita sekarang menambahkan satu baris kosong dengan pengembalian carriage/feed baris (cukup tekan enter dua kali) dan kemudian kita mulai isi sebenarnya dari pesan.
Halo Dunia, Ini adalah pesan percobaan yang dikirim dari sesi telnet manual. Hormat kami, administrator SMTP
Dengan pesan selesai, kita perlu memberi tahu server SMTP bahwa kita telah selesai dengan pesan dan ingin server email SMTP menerimanya. Ini dilakukan dengan titik di baris itu sendiri. Jika selama penulisan pesan diperlukan titik di baris itu sendiri, Anda harus menempatkan 2 titik, yang pertama menghindari yang kedua.
. 250 2.6.0 pesan diterima
Jika Anda mendapatkan pesan kesalahan alih-alih notifikasi "diberikan", catat detailnya yang relevan dan hubungi penyedia email Anda untuk mendapatkan bantuan lebih lanjut. Masalah koneksi juga mungkin terkait dengan protokol keamanan - pastikan Anda menggunakan TLS 1.2 atau lebih tinggi untuk koneksi yang aman.
Terakhir, perintah QUIT dikirim untuk menutup koneksi:
QUIT 221 2.0.0 mail.port25.com mengucapkan selamat tinggal
Dengan demikian server email sekarang telah menerima pesan untuk pengiriman, tes kirim email telnet Anda selesai, dan itu seharusnya berada di kotak masuk alamat RCPT TO!!!
Berikut adalah semua perintah tanpa interupsi:
telnet mail.port25.com 25 Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready EHLO server.example.com 250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN MAIL FROM:<support@port25.com> 250 2.1.0 MAIL ok RCPT TO:<support@port25.com> 250 2.1.5 <support@port25.com> ok DATA 354 send message From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400 Hello World, This is a test message sent from a manual telnet session. Yours truly, SMTP administrator . 250 2.6.0 message received QUIT 221 2.0.0 mail.port25.com says goodbye
Mengirim email menggunakan telnet memungkinkan Anda menguji kemampuan koneksi dengan cepat dan dengan biaya yang lebih rendah daripada peralatan atau perangkat lunak diagnostik yang kuat. Untuk alat pengujian SMTP yang lebih canggih, pertimbangkan menggunakan Swaks dengan SparkPost untuk pengujian email yang komprehensif.
Bagaimana Saya Menguji SMTP Menggunakan Otentikasi Telnet?
Sekarang setelah Anda mengetahui cara memeriksa koneksi SMTP menggunakan telnet, kita akan membahas prosedur otentikasi. Otentikasi SMTP membantu mencegah sejumlah besar spam masuk ke kotak masuk pembaca, meskipun tidak semua server pertukaran email membutuhkannya. Memahami otentikasi juga sangat penting saat menganalisis header email untuk pemecahan masalah pengiriman.
Perbedaan utama dalam protokol otentikasi modern adalah adanya encoding base64. Base64 mengubah data biner menjadi format teks ASCII yang diperlukan oleh server email untuk pengiriman data yang sukses. Ini adalah cara untuk merepresentasikan kredensial login Anda — beberapa kombinasi teks — dalam format numerik yang dapat dipahami komputer.
Anda dapat menghasilkan base64 Anda menggunakan perangkat lunak atau alat online gratis. Setelah Anda mengkomunikasikan informasi ini ke server email, server akan membandingkan data ini dengan catatannya untuk menentukan otentikasi.
Untuk menguji otentikasi SMTP melalui telnet, lakukan langkah-langkah berikut:
Buka terminal dan sambungkan dengan server email menggunakan nama server telnet dan perintah akses — mail.port25.com dalam contoh di atas.
Sapa server dengan EHLO atau HELO, masukkan AUTH LOGIN, dan tunggu respons dari komputer.
Masukkan nama pengguna yang telah di-encode dengan base64 dan biarkan server menjawab.
Masukkan kata sandi yang telah di-encode dengan base64, dan Anda seharusnya menerima respons seperti “otentikasi berhasil.”
Teruskan dengan MAIL FROM, RCPT TO, DATA, dan QUIT untuk mengirim email otentikasi Anda.
Sekarang setelah Anda mengetahui cara memeriksa koneksi SMTP menggunakan telnet, kita akan membahas prosedur otentikasi. Otentikasi SMTP membantu mencegah sejumlah besar spam masuk ke kotak masuk pembaca, meskipun tidak semua server pertukaran email membutuhkannya. Memahami otentikasi juga sangat penting saat menganalisis header email untuk pemecahan masalah pengiriman.
Perbedaan utama dalam protokol otentikasi modern adalah adanya encoding base64. Base64 mengubah data biner menjadi format teks ASCII yang diperlukan oleh server email untuk pengiriman data yang sukses. Ini adalah cara untuk merepresentasikan kredensial login Anda — beberapa kombinasi teks — dalam format numerik yang dapat dipahami komputer.
Anda dapat menghasilkan base64 Anda menggunakan perangkat lunak atau alat online gratis. Setelah Anda mengkomunikasikan informasi ini ke server email, server akan membandingkan data ini dengan catatannya untuk menentukan otentikasi.
Untuk menguji otentikasi SMTP melalui telnet, lakukan langkah-langkah berikut:
Buka terminal dan sambungkan dengan server email menggunakan nama server telnet dan perintah akses — mail.port25.com dalam contoh di atas.
Sapa server dengan EHLO atau HELO, masukkan AUTH LOGIN, dan tunggu respons dari komputer.
Masukkan nama pengguna yang telah di-encode dengan base64 dan biarkan server menjawab.
Masukkan kata sandi yang telah di-encode dengan base64, dan Anda seharusnya menerima respons seperti “otentikasi berhasil.”
Teruskan dengan MAIL FROM, RCPT TO, DATA, dan QUIT untuk mengirim email otentikasi Anda.
Sekarang setelah Anda mengetahui cara memeriksa koneksi SMTP menggunakan telnet, kita akan membahas prosedur otentikasi. Otentikasi SMTP membantu mencegah sejumlah besar spam masuk ke kotak masuk pembaca, meskipun tidak semua server pertukaran email membutuhkannya. Memahami otentikasi juga sangat penting saat menganalisis header email untuk pemecahan masalah pengiriman.
Perbedaan utama dalam protokol otentikasi modern adalah adanya encoding base64. Base64 mengubah data biner menjadi format teks ASCII yang diperlukan oleh server email untuk pengiriman data yang sukses. Ini adalah cara untuk merepresentasikan kredensial login Anda — beberapa kombinasi teks — dalam format numerik yang dapat dipahami komputer.
Anda dapat menghasilkan base64 Anda menggunakan perangkat lunak atau alat online gratis. Setelah Anda mengkomunikasikan informasi ini ke server email, server akan membandingkan data ini dengan catatannya untuk menentukan otentikasi.
Untuk menguji otentikasi SMTP melalui telnet, lakukan langkah-langkah berikut:
Buka terminal dan sambungkan dengan server email menggunakan nama server telnet dan perintah akses — mail.port25.com dalam contoh di atas.
Sapa server dengan EHLO atau HELO, masukkan AUTH LOGIN, dan tunggu respons dari komputer.
Masukkan nama pengguna yang telah di-encode dengan base64 dan biarkan server menjawab.
Masukkan kata sandi yang telah di-encode dengan base64, dan Anda seharusnya menerima respons seperti “otentikasi berhasil.”
Teruskan dengan MAIL FROM, RCPT TO, DATA, dan QUIT untuk mengirim email otentikasi Anda.



