Hallo!
Auf einem Rechner X läuft fetchmail um Mails abzuholen und zu verteilen. Das fragt alle 10 Minuten mal nach, ob neue Mail vom Provider angeboten wird. Wenn's mal dringend wird, kann man mit kill -USR1 <fetchmail-pid> die Anfrage auslösen.
Die Frage: wie kann man das einfach von anderen Rechnern im lokalen Netz auslösen? (Idee: Einen Token per netcat an Rechner X senden, dort ein ??? laufen haben, das letztlich das Signal sendet.)
Hat jemand schon mal so etwas umgesetzt?
Danke! Bernhard
On 2026-03-09 08:16, Bernhard Schiffner wrote:
[...] kill -USR1 <fetchmail-pid>
Die Frage: wie kann man das einfach von anderen Rechnern im lokalen Netz auslösen? (Idee: Einen Token per netcat an Rechner X senden, dort ein ??? laufen haben, das letztlich das Signal sendet.)
"systemd socket activation", und ein einfachesScript das das signal sended (wenn überhaupt). ggf. noch ein Token überprüft.
Andreas
Hallo Berhard,
On Mon, Mar 09, 2026 at 08:16:58AM +0100, Bernhard Schiffner wrote:
Auf einem Rechner X läuft fetchmail um Mails abzuholen und zu verteilen. Das fragt alle 10 Minuten mal nach, ob neue Mail vom Provider angeboten wird. Wenn's mal dringend wird, kann man mit kill -USR1 <fetchmail-pid> die Anfrage auslösen.
Die Frage: wie kann man das einfach von anderen Rechnern im lokalen Netz auslösen? (Idee: Einen Token per netcat an Rechner X senden, dort ein ??? laufen haben, das letztlich das Signal sendet.)
Die Frage ist, wie gut dieser Triggermechanismus abgesichert sein soll.
Wenn das Token unverschluesselt geschickt wird, ist es wertlos, weil es mitgeschnitten werden kann. Dann ist ein einfacher TCP-Connect ohne weiteren Inhalt genauso gut. Das mag reichen, wenn Du sicherstellen kannst, dass die Triggerzugriffe nur aus einem internen, vertrauenswuerdigen Netz kommen.
Ein sehr simpler Server fuer sowas ist mit socat realisierbar:
socat -T5 tcp-listen:7070,fork,reuseaddr \ system:'kill -USR1 $(cat /var/run/fetchmail.pid)'
Triggern geht z.B. mit:
nc -w5 IPADDR 7070
Wenn der Trigger auf bestimmte Personen/Accounts beschraenkt werden soll, waere ein Zugriff per SSH mit Pubkey-Authentication und ForcedCommand eine Moeglichkeit. Damit muss der Trigger-Client im Besitz des passenden privaten SSH-Schluessels sein und bekommt trotzdem keine Shell, sondern fuehrt auf der Serverseite genau nur das ForcedCommand aus.
Gruss, Christian
lug-dd@mailman.schlittermann.de