postfix+maildrop probléma

postfix+maildrop probléma

Hozzászólások

Sziasztok!

Szeretném elérni, hogy a maildrop a $HOME/Maildir könyvtárba beszórja a leveleket. A master.cf-ben ez van:

maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}

A log meg ezt mondja:
maildrop: Invalid user specified"

Transport file:
azen.domauniem.hu maildrop

Mi a megoldás?

[quote:114b3aa886="BTuning"]Sziasztok!

Szeretném elérni, hogy a maildrop a $HOME/Maildir könyvtárba beszórja a leveleket. A master.cf-ben ez van:

maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}

A log meg ezt mondja:
maildrop: Invalid user specified"

Transport file:
azen.domauniem.hu maildrop

Mi a megoldás?

A usereket sql-ben tárolod?

[quote:e470ca14f6="BTuning"]Sziasztok!

Szeretném elérni, hogy a maildrop a $HOME/Maildir könyvtárba beszórja a leveleket. A master.cf-ben ez van:

maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}

A log meg ezt mondja:
maildrop: Invalid user specified"

Transport file:
azen.domauniem.hu maildrop

Mi a megoldás?

Ehhez minek neked maildrop? Egyébként egy "postfix gondjaim" topikkal jobban jártál volna, meg a fórum is. :P

A barátod a sima egyszerű maildir -es delivery a virtual: -al.

A ${recipient} -et cseréld le ${user}-re a master.cf-ben.

Ha virtualra állítom a dolgokat, akkor bounce-ol a cucc ezerrel. Félsiker, a $(recipient) $(user) csere, mert így megy, de csak akkor, ha a

flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${user}

sorban beállítom magam user=envagyok -ra, és envagyok -nak küldök levelet. Egyéb esetben panaszkodik, hogy nem tud uid-et meg gid-et állítani.

Bocsi, hogy ide hoztam létre a témát... :oops:

Userek nem SQL-ben tárolódnak.

[quote:409d30a183="BTuning"]Ha virtualra állítom a dolgokat, akkor bounce-ol a cucc ezerrel. Félsiker, a $(recipient) $(user) csere, mert így megy, de csak akkor, ha a

flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${user}

sorban beállítom magam user=envagyok -ra, és envagyok -nak küldök levelet. Egyéb esetben panaszkodik, hogy nem tud uid-et meg gid-et állítani.

Bocsi, hogy ide hoztam létre a témát... :oops:

Userek nem SQL-ben tárolódnak.

Akkor hogy tarolod a virtualis juzereid és miért akarod mindenképp a maildrop-ot?

Szóval! Vannak virtual userek, ők valóban mysql-ben vannak, velük nincs is gond. Én a valós userekkel vagyok most bajban, mert Ők a /var/mail-be kapják a leveleiket, a courier-imap viszont ugye nem ott keresi...

Szóval nekem az kell, hogy a valós, létező userek a $HOME/Maildir-be kapják meg az üziket.

[quote:8d0f4948e3="BTuning"]Szóval! Vannak virtual userek, ők valóban mysql-ben vannak, velük nincs is gond. Én a valós userekkel vagyok most bajban, mert Ők a /var/mail-be kapják a leveleiket, a courier-imap viszont ugye nem ott keresi...

Szóval nekem az kell, hogy a valós, létező userek a $HOME/Maildir-be kapják meg az üziket.

No. Akkor:

# DELIVERY TO MAILBOX
#
# The home_mailbox parameter specifies the optional pathname of a
# mailbox file relative to a user's home directory. The default
# mailbox file is /var/spool/mail/user or /var/mail/user. Specify
# "Maildir/" for qmail-style delivery (the / is required).
#
#home_mailbox = Mailbox
home_mailbox = Maildir/

# The mail_spool_directory parameter specifies the directory where
# UNIX-style mailboxes are kept. The default setting depends on the
# system type.
#
#mail_spool_directory = /var/mail
#mail_spool_directory = /var/spool/mail

Asszem innentől világos és a maildrop nélkül jól fog menni. (Ez egy gyári alap konfigfileból részlet.)

Na most akkor idemásol a main.cf-et, mert még most sem megy:

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
append_dot_mydomain = no
myhostname = valami.masvalami.hu
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = valami.masvalami.hu, localhost.localdomain, localhost
relayhost = mailgw.masvalami.hu
relay_domains = domain1.hu
mynetworks = 127.0.0.0/8
home_mailbox = Maildir/
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
header_checks = regexp:/etc/postfix/header_checks
transport_maps = hash:/etc/postfix/transport

smtpd_delay_reject = yes
smtpd_helo_required = yes
disable_vrfy_command = yes
smtpd_recipient_restrictions =
reject_unauth_pipelining,
reject_unknown_recipient_domain,
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
reject_rbl_client zombie.dnsbl.sorbs.net,
reject_rbl_client relays.ordb.org,
reject_rbl_client opm.blitzed.org,
reject_rbl_client list.dsbl.org,
reject_rbl_client sbl.spamhaus.org,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_invalid_hostname,
permit
smtpd_helo_restrictions =
permit_mynetworks,
reject_non_fqdn_hostname,
reject_invalid_hostname,
permit
smtpd_sender_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unknown_sender_domain,
reject_non_fqdn_sender,
permit
smtpd_client_restrictions =
check_client_access hash:/etc/postfix/access

#############################################
# Innentõl virtual
#############################################

virtual_alias_maps = mysql:/etc/postfix/mysql/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:8
virtual_mailbox_base = /home/virtual
virtual_mailbox_domains = mysql:/etc/postfix/mysql/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_maps = mysql:/etc/postfix/mysql/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 108
virtual_transport = virtual
virtual_uid_maps = static:108
broken_sasl_auth_clients = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous

Segítség! :-D

Nem kell maildir-hez a maildrop, man 8 local. Ha kiutod a procmail-t, akkor mar mukodni is fog. Ha kell a procmail, akkor meg felhasznalonkent be tudod allitani a mailbox_command_maps hasznalataval, hogy kinek kell a procmail, azok meg oldjak meg .procmailrc-bol a dolgot.

Igen, én is gondoltam arra, hogy kiveszem a procmailt, de akkor nem lesz gond a relay-es doménekkel, meg a virtuserekkel? (ímég kezdő vagyok postfix téren...)

Semmi kozuk egymashoz. Kulon van a virtual, relay, local implementalva, az elso ketto amugy se menne a procmail-lel.

Szép napot kívánok!

Valaki értő ember meg tudná nézni, hogy miért nem jön létre a felhasználó környezete?
A spem-eket pakolja.

Ez kerülbele a logba
/usr/bin/maildrop: Unable to change to home directory

cat /etc/maildroprc

DEFAULT="$HOME/Maildir/"
`test -d "$DEFAULT" `
if ( $RETURNCODE == 0 )
{
`mkdir -p $HOME`
`maildirmake $DEFAULT`
`maildirmake -f Sent $HOME/Maildir`
`maildirmake -f Drafts $HOME/Maildir`
`maildirmake -f Templates $HOME/Maildir`
`maildirmake -f Junk $HOME/Maildir`
`maildirmake -f Trash $HOME/Maildir`
`chown -R $LOGNAME.ldpg $HOME`

}

if (/^X-Spam-Flag: YES /)
{
to $HOME/Maildir/.Junk
}

Előre is köszönöm!
Üdv!

esetleg én azt ajánlom, hogy küldj ki mindent egy logfile-ba. Én ugy szoktam az ilyen problémát megoldani. Minden változó értéket, parancs kimenetet, stb. Favágó módszer de a hiba feltárásáig tökéletes :) Persze a logfile-t tudja írni a maildropot futtató user. Legyen az ő tulajdonában az a legjobb.

`test -d "$DEFAULT" `

helyett ezt próbáld meg:

`test -d $DEFAULT`