Bagaimana cara mengirim email dari server Ubuntu?

13

Yang harus saya lakukan adalah mengirim email dari Ubuntu. Cara termudah yang saya temukan adalah menggunakan Thunderbird dan menautkan alamat email asli saya ([email protected]) ke akun Thunderbird. Saya dapat dengan sukses menerima email dan mengunduh riwayat lengkap dengan cara ini. Namun, saya tidak bisa mengirim email.

Yang ingin saya lakukan adalah mengirim e-mail langsung dari Ubuntu dan muncul sebagai user1 @ localhost atau yang serupa.

Apakah itu mungkin? Setelah membaca berbagai topik tentang ini, Tampaknya menggunakan alamat relay adalah satu-satunya cara.

Saya juga telah menginstal Postfix, dengan cara yang sama seperti yang tertulis di sana: Bagaimana cara mengatur server mail? Ketika saya diminta untuk memilih jenis instalasi, saya memilih situs Internet.

Opsi yang saya miliki:

  • Tidak ada konfigurasi;
  • Situs internet;
  • Internet dengan smarthost;
  • Sistem satelit;
  • Hanya lokal;

Ketika ditanya nama surat sistem, saya memasukkan situs web yang saya miliki: some_website.com. Saya masih belum menemukan cara mengirim email bia postfix tetapi saya berasumsi bahwa lagi relay-server akan digunakan.

Saya menjalankan Ubuntu 11.10 sebagai mesin virtual.

Saya harap pertanyaan ini masuk akal.

afaf12
sumber

Jawaban:

13

Itu tidak masuk akal karena Anda telah mengatakan, "seharusnya melakukan," seolah-olah itu adalah pekerjaan Anda. Apakah Anda menyiapkan server email nyata di dalam mesin virtual? Saya mengambil petunjuk yang berarti bahwa Anda memerlukan server virtual untuk memiliki sistem email, tetapi server virtual itu bukan server SMTP "nyata" penuh waktu. (Kalau tidak, Anda pasti sudah tahu, saya kira liar.)

Dengan pemikiran itu, Anda akan membutuhkan opsi "Internet dengan smarthost". Pada dasarnya, alasan utama adalah bahwa server SMTP yang dikonfigurasi dengan baik di seluruh dunia semuanya menggunakan langkah-langkah anti-spam; dan, di antara langkah-langkah ini adalah penolakan terhadap semua koneksi SMTP yang berasal dari kumpulan alamat dinamis yang diketahui (yang suka digunakan oleh spammer). Oleh karena itu, Anda perlu menggunakan server SMTP lain untuk surat keluar.

Jika Anda ingin tetap menggunakan Postfix untuk ini, mudah dilakukan: cukup cari artikel Ubuntu yang berkaitan dengan pengaturan Postfix sebagai smarthost. Namun, jika Anda tidak memiliki afinitas tertentu untuk satu sistem di atas yang lain, ada paket yang dirancang hanya untuk ini: ssmtp. Jadi, jika Anda ingin mencobanya, cukup instal ssmtp.

( Perhatian: tindakan di bawah ini akan menghapus postfix atau sendmail. )

sudo apt-get install ssmtp

Kemudian edit file konfigurasi ssmtp:

sudo -e /etc/ssmtp/ssmtp.conf

Saya tidak tahu detail server SMTP yang tersedia untuk Anda, jadi saya akan memberikan contoh GMail:

[email protected]
Mailhub=smtp.gmail.com:465
RewriteDomain=gmail.com
AuthUser=your_gmail_username # [email protected]
AuthPass=your_gmail_password
FromLineOverride=Yes
UseTLS=Yes

Sekarang sistem Anda akan mengirim surat seperti yang Anda inginkan. Anda dapat menggunakan localhost sebagai server email di aplikasi GUI Anda untuk server SMTP keluar. Tapi bagaimana dengan CLI? Gunakan mailperangkat lunak:

sudo apt-get install heirloom-mailx

Sekarang Anda juga dapat menggunakan email dari baris perintah dengan sesuatu seperti:

mail < filename.ascii [email protected] -s "My File"

Atau, jika Anda menggunakan mailuntuk menulis pesan yang Anda ketikkan ( mail [email protected]), maka selesaikan pesan email dengan satu periode pada baris kosong. Klien surat CLI yang lebih baik adalah muttatau pine.

Apakah ini sudut yang Anda butuhkan? Jika demikian, apakah itu berhasil?


sumber
1
Mutt mengatakan "sendmail: Tidak dapat membuka: 25" ketika saya mencoba mengirim email. ssmtp mengatakan "ssmtp: tidak bisa dibuka: 25" Saya juga bilang saya bisa mengirim email melalui Thunderbird, tapi saya pikir saya salah. Maaf tentang itu Saya mendapatkan batas waktu ketika mengirim mencoba mengirim e-mail melalui Thunderbird, dan pesan tentang port 25 saat menggunakan klien surat CLI.
afaf12
@ afaf12 periksa apakah firewall memblokir. Kesalahan batas waktu koneksi terutama terjadi karena masalah firewall.
Mughil
1
Apakah server surat jarak jauh membatasi akses ke rentang alamat tertentu, dengan konfigurasi atau firewall?
Apakah Anda perlu menggunakan pada server surat jarak jauh ini port pengiriman: 465?
Saya tidak bisa sudo /etc/init.d/ssmtp restartbekerja pada mesin saya.
Nam G VU
1

Jika Anda menggunakan Thunderbird, Anda dapat mengonfigurasi server jauh untuk SMTP. Kecuali Anda memiliki server mail sendiri, biasanya ini adalah server relai ISP Anda, atau server SMTP penyedia email Anda. Saya telah berhasil menggunakan Gmail sebagai server SMTP saya, tetapi memang membutuhkan otentikasi. (Beberapa host lain mungkin juga.)

Uji akses ke server dengan perintah telnet mail.example.com 25. Jika berfungsi, Anda akan mendapatkan pesan spanduk dari server.

Setelah Thunderbird bekerja dengan server, Anda dapat mengkonfigurasi Exim atau Postfix sebagai server satelit untuk server yang sama. Anda dapat melewati ini jika Anda tidak perlu mengirim email dari sistem dari aplikasi lain. Hati-hati, bahwa alamat sumber pada server keluar dapat menerima email.

EDIT: Pastikan Anda tidak mengaktifkan iptables dan memblokir lalu lintas keluar. Jika ya, aktifkan lalu lintas keluar di port yang Anda inginkan. Anda dapat menggunakan perintah seperti tcptraceroute mail.example.com 25untuk melihat di mana Anda diblokir. tcptracerouteharus diinstal sebelum Anda menggunakannya.

BillThor
sumber
Telnet: Tidak dapat terhubung ke host jarak jauh: waktu koneksi habis. Saya yakin bahwa server jauh dapat menerima email pada port 25. Saya telah berhasil mengirim email ke server jauh ini dari komputer lain (windows 7).
afaf12
0

Saya menguji ini pada kotak gelandangan dan bekerja dengan sempurna. Menginstal hal-hal berikut dengan menjalankan perintah

apt-get install php-pear

pear instal mail

pear instal Net_SMTP

pear instal Auth_SASL

pear instal mail_mime

Kemudian instal postfix dengan menjalankan perintah berikut

apt-get instal postfix

selama instalasi Select--

Situs Internet dan localhost menggantikan server karena kami mencoba ini di localhost

Setelah ini jalankan perintah berikut

sudo vim /etc/ssmtp/ssmtp.conf

untuk membuat perubahan pada file

buat ini diubah menjadi file ssmtp.conf

FromLineOverride = YA

[email protected]

AuthPass = pass Anda

paling penting membuat email Anda dapat diakses oleh aplikasi yang kurang aman

https://www.google.com/settings/security/lesssecureapps

dan kemudian Anda dapat menggunakan fungsi mail php atau Masukkan perintah berikut di terminal untuk mengirim email dari terminal itu sendiri

$ ssmtp [email protected]

Dari: [email protected]

UNTUK: [email protected]

Subjek: Subjek

Halo, ini email ssmtp pertamaku !.

tekan Ctrl + D dan ssmtp akan mengirim email Anda

Anda juga dapat memeriksa apakah smtp berfungsi atau tidak dari mesin Anda

ping smtp.gmail.com

- Output dari perintah ini adalah sesuatu seperti

64 byte dari sc-in-f108.1e100.net (74.125.68.108): icmp_seq = 1 ttl = 63 waktu = 68,4 ms

telnet smtp.gmail.com 587

--output harus seperti ini

Mencoba 74.125.68.108 ...

Terhubung ke gmail-smtp-msa.l.google.com.

220 smtp.gmail.com ESMTP l14sm12513264pfb.73 - gsmtp

Gopal Sharma
sumber