Lumpics lumpics.ru

Настройка Samba в CentOS 7

Файловый сервер (ФС) в операционных системах Linux может быть использован для разных целей, однако в большинстве случаев он задействован при создании локальной сети и общих папок с компьютерами на базе Windows. Самым популярным ФС на текущий момент времени по праву считается Samba. Она предустановлена во многих дистрибутивах, а опытные юзеры предпочитают именно этот инструмент в качестве основного при необходимости использования файловых серверов. Сегодня речь пойдет об инсталляции и настройке этого компонента в CentOS 7.

Настраиваем Samba в CentOS 7

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

Шаг 1: Подготовительные работы в Windows

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

  1. Откройте «Пуск», через поиск отыщите «Командную строку» и запустите это приложение от имени администратора.
  2. Переход к командной строке Windows для дальнейшей настройки Samba в CentOS 7
  3. Введите команду net config workstation, чтобы узнать текущую конфигурацию рабочей станции. Активируйте действие нажатием на клавишу Enter.
  4. Команда для определения домена рабочей станции перед настройкой Samba в CentOS 7
  5. Дождитесь появления списка. В нем отыщите пункт «Домен рабочей станции» и запомните его значение.
  6. Определение домена рабочей группы перед настройкой Samba в CentOS 7
  7. В этой же сессии консоли введите строку notepad C:\Windows\System32\drivers\etc\hosts, чтобы открыть необходимый файл через установленный по умолчанию «Блокнот».
  8. Запуск блокнота для настройки общего доступа в Windows перед настройкой Samba в CentOS 7
  9. Опуститесь в конец списка и вставьте строку 192.168.0.1 srvr1.domain.com srvr1, заменив этот IP на адрес устройства, где дальше будет настраиваться Samba. После этого сохраните все изменения.
  10. Настройка общего доступа в Windows перед настройкой Samba в CentOS 7

На этом все действия с компьютером на Windows заканчиваются, а это значит, что можно переходить к CentOS 7 и заняться непосредственной конфигурацией файлового сервера Samba.

Шаг 2: Инсталляция Samba в CentOS 7

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

  1. Откройте консоль удобным для вас образом, например, через меню приложений или стандартную комбинацию клавиш Ctrl + Alt + T.
  2. Запуск терминала для дальнейшей установки Samba в CentOS 7
  3. Здесь введите sudo yum install -y samba samba-common python-glade2 system-config-samba, чтобы запустить одновременную инсталляцию всех требуемых дополнительных утилит.
  4. Команда для комплексной установки компонентов Samba в CentOS 7
  5. Введите пароль суперпользователя, чтобы подтвердить данное действие. Учитывайте, что написанные в данной строке символы не отображаются.
  6. Ввод пароля для подтверждения комплексной установки компонентов Samba в CentOS 7
  7. Вы будете уведомлены о том, что начался процесс установки. Во время этого не закрывайте «Терминал», иначе все настройки будут автоматически сброшены.
  8. Ожидание завершения комплексной установки Samba в CentOS 7
  9. По завершении операции появятся строки, сообщающие о том, что установлены необходимые утилиты и их зависимости — можно переходить далее.
  10. Информация об успешном завершении комплексной установки Samba в CentOS 7

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

Шаг 3: Установка глобальных параметров

Samba инсталлируется в ОС в «чистом виде», а это значит, что сейчас не заданы параметры, определяющие ее поведение. Их придется устанавливать самостоятельно, а начать стоит с главной конфигурации. Мы предлагаем воспользоваться стандартным шаблоном, заменив некоторые пользовательские строки.

  1. Иногда Samba устанавливается с чистым конфигурационным файлом, однако в нем все же могут уже быть заданы какие-то параметры. Давайте сначала создадим резервную копию этого объекта, чтобы в случае чего быстро восстановить ее. Осуществляется эта задача путем ввода sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak.
  2. Команда для создания резверной копии файла настроек Samba в CentOS 7
  3. Это действие, как и все последующие, придется подтвердить, указав пароль суперпользователя.
  4. Подтверждение команды для создания резервной копии файла настроек Samba в CentOS 7
  5. Следующие манипуляции будут производиться непосредственно с самим конфигурационным файлом. Для этого всегда используется текстовый редактор. По стандарту в систему добавлен vi, но он не является достаточно удобным для начинающих пользователей, поэтому мы рекомендуем инсталлировать nano через команду sudo yum install nano.
  6. Запуск установки текстового редактора перед настройкой Samba в CentOS 7
  7. Если nano уже добавлен в ОС, вы будете уведомлены об этом.
  8. Информация об успешной установке текстового редактора перед настройкой Samba в CentOS 7
  9. Теперь перейдем к редактированию конфигурационного файла, введя sudo nano /etc/samba/smb.conf.
  10. Переход к редактированию файлового сервера Samba в CentOS 7 через текстовый редактор
  11. В открывшемся окне введите расположенное ниже содержимое.

    [global]
    workgroup = WORKGROUP
    server string = %h server (Samba, Ubuntu)
    netbios name = Ubuntu Share
    dns proxy = no
    log file = /var/log/samba/log.%m
    max log size = 1000
    passdb backend = tdbsam
    unix password sync = yes
    passwd program = /usr/bin/passwd %u
    pam password change = yes
    map to guest = bad user
    usershare allow guests = yes

  12. Установка общей конфигурации файлового сервера Samba в CentOS 7
  13. Нажмите сочетание клавиш Ctrl + O, чтобы записать изменения.
  14. Сохранение общей конфигурации файлового сервера Samba в CentOS 7
  15. Не изменяйте название файла, а просто нажмите на Enter.
  16. Подтверждение сохранения общей конфигурации файлового сервера Samba в CentOS 7
  17. После этого можно покинуть окно текстового редактора, зажав Ctrl + X.
  18. Выход из текстового редактора по завершении настройки файлового сервера Samba в CentOS 7

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

Параметр Описание
workgroup Этот параметр определяет имя рабочей группы. Его значение выставляется в соответствии с определенной в Windows информацией
netbios name Поменяйте значение на произвольное имя, которое хотите, чтобы отображалось на ПК под управлением Windows при взаимодействии с данным устройством
log file В качестве значения этого параметра укажите путь к файлу, где хотите хранить журналы событий, записывающиеся во время функционирования файлового сервера
passdb backend Эта опция определяет тип хранения паролей. Если вы не знаете, что именно здесь задать, лучше оставьте этот пункт в значении по умолчанию
unix password sync Рекомендуется активировать этот параметр, поскольку он отвечает за синхронизацию паролей
map to guest Используется для обозначения гостевого доступа. Имеет несколько значений: bad user применяется для несуществующих учетных записей, bad password загружает гостевой режим при неверном вводе пароля, а never попросту деактивирует опцию

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

Шаг 4: Создание общедоступного каталога

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

  1. В «Терминале» введите sudo mkdir -p /samba/allaccess, чтобы создать упомянутую выше папку. Измените ее название на произвольное, если это требуется.
  2. Создание папки для общего доступа к файловому серверу Samba в CentOS 7
  3. Приступайте к настройке общего доступа, изначально переместившись по пути cd /samba.
  4. Переход к редактированию созданной общедоступной папки в Samba в CentOS 7
  5. Здесь вставьте строку sudo chmod -R 0755 allaccess и нажмите на Enter.
  6. Установка уровня доступа для созданной папки Samba в CentOS 7
  7. Еще один параметр sudo chown -R nobody:nogroup allaccess/ отвечает за предоставление доступа абсолютно всем пользователям.
  8. Дополнительная команда для установки уровней доступа к папке Samba в CentOS 7
  9. Теперь потребуется обозначить данную папку в конфигурационном файле. Для начала запустим его через sudo nano /etc/samba/smb.conf.
  10. Переход к добавлению общедоступной папки в конфигурационный файл Samba в CentOS 7
  11. Вставьте в конец или начало файла расположенный ниже блок. О значении каждой строки мы поговорим немного позднее, чтобы вы разобрались с установкой индивидуальных значений.

    [allaccess]
    path = /samba/allaccess
    browsable = yes
    writable = yes
    guest ok = yes
    read only = no

  12. Внесение изменений в конфигурационный файл после создания общедоступной папки Samba в CentOS 7
  13. Сохраните изменения и покиньте текстовый редактор.
  14. Сохранение конфигурационного файла Samba в CentOS 7 после внесения изменений
  15. Все настройки будут применены только после перезапуска файлового сервера, поэтому сделайте это прямо сейчас, написав sudo systemctl restart samba.
  16. Перезапуск файлового сервера Samba в CentOS 7 после внесения изменений

После того, как все необходимые общедоступные директории будут созданы, рекомендуется проверить их работоспособность в Windows, введя там команду \\srvr1\allaccess. Теперь давайте затронем указанные выше параметры:

Параметр Описание
path Здесь вписывается путь к той самой папке, которая выбрана общедоступной
browsable Активация этого параметра позволит отображать каталог в списке разрешенных
writable Указанную папку можно будет редактировать, если значение этого параметра указано как yes
guest ok Активируйте этот пункт, если хотите предоставить общий доступ к папке
read only Используйте положительное значение этого параметра, чтобы установить значение папки «Только для чтения»

Шаг 5: Создание защищенного каталога

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

  1. Создадим директорию, которую далее будем настраивать, воспользовавшись командой sudo mkdir -p /samba/allaccess/secured.
  2. Создание защищенной папки для файлового сервера Samba в CentOS 7
  3. Добавьте группу, куда будут входить разрешенные пользователи, через sudo addgroup securedgroup.
  4. Создание группы для доступа к защищенной папке Samba в CentOS 7
  5. Перейдите расположению защищенного каталога, указав cd /samba/allaccess.
  6. Переход к редактированию защищенной папки Samba в CentOS 7
  7. Здесь задайте права для каждого отдельного пользователя через sudo chown -R richard:securedgroup secured. Замените имя richard в этой команде на необходимое.
  8. Создание правил для защищенной папки файлового сервера Samba в CentOS 7
  9. Осталось только ввести общую команду для безопасности sudo chmod -R 0770 secured/.
  10. Создание правил для пользователей защищенной папки Samba в CentOS 7
  11. Перейдите к конфигурационному файлу (sudo nano /etc/samba/smb.conf), чтобы указать ту папку, которую мы только что настроили.
  12. Переход к редактированию конфигурационного файла Samba в CentOS 7 для добавления защищенной папки
  13. Скопируйте и вставьте в редактор указанный ниже блок.

    [secured]
    path = /samba/allaccess/secured
    valid users = @securedgroup
    guest ok = no
    writable = yes
    browsable = yes

  14. Внесение изменений в конфигурационный файл после создания общедоступной папки Samba в CentOS 7
  15. Сохраните изменения и закройте текстовый редактор.
  16. Сохранение конфигурационного файла после добавления защищенной папки Samba в CentOS 7
  17. Добавьте все учетные записи в соответствующую группу через sudo usermod -a -G securedgroup richard.
  18. Добавление пользователя в группу защищенной директории Samba в CentOS 7
  19. Установите для каждой из них пароль sudo smbpasswd -a richard в качестве последнего действия, завершающего конфигурацию.
  20. Создание пароля для пользователя защищенной директории Samba в CentOS 7

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

Обсудить в TelegramНаш Telegram каналТолько полезная информация
Автор статьи Вы на сайте: Статья обновлена: . Автор: Виктор Бухтеев

Вам помогли мои советы?

Получить ответ на Email
Уведомить о

1 Ответ
По рейтингу
Новые Старые
Межтекстовые Отзывы
Посмотреть все комментарии
Аноним
23 октября 2023 21:08

Спасибо!!!! Полчаса искала способ! Не нашла бы без вашего ответа)

Задать вопрос