9 marca, 2022

Jak zainstalować i skonfigurować Sendmaila na Ubuntu

jak zainstalować i skonfigurować Sendmaila na Ubuntu do wysyłania wiadomości e-mail za pomocą serwera poczty, który kieruje lub przekazuje dostarczanie poczty.

Sendmail jest opensource Mail Transfer Agent (MTA), który jest używany do kierowania poczty za pomocą serwera lub za pomocą poleceń powłoki. Możesz również skonfigurować SMTP za pomocą Sendmaila.

w tym przewodniku dowiesz się, jak zainstalować i skonfigurować Sendmail na Ubuntu. Ponadto skonfigurujesz SMTP i skonfigurujesz go za pomocą PHP.

Najlepszy Hosting dla Twojej firmy

Platforma opinie cennik
Cloudways ★★★★★ $10
Kinsta – Google Cloud ★★★★★ $30

zaktualizuj Pakiety serwera

SSH wewnątrz serwera i zaktualizuj pakiety do najnowszej wersji.

sudo apt updatesudo apt upgrade

zainstaluj Sendmaila

Sendmail jest dostępny w repozytorium ubuntu, więc możesz bezpośrednio zainstalować za pomocą polecenia apt install.

sudo apt install sendmail

Skonfiguruj nazwę hosta

Edytuj plik /etc/hosts i dodaj swoją nazwę hosta.

sudo nano /etc/hosts

w linii rozpoczynającej się od 127.0.0.1 dodaj hostname na koniec, jak wygląda poniżej. To powinno być na jednej linii.

127.0.0.1 localhost hostname

Konfiguracja SMTP

Utwórz nowy katalog wewnątrz /etc/mail dla konfiguracji SMTP.

sudo mkdir /etc/mail/authinfo

Ustaw prawidłowe uprawnienia.

sudo chmod -R 700 /etc/mail/authinfo

Utwórz nowy plik uwierzytelniania SMTP wewnątrz nowo utworzonego katalogu.

cd /etc/mail/authinfosudo nano smtp-auth

wklej poniższy wiersz i zastąp adres e-mail loginem e-mail i hasło hasłem.

AuthInfo: "U:root" "I:email-address" "P:password"

naciśnij CRTL + X, a następnie Y i ENTER, aby zapisać i zakończyć plik.

utwórz mapę bazy danych hash dla powyższego utworzonego uwierzytelniania.

sudo makemap hash smtp-auth < smtp-auth

Konfiguracja SMTP

przejdź do katalogu konfiguracyjnego sendmaila i edytuj plik sendmail.mc.

cd /etc/mailsudo nano sendmail.mc

Dodaj poniższe konfiguracje zaraz po linii MAILER _DEFINITIONS.

Zastąp smtp-host nazwą hosta 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

konfiguracja powinna wyglądać tak samo jak na poniższym zrzucie ekranu.

konfiguracja SMTP

teraz zapisz plik i zamknij Edytor.

Odbuduj konfigurację Sendmaila

po zakończeniu konfiguracji musisz odbudować konfigurację Sendmaila za pomocą polecenia make.

cd /etc/mailmake

po przebudowaniu konfiguracji należy ponownie uruchomić Sendmaila

ponownie uruchomić Sendmaila

ponownie uruchomić Sendmaila za pomocą następującego polecenia.

sudo /etc/init.d/sendmail restart

teraz możesz wysyłać e-maile za pomocą SMTP.

dodatkowe konfiguracje

konfiguracja z PHP

aby używać Sendmaila z PHP, musisz dodać ścieżkę sendmaila do pliku php.ini.

sudo nano /etc/php/version/fpm-or-apache2/php.ini

na dole pliku dodaj następujące informacje.

sendmail_path= /usr/sbin/sendmail -t -i

Uruchom ponownie Apache lub PHP-FPM, aby zmiany zaczęły obowiązywać.

sudo service apache2 restartorsudo service php8.0-fpm restart

Konfiguracja SMTP Sendmaila bez autoryzacji

jeśli umieściłeś na białej liście adres IP serwera SMTP i możesz wysyłać e-maile bez uwierzytelniania, możesz postępować zgodnie z poniższą metodą.

nie musisz tworzyć pliku smtp-auth, który stworzyliśmy powyżej.

możesz bezpośrednio edytować plik sendmail.mc i wprowadzić następujące zmiany.

cd /etc/mailsudo nano sendmail.mc

Dodaj poniższe konfiguracje do ostatniego.

Zastąp smtp-host nazwą hosta SMTP.

define(`SMART_HOST',`smtp-host')dnldefine(`RELAY_MAILER', `esmtp')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnl

Zapisz plik, Przebuduj konfigurację i uruchom ponownie Sendmaila.

cd /etc/mailmakesudo /etc/init.d/sendmail restart

podsumowanie

teraz nauczyłeś się instalować i konfigurować Sendmaila do przekazywania za pomocą SMTP na Ubuntu.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.