Jak skonfigurować serwer pocztowy na Maszynie Wirtualnej Starlight™

Aby otworzyć port 25 na swojej Maszynie Wirtualnej (VM), przejdź do Starlight Manager > wybierz kartę "Mail Bridge" > naciśnij przycisk ‘Add Mail Bridge’.

Po ustawieniu rekordu PTR i włączeniu portu 25 możesz skonfigurować preferowany serwer SMTP. Poniżej znajdują się przykłady dla Postfix, Exim oraz Sendmail. Użyj adresu IP VM wyświetlanego w Starlight Manager i upewnij się, że nazwa domeny dla rekordu PTR odpowiada domenie nadawcy (np. mail.example.com).

Instalacja i konfiguracja Postfix

# for Debian/Ubuntu

sudo apt update

sudo apt install postfix mailutils -y



# for Almalinux/Rocky/Cloudlinux/EL

# check RPM-based distros to check

# if Postfix is installed

rpm -qa | grep postfix

# if it is not, run the command below to install Postfix

sudo dnf install postfix



Po zainstalowaniu Postfix możesz uruchomić usługę i upewnić się, że będzie uruchamiana po restarcie serwera:

sudo systemctl start postfix

sudo systemctl enable postfix

Następnie możesz skonfigurować usługę. Wszystkie potrzebne opcje znajdują się w katalogu /etc/postfix, a główny plik konfiguracyjny to /etc/postfix/main.cf

Uruchom sudo nano /etc/postfix/main.cf, aby rozpocząć edycję głównego pliku konfiguracyjnego i dodać lub zaktualizować poniższe linie:

inet_interfaces = all

# myhostname declares mail server’s hostname

myhostname = mail.example.com

# mydomain declares the domain that actually handles emails

domain = example.com

# mail_spool_directory declares the directory where mailbox files are placed

mail_spool_directory = /var/mail

myorigin = /etc/mailname

mydestination = $myhostname, localhost.$mydomain, localhost

relayhost =

inet_protocols = all

smtp_banner = $myhostname ESMTP



Zrestartuj Postfix, aby zastosować zmiany:

sudo systemctl restart postfix



Przetestuj wysyłanie poczty:

echo "Test message" | mail -s "Test Email" user@recipient.com

Instalacja i konfiguracja Exim 4

# for Ubuntu/Debian

sudo apt update

sudo apt install exim4 -y



Poniższe polecenie wyświetla interfejs kreatora do konfigurowania oprogramowania. Pozwala użytkownikom zdecydować, czy Exim powinien rozdzielić konfigurację na wiele plików, czy przechowywać ją w jednym pliku:

sudo dpkg-reconfigure exim4-config

Jeśli używana jest pierwsza opcja, konfiguracja zostanie zapisana w podkatalogach /etc/exim4/conf.d. Jeśli wybrano jeden plik konfiguracyjny, zostanie on /etc/exim4/exim4.conf

Po zakończeniu wszystkich konfiguracji uruchom systemctl restart exim4aby zmiany zaczęły obowiązywać.

Edytuj /etc/exim4/update-exim4.conf.conf, aby upewnić się, że:

# dc_local_interfaces declares your mail service IP (e.g. 203.0.113.10)

dc_local_interfaces='203.0.113.10'

# dc_readhost declares your system mail name

dc_readhost='example.com'

# dc_other_hostnames declares system hostname

dc_other_hostnames='mail.example.com'



Zrestartuj Exim, aby zastosować zmiany:

sudo systemctl restart exim4


Przetestuj dostarczanie poczty, uruchamiając poniższe polecenie:

echo "Mail test" | mail -s "Exim Test" user@recipient.com

Instalacja i konfiguracja Sendmail

# for Ubuntu/Debian

sudo apt update

sudo apt install sendmail sendmail-bin -y

# for Almalinux/Cloudlinux/RHEL

yum install sendmail sendmail-cf mailutils


Główny plik konfiguracyjny Sendmail to /etc/mail/sendmail.cf. Unikaj bezpośredniej edycji tego pliku. Jeśli konieczna jest edycja konfiguracji, edytuj plik /etc/mail/sendmail.mc, wykonaj kopię zapasową oryginalnego pliku konfiguracyjnego i użyj jednej z poniższych metod, aby wygenerować nowy plik konfiguracyjny:

1) Użyj dołączonego pliku makefile /etc/mail, aby utworzyć nową konfigurację:

make all -C /etc/mail/

 

Wszystkie wygenerowane pliki w /etc/mail zostaną odtworzone w razie potrzeby.

2) Alternatywnie możesz użyć m4procesora makr, aby utworzyć nowy /etc/mail/sendmail.cf. Procesor makr m4nie jest domyślnie zainstalowany. Przed jego użyciem do utworzenia /etc/mail/sendmail.cfzainstaluj pakiet m4jako root:

# for Almalinux/Cloudlinux/RHEL

yum install m4


# for Ubuntu/Debian

apt install m4


Następujące pliki konfiguracyjne Sendmail znajdują się w katalogu /etc/mail/:

  • access- określa, które systemy mogą korzystać z Sendmail do wysyłania poczty wychodzącej

  • domaintable- mapowanie nazw domen

  • local-host-names - aliasy dla hosta serwera

  • mailertable- instrukcje nadpisujące trasowanie dla określonych domen

  • virtusertable- określa aliasowanie specyficzne dla domeny, umożliwiając obsługę wielu wirtualnych domen na maszynie.


Poniżej znajdują się przykłady, jak można edytować pliki konfiguracyjne:

# editing the server host aliases:

echo "mail.example.com" > /etc/mail/local-host-names


# binding to Mail IP by editing /etc/mail/sendmail.mc:
DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Addr=203.0.113.10')dnl


# rebuilding the config:
sudo m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf


# testing:

echo "Hello from Sendmail" | mail -s "Sendmail test" user@recipient.com

Kilka z wymienionych wyżej plików konfiguracyjnych musi przechowywać informacje w plikach bazy danych, zanim zmiany zaczną obowiązywać. Aby uwzględnić zmiany wprowadzone w plikach konfiguracyjnych, uruchom polecenie makemap hash /etc/mail/<name> < /etc/mail/<name>jako root. Tutaj <name> oznacza nazwę konfiguracji do zaktualizowania.

Zrestartuj proces Sendmail, uruchamiając polecenie systemctl restart sendmail.

Wymagany jest prawidłowy adres e-mail