Cara Memeriksa Koneksi SMTP dengan Sesi Telnet Manual

Burung

7 Feb 2020

Email

1 min read

Cara Memeriksa Koneksi SMTP dengan Sesi Telnet Manual

Intisari Utama

    • Manual telnet testing adalah cara cepat dan sederhana untuk mendiagnosis masalah konektivitas dan konfigurasi SMTP.

    • Gunakan untuk memverifikasi apakah server SMTP dapat dijangkau, dikonfigurasi dengan benar, dan menerima koneksi.

    • Uji ini dapat mengungkapkan port yang diblokir, batasan 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, sedangkan 465 dan 587 digunakan untuk pengiriman aman.

    • Autentikasi Base64-encoded (AUTH LOGIN) diperlukan ketika server meminta kredensial login.

    • Alat seperti Swaks atau platform pengujian email terintegrasi dapat mengotomatisasi dan memperluas langkah diagnostik telnet.

Sorotan Q&A

  • Mengapa menggunakan telnet daripada alat pengujian email khusus?

    Telnet memberikan Anda visibilitas langsung ke dalam dialog SMTP mentah. Ini sangat berharga untuk pemecahan masalah pada level protokol dan mengonfirmasi respons server tanpa lapisan pihak ketiga.

  • Apa cara tercepat untuk mengetahui apakah port SMTP saya diblokir?

    Jalankan telnet mail.example.com 25. Jika Anda mendapatkan “Connection refused,” kemungkinan ISP atau host Anda memblokir port tersebut.

  • Apakah saya perlu autentikasi saat menguji dengan telnet?

    Hanya jika server email memerlukan otentikasi. Gunakan perintah AUTH LOGIN dan kirimkan nama pengguna serta kata sandi Anda yang telah dikodekan dalam Base64.

  • Dapatkah saya mengirim email lengkap melalui telnet?

    Ya. Setelah DATA, tambahkan header dan isi Anda, akhiri dengan satu titik (.) di barisnya sendiri, lalu ketik QUIT.

  • Apakah telnet aman untuk pengujian SMTP?

    Tidak. Telnet mentransmisikan data dalam teks biasa. Gunakan hanya untuk pengujian di lingkungan yang aman dan terkendali. Untuk koneksi yang aman, uji melalui TLS menggunakan alat yang mendukung STARTTLS.

Di dunia email, ada banyak aspek untuk pengujian, tetapi salah satu tes paling dasar yang bisa Anda lakukan adalah dengan sederhana telnet ke server SMTP tertentu. Pemeriksaan SMTP ini berguna untuk menentukan apakah masalah paling dasar ada atau tidak.

Di dunia email, ada banyak aspek untuk pengujian, tetapi salah satu pengujian paling dasar yang dapat Anda lakukan adalah dengan sederhana telnet ke server SMTP tertentu.  Pemeriksaan SMTP ini berguna untuk menentukan apakah masalah paling dasar ada atau tidak.

  • Apakah server aktif?

  • Apakah ada firewall yang memblokir komunikasi?

  • Apakah server email memungkinkan relai dari domain/alamat email tertentu?

  • Perintah SMTP apa yang didukung oleh server email?

  • Apakah server merespons dengan nama host yang benar?

  • Apakah koneksi bekerja di luar perangkat lunak pihak ketiga atau APIs?

Semua pertanyaan ini dan lebih banyak lagi dapat dijawab dengan tes telnet sederhana.

Sebelum kita mulai, pastikan untuk membuka artikel pendamping untuk posting ini: Ke Mana 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) dibahas dalam bagian 4.1 dari RFC 2821.

Bagaimana Cara Mengirim Email Menggunakan Telnet?

Mengirim email melalui telnet dapat membantu mengidentifikasi masalah pengiriman pada konfigurasi Anda saat ini.

Sebelum Anda mengirim email menggunakan telnet, pastikan telnet sudah terpasang dan diaktifkan pada komputer Anda. Sebagian besar komputer sudah dilengkapi dengan klien telnet. Untuk versi Windows yang tidak memiliki, dapat diinstal dengan membuka bagian “Programs and Features” pada control panel dan memilih “Turn Windows features on or off”. Setelah jendela ini terbuka, pilih “telnet client” dan kemudian klik OK.

Setelah klien telnet terverifikasi terpasang di server, buka jendela terminal tempat Anda akan memasukkan perintah prompt Anda. Pada Windows, gunakan Windows + R, ketik “cmd”, dan tekan enter. Untuk pengguna Mac, Anda dapat menemukan ikon terminal dengan membuka Finder dan mencari “Utilities” di halaman Applications, atau dengan memasukkan “terminal” dalam fungsi pencarian Launchpad.

Selanjutnya, kita perlu menemukan server mail untuk masuk. Untuk ini, kita memerlukan rekaman DNS MX untuk domain tertentu. Ini dapat ditemukan dengan perintah berikut (untuk contoh ini digunakan port25.com, tetapi domain mana pun dapat digunakan):

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

SMTP menggunakan salah satu dari tiga port — 25, 465, atau 587, yang biasanya digunakan oleh Microsoft Outlook. Untuk konfigurasi server mail yang lebih lanjut dan optimasi, lihat panduan kami tentang konfigurasi PowerMTA. Jika relai SMTP Anda menggunakan port lain selain 25 seperti yang ditunjukkan dalam contoh, Anda harus menggunakan port yang ditentukan oleh tanggapan server pertukaran surat terhadap nslookup. Anda juga dapat memverifikasi port yang digunakan SMTP Anda dengan menanyakan kepada administrator Anda atau masuk ke server pertukaran surat dan meninjau protokol.

Selanjutnya kita memerlukan DNS PTR untuk IP yang akan kita gunakan. Pertama-tama kita perlu mengetahui alamat IP apa yang dilihat oleh internet. Untuk menemukannya kita dapat menggunakan situs web seperti:

http://whatismyipaddress.com/

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 hanya sebagai contoh, dan hasil Anda mungkin berbeda.

Jadi sekarang kita memiliki rekaman 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

Sesuatu yang mirip dengan berikut ini sekarang akan 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 “cannot connect” pada titik ini, mungkin nomor portnya salah atau server email menghadapi masalah.

Perintah pertama yang perlu kita berikan ke server email untuk pengujian email SMTP kami adalah EHLO atau HELO. Ini adalah sapaan dasar yang memulai komunikasi antara klien telnet dan server SMTP. Juga diteruskan adalah DNS PTR untuk alamat IP dari mana kita menghubungkan seperti yang ditentukan sebelumnya.

EHLO server.example.com

Sesuatu yang mirip dengan berikut ini 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 server SMTP. Tidak semua server SMTP mendukung set perintah yang sama. Misalnya, yahoo hanya menunjukkan yang 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 ke mana bounces dikirim. Ini tidak sama dengan header from, yang merupakan alamat email yang ditampilkan dalam klien email.

MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok

Pastikan Anda menggunakan nama domain yang sesuai dengan domain server mail Anda. Misalnya, jika domain email Anda adalah anycompany.com, Anda harus menggunakan you@anycompany.com, bukan email luar seperti you@free-mail-provider.com. Variasi dalam nama domain dapat menyebabkan pesan kesalahan muncul.

Setelah perintah MAIL FROM dikirim, kita dapat mengirim perintah RCPT TO. Perintah ini memberi tahu server mail SMTP kepada siapa pesan harus dikirim. Ini bisa sama atau berbeda dari header to, yang merupakan alamat email yang ditampilkan dalam 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 penerima email yang salah ketik atau diblokir.

Perintah terakhir yang dijalankan sebelum memulai isi pesan adalah perintah DATA. Perintah ini memberi tahu server mail SMTP bahwa semua yang akan dikirim adalah isi pesan (yang juga berisi header).

DATA 354 send message

Penting untuk dicatat bahwa jika server mail mendukung PIPELINING, seperti yang dilakukan oleh mail.port25.com, server mail SMTP mungkin menunggu hingga perintah DATA diberikan sebelum menanggapi perintah lain setelah EHLO/HELO. Dalam kasus ini, masukkan perintah MAIL FROM, RCPT TO, dan DATA sebelum menunggu respons.

Setelah perintah DATA dikirim, kita dapat mulai mengirim isi pesan. Ini dimulai dengan berbagai header. Setidaknya pesan harus mengandung header to, from, subject, dan date. Header yang dimasukkan di sini akan ditampilkan kepada pengguna dalam 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 sudah diatur, kita sekarang menambahkan satu baris kosong dengan carriage return/line feed (cukup tekan enter dua kali) dan kemudian kita mulai dengan isi pesan yang sebenarnya.

Halo Dunia, Ini adalah pesan uji yang dikirim dari sesi telnet manual. Salam hormat, administrator SMTP

Dengan pesan selesai, kita perlu memberi tahu server SMTP bahwa kita sudah selesai dengan pesan dan ingin server mail SMTP menerimanya. Ini dilakukan dengan periode pada barisnya sendiri. Jika selama penulisan pesan diperlukan periode pada barisnya sendiri, Anda harus memasukkan 2 periode, yang pertama meloloskan yang kedua.

.   250 2.6.0 message received

Jika Anda mendapatkan pesan kesalahan alih-alih notifikasi “received”, log detail yang relevan dan hubungi penyedia email Anda untuk mendapatkan bantuan lebih lanjut. Masalah koneksi mungkin juga 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 says goodbye

Dengan demikian server mail kini telah menerima pesan untuk pengiriman, pengujian kirim email telnet Anda selesai, dan seharusnya sudah di Inbox alamat RCPT TO!!!

Berikut semua perintah tanpa gangguan:

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 biaya lebih rendah dibandingkan dengan peralatan diagnostik atau perangkat lunak yang canggih. Untuk alat uji SMTP yang lebih lanjut, pertimbangkan menggunakan Swaks dengan SparkPost untuk pengujian email yang komprehensif.

Bagaimana Cara Menguji SMTP Menggunakan Telnet Authentication?

Sekarang setelah Anda tahu cara memeriksa koneksi SMTP dengan telnet, kami akan membahas prosedur otentikasi. Otentikasi SMTP membantu mencegah jumlah besar spam mencapai kotak masuk pembaca, meskipun tidak semua server pertukaran surat memerlukannya. Memahami otentikasi juga penting ketika menganalisis header email untuk pemecahan masalah deliverability.

Perbedaan utama dalam protokol otentikasi modern adalah keberadaan encoding base64. Base64 mengubah data biner menjadi format teks ASCII yang diperlukan oleh server surat untuk transmisi data yang sukses. Ini adalah cara mewakili kredensial login Anda — beberapa kombinasi teks — dalam format numerik yang dapat dipahami komputer.

Anda dapat menghasilkan base64 Anda sendiri menggunakan perangkat lunak atau alat online gratis. Setelah Anda mengkomunikasikan informasi ke server surat, server membandingkan data ini dengan catatannya untuk menentukan otentikasi.

Untuk menguji otentikasi SMTP melalui telnet, selesaikan langkah-langkah berikut:

  • Buka terminal dan hubungkan dengan server surat 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 komputer.

  • Masukkan nama pengguna yang dikodekan base64 dan biarkan server menjawab.

  • Masukkan kata sandi yang dikodekan base64, dan Anda seharusnya menerima respons seperti "authentication succeeded."

  • Lanjutkan dengan MAIL FROM, RCPT TO, DATA, dan QUIT untuk mengirim email yang terotentikasi.

Sekarang setelah Anda tahu cara memeriksa koneksi SMTP dengan telnet, kami akan membahas prosedur otentikasi. Otentikasi SMTP membantu mencegah jumlah besar spam mencapai kotak masuk pembaca, meskipun tidak semua server pertukaran surat memerlukannya. Memahami otentikasi juga penting ketika menganalisis header email untuk pemecahan masalah deliverability.

Perbedaan utama dalam protokol otentikasi modern adalah keberadaan encoding base64. Base64 mengubah data biner menjadi format teks ASCII yang diperlukan oleh server surat untuk transmisi data yang sukses. Ini adalah cara mewakili kredensial login Anda — beberapa kombinasi teks — dalam format numerik yang dapat dipahami komputer.

Anda dapat menghasilkan base64 Anda sendiri menggunakan perangkat lunak atau alat online gratis. Setelah Anda mengkomunikasikan informasi ke server surat, server membandingkan data ini dengan catatannya untuk menentukan otentikasi.

Untuk menguji otentikasi SMTP melalui telnet, selesaikan langkah-langkah berikut:

  • Buka terminal dan hubungkan dengan server surat 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 komputer.

  • Masukkan nama pengguna yang dikodekan base64 dan biarkan server menjawab.

  • Masukkan kata sandi yang dikodekan base64, dan Anda seharusnya menerima respons seperti "authentication succeeded."

  • Lanjutkan dengan MAIL FROM, RCPT TO, DATA, dan QUIT untuk mengirim email yang terotentikasi.

Sekarang setelah Anda tahu cara memeriksa koneksi SMTP dengan telnet, kami akan membahas prosedur otentikasi. Otentikasi SMTP membantu mencegah jumlah besar spam mencapai kotak masuk pembaca, meskipun tidak semua server pertukaran surat memerlukannya. Memahami otentikasi juga penting ketika menganalisis header email untuk pemecahan masalah deliverability.

Perbedaan utama dalam protokol otentikasi modern adalah keberadaan encoding base64. Base64 mengubah data biner menjadi format teks ASCII yang diperlukan oleh server surat untuk transmisi data yang sukses. Ini adalah cara mewakili kredensial login Anda — beberapa kombinasi teks — dalam format numerik yang dapat dipahami komputer.

Anda dapat menghasilkan base64 Anda sendiri menggunakan perangkat lunak atau alat online gratis. Setelah Anda mengkomunikasikan informasi ke server surat, server membandingkan data ini dengan catatannya untuk menentukan otentikasi.

Untuk menguji otentikasi SMTP melalui telnet, selesaikan langkah-langkah berikut:

  • Buka terminal dan hubungkan dengan server surat 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 komputer.

  • Masukkan nama pengguna yang dikodekan base64 dan biarkan server menjawab.

  • Masukkan kata sandi yang dikodekan base64, dan Anda seharusnya menerima respons seperti "authentication succeeded."

  • Lanjutkan dengan MAIL FROM, RCPT TO, DATA, dan QUIT untuk mengirim email yang terotentikasi.

Berita lainnya

Baca lebih lanjut dari kategori ini

A person is standing at a desk while typing on a laptop.

Platform AI-native lengkap yang dapat beradaptasi dengan pertumbuhan bisnis Anda.

© 2025 Bird

A person is standing at a desk while typing on a laptop.

Platform AI-native lengkap yang dapat beradaptasi dengan pertumbuhan bisnis Anda.

© 2025 Bird