[MEGOLDVA] postfix 530 #5.7.0 Must issue a STARTTLS command first

A címben említett hibaüzenettel riogat az egyik partner levelezőszervere, egy antispam gépen keresztül menne a levél, de ezzel a hibaüzenettel elakad.

A levelezés ubuntu alapon postfix, dovecot.

Sehol máshol nem jelentkezett még ez a probléma. A google nem a barátom, vagy én vagyok rossz nyomkereső.

Aki látott már ilyet mit tanácsolna mit csináljak (palacsintát, mert azt szeretem)? :)

Üdv:

Polesz

 

Szerk:

A távoli szerver lett elkonfigurálva, kijavították és azóta megy.

Hozzászólások

A hibaüzenet, amit látsz: `530 #5.7.0 Must issue a STARTTLS command first`, azt jelenti, hogy a partner levelezőszervere TLS (Transport Layer Security) titkosítást vár el a kapcsolat megkezdése előtt. A STARTTLS egy olyan mechanizmus, amely lehetővé teszi, hogy a kliens titkosítatlan kapcsolaton keresztül kezdeményezzen, majd TLS-re váltson a kommunikáció biztonságosabbá tétele érdekében.

Ez a probléma gyakran akkor fordul elő, ha a két levelezőszerver beállításai nem kompatibilisek a biztonsági elvárások tekintetében. Mivel azt mondtad, hogy csak egyetlen partnerrel tapasztalod a problémát, valószínű, hogy az ő szerverük szigorúbb beállításokkal rendelkezik, vagy eltér az általános konfigurációtól.

### Lépések a probléma megoldására:

1. **Ellenőrizd a Postfix TLS konfigurációját:**
   - Győződj meg róla, hogy a `main.cf` fájlban a következő beállítások helyesen szerepelnek:
     ```bash
     smtp_tls_security_level = may
     smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
     ```
   - A `smtp_tls_security_level = may` azt jelenti, hogy a Postfix megpróbál TLS-t használni, de nem kötelezően. Ha a partner szigorúan követeli a TLS-t, esetleg módosítanod kell ezt a beállítást:
     ```bash
     smtp_tls_security_level = encrypt
     ```

2. **Ellenőrizd, hogy a Postfix támogatja-e a STARTTLS parancsot:**
   - Ha nem engedélyezett a STARTTLS a kimenő levelekhez, a kapcsolat nem tudja elvégezni a szükséges titkosítási lépéseket.
   - A `main.cf` fájlban ellenőrizd ezt a beállítást:
     ```bash
     smtp_use_tls = yes
     smtp_tls_note_starttls_offer = yes
     ```

3. **Kapcsolat a partner szerverével:**
   - Ha van lehetőség, kérdezd meg a partner rendszergazdáját, hogy milyen TLS verziót és beállításokat várnak el, és azoknak megfelelően alakítsd a saját beállításaidat.

4. **Logok ellenőrzése:**
   - Nézd át a Postfix naplóit a `/var/log/mail.log` fájlban, hátha több információt találsz arról, hogy miért utasítja el a kapcsolatot a partner szervere.

5. **Teszteld a kapcsolatot:**  
   - Egy egyszerű teszt a következő parancsokkal történhet (csak a `openssl` eszközt kell használnod):
     ```bash
     openssl s_client -starttls smtp -crlf -connect smtp.partnerdomain.hu:25
     ```

   Ez a parancs megmutatja, hogy a kapcsolat hogyan kezeli a TLS-t.

### Palacsinta recept mellékelve:
Ha megoldódott a probléma, jutalmazhatod magad egy jó palacsintával! :)

1. 200 g liszt
2. 2 tojás
3. 300 ml tej
4. Egy csipet só
5. Kevés cukor (ha édesebben szereted)

Keverd össze a hozzávalókat, süsd ki, és élvezd! :)

Ha további segítségre van szükséged, jelezd bátran!

Aláírás _Franko_ miatt törölve. 
Jákub egy .
neut @

Pár kiegészítést tennék ehhez a leíráshoz:
- SMTP tcp/25 port mellett próbáld ki a tcp/587-t is.
- smtpd_tls_cert_file legyen beállítva
- smtpd_tls_key_file legyen beállítva
- smtp_tls_cert_file legyen beállítva
- smtp_tls_key_file legyen beállítva

További hasznos opciók a beállítások finomhangolásához:
- smtpd_tls_security_level
- smtpd_tls_mandatory_protocols
- smtpd_tls_protocols
- smtpd_tls_exclude_ciphers
- smtpd_tls_ciphers
- smtp_tls_security_level
- smtp_tls_mandatory_protocols
- smtp_tls_protocols
- smtp_tls_exclude_ciphers
- smtp_tls_ciphers

$ openssl s_client -starttls smtp -connect tavoliemailszerver:25
Connecting to tavoliemailszerverip
CONNECTED(00000003)
Didn't find STARTTLS in server response, trying anyway...
80709997DD7F0000:error:0A000126:SSL routines::unexpected eof while reading:ssl/record/rec_layer_s3.c:687:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 229 bytes and written 381 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
This TLS version forbids renegotiation.
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---

Ez esetben értesítsd a "tavoliemailszerver" adminisztrátorát (ha ez nem ismert, akkor a címzettet, akinek az e-mail fiókja azon van), hogy félre van konfigurálva a szerver, mert kötelező TLS-t ír elő, de nincs rajta előkészítve a TLS, nem használható.

Ezt a problémát a saját oldaladon nem tudod elhárítani.

> mit tanácsolna mit csináljak

csak azt tudom, mit ne csinalj: levelezo szerver uzemeltetest

Akkor legalább a kevésbé görényhez mentél :) Épp ma reggel beszéltem egy nagy hosting szolgáltatóval az outlook hozzáállásáról.
Eddig azt én is tapasztaltam, hogy a mi IP tartományunkat azért nem szereti, mert a szomszédos /24-ben akad pár spammer, ezért ők /20-at bannoltak. 
Mire a beszélgető partnerem rávágja, hogy ők nagyobbat szívtak, teljes AS-t bannolt az outlook és szolgáltatói szinten próbált emberünk valamit elérni.
Sok bot válasz után nagy keservesen eljutott egy emberhez is, ahol végre /24-enként sikerült felszabadítani a tartományokat. (Az erre létrehozott form lóxart sem ért...mondjuk nekem sem, hiába regeltem be minden idióta felületükre. Azt írták tiszta vagyok, közben meg visszavágták az oda küldött leveleimet.)
Az outlook "ügyfélszolgálatos" pedig megjegyezte, hogy ez igazából nem kötelességük. Azt bannolnak, amit akarnak.

És megtehetik, rohadjanak meg, akkor monopol már.