15%

Tüm Hosting Hizmetlerinde %15 indirim

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın:

Skills
Başlayın
31.10.2024

Ubuntu’da Samba Kurulumu ve Yapılandırması: Eksiksiz Adım Adım Kılavuz

Samba, Windows ve Ubuntu gibi Unix benzeri işletim sistemleri çalıştıran bilgisayarlar arasında sorunsuz dosya ve yazıcı paylaşımını sağlayan güçlü bir açık kaynak yazılım paketidir. Samba’yı yükleyerek ve düzgün şekilde yapılandırarak, Linux ve Windows ortamları arasındaki boşluğu kapatabilir, her iki platformdaki kullanıcıların yerel veya geniş alan ağı üzerinden dosya, dizin ve hatta yazıcı paylaşmasını sağlayabilirsiniz.

İster bir ev laboratuvarı, ister küçük bir işletme ağı, ister bir üretim sunucusu ortamı yönetiyor olun, bu kapsamlı rehber sizi Ubuntu’da Samba’yı yükleme, yapılandırma ve güvenli hale getirmenin her adımında yönlendirir — çoğu öğreticide atlanan gelişmiş seçenekler de dahil olmak üzere.

Ön Koşullar

Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:

  • Ubuntu 20.04, 22.04 veya 24.04 çalıştıran bir sunucu veya makine
  • Sisteme Sudo veya root erişimi
  • Linux komut satırı hakkında temel bir anlayış
  • Bağlanmak istediğiniz makineler arasında ağ bağlantısı

Samba’yı uzak bir sunucuda çalıştırıyorsanız, güvenilir ve performanslı bir barındırma ortamı gereklidir. AlexHost’tan VPS Barındırma size tam root erişimi, özel kaynakları ve sunucunuzu tam olarak ihtiyaç duyduğunuz şekilde yapılandırma esnekliğini verir.

Adım 1: Sistem Paketlerini Güncelleyin

Yeni bir yazılım yüklemeden önce, sisteminizin paket dizinini güncellemek ve mevcut paketleri en son sürümlerine yükseltmek kritik önem taşır. Bu, uyumluluğu sağlar ve bilinen güvenlik açıklarına karşı koruma sağlar.

sudo apt update && sudo apt upgrade -y

İşlemin tamamlanmasını bekleyin ve ardından devam edin.

Adım 2: Samba’yı Yükleyin

APT paket yöneticisini kullanarak Samba paketini yükleyin:

sudo apt install samba -y

Yükleme tamamlandıktan sonra, Samba sürümünü kontrol ederek başarılı olduğunu doğrulayın:

smbd --version

Şuna benzer bir çıktı görmelisiniz:

Version 4.15.13-Ubuntu

Ayrıca Samba hizmetinin çalıştığını doğrulayabilirsiniz:

sudo systemctl status smbd

Çıktı hizmetin active (running) olarak gösterilmelidir.

Adım 3: Varsayılan Samba Yapılandırma Dosyasını Yedekleyin

Herhangi bir değişiklik yapmadan önce, her zaman orijinal yapılandırma dosyasını yedekleyin. Bu, bir sorun ortaya çıkarsa varsayılan ayarlara geri dönmenizi sağlar:

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

Bu, birçok rehberin atladığı ancak deneyimli sistem yöneticilerinin her zaman uyguladığı en iyi uygulamadır.

Adım 4: Paylaşılan Bir Dizin Oluşturun ve Yapılandırın

4.1 Dizini Oluşturun

Ağ üzerinden paylaşmak istediğiniz dizine karar verin. Bu rehber için, ev dizini içinde shared adlı özel bir klasör oluşturacağız:

mkdir ~/shared

4.2 Dizin İzinlerini Ayarlayın

Dizinde uygun izinleri ayarlayın. Birden fazla kullanıcının okuma ve yazma erişimine ihtiyaç duyduğu paylaşılan bir ortam için:

chmod 777 ~/shared

> Güvenlik Notu: chmod 777 ayarı tüm kullanıcılara tam okuma, yazma ve yürütme izinleri verir. Test için uygun olsa da, üretim ortamları için önerilmez. Üretim kurulumunda, chmod 770 gibi daha kısıtlayıcı izinler kullanın ve grup üyeliği aracılığıyla erişimi yönetin.

Adım 5: Samba’yı Yapılandırın — smb.conf Dosyasını Düzenleyin

Ana Samba yapılandırma dosyasını bir metin editörü kullanarak açın:

sudo nano /etc/samba/smb.conf

Dosyanın en sonuna kaydırın ve aşağıdaki yapılandırma bloğunu ekleyin:

[SharedFolder]
   path = /home/username/shared
   available = yes
   valid users = username
   read only = no
   browsable = yes
   public = yes
   writable = yes

username yerine gerçek Ubuntu sistem kullanıcı adınızı yazın.

Her Yönergeyi Anlama

YönergeAçıklama
pathPaylaşılan dizinin mutlak yolu
availablePaylaşımın kullanıcılara açık olup olmadığı
valid usersErişimi listelenen kullanıcı(lar)la sınırlandırır
read onlyYazma erişimine izin vermek için no olarak ayarlayın
browsablePaylaşımın ağa göz atarken görünüp görünmediği
publicKimlik doğrulaması olmadan erişime izin verir (dikkatli kullanın)
writableKullanıcıların paylaşıma dosya yazmasına izin verir

Değişikliklerinizi yaptıktan sonra, dosyayı CTRL + O tuşuna basarak kaydedin, ardından Enter tuşuna basın ve CTRL + X ile çıkın.

Yapılandırmayı Doğrulayın

Samba’yı yeniden başlatmadan önce, yapılandırma dosyanızı söz dizimi hataları açısından test edin:

testparm

Bu komut smb.conf dosyasını ayrıştırır ve sorunları raporlar. Devam etmeden önce hataları düzeltin.

Adım 6: Samba Kullanıcı Hesabı Oluşturun

Samba, standart Linux sistem parolalarından ayrı kendi parola veritabanını tutar. Paylaşıma erişmesi gereken herhangi bir kullanıcı için Samba’ya özgü bir parola eklemelisiniz.

sudo smbpasswd -a username

Parola girmeniz ve onaylamanız istenecektir. Bu parola, uzak bir Windows veya Linux makinesinden paylaşılan klasöre bağlanırken gerekli olacaktır.

> İpucu: Her Samba kullanıcısı için güçlü, benzersiz bir parola kullanın. Sistem parolalarını yeniden kullanmaktan kaçının.

Kullanıcı hesabını Samba’da etkinleştirmek için (daha önce devre dışı bırakılmışsa):

sudo smbpasswd -e username

Adım 7: Güvenlik Duvarını Yapılandırın

Ubuntu sunucunuzda UFW (Uncomplicated Firewall) etkinse, Samba trafiğinin güvenlik duvarından geçmesine izin vermeniz gerekir:

sudo ufw allow samba

Kuralın eklendiğini doğrulayın:

sudo ufw status

Samba aşağıdaki bağlantı noktalarını kullanır:

  • TCP 445 — TCP üzerinden SMB (birincil)
  • TCP 139 — NetBIOS oturum hizmeti
  • UDP 137 & 138 — NetBIOS ad ve datagram hizmetleri

Adım 8: Samba Hizmetlerini Yeniden Başlatın ve Etkinleştirin

Yapılandırma değişikliklerinizi uygulayarak Samba hizmetlerini yeniden başlatın:

sudo systemctl restart smbd
sudo systemctl restart nmbd

Her iki hizmeti de sistem önyüklemesinde otomatik olarak başlaması için etkinleştirin:

sudo systemctl enable smbd
sudo systemctl enable nmbd

nmbd hizmeti NetBIOS ad çözümlemesini işler; bu, Windows istemcilerinin yerel ağda Samba sunucunuzu ada göre bulması için önemlidir.

Adım 9: Paylaşılan Klasöre Bir Windows Sisteminden Erişin

Aynı ağdaki herhangi bir Windows bilgisayarından, artık Ubuntu Samba paylaşımınıza bağlanabilirsiniz:

  1. Dosya Gezgini‘ni açın
  2. Adres çubuğunda, Ubuntu makinenize ağ yolunu yazın:
   ubuntu_ip_addressSharedFolder

ubuntu_ip_address yerine Ubuntu sunucunuzun gerçek IP adresini yazın (örneğin, 192.168.1.100SharedFolder)

  1. İstendiğinde, Adım 6’da yapılandırdığınız Samba kullanıcı adı ve parolasını girin
  2. Paylaşılan klasör artık Dosya Gezgini’nde görünecek ve herhangi bir yerel klasörde olduğu gibi dosyaları okuyabilir, yazabilir, kopyalayabilir ve silebilirsiniz

Paylaşımı Ağ Sürücüsü Olarak Eşleyin (İsteğe Bağlı)

Kalıcı erişim için, Samba paylaşımını Windows’ta ağ sürücüsü olarak eşleyebilirsiniz:

  1. Dosya Gezgini’nde Bu Bilgisayar‘a sağ tıklayın
  2. Ağ sürücüsünü eşle‘yi seçin
  3. Bir sürücü harfi seçin ve ağ yolunu girin
  4. Otomatik bağlama için Oturum açarken yeniden bağlan‘ı işaretleyin

Adım 10: Başka Bir Linux Sisteminden Samba Paylaşımına Erişin

Başka bir Linux makinesinde, smbclient komut satırı aracını kullanarak Samba paylaşımına bağlanabilirsiniz.

Önce smbclient’ı yükleyin (zaten mevcut değilse):

sudo apt install smbclient -y

Ardından paylaşıma bağlanın:

smbclient //ubuntu_ip_address/SharedFolder -U username

İstendiğinde Samba parolasını girin. ls, get, put ve cd gibi komutları kullanarak dosyalara göz atmak ve aktarmak için etkileşimli bir FTP benzeri kabuğa gireceksiniz.

Samba Paylaşımını Linux’ta Bağlayın

Daha sorunsuz bir deneyim için, cifs-utils kullanarak Samba paylaşımını yerel bir dosya sistemi olarak bağlayabilirsiniz:

sudo apt install cifs-utils -y
sudo mkdir /mnt/samba_share
sudo mount -t cifs //ubuntu_ip_address/SharedFolder /mnt/samba_share -o username=username,password=yourpassword

Bağlamayı yeniden başlatmalar arasında kalıcı hale getirmek için, /etc/fstab dosyasına bir giriş ekleyin:

//ubuntu_ip_address/SharedFolder /mnt/samba_share cifs username=username,password=yourpassword,_netdev 0 0

> Güvenlik İpucu: Kimlik bilgilerini /etc/fstab dosyasında depolamak yerine, kısıtlı izinlere sahip bir kimlik bilgileri dosyası kullanın.

Adım 11: Gelişmiş Samba Yapılandırma Seçenekleri

Samba’nın smb.conf dosyası, dosya paylaşım ortamınız üzerinde ince taneli kontrol sağlayan çok çeşitli yönergeleri destekler. İşte en yararlı gelişmiş seçenekler:

Salt Okunur Erişim

Kullanıcıların paylaşımdaki dosyaları değiştirmesini önlemek için şunu ayarlayın:

read only = yes

Konuk Erişimi (Anonim Paylaşımlar)

Kullanıcıların parola olmadan bağlanmasına izin vermek için:

guest ok = yes
public = yes

> Konuk erişimini yalnızca güvenilir, yalıtılmış ağlarda kullanın. Asla herkese açık bir sunucuda etkinleştirmeyin.

IP Adresine Göre Erişimi Kısıtlayın

Hangi makinelerin paylaşıma bağlanabileceğini sınırlamak için:

hosts allow = 192.168.1.0/24
hosts deny = ALL

Bu, erişimi yalnızca 192.168.1.x alt ağındaki makinelerle sınırlandırır.

Birden Fazla Paylaşılan Klasör

smb.conf dosyasına ek bloklar ekleyerek istediğiniz kadar paylaşım tanımlayabilirsiniz:

[Documents]
   path = /home/username/documents
   valid users = username
   read only = no
   writable = yes

[Backups]
   path = /srv/backups
   valid users = admin
   read only = yes
   browsable = no

Maksimum Bağlantıları Ayarlayın

Paylaşıma eşzamanlı bağlantı sayısını sınırlamak için:

max connections = 10

Belirli Bir Kullanıcı veya Grubu Zorlayın

Tüm dosyaların belirli bir kullanıcı veya grup sahipliğiyle oluşturulmasını sağlamak için:

force user = samba_user
force group = samba_group

Adım 12: Samba Yüklemenizi Güvenli Hale Getirin

Güvenlik, özellikle Samba sunucunuz yerel ağınızın ötesinde erişilebilirse çok önemlidir. Bu sertleştirme en iyi uygulamalarını izleyin:

1. Konuk Erişimini Devre Dışı Bırakın

Açıkça gerekli olmadığı sürece, her zaman anonim erişimi devre dışı bırakın:

map to guest = Never

2. Güçlü Parolalar Kullanın

Tüm Samba kullanıcıları için güçlü, benzersiz parolalar zorunlu kıl

15%

Tüm Hosting Hizmetlerinde %15 indirim

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın:

Skills
Başlayın