Installer Samba4 på RHEL 8 til fildeling på Windows


Samba er et open source, hurtigt, sikkert, stabilt og udbredt netværksfilsystem, der leverer fildelings- og udskrivningstjenester til alle klienter, der bruger SMB/CIFS-protokollen, såsom Linux, alle versioner af DOS og Windows, OS/2, og så mange andre operativsystemer.

I vores tidligere artikel har vi forklaret, hvordan du installerer Samba4 på CentOS/RHEL 7 til grundlæggende fildeling mellem CentOS/RHEL-systemer og Windows-maskiner. Hvor vi lærte at konfigurere Samba til anonym såvel som sikker fildeling mellem maskiner.

I denne artikel vil vi beskrive, hvordan du installerer og konfigurerer Samba4 på RHEL 8 til grundlæggende fildeling med Windows-maskiner.

Installer Samba4 i RHEL 8

1. For at installere Samba 4 sammen med dens afhængigheder skal du bruge DNF-pakkehåndteringen som vist.

# dnf install samba samba-client samba-common

2. Når installationen er afsluttet, skal du starte Sambe-tjenesten, aktivere den til automatisk start ved systemstarttid og kontrollere, at tjenesten ved hjælp af systemctl-kommandoerne som følger.

# systemctl start smb
# systemctl enable smb
# systemctl status smb

3. Hvis du derefter har konfigureret en firewallld, skal du tilføje Samba-tjenesten i firewallkonfigurationen for at give adgang til delte mapper og filer gennem systemet.

$ sudo firewall-cmd --permanent --add-service=samba
$ sudo firewall-cmd --reload

Konfigurer Samba4 på RHEL 8

4. For at konfigurere Samba til fildeling skal du oprette en sikkerhedskopi af standard-samba-konfigurationsfilen, der leveres med prækonfigurationsindstillinger og forskellige konfigurationsdirektiver.

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

Fortsæt nu videre med at konfigurere samba til anonyme og sikre fildelingstjenester som forklaret nedenfor.

5. I dette afsnit er det første trin at oprette den delte mappe, der gemmer filer på serveren. Definer derefter de relevante tilladelser til biblioteket som vist.

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

6. Dernæst, ved hjælp af chcon-værktøjet, skal du ændre SELinux-sikkerhedskonteksten for det oprettede samba-delte bibliotek.

 
# chcon -t samba_share_t /srv/samba/anonymous

7. Åbn nu konfigurationsfilen ved hjælp af din foretrukne tekstbaserede fileditor til at konfigurere den anonyme usikrede fildeling i et delt bibliotek.

# vim /etc/samba/smb.conf

Rediger følgende globale parametre, og tilføj et afsnit til den anonyme andel. Bemærk, at du kan indstille dine egne værdier, hvor det er nødvendigt (læs man smb.conf for mere information).

[global]
        workgroup = WORKGROUP
        netbios name = rhel
        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

Gem ændringerne i filen, og luk.

8. Kør derefter følgende kommando for at kontrollere, om konfigurationen er korrekt.

# testparm 
Load smb config files from /etc/samba/smb.conf 
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) 
Unknown parameter encountered: "netbios" 
Ignoring unknown parameter "netbios" 
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] 
       printcap name = cups 
       security = USER 
       idmap config * : backend = tdb 
       cups options = raw 
[homes] 
       browseable = No 
       comment = Home Directories 
       inherit acls = Yes 
       read only = No 
       valid users = %S %D%w%S 

[printers] 
       browseable = No 
       comment = All Printers 
       create mask = 0600 
       path = /var/tmp 
       printable = Yes                                                                                                                           
                                                                                                                          
[print$]                                                                                                                                
       comment = Printer Drivers                                                                                                                  
       create mask = 0664                                                                                                                         
       directory mask = 0775                                                                                                                      
       force group = @printadmin                                                                                                                  
       path = /var/lib/samba/drivers 
       write list = @printadmin root 


[Anonymous] 
       comment = Anonymous File Server Share 
       force user = nobody 
       guest ok = Yes 
       path = /srv/samba/anonymous 
       read only = No

9. Hvis Samba-konfigurationen er OK, skal du fortsætte og genstarte samba-tjenesten for at de seneste ændringer skal træde i kraft.

# systemctl restart smb

10. Test endelig, om den anonyme andel fungerer fint, log ind på din Windows-maskine, åbn Windows Stifinder, klik på Netværk, klik derefter på RHEL-værten, eller brug serverens IP-adresse for at få adgang til den (kører ip tilføj kommando på serveren kan hjælpe dig med at se IP-adressen).

e.g. 2.168.43.198

11. Derefter skal du åbne biblioteket Anonym og prøve at tilføje filer derinde for at dele med andre brugere.

12. For at oprette et sikkert delt bibliotek skal du oprette en Samba-systemgruppe. Alle brugere af den sikrede del vil blive føjet til denne gruppe. Du kan bruge groupadd-kommandoen til at oprette gruppen som følger.

# groupadd smbgrp

Brug derefter kommandoen usermod til at tilføje alle brugere, for eksempel tecmint til gruppen og indstil en adgangskode til hver bruger som vist.

# usermod tecmint -aG smbgrp
# smbpasswd -a tecmint

13. Opret derefter det sikre bibliotek, der gemmer delte filer sikkert, og indstil derefter de relevante tilladelser til biblioteket. Skift også SELinux-sikkerhedskonteksten for biblioteket som følger.

# 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

14. Åbn derefter konfigurationsfilen til redigering.

# vim /etc/samba/smb.conf

Og tilføj følgende afsnit i slutningen af filen.

[Secure]
        comment = Secure File Server Share
        path =  /srv/samba/secure
        valid users = @smbgrp
        guest ok = no
        writable = yes
        browsable = yes

Gem ændringerne, og luk filen.

15. Kontroller derefter samba-konfigurationen igen ved at køre testparm-kommandoen.

# testparm

16. Genstart Samba-tjenester for at anvende ændringerne.

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

Test af sikker samba-fildeling

17. Afslut til sidst, om Secure-aktien fungerer fint. Fra din Windows-maskine skal du åbne Windows Stifinder, klikke på Netværk og derefter klikke på RHEL-værten, ellers prøv at få adgang til serveren ved hjælp af dens IP-adresse som forklaret før.

e.g. 2.168.43.198

Du bliver bedt om at indtaste dit brugernavn og din adgangskode for at logge ind på RHEL 8-serveren.

18. Når du logger ind, får du en liste over alle samba-delte mapper. Nu kan du sikkert dele nogle filer med andre tilladte brugere på netværket ved at tilføje filer i Sikker mappe.

Det er alt! I denne artikel har vi vist, hvordan du installerer og konfigurerer Samba 4 i RHEL 8 til anonym og sikker fildeling med Windows-maskiner. Har du spørgsmål eller kommentarer til denne guide, så brug feedbackformularen nedenfor for at nå os.