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 can also act as a Windows domain controller. This is an outstanding tool for ensuring seamless integration of Linux servers and the office desktop machines still running Windows.

11.5.1. Samba-tjener

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

11.5.1.1. Oppsett med debconf

The package sets up a minimal configuration during the initial installation by plainly copying /usr/share/samba/smb.conf. So you should really run dpkg-reconfigure samba-common to adapt it:
On first installation the only piece of required information is the name of the workgroup where the Samba server will belong (the answer is FALCOTNET in our case).
In case of a package update (from the old stable Debian version) or if the SMB server has already been configured to use a WINS server (wins server) the package also proposes identifying the WINS server from the information provided by the DHCP daemon. The Falcot Corp administrators rejected this option, since they intend to use the Samba server itself as the WINS server.

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 server" 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

   obey pam restrictions = yes

[...]

# "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

Indicates that Samba should act as a Netbios name server (WINS) for the local network. This option has been removed from the default configuration in Buster and must be added manually if desired.

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.21. Å 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!