cum se instalează și se configurează Sendmail pe Ubuntu
cum se instalează și se configurează Sendmail pe Ubuntu pentru trimiterea de e-mailuri utilizând un server de e-mail care rutează sau transmite livrarea e-mailului.
Sendmail este un agent de transfer de e-mail opensource (MTA) care este utilizat pentru a direcționa e-mailul utilizând serverul sau utilizând comenzile shell. De asemenea, puteți configura SMTP folosind Sendmail.
în acest ghid veți învăța cum să instalați și să configurați Sendmail pe Ubuntu. De asemenea, veți configura SMTP și configurați-l cu PHP.
cel mai bun Hosting pentru afacerea ta
platformă | recenzii | prețuri |
---|---|---|
Cloudways | ★★★★★ | $10 |
Kinsta-Google Cloud | ★★★★★ | $30 |
Actualizați pachetele serverului
SSH în interiorul serverului dvs. și Actualizați pachetele la cea mai recentă versiune.
sudo apt updatesudo apt upgrade
instalați Sendmail
Sendmail este disponibil în depozitul ubuntu, astfel încât să puteți instala direct folosind comanda apt install
.
sudo apt install sendmail
configurați numele de gazdă
editați fișierul /etc/hosts
și adăugați numele de gazdă.
sudo nano /etc/hosts
pe linia care începe cu 127.0.0.1
, adăugați hostname
la sfârșit așa cum arată mai jos. Acest lucru ar trebui să fie pe o singură linie.
127.0.0.1 localhost hostname
configurați SMTP
creați un nou director în /etc/mail
pentru configurațiile SMTP.
sudo mkdir /etc/mail/authinfo
configurare permisiuni corecte.
sudo chmod -R 700 /etc/mail/authinfo
creați un fișier nou pentru autentificarea SMTP în directorul nou creat.
cd /etc/mail/authinfosudo nano smtp-auth
lipiți următoarea linie și înlocuiți adresa de e-mail cu adresa de e-mail de conectare și parola cu parola.
AuthInfo: "U:root" "I:email-address" "P:password"
apăsați CRTL + X
urmat de Y
și ENTER
pentru a salva și a ieși din fișier.
creați o hartă a bazei de date hash pentru autentificarea creată mai sus.
sudo makemap hash smtp-auth < smtp-auth
configurați SMTP
navigați la directorul de configurare sendmail și editați fișierul sendmail.mc
.
cd /etc/mailsudo nano sendmail.mc
adăugați configurațiile de mai jos imediat după linia MAILER _DEFINITIONS.
înlocuiți smtp-host
cu numele de gazdă SMTP.
define(`SMART_HOST',`')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnldefine(`ESMTP_MAILER_ARGS', `TCP $h 587')dnldefine(`confAUTH_OPTIONS', `A p')dnlTRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnldefine(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnlFEATURE(`authinfo',`hash -o /etc/mail/authinfo/smtp-auth.db')dnl
configurația ar trebui să arate la fel ca imaginea de mai jos.
Acum salvați fișierul și ieșiți din editor.
reconstruiți configurația Sendmail
odată ce configurația este terminată, trebuie să reconstruiți configurația Sendmail folosind comanda make
.
cd /etc/mailmake
odată ce configurația este reconstruită, trebuie să reporniți Sendmail
reporniți Sendmail
reporniți Sendmail folosind următoarea comandă.
sudo /etc/init.d/sendmail restart
acum Puteți trimite e-mailuri folosind SMTP.
configurații suplimentare
configurare cu PHP
pentru a utiliza Sendmail cu PHP trebuie să ad cale sendmail în fișierul php.ini
.
sudo nano /etc/php/version/fpm-or-apache2/php.ini
în partea de jos a fișierului adăugați următoarele.
sendmail_path= /usr/sbin/sendmail -t -i
reporniți Apache sau PHP-FPM pentru ca modificările să aibă efect.
sudo service apache2 restartorsudo service php8.0-fpm restart
configurare SMTP Sendmail fără Auth
Incase dacă ați lista albă IP-ul serverului pentru SMTP și puteți trimite e-mailuri fără autentificare, puteți urma metoda de mai jos.
nu trebuie să creați fișierul smtp-auth
pe care l-am creat mai sus.
puteți edita direct fișierul sendmail.mc
și puteți efectua următoarele modificări.
cd /etc/mailsudo nano sendmail.mc
adăugați configurațiile de mai jos la ultima.
înlocuiți smtp-host
cu numele de gazdă SMTP.
define(`SMART_HOST',`smtp-host')dnldefine(`RELAY_MAILER', `esmtp')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
salvați fișierul, reconstruiți configurația și reporniți Sendmail.
cd /etc/mailmakesudo /etc/init.d/sendmail restart
concluzie
acum ați învățat cum să instalați și să configurați sendmail pentru a transmite folosind SMTP pe Ubuntu.