Sziasztok!
Elakadtam. Több Howto alapján próbáltam beállítani azt, hogy leveleket lehessen küldeni a 465-ös porton.
Azt hiszem minden be van építve, a logika alapján működnie is kéne.
- Posfix/Courier/MySQL
- saját hálózatból megy a küldés auth nélkül, leveleket tudok fogadni, imapon és pop3-on authentikálni. Tehát a levelezőszerver működik
Ha kívülről levelezőklienssel próbálom elküldeni a levelet (465-ös pott, ssl, normál plain text jelszó), akkor a logban csak ennyi jelenik meg:
Jun 29 11:45:47 tauri postfix/smtpd[29690]: connect from catv-89-133-8-22.catv.broadband.hu[89.133.8.22]
Jun 29 11:47:47 tauri postfix/smtpd[29690]: lost connection after UNKNOWN from catv-89-133-8-22.catv.broadband.hu[89.133.8.22]
Jun 29 11:47:47 tauri postfix/smtpd[29690]: disconnect from catv-89-133-8-22.catv.broadband.hu[89.133.8.22]
A kliens csak azt mondja, hogy nem sikerült authentikálni.
Ha parancssorból próbálom
root@server:~# telnet server.hu 465
Trying XX.XX.XX.XX...
Connected to server.hu.
Escape character is '^]'.
220 servername.server.hu ESMTP Postfix (Debian/GNU)
EHLO server.hu
250-servername.server.hu
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
auth login
503 5.5.1 Error: authentication not enabled
A master.cf-ben be van állítva
smtps inet n - - - - smtpd -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject
A main.cf-be pedig a szükésges dolgok:
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject
smtpd_sasl_authenticated_header = yes
smtpd_sasl_path = smtpd
smtpd_sasl_local_domain = $mydomain
smtpd_tls_auth_only = yes
smtpd_tls_cert_file=/etc/postfix/smtpd.cert
smtpd_tls_key_file=/etc/postfix/smtpd.key
Miért nem megy mégsem a dolog? Tudna valaki segíteni?
Üdv: redman
- 2815 megtekintés
Hozzászólások
Nekem egy ilyen beállítás oldotta meg:
receive_override_options = no_address_mappings
- A hozzászóláshoz be kell jelentkezni
én a mydestiantion-ba vettem fel a domainemet, imigyen: mail.domainnevem.hu
innentől működött a dolog. de lehet ide nem ez a megoldás kell mivel látom telnetnél is error autentictaion van :(
- A hozzászóláshoz be kell jelentkezni
jóhogy az van, mivel 'smtpd_tls_auth_only = yes', így sima auth-ot fel sem ajánl, amíg nem jön létre a tls kapcsolat (starttls után), hiába próbálkozik.
- A hozzászóláshoz be kell jelentkezni
illetőleg megnéztem saját main.cf-emet és abban így nézz ki a megfelelő sor:
smtpd_recipient_restrictions = reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unauth_destination, check_policy_service
- A hozzászóláshoz be kell jelentkezni
smtpd_tls_auth_only = yes
Ezt kapcsold ki a teszteleshez.
tompos
- A hozzászóláshoz be kell jelentkezni
vagy használjon 'openssl s_client'-et telnet helyett. eleve nem értem, hogy 465-ös porton hogy lát bármit is telnettel? valami nem frankó ott.
- A hozzászóláshoz be kell jelentkezni
smtpd_tls_wrappermode=yes kellene 465-re...szerintem...
--
Debian Linux rulez... :D
- A hozzászóláshoz be kell jelentkezni
Naszóval, igen így már jó lesz, van előrébb lépés:
...
auth login
334 VXNlcm5hbWU6
cmVkbWFuLmh1
334 UGFzc3dvcmQ6
bWVsaW5hcA==
535 5.7.8 Error: authentication failed: generic failure
A logban azt írja, hogy nem tudja elérni a saslauthd-t
SASL authentication failure: cannot connect to saslauthd server: No such file or directory
Pedig ebben a könyvtrában vannak fájlok, tehát fut:
/var/spool/postfix/var/run/saslauthd
A 465 portoton figyelést a smtps bekapcsolásával nyitottam meg a master.cf fájlban.
Üdv: redman
- A hozzászóláshoz be kell jelentkezni
Akkor nem ott keresi.
tompos
- A hozzászóláshoz be kell jelentkezni
Swifty-nek igaza volt. Betettem és működik.
Már csak egy apró dolog van, azt írja a log, hogy
- SASL PLAIN authentication failed: authentication failure
Tehát már csak az auth-ot kéne kiderítenem, hogy miért nem sikerül neki.
Hol keresgéljek?
- A hozzászóláshoz be kell jelentkezni
logokban, valamint testsaslauthd
- A hozzászóláshoz be kell jelentkezni
Megnéztem a MySQL logot, megpróbálja lekérdezni, de levágja a felhasználónév elejét:
Pl.:
felhasználó: nev@domain.hu
a táblából úgy próbálkozik, hogy:
SELECT password FROM users WHERE email = 'nev'
Nem értem miért. (Most már csak kliensből (thunderbird) próbálom)
- A hozzászóláshoz be kell jelentkezni
smtpd_sasl_local_domain = $mydomain ?
- A hozzászóláshoz be kell jelentkezni
Vele és nélküle is ugyanaz a helyzet
- A hozzászóláshoz be kell jelentkezni
testsaslauthd-vel sikerül authentikálni.
Szóval a Postfix nem adja át rendesen a felhasználónevet.
- A hozzászóláshoz be kell jelentkezni
én nem értek sql-hez, de itt leírják, hogyan kell a saslauthd-t sql-hez beállítani, a "The sql plugin" résznél (/etc/sasl2/smtpd.conf) írva van egy ilyen:
sql_select: SELECT password FROM users WHERE user = '%u'@'%r'
- A hozzászóláshoz be kell jelentkezni
Átírtam, sajnos így sem megy.
- A hozzászóláshoz be kell jelentkezni
Kedves Ex-Different-es Barátom! :D
Nálam Dovecot authentical...
Nézd meg ezeket a beállításokat:
smtpd_sasl_path
smtpd_sasl_type
Egy ex rendszerintegrátoros :D
--
Debian Linux rulez... :D
- A hozzászóláshoz be kell jelentkezni
Örülök, hogy kicsi a világ és hogy megismerik ennyi idő után is az embert! :)
smtpd_sasl_path = smtpd
Tehát a postfix könyvtárban levő smtpd.conf-ot nézi ugye?
Abban pedig ez van:
pwcheck_method: saslauthd
mech_list: plain login
allow_plaintext: true
auxprop_plugin: mysql
sql_hostnames: 127.0.0.1
sql_user: mail_database
sql_passwd: **********
sql_database: mail_user
sql_select: select password from users where email = '%u'
Ha '%u'@'%r'
illetve
'%u@%r'
a végén az érték, akkor sem megy. Ugyanaz a lekérdezés. A felhasználónévből (e-mail cím) a @ utáni rész levágja és emiatt nem authentikál.
- A hozzászóláshoz be kell jelentkezni
Hm...
Én itt indultam el:
http://wiki1.dovecot.org/HowTo/PostfixAndDovecotSASL
http://wiki2.dovecot.org/HowTo/PostfixAndDovecotSASL
aztán ezt is megnéztem:
http://www.postfix.org/SASL_README.html
főleg ezt a részt:
http://www.postfix.org/SASL_README.html#server_dovecot
Saját olvasatomban nem az smtpd.conf-ot nézi, hanem a program socket-jét keresi az adott név alatt...
Nálam a dovecot authentical... pontosabban az adja a postfix-nek a sasl-t. A dove pedig PAM-on keresztül LDAP-ból nyomja :D
--
Debian Linux rulez... :D
- A hozzászóláshoz be kell jelentkezni
Ha egyszerűen beírod a domaint a select-be akkor megy?
- sql_select: select password from users where email = '%u'
+ sql_select: select password from users where email = '%u@example.com'
Szerk: egyébként a @ nem valamilyen paraméter átadó megjelölés?
Szerk2: esetleg karakterkódolási probléma (UTF8, ...)
- A hozzászóláshoz be kell jelentkezni
Ezt is próbáltam, nem megy.
Mintha rá sem nézne az smtpd.conf fájlra.
- A hozzászóláshoz be kell jelentkezni
Az MySQL napló szerint lefut a select?
Esetleg próbáld meg where feltétel nélkül, vagy egy másik paraméterre szürni (ID, ...), hogy a select mindenképpen adjon eredményt. Ezzel kiszűrhető, hogy a paraméter átadással van a gond, vagy valami mással van a probléma.
- A hozzászóláshoz be kell jelentkezni
Igen a SELECT lefut. Paraméterként pedig nem a komplett e-mail címet, hanem csak a @ előtti részt adja át.
Tehát:
SELECT password FROM users WHERE email = 'nev@domain.hu'
helyett ez fut le
SELECT password FROM users WHERE email = 'nev'
- A hozzászóláshoz be kell jelentkezni
esetleg '%s' ?
"A +1 az a proletárlájk."
- A hozzászóláshoz be kell jelentkezni
courierben nem vagyok otthon, de ha az nem a saslauthd-n keresztul authentikal, akkor esetleg probald meg a sasl-t RIMAP -ra ravenni.
- A hozzászóláshoz be kell jelentkezni
nekem az a megfejtesem volt Centoson, hogy a saslauthd _socketjet_, ami defaulte a /var/run/saslauthd alatt van be kellett vinni a postfixnak megfelelo /var/spool/postfix/var/run/saslauthd konyvtar ala.
- A hozzászóláshoz be kell jelentkezni
Igen, köszönöm, ez is gond volt, de aztán ezen már túl vagyok.
- A hozzászóláshoz be kell jelentkezni
Jó reggelt!
Most már biztos, hogy nem az általam szerkesztett smtpd.conf
/etc/postfix/smtpd.conf
vagy
/etc/postfix/sasl/smtpd.conf
fájlból veszi a konfigot a Postfix.
Beírtam a lefuttatandó SQL-be egy szót és az authentikáláskor nem az a sor futott le. :)
Vicces.
Nem tudom honnan veszi az sql parancsot.
Rákerestem az /etc könyvtrában, de ott nincs az a parancs, ami a mysql logban megjelenik.
Nem értem.
Hogyan lehet megtudni vagy beállítani neki, hogy melyik fájlból veszi/vegye a Postfix a smtp authentikációhoz szükséges SQL kérést?
- A hozzászóláshoz be kell jelentkezni
smtpd_sasl_path= ?
- A hozzászóláshoz be kell jelentkezni
Most ez van ott:
smtpd_sasl_path = smtpd
De ez ezekszerint nem azt jelenti, hogy a postfix könyvtárában keresi a smtpd.conf-ot.
Ha elérési utat tesztek oda, azt meg nem szereti.
- A hozzászóláshoz be kell jelentkezni
nem_szereti -vv
- A hozzászóláshoz be kell jelentkezni
Ha ez áll ott:
smtpd_sasl_path = /etc/postfix/smtpd.conf
akkor a logban ez jelenik meg:
Jun 30 09:35:43 server postfix/smtpd[8988]: connect from catv-89-133-8-22.catv.broadband.hu[89.133.8.22]
Jun 30 09:35:51 server postfix/smtpd[8988]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory
Jun 30 09:35:51 server postfix/smtpd[8988]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory
Jun 30 09:35:51 server postfix/smtpd[8988]: warning: SASL authentication failure: Password verification failed
Jun 30 09:35:51 server postfix/smtpd[8988]: warning: catv-89-133-8-22.catv.broadband.hu[89.133.8.22]: SASL PLAIN authentication failed: authentication failure
Jun 30 09:35:52 server postfix/smtpd[8988]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory
Jun 30 09:35:52 server postfix/smtpd[8988]: warning: SASL authentication problem: unable to open Berkeley db /etc/sasldb2: No such file or directory
Jun 30 09:35:52 server postfix/smtpd[8988]: warning: catv-89-133-8-22.catv.broadband.hu[89.133.8.22]: SASL LOGIN authentication failed: authentication failure
- A hozzászóláshoz be kell jelentkezni
doksiban le van írva, hogy a .conf nem kell a végére, azt odateszi. (ugye eddig se volt)
ha nem találja, akkor egyéb helyeken keresi, mint pl. /usr/lib/sasl2, /var/lib/sasl2, ilyesmi, disztrófügg. (milyen disztró ez?) illetve elször /usr/lib/sasl2-ben keresi elvileg, és ha ott talál config fájlt, akkor azt hasznája.
de ha eddig ment a sasl mysql pluginnel, most meg nem megy és sasldb-t használna (ha látná a chrootból), akkor ezek szerint mégiscsak van hatása ennek az opciónak.
- A hozzászóláshoz be kell jelentkezni
Ez egy Debian Squeeze.
Odatettem neki a fájlokat, nincs hatás.
Átállítottam a path-t akkor meg nem akar mysql-ből dolgozni.
Nagyon kíváncsi vagyok már, hogy mi lehet az egész hátterében.
- A hozzászóláshoz be kell jelentkezni
Ha mysqlbol akarod akkor ezt ird szerintem.
smtpd_sasl_path = mysql:/etc/postfix/smtpd.conf
- A hozzászóláshoz be kell jelentkezni
Ezt sem eszi meg :(
- A hozzászóláshoz be kell jelentkezni
Igy mi kerül a logba?
- A hozzászóláshoz be kell jelentkezni
Ugyanaz. Csak azért mégis más, mint a fenti, mert a sasldb2-t beraktam már a chrootba.
Jun 30 14:15:55 server postfix/smtpd[11891]: connect from catv-89-133-8-22.catv.broadband.hu[89.133.8.22]
Jun 30 14:15:57 server postfix/smtpd[11891]: warning: SASL authentication failure: Password verification failed
Jun 30 14:15:57 server postfix/smtpd[11891]: warning: catv-89-133-8-22.catv.broadband.hu[89.133.8.22]: SASL PLAIN authentication failed: authentication failure
Jun 30 14:15:58 server postfix/smtpd[11891]: warning: catv-89-133-8-22.catv.broadband.hu[89.133.8.22]: SASL LOGIN authentication failed: authentication failure
Jun 30 14:16:01 server postfix/smtpd[11891]: disconnect from catv-89-133-8-22.catv.broadband.hu[89.133.8.22]
Próbáltam a következő paraméterekkel is:
smtpd_sasl_path = mysql:/etc/postfix/smtpd.conf
smtpd_sasl_path = proxy:mysql:/etc/postfix/smtpd.conf
smtpd_sasl_path = mysql:/etc/postfix/smtpd
- A hozzászóláshoz be kell jelentkezni
Ha ezeket a paramétereket írom be, akkor teljesen figyelmen kívül hagyja a mysql-t és csak a sasldb2-ben akar keresni. Azért is van az, hogy a fenti (pár hozzászólással ezelőtti) logrészletben az /etc/sasldb2-t hiányolja ezen paraméterek esetén
- A hozzászóláshoz be kell jelentkezni
Véletlenül nem chrootolva fut a postfixed?
- A hozzászóláshoz be kell jelentkezni
De igen, úgy fut
- A hozzászóláshoz be kell jelentkezni
donatus@donatus~$ _
de akkor kérlek írd át a topic címét "Postfix SMTP küldés auth TLS-sel"-re
köszi
- A hozzászóláshoz be kell jelentkezni