PDA

View Full Version : Rechten probleem



mbenjamins
26-Nov-2011, 10:50
Hallo,

Hier thuis heb ik een een pc waar ook automatische backup wordt heen geschreven.
Nu heb ik het volgende probleem.
De backup komt in de /backup map, voor de backup heb ik een speciale gebruiker die alleen gebruikt wordt om de backup op die pc te zetten.
De map /backup moet de rechten 750 hebben, zodat alleen de backup kan schrijven en alleen gebruiker root kan lezen. De overige gebruikers mogen de map niet kunnen bekijken, maar elke keer wordt de map weer op 755 gezet.
Wie weet wat het kan zijn.

Knurpht
27-Nov-2011, 05:45
Zit waarschijnlijk in je /etc/fstab, ik neem tenminste aan dat de /backup daarin aangekoppeld wordt. Kun je /etc/fstab eens posten?

mbenjamins
27-Nov-2011, 08:07
Hieronder de fstab, daar had ik zelf nog niet aan gedacht dat de fout in fstab kon zitten


/dev/disk/by-id/ata-WDC_WD1600AAJS-00L7A0_WD-WCAV2C679219-part1 swap swap defaults 0 0
/dev/disk/by-id/ata-WDC_WD1600AAJS-00L7A0_WD-WCAV2C679219-part2 / ext4 acl,user_xattr 1 1
/dev/disk/by-id/ata-ST31500341AS_9VS4XYF0-part1 /backup ext4 acl,user_xattr 1 2
/dev/disk/by-id/ata-WDC_WD1600AAJS-00L7A0_WD-WCAV2C679219-part3 /home ext4 acl,user_xattr 1 2
proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
debugfs /sys/kernel/debug debugfs noauto 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0

Knurpht
27-Nov-2011, 13:34
Zo ziet een stukje die van mij eruit:


/dev/disk/by-id/ata-Kingston_SSDNow_64GB_YCBGK0S925SY925B4324-part4 /Extra ext4 defaults 1 2


Extra heeft als permissies "770", eigenaar root, groep users (er staan ook wat ontwikkelzaken op).
In de mount op /Extra staat een map "Backup". De rechten ervan heb ik als volgt gezet:


drwxr-x--- 30 root users 4096 22 nov 14:44 Backup/


Volgens mij worden bij jou de rechten steeds opnieuw gezet, door de opties in fstab. Als je die op "default" zet, worden voor zover ik weet de rechten die je zelf toekent gerespecteerd door het systeem.

Knurpht
27-Nov-2011, 13:52
Ik lees je post net opnieuw, en zie opeens iets raars: backup moet kunnen schrijven en root moet kunnen lezen. Maar, root kan altijd lezen en schrijven, daar is 't nou net root voor

Backuppen doe ik middels "su -c luckybackup" (laptop) of door middel van 'rsync' jobs die op een server middels de crontab worden aangeroepen. Verder zorg ik ervoor dat data altijd op één plek staan ( /home ) staat voor alle PC's op de server en wordt middels NFS geëxporteerd. Hetzelfde geldt voor muziek, video, installers etc.
Waarom kies je overigens voor om de backup door een aparte user te laten doen, en niet door root? Als root kun je ook de rechten van de bestanden enz. backuppen, heb je niet het gevaar dat er iets niet gebackupped wordt, lezen makkelijk af te schermen voor gebruikers.

mbenjamins
27-Nov-2011, 15:03
Ik zal mijn situatie zo goed mogelijk uit proberen te leggen.

In huis heb ik een pc staan met vmware esxi op, daar draait onder anderen een server die is ingericht voor data opslag.
Wij hebben een winkel aan huis en daar staat ook een openSUSE pc die dag en nacht aan staat daar heb ik dezelfde hd ingezet die ook in de server zit.
De server die back-upt elke nacht om 1 uur naar de pc in de winkel. Het back-uppen gaat via rsync en die logt automatische in op de pc in de winkel. Voor een stukje extra veiligheid doe ik dat via een aparte gebruiker die backup heet.
Nu moet het zo zijn dat als je op de pc in de winkel zit en je gaat naar de backup schijf dat je dan niks ziet.

Ik hoop dat het zo een stuk duidelijker wordt.

Knurpht
29-Nov-2011, 02:42
Ha Marcel,

Ik zit nog met een aantal vragen:
- Vindt alles plaats binnen een lokaal netwerk?
- Wat is precies de extra veligheid die een aparte gebruiker moet bieden?
- Loopt e.e.a. via de crontab? Zo ja, dan zou je ook een script kunnen maken, dat de backup partitie aan- en afkoppelt.
- Er zijn allerlei GUI's voor rsync. In sommige kun je ook allerlei jobs vastleggen. Heb je daar al eens naar gekeken?

mbenjamins
29-Nov-2011, 11:47
De antwoorden staan in vetgedrukt achter de vragen.


Ha Marcel,

Ik zit nog met een aantal vragen:
- Vindt alles plaats binnen een lokaal netwerk? Ja
- Wat is precies de extra veligheid die een aparte gebruiker moet bieden? Als het kan log ik niet extern met root in.
- Loopt e.e.a. via de crontab? Zo ja, dan zou je ook een script kunnen maken, dat de backup partitie aan- en afkoppelt.Het loop via een crontab, die draait elke nacht om 1 uur, nu voor ik alleen een rsync regel uit. Wat heeft de meerwaarde om het telkens op nieuw te mounten? Als de rechten op 750 staan vindt ik het ook goed.
- Er zijn allerlei GUI's voor rsync. In sommige kun je ook allerlei jobs vastleggen. Heb je daar al eens naar gekeken?Gui heeft geen zin want de server zelf is zonder desktop omgeving genstalleerd, alleen waar die het heen back-upt heeft een desktop omgeving.

Knurpht
30-Nov-2011, 15:31
Als 't verder allemaal werkt, behalve de rechten, zou ik in de fstab de opties weghalen en op "defaults" zetten, en dan handmatig de toegang van de map op 750 zetten, met eigenaar "baclup". Of werkt dat niet naar behoren. Moet zeggen dat ik de hele dag in een rechtenprobleem heb zitten rondneuzen en nu even het zicht kwijt ben op wat 't probleem in jouw geval is :D

mbenjamins
06-Dec-2011, 15:05
Ik heb acl,user_xattr vervangen door defaults en de rechten op 750 gezet, maar gaat nog steeds terug naar de standaard.
Wat ik wil is dat de gewone gebruiker van de pc de backup schijf niet mag bekijken maar als ik inlog als root wil ik de inhoud wel kunnen zien.

Knurpht
06-Dec-2011, 16:14
Aaargh, Marcel, we zien iets helemaal over het hoofd: je kunt de permissies van het mountpoint eindeloos aanpassen, zonder resultaat. Je moet namelijk de permssies van de map als de partitie gemount is veranderen.......Kijk hieronder, wat ik doe met de map /Backup-home op mijn server.

De fstab regel voor de partitie /Backup-home


knurpht-server:/ # grep Backup /etc/fstab
/dev/disk/by-id/ata-Maxtor_7L250R0_L50Y15KG-part3 /Backup-home ext4 defaults 1 2







knurpht-server:/ # mount | grep Backup
/dev/sde3 on /Backup-home type ext4 (rw)
knurpht-server:/ # ls -ld /Backup-home/
drwxr-xr-x 7 root root 4096 aug 30 19:38 /Backup-home
(partitie gemount met alle standaard instellingen)
knurpht-server:/ # umount /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwxr-xr-x 2 root root 4096 feb 1 2011 /Backup-home/
(rechten van het mountpoint, niet aangekoppeld)

knurpht-server:/ # chmod 700 /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwx------ 2 root root 4096 feb 1 2011 /Backup-home/
(rechten gewijzigd van mountpoint, niet aangekoppeld)

knurpht-server:/ # mount /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwxr-xr-x 7 root root 4096 aug 30 19:38 /Backup-home
(rechten, gemount)

knurpht-server:/ # chmod 700 /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwx------ 7 root root 4096 aug 30 19:38 /Backup-home
(rechten gewoijzigd, gemount, enz, enz)
knurpht-server:/ # umount /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwx------ 2 root root 4096 feb 1 2011 /Backup-home/
knurpht-server:/ # chmod 755 /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwxr-xr-x 2 root root 4096 feb 1 2011 /Backup-home/
knurpht-server:/ # mount /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwx------ 7 root root 4096 aug 30 19:38 /Backup-home/
knurpht-server:/ # chown backup /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwx------ 7 backup root 4096 aug 30 19:38 /Backup-home/
knurpht-server:/ # chgrp users /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwx------ 7 backup users 4096 aug 30 19:38 /Backup-home/
knurpht-server:/ # umount /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwxr-xr-x 2 root root 4096 feb 1 2011 /Backup-home/
knurpht-server:/ # mount /Backup-home/
knurpht-server:/ # ls -ld /Backup-home/
drwx------ 7 backup users 4096 aug 30 19:38 /Backup-home/



Uiteraard kan 'root' wel in de map /Backup-home lezen en schrijven, verder alleen gebruiker 'backup' Dit is toch wat je probeert te bereiken?

mbenjamins
08-Dec-2011, 15:15
Het probleem lijkt opgelost te zijn.
Heb het begin van de avond door gevoerd en kan er nog niet bij met een gewone gebruiker, wat ook de bedoeling is.
@Knurpht bedankt.

@Knurpht weet jij een goede manier om meer van de command line te leren?

Knurpht
08-Dec-2011, 16:39
Het probleem lijkt opgelost te zijn.

@Knurpht weet jij een goede manier om meer van de command line te leren?

Mooi.

:D Ik kan daar nix aan doen...:D. Ben "opgegroeid met UNIX, zonder grafische omgeving.
Serieus: zoek eens op "100 linux basis commando's", komt vast wel resultaat op. Als je wilt weten wat een commando doet, kun je in een terminal "man [commando]" doen, bijv "man man", dan krijg je info over hoe je de manual moet gebruiken.

mbenjamins
09-Dec-2011, 13:18
Heb net weer even getest, maar kan er weer gewoon bij met een normale gebruiker.
Ergens gaat er nog iets niet goed, ik heb gedaan wat hier boven staat.

Knurpht
10-Dec-2011, 05:30
Graag output van


ls -ld /backup

en


cat /etc/fstab

en


mount

met de schijf aangekoppeld....

mbenjamins
10-Dec-2011, 06:05
Hieronder de output van "ls -ld /backup"


drwxr-xr-x 8 backup root 4096 14 jul 12:59 /backup/


Hieronder de output van "cat /etc/fstab"


/dev/disk/by-id/ata-WDC_WD1600AAJS-00L7A0_WD-WCAV2C679219-part1 swap swap defaults 0 0
/dev/disk/by-id/ata-WDC_WD1600AAJS-00L7A0_WD-WCAV2C679219-part2 / ext4 acl,user_xattr 1 1
/dev/disk/by-id/ata-ST31500341AS_9VS4XYF0-part1 /backup ext4 defaults 1 2
/dev/disk/by-id/ata-WDC_WD1600AAJS-00L7A0_WD-WCAV2C679219-part3 /home ext4 acl,user_xattr 1 2
proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
debugfs /sys/kernel/debug debugfs noauto 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0


Hieronder de output van "mount"


devtmpfs on /dev type devtmpfs (rw,relatime,size=1013816k,nr_inodes=213131,mode=755)
tmpfs on /dev/shm type tmpfs (rw,relatime)
devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620,ptmxmode=000)
/dev/sda2 on / type ext4 (rw,relatime,user_xattr,acl,barrier=1,data=ordered)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
/dev/sda3 on /home type ext4 (rw,relatime,user_xattr,acl,barrier=1,data=ordered)
securityfs on /sys/kernel/security type securityfs (rw,relatime)
/dev/sdb1 on /backup type ext4 (rw,relatime,barrier=1,data=ordered)

Knurpht
10-Dec-2011, 07:14
Het enige verschil dat ik zie met mijn situatie, is dat bij mij de groep op "users" staat. Doe eens, terwijl de schijf aangekoppeld is


su -c 'chgrp users /backup'
su -c 'chmod 700 /backup'
ls -ld /backup
su -c 'umount /backup'
su -c 'mount /backup'
ls -ld /backup

en dan de output even hierheen :Ik kan mijn server op dit moment niet zomaar rebooten, anders zou ik het effect ervan hier even kunnen testen, maar ik kan me haast niet voorstellen, dat dat verschil maakt.

mbenjamins
11-Dec-2011, 01:41
Hieronder de output van "ls -ld /backup"


drwx------ 8 backup users 4096 Jul 14 12:59 /backup

Knurpht
11-Dec-2011, 04:58
Hieronder de output van "ls -ld /backup"


drwx------ 8 backup users 4096 Jul 14 12:59 /backup


Dit staat allemaal goed. De enigen die kunnen lezen en schrijven in de map, zijn root en gebruiker backup. Toch?

mbenjamins
11-Dec-2011, 05:29
Het lijkt ook goed te gaan steeds maar naar een tijdje staat het weer verkeerd.

Knurpht
11-Dec-2011, 06:54
Is "na een tijdje" na het maken van een backup? Ergens moeten de rechten veranderd worden, dat gaat niet vanzelf. De map uit mijn voorbeeld staat overigens ook na een reboot precies hetzelfde als daarvoor.

mbenjamins
11-Dec-2011, 09:41
Heb net de back-up handmatig gedraaid en inderdaad voor de back-up kan ik er niet in als gewone gebruiker en na de back-up wel.
De volgende commando heb ik in "/etc/crontab" staan om de back-up te maken.


0 1 * * * root rsync -avrz --delete --exclude 'lost+found' -e ssh /home/ backup@winkel.benjamins.nl:/backup

Knurpht
11-Dec-2011, 12:52
Ik ben geen 'rsync' specialist,. maar volgens mij komen met jouw commando de gebruikersmappen uit /home in de map /backup op de andere PC te staan, waarbij /backup de rechten van /home krijgt.

Door het vervangen van /home/ door /home wordt dat oplost. Daarmee wordt de hele map /home naar /backup gesynced, en vind je in /backup een map /home met daarin de gebruikersmappen.

Of

Een andere oplossing is om de doelmap te veranderen van ..@../backup naar ..@../backup/home .
Heb even "man rsync" gedaan en lees dan het volgende:


A trailing slash on the source changes this behavior to avoid creating an additional directory level at the destination. You can think of a trailing / on a source as meaning "copy the
contents of this directory" as opposed to "copy the directory by name", but in both cases the attributes of the containing directory are transferred to the containing directory on the
destination. In other words, each of the following commands copies the files in the same way, including their setting of the attributes of /dest/foo:


rsync -av /src/foo /dest
rsync -av /src/foo/ /dest/foo


Wil je alleen de inhoud van /home backuppen, dan denk ik dat je /home/ moet vervangen door ​/home/*

mbenjamins
16-Jan-2012, 11:36
Ik heb verschillende testen gedaan en met de volgende commando gaat het goed.


rsync -avrz --delete --exclude 'lost+found' -e ssh /home/* backup@winkel.benjamins.nl:/backup/

Dus het is gelukkig nu opgelost.

Knurpht
16-Jan-2012, 13:36
Ik heb verschillende testen gedaan en met de volgende commando gaat het goed.


rsync -avrz --delete --exclude 'lost+found' -e ssh /home/* backup@winkel.benjamins.nl:/backup/

Dus het is gelukkig nu opgelost.

Hartstikke mooi. En ook het mooie van linux :). Het gaat dus om het verschil tussen /home, /home/, en /home/*