Samba4:n asentaminen CentOS 7:ään tiedostojen jakamista varten Windowsissa


Edellisessä artikkelissamme osoitimme, kuinka Samba4 asennetaan Ubuntuun perustiedostojen jakamista varten Ubuntu-järjestelmien ja Windows-koneiden välillä. Tarkastelimme anonyymin (epäturvallisen) ja suojatun tiedostojen jakamisen määrittämistä.

Tässä kuvataan, kuinka Samba4 asennetaan ja määritetään CentOS 7:ssä (toimii myös RHEL 7:ssä) perustiedostojen jakamista varten muiden Linux-järjestelmien ja Windows-koneiden välillä.

Tärkeää: Versiosta 4.0 alkaen Sambaa voidaan käyttää Active Directory (AD) -toimialueen ohjaimena (DC). Suosittelemme, että luet Samba4 Active Directory Domain Controller -asetussarjamme, joka sisältää tärkeitä aiheita Ubuntulle, CentOS:lle ja Windowsille.

Asenna Samba4 CentOS 7:ään

1. Asenna ensin Samba4 ja tarvittavat paketit CentOS:n oletusvarastoista käyttämällä yum-paketinhallintatyökalua kuvan mukaisesti.

yum install samba samba-client samba-common

2. Kun olet asentanut samba-paketit, salli samba-palvelujen salliminen järjestelmän palomuurin kautta näillä komennoilla.

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

Tarkista Windows Machine Workgroup Settings

3. Ennen kuin jatkat samban määrittämistä, varmista, että Windows-kone on samassa työryhmässä, joka määritetään CentOS-palvelimelle.

On kaksi mahdollista tapaa tarkastella Windows-koneen työryhmän asetuksia:

  • Napsauta hiiren kakkospainikkeella kohtaa Tämä tietokone tai Oma tietokoneOminaisuudetJärjestelmän lisäasetukset Tietokoneen nimi.

  • Vaihtoehtoisesti avaa cmd-kehote ja suorita seuraava komento ja etsi tulosteesta "työaseman toimialue" alla olevan kuvan mukaisesti.
>net config workstation

Samba4:n määrittäminen CentOS 7:ssä

4. Samban päämääritystiedosto on /etc/samba/smb.conf. Alkuperäisessä tiedostossa on valmiit asetukset, jotka selittävät erilaisia määritysohjeita.

Mutta ennen samban määrittämistä ehdotan, että otat varmuuskopion oletustiedostosta näin.

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

Jatka sitten samban määrittämistä anonyymeille ja suojatuille tiedostojen jakamispalveluille alla kuvatulla tavalla.

Samba4 Nimetön tiedostojen jakaminen

5. Luo ensin palvelimelle jaettu hakemisto, johon tiedostot tallennetaan, ja määritä tarvittavat käyttöoikeudet hakemistoon.

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

Samban jaetun hakemiston SELinux-suojauskontekstia on myös muutettava seuraavasti.

chcon -t samba_share_t /srv/samba/anonymous

6. Avaa seuraavaksi samba-määritystiedosto muokkausta varten, jossa voit muokata/lisätä alla olevia osioita vastaavilla ohjeilla.

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. Tarkista nyt nykyiset samba-asetukset suorittamalla alla oleva komento.

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. Lopuksi käynnistä ja ota sambapalvelut käynnistymään automaattisesti seuraavassa käynnistyksessä ja ota myös yllä olevat muutokset voimaan.

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

Anonyymin Samba-tiedostonjaon testaus

9. Avaa nyt Windows-koneessa "Network" Windowsin Resurssienhallinta-ikkunasta ja napsauta sitten CentOS-isäntä, tai yritä muuten käyttää palvelinta sen IP-osoitteen avulla (käytä ifconfig-komentoa saadaksesi IP-osoitteen).

e.g. \2.168.43.168.

10. Avaa seuraavaksi Anonymous-hakemisto ja yritä lisätä siihen tiedostoja jaettavaksi muiden käyttäjien kanssa.

Asenna Samba4:n suojattu tiedostojen jakaminen

11. Aloita ensin luomalla samba-järjestelmäryhmä, lisää sitten käyttäjät ryhmään ja aseta kullekin käyttäjälle vastaava salasana.

groupadd smbgrp
usermod tecmint -aG smbgrp
smbpasswd -a tecmint

12. Luo sitten suojattu hakemisto, jossa jaetut tiedostot säilytetään, ja aseta hakemistoon tarvittavat oikeudet samban SELinux-suojauskontekstilla.

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. Avaa seuraavaksi asetustiedosto muokkausta varten ja muokkaa/lisää alla oleva osio vastaavilla ohjeilla.

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. Tarkista uudelleen samba-määritysasetukset suorittamalla seuraava komento.

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. Ota muutokset käyttöön käynnistämällä Samba-palvelut uudelleen.

systemctl restart smb.service
systemctl restart nmb.service

Testataan suojattua Samba-tiedostojen jakamista

16. Siirry Windows-koneeseen, avaa Verkko Windowsin Resurssienhallinta-ikkunasta ja napsauta sitten CentOS-isäntä tai yritä käyttää palvelin käyttää sen IP-osoitetta.

e.g. \2.168.43.168.

Sinua pyydetään antamaan käyttäjätunnuksesi ja salasanasi kirjautuaksesi CentOS-palvelimelle. Kun olet antanut kirjautumistiedot, napsauta OK.

17. Kun kirjaudut sisään, näet kaikki samban jaetut hakemistot. Jaa nyt tiedostoja turvallisesti muiden verkon sallittujen käyttäjien kanssa pudottamalla ne Suojattu-hakemistoon.

Voit myös tutustua näihin hyödyllisiin artikkeleihin, jotka koskevat Samba-tiedostojen jakamista verkossa.

  1. Paikallisten ja verkkotiedostojärjestelmien (Samba & NFS) liittäminen/poistaminen Linuxissa
  2. ACL-luetteloiden (Access Control List) käyttö ja Samban/NFS-osuuksien asentaminen
  3. SambaCry-haavoittuvuuden (CVE-2017-7494) korjaaminen Linux-järjestelmissä

Tässä oppaassa näytimme, kuinka Samba4 määritetään anonyymiin ja turvalliseen tiedostojen jakamiseen CentOS:n ja muiden Linux-järjestelmien sekä Windows-koneiden välillä. Jaa ajatuksesi kanssamme alla olevan kommenttiosion kautta.