Debian linux file sharing

Debian SMB File Shares with Active Directory Permissions

When setting up the NAS part of my new all in one lab build, one thing I couldn’t find a simple guide for online was Active Directory permissions with SMB file shares in Debian. Hopefully this guide will help you out with a rather simple approach to the problem.

Requirements#

These are the things you should already have set up and running before diving into this. This guide is demonstrated on a Debian VM, but it will most likely work for Ubuntu. For other Linux operating systems, I cannot guarantee it will work as expected.

  • A linux machine with a storage location. This could be either a physical machine, or a virtual machine.
  • A working Active Directory setup, and a user with permissions to join the domain.

Install packages#

The first step is to make sure the necessary packages are installed. This step is quite easy, all you need to do is run the following command:

sudo apt install samba winbind libpam-winbind libnss-winbind krb5-config 

Initial Samba config#

The first step is to setup the Samba configuration to connect to your domain. To do this you will need to edit /etc/samba/smb.conf using the editor of your choice, such as vim or nano. You need to add the following content to the file, with some pieces substituted for your own values.

[global] workgroup = YOUR_WORKGROUP password server = YOUR_DC.YOUR_DOMAIN.EXAMPLE realm = your.domain.here security = ads idmap config * : range = 16777216-33554431 template homedir = /home/%D/%U template shell = /bin/bash winbind use default domain = true winbind offline logon = false 

The workgroup should be your NetBIOS domain name, your password should be the hostname of your Domain Controller, and the realm should be your domain name. For example, my domain has the NetBIOS name of KALININ, the domain name of ad.kalinin.xyz and the domain controller can be found at DC-COLO-01.ad.kalinin.xyz After putting this information in, my smb.conf file has the following content:

smb.conf file

Name service configuration#

The next step is to modify the name service config file ( /etc/nsswitch.conf ) to use winbind for authentication checking. The main things to change here are the lines for passwd, group, and shadow. These lines should say files winbind sss . Below is an example of what my configuration file looked like after the changes.

/etc/nsswitch.conf

Joining the domain#

At this point, your system should be ready to join your domain. Just make sure you have the DNS configured to use the domain’s DNS servers. The next step is to join the domain using sudo net ads join -U where the username is for the account that has permission to domain join. In my example, I used my username like so:

Читайте также:  Linux mint сетевое окружение

Joining the domain

After doing this, if it was successful, you can either reboot, or restart all the appropriate services using the following commands.

sudo systemctl restart winbind sudo systemctl restart smbd sudo systemctl restart nmbd 

Create a file share#

The next step is to add a file share and set appropriate folder permissions. When adding new file shares in the future this is the only part of the guide you will need to follow.

The first step is to create a new folder, and set the permissions accordingly. The commands you need are as follows, substituting in the values accordingly.

sudo mkdir sudo chmod -R 0770 sudo chgrp -R

Creating the folder and setting permissions

Here is an example I did with the values substituted in. In this example I am creating a folder to keep my backups, and giving the Domain Users group access to it.

Once the folder is created and permissions set, we just need to add an entry to /etc/samba/smb.conf so that it is shared. The config section to add will look like the following:

[Share name here] comment = some comment here path = valid users = force group = writable = yes read only = no force create mode = 0660 create mask = 0777 directory mask = 0777 force directory mode = 0770 access based share enum = yes hide unreadable = yes 

With the values filled out for the backup example, it should look something like this.

Adding the samba config entry

After saving the file, you can now restart the service using sudo systemctl restart smbd , and your file share should now be working. Here you can see the newly created share showing up in windows file explorer.

Источник

Debian linux file sharing

Данное краткое руководство посвящено быстрой базовой настройке Samba.

Samba — пакет программ, которые позволяют обращаться к сетевым дискам и принтерам на различных операционных системах по протоколу SMB/CIFS. Имеет клиентскую и серверную части. Является свободным программным обеспечением, выпущена под лицензией GPL.

Установка

Настройка

Добавляем пользователя в базу самбы:

# smbpasswd -a имя_пользователя
# smbpasswd -e имя_пользователя

В большинстве случаев, при домашнем использовании, все должно работать и со стандартным smb.conf.

Решение неполадок

Если при попытке создать общий ресурс через Nautilus или Konqueror Вам сообщается об ошибке :

* ‘net usershare’ returned error 255: net usershare: usershares are currently disabled

в таком случае проделайте следующее : откройте для редактирования файл /etc/samba/smb.conf и отредактируйте секцию [global] следующим образом :

[global] . usershare path = /var/lib/samba/usershare usershare max shares = 100 usershare allow guests = yes usershare owner only = False read only = No guest only = Yes guest ok = Yes .

Сохраните файл и закройте текстовый редактор. Далее создайте каталог ‘usershare’ где Samba будет хранить списки общих папок, разрешив чтение и запись

# mkdir /var/lib/samba/usershares # chown root:sambashare /var/lib/samba/usershares # chmod 1770 /var/lib/samba/usershares # usermod -a -G sambashare

Завершите сеанс и войдите в него вновь. Теперь у вас должна появиться возможность настраивать общий доступ samba, используя графический интерфейс. Например, в Dolphin вы можете нажать правую кнопку мыши на любом каталоге и предоставить для него общий доступ в сети.

Неполадки

Находим следующую строку в smb.conf

; name resolve order = lmhosts host wins bcast

раскомментируем и изменяем на

name resolve order = lmhosts wins bcast host
local master = Yes browseable = yes

Если хотим, чтобы мы были видны в локальной сети

Читайте также:  Узнать владельца файла линукс

Если у вас возникли проблемы при доступе к защищенному паролем общему ресурсу на Windows попробуйте добавить

[global] # THE LANMAN FIX client lanman auth = yes client ntlmv2 auth = no

Заключение

# Примерный рабочий smb.conf workgroup = WORKGROUP server string = Samba Server [global] server string = Samba Server usershare path = /var/lib/samba/usershare usershare max shares = 100 usershare allow guests = yes usershare owner only = False read only = No guest only = Yes guest ok = Yes [printers] comment = All Printers path = /var/spool/samba read only = Yes guest ok = Yes printable = Yes browseable = Yes
''read only = No'' возможно правильнее всего вынести из [global] в отдельную шару, в данном случае [music]. Но в этом случае, шары созданные через файловый мененджер и не прописанные непосредственно в smb.conf станут доступны только для чтения

Источник

Настройка Samba в Debian 10

Samba позволяет открывать доступ к файлам по локальной сети с компьютеров, работающих под управлением любой операционной системы. Samba также обеспечивает управление доступом к этим ресурсам используя только один конфигурационный файл. В Debian большая часть конфигурации создается автоматически, что значительно упрощает настройку сервера Samba.

Когда вы прочитаете эту инструкцию, вы будете знать как установить сервер Samba, как изменить глобальные настройки сервера Samba, как настроить новый общий ресурс, как настроить пользователя Samba и как подключиться к общей папке с другой машины.

Мы будем выполнять установку Samba Debian 10 Buster. Для установки нам потребуется доступ к системе с правами пользователя root. Команды которые начинаются с # — должны выполняться от имени root пользователя, или с применением инструкции sudo. Команды которые начинаются с $ могут выполняться от имени обычного не привилегированного пользователя.

Установка Samba в Debian 10

В Debian вы можете установить сервер Samba прямо из репозиториев. Установка выполняется с помощью одного пакета, потребуется выполнить лишь одну команду:

Настройка Samba в Debian

Настройки Samba находятся в файле /etc/samba/smb.conf. Этот файл содержит общие настройки для Samba, а также сведения об общих ресурсах. Обычно в Debian предоставляются неплохие настройки по умолчанию, которые позволяют начать работать немедленно, что в общем не мешает взглянуть на них и внести изменения там, где это необходимо.

1. Базовые настройки

Первое что вам встретится в верхней части группы глобальных настроек — настройка workgroup. Эта опция определяет имя рабочей группы Windows, частью которой станет ваш сервер. Значение по умолчанию — WORKGROUP, так как такое же значение, по умолчанию в задано в Windows. Если вы изменяли настройки рабочей группы в Windows, измените их также и здесь.

Следующая опция позволит ограничить доступ к вашему серверу. Если вы хотите ограничить доступ к общему ресурсу по ip адресу или маске сети, уберите символ комментария в строке где находится параметр interfaces, и укажите ip адрес или диапазон IP адресов, и интерфейс к которому они могут подключаться.

interfaces = 192.168.1.0/24 eth0

Если такой метод вам не нравится, вы можете добавить параметр hosts allow, чтобы определить, клиентов, которые могут подключаться к общему ресурсу. Укажите IP-адрес или диапазоны адресов.

hosts allow = 127.0.0.1/8 192.168.1.0/24

Остальные параметры из группы глобальных настроек имеют довольно обоснованные значения по умолчанию. Вам не потребуется изменять их для того чтобы запустить свои общие ресурсы. Но не стоит ограничиваться только рассмотренными нами опциями, вы можете исследовать и другие параметры, и настраивать их по своему усмотрению. Настройка Samba Debian 10 практически завершена, осталось создать общую папку и пользователя.

Читайте также:  Управление разделами в линукс

2. Создание общего ресурса

В конфигурационном файле, по умолчанию, уже присутствуют несколько настроек для общих ресурсов. Они дают вам возможность настроить совместное использование домашних папок пользователей системы и принтеров. А доступ к каталогу печати уже открыт. Измените значение параметра browseable на no.

Теперь попробуйте создать свой собственный общий ресурс. Существует масса опций, которые вы можете использовать для своего общего ресурса Samba, но в этом руководстве будут рассмотрены лишь наиболее используемые из них.

Во-первых, дайте имя своему общему ресурсу, и поместите это имя в скобки.

В следующей строке напишите краткий комментарий, описывающий общий ресурс.

Затем задайте путь, эквивалентный абсолютному пути к общей папке.

Выберите, будет ли папка отображаться в файловом менеджере или же ее нужно будет подключать вручную.

Хотите ли вы, чтобы пользователи имели права на запись в общий ресурс или могли подключить его только для чтения?

Смогут ли гости получить доступ к общему ресурсу? В терминах Samba гости — это анонимные пользователи, для которых не существует записи в настройках доступа к общему ресурсу. Если выразиться короче, хотите ли вы защитить общий ресурс паролем, или ограничить доступ к ресурсу только для отдельных пользователей?

Если гости не будут иметь доступ к общей папке, то у кого он будет?

valid users = имя_пользователя

Ну вот и все. Есть еще и другие опции и другие способы выполнить эти базовые шаги, но они дадут вам в итоге приблизительно тот же результат. Если вы точно знаете что вам нужно, этих опций вам будет достаточно. Если соединить все что мы написали выше — у нас получится что-то вроде этого:

[New Share]
comment = A new share
path = /home/newuser/share
browseable = yes
read only = no
guest ok = no
valid users = newuser

Сохраняем и закрываем файл. Затем перезагружаем Samba.

3. Создание пользователя

Для подключения к общей папке, если только вы не используете гостевой доступ, вам потребуется настроить учетные записи пользователей Samba. Это очень быстро, и потребует всего одной команды.

smbpasswd -a имя_пользователя

После этого вам будет предложено ввести пароль для этого пользователя. Это пароль, которым будут защищены доступные ему общие ресурсы.

Как подключиться к Samba

Есть несколько пакетов, которые вам понадобятся для того чтобы подключиться к общему ресурсу Samba. Установите их при помощи следующей команды.

sudo apt install samba-client cifs-utils

Теперь вы можете открыть файловый менеджер и перейти в раздел Сеть. Там вы увидите свой сервер, а также — общий ресурс, который вы только что настроили.

Выводы

Теперь вы знаете как выполняется установка Samba Debian 10 и готовы начать создавать собственные общие папки, а также настраивать к ним доступ с других компьютеров Linux. Ничего другого делать не нужно, и Samba автоматически запустится при загрузке Debian.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Оцените статью
Adblock
detector