Samba kasutamine operatsioonisüsteemiga Debian Squeeze

Allikas: Imre kasutab arvutit
Mine navigeerimisribaleMine otsikasti

Samba kasutamine operatsioonisüsteemiga Debian Squeeze

Serveri tarkvara paigaldamiseks tuleb öelda

 # apt-get install samba samba-doc

Paigaldamisel installer küsib selliseid andmeid

  • workgroup
  • kas kasutada WINS seadeid DHCP serverist (vaikimisi no)

Paigaldamise tulemusena on lisandunud süsteemi sellised olulised failid ja kataloogid

  • /etc/samba - seadistusfailid
  • /var/lib/samba - mitmesugused Samba tööd puudutavad andmed, nt kasutajate paroolifail
  • /etc/init.d/samba - käivitusskript
  • /etc/default/samba

Kasutajate haldamine

Sõltumata sellest, millist andmebaasi kasutatakse kasutajate jaoks (tekstifail, ldap jt) saab kasutada kasutajate haldamiseks (konto eemaldamine, lisamine, muutmine, esitamine, importimine) utiliiti pdbedit. Nt kasutajate nimekirja esitamiseks sobib öelda

# pdbedit -L

Kasutaja parooli muutmine

# smbpasswd mart
New SMB password:
Retype new SMB password:

Kasutaja lisamine

# smbpasswd -a kasutajanimi

Kasutaja eemaldamine

# pdbedit -x -u kasutajanimi

Kasutajatega tegelemisel võib olla oluline jälgida, et nende haldamine Samba ja /etc/passwd andmestikes toimub kooskõlaliselt.

Seadistusfaili ettevalmistamine

Olgu eesmärgiks tekitada selline failiserver

  • pakub võimalikult nö vaikselt oma teenust, st ei ole domeenikontroller ja eksitab võimalikult vähe muid arvuteid samas subnetis
  • võimaldab oma samba kasutajanime ja parooli teadval kasutajal ressurssi kasutada
  • üle samba tekitatud kataloogide ja failide kasutaja:grupp on mart:portaal ning loabitid vastavalt 0775 ja 0664

Selliste omadustega Samba käivitab nt selline seadistusfail /etc/samba/smb.conf

[global]
  workgroup = LOOMAAED
  server string = %h server
  wins support = no
  dns proxy = no
  log file = /var/log/samba/log.%m
  max log size = 1000
  syslog = 0
  panic action = /usr/share/samba/panic-action %d
  security = user
  encrypt passwords = true
  passdb backend = tdbsam
  obey pam restrictions = yes
  unix password sync = no
  pam password change = yes
  domain logons = no
  load printers = no

[www]
  comment = www
  path = /data/www
  writeable = yes
  browseable = yes
  force user = mart
  force group = portaal
  force directory mode  = 0775
  force create mode = 0664

Samba käivitamine

Samba käivitatakse õeldes

 # /etc/init.d/samba start

Samba kuulab neljal pordil

 Proto  Recv-Q  Send-Q  Local Address    Foreign Address   State      PID/Program name
 tcp6   0       0       :::139           :::*              LISTEN     6854/smbd       
 tcp6   0       0       :::445           :::*              LISTEN     6854/smbd       
 udp    0       0       0.0.0.0:137      0.0.0.0:*                    6852/nmbd       
 udp    0       0       0.0.0.0:138      0.0.0.0:*                    6852/nmbd

Samba kasutamine

Samba kliendi kasutamiseks tuleb arvutisse paigaldada

# apt-get install smbclient smbfs

Linuxi arvutist sobib väljajagatud ressursi poole pöördumiseks öelda

$ smbclient //localhost/www "parool" -U mart
Domain=[LOOMAAED] OS=[Unix] Server=[Samba 3.2.5]
smb: \>

Rekursiivseks kopeerimiseks sobib öelda

smb: \> prompt
smb: \> recurse
smb: \> mget *

Failisüsteemi külge monteerimiseks sobib öelda nt

# mount //10.0.5.71/share -o username=kasutajanimi,password=password /mnt/samba-ressurss

/etc/fstab failis sobib kasutada nt rida

//10.0.5.71/share /mnt/samba-ressurss smbfs username=kasutajanimi,password=password,uid=postgres,gid=postgres 0 0

Kasutaja autentimine Kerberosega

Kerberose kasutaja autentimiseks peab olema kasutada Kerberose infrastruktuur, nt selline nagu kirjeldatud tekstis MIT Kerberose kasutamine Debianiga. Samba serveris peab leiduma sarnane keytab fail

# kadmin -p priit/admin -q "addprinc -randkey cifs/samba.loomaaed"
# kadmin -p priit/admin -q "ktadd -k /etc/samba/krb5.keytab -e rc4-hmac:normal cifs/samba.loomaaed"

ning seadistusfaili /etc/samba/smb.conf global sektsioonis on vajalik kasutada selliseid ridu

security = ADS
realm = LOOMAAED
kerberos method = dedicated keytab
dedicated keytab file = /etc/samba/krb5.keytab

Kasutamiseks sobib oma TGT piletit omaval kasutajal öelda

$ smbclient //samba.loomaaed/samba -U priit -k
Domain=[LOOMAAED] OS=[Unix] Server=[Samba 3.4.8]
smb: \>

Kasulikud lisamaterjalid

Haldamine

# smbstatus

Smba version 3.5.6
PID     Username      Group         Machine                        
-------------------------------------------------------------------
 <processes do not show up in anonymous mode>

Service      pid     machine       Connected at
-------------------------------------------------------
Con          25279   192.168.3.143  Tue Sep 16 08:37:20 2014
Pildid       25293   192.168.3.204  Tue Sep 16 08:38:13 2014
Projektid    25293   192.168.3.204  Tue Sep 16 08:38:13 2014

Locked files:
Pid      Uid    DenyMode   Access     R/W      Oplock    SharePath       Name                  Time
-----------------------------------------------------------------------------------------------------------------------
25279    1039   DENY_NONE  0x100081   RDONLY   NONE      /srv/samba/con  .                     Tue Sep 16 08:55:49 2014
25279    1039   DENY_WRITE 0x2019f    RDWR     NONE      /srv/samba/con  PURCHASE/summary.xls  Tue Sep 16 09:03:30 2014

2018 - Debian v. 9 Stretch

Serveris sobib kasutada nt sellist seadistusfaili

[global]
   client min protocol = SMB3
   client max protocol = SMB3
   workgroup = MORAALCIFS
   dns proxy = no
   log file = /var/log/samba/log.%m
   max log size = 1000
   panic action = /usr/share/samba/panic-action %d
   server role = standalone server
   passdb backend = tdbsam
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   map to guest = bad user
   usershare allow guests = yes
   wins support = yes

[imre]
   path = /srv/kasutajad/imre
   browsable =yes
   writable = yes
   guest ok = no
   valid users = imre
   smb encrypt = required

kus

  • kasutatakse smb3 protokolli
  • smb encrypt - kliendi ja serveri vahel toimub ühenduse krüptimine

/etc/fstab failis sobib kasutada rida

//192.168.10.127/imre /mnt/samba-ressurss cifs username=imre,password=parool,uid=1000,gid=1000 0 0

kus

  • uid,gid - millise kasutaja:grupp omanduses failid lokaalselt paistavad

Ubuntu 16.04 kliendiga krüptitud liiklust nõudva serveri poole pöördudes tuleb kasutada -e suvandit

$ smbclient -e //192.168.10.127/imre -U imre

Osutub, et uuemal ajal sobib Samba ka üle ssh kasutamiseks

# ssh imre@192.168.10.127 -L 445:127.0.0.1:445
# mount //127.0.0.1/imre -o username=imre,password=parool,uid=1000,gid=1000 /mnt/samba-ressurss

Kasulikud lisamaterjalid