How to Share Folders with Samba with Ubuntu 18.04
İçindekiler:
- Ön şartlar
- Ubuntu'ya Samba Kurulumu
- Güvenlik duvarını yapılandırma
- Global Samba Seçeneklerini Yapılandırma
- Samba Kullanıcıları ve Dizin Yapısı Oluşturma
- Samba Kullanıcıları Oluşturma
- Samba Paylaşımlarını Yapılandırma
- Linux'tan Samba Paylaşımına Bağlanma
- Smbclient istemcisini kullanma
- Samba paylaşımını kurma
- GUI'yi kullanma
- Sonuç
Samba, son kullanıcıların dosyalara, yazıcılara ve diğer paylaşılan kaynaklara erişmesini sağlayan SMB / CIFS ağ dosya paylaşım protokolünün ücretsiz ve açık kaynaklı bir yeniden uygulamasıdır.
Bu öğretici, Samba'yı Ubuntu 18.04'e nasıl yükleyeceğinizi ve ağ üzerinde farklı işletim sistemleri arasında dosya paylaşımı sağlamak için bağımsız bir sunucu olarak nasıl yapılandıracağınızı açıklar.
Aşağıdaki Samba paylaşımlarını ve kullanıcılarını oluşturacağız.
Kullanıcılar:
- sadmin - Tüm paylaşımlara okuma ve yazma erişimi olan bir yönetici kullanıcı. josh - Kendi özel dosya paylaşımına sahip düzenli bir kullanıcı.
Paylar:
- kullanıcılar - Bu paylaşıma tüm kullanıcıların okuma / yazma izinleriyle erişilebilir. josh - Bu paylaşıma yalnızca josh ve sadmin kullanıcıları tarafından okuma / yazma izinleriyle erişilebilir.
Dosya paylaşımlarına ağınızdaki tüm cihazlardan erişilebilir. Bu eğitimin ilerleyen kısımlarında, Linux, Windows ve macOS istemcilerinden Samba sunucusuna nasıl bağlanacağı hakkında ayrıntılı talimatlar da vereceğiz.
Ön şartlar
Devam etmeden önce Ubuntu 18.04 sisteminizde sudo ayrıcalıklarına sahip bir kullanıcı olarak oturum açtığınızdan emin olun.
Ubuntu'ya Samba Kurulumu
Samba resmi Ubuntu depolarından temin edilebilir. Ubuntu sisteminize yüklemek için aşağıdaki adımları izleyin:
-
Apt paketleri dizinini güncelleyerek başlayın:
sudo apt updateSamba paketini aşağıdaki komutla yükleyin:
sudo apt install sambaKurulum tamamlandıktan sonra Samba servisi otomatik olarak başlayacaktır. Samba sunucusunun çalışıp çalışmadığını kontrol etmek için şunu yazın:
sudo systemctl status smbdÇıktı, Samba hizmetinin etkin ve çalışır durumda olduğunu gösteren aşağıdaki gibi görünmelidir:
● smbd.service - Samba SMB Daemon Loaded: loaded (/lib/systemd/system/smbd.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2019-11-27 09:25:38 UTC; 2min 12s ago Docs: man:smbd(8) man:samba(7) man:smb.conf(5) Main PID: 15142 (smbd) Status: "smbd: ready to serve connections…" Tasks: 4 (limit: 1152) CGroup: /system.slice/smbd.service…
Bu noktada, Samba kuruldu ve yapılandırılmaya hazır.
Güvenlik duvarını yapılandırma
Güvenlik duvarınızı yönetmek için
UFW
kullandığınızı varsayarsak, 'Samba' profilini etkinleştirerek bağlantı noktalarını açabilirsiniz:
Global Samba Seçeneklerini Yapılandırma
Samba yapılandırma dosyasında değişiklik yapmadan önce, ileride başvurmak üzere bir yedekleme oluşturun:
sudo cp /etc/samba/smb.conf{,.backup}
Samba paketi ile birlikte gelen varsayılan yapılandırma dosyası, bağımsız Samba sunucusu için yapılandırılmıştır. Dosyayı açın ve
server role
standalone server
olarak ayarlandığından emin olun
sudo nano /etc/samba/smb.conf
/etc/samba/smb.conf
… # Most people will want "standalone sever" or "member server". # Running as "active directory domain controller" will require first # running "samba-tool domain provision" to wipe databases and create a # new domain. server role = standalone server…
Varsayılan olarak, Samba tüm arabirimleri dinler. Samba sunucusuna erişimi yalnızca dahili ağınızdan kısıtlamak istiyorsanız, aşağıdaki iki satırı açın ve bağlanılacak arayüzleri belirtin:
/etc/samba/smb.conf
… # 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. # It is recommended that you enable this feature if your Samba machine is # not protected by a firewall or is a firewall itself. However, this # option cannot handle dynamic or non-broadcast interfaces correctly. bind interfaces only = yes…
Tamamlandığında, Samba yapılandırma dosyasında hata olup olmadığını kontrol etmek için
testparm
yardımcı programını çalıştırın. Herhangi bir sözdizimi hatası yoksa
Loaded services file OK.
görürsünüz
Loaded services file OK.
Son olarak, Samba hizmetlerini aşağıdakilerle yeniden başlatın:
sudo systemctl restart smbd
sudo systemctl restart nmbd
Samba Kullanıcıları ve Dizin Yapısı Oluşturma
Standart ana dizinleri (
/home/user
) kullanmak yerine kolay bakım ve esneklik için tüm Samba dizinleri ve verileri
/samba
dizininde bulunur.
/samba
dizinini oluşturmak için:
sudo mkdir /samba
Grup sahipliğini
sambashare
olarak
sambashare
. Bu grup Samba kurulumu sırasında oluşturulur, daha sonra tüm Samba kullanıcılarını bu gruba ekleyeceğiz.
sudo chgrp sambashare /samba
Samba Linux kullanıcıları ve grup izin sistemini kullanıyor ancak standart Linux kimlik doğrulamasından ayrı kendi kimlik doğrulama mekanizmasına sahip. Standart Linux
useradd
aracını kullanarak kullanıcıları oluşturacağız ve daha sonra
smbpasswd
yardımcı programıyla kullanıcı parolasını ayarlayacağız.
Giriş bölümünde belirttiğimiz gibi, özel dosya paylaşımına ve Samba sunucusundaki tüm paylaşımlara okuma ve yazma erişimi olan bir yönetici hesabına erişebilecek normal bir kullanıcı oluşturacağız.
Samba Kullanıcıları Oluşturma
josh
adlı yeni bir kullanıcı oluşturmak için aşağıdaki komutu kullanın:
sudo useradd -M -d /samba/josh -s /usr/sbin/nologin -G sambashare josh
useradd
seçeneklerinin anlamları:
-
-MKullanıcının giriş dizinini oluşturmaz. Bu dizini manuel olarak oluşturacağız.-d /samba/josh- kullanıcının ana dizinini/samba/joshayarlar.-s /usr/sbin/nologin- bu kullanıcı için kabuk erişimini devre dışı bırak.-G sambashare- kullanıcıyısambasharegrubuna ekleyin.
Kullanıcının giriş dizinini oluşturun ve dizin sahipliğini kullanıcı
josh
ve grup
sambashare
:
sudo mkdir /samba/josh
sudo chown josh:sambashare /samba/josh
Aşağıdaki komut setgid bitini
/samba/josh
dizinine ekler, böylece bu dizinde yeni oluşturulan dosyalar üst dizinin grubunu devralır. Bu şekilde, hangi kullanıcı yeni bir dosya oluşturursa
sambashare
,
sambashare
grup sahibi
sambashare
. Örneğin, dizinin izinlerini
2770
ve
sadmin
kullanıcısı yeni bir dosya oluşturursa,
josh
kullanıcısı bu dosyayı okuyamaz / yazamaz.
sudo chmod 2770 /samba/josh
Kullanıcı şifresini ayarlayarak
josh
kullanıcı hesabını Samba veritabanına ekleyin:
sudo smbpasswd -a josh
Kullanıcı şifresini girmeniz ve onaylamanız istenir.
New SMB password: Retype new SMB password: Added user josh.
Parola Samba hesabının çalışmasını etkinleştirecek şekilde ayarlandıktan sonra:
sudo smbpasswd -e josh
Enabled user josh.
Başka bir kullanıcı oluşturmak için kullanıcı
josh
oluştururken aynı işlemi tekrarlayın.
Sonra bir kullanıcı ve grup
sadmin
. Bu grubun tüm üyelerinin yönetici izinleri olacaktır. Daha sonra başka bir kullanıcıya yönetici izni vermek istiyorsanız, o kullanıcıyı
sadmin
grubuna ekleyin.
Aşağıdakileri yazarak yönetici kullanıcı oluşturun:
sudo useradd -M -d /samba/users -s /usr/sbin/nologin -G sambashare sadmin
Yukarıdaki komut aynı zamanda bir grup
sadmin
ve kullanıcıyı hem
sadmin
hem de
sambashare
gruplarına
sambashare
.
Bir şifre belirleyin ve kullanıcıyı etkinleştirin:
sudo smbpasswd -a sadmin
sudo smbpasswd -e sadmin
Ardından,
Users
paylaşım dizinini oluşturun:
sudo mkdir /samba/users
Dizin sahipliğini
sadmin
kullanıcı
sadmin
ve grup
sambashare
:
sudo chown sadmin:sambashare /samba/users
Bu dizine tüm kimliği doğrulanmış kullanıcılar erişebilir. Aşağıdaki
chmod
komutu,
/samba/users
dizinindeki
sambashare
grubunun üyelerine yazma / okuma erişimi sağlar:
Samba Paylaşımlarını Yapılandırma
Samba yapılandırma dosyasını açın ve bölümleri ekleyin:
sudo nano /etc/samba/smb.conf
/etc/samba/smb.conf
path = /samba/users browseable = yes read only = no force create mode = 0660 force directory mode = 2770 valid users = @sambashare @sadmin path = /samba/josh browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = josh @sadmin
Seçeneklerin anlamları:
-
ve- Oturum açarken kullanacağınız paylaşımların adları.path- Paylaşım yolu.browseable- Paylaşımın kullanılabilir paylaşımlar listesinde listelenip listelenmeyeceği. Başka bir kullanıcıya ayarlayarak paylaşımı göremezsiniz.read only-valid userslistesinde belirtilenvalid usersbu paylaşıma yazıp yazamayacağı.force create mode- Bu paylaşımda yeni oluşturulan dosyalar için izinleri ayarlar.force directory mode- Bu paylaşımda yeni oluşturulan dizinlerin izinlerini ayarlar.valid users- Paylaşıma erişmesine izin verilen kullanıcıların ve grupların listesi. Grupların başına@simgesi gelir.
Kullanılabilir seçenekler hakkında daha fazla bilgi için Samba yapılandırma dosyası dokümantasyon sayfasına bakın.
İşiniz bittiğinde Samba hizmetlerini aşağıdakilerle yeniden başlatın:
sudo systemctl restart smbd
sudo systemctl restart nmbd
Aşağıdaki bölümlerde, Linux, macOS ve Windows istemcilerinden bir Samba paylaşımına nasıl bağlanacağınızı göstereceğiz.
Linux'tan Samba Paylaşımına Bağlanma
Linux kullanıcıları, samba paylaşımına dosya yöneticisini kullanarak veya Samba paylaşımını bağlayarak komut satırından erişebilir.
Smbclient istemcisini kullanma
smbclient
,
smbclient
komut satırından erişmenizi sağlayan bir araçtır.
smbclient
paketi çoğu Linux dağıtımına önceden yüklenmediğinden, dağıtım paketi yöneticinize yüklemeniz gerekir.
Ubuntu ve Debian çalıştırmasına
smbclient
yüklemek için:
sudo apt install smbclient
smbclient
CentOS ve
smbclient
yüklemek için:
sudo yum install samba-client
Bir Samba paylaşımına erişim sözdizimi aşağıdaki gibidir:
mbclient //samba_hostname_or_server_ip/share_name -U username
Örneğin, kullanıcı adı
josh
olarak
192.168.121.118
IP adresine sahip bir Samba sunucusunda
josh
adında bir paylaşıma bağlanmak için:
smbclient //192.168.121.118/josh -U josh
Kullanıcı şifresini girmeniz istenir.
Enter WORKGROUP\josh's password:
Parolayı girdikten sonra Samba komut satırı arayüzüne giriş yapacaksınız.
Try "help" to get a list of possible commands. smb: \>
Samba paylaşımını kurma
Linux'ta bir Samba paylaşımı kurmak için önce
cifs-utils
paketini kurmanız gerekir.
Ubuntu ve Debian'da:
sudo apt install cifs-utils
CentOS ve Fedora'da:
sudo yum install cifs-utils
Ardından, bir bağlama noktası oluşturun:
sudo mkdir /mnt/smbmount
Aşağıdaki komutu kullanarak paylaşımı bağlayın:
sudo mount -t cifs -o username=username //samba_hostname_or_server_ip/sharename /mnt/smbmount
Örneğin, çalıştırılacak
/mnt/smbmount
bağlama noktasına kullanıcı adı
josh
olarak
192.168.121.118
IP adresine sahip bir Samba sunucusuna
josh
adında bir paylaşım eklemek için:
sudo mount -t cifs -o username=josh //192.168.121.118/josh /mnt/smbmount
Kullanıcı şifresini girmeniz istenir.
Password for josh@//192.168.121.118/josh: ********
GUI'yi kullanma
Gnome'daki varsayılan dosya yöneticisi Files, Samba paylaşımlarına erişmek için yerleşik bir seçeneğe sahiptir.
- Dosyaları açın ve
smb://samba_hostname_or_server_ip/sharename“Diğer Konumlar” a tıklayın. “Sunucuya Bağlan” alanına Samba paylaşımının adresini şu biçimde girinsmb://samba_hostname_or_server_ip/sharename“Bağlan” a tıklayın ve aşağıdaki ekran görünecektir:








Sonuç
Bu eğitimde, Ubuntu 18.04 üzerine Samba sunucusunu nasıl kuracağınızı ve farklı türde paylaşılan ve kullanıcılar oluşturacağınızı öğrendiniz. Linux, macOS ve Windows cihazlarından Samba sunucusuna nasıl bağlanacağınızı da gösterdik.
samba ubuntuUbuntu 18.04 üzerine redis nasıl kurulur ve yapılandırılır
Redis, açık kaynaklı bir bellek içi veri yapısı deposudur. Bir veritabanı, önbellek ve ileti aracısı olarak kullanılabilir ve Dizeler, Karmalar, Listeler, Kümeler, vb. Gibi çeşitli veri yapılarını destekler. Bu eğiticide Redis'in bir Ubuntu 18.04 sunucusuna nasıl kurulacağı ve yapılandırılacağı açıklanmaktadır.
Ubuntu 18.04 üzerine nagios nasıl kurulur ve yapılandırılır
Nagios, en popüler açık kaynak izleme sistemlerinden biridir. Nagios tüm BT altyapınızın envanterini tutar ve ağlarınızın, sunucularınızın, uygulamalarınızın, hizmetlerinizin ve işlemlerinizin çalışır durumda olmasını sağlar.
Centos 7'ye samba nasıl kurulur ve yapılandırılır
Bu eğitimde, Samba'yı CentOS 7'ye nasıl yükleyeceğimizi ve bir ağ üzerinden farklı işletim sistemleri arasında dosya paylaşımı sağlamak için bağımsız bir sunucu olarak nasıl yapılandıracağımızı göstereceğiz.
















