Nastavite strežnik Samba z uporabo tdbsam Backend na RHEL/CentOS 6.3, Fedora 17


Samba je odprtokodni in najbolj priljubljen široko uporabljen program, ki končnim uporabnikom omogoča dostop do imenika v skupni rabi Linux iz katerega koli operacijskega sistema Windows v istem omrežju. Samba je poimenovana tudi kot omrežni datotečni sistem in jo je mogoče namestiti v operacijske sisteme Linux/Unix. Samba je protokol odjemalec/strežnik SMB (Server Message Block) in CIFS (Common Internet File System). Končni uporabniki se lahko s pomočjo Windows smbclient (GUI) ali raziskovalca datotek povežejo s strežnikom Samba s katere koli delovne postaje Windows za dostop do datotek in tiskalnikov v skupni rabi.

V tej vadnici je razloženo, kako nastaviti strežnik Samba (datotečni strežnik) z uporabo tdbsam Backend v sistemih RHEL 6.3/6.2/6.1/6/5.8, CentOS 6.3/6.2/6.1/6/5.8 in Fedora 17,16,15,14,13,12 in tudi naučili se bomo, kako ga konfigurirati za skupno rabo datotek prek omrežja s pomočjo protokola SMB, pa tudi videli bomo, kako ustvariti in dodati uporabnike sistema v zbirki podatkov uporabnika sambe.

Uporabljamo sistem RHEL 6.3 z imenom gostitelja tecmint z naslovom IP 172.16.25.126.

Najprej z naslednjim ukazom preverite, ali je SELinux trenutno omogočen ali onemogočen.

# selinuxenabled && echo enabled || echo disabled

enabled

V našem primeru je SELinux trenutno omogočen, zato ga moramo onemogočiti v sistemih RHEL/CentOS/Fedora, odpreti datoteko z imenom/etc/selinux/config po izbiri urejevalnika. (Prezri ta korak, če je SELinux že onemogočen).

# vi /etc/selinux/config

Vrstico z napisom SELINUX = omogočeno spremenite v SELINUX = disabled in znova zaženite sistem.

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Tukaj bomo morali znova zagnati sistem, da bo v zagonskem procesu znova omogočil celoten datotečni sistem. Ta postopek ponovnega zagona lahko traja nekaj časa, odvisno od obsega datotek.

# init 6

Ko se sistem prijavi, se prijavite s korenskim uporabnikom in začnite nameščati paket Samba.

Za namestitev paketov Samba uporabljamo orodje YUM manager manager.

# yum install samba samba-common cups-libs samba-client

Ko se je samba uspešno namestila, je zdaj čas, da jo konfigurirate s pomočjo zalednega gesla tdbsam. Odprite datoteko /etc/samba/smb.conf.

# vi /etc/samba/smb.conf

In preverite naslednje vrstice v razdelku Možnosti samostojnega strežnika. Ta vrstica uporabnikom omogoča prijavo v strežnik Samba.

# ----------------------- Standalone Server Options ------------------------
#
# Scurity can be set to user, share(deprecated) or server(deprecated)
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.

        security = user 
        passdb backend = tdbsam

Zdaj bomo ustvarili imenik za skupno rabo Samba za skupno rabo datotek za vse uporabnike. Zaženite naslednje ukaze.

# mkdir -p /home/sambashares/tecmintusers
# chown -R root:users /home/sambashares/tecmintusers
# chmod -R 775 /home/sambashares/tecmintusers

Na dnu datoteke /etc/samba/smb.conf dodajte naslednje vrstice.

[tecmintusers]
  comment = All Users
  path = /home/sambashares/tecmintusers
  valid users = @users
  force group = users
  create mask = 0660
  directory mask = 0771
  writable = yes

Ustvari sistemske zagonske povezave za Samabo.

# chkconfig --levels 235 smb on

Zdaj znova zaženite strežnik Samba.

# /etc/init.d/smb restart

Ustvarili bomo uporabnika z imenom tecmint in mu nastavili geslo.

# useradd tecmint -m -G users
# passwd tecmint

Zdaj dodajte novo ustvarjeni uporabniški tecmint v Samba bazo uporabnikov in mu nastavite geslo.

# smbpasswd -a tecmint

Na ta način lahko ustvarite toliko uporabnikov, kot želite, samo zamenjajte uporabniško ime tecmint z želenim uporabniškim imenom.

Preverite imenik za skupno rabo Samba v sistemu Linux s pomočjo paketa smbclient z možnostjo -L. Prikazal bo seznam razpoložljivih imenikov za skupno rabo sambe na gostiteljskem tecmintu.

# smbclient -L tecmint

Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.5.10-125.el6]

        Sharename       Type      Comment
        ---------       ----      -------
        tecmintusers    Disk      All Users
        IPC$            IPC       IPC Service (Samba Server Version 3.5.10-125.el6)
Anonymous login successful
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.5.10-125.el6]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------

Poskusite se prijaviti v imenik za skupno rabo Samba pod sistemom Linux z uporabniškim imenom kot tecmint z geslom.

# smbclient -L //tecmint/tecmintusers -U tecmint
Enter tecmint's password:
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.5.10-125.el6]

        Sharename       Type      Comment
        ---------       ----      -------
        tecmintusers     Disk      All Users
        IPC$            IPC       IPC Service (Samba Server Version 3.5.10-125.el6)
        tecmint         Disk      Home Directories
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.5.10-125.el6]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------

Zdaj se poskusite prijaviti iz sistema Windows, odprite Windows Explorer in vnesite naslov \\ 172.16.25.126\tecmint ter vnesite uporabniško ime kot tecmint in geslo, videli boste domači imenik tecminta. Glejte posnetek zaslona spodaj.

Zdaj delite naslov imenika v skupni rabi Samba kot \\ 172.16.25.126\tecmintusers. Videli boste podobno kot spodaj.

Za več informacij o konfiguraciji Sambe glejte http://www.samba.org/.