Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Tubit-AFS: Unterschied zwischen den Versionen

(Home-Hinweis)
(AFS-mounten Kurz-HowTo)
Zeile 1: Zeile 1:
 
Dieser Artikel soll in die Rechteverwaltung des AFS einführen und mehr und mehr Informationen zum AFS sammeln.
 
Dieser Artikel soll in die Rechteverwaltung des AFS einführen und mehr und mehr Informationen zum AFS sammeln.
 +
 +
= Installation =
 +
 +
Eine Installation auf einem privaten Notebook ist möglich ;)
 +
 +
== Gentoo ==
 +
 +
TODO: Nur ein paar Stichworte, more to come.
 +
 +
* Das Cache-Dir darf weder tmpfs noch XFS sein. ext2 geht. (siehe /etc/openafs/cacheinfo)
 +
* CellServDB von: http://www.tubit.tu-berlin.de/fileadmin/a40000000/tubIT/afs/CellServDB
 +
* Kerberos-config: http://www.tubit.tu-berlin.de/fileadmin/a40000000/tubIT/afs/ubuntu_krb5.conf
 +
 +
 +
Benötigte ebuilds:
 +
 +
net-fs/openafs ( kerberos pam )
 +
net-fs/openafs-kernel ( kernel_linux )
 +
net-fs/openafs-legacy 
 +
 +
Starten:
 +
 +
als root:
 +
 +
# /etc/init.d/openafs-client start
 +
 +
als Benutzer:
 +
 +
$ kinit <tubit-username>  # ohne @tu-berlin.de
 +
$ aklog
 +
 +
Bei fehlenden Ausgaben:
 +
 +
# /etc/init.d/openafs-client -d -v start
 +
 +
und dann den afsd-aufruf rauskopieren und manuell ausführen.
 +
 +
 +
Der mountpoint ist automatisch /afs/
  
  

Version vom 24. April 2009, 08:45 Uhr

Dieser Artikel soll in die Rechteverwaltung des AFS einführen und mehr und mehr Informationen zum AFS sammeln.

Installation

Eine Installation auf einem privaten Notebook ist möglich ;)

Gentoo

TODO: Nur ein paar Stichworte, more to come.


Benötigte ebuilds:

net-fs/openafs ( kerberos pam )
net-fs/openafs-kernel ( kernel_linux )
net-fs/openafs-legacy   

Starten:

als root:

# /etc/init.d/openafs-client start

als Benutzer:

$ kinit <tubit-username>   # ohne @tu-berlin.de
$ aklog 

Bei fehlenden Ausgaben:

# /etc/init.d/openafs-client -d -v start

und dann den afsd-aufruf rauskopieren und manuell ausführen.


Der mountpoint ist automatisch /afs/


Rechteverwaltung

Access-Lists / ACLs

Zusätzlich zu den Unix-Permissions bestimmen bei AFS die Accesslists auf den Verzeichnissen, wer worauf zugreifen darf.

Dabei wird unterschiedlichen 'Gruppen' eine Liste von Rechten eingeräumt. Dabei können mehrere Gruppen ganz unterschiedliche Rechte auf einem Verzeichnis haben, das Verzeichnis muss nicht mehr explizit einer Gruppe gehören.


Welche Rechte gibt es?

Für Verzeichnisse:

  • l (lookup) permission:
Erlaubt das durchsuchen und auflisten - benötigt um auf Unterverzeichnisse zuzugreifenaccess sub-directories
  • i (insert) permission:
Erlaubt das Anlegen von Dateien und direkten Unterverzeichnissen
  • d (delete) permission:
Erlaubt analog das Löschen von Dateien und Unterverzeichnissen
  • a (administer) permission:
Erlaubt das Ändern der ACL.

Für Dateien:

  • r (read) permission:
Erlaubt Zugriff auf den Inhalt der Datei und die Datei-Details (long listing)
  • w (write) permission:
Erlaubt das Ändern des Dateiinhaltes von Dateien in dem Verzeichnis und chmod'.
  • k (lock) permission:
Erlaubt das locken von Dateien in diesem Verzeichnis.


Diese Rechte werden jeweils auf das Verzeichnis gesetzt und gelten dann für alle Dateien darin. Abstufungen auf Dateiebene sind dann wie bei UNIX üblich über chmod/chown zu machen.


Gruppen

Folgende Gruppen sollten immer verfügbar sein:

  • system:anyuser
Jeder Benutzer weltweit, der irgendwie auf die AFS-Zelle zugriff hat. Vorsicht: Es gibt keine Einschränkung wer das ist
  • system:authuser
Ein authentifizierter Benutzer der auf die Zelle zugreifen darf
  • system:administrators
AFS-Administratoren ( z.B. tubit)

Anzeigen der ACL's

Die initiale ACL sieht so aus:

$ cd ~
$ fs listacl
Access list for . is
Normal rights:
  system:backup rl
  system:administrators a
  svc-w3 l
  <tubit-userid> rlidwka

Wie man erkennen kann, darf das Backup lesen und auflisten, administratoren die Rechte ändern und der Nutzer svc-w3 auflisten. Der Eigentümer hat alle Rechte. (Letzte Zeile)

Setzen von ACL's

Möchte man beispielsweise ein Unterverzeichnis zum Lesen für alle freigeben, muss man zunächst das Listen des Homes erlauben und dann für das Unterverzeichnis List und Read erlauben:

$ cd ~
$ fs setacl  -dir .  -acl system:authuser l
$ cd <Verzeichnis>
$ fs setacl  -dir .  -acl system:authuser rl

Hinweis: Möchte man den Zugriff auf das IRB-Home erlauben, muss man zusätzlich für dieses die acl setzen bzw. für das tubit-home:

$  fs setacl -dir /afs/tu-berlin.de/home/[a-z]/<tubit-kennung>/irb-sol10   -acl system:authuser rl
$  fs setacl -dir /afs/tu-berlin.de/home/[a-z]/<tubit-kennung>  -acl system:authuser rl

Dabei ist [a-z] der Anfangsbuchstabe des Nutzernamens.


Es ergibt sich in <Verzeichnis> folgendes Bild:

$ cd <Verzeichnis>
$ fs listacl
Access list for . is
Normal rights:
  system:backup rl
  system:administrators a
  system:authuser rl
  svc-w3 l
  <tubit-userid> rlidwka

Entfernen von Rechten

Durch das explizite angeben der Rechte beim setzen, werden alle nicht angegebenen Rechte wieder entfernt. Möchte man einer Gruppe alle Rechte entziehen hilft folgendes Kommando weiter:

fs setacl  -dir .  -acl system:anyuser none

Dies entzieht der Gruppe alle Rechte, bei listacl wird die Gruppe nicht mehr angezeigt.


Links

Siehe auch:


Quellen