Portál AbcLinuxu, 12. května 2025 11:08
procmail
a jeho konfigurák procmailrc. Ako to už býva, je to mocný nástroj, len sa treba naučiť, ako ho používať.
transport_maps = hash:/etc/postfix/transport virtual_alias_maps = hash:/etc/postfix/virtual_aliasmaster.cf vypada takto:
... # ========================================================================== # service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (yes) (never) (100) # ========================================================================== autoreply unix - n n - - pipe flags= user=root argv=/pokus.sh $sender $mailbox smtp inet n - - - - smtpd #submission inet n - - - - smtpd ...a do /etc/postfix/transport jsem zapsal toto:
autoreply.mojedomena.cz autoreply:a /etc/postfix/virtual_alias takto:
pokus@mojedomena.cz xpokus@mojedomena.cz, pokus@mojedomena.cz@autoreply.mojedomena.cz/pokus.sh vypada takto:
echo "$sender $mailbox" >> /vystup.txtPostmap jsem zavolal jak na virtual_alias tak na transport, pak jsem postfix restartoval. Ale nic se nedeje - soubor vystup.txt je prazdny. K
May 4 16:01:07 mail2 postfix/smtpd[9558]: connect from 12-345-678-910.static.masterinter.net[12-345-678-910] May 4 16:01:07 mail2 postfix/smtpd[9558]: 5EADE300063: client=12-345-678-910.static.masterinter.net[12-345-678-910] May 4 16:01:07 mail2 postfix/cleanup[9562]: 5EADE300063: message-id=<14d64ce39f9eed86def16d263ed149fa@localhost> May 4 16:01:07 mail2 postfix/qmgr[9471]: 5EADE300063: from=nekdo@mujweb.cz, size=695, nrcpt=2 (queue active) May 4 16:01:07 mail2 postfix/smtpd[9558]: disconnect from 12-345-678-910.static.masterinter.net[12-345-678-910] May 4 16:01:07 mail2 postfix/qmgr[9471]: warning: connect to transport private/autoreply: No such file or directory May 4 16:01:07 mail2 postfix/virtual[9563]: 5EADE300063: to=xpokus@mojedomena.cz, orig_to=pokus@mojedomena.cz, relay=virtual, delay=0.24, delays=0.14/0.01/0/0.1, dsn=2.0.0, status=sent (delivered to maildir) May 4 16:01:07 mail2 postfix/error[9564]: 5EADE300063: to=pokus@mojedomena.cz@autoreply.mojedomena.cz, orig_to=pokus@mojedomena.cz, relay=none, delay=0.29, delays=0.14/0.01/0/0.14, dsn=4.3.0, status=deferred (mail transport unavailable) May 4 16:02:28 mail2 postfix/anvil[9521]: statistics: max connection rate 1/60s for (smtp:12-345-678-910) at May 4 15:52:28 May 4 16:02:28 mail2 postfix/anvil[9521]: statistics: max connection count 1 for (smtp:12-345-678-910) at May 4 15:52:28 May 4 16:02:28 mail2 postfix/anvil[9521]: statistics: max cache size 1 at May 4 15:52:28
warning: connect to transport private/autoreply: No such file or directory
z cehoz mi prijde ze teda neexistuje soubor private/autoreply (ja moc neumim cist z logu asi). Ja se ale nesnazim o automatickou odpoved, jde mi o to zavolat skript /pokus.sh a do nej strcit rourou $recipient a $mailbox v momente kdy dojde mail na adresu v $recipient. Tak mi prijde divny k tomu instalovat druhý imap/Pop3 server. Omlouvam se za tyto mozná hloupé dotazy... A předem mnohokrát děkuji za cené rady!
#!/bin/bash echo "zkouska" >> /vystup.txt echo $$mailbox >> /vystup.txt echo "$$recipient" >> /vystup.txtVysledek - soubor vystup.txt:
zkouska 11390mailbox 11390recipientCoz teda logicky neni to co bych chtel aby to bylo, mela by tam byt normale adresa doruceni ze. A jeste bych se te rovnou rad zeptal jak resis to posilani SMS, mas k serveru pripojen mobil a prez nej, nebo nejak jinak? To budu urcite resit taky, hned jak doresim ty adresy, takze cim vic info (popr odkazu, tim lip) Diky, diky, diky
#MFMAILDROP=2
logfile "/home/vmail/.logs/user@domena.ltd"
xfilter "/usr/bin/spamc"
FROM='user@domena.ltd'
if ((/^From:.*info\@rb\.cz/))
{
cc "| /home/vmail/domena.ltd/user/skript.sh"
log "spustil se skript"
}
to "/home/vmail/domena.ltd/user/.maildir/."
dalsi moznosti je to nejak resit prez /etc/aliases, ale to nepouzivam.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.