Windows'ta Dosya Paylaşımı için Samba4'ü RHEL 8'e yükleyin


Samba, SMB/CIFS protokolünü kullanan tüm istemciler için dosya paylaşımı ve yazdırma hizmetleri sağlayan, açık kaynaklı, hızlı, güvenli, kararlı ve yaygın olarak kullanılan bir ağ dosya sistemidir. Linux, DOS ve Windows'un tüm sürümleri, OS/2 ve diğer birçok işletim sistemi gibi.

Önceki yazımızda, CentOS/RHEL sistemleri ve Windows makineler arasında temel dosya paylaşımı için Samba4'ün CentOS/RHEL 7'ye nasıl kurulacağını açıklamıştık. Samba'yı makineler arasında anonim ve güvenli dosya paylaşımı için nasıl yapılandıracağımızı öğrendik.

Bu makalede, Windows makineleriyle temel dosya paylaşımı için RHEL 8 üzerinde Samba4'ün nasıl kurulacağını ve yapılandırılacağını açıklayacağız.

Samba4'ü RHEL 8'e yükleyin

1. Samba 4'ü bağımlılıklarıyla birlikte yüklemek için gösterildiği gibi DNF paket yöneticisini kullanın.

dnf install samba samba-client samba-common

2. Kurulum tamamlandıktan sonra Sambe hizmetini başlatın, sistem önyüklemesi sırasında otomatik olarak başlatılmasını etkinleştirin ve aşağıdaki gibi systemctl komutlarını kullanarak bu hizmeti doğrulayın.

systemctl start smb
systemctl enable smb
systemctl status smb

3. Daha sonra, yapılandırılmış bir güvenlik duvarınız varsa, sistem üzerinden paylaşılan dizinlere ve dosyalara erişime izin vermek için güvenlik duvarı yapılandırmasına Samba hizmetini eklemeniz gerekir.

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

Samba4'ü RHEL 8'de yapılandırma

4. Samba'yı dosya paylaşımı amacıyla yapılandırmak için, ön yapılandırma ayarları ve çeşitli yapılandırma yönergeleriyle birlikte gelen varsayılan samba yapılandırma dosyasının yedek bir kopyasını oluşturmanız gerekir.

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

Şimdi, aşağıda açıklandığı gibi anonim ve güvenli dosya paylaşım hizmetleri için sambayı yapılandırmaya devam edin.

RHEL 8'de Samba4 Anonim Dosya Paylaşımını Ayarlama

5. Bu bölümde ilk adım, dosyaları sunucuda saklayacak paylaşılan dizini oluşturmaktır. Daha sonra gösterildiği gibi dizindeki uygun izinleri tanımlayın.

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

6. Daha sonra, chcon yardımcı programını kullanarak, oluşturulan samba paylaşımlı dizini için SELinux güvenlik içeriğini değiştirin.

 
chcon -t samba_share_t /srv/samba/anonymous

7. Şimdi, paylaşılan bir dizinde anonim, güvenli olmayan dosya paylaşımını yapılandırmak için favori metin tabanlı dosya düzenleyicinizi kullanarak yapılandırma dosyasını açın.

vim /etc/samba/smb.conf

Aşağıdaki genel parametreleri değiştirin ve Anonim paylaşım için bir bölüm ekleyin. Gerektiğinde kendi değerlerinizi ayarlayabileceğinizi unutmayın (daha fazla bilgi için man smb.conf dosyasını okuyun).

[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

Değişiklikleri dosyaya kaydedin ve kapatın.

8. Ardından yapılandırmanın doğru olup olmadığını doğrulamak için aşağıdaki komutu çalıştırın.

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. Samba yapılandırması tamam ise, devam edin ve son değişikliklerin etkili olması için samba hizmetini yeniden başlatın.

systemctl restart smb

10. Son olarak, Anonim paylaşımın düzgün çalışıp çalışmadığını test edin, Windows makinenizde oturum açın, Windows Gezgini'ni açın, 'ı tıklayın ve ardından RHEL ana bilgisayarına tıklayın veya sunucuya erişmek için sunucunun IP adresini kullanın (sunucuda ip add komutunu çalıştırmak, IP adresini görüntülemenize yardımcı olabilir).

e.g. 2.168.43.198

11. Ardından, Anonim dizinini açın ve diğer kullanıcılarla paylaşmak üzere dosyaları buraya eklemeyi deneyin.

RHEL 8'de Samba4 Güvenli Dosya Paylaşımını Ayarlama

12. Güvenli bir şekilde paylaşılan bir dizin oluşturmak için bir Samba sistem grubu oluşturmanız gerekir. Güvenli paylaşımın tüm kullanıcıları bu gruba eklenecektir. Grubu oluşturmak için groupadd komutunu kullanabilirsiniz.

groupadd smbgrp

Daha sonra tüm kullanıcıları gruba eklemek için usermod komutunu kullanın (örneğin, tecmint) ve gösterildiği gibi her kullanıcı için bir şifre belirleyin.

usermod tecmint -aG smbgrp
smbpasswd -a tecmint

13. Ardından, paylaşılan dosyaları güvenli bir şekilde saklayacak güvenli dizini oluşturun ve ardından dizinde uygun izinleri ayarlayın. Ayrıca dizinin SELinux güvenlik içeriğini aşağıdaki gibi değiştirin.

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. Ardından, düzenlemek üzere yapılandırma dosyasını açın.

vim /etc/samba/smb.conf

Ve dosyanın sonuna aşağıdaki bölümü ekleyin.

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

Değişiklikleri kaydedin ve dosyayı kapatın.

15. Ardından, testparm komutunu çalıştırarak samba yapılandırmasını tekrar doğrulayın.

testparm

16. Değişikliklerin uygulanması için Samba hizmetlerini yeniden başlatın.

systemctl restart smb.service
systemctl restart nmb.service

Güvenli Samba Dosya Paylaşımını Test Etme

17. Son olarak Güvenli paylaşımın düzgün çalışıp çalışmadığını test edin. Windows makinenizden Windows Gezgini'ni açın, 'a tıklayın, ardından RHEL ana bilgisayarına tıklayın veya sunucuya şunu kullanarak erişmeyi deneyin: IP adresi daha önce açıklandığı gibi.

e.g. 2.168.43.198

RHEL 8 sunucusuna giriş yapmak için kullanıcı adınızı ve şifrenizi girmeniz istenecektir.

18. Giriş yaptığınızda, tüm samba paylaşılan dizinlerinin bir listesini alacaksınız. Artık dosyaları Güvenli dizine ekleyerek bazı dosyaları ağdaki diğer izin verilen kullanıcılarla güvenli bir şekilde paylaşabilirsiniz.

Bu kadar! Bu makalede, Windows makineleriyle anonim ve güvenli dosya paylaşımı için RHEL 8'de Samba 4'ün nasıl kurulacağını ve yapılandırılacağını gösterdik. Bu kılavuzla ilgili herhangi bir sorunuz veya yorumunuz varsa, bize ulaşmak için aşağıdaki geri bildirim formunu kullanın.