Product SiteDocumentation Site

11.5. Oppsett av Windows Shares med Samba

Samba er en pakke med verktøy som håndterer SMB-protokollen (også kjent som «CIFS») på Linux. Denne protokollen brukes av Windows for nettverksressurser og delte skrivere.
Samba kan også virke som en Windows domenekontrollør. Denne er et enestående verktøy for å sikre sømløs integrasjon av Linux-tjenere og stasjonære kontormaskiner som fortsatt kjører Windows.

11.5.1. Samba-tjener

Pakken samba inneholder Samba 4s to hovedtjenere, smbd og nmbd.

11.5.1.1. Oppsett med debconf

Pakken setter opp et minimalt oppsett under den første installasjonen, men du skulle virkelig kjøre dpkg-reconfigure samba-common for tilpasning til:
Den første delen med nødvendig informasjon er navnet på arbeidsgruppen som Samba-tjeneren vil tilhøre (svaret er FALCOTNET i vårt tilfelle).
Pakken foreslår også å identifisere WINS-tjeneren ut fra opplysninger gitt av DHCP-bakgrunnsprosessen. Falcot Corp-administratorene forkastet dette alternativet, siden de har tenkt å bruke Samba-tjeneren som WINS-tjener.

11.5.1.2. Manuelt oppsett

11.5.1.2.1. Forandringer i smb.conf
Kravene hos Falcot forutsetter også endringer i andre valg i /etc/samba/smb.conf. Følgende utdrag oppsummerer de endringene som ble berørt i [global]-seksjonen.
[global]

## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = FALCOTNET

# Windows Internet Name Serving Support Section:
# WINS Support - Tells the NMBD component of Samba to enable its WINS Server
   wins support = yes 1

[...]

####### Authentication #######

# Server role. Defines in which mode Samba will operate. Possible
# values are "standalone server", "member server", "classic primary
# domain controller", "classic backup domain controller", "active
# directory domain controller". 
#
# Most people will want "standalone sever" or "member server".
# Running as "active directory domain controller" will require first
# running "samba-tool domain provision" to wipe databases and create a
# new domain.
   server role = standalone server

# "security = user" is always a good idea. This will require a Unix account
# in this server for every user accessing the server.
   security = user 2

[...]

1

Viser at Samba skal fungere som en NetBIOS-navneserver (WINS) for det lokale nettverket.

2

Dette er standardverdien for denne parameteren; men siden den er sentral i Samba-oppsettet, anbefales det å fylle den inn eksplisitt. Hver bruker må godkjennes før noen deling.
11.5.1.2.2. Å legge til brukere
Hver Samba-bruker trenger en konto på tjeneren; Unix-kontoer må opprettes først, deretter må brukeren bli registrert i Sambas database. Unix-trinnet utføres ganske vanlig (ved hjelp adduser for eksempel).
Å legge til en eksisterende bruker til Samba-databasen er et spørsmål om å kjøre smbpasswd -a bruker-kommandoen; denne kommandoen ber interaktivt om passordet.
En bruker kan bli slettet med smbpasswd -x bruker-kommandoen. En Samba-konto kan også midlertidig bli deaktivert (med smbpasswd -d bruker), og reaktivert senere (med smbpasswd -e bruker).

11.5.2. Samba-klient

Klient-funksjonene i Samba tillater en Linux-maskin å få tilgang til Windows-delinger og delte skrivere. De nødvendige programmene er tilgjengelig i cifs-utils og smbclient-pakkene.

11.5.2.1. Programmet smbclient

Programmet smbclient forespør SMB-tjenere. Det aksepterer et -U bruker-alternativ, for å koble til tjeneren med en bestemt identitet. smbclient //server/dele åpner for delingen interaktivt på en måte lik kommandolinje FTP-klienten. smbclient -L server lister opp alle tilgjengelige (og synlige) delinger på en tjener.

11.5.2.2. Montere Windows-delinger

Kommandoen mount tillater montering av en Windows-deling inn i Linux-filsystemhierarki (ved hjelp av mount.cifs levert av cifs-utils).

Eksempel 11.24. Å montere en Windows-deling

mount -t cifs //arrakis/shared /shared \
      -o credentials=/etc/smb-credentials
Fil /etc/smb-credentials (som ikke må være lesbar av brukere) har følgende format:
username = bruker
password = passord
Andre alternativer kan spesifiseres på kommandolinjen; den fullstendige listen er tilgjengelig i mount.cifs(1)-manulaside. Spesielt to alternativer kan være interessante: uid og gid som tillater å tvinge eieren og gruppen filer som er tilgjengelig i monteringen, for ikke å begrense adgangen til rot.
En montering av en Windows-deling kan også settes opp i /etc/fstab:
//tjener/shared /shared cifs credentials=/etc/smb-credentials
Å avmontere en SMB/CIFS-deling er gjort med standarden umount-kommandoen.

11.5.2.3. Å skrive ut på en delt skriver

CUPS er en elegant løsning for utskrift fra en Linux-arbeidsstasjon til en skriver som deles av en Windows-maskin. Når smbclient er installert, tillater CUPS automatisk installasjon av Windows-delte skrivere.
Her er skrittene som kreves:
  • Bruk CUPS oppsettsgrensesnittet:http://localhost:631/admin
  • Klikk på «Legg til skriver».
  • Velg skriverenheten, plukk ut «Windows Printer via SAMBA».
  • Bruk tilkoblings-URI-en (angi URI) for nettverksskriveren. Den skal se ut som følger:
    smb://bruker:passord@server/skriver.
  • Skriv inn navnet som unikt identifiserer denne skriveren. Deretter skriver du inn beskrivelsen og plasseringen av skriveren. De er strengene som skal vises til sluttbrukere for å hjelpe dem med å identifisere skriverne.
  • Indiker produsenten/skrivermodellen, eller lever/gi direkte en skriverbeskrivelsesfil (PPD (PostScript Printer Description)) som virker.
Voilà, skriveren er operativ!