Failiserver Samba labor 2: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Slepamet (talk | contribs)
Slepamet (talk | contribs)
 
(33 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=Versioon=
=Versioon=
0.6 beta milestone 1<br />
Versioon 1.1 - valmis retsenseerimiseks (parandatud)<br />
Viimati muudetud 15:29, 7 December 2009 (EET)
Viimati muudetud 10:39, 15 December 2009 (EET)


=Autorid=
=Autorid=
Line 9: Line 9:
Rainit Vildo<br>
Rainit Vildo<br>


=Nõuded=
=Sissejuhatus=
Samba on failiserveri tarkvara, mis implementeerib SMB/CIFS protokolli. Selle abil on võimalik faile ning printereid jagada nii Windowsi kui UNIX-i laadsete operatsioonisüsteemide jaoks. Antud juhul luuakse üks server ning üks kasutaja, kes suudab selle kaudu ühenduda.
Eesolev dokumentatsioon kirjeldab Samba 3 versiooni installeerimist ning selle konfigureerimist järgnevate nõuete täitmiseks:


==Nõuded==
#Punktiga algavaid (hidden) faile ei näidata.
#Punktiga algavaid (hidden) faile ei näidata.
#Kasutajate kodukataloogid jagatakse välja.
#Kasutajate kodukataloogid jagatakse välja.
Line 17: Line 20:
#Kooditabel UTF-8
#Kooditabel UTF-8


=Eeldused=
==Eeldused==
Ubuntu server 9.10 või uuem.<br />
Ubuntu server 9.10 või uuem.<br />
Baasteadmised unixi käsureal töötamisest. <br />
Baasteadmised unixi käsureal töötamisest. <br />
Line 27: Line 30:
  apt-get install samba smbfs
  apt-get install samba smbfs
Vajadusel käivitamine, stop ja reload
Vajadusel käivitamine, stop ja reload
  /etc/init.d/samba {start | stop | reload }
  /etc/init.d/samba {start | stop | reload | restart}
või
või
  service samba {start | stop | reload }
  service samba {start | stop | reload | restart}


=Konfigureerimine=
=Konfigureerimine=
Line 54: Line 57:
dns proxy = No
dns proxy = No


         #Ldap seaded
         #Ldap seaded (ülesanne 4).
passdb backend = ldapsam:ldap://172.16.0.150
passdb backend = ldapsam:ldap://172.16.0.150
         #Ldap admini kasutajakirjeldus, see on iga installeerija puhul erinev! (Vt õpetust allpool)
         #Ldap admini kasutajakirjeldus, see on iga installeerija puhul erinev! (Vt õpetust allpool)
ldap admin dn = "uid=slepamet,ou=People,dc=itcollege,dc=ee"
        ldap admin dn = "uid=ldap_admin_kasutaja,ou=People,dc=itcollege,dc=ee"
ldap group suffix = ou=Groups
ldap group suffix = ou=Groups
ldap idmap suffix = ou=Idmap
ldap idmap suffix = ou=Idmap
Line 64: Line 67:
ldap suffix = dc=itcollege,dc=ee
ldap suffix = dc=itcollege,dc=ee
ldap ssl = no
ldap ssl = no
ldap timeout = 10
ldap timeout = 3
ldap user suffix = ou=People
ldap user suffix = ou=People
usershare allow guests = Yes
usershare allow guests = Yes
Line 80: Line 83:
browseable = No
browseable = No
browsable = No
browsable = No
 
        read only = No
#Lab kaust jagatakse välja grupipõhiselt (libuuid)
#Lab kaust jagatakse välja grupipõhiselt (libuuid) (ülesanne 3).
[lab]
[lab]
comment = Labori kaust
comment = Labori kaust
Line 93: Line 96:
directory mask = 0770
directory mask = 0770
</pre>
</pre>
Peale iga muudatuse salvestamist konfiguratsioonifailis tuleks teha restart
service samba restart
Individuaalselt tuleb konfigureerida ldap administraatori kirje. Selleks tuleks smb.conf failis muuta rida  
Individuaalselt tuleb konfigureerida ldap administraatori kirje. Selleks tuleks smb.conf failis muuta rida  
  ldap admin dn = "uid=slepamet,ou=People,dc=itcollege,dc=ee"
  ldap admin dn = "uid=''ldap_admin_kasutaja'',ou=People,dc=itcollege,dc=ee"
nii, et see vastaks kirjele LDAP-is. (ITK puhul oleks see ldap admin dn = "uid=''<kasutajanimi>'',ou=People,dc=itcollege,dc=ee").
nii, et see vastaks kirjele LDAP-is. (ITK puhul oleks see ldap admin dn = "uid=''<kasutajanimi>'',ou=People,dc=itcollege,dc=ee").
Sellele kirjele vastav kasutaja peaks olema ka süsteemis olemas (admini parool süsteemis peaks kattuma Ldapi pihta autentimiseks vajaliku parooliga):
Sellele kirjele vastav kasutaja peaks olema ka süsteemis olemas (admini parool süsteemis peaks kattuma Ldapi pihta autentimiseks vajaliku parooliga; ITK parool):
  adduser ''<kasutajanimi>''
  adduser ''<kasutajanimi>''
Seejärel tuleb luua kasutajale parool Samba jaoks
Seejärel tuleb luua kasutajale parool Samba jaoks, mis peaks samuti kattuma Ldap administraatori parooliga (ITK parool).
  smbpasswd -a ''<kasutajanimi>''
  smbpasswd -a ''<kasutajanimi>''
Kirjeldama peab ka LDAP administraatori parooli (kirje jaoks, mis seisab konfiguratsioonifailis). Seda käsku tuleb korrata alati, kui muutub ldap admin kirje samba konfiguratsioonifailis.
Käsu väljundiks on paratamatud errorid, mida tuleks ignoreerida.<br />
'''NB! Parool tuleb sisestada avatud kujul otse käsureale, seega tuleks veenduda, et seda ei näeks inimesed, kes ei tohiks. Hea praktika oleks ka käskude ajalugu kustutada.'''
Kirjeldama peab ka LDAP administraatori parooli (ITK parool). Seda käsku tuleb korrata alati, kui muutub ldap admin kirje samba konfiguratsioonifailis.  
  smbpasswd -w ''<parool>''
  smbpasswd -W
history -c


Kausta Lab grupipõhiseks väljajagamiseks tuleks see esmalt luua.
Kausta Lab grupipõhiseks väljajagamiseks tuleks see esmalt luua.
  mkdir -p /var/data/lab
  mkdir -p /var/data/lab
Seejärel tuleks kausta omanikgrupp muuta vastavalt sellele, kellele soovitakse välja jagada. Antud näites jagatakse see kaust välja grupile libuuid, sest selle grupi id vastab ITK üliõpilaste grupi id-le, mille jaoks ldap-ist õigus antakse.
Seejärel tuleks kausta omanikgrupp muuta vastavalt sellele, kellele soovitakse välja jagada. Antud juhul jagatakse see kaust välja grupile libuuid, sest selle grupi id vastab ITK üliõpilaste grupi id-le, mille jaoks ldap-ist õigus antakse.
  chgrp libuuid /var/data/lab
  chgrp libuuid /var/data/lab
Failiõigused tuleks anda nii et kasutajale ja grupile on kõik lubatud, teistele mitte midagi.
Failiõigused tuleks anda nii et kasutajale ja grupile on kõik lubatud, teistele mitte midagi.
  chmod 770 /var/data/lab
  chmod 770 /var/data/lab
Eelnevalt loodud kasutaja tuleks lisada gruppi, kellele õigused antakse.
Eelnevalt loodud kasutaja tuleks lisada gruppi, kellele õigused antakse.
  adduser ''<kasutajanimi>'' ''<grupp>''
  adduser ''<kasutajanimi>'' libuuid
Sambale tuleb teha restart
service samba restart


=Testimine=
=Testimine=
Line 120: Line 122:
  apt-get install smbclient
  apt-get install smbclient
ja sellega ühenduda Samba külge kasutajana, kelle kohta on ldapis kirje (ning kelle kohta on eelpool konfigureeritud ldap adminil õigus pärida).
ja sellega ühenduda Samba külge kasutajana, kelle kohta on ldapis kirje (ning kelle kohta on eelpool konfigureeritud ldap adminil õigus pärida).
  smbclient ''<masina ip>'' -U ''<kasutajanimi>''
  smbclient //''<Samba serveri IP aadress>''/''<share nimi>'' -U ''<kasutajanimi>''


=Varundamine=
=Varundamine=

Latest revision as of 10:39, 15 December 2009

Versioon

Versioon 1.1 - valmis retsenseerimiseks (parandatud)
Viimati muudetud 10:39, 15 December 2009 (EET)

Autorid

Sven Lepamets
Martin Raudsik
Rainit Vildo

Sissejuhatus

Samba on failiserveri tarkvara, mis implementeerib SMB/CIFS protokolli. Selle abil on võimalik faile ning printereid jagada nii Windowsi kui UNIX-i laadsete operatsioonisüsteemide jaoks. Antud juhul luuakse üks server ning üks kasutaja, kes suudab selle kaudu ühenduda. Eesolev dokumentatsioon kirjeldab Samba 3 versiooni installeerimist ning selle konfigureerimist järgnevate nõuete täitmiseks:

Nõuded

  1. Punktiga algavaid (hidden) faile ei näidata.
  2. Kasutajate kodukataloogid jagatakse välja.
  3. Lab kataloog jagatakse grupipõhiselt välja.
  4. Autentimine toimub ITK LDAP abil.
  5. Kooditabel UTF-8

Eeldused

Ubuntu server 9.10 või uuem.
Baasteadmised unixi käsureal töötamisest.
Kasutaja on sudo õigustes.

sudo -i

Installeerimine

Samba installeerimine

apt-get install samba smbfs

Vajadusel käivitamine, stop ja reload

/etc/init.d/samba {start | stop | reload | restart}

või

service samba {start | stop | reload | restart}

Konfigureerimine

Samba konfigureerimseks on vaja muuta faili smb.conf

nano /etc/samba/smb.conf

Parameetreid saab testida käsuga testparm

testparm -s

Konfiguratsioonifail peab olema selline:

[global]
        #Määrab Samba kasutatava kodeeringu (ülesanne 5)
	display charset = UTF-8
        unix charset = UTF-8

	server string = %h server (Samba, Ubuntu)
	interfaces = lo, eth0
	bind interfaces only = Yes
	passwd program = /usr/bin/passwd %u
	passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
	log level = 3
	syslog = 3
	log file = /var/log/samba/log.%m
	max log size = 1000
	dns proxy = No

        #Ldap seaded (ülesanne 4).
	passdb backend = ldapsam:ldap://172.16.0.150
        #Ldap admini kasutajakirjeldus, see on iga installeerija puhul erinev! (Vt õpetust allpool)
        ldap admin dn = "uid=ldap_admin_kasutaja,ou=People,dc=itcollege,dc=ee"
	ldap group suffix = ou=Groups
	ldap idmap suffix = ou=Idmap
	ldap machine suffix = ou=Computers
	ldap replication sleep = 2000
	ldap suffix = dc=itcollege,dc=ee
	ldap ssl = no
	ldap timeout = 3
	ldap user suffix = ou=People
	usershare allow guests = Yes
	panic action = /usr/share/samba/panic-action %d

        #Punktiga algavaid (hidden) faile välja ei jagata (ülesanne 1).
	veto files = /.*/

#Kasutajate kodukataloogid jagatakse välja (ülesanne 2).
[homes]
	comment = Home Directories
	valid users = %S
	create mask = 0700
	directory mask = 0700
	browseable = No
	browsable = No
        read only = No
#Lab kaust jagatakse välja grupipõhiselt (libuuid) (ülesanne 3).
[lab]
	comment = Labori kaust
	path = /var/data/lab
	valid users = @libuuid
	read list = @libuuid
	write list = @libuuid
	force group = libuuid
	read only = No
	create mask = 0664
	directory mask = 0770

Individuaalselt tuleb konfigureerida ldap administraatori kirje. Selleks tuleks smb.conf failis muuta rida

ldap admin dn = "uid=ldap_admin_kasutaja,ou=People,dc=itcollege,dc=ee"

nii, et see vastaks kirjele LDAP-is. (ITK puhul oleks see ldap admin dn = "uid=<kasutajanimi>,ou=People,dc=itcollege,dc=ee"). Sellele kirjele vastav kasutaja peaks olema ka süsteemis olemas (admini parool süsteemis peaks kattuma Ldapi pihta autentimiseks vajaliku parooliga; ITK parool):

adduser <kasutajanimi>

Seejärel tuleb luua kasutajale parool Samba jaoks, mis peaks samuti kattuma Ldap administraatori parooliga (ITK parool).

smbpasswd -a <kasutajanimi>

Käsu väljundiks on paratamatud errorid, mida tuleks ignoreerida.
Kirjeldama peab ka LDAP administraatori parooli (ITK parool). Seda käsku tuleb korrata alati, kui muutub ldap admin kirje samba konfiguratsioonifailis.

smbpasswd -W

Kausta Lab grupipõhiseks väljajagamiseks tuleks see esmalt luua.

mkdir -p /var/data/lab

Seejärel tuleks kausta omanikgrupp muuta vastavalt sellele, kellele soovitakse välja jagada. Antud juhul jagatakse see kaust välja grupile libuuid, sest selle grupi id vastab ITK üliõpilaste grupi id-le, mille jaoks ldap-ist õigus antakse.

chgrp libuuid /var/data/lab

Failiõigused tuleks anda nii et kasutajale ja grupile on kõik lubatud, teistele mitte midagi.

chmod 770 /var/data/lab

Eelnevalt loodud kasutaja tuleks lisada gruppi, kellele õigused antakse.

adduser <kasutajanimi> libuuid

Sambale tuleb teha restart

service samba restart

Testimine

Testimiseks tuleks installeerida smbclient

apt-get install smbclient

ja sellega ühenduda Samba külge kasutajana, kelle kohta on ldapis kirje (ning kelle kohta on eelpool konfigureeritud ldap adminil õigus pärida).

smbclient //<Samba serveri IP aadress>/<share nimi> -U <kasutajanimi>

Varundamine

Varundada oleks oluline Samba konfiguratsioonifail /etc/samba/smb.conf

cp /etc/samba/smb.conf <varundamiskausta täistee>

Taastamine

Taastamiseks tuleks kontrollida, kas Samba on installitud

apt-cache policy samba

vajadusel see installida (Installeerimine) ning seejärel kopeerida eelnevalt varundatud konfiguratsioonifail kausta /etc/samba nimega smb.conf

cp <varundatud faili täistee> /etc/samba/smb.conf