Windows-da faýl paýlaşmak üçin CentOS 7-de Samba4-i nädip gurmaly


Geçen makalamyzda, Ubuntu ulgamlary bilen Windows maşynlarynyň arasynda esasy faýl paýlaşmagy üçin Ububa-da Samba4-i nädip gurmalydygyny görkezdik. Anonim (ygtybarly däl), şeýle hem ygtybarly faýl paýlaşmasyny düzmäge seretdik.

Bu ýerde, beýleki Linux ulgamlary bilen Windows maşynlarynyň arasynda esasy faýl paýlaşmagy üçin Samba4-i CentOS 7-de (RHEL 7-de işleýär) nädip gurmalydygyny we sazlamalydygyny düşündireris.

Üns beriň: 4.0 wersiýasyndan başlap, Samba Ubuntu, CentOS we Windows üçin möhüm temalary öz içine alýan Samba4 Active Directory Domain Controller hökmünde işledip biler.

Samba4-i CentOS 7-de guruň

1. Ilki bilen görkezilişi ýaly yum paket dolandyryjy guralyny ulanyp, Samba4 we deslapky CentOS ammarlaryndan gerekli paketleri guruň.

# yum install samba samba-client samba-common

2. Samba paketlerini guranyňyzdan soň, bu buýruklar bilen ulgam gorag diwary arkaly samba hyzmatlaryna rugsat beriň.

# firewall-cmd --permanent --zone=public --add-service=samba
# firewall-cmd --reload

Windows Machine Workgroup sazlamalaryny barlaň

3. Sambany sazlamaga başlamazdan ozal, Windows enjamynyň CentOS serwerinde düzüljek şol bir iş toparyndadygyna göz ýetiriň.

Windows maşyn iş toparynyň sazlamalaryny görmegiň iki mümkinçiligi bar:

  • \Bu kompýuter ýa-da\Meniň kompýuterim -e sag basmak → Sypatlar → Ösen ulgam sazlamalary → Kompýuteriň ady.

  • Ativea-da bolmasa, cmd haýyşyny açyň we aşakdaky buýrugy işlediň, aşakda görkezilişi ýaly çykyşda\iş stansiýasynyň domenini gözläň.

>net config workstation

CentOS 7-de Samba4-i sazlamak

4. Esasy samba konfigurasiýa faýly /etc/samba/smb.conf, asyl faýl size ýol görkezmek üçin dürli konfigurasiýa görkezmelerini düşündirýän konfigurasiýadan öňki sazlamalar bilen gelýär.

Emma, samba sazlamazdan ozal, şuňa meňzeş deslapky faýlyň ätiýaçlyk nusgasyny almagyňyzy maslahat berýärin.

# cp /etc/samba/smb.conf /etc/samba/smb.conf.orig

Soň bolsa, aşakda düşündirilişi ýaly anonim we ygtybarly faýl paýlaşmak hyzmatlary üçin samba düzmäge dowam ediň.

5. Ilki bilen faýllar serwerde saklanjak umumy bukjany dörediň we bukjada degişli rugsatlary belläň.

# mkdir -p /srv/samba/anonymous
# chmod -R 0775 /srv/samba/anonymous
# chown -R nobody:nobody /srv/samba/anonymous

Şeýle hem, samba paýlaşylan katalogy üçin SELinux howpsuzlyk kontekstini aşakdaky ýaly üýtgetmeli.

# chcon -t samba_share_t /srv/samba/anonymous

6. Ondan soň, redaktirlemek üçin samba konfigurasiýa faýlyny açyň, bu ýerde aşakdaky bölümleri degişli görkezmeler bilen üýtgedip/goşup bilersiňiz.

# vi /etc/samba/smb.conf
[global]
	workgroup = WORKGROUP
	netbios name = centos
	security = user
[Anonymous]
	comment = Anonymous File Server Share
	path = /srv/samba/anonymous
	browsable =yes
	writable = yes
	guest ok = yes
	read only = no
	force user = nobody

7. Indi aşakdaky buýrugy işledip, häzirki samba sazlamalaryny barlaň.

# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Anonymous]"
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
	netbios name = centos
	printcap name = cups
	security = USER
	idmap config * : backend = tdb
	cups options = raw
[homes]
	comment = Home Directories
	browseable = No
	inherit acls = Yes
	read only = No
	valid users = %S %D%w%S
[printers]
	comment = All Printers
	path = /var/tmp
	browseable = No
	printable = Yes
	create mask = 0600
[print$]
	comment = Printer Drivers
	path = /var/lib/samba/drivers
	create mask = 0664
	directory mask = 0775
	write list = root
[Anonymous]
 	comment = Anonymous File Server Share
	path = /srv/samba/anonymous
	force user = nobody
	guest ok = Yes
	read only = No

8. Netijede, samba hyzmatlaryny indiki bootdan awtomatiki başlamaga başlaň we ýokardaky üýtgeşmeleri güýje giriziň.

# systemctl enable smb.service
# systemctl enable nmb.service
# systemctl start smb.service
# systemctl start nmb.service

9. Indi Windows enjamynda Windows Explorer penjiresinden\Tor açyň, soňra CentOS öý eýesine basyň ýa-da IP adresini ulanyp serwere girmäge synanyşyň (IP adresi almak üçin ifconfig buýrugyny ulanyň).

e.g. \2.168.43.168.

10. Ondan soň, Anonim katalogy açyň we beýleki ulanyjylar bilen paýlaşmak üçin şol ýere faýl goşmaga synanyşyň.

Samba4 ygtybarly faýl paýlaşygyny guruň

11. Ilki bilen samba ulgam toparyny döretmekden başlaň, soňra topara ulanyjy goşuň we her bir ulanyjy üçin parol belläň.

# groupadd smbgrp
# usermod tecmint -aG smbgrp
# smbpasswd -a tecmint

12. Soňra umumy faýllaryň saklanjak ygtybarly katalogyny dörediň we samba üçin SELinux howpsuzlyk konteksti bilen katalogda degişli rugsatlary belläň.

# mkdir -p /srv/samba/secure
# chmod -R 0770 /srv/samba/secure
# chown -R root:smbgrp /srv/samba/secure
# chcon -t samba_share_t /srv/samba/secure

13. Ondan soň degişli bölümi görkezmeler bilen redaktirlemek we üýtgetmek/goşmak üçin konfigurasiýa faýly açyň.

# vi /etc/samba/smb.conf
[Secure]
	comment = Secure File Server Share
	path =  /srv/samba/secure
	valid users = @smbgrp
	guest ok = no
	writable = yes
	browsable = yes

14. Againene-de aşakdaky buýrugy işledip samba konfigurasiýa sazlamalaryny barlaň.

$ testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Anonymous]"
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
	netbios name = centos
	printcap name = cups
	security = USER
	idmap config * : backend = tdb
	cups options = raw
[homes]
	comment = Home Directories
	browseable = No
	inherit acls = Yes
	read only = No
	valid users = %S %D%w%S
[printers]
	comment = All Printers
	path = /var/tmp
	browseable = No
	printable = Yes
	create mask = 0600
[print$]
	comment = Printer Drivers
	path = /var/lib/samba/drivers
	create mask = 0664
	directory mask = 0775
	write list = root
[Anonymous]
 	comment = Anonymous File Server Share
	path = /srv/samba/anonymous
	force user = nobody
	guest ok = Yes
	read only = No
[Secure]
	comment = Secure File Server Share
	path = /srv/samba/secure
	read only = No
	valid users = @smbgrp

15. Üýtgeşmeleri ulanmak üçin Samba hyzmatlaryny täzeden açyň.

# systemctl restart smb.service
# systemctl restart nmb.service

16. Windows maşynyna giriň, Windows Explorer penjiresinden\Tor açyň, soňra CentOS öý eýesine basyň ýa-da IP adresini ulanyp serwere girmäge synanyşyň.

e.g. \2.168.43.168.

CentOS serwerine girmek üçin ulanyjy adyňyzy we parolyňyzy bermegiňiz soralar. Şahsyýetnamalary girizeniňizden soň, OK -a basyň.

17. Üstünlik bilen gireniňizden soň, samba paýlaşylan ähli kataloglary görersiňiz. Indi käbir faýllary ygtybarly katalogda goýup, tordaky beýleki rugsat edilen ulanyjylar bilen ygtybarly paýlaşyň.

Şeýle hem, torda Samba faýl paýlaşmagy bilen baglanyşykly bu peýdaly makalalary gözden geçirip bilersiňiz.

  1. Linux-da ýerli we tory (Samba & NFS) faýl ulgamlaryny nädip gurmaly/aýyrmaly
  2. ACL-leri ulanmak (Giriş dolandyryş sanawlary) we Samba/NFS paýnamalaryny dakmak
  3. Linux ulgamlarynda SambaCry gowşaklygy (CVE-2017-7494) nädip düzedip bolar

Bu gollanmada, CentOS we beýleki Linux ulgamlary, şeýle hem Windows maşynlary arasynda näbelli we ygtybarly faýl paýlaşmagy üçin Samba4-i nädip sazlamalydygyny görkezdik. Aşakdaky teswirler bölüminiň üsti bilen islendik pikiriňizi paýlaşyň.