Bagaimana cara mengirim surat dari baris perintah?
Bagaimana cara mengirim surat dari baris perintah?
Jawaban:
Cobalah untuk menginstal Klien Email Mutt . Opsi lainnya adalah menggunakan emacs dengan gnus . Pilihan lain juga tersedia ... IMHO, Anda harus menggunakan lebih banyak detail dalam pertanyaan Anda, atau beberapa jawaban berbeda untuk pertanyaan Anda, Anda akan menerima :-)
Pasang ssmtp :
sudo apt-get install ssmtp
Edit file konfigurasi ssmtp:
gksu gedit /etc/ssmtp/ssmtp.conf
Tambahkan teks berikut:
root=username@gmail.com
mailhub=smtp.gmail.com:465
rewriteDomain=gmail.com
AuthUser=username
AuthPass=password
FromLineOverride=YES
UseTLS=YES
Jalankan ssmtp dan berikan alamat email penerima:
ssmtp recepient_name@gmail.com
Berikan detail pesan sebagai berikut:
To: recipient_name@gmail.com
From: username@gmail.com
Subject: Sent from a terminal!
Your content goes here. Lorem ipsum dolor sit amet, consectetur adipisicing.
(Notice the blank space between the subject and the body.)
Tekan Ctrl+ Duntuk mengirim.
Anda juga dapat memasukkan teks ke dalam file dan mengirimkannya sebagai berikut:
ssmtp recipient_name@gmail.com < filename.txt
Sebagian besar waktu Anda tidak perlu mengkonfigurasi server SMTP yang dapat Anda gunakan mail
dari commandline (jika belum ada, instal dengan sudo apt-get install mailutils
). (Atau jika Anda berada di server tempat sendmail dikonfigurasikan, dll.)
marco@dagobah:~$ mail -v marco.ceppi.use@gmail.com
Subject: Hello World!
This is an email to myself.
Hope all is well.
.
Cc:
Anda mengakhiri pesan dengan satu .
saluran. Saat itulah mail
akan meminta Anda untuk Cc:
memasukkan informasi (atau biarkan kosong) dan mail
kemudian akan mencetak informasi tambahan tentang apa yang berusaha dilakukan, serta merinci pemrosesan menghubungkan, mengirim, dan menerima data dari server mail.
sudo apt-get install mailutils
akan menginstal server SMTP postfix
, yang mungkin sedikit kelebihan berat bagi beberapa orang.
apt-get install libio-socket-ssl-perl libnet-ssleay-perl sendemail
pemakaian:
sendemail -f fromuser@gmail.com -t touser@domain.com -u subject -m "message" -s smtp.gmail.com:587 -o tls=yes -xu gmailaccount@gmail.com -xp gmailpassword
Jika Anda tidak ingin menentukan kata sandi di baris perintah (umumnya bukan hal yang baik untuk dilakukan), Anda dapat menghilangkan parameter itu dan mengirim email akan meminta kata sandi ... dan menampilkannya di layar, tetapi setidaknya itu tidak akan ada dalam sejarah baris perintah Anda.
sendmail
kepastian yang sangat praktis. Terima kasih.
-s smtp.gmail.com:587
.
pass=$(cat my_password); sendemail... -xp $name ...
dan tentu saja jika Anda memanggilnya secara terprogram Anda dapat melakukan sesuatu yang serupa, mis: ruby system("sendemail ... -xp #{File.read 'my_password'}...")
juga mungkin gagal pertama kali, Anda harus mendapatkan email ke akun itu yang menyarankan Anda "mengaktifkan aplikasi yang kurang aman" maka itu bisa berfungsi.
Anda memerlukan MTA untuk mengirim email. Untuk ini, gunakan postfix:
sudo apt-get install postfix
Untuk mengirim email:
echo "test message" | mailx -s 'test subject' myemail@mydomain.com
mailutils
ketika saya memasukkan ini ke terminal
mail -s "subjet" -a "attchedfile_name" someone@dest_email.com
atau
cat "afile" | mail -s "subject" someone@dest_email.com
sudo apt-get install mailutils
di Ubuntu / Debian atau yum install mailx
di CentOS / Redhat
Semuanya dijelaskan di sini .
hanoo@hp_laptop% nc 127.0.0.1 25
220 hp_laptop.localdomain ESMTP Postfix
EHLO man
250 hp_laptop.localdomain
MAIL FROM: <netcat@postfix.com>
250 2.1.0 Ok
RCPT TO: <target@host.com>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
This is the body of my mail,
this is the second line...
.
250 2.0.0 Ok: queued as 9C12E7F404
swaks
dan Anda baik-baik saja dengan SSL / TLS, juga ;-)
openssl s_client -starttls smtp ...
Jika Anda mencoba mengirim e-mail dari suatu sistem, whitch tidak menjalankan server e-mail sendiri (yaitu sistem desktop), Anda perlu menginstal sesuatu seperti nullmailer atau esmtp , yang meneruskan surat lokal Anda ke surat "nyata" server.
Sebagai alat baris perintah Anda dapat menginstal mail atau mailx (paket mailutils, heirloom-mailx atau bsd-mailx). Jika Anda membutuhkan lampiran, cobalah biabam.
sudo apt-get install sharutils mailutils
uuencode filename filename | mail user@example.com
di mana filename
sama: itu singkatan dari file input dan file jarak jauh.
sudo apt-get install sharutils
untukuuencode
Anda dapat mencoba ini:
mail name@mailserver.com -s "Attached file" <<EOF
Hi
~| uuencode $HOME/filename.txt filename.txt
EOF
Ini bekerja dengan GNU Mailutils , periksa situs web untuk informasi lebih lanjut.
Jalankan :
sudo apt-get install ssmtp
sudo -H gedit /etc/ssmtp/ssmtp.conf
Berikut ini perlu ditambahkan di sana:
# The user that gets all the mails (UID < 1000, usually the admin)
root=yourusernameofgmail@gmail.com
# The mail server (where the mail is sent to), both port 465 or 587 should be acceptable
# See also https://support.google.com/mail/answer/78799
mailhub=smtp.gmail.com:587
# The address where the mail appears to come from for user authentication.
rewriteDomain=gmail.com
# Use SSL/TLS before starting negotiation
UseTLS=Yes
UseSTARTTLS=Yes
# Username/Password
AuthUser=yourusernameofgmail
AuthPass=yourGmailPassowrd
AuthMethod=LOGIN
# Email 'From header's can override the default domain?
FromLineOverride=yes
Jalankan :
sudo -H gedit /etc/ssmtp/revaliases
Masukkan di sana:
root:yourusernameofgmail@gmail.com:smtp.gmail.com:587
Aktifkan "aplikasi kurang aman" di Gmail:
https://support.google.com/accounts/answer/6010255?hl=id
Uji dengan menjalankan yang berikut ini di terminal:
echo "Body of mail is abc" | mail -s "Subject is xyz" "someusername@gmail.com"`
Selain di atas saya masih mendapatkan kesalahan ini
echo "Test message from Linux server using ssmtp" | sudo ssmtp -vvv somebody@mil.gov
[<-] 220 smtp.gmail.com ESMTP v193sm19198825qka.18 - gsmtp
[->] EHLO localhost
[<-] 250 SMTPUTF8
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
[->] EHLO localhost
[<-] 250 SMTPUTF8
[->] AUTH LOGIN
[<-] 334 VXNlcm5hbWU6
[->] aG94Z2VuZUBrrrFpbC5jb20=
[<-] 334 UGFzweliecmQ6
[<-] 534 5.7.14 https://support.google.com/mail/answer/78754 v193sm19198825qka.18 - gsmtp
ssmtp: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 v193sm19198825qka.18 - gsmtp)
SOLUSI: lakukan reset kata sandi gmail bahkan ketika kata sandi saat ini benar ... mungkin tindakan pencegahan keamanan Google