Web szerver levelezésének beállítása

Web szerver levelezésének beállítása

Naszóval, jelenleg ott tartok, hogy sikerült egy szerverből kettőt csinálni, lényegében minimális (10 perc) szolgáltatás kimaradással (Web), ami, szerintem, így jó. Most van egy levelező szerver, és külön a web szerver, így nem zavarhatják egymást. Mindkettőn alkalmaztam az előzőben leírt fail2ban, SSH szűrős trükköt annyi módosítással, hogy egy hétre csökkent a kitiltási idő. Eleinte napi 40-50 próbálkozás volt, de pár napja már csak 2-3 a napi letiltandó. Mostanság inkább a levelező szerver, relay beállítására utaznának, ha lenne, de tiltva vagyon! A következő, amit szeretnék elérni, hogy a web szerverről napi szinten jelentések érkezzenek a postafiókomba. Itt konkrétan a logwatch-ot szeretném használni, illetve esetenként weboldalról levélküldést. Nézzük a megoldást…

Csomagok telepítése

Elsőként futtassunk frissítsük a csomag fájljainkat:

sudo apt-get update

Ezután telepítsük az alábbi csomagokat:

sudo apt-get install postfix libsasl2-modules

Postfix konfigurálása

Az első ablaknál (General type of mail configuration), válasszuk az “Internet Site” beállítást, a második ablaknál adjuk meg a teljes domain nevet, amit a levelezőnk használ (a példa kedvéért legyen fqdn.example.com). Ezt a későbbiekben, ha szükséges, a /etc/postfix/main.cf fájlban az alábbi bejegyzésnél lehet megváltoztatni:

myhostname = fqdn.example.com

SMTP azonosítás beállítása

A következő lépés, hogy beállítsuk a levelező szerver SMTP adatait, úgy mint szervernév, port, felhasználó név, jelszó. Mivel ezek közül a felhasználó név és jelszó biztos, hogy titkos, tehát nem szeretnénk, ha bárki hozzáférne, így a konfig fájlt lekódoljuk, az eredeti fájlt pedig elrejtjük a kíváncsi szemek elöl.

sudo nano /etc/postfix/sasl_passwd

A fájl szerkezete a következőképpen nézzen ki:

[mail.isp.example]:587 username:password

Ha ez megvan, kódoljuk le a postfix számára a postmap parancs segítségével.

sudo postmap /etc/postfix/sasl_passwd

Ezzel a parancssal létrejött egy sasl_passwd.db fájl, amit a postfix fog használni.

Biztosítsuk, hogy illetéktelenek ne férjenek hozzá ezekhez a fájlokhoz.

sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

Küldő szerver beállítása

Nyissuk meg a /etc/postfix/main.cf fájlt,

sudo nano /etc/postfix/main.cf

A relayhost paramétert módosítsuk az alábbiak szerint:

# specify SMTP relay host
relayhost = [mail.isp.example]:587

Majd a main.cf fájl végéhez adjuk hozzá az alábbi sorokat:

# enable SASL authentication
smtp_sasl_auth_enable = yes
# disallow methods that allow anonymous authentication.
smtp_sasl_security_options = noanonymous
# where to find sasl_passwd
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
# Enable STARTTLS encryption
smtp_use_tls = yes
# where to find CA certificates
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

A változások mentése után, nincs más dolgunk, mint újraindítani a levelező szervert.

systemctl restart postfix

Tesztelés

Telepítsük a mailutils csomagot,

sudo apt-get install mailutils

majd adjuk ki az alábbi parancsot:

echo "body of your email" | mail -s "This is a Subject" -a "From: you@example.com" recipient@elsewhere.com