Jak nainstalovat Sendmail na Ubuntu 22.04 a nakonfigurovat jej pro odesílání e-mailů pomocí e-mailového serveru, který směruje nebo přenáší doručení pošty.
Sendmail je opensource Mail Transfer Agent (MTA), který se používá ke směrování e-mailů pomocí serveru nebo pomocí příkazů shellu. Můžete také nakonfigurovat SMTP pomocí Sendmail.
V této příručce se naučíte, jak nainstalovat a nastavit Sendmail na Ubuntu. Také nastavíte SMTP a nakonfigurujete jej pomocí PHP.
Aktualizovat serverové balíčky
SSH na vašem serveru a aktualizujte balíčky na nejnovější verzi.
sudo apt update sudo apt upgrade
Nainstalujte Sendmail
Sendmail je k dispozici v úložišti ubuntu, takže můžete přímo nainstalovat pomocí apt install
příkaz.
sudo apt install sendmail
Konfigurovat název hostitele
Upravte /etc/hosts
soubor a přidejte svůj název hostitele.
sudo nano /etc/hosts
Na řádku začínajícím 127.0.0.1
, přidejte hostname
až do konce, jak to vypadá níže. To by mělo být na jednom řádku.
127.0.0.1 localhost hostname
Konfigurovat SMTP
Vytvořte nový adresář v /etc/mail
pro konfigurace SMTP.
sudo mkdir /etc/mail/authinfo
Nastavte správná oprávnění.
sudo chmod -R 700 /etc/mail/authinfo
Vytvořte nový soubor pro ověření SMTP v nově vytvořeném adresáři.
cd /etc/mail/authinfo sudo nano smtp-auth
Vložte následující řádek a nahraďte e-mailovou adresu svým přihlašovacím e-mailem a heslem svým heslem.
AuthInfo: "U:root" "I:email-address" "P:password"
Stiskněte CRTL + X
následuje Y
a ENTER
pro uložení a ukončení souboru.
Vytvořte mapu hash databáze pro výše vytvořenou autentizaci.
sudo makemap hash smtp-auth < smtp-auth
Konfigurovat SMTP
Přejděte do konfiguračního adresáře sendmailu a upravte sendmail.mc
soubor.
cd /etc/mail sudo nano sendmail.mc
Přidejte níže uvedené konfigurace hned za MAILER _DEFINITIONS řádek.
Nahraďte smtp-host
s vaším názvem hostitele SMTP.
define(`SMART_HOST',`[smtp-host]')dnl define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl define(`confAUTH_OPTIONS', `A p')dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl FEATURE(`authinfo',`hash -o /etc/mail/authinfo/smtp-auth.db')dnl
Konfigurace by měla vypadat stejně jako na níže uvedeném snímku obrazovky.
Nyní uložte soubor a ukončete editor.
Znovu sestavit konfiguraci Sendmail
Jakmile je konfigurace hotová, musíte znovu sestavit konfiguraci Sendmail pomocí make
příkaz.
cd /etc/mail make
Jakmile je konfigurace přestavěna, musíte restartovat Sendmail
Restartujte Sendmail
Restartujte Sendmail pomocí následujícího příkazu.
sudo /etc/init.d/sendmail restart
Nyní můžete odesílat e-maily pomocí SMTP.
Další konfigurace
Konfigurace pomocí PHP
Chcete-li používat Sendmail s PHP, musíte zadat cestu sendmail ve vašem php.ini
soubor.
sudo nano /etc/php/version/fpm-or-apache2/php.ini
Na konec souboru přidejte následující.
sendmail_path= /usr/sbin/sendmail -t -i
Restartujte Apache nebo PHP-FPM, aby se změny projevily.
sudo service apache2 restart or sudo service php8.1-fpm restart
Odeslat konfiguraci SMTP bez ověření
V případě, že jste přidali IP svého serveru na bílou listinu pro SMTP a můžete odesílat e-maily bez ověření, můžete postupovat podle níže uvedené metody.
Nemusíte vytvářet smtp-auth
soubor, který jsme vytvořili výše.
sendmail.mc
můžete přímo upravit soubor a proveďte následující změny.
cd /etc/mail sudo nano sendmail.mc
Přidejte níže uvedené konfigurace k poslednímu.
Nahraďte smtp-host
s vaším názvem hostitele SMTP.
define(`SMART_HOST',`smtp-host')dnl define(`RELAY_MAILER', `esmtp')dnl define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
Uložte soubor, znovu sestavte konfiguraci a restartujte Sendmail.
cd /etc/mail make sudo /etc/init.d/sendmail restart
Připravte se na roli odborníka na informační technologie s operačním systémem Linux
Závěr
Nyní jste se naučili, jak nainstalovat a nakonfigurovat Sendmail pro přenos pomocí SMTP na Ubuntu 22.04.
Díky za váš čas. Pokud narazíte na jakýkoli problém nebo zpětnou vazbu, zanechte prosím komentář níže.