Koozali.org: home of the SME Server

salvare allegati dal mailserver di SME

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: salvare allegati dal mailserver di SME
« Reply #15 on: August 23, 2008, 02:53:53 PM »
alt..

quello che hai riportato tu è un tweak per il codice SORGENTE di procmail..

nel link che ti ho indicato c'è (ne sono certo) una voce in merito al lancio di uno script tramite procmail.. tu salvi gli allegati esattamente come fai ora, poi lanci uno script che fa il chown e/o chmod come più ti aggrada..

non capisco perchè /opt/fax.. se usi un ebay dove gli utenti possono scrivere, i file dovrebbero avere già i permessi ok.. in ogni caso, se ciò non fosse, in procmail fai richiamare
Code: [Select]
signal-event ibay-modify nomeibay

che ti sistema utenti e permessi

HTH
ciao
Stefano

p.s. se quando hai fatto non scrivi un how-to, vengo a cercarti ;-)

Offline pepz

  • *****
  • 419
  • +0/-0
Re: salvare allegati dal mailserver di SME
« Reply #16 on: August 23, 2008, 03:18:33 PM »
sono qui che sto facendo prove in diretta......    :P

ora sono a:

 || chown pinco:pallino /opt/fax/*
 || chmod g+rwx /opt/fax/*

ovviamente questi comandi, mi risolvono il problema se li lancio dalla consol...  inseriti il .procmailrc non collaborano....

li ho messi li perche' ho visto che MKDIR funziona....(*)  allora ho detto....  se va lui.. andranno anche questi...  invece, x ora ... nebbia....

(*)
Code: [Select]
DUMMY=`test -d $MAILDIR/attach || mkdir $MAILDIR/attach`
DUMMY=`test -d $MAILDIR/attach/$DATE || mkdir $MAILDIR/attach/$DATE`
METAMAIL_TMPDIR=$MAILDIR/attach/$DATE
:0cbhHB:
| metamail -q -w -x

Quote
non capisco perchè /opt/fax.. se usi un ebay dove gli utenti possono scrivere, i file dovrebbero avere già i permessi ok.. in ogni caso, se ciò non fosse, in procmail fai richiamare

questa cartella ha tutti i permessi a posto... all' inizio ho usato una ibays ma l' utente usato da procmail e' una pippa e non riesce a scrivere da nessuna parte...  comunque ora nella ibay c'e' un link simbolico che punta a questa cartella...  ( non e' proprio come dicevo io...  comunque va bene uguale...   8)
la cartella che ho creato e' ok... sono i file generati che hanno pochi permessi....

in realta', se trovo il modo di eseguire chown e chmod tutte le volte che arriva una mail ( quindi dentro .procmailrc) sono a posto....

nella guida che mi hai lincato, su questo problema dicono cosi:

Quote
19.6 Procmail changes mailbox and directory permissions

By Ed McGuire <emcguire A T i2.com>. Before procmail was used:

      > -rw-rw----   1 foo      mail  1127 Sep 11 07:33 foo   
 
After:

      > -rw-------   1 foo      mail  1517 Sep 11 07:34 foo   
 

when the UMASK environment variable is more restrictive than the mode of the mailbox, procmail changes the mode of the mailbox. The default value of UMASK is 077. If you want to preserve the group access to your mailbox, I think you can set UMASK to 007 in the rcfile:

      UMASK = 007   
 


Further note: the above UMASK suggestion in .procmailrc does not work. See comment by Gjermund Sørseth <gjermund A T nextel.no>

However the permissions on DEFAULT are handled before procmail even opens the .procmailrc, so changing the umask there will have no effect on the mailspool.

[Scott J. Kramer <sjk A T lux.com>] it's documented in the MISCELLANEOUS of the procmail(1) man page:

If /var/mail/$LOGNAME already is a valid mailbox, but has got too loose permissions on it, procmail will correct this. To prevent procmail from doing this make sure the u+x bit is set.

Otherwise, you might notice a syslog message like:

procmail: Enforcing stricter permissions on "/var/mail/sjk"

when it chmod's the file to 600. As you've discovered, this is inconsistent with the SYSV (Solaris 2 anyway) default mailbox protection of 660, gid=6 (mail). I think that's an OS-dependent bug, with the `chmod u+x ...' as the workaround.


Quote
p.s. se quando hai fatto non scrivi un how-to, vengo a cercarti Wink

sono sicuro che tutta sta cosa che ho messo in piedi, uno giusto la faceva in 3 righe...  comunque...  l' how lo faccio ....  mi cercano gia in troppi..... :lol:

bye



Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: salvare allegati dal mailserver di SME
« Reply #17 on: August 23, 2008, 03:28:49 PM »
avrei un'altra idea..

tu dai scrivere (come sei già riuscito) l'allegato in un percorso di tuo gradimento..

poi fai uno script in cron da eseguirsi ogni... 5 minuti, che:
- sposta il file in un ibay
- cambia utente/gruppo/permessi alla bisogna

tale script gira come root e quindi non hai problemi.. e così mantieni semplice semplice anche il file di procmail

forse non è la soluzione più fika, ma è IMHO la più efficiente

Ciao
Stefano

Offline pepz

  • *****
  • 419
  • +0/-0
Re: salvare allegati dal mailserver di SME
« Reply #18 on: August 23, 2008, 03:31:27 PM »


in .procmailrc le righe che lanciano mkdir sono prima di metamail
anche metamail e' un programma esterno....
e' possibile che e' lui che rompe? e' il caso di metterle i comandi in un altro template?
ps...  tra un po accorcio il post sopra....  mi sembra troppo dispersivo, perde in leggibilita'...

bye

« Last Edit: August 23, 2008, 03:33:05 PM by pepz »

Offline pepz

  • *****
  • 419
  • +0/-0
Re: salvare allegati dal mailserver di SME
« Reply #19 on: August 23, 2008, 03:40:10 PM »
 8-)

cron ogni 5 minuti...  non ci crederai ma era la mia ultima risorsa....   
io avevo pensato di eseguire chown e chmod sempre nella stessa cartella...  ma col tempo i fax magari diventavano tanti e il processo si appesantiva....
pero' un chown+chmod e poi il comando sposta ( che ora non ricordo) al posto del link simbolico, resta sempre leggero...   mi sa che faccio cosi....    :P
ps: c'e' un posto intelligente dove mette i bach di linux ? (file.sh mi sembra di ricordare) o lo metto nella home dell' utente dei fax?

sai che non ne ho usato mai uno? (mi sa che qui perdero' decine di punti... )  :shock:

bye

Offline pepz

  • *****
  • 419
  • +0/-0
Re: salvare allegati dal mailserver di SME
« Reply #20 on: August 23, 2008, 03:48:51 PM »
sai...  visto che mi sento in forma... e tu lo sei sempre...   raggiungiamo il top..... allora...
facthmail recupera le email ogni 15 minuti esatti... un vero orologio (di sistema, immagino..)
infatti tutte le lai sono datate con l' ora 14.01 , 14.16 14.31 ecc.. ecc...
si puo' dire a cron di partire ogni 15 minuti, ma 2 minuti dopo l' arrivo delle mail? tipo... 14.03 , 14.18 ecc...?
ora mi metto a fare il prefezionista.....   :D :D   :lol:

grazie...

bye

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: salvare allegati dal mailserver di SME
« Reply #21 on: August 23, 2008, 03:59:58 PM »
allora..

io sulle mie macchine sto creanto una directory in /home/e-smith che chiamo myscripts: in questo modo sono inclusi nel backup

dentro tale directory riproduco i percorsi che mi interessano (tipo etc/cron.d.. alla fine avrò /home/e-smith/myscripts/etc/cron.d), creo all'interno i file che mi servono e poi, nelle directory "giuste" creo un link simbolico

veniamo a noi..
il chown+chmod è praticamente instantaneo anche con migliaia di file..


comunque un file tipo
Code: [Select]
#!/bin/bash

# definisco variabili
MYUSER="pippo"
MYGROUP="topolino"
MYMOD="660"
DIRFROM="directory dove procmail salva"
DIRTO="directory dove voglio mettere i file"

# cambio utente e gruppo
chown $MYUSER:$MYGROUP $DIRFROM/*

# cambio permessi
chmod $MYMOD $DIRFROM/*

# sposto i file
mv $DIRFROM/* $DIRTO/

messo in /home/e-smith/myscripts/etc/

ed uno
Code: [Select]
*/5 * * * * root /etc/myscript.sh

in /home/e-smith/myscripts/etc/cron.d

(il primo con i permessi di eseguibilità)

linkati in /etc/ e in /etc/cron.d

dovrebbero fare all'uopo.

ciao
Stefano

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: salvare allegati dal mailserver di SME
« Reply #22 on: August 23, 2008, 04:02:09 PM »
sai...  visto che mi sento in forma... e tu lo sei sempre...   raggiungiamo il top..... allora...
facthmail recupera le email ogni 15 minuti esatti... un vero orologio (di sistema, immagino..)
infatti tutte le lai sono datate con l' ora 14.01 , 14.16 14.31 ecc.. ecc...
si puo' dire a cron di partire ogni 15 minuti, ma 2 minuti dopo l' arrivo delle mail? tipo... 14.03 , 14.18 ecc...?
ora mi metto a fare il prefezionista.....   :D :D   :lol:

grazie...

bye

visto che fetchmail è richiamato in crontab e le righe dello stesso sono templatizzate (/etc/e-smith/templates/etc/crontab), ti basta creare un template ad hoc in /etc/e-smith/templates-custom/etc/crontab che richiami uno script che esegua prima fetchmail e poi il tuo script.. così non avrai problemi

Ciao
Stefano

Offline pepz

  • *****
  • 419
  • +0/-0
Re: salvare allegati dal mailserver di SME
« Reply #23 on: August 23, 2008, 05:58:07 PM »
eccoci al capolinea.....  riassumo tutti i passaggi, e nel caso scremo il 3ad x renderlo + snello....
 
lo scopo e' : avere gli allegati provenienti da una determinata mail in una i-bay ...  nel mio caso sono tutti PDF che arrivano da un servizio Fax
- Innanzitutto installare facthmail per recuperare le mail.... creare un utente ad hoc che ricevera' le mail col Fax allegato
- installare smeserver-mailsorting che permettera' poi di utilizzare procmail ... il comando e' :
Code: [Select]
yum --enablerepo=smecontribs install smeserver-mailsorting- chiudere con i soliti signal-event post-upgrade & signal-event reboot
- attivare procmail con :
Code: [Select]
db configuration setprop qmail FilterType procmail- installare metamil, in quanto e' utilizzato da procmail per estrapolare gli allegati
Code: [Select]
wget http://centos.osmirror.nl/2.1/updates/i386/metamail-2.7-29.i386.rpm
e poi
yum localinstall metamail-2.7-29.i386.rpm
- creare un template per utilizzare procmail ( io l' ho chiamato 12salvaallegati ) che contiene :
Code: [Select]
METAMAIL_TMPDIR=/opt/fax
:0cbhHB:
| metamail -q -w -x
- applicare il template...
Code: [Select]
signal-event mailsorting-conf/opt/fax e' la cartella dove si salvano gli allegati
- per rendere disponibili i file agli utenti autorizzati, e' comodo spostarli in una i-bay ... ho creato uno script schedulato ogni 5 minuti che cambia i permessi e sposta i files....
Code: [Select]
chown pinco:pallino /opt/fax/*
chmod g+rwx /opt/fax/*
rm -f /opt/fax/mm.*
mv /opt/fax/* /home/e-smith/files/ibays/fax/files/
cancello i file MM. perche' se ne crea uno ogni fax... 
La i-bay dove si sposteranno i fax, ovviamente nel mio caso l' ho chiamata fax (vedi percorso ibays)

Spero di non aver dimenticato nulla.... ringrazio Moreno e Stefano x le indispensabili dritte !

Bye
« Last Edit: August 25, 2008, 10:58:41 AM by pepz »

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: salvare allegati dal mailserver di SME
« Reply #24 on: August 23, 2008, 07:23:51 PM »
eccoci al capolinea.....  riassumo tutti i passaggi, e nel caso scremo il 3ad x renderlo + snello....

ottimo lavoro.. volendo, come detto, puoi eliminare la schedulazione creando un template per /etc/crontab.. ma va benissimo anche così

Quote
Spero di non aver dimenticato nulla.... ringrazio Moreno e Stefano x le indispensabili dritte !

moreno... chi era costui? (Cit.) *

Stefano :-)

Offline pepz

  • *****
  • 419
  • +0/-0
Re: salvare allegati dal mailserver di SME
« Reply #25 on: August 24, 2008, 09:35:22 PM »
Quote
moreno... chi era costui?
non frequenta il forum... allora lo tempestavo di sms e email...... 
pero' mi sa che da lunedi cambia email e numero di telefono....    :lol: :lol: :lol:

Offline Incognito

  • *****
  • 195
  • +0/-0
  • Linux User
Re: salvare allegati dal mailserver di SME
« Reply #26 on: October 07, 2008, 08:10:02 PM »
Non fosse stato SME ma una distro qualsiasi bastavano solo 3 righe.
I permessi con cui gira procmail in questo caso dovrebbero essere quelli dell'utente fax, infatti nella sua home dovrebbe esserci .procmailrc
Se tu potessi mettere .procmailrc in /etc girerebbe come root e quindi potresti spostare tutto direttamente da metamail nella bay condivisa.
Un suggerimento: prova a dare un'occhiata se c'è il pacchetto mpack/munpack per la SME, ti evita la creazione dei file mm.* salvando solo tutti gli allegati, tra l'altro potrebbero cambiare nome in quanto sono le altre parti della mail salvate.

Infine, ogni 5 minuti lo script per spostare e cancellare i file mi sembra esagerato, fai il crontab che gira ogni 15 minuti a partire da 2 minuti dopo l'ora che sai con certezza scaricare la posta da fetchmail.
Sarebbe una riga tipo questa che lo fa eseguire ogni 15 minuti tutti i giorni a partire dal secondo minuto di ogni ora (ad esempio 15:02, 15:17, 15:22, ecc):

2-59/15 * * * * e_qua_il_tuo_script.

vabbè, basta così, ciao pepz!
#Linux User
:0:
* ^X-Spam: YES
/dev/null

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: salvare allegati dal mailserver di SME
« Reply #27 on: October 07, 2008, 09:10:57 PM »
Non fosse stato SME ma una distro qualsiasi bastavano solo 3 righe.

possibile, ma è SME

Quote
I permessi con cui gira procmail in questo caso dovrebbero essere quelli dell'utente fax, infatti nella sua home dovrebbe esserci .procmailrc
Se tu potessi mettere .procmailrc in /etc girerebbe come root e quindi potresti spostare tutto direttamente da metamail nella bay condivisa.

vero, ma procmail su SME può essere attivato per user.. se metti il file a livello globale perdi questa possibilità

Quote
Un suggerimento: prova a dare un'occhiata se c'è il pacchetto mpack/munpack per la SME, ti evita la creazione dei file mm.* salvando solo tutti gli allegati, tra l'altro potrebbero cambiare nome in quanto sono le altre parti della mail salvate.

questo potrebbe essere interessante.. l'rpm c'è sul repository di Dag

Quote
Infine, ogni 5 minuti lo script per spostare e cancellare i file mi sembra esagerato, fai il crontab che gira ogni 15 minuti a partire da 2 minuti dopo l'ora che sai con certezza scaricare la posta da fetchmail.
Sarebbe una riga tipo questa che lo fa eseguire ogni 15 minuti tutti i giorni a partire dal secondo minuto di ogni ora (ad esempio 15:02, 15:17, 15:22, ecc):

che poi è quello che alla fine gli era già stato detto (tra i vari suggerimenti)

Quote
vabbè, basta così, ciao pepz!

ciao 222222, cambiato ancora nick?

Stefano

Offline Incognito

  • *****
  • 195
  • +0/-0
  • Linux User
Re: salvare allegati dal mailserver di SME
« Reply #28 on: October 07, 2008, 10:29:23 PM »
possibile, ma è SME
ogni distro ha le sue e poi ho risposto ad una osservazione di pepz! :D

vero, ma procmail su SME può essere attivato per user.. se metti il file a livello globale perdi questa possibilità
Sbagliato, procmail legge il globale e poi prosegue con i procmailrc per user, nelle regole (dove serve) basta mettere c tra i flag.
Non credo che gli sviluppatori di SME mettano mano al codice originale dei pacchetti in modo così pesante, sarebbe uno stravolgimento dell'originale.

questo potrebbe essere interessante.. l'rpm c'è sul repository di Dag
non ho niente da dire, bisogna provarlo se c'è.

che poi è quello che alla fine gli era già stato detto (tra i vari suggerimenti)

Mi sembrava gli avessi detto di metterlo ogni 5 minuti, io ho detto ogni 15  contando 2 minuti dopo fetchmail da crontab.
mi autoquoto il post:
...omississ...
Sarebbe una riga tipo questa che lo fa eseguire ogni 15 minuti tutti i giorni a partire dal secondo minuto di ogni ora (ad esempio 15:02, 15:17, 15:22, ecc):

2-59/15 * * * * e_qua_il_tuo_script.

ciao 222222, cambiato ancora nick?

Stefano

Peccato hai sbagliato, ritenta sarai più fortunato! :D

Sei ossessionato da 222222, se ricordi un tuo post hai detto che lui non è costruttivo, in questo mi sembra che ci siano tutte le soluzioni! ;)

Alla prossima risposta esatta!
« Last Edit: October 07, 2008, 10:33:06 PM by Incognito »
#Linux User
:0:
* ^X-Spam: YES
/dev/null