Masalah SMTP Amazon SES - Layanan Email Sederhana Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Masalah SMTP Amazon SES

Bagian ini berisi solusi untuk beberapa masalah umum yang terkait dengan pengiriman email melalui antarmuka Amazon SES Protokol Transfer Surat Sederhana (SMTP). Hal ini juga berisi daftar kode respons SMTP yang dikembalikan Amazon SES.

Untuk mempelajari selengkapnya tentang mengirim email melalui antarmuka Amazon SES SMTP, lihat Menggunakan SES SMTP antarmuka Amazon untuk mengirim email.

  • Anda tidak dapat terhubung ke titik akhir SMTP Amazon SES.

    Masalah menghubungkan ke titik akhir Amazon SES SMTP yang paling sering terkait dengan masalah berikut:

    • Kredensial yang salah — Kredensi yang Anda gunakan untuk terhubung ke titik akhir SMTP berbeda dari kredensil Anda. AWS Untuk mendapatkan kredensial SMTP Anda, lihat Memperoleh SES SMTP kredensi Amazon. Untuk informasi selengkapnya tentang jenis kredensial, lihat Tipe kredensial Amazon SES.

    • Masalah jaringan atau firewall - Jaringan Anda mungkin memblokir hubungan keluar melalui port tempat Anda mencoba mengirim email. Untuk menentukan apakah masalah di jaringan lokal Anda menyebabkan masalah hubungan, ketik perintah berikut di baris perintah, ganti port dengan port yang Anda coba gunakan (biasanya 465, 587, 2465, atau 2587): telnet email-smtp.us-west-2.amazonaws.com port

      Jika Anda dapat terhubung ke server SMTP menggunakan perintah ini, dan mencoba untuk terhubung ke Amazon SES menggunakan TLS Wrapper atau STARTTLS, menyelesaikan prosedur yang ditampilkan dalam Menguji koneksi Anda ke SES SMTP antarmuka Amazon menggunakan baris perintah.

      Jika Anda tidak dapat terhubung ke titik akhir Amazon SES SMTP menggunakan telnet atau openssl, hal ini menunjukkan bahwa sesuatu di jaringan Anda (seperti firewall) memblokir koneksi keluar melalui port yang sedang Anda coba gunakan. Bekerja dengan administrator jaringan Anda untuk mendiagnosis dan memperbaiki masalah.

  • Anda mengirim ke Amazon SES dari instans Amazon EC2 menggunakan port 25, dan Anda menerima kesalahan batas waktu.

    Amazon EC2 membatasi port 25 secara default. Untuk menghapus batasan ini, kirimkan Permintaan Amazon EC2 untuk Menghapus Batasan Pengiriman Email. Anda juga dapat terhubung ke Amazon SES menggunakan port 465 atau 587, yang keduanya tidak dibatasi.

  • Kesalahan jaringan menyebabkan email jatuh.

    Pastikan aplikasi Anda menggunakan logika coba lagi saat terhubung ke titik akhir SMTP Amazon SES, dan aplikasi Anda dapat mendeteksi dan mencoba lagi pengiriman pesan jika terjadi kesalahan jaringan. SMTP adalah protokol terperinci, dan mengirim email menggunakan protokol ini memerlukan beberapa jaringan berulang. Karena sifat SMTP, potensi kesalahan jaringan meningkat.

  • Anda kehilangan koneksi dengan titik akhir SMTP.

    Koneksi yang hilang paling sering disebabkan oleh masalah berikut:

    • Ukuran MTU - Jika Anda menerima pesan kesalahan waktu habis, Unit Transmisi Maksimum (MTU) antarmuka jaringan untuk komputer yang Anda gunakan untuk menghubungkan ke antarmuka SMTP Amazon SES mungkin terlalu besar. Untuk mengatasi masalah ini, atur ukuran MTU di komputer tersebut ke 1500 byte.

      Untuk informasi selengkapnya tentang menyetel ukuran MTU di sistem operasi Windows, Linux, dan macOS, lihat Pertanyaan yang Muncul Menggantung di Klien dan Jangan Mencapai Cluster di Panduan Manajemen Amazon Redshift.

      Untuk informasi selengkapnya tentang menyetel ukuran MTU untuk instans Amazon EC2, lihat Unit Transmisi Maksimum Jaringan (MTU) untuk Instans EC2 Anda di Panduan Pengguna Amazon EC2.

    • Koneksi berumur panjang - Titik akhir Amazon SES SMTP berjalan pada armada instans Amazon EC2 di belakang Elastic Load Balancer (ELB). Untuk memastikan bahwa sistem ini up-to-date toleran terhadap kesalahan, instans Amazon EC2 aktif dihentikan secara berkala dan diganti dengan instans baru. Karena aplikasi Anda terhubung ke instans Amazon EC2 melalui ELB, koneksi menjadi tidak valid ketika instans Amazon EC2 dihentikan. Anda harus membuat hubungan SMTP baru setelah Anda mengirimkan sejumlah pesan tetap melalui satu koneksi SMTP, atau jika koneksi SMTP telah aktif selama beberapa waktu. Anda perlu bereksperimen untuk menemukan ambang batas yang sesuai tergantung tempat aplikasi Anda di-hosting dan bagaimana aplikasi mengirimkan email ke Amazon SES.

  • Anda ingin mengetahui alamat IP server email Amazon SES SMTP sehingga Anda dapat mengizinkan daftar alamat IP dengan jaringan Anda.

    Alamat IP untuk titik akhir Amazon SES SMTP berada di belakang penyeimbang beban. Akibatnya, alamat IP ini sering berubah. IP tidak mungkin memberikan daftar definitif semua alamat IP untuk titik akhir Amazon SES. Kami menyarankan Anda mengizinkan daftar amazonses.com domain, daripada mengizinkan daftar alamat IP individual.

Kode respons SMTP dikembalikan oleh Amazon SES

Bagian ini berisi daftar kode respons yang dikembalikan oleh antarmuka SMTP Amazon SES.

Anda harus mencoba lagi permintaan SMTP yang menerima kesalahan 400. Kami menyarankan Anda untuk menerapkan sistem yang mencoba kembali permintaan dengan waktu tunggu yang semakin lama (misalnya, tunggu 5 detik sebelum mencoba lagi, lalu tunggu 10 detik, lalu tunggu 30 detik). Jika percobaan ketiga tidak berhasil, tunggu 20 menit, lalu ulangi prosesnya. Untuk melihat contoh penerapan yang menggunakan kebijakan percobaan ulang eksponensial, lihat Cara menangani kesalahan "Throttling - Laju pengiriman maksimum terlampaui" di Blog Olahpesan dan Penargetan AWS .

catatan

AWS SDK menerapkan logika coba lagi secara otomatis, tetapi mereka menggunakan antarmuka HTTPS alih-alih SMTP.

Jika Anda menerima pesan kesalahan 500, Anda harus merevisi permintaan Anda untuk memperbaiki masalah sebelum mengirimkan permintaan lagi. Misalnya, jika kredensi AWS otentikasi Anda tidak valid, Anda harus memperbarui aplikasi Anda untuk menggunakan kredensil yang benar sebelum Anda mengirimkan permintaan Anda lagi.

Deskripsi Kode respons Informasi selengkapnya

Autentikasi berhasil

235 Authentication successful

Klien SMTP Anda berhasil terhubung dan masuk ke server SMTP.

Pengiriman berhasil

250 Ok MessageID

MessageID adalah string karakter unik yang digunakan Amazon SES untuk mengidentifikasi pesan.

Layanan tidak tersedia

421 Too many concurrent SMTP connections

Amazon SES tidak dapat memproses permintaan karena saat ini terlalu banyak koneksi ke server SMTP.

Kesalahan pemrosesan lokal

451 Temporary service failure

Amazon SES tidak bisa memproses permintaan. Mungkin ada masalah dengan permintaan yang mencegah Amazon SES diproses.

Waktu habis

451 Timeout waiting for data from client

Terlalu banyak waktu berlalu di antara permintaan, sehingga server SMTP menutup sambungan.

Kuota pengiriman harian terlampaui

454 Throttling failure: Daily message quota exceeded

Anda telah melampaui jumlah email maksimum yang diizinkan Amazon SES untuk dikirim dalam periode 24 jam. Untuk informasi lebih lanjut, lihat Mengelola batas pengiriman Amazon SES Anda.

Laju pengiriman maksimum terlampaui

454 Throttling failure: Maximum sending rate exceeded

Anda telah melampaui jumlah email maksimum yang diizinkan Amazon SES untuk Anda kirim per detik. Untuk informasi lebih lanjut, lihat Mengelola batas pengiriman Amazon SES Anda.

Masalah Amazon SES saat memvalidasi kredensial SMTP

454 Temporary authentication failure

Masalah yang dapat menyebabkan kasus ini termasuk (namun tidak terbatas pada):

Masalah saat menerima permintaan

454 Temporary service failure

Amazon SES tidak berhasil menerima permintaan. Akibatnya, pesan tidak terkirim.

Kredensial tidak benar

530 Authentication required

Aplikasi yang Anda gunakan untuk mengirim email tidak mencoba mengautentikasi saat terhubung ke antarmuka SMTP Amazon SES.

Kredensial Autentikasi tidak valid

535 Authentication Credentials Invalid

Aplikasi yang Anda gunakan untuk mengirim email tidak memberikan kredensial SMTP yang benar untuk Amazon SES. Perhatikan bahwa kredenal SMTP Anda tidak sama dengan kredensil Anda. AWS Untuk informasi selengkapnya, lihat Memperoleh SES SMTP kredensi Amazon.

Akun tidak berlangganan Amazon SES

535 Account not subscribed to SES

Akun AWS Yang memiliki kredensi SMTP tidak mendaftar untuk Amazon SES.

Pesan terlalu panjang

552 Message is too long.

Pesan yang Anda coba kirim lebih besar dari ukuran pesan maksimum.

Akun tidak berlangganan Amazon SES

535 Account not subscribed to SES

Akun AWS Yang memiliki kredensi SMTP tidak mendaftar untuk Amazon SES.

MAIL DARI kesalahan sintaks

553 <email-address> Invalid email address

Ada kesalahan sintaks di bagian MAIL FROM dari pesan SMTP. Harap periksa apakah Anda mengikuti format yang benar dan jangan lupa untuk melampirkan alamat email di '<>'.

Kesalahan sintaks RCPT TO

553 <email-address> address unknown

Ada kesalahan sintaks di bagian RCPT TO dari pesan SMTP. Harap periksa apakah Anda mengikuti format yang benar dan jangan lupa untuk melampirkan alamat email di '<>'.

Pengguna tidak berwenang untuk memanggil titik akhir Amazon SES SMTP

554 Access denied: User UserARN is not authorized to perform ses:SendRawEmail on resource IdentityARN

Kebijakan AWS Identity and Access Management (IAM) atau kebijakan otorisasi pengiriman Amazon SES dari pengguna yang memiliki kredenal SMTP tidak diizinkan untuk memanggil titik akhir SMTP Amazon SES.

Alamat email belum diverifikasi

554 Message rejected: Email address is not verified. The following identities failed the check in region region: identity0, identity1, identity2

Anda mencoba mengirim email dari alamat email atau domain yang tidak diverifikasi untuk mengirim email dari akun Amazon SES Anda. Kesalahan ini dapat berlaku untuk alamat “Dari”, “Sumber”, “Pengirim”, atau “Jalur Kembali”. Jika akun Anda masih berada di sandbox, Anda juga harus memverifikasi setiap alamat email penerima (kecuali penerima yang disediakan oleh Simulator kotak surat Amazon SES). Jika Amazon SES tidak dapat menampilkan semua identitas yang gagal dalam pemeriksaan verifikasi, pesan kesalahan berakhir dengan tiga titik (...).

catatan

Amazon SES memiliki titik akhir di beberapa Wilayah AWS, dan status verifikasi alamat email terpisah untuk masing-masing Wilayah AWS. Anda harus menyelesaikan proses verifikasi untuk setiap pengirim Wilayah AWS yang ingin Anda gunakan.