http://www.mrshark.it/qechowto/configurazionepostfix.html -per inviare una mail di test da command-line: echo prova|mailx -s prova a124142@libero.it -per verificare l'MX: dig pluto.linux.it mx +noadditional +noauthority +nocomments +nocmd -per verificare se attivo il daemon: netstat -tan | grep 25 -per verificare la coda: mailq -per inviare le mail in coda: postfix flush -per inviare la posta in coda inserire in crontab rilasciamail, lo script descritto in seguito: 15 * * * * /usr/sbin/rilasciamail # flush della posta al quindicesimo minuto di ogni ora -verificare gli alias -ricordarsi che a fronte di modifiche ai file di configurazione devono essere ricompilati e restartato postfix -serve: postfix, procmail, nslookup (bind-utils) e uno script per automatizzare ulteriore howto: Ok, a grande richiesta, ecco gli step per la configurazione di postfix per una dialup machine monoutente. Per situazioni differenti, please rifatevi alla docu. (in attesa di un certo paper... sorry dario...) ==== Begin Installate postfix (non mi interessa come, sorgenti, pacchetti rpm, deb, evocazione, summon elemental...), avendo cura che sia l'unico MTA sulla macchina (alcune distro installano sendmail a default). editate il file /etc/aliases: aggiungete un entry che rediriga la posta di root al vostro utente, ovvero: root: io - fine aliases editate /etc/postfix/main.cf modificate le seguenti entry, lasciando invariate le altre cose: myhostname = "il nome fqdn della vostra macchina" # quello che avete anche in /etc/hosts, sia eventualmente anche localhost.localdomain mydomain = "il vostro dominio di appartenenza" # stesso discorso. nel caso anche localdomain myorigin = "cosa devo attaccare all'indirizzo dopo @" # tipicamente $mydomain andra` benissimo. relayhost = "server mail del vostro provider" # meglio se tra [] e con l'ip anziche` il nome defer_transports = smtp disable_dns_lookup = yes alias_maps = hash:/etc/aliases # di solito commentato in diverse versioni, scegliete quella giusta alias_database = hash:/etc/postfix/aliases # idem mailbox_command = /usr/bin/procmail canonical_maps = hash:/etc/postfix/canonical virtual_maps = hash:/etc/postfix/virtual - fine main.cf create due file in /etc/postfix canonical virtual in canonical scrivete: "utente locale" "indirizzo internet" # esempio pippo pippo@libero.it in virtual scrivete: "indirizzo internet" "utente locale" # il contrario ecco un esempio reale (indovinate da dove viene): NB: io metto tutti i file in /etc/postfix, anche alias, per comodita` [mizio@child mizio]$ cat /etc/postfix/aliases | egrep ^root root: mizio [mizio@child mizio]$ cat /etc/postfix/main.cf | egrep -v ^# | egrep -v ^$ queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix mail_owner = mail myhostname = child.deepspace mydomain = deepspace canonical_maps = hash:/etc/postfix/canonical alias_maps = hash:/etc/postfix/aliases virtual_maps = hash:/etc/postfix/virtual mail_spool_directory = /var/spool/mail mailbox_command = /usr/bin/procmail debug_peer_level = 2 debugger_command = PATH=/usr/bin:/usr/X11R6/bin xxgdb $daemon_directory/$process_name $process_id & sleep 5 alias_database = hash:/etc/postfix/aliases relayhost = [193.70.192.50] # mail.libero.it defer_transports = smtp disable_dns_lookup = yes mizio@child mizio]$ cat /etc/hosts | grep child 192.168.1.30 child.deepspace child mizio@child mizio]$ cat /etc/postfix/canonical mizio tann@libero.it [mizio@child mizio]$ cat /etc/postfix/virtual tann@libero.it mizio fine esempio reale. Fatto tutto questo digitate in sequenza: /etc/init.d/postfix stop # stoppo la posta postalias /etc/postfix/aliases # compilo gli alias postmap /etc/postfix/canonical # compilo i sender e receiver postmap /etc/postfix/virtual # compilo i virtuali postfix check # per controllare se ci sono errori /etc/init.d/postfix restart # riavvio la posta /usr/bin/mailq # verifico la coda /usr/sbin/postfix flush # rilascio la posta Accorgimenti: La posta, cosi`, esce solo ad ogni "postfix flush" oppure "/usr/sbin/sendmail -q" per i romantici. potete fare uno scriptino cosi`: --- CUT HERE #!/bin/sh # Start deliveries. /usr/sbin/sendmail -q # Allow deliveries to start. sleep 10 # Loop until all messages have been tried at least once. while mailq | grep '^[^ ]*\*' >/dev/null do sleep 10 done --- CUT HERE da far girare quando siete connessi (tramite ip-up o ip-down a seconda dei gusti..) ==== End Ps: funziona. Maurizio - Tannoiser - Lemmo Founder Member of ERLUG (Emilia Romagna Linux User Group) http://erlug.linux.it