Postfix: table lookup problem

24 risposte [Ultimo contenuto]
Ritratto di cheis
cheis
(Monster)
Offline
Monster
Iscritto: 07/11/2004
Messaggi: 349

Sto cercando di installare postfix con supporto per autenticazione mysql, ho controllato che nei vari file sia tutto ok e così mi sembra.. Ma i log mi danno:

/var/log/mail.err:
<br />postfix/trivial-rewrite[7232]: fatal: mysql:/etc/postfix/mysql/mysql-virtual-alias.cf(0,100): table lookup problem

In /var/log/mail.log ho dei warning:

postfix/pickup[7461]: A7D066E4566: uid=0 from=&lt;root&gt;<br />postfix/cleanup[7463]: warning: connect to mysql server localhost: Can&#039;t connect to local MySQL server through socket &#039;/var/run/mysqld/mysqld.sock&#039; (2)<br />postfix/cleanup[7463]: warning: A7D066E4566: virtual_alias_maps map lookup problem for root@pippo.pluto.org<br />postfix/pickup[7461]: warning: maildrop/AD6636E4057: Error writing message file

Ho provato a mettere trivial-rewrite in master.cf anche non chrottato ma l'errore non cambia (di defautl era settato '-').

Dove sbaglio?? Grazie mille.

[=x-small]Knowledge is power: SHARE IT BABY!!![/]
_____________________________________________

Ritratto di kripsio
kripsio
(Collaboratore)
Offline
Collaboratore
Iscritto: 10/09/2004
Messaggi: 1486

In realta' li c'e' un problema sul mysql.
Verifica che l'utente che hai scelto e creato per fare le richieste al mysql abbia accesso al db mysql.

Eventualmente posta qualche file di configurazione.

Ciau Smile

Ritratto di cheis
cheis
(Monster)
Offline
Monster
Iscritto: 07/11/2004
Messaggi: 349

L'utente che ho scelto per connettermi si connette:
#mysql -u postfix -ppass
e accedo alla shell di msql.

questo è il mio main.cf
<br />command_directory = /usr/sbin<br /># daemon_directory definisce il path dove risiedono i programmi indicati nel file master.cf<br />#(anche lui presente in /etc/postfix/)Il proprietadio di questa cartella<br />#DEVE ESSERE root.<br />daemon_directory = /usr/lib/postfix<br /><br /># Directory dove risiedono i programmi di postfix<br />program_directory = /usr/lib/postfix<br /><br /># L&#039;utente con cui verranno mandati in esecuzione tutti i processi di cui<br /># postfix neecessita: è consigliabile usare un utente con privilegi minimi (l&#039;utente postfix viene creato automaticamente all&#039;installazione del<br /># demone), che non sia daemon o nobody.<br />mail_owner = postfix<br /><br /># Privilegi minimi dell&#039;agente di smistamento posta locale<br />default_privs = nobody<br /><br /><br />#Nome del mail server<br />myhostname = bestiolina<br /><br /># Il nome del vostro dominio <br />mydomain = pippo.org<br /><br /># Il dominio che risulterà l&#039;origine delle e-mail<br />myorigin = $myhostname.$mydomain<br /><br /># Le interfacce da cui postfix dovrà accettare le email<br />inet_interfaces = all<br /><br /># L&#039;elenco dei domini che postfix considererà locali: per tali domini postfix<br /># consegnerà le maill localmente senza interpellare l&#039;esterno.<br />mydestination = $myhostname, /etc/postfix/local-domains<br /><br /># Elenco degli ip collegati al pc e ritenute locali.<br /># ESEMPIO:<br /># la rete di casa mia è 192.168.1.0 con netmask 255.255.255.0 quindi considero<br /># locali, oltre il localhost, tutti gli ip di quella sottorete.<br />mynetworks = 127.0.0.0/8, 192.168.0.1/24<br /><br /># Se indicato, postfix manderà le mail a questo smtp delegando a lui il compito di<br /># consegnarle. Se non viene indicato provvederà lo stesso postfix a consegnarle.<br />relayhost = mail.eutelia.it<br /><br /># Elenco degli alias di sistema<br />alias_maps = hash:/etc/postfix/aliases<br />alias_database = hash:/etc/postfix/aliases<br /><br /># Formato della mailbox (mbox in /var/spool/mail/ oppure Maildir/ in ~/Maildir/)<br />#: per comodità (e preferenza :-&gt; ) useremo Maildir/<br />home_mailbox = Maildir/<br /><br /># Programma esterno (MTA) a cui passare le mail per la consegna<br />mailbox_command = /usr/bin/procmail<br /><br /><br />smtpd_banner = $myhostname ESMTP pippo.org<br /><br /># Imponiamo delle restrizioni su chi può collegarsi al server di posta<br />smtpd_client_restrictions = permit_mynetworks, reject_unknown_hostname, reject_non_fqdn_hostname<br />smtpd_sender_restrictions = permit_mynetworks, reject_unknown_sender_domain<br /><br /># Richiediamo l&#039;uso del comando HELO per stabilire la connessione e imponiamoo<br /># delle restrizioni a chi si collega:<br />smtpd_helo_required = yes<br />smtpd_helo_restriction = reject_invalid_hostname, reject_unknown_hostname<br /># Tempo di attesa in caso di errore<br />smtp_error_sleep_time = 1s<br /># Disabilitiamo il comando verify per la verifica dell&#039;esistenza degli utenti<br />disable_vrfy_command = yes<br />message_size_limit = 20480000<br /><br /><br />##################<br />#<br />#Alias Virtuali<br />#<br />##################<br />virtual_transport = virtual<br />virtual_mailbox_maps = mysql:/etc/postfix/mysql/mysql-virtual-mailbox.cf<br />virtual_mailbox_domains = mysql:/etc/postfix/mysql/mysql-virtual-domains.cf<br />virtual_alias_maps = mysql:/etc/postfix/mysql/mysql-virtual-alias.cf<br />virtual_mailbox_base = /var/spool/mail/<br />virtual_mailbox_limit = 51200000<br />virtual_minimum_uid = 1001<br />virtual_uid_maps = static:1001<br />virtual_gid_maps = static:1001<br /><br />virtual_maps = hash:/etc/postfix/virtual<br /><br />smtp_sender_restrictions=hash:/etc/postfix/address-reject<br />smtp_client_restrictions=hash:/etc/postfix/host-reject<br /><br />##<br />#TLS<br />##<br />##<br /># Cripto i messaggi in ingresso al mailserver<br />##<br />smtpd_use_tls = yes<br />#smtpd_tls_auth_only = yes<br />smtpd_tls_key_file = /etc/sslcerts/newreq.pem<br />smtpd_tls_cert_file = /etc/sslcerts/newcert.pem<br />smtpd_tls_CAfile = /etc/sslcerts/cacert.pem<br />smtpd_tls_loglevel = 0<br />smtpd_tls_receiver_header = yes<br />smtpd_tls_session_cache_timeout = 3600s<br />tls_random_source = dev:/dev/urandom<br />##<br /># Cripto i messaggi di uscita al mailserver<br />##<br />smtp_use_tls = yes<br />smtp_tls_key_file = /etc/sslcerts/newreq.pem<br />smtp_tls_cert_file = /etc/sslcerts/newcert.pem<br />smtp_tls_CAfile = /etc/sslcerts/cacert.pem

mysql-virtual-alias.cf
user = postfix<br />password = pass<br />hosts = localhost<br />dbname = postfix<br />table = alias<br />select_field = goto<br />where_field = address<br />

Possono servire???

[=x-small]Knowledge is power: SHARE IT BABY!!![/]
_____________________________________________

Ritratto di cheis
cheis
(Monster)
Offline
Monster
Iscritto: 07/11/2004
Messaggi: 349

Ho risolto... Il problema era localhost in mysql-virtual-alias.cf da sostituire con 127.0.0.1; e così per tutti i files map.

Ora sembra andare difatti /var/log/mail.err non mi dà più errori;
/var/log/mail.log e /var/log/mail.info
Oct  5 22:37:12 bestilina postfix/postfix-script: starting the Postfix mail system<br />Oct  5 22:37:12 bestilina postfix/master[9627]: daemon started -- version 2.2.4, configuration /etc/postfix

Se non ho capito male con questa configurazione smisto le email che arrivano al mio dominio ai vari utenti del sistema.
Ma se volessi realizzare un server mail tipo quello dei vari ISP nel senso configurabile per esempio con client di posta tipo evolution che ti chiede stmp pop utente e password dovrei installare pop3d?? Potrei quindi mettere il nome del mio server mail come pop e smtp???

Grazie, ciao.
Wink

[=x-small]Knowledge is power: SHARE IT BABY!!![/]
_____________________________________________

Ritratto di kripsio
kripsio
(Collaboratore)
Offline
Collaboratore
Iscritto: 10/09/2004
Messaggi: 1486

Quote:

cheis ha scritto:
Ho risolto... Il problema era localhost in mysql-virtual-alias.cf da sostituire con 127.0.0.1; e così per tutti i files map.

gh. esatto... mi hai preceduto Smile

Ma se volessi realizzare un server mail tipo quello dei vari ISP nel senso configurabile per esempio con client di posta tipo evolution che ti chiede stmp pop utente e password dovrei installare pop3d?? Potrei quindi mettere il nome del mio server mail come pop e smtp???

ti incollo un po' di appunti: se ti fan comodo...

Quote:

Pacchetti da installare:

Packages you will absolutely need:

* postfix (initial configuration: "Internet site")
* postfix-mysql
* postfix-doc
* mysql-client

apt-get install postfix-mysql postfix-doc mysql-client

If you intend to run the MySQL server on the same machine:

* mysql-server

If you want to offer mail access using POP3/IMAP you need:

* courier-authdaemon
* courier-authmysql
* courier-maildrop
* courier-pop (for unencrypted POP3 access)
* courier-pop-ssl (for SSL-encrypted POP3 access)
* courier-imap (for unencrypted IMAP access)
* courier-imap-ssl (for SSL-encrypted IMAP access)

apt-get install courier-authdaemon courier-authmysql courier-maildrop courier-pop courier-pop-ssl courier-imap courier-imap-ssl

Creiamo il database per la nostra autenticazione:
mysqladmin -u [username] -p -h [hostname] create provider

Diamo accesso ad un utente al database:
grant all on provider.* to postfix@localhost identified by 'passssword';
se serve diamo accesso all'utente all'ip pubblico
grant all on provider.* to postfix@62.94.168.93 identified by 'passssword';

Creiamo le tabelle necessarie

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
CREATE TABLE domains (
domain varchar(50) NOT NULL,
PRIMARY KEY (domain),
UNIQUE KEY domain (domain) )
TYPE=MyISAM;

CREATE TABLE forwardings (
source varchar(80) NOT NULL,
destination TEXT NOT NULL,
PRIMARY KEY (source) )
TYPE=MyISAM;

CREATE TABLE users (
email varchar(80) NOT NULL,
password varchar(20) NOT NULL,
UNIQUE KEY email (email)
) TYPE=MyISAM;
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

Ci possono essere problemi per la connessione socket a mysql:
Commentare "skip-networking" da /etc/mysql/my.cnf e riavviare mysql

File in /etc/postfix

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

mysql-virtual_domains.cf
^^^^^^^^^^^^^^^
user = postfix
password = gdr4ever
dbname = provider
table = domains
select_field = 'virtual'
where_field = domain
hosts = 62.94.168.93

mysql-virtual_forwardings.cf
^^^^^^^^^^^^^^^^^
user = postfix
password = gdr4ever
dbname = provider
table = forwardings
select_field = destination
where_field = source
hosts = 62.94.168.93

mysql-virtual_mailboxes.cf
^^^^^^^^^^^^^^^^
user = postfix
password = gdr4ever
dbname = provider
table = users
select_field = concat(email,'/')
where_field = email
hosts = 62.94.168.93

mysql-virtual_email2email.cf
^^^^^^^^^^^^^^^^^
user = postfix
password = gdr4ever
dbname = provider
table = users
select_field = email
where_field = email
hosts = 62.94.168.93

Important Thing:
Make sure nobody but root can read these files. Otherwise everybody on your system could read your database access password in plain text. Run "chmod o= /etc/postfix/mysql-virtual_*.cf" to steal others the privileges. You also need to set the group of these files to postfix by running "chgrp postfix /etc/postfix/mysql-virtual_*.cf".

Creiamo in utente virtuale

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

groupadd -g 5000 vmail
useradd -g vmail -u 5000 vmail -d /home/vmail -m

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

Editiamo il file /etc/postfix/main.cf

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

# See /usr/share/postfix/main.cf.dist for a commented, more complete version

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

myhostname = kweb002.lalunanera.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = localhost
relayhost =
mynetworks = 127.0.0.0/8
mailbox_command =
mailbox_size_limit = 0
recipient_delimiter = +

#add by kripsio
virtual_alias_domains =
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual_forwardings.cf mysql:/etc/postfix/mysql-virtual_email2email.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual_mailboxes.cf
virtual_mailbox_base = /home/vmail
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination

#defer_transports = smtp

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

Configurare pop3/imap

First you need to edit the file /etc/courier/authdaemonrc and change the directive authmodulelist to "authmysql" like this:

authmodulelist="authmysql"

Then you need to define the fields of the MySQL database table in /etc/courier/authmysqlrc like this:

MYSQL_SERVER localhost
MYSQL_USERNAME postfix
MYSQL_PASSWORD password
MYSQL_PORT 0

MYSQL_SERVER ...
MYSQL_USERNAME ...
MYSQL_PASSWORD ...
MYSQL_PORT 0
MYSQL_DATABASE provider
MYSQL_USER_TABLE users
#MYSQL_CRYPT_PWFIELD (comment this out)
MYSQL_CLEAR_PWFIELD password
MYSQL_UID_FIELD 5000
MYSQL_GID_FIELD 5000
MYSQL_LOGIN_FIELD email
MYSQL_HOME_FIELD "/home/vmail"
#MYSQL_NAME_FIELD (comment this out)
MYSQL_MAILDIR_FIELD concat(email,'/')

In questo modo puoi crere domini (piu' o meno fake a seconda di quel che ti serve) ed assegnare agli stessi gli utenti virtuali e gli eventuali alias.

Occhio se metti la macchina pubblica a chiudere l'open relay.

Ciau Smile

Ritratto di cheis
cheis
(Monster)
Offline
Monster
Iscritto: 07/11/2004
Messaggi: 349

Grazie mille Kripsio...
Volevo chiederti delle altre cose che nn mi sono chiare:

1) sul tuo main.cf relayhost non è assegnato a nulla; ma così non si rischia di esser messi in una black list??
Io quindi ho lasciato
ralayhost = mail.eutelia.it

2) Non ho ben capito la funzione dei 4 files "virtuali"..
Per esmpio
mysql-virtual_domains.cf<br />^^^^^^^^^^^^^^^<br />user = postfix<br />password = gdr4ever<br />dbname = provider<br />table = domains<br />select_field = &#039;virtual&#039;<br />where_field = domain<br />hosts = 62.94.168.93
Non mi è chiaro cosa cerchi questa query; il campo 'virtual' non esiste c'è solo domain nella tabella domains

mysql-virtual_forwardings.cf<br />^^^^^^^^^^^^^^^^^<br />user = postfix<br />password = gdr4ever<br />dbname = provider<br />table = forwardings<br />select_field = destination<br />where_field = source<br />hosts = 62.94.168.93
Qui la query restiruisce il campo destination della riga che corrisponde al valore di source. Giusto??

mysql-virtual_mailboxes.cf<br />^^^^^^^^^^^^^^^^<br />user = postfix<br />password = gdr4ever<br />dbname = provider<br />table = users<br />select_field = concat(email,&#039;/&#039;)<br />where_field = email<br />hosts = 62.94.168.93
Qui la query restiruisce il campo email/ della riga che corrisponde al valore di email?

mysql-virtual_email2email.cf<br />^^^^^^^^^^^^^^^^^<br />user = postfix<br />password = gdr4ever<br />dbname = provider<br />table = users<br />select_field = email<br />where_field = email<br />hosts = 62.94.168.93
Qui la query restiruisce il campo email della riga che corrisponde al valore di email?

Ciao e grazie ancora.. Big Grin

[=x-small]Knowledge is power: SHARE IT BABY!!![/]
_____________________________________________

Ritratto di kripsio
kripsio
(Collaboratore)
Offline
Collaboratore
Iscritto: 10/09/2004
Messaggi: 1486

Quote:

cheis ha scritto:
Grazie mille Kripsio...
Volevo chiederti delle altre cose che nn mi sono chiare:

1) sul tuo main.cf relayhost non è assegnato a nulla; ma così non si rischia di esser messi in una black list??
Io quindi ho lasciato
ralayhost = mail.eutelia.it

Lasciandolo vuoto usi la macchina stessa come relay senza appoggiarti a relay esterni. Se puoi usa quello dell'isp (a meno che l'isp non sei tu Tongue)
L'opzione:
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
inibisce l'open relay per le reti != da quelle specificate (tipicamente 127.0.0.0/8 / 192.168.x.x/24)
un controllo puoi farlo con questo comando:
<br />telnet relay-test.mail-abuse.org<br />
viene eseguito da remoto un tentativo di relay.

Quote:

[ 8-<---8-<---8-<---8-<--8-< about conf file]

Ti incollo altri appunti

Quote:

mysql-virtual_domains.cf

This is a simple mapping of your virtual domain name (LHS) to the string 'virtual' (RHS). This mapping is used for the virtual_mailbox_domains definition where just the LHS matters. (The string could be effectively anything - set it to "banana daiquiri" if you like.)

Create the file and replace the '...' by your database user and database server name. Do not use "localhost" as the server name because Postfix would try to use the MySQL socket for communication. If the database server runs on your server then 127.0.0.1 means to use TCP/IP communication.

user = provider_admin
password = ...
dbname = provider
table = domains
select_field = 'virtual'
where_field = domain
hosts = 127.0.0.1

mysql-virtual_forwardings.cf

This mapping reads the 'forwardings' table to provide a way to redirect email addresses. It simply maps the 'source' column to the 'destination' column. We will use it for the virtual_alias_maps mapping.

user = provider_admin
password = ...
dbname = provider
table = forwardings
select_field = destination
where_field = source
hosts = 127.0.0.1

mysql-virtual_mailboxes.cf

The next definition file deals with user mailboxes. It tells Postfix where to store email for a specific email address. We will use it later in the virtual_mailbox_maps mapping. Postfix will search the 'mailbox' column (RHS) for a given 'email' address (LHS). The purpose of the weird select_field line is to convert an email like 'user@domain.net' to a path like 'domain.net/user/' which is the place where the user's mailbox is found. It contains a trailing slash so Postfix will create a maildir structure instead of a mailbox file. This is needed for the Courier POP3 and IMAP services later.

user = provider_admin
password = ...
dbname = provider
table = users
select_field = CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1),'/')
where_field = email
hosts = 127.0.0.1

mysql-virtual_email2email.cf

Another quirk of virtual domains is the precedence of the virtual_alias_maps mapping when using catch-all addresses. ("Catch-all" means you are using a forwarding like "@domain.com"->"service@domain.com" to catch all email that is sent to any user name in that domain.) If you would map @domain.com but not the other specific addresses specific.user@domain.com all email would be delivered to @domain.com even if the email address is listed in virtual_mailbox_maps.

This is a simple mapping for all email addresses in the users table to themselves to work around the above problem.

user = provider_admin
password = ...
dbname = provider
table = users
select_field = email
where_field = email
hosts = 127.0.0.1

Quote:

Ciao e grazie ancora.. Big Grin

ciauciau Big Grin

Ritratto di cheis
cheis
(Monster)
Offline
Monster
Iscritto: 07/11/2004
Messaggi: 349

Kripsio approfitto ancora della tua disponibilità per chiarire delle cose:

Io ho capito così, dimmi se sbaglio:

Quote:

This is a simple mapping of your virtual domain name (LHS) to the string 'virtual' (RHS).

Questo è unsemplice modo per mappare LHS (Left hand side), ossia la parte a sinistra dell'@ di una mail, con la parte RHS a destra dell'indirizzo email

Quote:

This mapping is used for the virtual_mailbox_domains definition where just the LHS matters.

Questa corrispondenza è usata da virtual_mailbox_domains (che non ho capito quale file sia) dove serve solo la parte a sinistra della @
Quote:

(The string could be effectively anything - set it to "banana daiquiri" if you like.)

Questa stringa LHS puo' essere qsiasi.
Quote:

Create the file and replace the '...' by your database user and database server name.

Ci si riferisce a 'virtual'?? O a qcos'altro??

Quote:

This mapping reads the 'forwardings' table to provide a way to redirect email addresses. It simply maps the 'source' column to the 'destination' column. We will use it for the virtual_alias_maps mapping.

Questo file mappa degli indirizzi su degli altri. Ma devo specificare tutto l'indirizzo o solo LSH? Devo rimappare anche un indirizzo unico? tipo
mysql&gt; select * from forwardings;<br />+-----------------+-----------------+<br />| source          | destination     |<br />+-----------------+-----------------+<br />| cheis@pippo.org |                 |<br />|                 | cheis@pippo.org |

Quote:

It tells Postfix where to store email for a specific email address. We will use it later in the virtual_mailbox_maps mapping.

Con questo file diciamo dove memorizzare i file di uno specifico indirizzo
Quote:

Postfix will search the 'mailbox' column (RHS) for a given 'email' address (LHS).

Postfix cerca la parte a destra della @ di una data email (LHS di un indirizzo). Quindi si cerca di memorizzarle in un dato modo...

Quote:

Another quirk of virtual domains is the precedence of the virtual_alias_maps mapping when using catch-all addresses. ("Catch-all" means you are using a forwarding like "@domain.com"->"service@domain.com" to catch all email that is sent to any user name in that domain.)

C'è da considerare la precedenza che ha virtual_alias_maps quando uso un indirizzo catch-all (che mi fa arrivare tutte le mail di un determinato dominio.);
Quote:

If you would map @domain.com but not the other specific addresses specific.user@domain.com all email would be delivered to @domain.com even if the email address is listed in virtual_mailbox_maps.

Se si mappasse @domain.com ma non gli indirizzi specifici
tutte le mail arriverebbero a @domain.com invece che all'indirizzo specificato da virtual_mailbox_maps.

Le altre tabelle le ho riempite così è corretto??
mysql&gt; select * from domains;<br />+-----------+<br />| domain    |<br />+-----------+<br />| pippo.org |<br />+-----------+<br />1 row in set (0.00 sec)<br /><br />mysql&gt; select * from users;<br />+-------+----------+<br />| email | password |<br />+-------+----------+<br />| cheis | pass|<br />+-------+----------+<br />1 row in set (0.00 sec)

Ho capito qcosa o proprio un tubo?? Ti ringrazio ancora... Laughing

[=x-small]Knowledge is power: SHARE IT BABY!!![/]
_____________________________________________

Ritratto di kripsio
kripsio
(Collaboratore)
Offline
Collaboratore
Iscritto: 10/09/2004
Messaggi: 1486

Quote:

Quote:
This mapping is used for the virtual_mailbox_domains definition where just the LHS matters.

Questa corrispondenza è usata da virtual_mailbox_domains (che non ho capito quale file sia) dove serve solo la parte a sinistra della @

from postfix conf file:
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_domains.cf
quindi una corrispondenza tra db e conf di postfix per quanto riguarda di domini virtuali (fakedomain1.com, fakedoamin2.com truepublicdomain.com truepublicdomain2.com and so on)

Quote:

Quote:
Create the file and replace the '...' by your database user and database server name.

Ci si riferisce a 'virtual'?? O a qcos'altro??

no alla user e pass dell'utente mysql che userai (nel mio caso l'utente postfix con password passssswrd).

Quote:

Quote:
This mapping reads the 'forwardings' table to provide a way to redirect email addresses. It simply maps the 'source' column to the 'destination' column. We will use it for the virtual_alias_maps mapping.

Questo file mappa degli indirizzi su degli altri. Ma devo specificare tutto l'indirizzo o solo LSH? Devo rimappare anche un indirizzo unico? tipo
mysql&gt; select * from forwardings;<br />+-----------------+-----------------+<br />| source          | destination     |<br />+-----------------+-----------------+<br />| cheis@pippo.org |                 |<br />|                 | cheis@pippo.org |

serve per creare alias.
source=> pipponzo@truedomains.com destination=>pipponzo@fakedomain.com
Tipo: se gestisci sulla macchina 200 domini virtuali al posto di configurare una mail webmaster@dominio1.com webmaster@dominio2.com eccecc che devi scaricare singolarmente puoi configurarne una reale che scarichi e per le altre fare alias (webmaster@dominio$x.com) in modo che postfix ridiriga automaticamente la posta diretta a una casella finta a una vera.
Ci sono sistemi (se ricordo bene) anche per ridirigere domini interi (potrei sbagliare): in ogni caso creare uno script php che parsi un file di testo se devi montare 1000 mail simili e' banale.

Quote:

It tells Postfix where to store email for a specific email address. We will use it later in the virtual_mailbox_maps mapping.

Con questo file diciamo dove memorizzare i file di uno specifico indirizzo
Quote:

Postfix will search the 'mailbox' column (RHS) for a given 'email' address (LHS).

Postfix cerca la parte a destra della @ di una data email (LHS di un indirizzo). Quindi si cerca di memorizzarle in un dato modo...

Quote:

C'è da considerare la precedenza che ha virtual_alias_maps quando uso un indirizzo catch-all (che mi fa arrivare tutte le mail di un determinato dominio.);

Consiglio: non usare mai una catchall.

Quote:

Le altre tabelle le ho riempite così è corretto??
mysql&gt; select * from domains;<br />+-----------+<br />| domain    |<br />+-----------+<br />| pippo.org |<br />+-----------+<br />1 row in set (0.00 sec)<br /><br />mysql&gt; select * from users;<br />+-------+----------+<br />| email | password |<br />+-------+----------+<br />| cheis | pass|<br />+-------+----------+<br />1 row in set (0.00 sec)

sure. Dovrebbe esserci il sistema su curier per crittare le password se ben ricordo e se ti interessa.
Quote:

Ho capito qcosa o proprio un tubo?? Ti ringrazio ancora... Laughing

Yep, imho hai capito tutto Smile

Ritratto di cheis
cheis
(Monster)
Offline
Monster
Iscritto: 07/11/2004
Messaggi: 349

Quote:

kripsio ha scritto:
...
Dovrebbe esserci il sistema su curier per crittare le password se ben ricordo e se ti interessa...

E me lo chiedi anche?? Non vedi che sono lanciatissimo??? :-P Se posso "abusare" ancora della tua pazienza lo faccio più che volentieri...

Non so più come ringraziare, grazie. Laughing Laughing

[=x-small]Knowledge is power: SHARE IT BABY!!![/]
_____________________________________________

Ritratto di cheis
cheis
(Monster)
Offline
Monster
Iscritto: 07/11/2004
Messaggi: 349

Dopo opportune modifiche sono arrivato al punto che non riesco a loggarmi da client di posta:
Evolution mi dà:
Unable to connect to POP server bestiolina.pippo.org.<br />Error sending password: Operation now in progress.

/var/log/mail.log
Oct  7 10:29:39 bestilina courierpop3login: Connection, ip=[::ffff:192.168.0.3]<br />Oct  7 10:29:39 bestilina courierpop3login: couriertls: connect: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number<br />Oct  7 10:29:39 bestilina courierpop3login: Connection, ip=[::ffff:192.168.0.3]<br />

/var/log/mail.err non mi dà errori;

/var/log/mail.info mi dà:
Oct  7 10:29:39 bestilina courierpop3login: couriertls: connect: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number<br />

Stallo... Wink.

[=x-small]Knowledge is power: SHARE IT BABY!!![/]
_____________________________________________