EDV:OpenAFS: Difference between revisions

From KIP Wiki
⧼kip-jumptonavigation⧽⧼kip-jumptosearch⧽
No edit summary
Line 4: Line 4:
== Allgemeines ==
== Allgemeines ==


Hier im [[KIP]] wird [http://www.openafs.org OpenAFS] als zentrales Dateisystem verwendet.
Hier im [[KIP]] wird [http://www.openafs.org 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.
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 ([ http://docs.openafs.org/UserGuide/ch04s02.html ACLs]), Authentifizierung (Kerberos), verschlüsselte Datenübertragung (fcrypt) und einiges [[w:de:Andrew File System | mehr...]]
Es beinhaltet Funktionen zur Zugriffskontrolle (ACLs), Authentifizierung (Kerberos), verschlüsselte Datenübertragung (fcrypt) und einiges [[w:de:Andrew File System | 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.
Ursprünglich wurde es an der Carnegie Mellon Universität entwickelt, und danach von der Transarc Corporation, die 1994 von IBM übernommen wurde, vermarktet.<br />
Seit 2000 existiert eine eine parallele [[w:de:Open Source | Open Source]] Weiterentwicklung.
Seit 2000 existiert eine eine parallele [[w:de:Open Source | Open Source]] Weiterentwicklung.


Line 25: Line 25:




Weitere informative Resourcen zum Thema:
Weitere informative Resourcen zum Thema:
* [[w:de:FAQ | FAQ]] für das AFS im KIP: [[EDV:OpenAFS/FAQ | OpenAFS/FAQ ]]

* [[EDV:OpenAFS/FAQ | OpenAFS-FAQ ]] speziell für das AFS im KIP
* [[EDV_Privat:OpenAFS|EDV-interne Seite]] (AFS-Server-Administration)
* Das Rechenzentrum hat auch ein [[EDV:OpenAFS|AFS]]: http://www.urz.uni-heidelberg.de/datenhaltung/afs/
* Das Rechenzentrum hat auch ein [[EDV:OpenAFS|AFS]]: http://www.urz.uni-heidelberg.de/datenhaltung/afs/
* Hier ist noch eine schöne FAQ: http://www.angelfire.com/hi/plutonic/afs-faq.html
* Hier ist eine schöne FAQ: http://www.angelfire.com/hi/plutonic/afs-faq.html




== [[EDV:OpenAFS/Verwendung|Verwendung]] ==
== Verwendung ==


Um mit [[EDV:AFS|AFS]] arbeiten zu können, muss man sich erst [[EDV:OpenAFS/Verwendung/Authentisieren|authentisieren]] (siehe auch [[w:de:Authentisierung]]), da man sonst nur die Reche der Gruppe '''system:anyuser''' (also Anonymous / Gast) erhält.
Um mit dem AFS-Server arbeiten zu können, muss man sich zuerst [[EDV:OpenAFS/Verwendung/Authentisieren|authentifizieren]] (siehe auch [[w:de:Authentifizierung | 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 Dateien möglich. OpenAFS arbeitet dabei mittlerweile mit Kerberos Verion 5 ([[w:de:Kerberos (Informatik)| Kerberos]]).
Man kann dazu auch die [[EDV:OpenAFS/FAQ| FAQ]] durchlesen, insbesondere: [[EDV:OpenAFS/FAQ#Was ist ein Ticket und/oder Token | "Was ist ein Ticket und/oder Token"]].
[[EDV:AFS|AFS]] arbeitet dabei mittlerweile mit Kerberos5-Token ([[w:de:Kerberos (Informatik)]]).
Man kann dazu auch in der '''[[EDV:OpenAFS/FAQ| FAQ]]''' über [[EDV:OpenAFS/FAQ#Was ist ein Ticket und/oder Token]] nachlesen.




Wegen der [[EDV:OpenAFS/Verwendung/ACLs|Rechte im AFS (Access Control Lists)]] werden von den Unix/Linux-Protection-Bits
Wegen der [[EDV:OpenAFS/Verwendung/ACLs|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.
für User, Group und Others werden nur die von User verwendet - dies erfolgt, nachdem die ACL ausgewertet wurde.
Weitere Informationen zur [[EDV:OpenAFS/Verwendung|Benutzung von AFS]].




{{Achtung|{{IconAchtung}} Wichtig für AFS sind '''synchrone Zeiten''' der Systemuhren, deshalb sollte auf jedem Client die Uhrzeit auch stimmen (siehe [[EDV:NTP|NTP]]). Ansonsten kann es passieren, dass der Verbindungsaufbau fehl schlägt, obwohl alles passt.}}
{{Achtung|{{IconAchtung}} Wichtig für AFS sind '''synchrone Zeiten''' der Systemuhren! Deshalb sollte auf jedem Client die Uhrzeit auch stimmen (siehe [[EDV:NTP|NTP]]).}}, sonst kann es passieren, dass der Verbindungsaufbau fehl schlägt.




== Wichtige Konfigurationsdateien ==
== Wichtige Konfigurationsdateien ==


Falls es mal zu Problemen mit dem OpenAFS-Client kommt, ist es gut zu wissen wo was steht das wichtig ist ;)
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.
Es kann auch die Konfiguration der verbindungsspezifischen Parameter vereinfachen.




=== CellServDB ===
=== CellServDB ===


In der '''CellServDB''' sollte für die KIP-Zelle folgender Eintrag stehen:
In der ''CellServDB'' sollte für die KIP-Zelle folgender Eintrag stehen:
>kip.uni-heidelberg.de
>kip.uni-heidelberg.de
129.206.176.40 # ldap.kip.uni-heidelberg.de
129.206.176.40 # ldap.kip.uni-heidelberg.de
Line 62: Line 62:
{{Achtung|Achtung der 2. Teil ist nicht nur ein Kommentar, dort '''muss''' der vollständige Name des Servers stehen (für aklog)!}}
{{Achtung|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/''' oder im Web unter: '''http://kip1.kip.uni-heidelberg.de/CellServDB'''
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 '''
* im Web unter: http://kip1.kip.uni-heidelberg.de/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'''
* unter Windows vermutlich in: '''C:\Programme\OpenAFS\Client\CellServDB'''



=== ThisCell ===
=== ThisCell ===
Line 74: Line 79:
Unsere Zelle (Cell) im [[KIP]] ist natürlich '''kip.uni-heidelberg.de''', enthält die '''ThisCell'''-Datei entsprechend nur den Eintrag:
Unsere Zelle (Cell) im [[KIP]] ist natürlich '''kip.uni-heidelberg.de''', enthält die '''ThisCell'''-Datei entsprechend nur den Eintrag:
kip.uni-heidelberg.de
kip.uni-heidelberg.de





Line 84: Line 88:
urz.uni-heidelberg.de urz
urz.uni-heidelberg.de urz


Diese Datei muss gegebenenfalls im Konfigurationsverzeichnis des Clients erzeugt werden.
Diese Datei muss gegebenenfalls im Konfigurationsverzeichnis des Clients erzeugt werden


* unter Unix / Linux ist das meist: '''/etc/openafs/CellAlias''' oder '''/usr/vice/etc'''
* unter Unix / Linux ist das meist: '''/etc/openafs/CellAlias''' oder '''/usr/vice/etc'''


* unter Windows:
* unter Windows: '''C:\Programme\OpenAFS\Client\CellServDB'''


Natürlich ist dieses Beispiel auch im AFS und kann von dort kopiert werden:
Dieses Beispiel auch im AFS und kann von dort aus kopiert werden:
cp /afs/kip.uni-heidelberg.de/common/etc/CellAlias /etc/openafs
cp /afs/kip.uni-heidelberg.de/common/etc/CellAlias /etc/openafs


Damit diese Datei neu eingelesen wird muss der AFS-Client neugestartet werden.
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:
Wenn das nicht geht, können diese Aliase auch temporär manuell erzeugt werden:
fs newalias kip kip.uni-heidelberg.de
fs newalias kip kip.uni-heidelberg.de
Line 99: Line 103:
fs newalias urz urz.uni-heidelberg.de
fs newalias urz urz.uni-heidelberg.de
fs listalias
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:
<pre>
[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 encryption type specification will be used by MIT Kerberos
# if uncommented. In general, the defaults in the MIT Kerberos code
# are correct and overriding these specifications only serves to disable
# new encryption types as they are added, creating interoperability problems.
# default_tgs_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5
# default_tkt_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5
# permitted_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5

# 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

</pre>









Revision as of 11:34, 30 January 2012

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 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, 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 encryption type specification will be used by MIT Kerberos
# if uncommented.  In general, the defaults in the MIT Kerberos code 
# are correct and overriding these specifications only serves to disable
# new encryption types as they are added, creating interoperability problems.
# default_tgs_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5
# default_tkt_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5
# permitted_enctypes = aes256-cts arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc des-cbc-md5

# 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