[[Vorlage(Archiviert, )]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] [:sudo: Root-Rechte erlangen] [:Dienste: Dienste (neu) starten] [:Editor: Einen Editor öffnen] }}} [[Inhaltsverzeichnis()]] [[Bild(./logo.png, 75, align=left)]] Netatalk ist eine Implementation des Apple Filing Protocol (AFP) für Unix-Systeme. Das Protokoll ermöglicht den Dateizugriff über ein Netzwerk für (Apple-)Rechner mit den Betriebssystemen Mac OS, Mac OS X oder inzwischen [wikipedia:macOS:]. Zusätzlich lassen sich mit Netatalk auch Drucker für (Apple-)Rechner freigeben. Die Authentifizierung erfolgt mit Hilfe der Bibliothek '''uams_dhx2.so'''. = Installation = Das folgende Paket aus den offiziellen Paketquellen muss installiert werden [1]: {{{#!vorlage Paketinstallation netatalk, universe }}} == Firewall-Konfiguration == Falls auf der Ubuntu-Installation auch eine Firewall wie [:ufw:] installiert wurde, sollten die Ports `548` und `427` geöffnet werden, damit afpd aus dem Netzwerk erreicht werden kann. Das ist im Falle von ufw mit den folgenden Befehlen möglich [2][3]: {{{#!vorlage Befehl sudo ufw allow 548 sudo ufw allow 427 sudo ufw disable && sudo ufw enable }}} Anschließend muss der Dienst netatalk neu gestartet werden [4]. = Benutzung/Konfiguration = {{{#!vorlage Experten Ist VMWare installiert oder die von Netatalk zu benutzende Netzwerkkarte nicht `eth0`, muss die Karte in '''/etc/netatalk/atalkd.conf''' aufgeführt werden. Die Parameter für die Karte werden von Netatalk selbst gesetzt. }}} == Passwort-Einstellungen korrigieren == Um sicherzustellen, dass die Passwörter sicher zum Server übertragen werden, sollte in der '''/etc/netatalk/afpd.conf''' die folgende Zeile einkommentiert werden (also ohne '''#''' am Anfang) [5]: {{{ - -tcp -noddp -uamlist uams_dhx2.so -nosavepassword }}} Damit wird für alle Standardverbindungen (erster '''-''') der TCP-Modus festgelegt und nur das Modul '''uams_dhx2.so''' zur Authentifizierung erlaubt. Falls man SSH-Tunnel anbieten und erlauben möchte (für AFP-Verbindungen über unsichere Netzwerke sinnvoll), sollte man zusätzlich die zwei folgenden Zeilen mit in die Konfigurationsdatei '''/etc/netatalk/afpd.conf''' schreiben (wobei der Hostname als FQDN angepasst werden muss): {{{ -advertise_ssh -fqdn DER.HOSTNAME.DE }}} == Freigabeeinstellungen für afpd mit Netatalk Version 2.X== In der Datei '''/etc/netatalk/AppleVolumes.default''' sind als Standard nur die Homeverzeichnisse der Linux-User eingetragen. Andere Verzeichnisse auf dem Server lassen sich durch das Editieren dieser Datei freigeben. Kommentarzeilen werden in der Datei wie üblich mit einer führenden ``#`` gekennzeichnet. Die Konfigurationszeilen sind folgendermaßen aufgebaut: {{{ PFAD FREIGABE-NAME OPTIONEN }}} Der Pfadname muss entweder ein vollständiger oder ein per Shell-Shorthand gekürzter Pfadname auf dem Server sein. In diesen Pfad können auch Variablennamen eingebaut werden, die in der [:man:Manpage] von [man:AppleVolumes.default:] {en} beschrieben werden. Der Freigabe-Name erscheint nach dem ''"Mit Server verbinden"''-Dialog von Mac OS X als Laufwerk-Name des Servers. Wenn der Freigabe-Name Leerzeichen enthält, muss er in Anführungszeichen stehen. Der Freigabe-Name darf nicht länger als 27 Zeichen sein und darf keinen Doppelpunkt (`:`) enthalten. Jede Freigabe muss in einer eigenen Zeile stehen. Es gibt eine Vielzahl von Optionen, die sich für jede Freigabe separat setzen lassen. Die wichtigsten Optionen werden hier beschrieben. {{{#!vorlage Tabelle <-2 rowclass="titel"> netatalk-Optionen +++ Option Funktion +++ `allow:[Benutzer/Gruppen]` Mit dieser Option werden Unix-Benutzer und -Gruppen zur Nutzung der Freigabe zugelassen. Benutzer- und Gruppennamen sind per Komma voneinander getrennt. Gruppennamen werden mit einem @ eingeleitet. Beispiel: allow:benutzer1,benutzer2,@gruppe +++ `deny:[Benutzer/Gruppen]` Mit dieser Option werden Unix-Benutzer und -Gruppen von der Nutzung der Freigabe ausgeschlossen. Format wie unter allow. +++ `preexec:[Befehl]` Mit dieser Option kann ein Befehl angegeben werden, der ausgeführt wird, wenn die Freigabe gemountet wird. +++ `postexec:[Befehl]` Mit dieser Option kann ein Befehl angegeben werden, der ausgeführt wird, wenn die Freigabe geschlossen wird. +++ `root_preexec:[Befehl]` Mit dieser Option kann ein Befehl angegeben werden, der als root ausgeführt wird, wenn die Freigabe gemountet wird. +++ `root_postexec:[Befehl]` Mit dieser Option kann ein Befehl angegeben werden, der als root ausgeführt wird, wenn die Freigabe geschlossen wird. +++ `veto:[Veto-Name]` Mit dieser Option werden Dateien und Verzeichnisse nicht angezeigt, deren (Teil-)Pfad mit dem Veto-Namen übereinstimmt. Mehrere Veto-Namen können mit / aneinander gehängt werden. Beispiel: Wenn der Dateipfad '''/abc/def/dateiname''' lautet wird mit der Option `veto:/abc/` die Datei nicht angezeigt. }}} == Beispiel == === Freigabe für Apple Time Machine === Sehr praktisch für Benutzer eines Apple unter Mac OS X ist die Möglichkeit, mit netatalk (und dem darin enthaltenen afpd) ein "TimeMachine Volume" im Netzwerk anzubieten, auf dem mit dem Apple-Programm "Time Machine" eine automatische Datensicherung stattfinden kann. Dazu muss wie oben beschrieben eine zusätzliche Freigabe mit der Option ''"tm"'' erstellt werden. So kann der Datei '''/etc/netatalk/AppleVolumes.default''' z.B. die folgende Zeile hinzugefügt werden: {{{ /pfad/zum/sicherungsordner TimeMachine options:tm,usedots,upriv }}} Anschließend `afpd` neu starten, um die geänderte Konfiguration zu übernehmen. Dann kann das Volume in Mac OS X nach dem Verbinden zum afpd-Server als Backup-Volume genutzt werden. == Freigabeeinstellungen für afpd mit Netatalk Version 3.X== In der Datei '''/etc/netatalk/afp.conf''' sind als Standard keine Verzeichnisse freigegeben. Verzeichnisse auf dem Server lassen sich durch das Editieren dieser Datei freigeben. Kommentarzeilen werden in der Datei mit einer führenden ``;`` oder ``#`` gekennzeichnet. Die Konfigurationszeilen sind folgendermaßen aufgebaut: {{{ [FREIGABE-NAME] path = PFAD OPTIONEN }}} Der Pfadname muss entweder ein vollständiger oder ein per Shell-Shorthand gekürzter Pfadname auf dem Server sein. In diesen Pfad können auch Variablennamen eingebaut werden, die in der [:man:Manpage] von [man:afp.conf:] {en} beschrieben werden. Der Freigabe-Name erscheint nach dem ''"Mit Server verbinden"''-Dialog von Mac OS X als Laufwerk-Name des Servers. Jede Freigabe muss in einer neuen Zeile beginnen. == Beispiel == === Freigabe für Apple Time Machine === Sehr praktisch für Benutzer eines Apple unter Mac OS X ist die Möglichkeit, mit netatalk (und dem darin enthaltenen afpd) ein "TimeMachine Volume" im Netzwerk anzubieten, auf dem mit dem Apple-Programm "Time Machine" eine automatische Datensicherung stattfinden kann. Dazu muss wie oben beschrieben eine zusätzliche Freigabe mit der Option ''"time machine = yes"'' erstellt werden. So kann der Datei '''/etc/netatalk/afp.conf''' z.B. die folgenden Zeilen hinzugefügt werden: {{{ [My Time Machine Volume] path = /path/to/backup time machine = yes }}} Anschließend `afpd` neu starten, um die geänderte Konfiguration zu übernehmen. Dann kann das Volume in Mac OS X nach dem Verbinden zum afpd-Server als Backup-Volume genutzt werden. == Erweiterung == Richtig komfortabel wird die Netzwerk-Freigabe für Mac OS X im Zusammenspiel von Netatalk mit [:Avahi:Bonjour] (Zeroconf) – eine Technik, die die automatische Erkennung von Computern, Geräten und verschiedenen Netzwerkdiensten in IP-Netzen bereitstellt. Dafür wird Folgendes in die Datei '''/etc/avahi/services/afpd.service''' eingetragen: {{{#!code xml %h _afpovertcp._tcp 548 }}} Anschließend muss der Dienst `avahi-daemon` neu gestartet werden und der Server erscheint automatisch auf den Mac OS X-Rechnern unter Netzwerk. = Links = * [sourceforge2:netatalk:Projektseite] {en} * [wikipedia:Apple_Filing_Protocol:Artikel zum Apple Filing Protocol] # tag: Netzwerk, Server