Як налаштувати спільний доступ Samba на Ubuntu 24.04|22.04|20.04
Ласкаво просимо до нашого посібника про те, як встановити та налаштувати Samba Share у системі Linux Ubuntu 24.04|22.04|20.04. Samba — це реалізація протоколів Server Message Block (SMB) і Common Internet File System (CIFS) з відкритим вихідним кодом, яка надає послуги файлу та друку між клієнтами в різних операційних системах.
Налаштувавши спільний доступ до сервера Samba в Ubuntu, ви можете легко обмінюватися папками або файлами між операційними системами Windows і Linux. У цьому контексті комп’ютер з Windows буде використовуватися як клієнт для доступу до спільного ресурсу Samba у Linux. Рекомендується виконувати ці операції в нещодавно встановленій системі Ubuntu Linux.
Крок 1. Встановіть сервер Samba
Щоб встановити Samba на Ubuntu, використовуйте команди:
sudo apt -y update && sudo apt -y install samba
Якщо ви використовуєте статичну IP-адресу, дайте відповідь «ні», коли вас попросять використовувати налаштування WINS від DHCP.
Після того, як пакет буде встановлений, перейдіть до кроку 2, де ми виконаємо налаштування та керуватимемо сервісом Samba.
Крок 2. Налаштуйте спільний доступ Samba
Samba використовує файл налаштувань у файлі /etc/samba/smb.conf. Якщо ви зміните цей файл налаштувань, зміни не набудуть чинності, доки ви не перезапустите фонову службу Samba.
Почнемо зі створення каталогу для спільного використання через Samba. Каталог повинен існувати, перш ніж його можна буде налаштувати в smb.conf. Ми створимо один під /home.
sudo mkdir -p /home/share
Доступ до всіх без автентифікації (не рекомендується)
Каталог повинен бути читабельним і доступним для запису для всіх користувачів.
sudo chmod 777 /home/share
Налаштуйте спільний доступ Samba у файлі /etc/samba/smb.conf.
$ sudo vim /etc/samba/smb.conf
[global]
# Configure correct UTP
unix charset = UTF-8
# Change this to the workgroup/NT-domain name your Samba server will be part of
workgroup = WORKGROUP
bind interfaces only = yes
# Set share configuration at the end
[Docs]
path = /home/share
writable = yes
guest ok = yes
guest only = yes
create mode = 0777
directory mode = 0777
Деталі конфігурації:
- Docs – Назва спільного ресурсу Samba
- path = /home/share – Каталог для спільного доступу
- guest ok = yes – Увімкніть гостьову частку
- guest only = yes – Всі захищені як гості
- writable = yes – Встановити каталог спільного доступу як доступний для запису
- create mode = 0777 & directory mode = 0777 – Дозволити доступ всім
Налаштування спільного доступу до безпечної Samba (рекомендовано)
Встановіть групове право власності на каталог акцій Samba на групу sambashare.
sudo chgrp sambashare /home/share
Створюйте samba для спільного доступу користувачів. Замініть user1 на samba share user для створення.
sudo useradd -M -d /home/share/user1 -s /usr/sbin/nologin -G sambashare user1
sudo mkdir /home/share/user1
sudo chown user1:sambashare /home/share/user1
sudo chmod 2770 /home/share/user1
Встановіть пароль користувача та підтвердьте.
$ sudo smbpasswd -a user1
New SMB password:
Retype new SMB password:
Added user user1.
Увімкніть обліковий запис samba після встановлення пароля за допомогою команди:
$ sudo smbpasswd -e user1
Enabled user user1.
Ми створили домашній каталог користувача в батьківському каталозі спільного ресурсу Samba і встановили право власності на групу спільного доступу Samba. Давайте створимо ще одного користувача.
sudo useradd -M -d /home/share/smbadmin -s /usr/sbin/nologin -G sambashare smbadmin
sudo mkdir /home/share/smbadmin
sudo smbpasswd -a smbadmin
sudo smbpasswd -e smbadmin
sudo chown smbadmin:sambashare /home/share/smbadmin
sudo chmod 2770 /home/share/smbadmin
Налаштуйте спільний доступ до Secure Samba.
[user1]
path = /home/share/user1
read only = no
browseable = no
force create mode = 0660
force directory mode = 2770
valid users = @user1 @sambashare
[smbadmin]
path = /home/share/smbadmin
read only = no
browseable = yes
force create mode = 0660
force directory mode = 2770
valid users = @sambashare @smbadmin
Перезапустіть демон samba після внесення змін.
sudo systemctl restart smbd nmbd
Підтвердьте, що сервіс працює.
Якщо у вас активний брандмауер, запустіть:
sudo ufw allow 'Samba'
Крок 3. Налаштуйте клієнти Samba
Щоб отримати доступ до спільного ресурсу Samba в системі Linux, вам потрібно встановити та налаштувати клієнт Samba.
### Install Samba client on Ubuntu / Debian###
sudo apt update
sudo apt -y install smbclient cifs-utils
### Install Samba client on CentOS / RHEL / Fedora ###
sudo yum -y install samba-client cifs-utils
sudo dnf -y install samba-client cifs-utils
Доступ до спільного доступу до Samba – тимчасово
$ smbclient //sambaserver/share -U sambausername
Example:
$ smbclient //192.168.122.52/user1 -U user1
WARNING: The "syslog" option is deprecated
Enter WORKGROUP\user1's password:
Try "help" to get a list of possible commands.
smb: \> list
0: server=192.168.122.52, share=user1
smb: > ls
. D 0 Sun Jul 14 01:10:39 2019
.. D 0 Sun Jul 14 00:49:13 2019
latest.zip N 12121295 Tue Jun 18 10:52:03 2019
9544896 blocks of size 1024. 7918732 blocks available
smb: > pwd Current directory is \192.168.122.52\user1\
Ви можете змонтувати спільний ресурс samba до каталогу у вашій локальній системі Linux за допомогою опції mount та cifs type.
$ mkdir -p ~/mounts/shares
$ mount -t cifs -o username=user1 //192.168.122.52/user1 ~/mounts/shares
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 2.9G 38G 8% /
devtmpfs 488M 0 488M 0% /dev
tmpfs 496M 0 496M 0% /dev/shm
tmpfs 496M 6.7M 489M 2% /run
tmpfs 496M 0 496M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/1000
//192.168.122.52/user1 9.2G 1.6G 7.6G 18% /home/computingforgeeks/mounts/shares
Реалізовано спільний доступ до mount Samba за допомогою fstab.
Ви можете використовувати файл fstab для збереження монтування спільних ресурсів Samba шляхом перезавантаження системи. У моєму прикладі у мене наступний рядок додано в кінець файлу /ect/fstab.
//192.168.122.52/user1 /mnt/shares cifs credentials=/.sambacreds 0 0
Потім я створив файл облікових даних.
$ cat /.sambacreds
username=user1
password=password
domain=WORKGROUP
Тест:
$ sudo mkdir -p /mnt/shares
$ sudo mount -a
$ df -hT | grep cifs
//192.168.122.52/user1 cifs 9.2G 1.6G 7.6G 18% /mnt/shares
Для настільних комп’ютерів Windows дотримуйтесь стандартного процесу монтування спільного ресурсу Samba у Windows. Ось і все про те, як встановити та налаштувати Samba на Ubuntu 24.04|22.04|20.04.