[Debian] Chmod cronscriptjes en rechten

Pagina: 1
Acties:

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Situatie : Onze mailserver (postfix) schrijft zo af en toe attachments weg naar een directory. Nu wil ik via een cronscript dat onder een andere user draait wel bij die bestanden komen en het cronscript moet die bestanden ook weer kunnen verwijderen.

Probleem : de attachments worden weggeschreven als user postfix met rechten -rw------- en groep postfix.
De user die hem wil benaderen is www-data, php via een aanroep van intranet. zit ook in groep www-data.

Vraag : Hoe verander ik de "standaardrechten" van user postfix zodat elk bestand wat hij schrijft standaard group read/write able wordt zodat ik ze alletwee in dezelfde groep kan gooien???

Gezocht en gevonden umask. Alleen hoe zeg ik dat een daemon dit eerst moet doen??? want vanuit cronscript kan ik wel umasken. Maar postfix draait niet als cronscript???

Verwijderd

beetje vaag verhaal "postfix schrijft attachments weg"?
ik geloof niet dat er een config optie daarvoor is en umask werkt afaik alleen onder een shell, dus dan zul je postfix moeten patchen, die creeert tenslotte de bestanden.
watvoor constructie maak je precies? is daar wellicht een betere oplossing voor?

[ Voor 3% gewijzigd door Verwijderd op 20-08-2003 17:49 ]


Verwijderd

Hoe start je postfix? Via een init-script? Wellicht kun je dat scritp aanpassen zodat postfix met de goeie permissies danwel umask draait.

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
postfix start inderdaad via een init-script.

Maar dan wordt de vraag hoe kan ik vanuit een init-script een umask opgeven???

Constructie die ik aan het maken ben is dat postfix attachments een bepaalde naam ergens opslaat, waardoor ze door een ander script verder verwerkt worden. Denk aan een situatie als klanten die orders insturen vanuit een client side programma. Attachment naam is bekend. Vorm van attachment is bekend.

Op dit moment heb ik een losse win98-client comp draaien die dit met outlook-regels oplost. Maar deze comp slaat ong. eens in de 2 maanden vast dus moet het anders, waarom dan niet op de mailserver zelf afvangen.

[ Voor 88% gewijzigd door Gomez12 op 20-08-2003 19:41 ]


  • Confusion
  • Registratie: April 2001
  • Laatst online: 01-03-2024

Confusion

Fallen from grace

Postfix vanuit een script op laten starten waar eerst het umask gezet wordt? Dan heb je in de shell environment van postfix die umask als standaard toch?

Wie trösten wir uns, die Mörder aller Mörder?


Verwijderd

Je kunt in een script het umask commando geven voordat je een "extern" programma opstart. Dit programma neemt dan de environment van het script over.

Voordat je zoiets doet, moet je wel goed nadenken over de security implicaties.

Kun je niet beter het binnenkomende bericht via een filter pipen naar een script? Lijkt mij een betere manier dan via het filesystem vervolgacties te triggeren.

Misschien heb je hier wat aan.

Verwijderd

Ik vraag me af of Postfix die umask uberhaupt wel zou gebruiken.
Mag aannemen dat Postfix zelf bepaalt welke rechten ie op files zet, toch?

Verwijderd

De umask waarde wordt normaal-gesproken ge-end (&) met de mode van de systemcall. Ik weet niet wat voor haken en ogen er zijn in de praktijk, maar dat is de theorie.

Verwijderd

Je bedoelt ge-AND right?
Dank voor de uitleg.

Verwijderd

Ja!

Ik was zo druk bezig om dat verbasterde engels in te tikken dat ik niet eens in de gaten had wat voor onzin er kwam te staan. Het &-teken redt de situatie nog een klein beetje.

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Bedankt Robian, ik had er helemaal nog niet aan gedacht om het mailtje te gaan pipen naar php.

Verwijderd

Ik heb even nagedacht over wat je precies bedoelde.
Is het niet zo dat de umask ge-substract wordt van 777 om de uiteindelijke access-rights te bepalen? Dus bijvoorbeeld:
code:
1
2
3
4
111-111-111  777
001-011-011  133 (umask)
-------------sub--------
110-100-100  644

Verwijderd

Uit de manpage:
the common umask default value of 022 results in new files being created with permissions 0666 & ~022 = 0644 = rw-r--r--
code:
1
2
3
4
111-111-111  777
110-100-100  (~001-011-011 (umask 133) )
---------------------------------------------------- &
110-100-100 644


Ik zeg niet dat ik het wiskundige bewijs heb geleverd, maar de overeenkomst tussen jouw sommetje en het mijne is treffend.

Verwijderd

Klopt, maar daarvoor heb je eerst de umask moeten 'inverten'.
Is dat waar die ~ voor staat?

Dan zou het dus geen AND zijn, maar (naast SUB ook) een NAND?
Waarom dan die ~ en geen !. (?)

Overigens, sorry dat ik even doorzaag, maar ik wil het graag begrijpen.

[ Voor 4% gewijzigd door Verwijderd op 21-08-2003 13:39 ]


Verwijderd

Ik wil niet beweren dat ik het helemaal kan uitleggen, maar samen komen we er wel uit.

De !- bitwise-operator bestaat bij mijn weten niet. Het lijstje van beschikbare operators is:

code:
1
2
3
4
5
6
&   AND
|   OR
^   XOR
~   One's Compliment (ook wel NOT)
>>  Right shift
<<  Left shift


Met ~ kun je dus bits flippen of inverteren.

[ Voor 27% gewijzigd door Verwijderd op 21-08-2003 13:53 ]


Verwijderd

Verwijderd schreef op 21 August 2003 @ 13:50:
Ik wil niet beweren dat ik het helemaal kan uitleggen, maar samen komen we er wel uit.
Uiteraard!
De !- bitwise-operator bestaat bij mijn weten niet. Het lijstje van beschikbare operators is:
Ik heb er even een C handleiding, evenals een PHP handleiding op nageslagen.
En inderdaad, jouw lijstje operators komt overeen met zoals C deze gebruikt.
Mijn 'verwarring' is ontstaan doordat ik ook met Pascal, C++ en PHP werk of heb gewerkt.
Neem bijvoorbeeld een aantal operators uit PHP handleiding:
code:
1
2
3
4
5
6
7
8
9
&& Logical AND
|| Logical OR
! Logical NOT
~ Bitwise NOT
& Bitwise AND
^ Bitwise XOR
| Bitwise OR
<< Bitwise shift left
>> Bitwise shift right


Dus dan zijn we er denk ik uit. :)
~ en ! hebben beiden als functie NOT, alleen is ! dus 'logischerwijs' en ~ werkt puur op binair niveau.

[ Voor 8% gewijzigd door Verwijderd op 21-08-2003 16:16 ]

Pagina: 1