Samba - Fileserver für Windows
NetBIOS und SMB (ein Vorwort)
Die ersten Netzwerkkarten für den IBM PC wurden in den
frühen 80ziger Jahren von IBM selbst entwickelt. Obwohl es damals bereits unter anderem
TCP/IP im breiten Einsatz gab, entwickelte IBM ein eigenes Protokoll: das Network Basic
Input/Output System (NetBIOS).
Als IBM Microsoft die Entwicklung von OS/2 übertrug und
Microsoft hiermit das NetBIOS Protokoll lizenzierte gab es den ersten breiten Einsatz
dieses Protokolls, das in vielen Betriebssysteme einfloss. OS/2, MS LAN Manager, Windows
for Workgroups, Windows NT, Windows 9x/Me, Windows 2000 usw.
Als TCP/IP immer wichtiger wurde für den Einsatz des
Internets, entwickelte Microsoft NetBIOS bridges zu TCP/IP. Auch Linux kann mit diesen
Protokollwirren umgehen. Die Unterschiede zwischen IP und NetBIOS sind für den Benutzer
besonders auffällig in der Rechnererkennung. IP benutzt numerische Adressen und NetBIOS
eingetragene Namen.
NetBIOS erfuhr noch eine Erweiterung mit dem Namen NetBIOS
Extended User Interface (NetBEUI), das es jedem Host erlaubt, seinen Namen zu
ändern, wenn dies erwünscht/nötig wird.
Da es kein Äquivalent zu einem Domain Name Server für
NetBEUI gibt, ist dieses Protokoll für große Netze unbrauchbar, da jede Maschine von
Zeit zu Zeit die Namen aller Maschinen (die sich via Broadcast melden) in der Umgebung
abarbeiten muss.
Um alles noch ein wenig interessanter zu machen, benutzen
die Windows und OS/2 Familien ein weiteres Protokoll, das Server Message Block (SMB)
genannt wird. SMB wird benutzt, um Ressourcen wie Dateien und Drucker anderen Hosts zur
Verfügung zu stellen.
Hierauf baut auch SaMBa auf. Entwickelt wurde dieses
Bindeglied zwischen der DOS/Windows und Unix Welt von Andrew Tridgell bereits Dezember
1991. Damals noch um eine Verbindung von einem DOS-Rechner zu einer Sun Workstation
herzustellen. Andrew begann via Back-Engeneering das Protokoll zu analysieren (dazu
verwendete er ein eigens dafuer geschriebense Programm "sockspy". Die Nachfrage
war damals schon enorm - zwischen Version 0.1 und 1.0 vergingen nur wenige Monate. Danach
schlief das Projekt fuer einige Zeit ein. Erst als Andrew Linux entdeckte und Samba auf
diese Plattform portierte, ging es weiter. Ein loser Verbund von etwa 20 Kernentwicklern
bringt Samba voran.
Anekdote |
Da es
lizenrechtliche Probleme bei SMB gab, suchte Andrew im Woerterbuch einen Ausdruck mit der
Buchstabenkombination *S*M*B* - das Ergebnis: SAMBA. Als er spaeter wieder danach suchte,
war im Woerterbuch das Wort "Samba" nicht mehr vorhanden. |
Ich verwende grundsätzlich die aktuelle
"stabile" Version, da sich Samba ständig in Entwicklung befindet und neue
Features hinzubekommt. Die schon sprichwoertliche Stabilitaet pruefte ich mit einem
Burn-In-Test, bei dem ich von drei Windows-Workstations aus wahllos Dateioperatione
ausführte. Dies beeindruckte das System kaum.
Ingesamt kopierte ich ca. 10.500 Dateien mit einer
Gesamtgröße von 18 GB, löschte wahllos einen Teil und verschob diese in diverse andere
Verzeichnisse. Dazwischen meldete ich mich mit anderen Clients an und ab, kopierte von
dort Dateien und druckte mehrer, bis zu 1520 KB grosse Dokumente.
Samba besteht im Grunde aus zwei Teilen smbd und nmbd.
Ihre Aufgabe ist es, die vier wichtigen/modernen CIFS Dienste bereitzustellen:
Zusätzlich
werden einige Programme mit dem Samba Paket ausgeliefert:
smbclient
[Anbindung eines Unix Rechners an ein SMB - Netzwerk]
testparm
[Ueberprueft die Konfigurationsdatei smb.conf auf syntaktische und lexikalische Fehler]
smbstatus
[Hiermit kann der Status von Samba agefragt werden. Z.B. Verbundene Cpmuter mit Freigaben
inklusive Benutzer und Zeitpunkt des Zugriffs]
smbpasswd
[Dazu spaeter mehr]
addtosmbpasswd
[Dazu spaeter mehr]
convert_smbpasswd
[Kovertiert alte Samba 1.x Passwoerter in das neue Format]
make_printdef
[Dieses Programm ermoeglicht es Windows 9x-inf-Dateien zu extrahieren und in printdef
einzutragen, welche Dateien noetig sind, um Treiberdateien automatisch unter Windows 9x/Me
zu laden und installieren]
smbtar
[Ermoeglicht es Windows-Freigaben unter Linux in eine Datei oder auf einen Streamer zu
sichern]
make_smbcodepage
[Anpassung der Codepage von Samba an die der Clients anzupassen um auch Umlaute in den
Dateinamen richtig anzuzeigen. Dazu spaeter jedoch ein wenig mehr]
nmblookup
[dieses Tool wird benutzt um im Netzwerk andere Hosts mit NetBIOS aufzustoebern]
swat [ein
hervorragendes Tool um Remote das komplette Samba zu konfigurieren]
Den Samba Server einrichten:
So, nun wollen wir ans Eingemachte gehen,
wobei sich der Samba-Server recht einfach einrichten lässt. Letztendlich werden wir noch
ein paar Tricks anwenden um einen waschechten NT Server zu emulieren (ich gebe es ja zu,
es sind weitläufig bekannte Tricks, die ich aber erst nach und nach irgendwo entdeckte)
Folgende Verzeichnisse habe ich für
Samba vorgesehen:
/server/share |
Uneingeschränkt zugänglich
für die Gruppe "netuser"(rw) |
/server/download |
Uneingeschränkt zugänglich
für die Gruppe "netuser" (rw) |
/server/samba |
Nur Leserechte für
"netuser" |
/server/samba/profiles |
versteckt, aber Schreib- und
Leserechte für "netuser" (hier werden die Userprofile abgelegt) |
/server/samba/netlogon |
versteckt und nur Leserecht
für "netuser" (von hier werden die Loginscripte ausgeführt) |
/server/home |
Rechte der jeweiligen
Benutzer in "netuser" - dazu später mehr |
/mnt/cdrom |
Erklärt sich ganz von
selbst |
/ |
Gleichbedeutend (ungefähr
:-) mit c$ unter Windows NT / nur von root bzw. administrator zugreifbar. |
Anzumerken ist, dass den /home -
Verzeichnissen (hier: /server/home) eine Besonderheit zukommt, auf die ich spaeter noch zu
sprechen komme.
Die Verzeichnisstruktur anlegen:
Zunächst habe ich ja bereits als Mount-Point ein eigenes
Samba-Verzeichnis. Zudem habe ich die Gruppe "netuser" bereits beim "NFS - Server" angelegt und die restlichen Verzeichnisse die
richtigen Rechte verpasst - hier noch einmal die entsprechenden Einstellungen:
chgrp netuser /samba -R
# Das Verzeichnis Samba für
"netuser" freigeben
chmod 755 /samba -R
# Rechte Lesen, Schreiben, Ausführen für das
Verzeichnis
chmod 755 /cdrom -R
# siehe /samba
cd samba
mkdir profiles
# Directory fuer die Windows Profile
erstellen
mkdir netlogon
# Directory fuer netlogon erstellen
chgrp netuser * -R
# Alle Unterverzeichnissen von Samba der Gruppe
"netuser" zuordnen
chmod 770 * -R
# Aenderung der Rechte Schreiben, Lesen,
Ausfuehren der Unterverzeichnisse erteilen
Sehen wir uns jetzt gleich mal meine Konfigurationsdatei /etc/smb.conf
an:
# Samba config file created
# from roland
# Date: 2000/05/15 19:43:30
# Global parameters
[global] netbios name = sun
server string = Samba Server
encrypt passwords = Yes
update encrypted = Yes
passwd chat = *New*UNIX*password* %n\n
*ReType*new*UNIX*passwd* %n\n *passwd:*all*authentication*tokens*updated*sucessfully*
unix password sync = Yes
log file = /var/log/samba/log.%m
max log size = 50
name resolve order = wins
time server = Yes
socket options = TCP_NODELAY SO_RCVBUF=8192
SO_SNDBUF=8192
logon script = netlogon.bat
logon path = \\%L\profiles\%U
logon drive = h:
domain logons = Yes
preferred master = Yes
domain master = Yes
wins support = Yes
[netlogon]
comment = Netlogon-Resource
path = /server/samba/netlogon
[profiles]
path = /server/samba/profiles
writeable = Yes
create mask = 0700
directory mask = 0700
browseable = No
[c$]
comment = Administrative Share
path = /
valid users = roland root
writeable = Yes
create mask = 0770
directory mask = 0770
browseable = Yes
[homes]
comment = Home Directories
writeable = Yes
sync always = Yes
dos filetimes = Yes
dos filetime resolution = Yes
[server]
comment = Master Share
path = /server/share
writeable = Yes
guest ok = Yes
[download]
comment = Download Dir
path = /server/download
writeable = Yes
guest ok = Yes
[cdrom]
comment = Linux CD-ROM1
path = /mnt/cdrom
locking = No
[printer$]
comment = Printer Drivers for Windows OS
path = /server/samba/printer
writeable = Yes
[hplj5p]
printer driver = HP LaserJet 5P/5MP (HP)
printer driver location = \\%L\printer$
path = /var/spool/samba
guest ok = Yes
printable = Yes
Obwohl meine smb.conf - Datei nicht
sonderlich lang ist, steht darin dennoch eine ganze Menge. Die globalen Einstellungen sind
an sich die wohl Wichtigsten, die entscheiden, wie der Samba-Server arbeiten soll. Zudem
gibt es noch standardisierte Freigaben, auf die ich in den folgenden Tabellen näher
eingehen möchte.
In der obigen Konfigurationsdatei gibt es einige spezielle
"Sektionen", auf die ich jedoch zuvor noch erklaeren moechte:
[global]
Allgemeingueltige Konfigurationsanweisungen, die fuer den
ganzen Server gelten. Alle weiteren Eintraege beziehen sich ausschliesslich auf die dort
angegebene Freigabe. In Global koennen ausserdem Anweisungen eingetragen sein, die auch in
den "shares"="Freigabe" auftauchen und als Voreinstellung gelten. Sind
jedoch explizit diese Werte nochmals in der "Freigabe" angegeben, werden die
globalen Voreinstellungen fuer diesen bestimmten Eintrag ueberschrieben.
[homes]
In dieser Freigabe werden die
"Heimatverzeichnisse" freigegeben - und zwar in einer sehr eleganten Art und
Weise. Zwei Freigaben werden erstellt. Eine mit dem Namen des Benutzers und eine zweite
mit dem Namen "homes". Beide verweisen auf das Heimatverzeichnis des Benutzers.
Ist das nicht besser als unter NT geloest?
[printers]
Auf diese besondere Art von Druckerfreigabe komme ich
spaeter noch zu sprechen.
Globale Einstellungen:
netbios
name |
Der NetBIOS - Name der Maschine (sun) |
server
string |
Wahlfreie Bezeichnung des Servers |
security |
(domain) Die Sicherheitsüberprüfung
befindet sich auf Domänenebene |
encrypt
passwords |
(yes) Passwörter werden verschlüsselt und |
update
encrypted |
(yes) verschlüsselt erneuern |
passwd
chat |
|
domain
master |
(yes) Dieser Server ist der Masterbrowser
(WAN - weites Browsen etc.) |
domain
logons |
(yes) Anmelden an der Domäne sind erlaubt |
log
file |
Position des Log-Files auf dem Server |
max log
size |
Maximale Groesse der LOG-Datei |
socket
options |
|
prefered
master |
(yes) Dieser Server soll bevorzugter Master
sein |
dns
proxy |
|
logon
script |
Pfad in dem das Logon Script für die
Windows Maschinen liegen soll |
logon
path |
Pfad in dem die Profile für die Windows
Maschinen gespeichert werden sollen |
Einstellungen
von netlogon: [netlogon]
comment |
Erklärender wahlfreier Kommentar zur
Freigabe |
path |
(/samba/netlogon) Unix - Pfad auf dem Server |
browsable |
(no) Die netlogon - Freigabe darf nicht
angezeigt werden |
writable |
(no) Auf die netlogon - Freigabe darf nicht
geschrieben / überschrieben werden |
Hinweis: für das
Erstellen / Ändern des Logon - Skriptes muss natürlich das Schreibrecht kurzzeitig
wieder auf yes gestellt werden.
Einstellungen von profiles:
[profiles]
comment |
Erklärender wahlfreier Kommentar zur
Freigabe |
path |
(/samba/profiles) Unix - Pfad auf dem Server |
browsable |
(no) Die profiles - Freigabe darf nicht
angezeigt werden |
writable |
(yes) Auf die profiles - Freigabe muss
geschrieben werden können |
create
mask |
(700) Nur der Besitzer, nicht aber die
Gruppe, darf Dateien schreiben, lesen, ausführen |
create
directory |
(700) Nur der Besitzer, nicht aber die
Gruppe, darf Verzeichnisse schreiben, lesen, ausführen |
Einstellungen
von c: [c$]
comment |
Erklärender wahlfreier Kommentar zur
Freigabe (Komplette Freigabe für User roland) |
path |
(/) Unix - Root -Pfad auf dem Server (alles) |
browsable |
(no) Die profiles - Freigabe darf nicht
angezeigt werden |
writable |
(yes) Auf die profiles - Freigabe muss
geschrieben werden können |
create
mask |
(0770) Nur der Besitzer, nicht aber die
Gruppe, darf Dateien schreiben, lesen, ausführen |
create
directory |
(0770) Nur der Besitzer, nicht aber die
Gruppe, darf Verzeichnisse schreiben, lesen, ausführen |
valid
users |
(roland root) Nur einer der SuperUser darf
sich auf dieses Laufwerk verbinden |
Einstellung
der Home - Verzeichnisse: [homes]
comment |
Erklärender wahlfreier Kommentar zur
Freigabe |
read-only |
(no) Auf diese Verzeichnisse darf auch
geschrieben werden |
browsable |
(no) Das /home Verzeichnis selbst darf nicht
sichtbar sein |
Einstellungen
der Druckertreiber [printer$]
comment |
Erklärender wahlfreier Kommentar zur
Freigabe (Hier liegen die Windows OS Druckertreiber) |
path |
/server/spool/samba |
writable |
(yes) Der Druckertreiber darf verändert
werden |
guest
ok |
(yes) Auch Gaeste duerfen den Druckertreiber
installieren |
Erklaerungen zu den
Druckertreibern:
Oft gibt es Druckertreiber nur als
Installationsprogramm usw. Hierueber sollte man sich keine Gedanken machen. Ich
installiere auf einem beliebigen Windows - Rechner ganz einfach den
"Netzwerkdrucker" als lokalen (LPT1) Drucker. Die notwendigen
Druckertreiber-Dateien liegen danach ganz einfach unter c:\winnt\system32\spool\drivers in
den entsprechenden Unterverzeichnissen vor. Die Dateien kopiert man dann ganz einfach in
diesen Share. (Beispiel fuer WinNT oder W2k)
Einstellungen der Drucker -
Freigaben: [hplj5p]
comment |
Erklärender wahlfreier Kommentar zur
Freigabe |
path |
(/var/spool/samba) Pfad des Druckerspoolers |
print
ok |
(yes) |
browsable |
(no) |
Erklaerungen zur
Druckerinstallation:
Die Installation des Druckers funktioniert ebenso
einfach, wie von einem Windows NT Server. Im Network Neighborhood (Netwerkumgebung) klickt
man auf den Server (sun) und der/die dargestellte(n) Drucker muss man nur noch mit der
rechten Maustaste anklicken und entweder Install (Installieren) oder Connect (Verbinden)
auswählen. Die richtigen Druckertreiber werden automatisch installiert.
Exkursion: Einfuehrung in Samba:
Bevor ich die obigen Freigaben durchleuchte, machen wir erst
mal einen kleinen Ausflug in die Welt von Samba, bzw. zeige ich Dir einige Beispiele.
Nichts desto trotz kann ich Dir die obigen Freigaben und zugehörige Einstellungen nur ans
Herz legen (natuerlich in einer fuer Dich angepassten Form). Auf den unten folgenden
Zeilen zeige ich am Beispiel des Verzeichnisses "/server/share", wie man
zusätzliche Freigaben einrichtet.
Normalerweise öffne ich auf einer Windows- oder
Linuxworkstation eine SSH - Session zum Linux - Server und editiere unter /etc die
Datei smb.conf. Dabei kann auch gleich noch Verzeichnisrechte ändern bzw. neue
Verzeichnisse anlegen. Natürlich geht das auch ein wenig komfortabler. In der Datei /etc/inittab
findet man meist im unteren Teil den Eintrag swat. Oft ist dieser Eintrag
deaktiviert durch ein #. Man sollte den Eintrag aktivieren und neu initialisieren. Als TCP
Port wird standardmäßig 901 für SWAT voreingestellt (SWAT = Samba Web Administration
Toolkit). Und wie der Name schon sagt, handelt es sich dabei um ein hervorragendes Tool,
um Samba via Web-Browser zu konfigurieren. Welchen Browser man dabei verwendet, ist dabei
nicht sonderlich wichtig, da SWAT mit allen zusammenarbeitet.
Unter der Adresse http://192.168.0.3:901
kann man das grafische Interface aufrufen und bequem an Samba herumkonfigurieren. Mitunter
sind kleine Änderungen hiermit leichter zu bewerkstelligen, als per Hand, da man sich
nicht mehr alle möglichen Einstellungen merken muss.
Trotzdem sollte man seine Shares per Hand anlegen. Hier
die Samba-Konfigurationsdatei zu /server/share:
[server]
comment = Test Share
path = /server/share
read only = No
guest ok = Yes
Verzeichnisse und Rechte
Hiermit wird der Freigabe ein Verzeichnis im
UNIX-Verzeichnisbaum zugewiesen. Auf alle Dateien und Unterverzeichnisse hat der Benutzer,
der sich mit dieser Freigabe verbindet, die selben Rechte, als arbeite er direkt am Server
unter Linux. Es werden ihm also NUR die Dinge erlaubt, die ihm das Dateisystem
gestatten - ist bei der Freigabe guest ok = yes und writeable = yes angegeben darf er aus
Freigabensicht alles. Da die Unterverzeichnisse jedoch folgendermassen aussehen:
ls -l
total 24
drwx------ 2 roland roland /test1
drwx------ 2 roland users /test2
drwxrwx--- 2 root users /test3
drwxrwx--- 2 root root /test4
drwxr-xr-x 2 root root /test5
drwxrwx--- 2 root root /test6
und wir uns als "roland" angemeldet haben, duerfen
wir zwar alles im Verzeichnis /test1, /test2 und /test3 was daran liegt, dass zunaechst
mal in /test1 "roland" User angegeben ist und dieser volle Write, Read und
Execute - Rechte besitzt - gleiches gilt fuer /test2 (Hier darf die Gruppe users uebrigens
auch nichts, da keine Rechte vorhanden sind). Bei /test3 ist der volle Zugriff durch die
Gruppe geregelt. "roland" ist in der Gruppe "users" und diese Gruppe
wiederum hat Write, Read und Execute- Rechte. Das Verzeichnis /test4 ist vom user
"roland" nicht erreichbar - nur vom Administrator. Bei /test5 darf
"roland" zwar in das Verzeichnis wechseln, was aber nicht viel bringt, da er
weder Schreib- noch Leserechte besitzt. /test6 ist unereichbar fuer "roland".
Diese ganzen Spielereien kann man natuerlich bis zur
voelligen Erschoepfung weitertreiben. Auf jeden Fall sind die Dateisystemrechte voll
gueltig - auch unter Samba. Unter NT ist es ja ganz aehnlich, was keine Umstiegsprobleme
aufwerfen sollte.
Passwoerter und User unter Samba
Windows NT4 SP3 oder hoeher hat die unangenehme Eigenschaft,
keine Verbindung mit einem Server auzubauen, der im User-Modus laeuft und keine
verschluesselten Passwoerter benutzt. Du musst also entweder die verschluesselten
Passwoerter aktivieren oder NT dieses Verhalten "abgewoehnen". Zunaechst mal zu
NT:
Mit dem Registry - Editor regedt32 kann man im Fenster HKEY_LOCAL_MACHINE
im Zweig \SYSTEM\CurrentControlSet\ Services\Rdr\Parameters den Schluessel EnablePlainTextPassword mit dem Wert 1 eintragen. NT sendet dann seine Passwoerter
unverschluesselt.
Als nächstes möchte ich ein wenig über SMB - Passwörter
und User sprechen. Es werden die Benutzer unter Linux nicht automatisch auf Samba
übertragen. Dies kann man jedoch durch einige wenige Befehle erreichen.:
Zunaechst müssen wir nur noch User anlegen, die in der
WORKGROUP gelten.
Vorher muss allerdings noch die Passwortdatei smbpasswd
erstellt werden, in der alle verschlüsselten Passwörter stehen. Mit dem Befehl
cat /etc/passwd | mksmbpasswd.sh > /etc/smbpasswd
wird diese Datei erstellt. Danach werden wir die User
anlegen, die auf die WORKGROUP Zugriff haben. Jetzt erstellen wie den ersten User, der
sich in der Gruppe netuser befinden soll.
useradd -g netuser user1
Der User wurde erstellt und wir haben ihm das recht
gegeben sich anmelden zu dürfen. Damit wird er aber nicht viel Erfolg haben, da er noch
kein Passwort besitzt.
Mit folgendem Befehl erteilen wir ihm ein verschlüsseltes
Passwort:
smbpasswd -a -e user1
Danach erscheint eine Aufforderung zur Passworteingabe.
Jetzt wäre es sinnvoll ein sogenanntes Übergangspasswort zu erteilen, wie z.B.
"Hallo2000". Dieses Passwort wird dem User mitgeteilt, der sich zum ersten Mal
an der Domäne anmeldet. Daraufhin sollte der User es selber wieder ändern, damit die
Sicherheit des Netzes nicht gefährdet wird. Alternativ könnte man auch überhaupt kein
Passwort mit dem Befehl
smbpasswd -a -n -e user1
erstellen was allerdings nicht sehr empfehlenswert ist.
So, jetzt sind wir soweit, dass sich alle Windows95/98 Rechner an WORKGROUP anmelden
können. Ein Problem haben wir allerdings noch! Windows NT 4.0 Rechner müssen, um sich in
einer NT Domäne erfolgreich anmelden zu können, in der entsprechenden Domäne integriert
werden. NT User werden es wahrscheinlich gewohnt sein, sich von der WKS aus in die Domäne
zu integrieren. Dieses ist leider noch nicht in Samba implementiert (folgt aber bestimmt
noch ;-)). Um sich erfolgreich in die Domäne zu integrieren geben wir folgendes ein:
useradd RECHERNAME$
smbpasswd -a -m RECHNERNAME$
Bei der Angabe des Rechnernamens muss ein $ Zeichen
stehen. Nun muss über Windows NT der Rechner nur noch integriert werden (Netzwerkumgebung
-> Eigenschaften -> Ändern -> Domäne = WORKGROUP -> OK). So damit sollte
alles abgeschlossen sein, um sich komplett anmelden zu können.
Makros:
Makros unter Samba sind eine wirklich tolle Sache. Man ist
damit wesentlich flexibler als unter NT und kann verzwickte Probleme schnell und
unkompliziert loesen. Ich stelle euch hier in einer Tabelle einige Makros vor:
%S |
den Namen der aktuellen Verbindung, wenn
vorhanden |
%P |
das Hauptverzeichnis der aktuellen Freigabe,
wenn vorhanden |
%u |
den Namen des Benutzers, der auf die
Freigabe zugreift, wenn vorhanden. |
%g |
den primaeren Gruppennamen des Benutzers %u |
%U |
den Benutzernamen, der vom Client
angefordert wurde (das muss nicht der Name sein, unter dem die Verbindung jetzt arbeitet) |
%G |
die primaere Gruppe des angeforderten
Benutzers (=%U) |
%H |
das Heimatverzeichnis des Benutzernamens
(=%u) |
%v |
die Version des Samba - Servers |
%h |
der (Internet-)Hostname des Samba-Servers |
%m |
NetBIOS-Namen des Clientrechners |
%L |
NetBIOS-Namen des Servers |
%M |
der (Internet-)Hostname des Client-Rechners |
%I |
IP Adresse des Clients |
%T |
Aktuelles Datum / Uhrzeit |
Ein Beispiel fuer die Anwendung von
Parametern und Makros sind z.B. Gruppenverzeichnisse.In meinem Fall gibt es zwei
Hauptgruppen, die da waeren: netuser und poweruser. Die "netuser" sollten das
poweruser - Verzeichnis nicht "geshared" bekommen und umgekehrt benoetigen die
poweruser das Verzeichnis netuser nicht. Deswegen legen wir einen "dynamischen"
share an:
[group]
comment = Gruppenlaufwerk
path = /server/groups/g%
Das Makro %g wird bei jeder angeforderten Verbindung
durch die primaere Gruppe des angemeldeten Benutzers ersetzt. Wenn sich z.B. der Benutzer
"roland" anmeldet, dessen primaere Gruppe netuser ist, wird er automatisch auf
/server/groups/netuser zugreifen, wenn er sich mit der Freigabe Group verbindet.
Zusammenfassung:
User
anlegen |
useradd -g netuser user1 |
User
Passwort |
smbpasswd -a -e user1 |
NT
Rechner anlegen |
useradd RECHNERNAME$ |
NT
Rechner unter Samba |
smbpasswd -a -m RECHNERNAME$ |
Hierfür verwende ich
grundsätzlich eine Telnet - Session auf den entsprechenden Server, wobei man natürlich
genauso gut SWAT benutzen könnte, mir aber zu unübersichtlich ist, weil keine Userlisten
angezeigt werden können.
|