Пятница, 23.06.2017, 23:36
# FreeBSD ГлавнаяРегистрацияВход
Приветствую Вас Гость | RSS
Меню сайта
Категории раздела
Мои статьи [167]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
 Каталог статей 
Главная » Статьи » Мои статьи

CentOS Samba установка и настройка с SELinux

В заметке рассматривается установка на CentOS Samba для совместного использования файлов по сети по протоколу smb.

В приведенном примере установка производилась на CentOS 6.2 с включенной опцией SELinux.

Базовая установка производится с помощью привычной команды yum:

#yum install samba

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

Расшариваемые настройки интуитивно понятны. Кроме настроек внизу файла советую обратить на строку

hosts allow = {кто_может_подключиться}

У меня значение установлено как 127. 192.168.0 - позволяет подключаться или самому себе или любым иннтерфейсам сети 192.168.0. (пустым местом можно считать классовую маску, здесь /24). Пользователи, подключающиеся через интерфейс, который смотрит в Internet не смогут получить доступ к Samba.

Пароли и пользователи в Samba

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

#cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd

Это не отменяет команду #smbpasswd username для установки пароля пользователя при подключении.

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

encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd

Это базовая настройка Samba на CentOS 6.2, расширенные опции всегда можно найти в документации или хелпе.

Samba и SELinux

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

Это вызвано действием SELinux, который по умолчанию включен. Необходимо указать контекст для SELinux по отношению к этим папкам. Для примера, общую расшаренную папку в CentOS можно пометить как:

chcon -R -t samba_share_t /{путь_к_общему_ресурсу}
ВНИМАНИЕ! Минус и тире - разные вещи :)

В случае, если необходимо расшарить доступ к домашним папкам пользователя, необходимо выполнить команду:

#setsebool -P samba_enable_home_dirs 1

это установка типа Boolean, соответственно, если вы хотите чтобы через Samba нельзя было получить доступ к домашним папкам в CentOS - просто выполните идентичную команду с 0 в конце.

Совмещение Apache и Samba

Если есть непосредственный доступ к Web-серверу CentOS, в случае работы над Web-проектом было бы удобно обращаться на прямую по сети с сайтом как с локальной папкой. Решением для этого может быть объединение прав на Самбу и Апач.

Однако, SELinux имеет разные контексты для работы двух демонов этих сервисов. Решением может быть применение общего контекста, который разрешен для обоих (вместо /var/www укажите место, где крутятся ваши сайты):

#chcon -R -t public_content_rw_t /var/www

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

#setsebool -P allow_smbd_anon_write 1


http://it-student.com.ua/verkhnee-menju/administrirovanie/centos-sabma-ustanovka-i-nastroika-s-selinux.html


Категория: Мои статьи | Добавил: Admin (03.01.2014)
Просмотров: 616 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2017Сделать бесплатный сайт с uCoz