Preduvjeti
Postupak ugradnje
Konfiguracija
Zaključak
U ovom vodiču naučit ćete kako instalirati sSMTP , jednostavan poslužitelj za prosljeđivanje.
Mailtrap.io nudi lažni poslužitelj e-pošte za programere. Koristite ga za slanje izvješća ili e-poruka tijekom faze razvoja na stvarne adrese, ali ih presretnite na Mailtrap.io (nikad se ne isporučuju konačnom primatelju) i odmah vidite kako se prikazuje vaša HTML e-pošta ili kako se ističe novi CTO gumb.
Integracijom sSMTP-a i Mailtrapa, vaš Ubuntu Development VPS može koristiti isti poslužitelj za slanje e-pošte za općenite slanje pošte, kao što je izvješćivanje o dovršetku cron posla.
Na taj način možete testirati svoju aplikaciju sa stvarnim adresama e-pošte i dobiti dojam kako se ponaša na strani klijenta, a sve to bez poplave vaših osobnih ili suradnikovih e-mail računa.
Preduvjeti
- Vultr VPS s instaliranim i ažuriranim Ubuntu 16.04.
- Mailtrap.io račun.
- Ne-root sudo korisnik .
- Uređivač teksta po vašem izboru, koristit ćemo
nano.
- Sigurnosna kopija ili snimka vaše trenutne instalacije.
Postupak ugradnje
Prijavite se na svoj VPS kao obični korisnik. Postanite administrator tako što ćete izdati sljedeće.
sudo su
Zatim to potvrdite svojom lozinkom. Instalirajte sSMTP paket za poslužiteljsku stranu s mutt-om kao klijentom e-pošte za potrebe testiranja.
apt install ssmtp mutt
Konfiguracija
Sada morate natjerati da radi s vašim mailtrapračunom.
Trebat će vam vaše vjerodajnice i imena poslužitelja. U našem slučaju poslužitelj je smtp.mailtrap.ios portom 2525.
Postoje dvije datoteke koje uređujemo. Prvo, dok ste još prijavljeni kao root, uredite konfiguracijsku datoteku.
nano /etc/ssmtp/ssmtp.conf
Prema zadanim postavkama, to izgleda kao sljedeći tekst.
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=postmaster
# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=mail
# Where will the mail seem to come from?
#rewriteDomain=
# The full hostname
hostname=example.com
# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
#FromLineOverride=YES
U ovom trenutku možete urediti unose tako da odgovaraju vašim vrijednostima ili jednostavno zamijeniti cijeli sadržaj svojim specifičnim podacima. Unosi velikim slovima sadrže vaše stvarne podatke. USERNAME@EXAMPLE.COMje e-mail s kojeg želite slati e-poruke. MAILTRAP_USERNAMEi MAILTRAP_PASSWORDgeneriraju se za vas na Mailtrap.io. Obje su duge, nasumične žice. Potražite ga u svojoj pristigloj pošti Mailtrap pod SMTP Settings.
root=USERNAME@EXAMPLE.COM
mailhub=smtp.mailtrap.io:2525
AuthUser=MAILTRAP_USERNAME
AuthPass=MAILRTRAP_PASSWORD
FromLineOverride=Yes
Spremite datoteku. S nano pritisnite " Ctrl-X" i potvrdite s " Y".
Druga datoteka koju treba urediti je za mapiranje lokalnih korisničkih računa na vanjske adrese e-pošte, obrnuto aliasing. Podignite datoteku.
nano /etc/ssmtp/revaliases
Dodajte svoje unose na kraj tako da izgleda otprilike kao ovaj tekst.
# sSMTP aliases
#
# Format: local_account:outgoing_address:mailhub
#
# Example: root:your_login@your.domain:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.
root:USERNAME@EXAMPLE.COM:smtp.mailtrap.io:2525
username:USERNAME@EXAMPLE.COM:smtp.mailtrap.io:2525
U suštini, sustav bi trebao slati sve e-poruke s lokalnog računa rootkao korisnika e-pošte USERNAME@EXAMPLE.COMputem mailtrapposlužitelja. Unesite onoliko korisnika koliko trebate, svaki u svojoj liniji. Ako trebate rootslati samo poruke, samo izostavite druge retke. Možete se vratiti kasnije i po potrebi dodati korisnike.
Spremite datoteku. S nano pritisnite " Ctrl-X" i potvrdite s " Y".
Gotov si. Možda biste to željeli vidjeti na djelu slanjem e-pošte. Da biste to učinili, kreirajte svoju poruku i pošaljite je.
echo "This is the body" | mutt -s "Hello World" SEND_TO_USERNAME@EXAMPLE.COM
Prijavite se na svoj Mailtrap račun i provjerite svoj Demo inbox. Tamo bi već trebala čekati pošta.
Zaključak
Konačno, prebacite svoju terminalsku sesiju s rootnatrag na redovnog korisnika.
exit
Po želji, dodajte MAILTO=SEND_TO_USERNAME@EXAMPLE.COMu svoj crontab. Za brzi test, recimo, provjeravajući podmape u vašoj /homemapi svake minute, uredite crontab.
crontab -e
Odaberite svoj uređivač ako je potrebno i dodajte/uredite ove retke na kraju tako da podsjeća na sljedeći tekst.
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
mailto=SEND_TO_USERNAME@EXAMPLE.COM
* * * * * ls /home
Ovo se pokreće ls /homesvake minute i budući da je MAILTOdodan unos, šalje odgovor na tu adresu. Više o crontab tablicama možete saznati ovdje .
Spremite ga na izlazu. Očekujte e-poštu u Mailtrapu svake minute.