Upload via E-Mail?

Backup, Restore und Transfer von Daten
Post Reply
moredread
Posts: 13
Joined: 2003-07-16 22:32
 

Upload via E-Mail?

Post by moredread »

Hi!

Ich habe mir die Finger bei der Suche nach einer Lösung wundgetippt, aber weder bei g00gle noch in der Forensuche ist etwas auch nur annähernd erfreuliches zu finden.

Mein Plan ist folgender: Ich möchte einen User für Datenupload via E-Mail anlegen. Ich könnte die Mail abfangen BEVOR der MTA sie bekommt und den Anhang weiterverarbeiten lassen. Oder ich lasse den MTA die Arbeit machen und verarbeite nur die Daten die im Postfach des Users ankommen. So ganz blicke ich das noch nicht ...

Gibt es eigentlich irgendwo Lösungen zu diesem Thema? Ich will nicht unbeding fertige Scripts und Wasweisichnochalles, es macht mehr Spaß das selbst zu machen und was draus zu lernen - aber wo fängt man an?

Der Knackpunkt halt, das ich Usern OHNE FTP-Zugang eine komfortable Alternative zum spartanischen Browser-Upload bieten möchte. Wer mal versucht hat rund 500 Dateien über ein Upload-Script zu uppen (z. B. für eine Bildergalerie) kann sich denken was ich meine :twisted:

Ich hoffe mal, der Post ist im richtigen Forum, ich war nicht ganz sicher wo genau hin damit. Datentransfer erschien mir richtig.

thx in advance,
Dread
cybersmog
Posts: 78
Joined: 2003-09-17 12:38
Location: Bayern
 

Re: Upload via E-Mail?

Post by cybersmog »

Vorweg: ich hab mit dem Thema auch noch keine Erfahrung, aber hier einfach mal meine Idee für einen Lösungsansatz mit PHP:

Es gibt für PHP diverse Funktionen, die mit Mails umgehen können, sei es die interne Funktionen [1] oder PEAR Pakete für IMAP [2] oder Pop3 [3].
Damit müsste es doch eigentlich möglich sein, Zugriff auf die Attachments zu bekommen und diese dann entsprechend zu verarbeiten.

So ein Skript ließe sich dann per Cron steuern und könnte den User dann gleich noch über den Erfolg oder Misserfolg des Uploads informieren.

Ich hoffe, das war jetzt etwas nützlich. Ich lasse mich aber auch gerne eines besseren belehren ;)

---

[1] http://de3.php.net/manual/de/ref.imap.php
[2] http://pear.php.net/package/Net_IMAP
[3] http://pear.php.net/package/Net_POP3
pennybridge
Posts: 64
Joined: 2002-10-24 21:37
 

Re: Upload via E-Mail?

Post by pennybridge »

MoreDread wrote:Hi!
Ich könnte die Mail abfangen BEVOR der MTA sie bekommt und den Anhang weiterverarbeiten lassen. Oder ich lasse den MTA die Arbeit machen und verarbeite nur die Daten die im Postfach des Users ankommen. So ganz blicke ich das noch nicht ...
also ich würd das ganze mit perl und konsorten mache, läuft IMHO stabiler
mit großen attachments. die mail kann man ja beim eingang durch ein perl-
script pipen und mittels irgendwelcher CPAN module die email splitten
und weiterverarbeiten.
alexander newald
Posts: 1117
Joined: 2002-09-27 00:54
Location: Hannover
Contact:
 

Re: Upload via E-Mail?

Post by alexander newald »

Ein Codeschnippsel wie man es machen könnte:

http://linux.newald.de/email-ftp-upload.html (Hoffe ein Link ist ok, denn doch ein paar mehr Zeilen Code)

Aber Achtung, wenn man da schnell hintereinander viele und grosse E-Mails hinschickt, kann man damit einen Server recht schnell in die Knie zwingen!
moredread
Posts: 13
Joined: 2003-07-16 22:32
 

Re: Upload via E-Mail?

Post by moredread »

Danke erst mal für die Antworten.

Ich denke nicht, das ich PHP verwenden möchte. Perl ist schon wesentlich Systemnäher :?

Der Codeschnipsel ist schon interessant, aber wenn ich daran denke, was ich noch alles dazuschreiben müßte, um alles auszuschließen was ich befürchte, könnte ich weinen (ja, bin paranoid). UND ich bin nicht der große Perl-Meister :oops:

Ich überlege ob ich nicht mit Hilfe von SpamAssassin und passenden Regeln effektiver arbeiten könnte. Außerdem müßte ich nicht so viel tun, da meine Freizeit sowieso eher spärlich ausschaut ... :(

Ich schaue mir mal bestehende Anti-Spam-Systeme an und schaue ob man das entsprechend zweckentfremden könnte :)

Wenn ich passendes basteln kann, lasse ich es Euch auf jeden Fall wissen. Danke für die bisherigen Gedankenstöße :)
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Upload via E-Mail?

Post by captaincrunch »

Ein weitere Punkt, den du beachten solltest ist die rechtliche Lage, da du normalerweise nicht einfach so an den Mails deiner "Kunden" rumpfuschen darfst.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe
Contact:
 

Re: Upload via E-Mail?

Post by dodolin »

Ich möchte einen User für Datenupload via E-Mail anlegen. Ich könnte die Mail abfangen BEVOR der MTA sie bekommt
Das kann ja wohl systembedingt nicht gehen.
Oder ich lasse den MTA die Arbeit machen und verarbeite nur die Daten die im Postfach des Users ankommen. So ganz blicke ich das noch nicht ...
Schon eher. Für gewöhnlich kann man seinen MTA oder MDA so konfigurieren, dass er Mails in beliebige Programme pipen kann (z.B. über aliases). Diese können die Mails dann weiterverarbeiten.
dopefish
Posts: 142
Joined: 2003-02-06 12:57
Location: Karlsruhe
Contact:
 

Re: Upload via E-Mail?

Post by dopefish »

smtp ist nicht gerade das beste protocol für dateitransfer. warum bastelst du nicht einfach eine webseite wo die user auf .zip dateien hochladen können und du entpackst sie auf den server.
moredread
Posts: 13
Joined: 2003-07-16 22:32
 

Re: Upload via E-Mail?

Post by moredread »

CaptainCrunch wrote:Ein weitere Punkt, den du beachten solltest ist die rechtliche Lage, da du normalerweise nicht einfach so an den Mails deiner "Kunden" rumpfuschen darfst.
Ich glaube das Problem ergibt sich nicht. Schließlich handelt es sich um einen Benutzer, den ich selbst darstelle. Sprich: Ich kann mit meinem Postfach machen was ich will.
DopeFish wrote:smtp ist nicht gerade das beste protocol für dateitransfer. warum bastelst du nicht einfach eine webseite wo die user auf .zip dateien hochladen können und du entpackst sie auf den server.
Lies meinen Post bitte ganz durch, dann erübrigt sich Deine Frage :roll:
Es ist eine - wie ich finde - bequemere Alternative - ich lasse mich gerne eines Besseren belehren, schließlich möchte ich nicht einfach meinen Kopf durchsetzen und habe immer ein Ohr für bessere Ideen.
dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe
Contact:
 

Re: Upload via E-Mail?

Post by dodolin »

Es ist eine - wie ich finde - bequemere Alternative - ich lasse mich gerne eines Besseren belehren, schließlich möchte ich nicht einfach meinen Kopf durchsetzen und habe immer ein Ohr für bessere Ideen.
scp ist IMHO deutlich bequemer, man kann sogar mit mit Shell-RegEx arbeiten und mehrere dateien gleichzeitig hochladen, ganz zu schweigen, von der zusätzlichen Verschlüsselung und wahlweisen Komprimierung. Wer noch mehr will, nimmt rsync over ssh und schreibt nen einzeiliges Skript für den Upload/Sync.
moredread
Posts: 13
Joined: 2003-07-16 22:32
 

Re: Upload via E-Mail?

Post by moredread »

scp, rsync over ssh benötigt, wenn ich mich nicht täusche, einen shell account(?). Ich wollte ja gerade verhindern, das in irgend welcher weise zugriff auf den server hat, sonst könnte ich ja gleich ftp nehmen. Deshalb auch der gedanke mit der E-Mail.
answermachine
Posts: 10
Joined: 2003-09-04 13:33
Contact:
 

Ick weiß was

Post by answermachine »

Eine EMail kannst Du an ein Script weiterleiten, indem
du in der systemweiten Aliastabelle z.B. folgendes einträgst:

/etc/aliases

upload : | /bin/script.sh :idea:

Damit wird das Script beim Eintreffen der Mail an
upload@host.domain.tld aufgerufen und der Inhalt
kann über stdin verarbeitet werden!

Hope thats helps

answermachine

--

Gas Heizung Sanitär
http://www.hs-pongratz.de
Last edited by answermachine on 2004-05-12 11:35, edited 1 time in total.
dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe
Contact:
 

Re: Upload via E-Mail?

Post by dodolin »

scp, rsync over ssh benötigt, wenn ich mich nicht täusche, einen shell account(?). Ich wollte ja gerade verhindern,
scponly, rssh?
moredread
Posts: 13
Joined: 2003-07-16 22:32
 

Re: Upload via E-Mail?

Post by moredread »

scponly, rssh?
Da ich (noch) nicht der große Experte mit solchen Lösungen bin ;)
Bevor ich da eine Sicherheitslücke aufreisse ... erst mal auf einem lokalen System testen das ganze :)

Eine EMail kannst Du an ein Script weiterleiten, indem
du in der systemweiten Aliastabelle z.B. folgendes einträgst:

/etc/aliases

upload : | /bin/script.sh

Damit wird das Script beim Eintreffen der Mail an
upload@host.domain.tld aufgerufen und der Inhalt
kann über stdin verarbeitet werden!

Hope thats helps
Verstehe, ja das hört sich gut an. Danke Euch beiden, damit habe ich erst mal wieder eine Menge zu lesen und auszuprobieren :D
Danke

P.S.: Ich halte den Thread auf dem Laufenden, wenn ich etwas hinkriege. Vielleicht kann jemand anderes das dann auch gebrauchen =)
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin
 

Re: Upload via E-Mail?

Post by flo »

Hi,

der Thread ist mir heute erst aufgefallen ...

Ich hab mal was angefangen, daß eMail abholt, ein tgz aus einer eMail holt, dies entpackt, bearbeitet, tar't und wieder per Mail zurückschickt.

Wenn ich das heute Abend noch finde, post ich was.

Grüße,

Flo.
acid_ice
Posts: 4
Joined: 2003-10-10 16:14
 

Re: Upload via E-Mail?

Post by acid_ice »

Eine EMail kannst Du an ein Script weiterleiten, indem
du in der systemweiten Aliastabelle z.B. folgendes einträgst:

/etc/aliases

upload : | /bin/script.sh

Damit wird das Script beim Eintreffen der Mail an
upload@host.domain.tld aufgerufen und der Inhalt
kann über stdin verarbeitet werden!
ich bin ebenfalls gerade auf diesen thread gestoßen und finde ebenfalls, dass es sich sehr interessant anhört. ich habe shell zugriff auf meinen server, weiß nur leider nichts damit anzufangen, da ich schlicht und einfach noch nie etwas damit gemacht oder es gebraucht habe.

daher hier mal ein paar fragen:
- wird das sh script automatisch aufgerufen, wenn die mail ankommt? oder läuft das über cron?
- ist das sh ein perl script oder ist perl auch möglich oder gar nicht?
- und wie trage ich das ganze denn überhaupt in meine alias tabelle ein?

vielleicht kann mir ja jemand helfen?! :)
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin
 

Re: Upload via E-Mail?

Post by flo »

Wie die Pipe auf der normalen Shell auch - in dem Moment wird das Script aufgerufen und danach wieder beendet ... meistens. ;-)

Perl müsste auch gehen, siehe Confixx - der Autoresponder ist mit perl gemacht.

Eingetragen wird das ganze durch Anhängen einer Zeile an die /etc/aliases:

Code: Select all

username: "|/usr/bin/promgrammname.sh "
In der virtuellen Benutzerverwaltung des Mailers Deines Vertrauens referenzierst Du dazu:

Code: Select all

deinemail@deinedomain.de        username
Dann "newaliases" fahren und Mailer reloaden. Dann kannst Du testen.

Grüße,

flo.
moredread
Posts: 13
Joined: 2003-07-16 22:32
 

Re: Upload via E-Mail?

Post by moredread »

flo wrote: Wenn ich das heute Abend noch finde, post ich was.
Would be way cool ! :)
Post Reply