Newsgroup: it.comp.os.linux.sys
Titolo: Rogne con Postfix + MySQL

Ciao a tutti,
sto mettendo su un mailserver con Postfix (2.1.4) e, dopo averne constatato
il perfetto funzionamento utilizzando i file, vorrei ora passare tutta la
configurazione dei virtual host su MySQL.
Ho messo su il database, creato l'utente/password e configurato Postfix per
utilizzare il DB, però ogni volta che mando una mail ricevo sempre il
seguente errore:
warning: connect to mysql server unix:/var/run/mysqld/mysqld.socket: Can't
connect to local MySQL server through socket
'/var/run/mysqld/mysqld.socket' (2)
Premetto che, loggandomi come utente "postfix" sia da console che con
phpMyAdmin, tutto funziona benissimo; anche il comando:
postmap -q "ute...@dominio.tld" mysql:/etc/postfix/
virtual.cf
restituisce la risposta corretta alla query.
Sembra che Postfix ignori il contenuto della configurazione
in /etc/postfix/
virtual.cf
, in quanto qualsiasi cosa ci metto nel campo
"hosts", lui cerca sempre di utilizzare il socket UNIX!! In ogni caso
dovrebbe connettersi lo stesso... bah...
Qualcuno tra voi ha già avuto un problema simile?
Grazie mille, tanti saluti a tutti.
Axel
-- 
"Un'opinione contraria alla vostra non deve essere disprezzata, ma
valutata."
(Togliere _NOSPAM_ per rispondere)

 '/var/run/mysqld/mysqld.socket' (2)
postfix si chroota in /var/spool/postfix; il socket di mysql è al di
fuori dell'ambiente chroot.
3 soluzioni possibili
1) creare un link : ln /var/run/mysqld/mysqld.sock
/var/spool/postfix/var/run/mysqld/mysqld.sock (ocio che se riavvii
postfix e/o mysql devi ricreare il link a volte)
2) cambiare chroot di postfix (sconsigliato)
3) usare il socket di rete di mysql (consigliato, ma ocio ai permessi di
accesso)
--  
Davanti a Dio non ha
importanza il successo umano, ma l'amore che si mette nel lavoro. Se
qualcuno ha Dio come cliente, lo tenga presente.--
http://www.misterfloppy.it

 Mi mostri il tuo cf?
#/etc/postfix/
main.cf
 (solo riga interessata)
virtual_alias_maps = mysql:/etc/postfix/
virtual.cf
# /etc/postfix/
virtual.cf
user=postfix
password=<password>
dbname=maildb
table=virtual
select_field=goto
where_field=address
hosts=unix:/var/run/mysqld/mysqld.sock

 '/var/run/mysqld/mysqld.socket' (2)
[CUT]
Nn dipende dal fatto che postfix gira in chroot?
Sciauz
http://www.gl-como.net

 accesso)
Ho provato anche a far questo, modificando il file di configurazione, ora
l'errore non lo da piů, ne da un altro: non riesce a fare il lookup della
tabella... mah... ora vado a mangiare, piů tardi ci controllo bene!
Grazie tante x l'aiuto!! :-)))))
Axel

 Nn dipende dal fatto che postfix gira in chroot?
Si, infatti, purtroppo non ne tenevo mica conto, eh!!
Il caldo d'Agosto si fa sentire!!! :-)
Ciao!

 ongi caso con localhost DEVE funzionare per forza.
Dunque, vediamo: la notazione era corretta, infatti facendo ascoltare MySQL
sulla canonica porta TCP tutto ha funzionato bene.
Per risolvere il problema del chroot, fare il link serve a ben poco, ho
risolto in un'altra maniera che perň non mi pare elegantissima: invece di
linkare da /var/spool/postfix/<eccetera> verso /var/run/mysqld, ho
modificato la configurazione di MySQL in modo che crei il socket
direttamente nella jail di postix, e dall'altra parte ho messo il link
simbolico. Magia: funziona!!! (ovvio).
Credo che l'unica soluzione alternativa sia quella di "aprire" il socket TCP
e lavorare tramite la porta di MySQL, anche se cosě facendo devo premunirmi
per fare in modo che dall'esterno non si "veda" il database server (la
macchina ha 5 IP pubblici!!!!).
Grazie di tutto, ciao!!!
Axel.

 macchina ha 5 IP pubblici!!!!).
lo "bindi" all'interfaccia di loop.
-- 
                          Maurizio - Tannoiser - Lemmo
                 Founder Member of ERLUG 
http://erlug.linux.it
-------------------------------------------------------------------------------
God does not play dice with the Universe.    -- Albert Einstein.