EDV:OpenAFS

From KIP Wiki
⧼kip-jumptonavigation⧽⧼kip-jumptosearch⧽
OpenAFS-Logo

Allgemeines

Hier im KIP wird OpenAFS als zentrales Netzwerk-Dateisystem verwendet.

AFS (Andrew File System) ist ein Dateisystem, das die plattformübergreifende gleichzeitige Nutzung von Dateien zwischen mehreren Rechnern ermöglicht. Es beinhaltet Funktionen zur Zugriffskontrolle (ACLs), Authentifizierung (Kerberos), verschlüsselte Datenübertragung (fcrypt) und einiges mehr...

Ursprünglich wurde es an der Carnegie Mellon Universität entwickelt, und danach von der Transarc Corporation, die 1994 von IBM übernommen wurde, vermarktet.
Seit 2000 existiert eine eine parallele Open Source Weiterentwicklung.


Client Installation

Um sich mit dem AFS-Dateiserver zu verbinden, benötigt man (wer hätte das gedacht) eine entsprechende Client-Software. Diese ist für fast alle Betriebssysteme kostenlos verfügbar.


Weitere informative Resourcen zum Thema:

Verwendung

Um mit dem AFS-Server arbeiten zu können, muss man sich zuerst authentifizieren (siehe auch Authentifizierung ), da man sonst nur die Reche der Gruppe system:anyuser (also Anonymous / Gast) erhält. Mit diesen ist nur der Zugriff auf allgemeine (öffentliche) Dateien möglich. OpenAFS arbeitet dabei mittlerweile mit Kerberos Verion 5 (Kerberos). Man kann dazu auch die FAQ durchlesen, insbesondere: "Was ist ein Ticket und/oder Token".

Wegen der Rechte im AFS (Access Control Lists) werden von den Unix/Linux-Protection-Bits für User, Group und Others werden nur die von User verwendet - dies erfolgt, nachdem die ACL ausgewertet wurde. Weitere Informationen zur Benutzung von AFS.

Achtung.svg Wichtig für AFS sind synchrone Zeiten der Systemuhren! Deshalb sollte auf jedem Client die Uhrzeit auch stimmen (siehe NTP), sonst kann es passieren, dass der Verbindungsaufbau fehl schlägt.


Wichtige Konfigurationsdateien

Falls es mal zu Problemen mit dem OpenAFS-Client kommt, ist es gut zu wissen wo welche Einstellung steht ;)

Nachfolgend die wichtigsten KIP-AFS spezifischen Konfigurationsdateien.

CellServDB

In der CellServDB sollte für die KIP-Zelle folgender Eintrag stehen:

>kip.uni-heidelberg.de
129.206.176.40          # ldap.kip.uni-heidelberg.de
129.206.176.149         # ldap2.kip.uni-heidelberg.de
Achtung der 2. Teil ist nicht nur ein Kommentar, dort muss der vollständige Name des Servers stehen (für aklog)!

Diese Datei befindet sich auch

  • im AFS unter: /afs/kip/common/etc/CellServDB

und kann für die Einstellungen genutzt, bzw. einfach ins Konfigurationsverzeichnis kopiert werden.

  • unter Linux meist in: /etc/openafs/CellServDB
  • unter Windows vermutlich in: C:\Programme\OpenAFS\Client\CellServDB

ThisCell

Unsere Zelle (Cell) im KIP ist natürlich kip.uni-heidelberg.de,somit enthält die ThisCell-Datei entsprechend nur den Eintrag:

kip.uni-heidelberg.de

CellAlias (nur für -dynroot)

Wenn /afs dynamisch generiert wird, sollte die CellAlias-Datei folgendes beinhalten:

kip.uni-heidelberg.de   kip
alihlt.cern.ch          alihlt
urz.uni-heidelberg.de   urz

Diese Datei muss gegebenenfalls im Konfigurationsverzeichnis des Clients erzeugt werden

  • unter Unix / Linux ist das meist: /etc/openafs/CellAlias oder /usr/vice/etc
  • unter Windows: C:\Programme\OpenAFS\Client\CellServDB

Dieses Beispiel auch im AFS und kann von dort aus kopiert werden:

cp /afs/kip.uni-heidelberg.de/common/etc/CellAlias /etc/openafs

Damit diese Datei neu eingelesen wird, muss der AFS-Client neugestartet werden. Wenn das nicht geht, können diese Aliase auch temporär manuell erzeugt werden:

fs newalias kip kip.uni-heidelberg.de
fs newalias alihlt alihlt.cern.ch
fs newalias urz urz.uni-heidelberg.de
fs listalias

krb5.conf

Die Datei krb5.conf beinhaltet Informationen über den Kerberos-Realm, in dem sich der Client befindet. Kerberos wird über diese Datei Konfiguriert.

  • im AFS abgelegt unter: /afs/kip/common/etc/krb5.conf

Auf dem lokalen Client-System befindet sie sich:

  • unter Linux in: /etc/krb5.conf
  • unter Windows in: C:\ProgramData\Kerberos\krb5.conf

und sieht in etwa so aus:

[libdefaults]
  default_realm = KIP.UNI-HEIDELBERG.DE
  ticket_lifetime = 2d
  renew_lifetime = 8d

# The following krb5.conf variables are only for MIT Kerberos.
	krb4_config = /etc/krb.conf
	krb4_realms = /etc/krb.realms
	kdc_timesync = 1
	ccache_type = 4
	forwardable = true
	proxiable = true
        renewable = true

# The following libdefaults parameters are only for Heimdal Kerberos.
	v4_instance_resolve = false
	v4_name_convert = {
		host = {
			rcmd = host
			ftp = ftp
		}
		plain = {
			something = something-else
		}
	}

[realms]
KIP.UNI-HEIDELBERG.DE = {
	 kdc = ldap2.kip.uni-heidelberg.de
	 kdc = afsback.kip.uni-heidelberg.de
	 kdc = ldap.kip.uni-heidelberg.de
	admin_server = ldap.kip.uni-heidelberg.de
}

[domain_realm]
  .kip.uni-heidelberg.de = KIP.UNI-HEIDELBERG.DE
  kip.uni-heidelberg.de = KIP.UNI-HEIDELBERG.DE

[login]
	krb4_convert = false
	krb4_get_tickets = false


Ein etwas älteres Beispiel: Installation des Clients im KIP: EDV:OpenAFS/Install_winxp