Ana içeriğe geç

Samba 4

Samba Nedir?

Özetle: Samba projesi 1992'de Andrew Tridgell tarafından başlatılmıştır. Kendisi, Microsoft Windows kullanan bilgisayarlar ile dosya ve yazıcı paylaşımı yapmayı sağlayan araçlar topluluğudur. SMB ağ protokolünü kullanır ki bu Windows ağ uygulamasının kalbidir.

Samba şu işler için kullanılabilir:

  • Windows (veya Samba istemcileri) için bir sunucu vazifesi görme: dosya ve yazıcı paylaşımı. Buna PDF sahte-yazıcılar da dahildir. Böylece ağınızdaki her yazıcı PDF dosyaları yazabilir.
  • Bir Windows ağında alan denetleyicisi olarak iş görmek (kullanıcıları doğrulamak vb.)
  • Başka bazı karışık işleri yapmak. Örneğin, Windows alan denetleyicisini kullanarak Linux/UNIX kullanıcılarının doğrulamasını yapmak.

Samba GNU Genel Kamu Lisansı altında yayınlanan tamamen özgür bir yazılımdır. Samba hakkında daha fazla bilgiye samba.org'dan ulaşılabilir.

Ubuntu 20.04 Samba Kurulumu

  • Her iki makine de aynı yerel çalışma grubunda bulunacaktır. Çalışma grubunu istediğiniz gibi adlandırabilirsiniz, ancak bu gönderi için çalışma grubumuz WORKGROUP adlı varsayılan Windows çalışma grubu olacaktır.

Windows IP address = 172.17.27.61 Ubuntu IP address = 192.168.252.138
Workgroup Name = WORKGROUP

İlk Adım : Windows Çalışma Grubunu Tanımlayın

  • Windows makinesinin hangi Çalışma Grubuna ait olduğunu bulmak için komut istemlerini açın ve aşağıdaki komutları yazın.(Windows makinenizde Komut İsteminden)
net config workstation
  • Yukarıdaki komutları çalıştırdığınızda, bilgisayar için genellikle WORKGROUP olarak adlandırılan mevcut İş İstasyonu etki alanı adınızı görmelisiniz.

cmdworkgroup

2. Adım : Ubuntu'yu Windows Ana Bilgisayar Dosyasına Ekleyin

  • Windows sistemi için komut istemini yönetici olarak açın ve aşağıdaki komutları çalıştırın.
notepad C:\\Windows\System32\drivers\etc\hosts
  • Ardından, "server" isimli Ubuntu makinesi için yerel girişi ekleyin.
192.168.252.138 ubuntu.localhost server
  • Değişiklikleri kaydedin ve çıkın.

  • Windows sistem adını Ubuntu ana bilgisayar dosyasına eklemek için, komut terminalini açmak üzere klavyenizde Ctrl + Alt + T tuşlarına basın.

  • Aşağıdaki komutu çalıştırın:

sudo nano /etc/hosts
  • Ardından, Windows makinesi için ana bilgisayar adına sahip IP'yi yazın, dosyayı kaydedin ve çıkın.

3. Adım : Dosya Paylaşımını Etkinleştirin

  • Dosya paylaşımını mümkün kılmak için bu özelliğin Windows sistemlerinde etkinleştirilmesi gerekir.

  • Etkinleştirmek için komut istemini yönetici olarak çalıştırın ve aşağıdaki komutları çalıştırın.

netsh advfirewall firewall set rule group="File and Printer Sharing" new enable= Yes

netsh advfirewall firewall set rule group="Network Discovery" new enable= Yes
  • Yukarıdaki komutlar çalıştırıldıktan sonra Windows makinesinde dosya paylaşımı etkin olacaktır.

4. Adım : Samba'yı Ubuntu Makinenize Kurun

  • Bu noktada, Windows ve Ubuntu sistemleri aynı çalışma grubunun üyesi olmalı ve her iki sistemin de diğerine adıyla başvurmak için yerel ana bilgisayar dosyasında girişleri olmalıdır.

  • Samba'yı kurmak için aşağıdaki komutları çalıştırın.

sudo apt update
sudo apt install samba
  • Kurulum bittikten sonra, yapılandırma ayarlarına geçebiliriz.

  • Samba hizmetlerinin çalışıp çalışmadığını doğrulamak için aşağıdaki komutları çalıştırın:

sudo systemctl status smbd
  • Aşağıdaki gibi benzer satırlar vermelidir:
mbd.service - Samba SMB Daemon
      Loaded: loaded (/lib/systemd/system/smbd.service; enabled; vendor preset: >
      Active: **active (running)** since Wed 2020-05-06 18:23:55 CDT;  4min 27s ago
        Docs: man:smbd(8)
              man:samba(7)
              man:smb.conf(5)
     Process: 2026 ExecStartPre=/usr/share/samba/update-apparmor-samba-profile (>
    Main PID: 2039 (smbd)
      Status: "smbd: ready to serve connections..."
       Tasks: 4 (limit: 4657)
      Memory: 14.9M
      CGroup: /system.slice/smbd.service
              ├─2039 /usr/sbin/smbd --foreground --no-process-group

5. Adım : Genel Paylaşımı Yapılandırın

  • Artık Samba yüklendiğine göre, varsayılan yapılandırma dosyasını yedeklemek için aşağıdaki komutları çalıştırın.
sudo cp /etc/samba/smb.conf{,.backup}
  • Ardından, aşağıdaki komutları çalıştırarak Samba yapılandırma dosyasını açın.
sudo nano /etc/samba/smb.conf
  • Ardından, vurgulanan(!) çizgileri aşağıdakilerle eşleşecek şekilde ayarladığınızdan emin olun.
======================= Global Settings =======================
 [global]
 ## Browsing/Identification ###
 # Change this to the workgroup/NT-domain name your Samba server will part of
 !       workgroup = WORKGROUP
 !   netbios name = server  
 !   security = user  
 !   proxy = no  map to 
 !   guest = bad user
 #### Networking ####
 # The specific set of interfaces / networks to bind to
 # This can be either the interface name or an IP address/netmask;
 # interface names are normally preferred
    interfaces = 127.0.0.0/8 eth0

 # Only bind to the named interfaces and/or networks;  you must use the
 # 'interfaces' option above to use this.
 bind interfaces only = yes

 #Most people will want "standalone server" or "member server".
 #Running as "active directory domain controller" will require first

 server role = standalone server  obey pam restrictions = yes

 #This boolean parameter controls whether Samba attempts to sync the Unix
 [public] 
 !   path = /samba/public  
 !   browseable = yes  
 !   guest ok = yes 
 !   guest only = yes  
 !   read only = no  
 !   force user = nobody  
 !   force create mode = 0777  
 !   force directory mode = 0777
  • Tamamlandığında, değişikliklerinizi kaydedin. Ardından, Samba yapılandırma dosyasında hata olup olmadığını kontrol etmek için testparm yardımcı programını çalıştırın.

  • Samba Servisini yeniden başlatıyoruz.

sudo systemctl restart smbd

6. Adım : Ortak Klasör Oluşturun

  • Ardından, yukarıda Samba yapılandırmasında tanımlandığı gibi herkesin erişebilmesi gereken ortak klasörü oluşturun.
sudo mkdir -p /samba/public
  • İzinleri herkesin okuyabileceği ve yazabileceği şekilde ayarlayın.

sudo chown -R nobody:nogroup /samba/ public
sudo chmod -R 0775 /samba/ public

sudo chgrp sambashare /samba/public
  • Ubuntu'da paylaşılan konumu görüntülemek için Samba'yı yeniden başlatın ve Windows Dosya Gezgini'ni açın.
sudo systemctl restart smbd
  • Şimdi Windows makinenize gidin ve aşağıda gösterildiği gibi Dosya Yöneticisine göz attığınızda Ubuntu'daki paylaşılan ortak klasörü görmelisiniz.

ss

ss2

ss3

7. Adım : Samba Özel Paylaşımını Yapılandırın

  • Şimdi yapacağımız düzenlemelerde yalnızca onaylı grubun üyesi olan kullanıcılar güvenli konuma şifrelerle erişebilir.

  • Önce paylaşım için smbgroup adında bir samba grubu oluşturun, sadece üyelerin erişimi olacaktır. Ubuntu'da bir grup oluşturmak için aşağıdaki komutları çalıştırın.

sudo addgroup smbgroup
  • Ardından aşağıdaki komutları çalıştırarak gruba bir kullanıcı ekleyin:
sudo usermod -aG smbgroup server
  • Son olarak, dosyaya erişecek kullanıcıların bir şifre girmesi gerekecektir. Samba şifre veri tabanına bir kullanıcı eklemek için, her kullanıcı için aşağıdaki komutları çalıştırın.
sudo smbpasswd -a server

ya da

sudo smbpasswd -e server
  • Kullanıcıdan bir şifre girmesi ve onaylaması istenecektir. Bu şifre korumalı samba paylaşımlarına erişmek için kullanılacaktır.

  • Daha sonra /samba dizinine gidin ve korumalı bir paylaşım oluşturun:

sudo mkdir -p /samba/ deneme
  • Ardından bu paylaşıma yalnızca üye grubu erişimi verin.

cd /samba/
sudo chown -R root: smbgroup deneme
sudo chmod -R 0770 deneme

  • Korumalı paylaşımı oluşturmayı tamamladığınızda gidin ve smb.conf dosyasında paylaşın.
sudo nano /etc/samba/smb.conf
  • Ardından aşağıdaki yapılandırma bloğunu smb.conf dosyasına yukarıdakinin hemen altına ekleyin.
  [deneme]  
   path = /samba/protected  
   valid users = @smbgroup  
   guest ok = no 
   writable = yes  
   browsable = yes
  • Değişikliklerinizi kaydedin ve çıkın.

  • Samba'yı yeniden başlatın ve değişikliklerinizi test edin.

sudo service smbd restart
  • Yalnızca smbgroup üyesi korumalı alana erişebilir.

ss4


Sonuç: Samba'yı Ubuntu makinemize kurduk ve yapılandırma ayarlarını yaptık.