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/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:

postalias /etc/aliases
postmap /etc/postfix/canonical
postmap /etc/postfix/virtual

postfix check # per controllare se ci sono errori

/etc/init.d/postfix start


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.

-- 
Riley: "Forrest. Oh, god."

Forrest: "God has nothing to do with it."
        --Buffy the Vampire Slayer: Primeval

Maurizio - Tannoiser - Lemmo
Founder Member of ERLUG (Emilia Romagna Linux User Group)
http://erlug.linux.it


















Copyright (c) 2002 Sythos.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. A copy of the license is included in the section entitled "GNU
Free Documentation License".