opened image

Как поднять Samba сервер на Linux и подключиться к нему из Windows Server 2019

Samba - это набор программного обеспечения с открытым исходным кодом, который обеспечивает файловые и печатные сервисы для клиентов Windows, Linux и macOS. Он позволяет серверам на базе Linux обмениваться файлами и принтерами с клиентами на базе Windows и наоборот. В этой статье мы расскажем, как настроить сервер Samba на Linux и подключиться к нему из Windows Server 2019.

Установка Samba на Linux

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

sudo apt-get install samba

 

Если вы используете CentOS или Red Hat Enterprise Linux, вы можете установить Samba, выполнив следующую команду:

sudo yum install samba

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

sudo systemctl start smbd

 

Настройка Samba

Файл конфигурации Samba находится в /etc/samba/smb.conf. Вы можете изменить этот файл, чтобы определить общие ресурсы, которые вы хотите сделать доступными для клиентов Windows.

Чтобы создать новый общий ресурс, добавьте следующий раздел в файл smb.conf:


 

[share_name]
   comment = Share description
   path = /path/to/share
   browsable = yes
   guest ok = no
   read only = no
   create mask = 0755
   directory mask = 0755

Замените share_name на имя ресурса и //path/to/share на путь к директории, которую вы хотите общаться.

Поле comment является необязательным описанием общего ресурса, которое будет отображаться для пользователей. Поле browsable определяет, является ли общий ресурс видимым в сети Windows. Поле guest ok позволяет анонимный доступ к общему ресурсу, если установлено значение yes, а read only указывает, могут ли клиенты изменять файлы в общем ресурсе или нет.

Поля create mask и directory mask указывают на стандартные права доступа для новых файлов и директорий, созданных в общем ресурсе.

После внесения изменений в файл smb.conf вы можете проверить конфигурацию, выполнив следующую команду:

sudo testparm

Эта команда проверит файл smb.conf на наличие ошибок и выведет текущую конфигурацию Samba.

 

Также перезапускаем сервис smb если данные не подтянулись:

systemctl restart smbd

Создание пользователей Samba

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

sudo smbpasswd -a username

Замените username на имя пользователя, которое вы хотите создать. При выполнении этой команды вы будете переведены в режим ввода пароля для пользователя.

Но перед этим необходимо создать UNIX пользователя, которого хотим добавить. Воспользуемся командой:

 

useradd user1

Где user1 пользователь которого хотим добавить для Samba.

 

Подключение к серверу Samba из Windows Server 2019

Чтобы подключиться к серверу Samba из Windows Server 2019, выполните следующие шаги:

  1. Откройте "Проводник" на Windows Server 2019.
  2. Нажмите правой кнопкой мыши на пустой области окна и выберите "Сетевое подключение".
  3. Введите адрес сервера Samba в адресной строке в формате \\адрес_сервера, заменив адрес_сервера на IP-адрес или имя сервера Samba.
  4. Нажмите "Enter". Если вы настроили анонимный доступ к общему ресурсу, вы можете получить доступ без аутентификации. В противном случае Windows попросит вас ввести имя пользователя и пароль, которые вы создали на сервере Samba.

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

Заключение

Samba - мощный инструмент для обмена файлами и принтерами между серверами на базе Linux и клиентами на базе Windows. Настройка сервера Samba на Linux может потребовать некоторых знаний в области сетевых протоколов и конфигурации, но в целом это достаточно простой процесс. Подключение к серверу Samba из Windows Server 2019 требует минимальной конфигурации и позволяет работать с общими ресурсами на сервере Samba, как если бы они были локальными.