Установка и настройка файлового Samba сервера на Centos

Октябрь17

Samba-logo

Возникла необходимость поднять дома файловый сервер. Выбор пал на Samba под Centos. Название довольно экзотичное и сразу же навевает мысли о Бразилии, их вечных праздниках танцев и карнавалах! Отличное название для скучной утилиты, авторы были большие оригиналы)

Но, перейдем к делу! Наша цель: на выходе иметь файловый сервер на Linux оси, где у каждого пользователя будет своя домашняя папка. Доступ к этой папке будет осуществляться через протокол SMB. Так же все пользователи должны иметь доступ к одному/нескольким паблик папкам с правами read/write — для возможности обмена информацией.

За дефолтные настройки сервера возьмем рандомные:  hostname: SMB.feanor184.ru с IP адресом 192.168.0.15

Для начала нам нужно поставить Centos( как установить Centos? ).

Отключаем SELinux

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

Открываем /etc/selinux/config:

nano /etc/selinux/config

Ставим SELINUX=disabled:

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Перезагружаем систему:

reboot

Установка Samba

Теперь приступаем непосредственно к установке самой Samba:

yum install cups-libs samba samba-common

Редактируем smb.conf:

nano /etc/samba/smb.conf

Секция [global] для того чтобы пользователи могли войти на Samba сервер:

# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.

        security = user
        passdb backend = tdbsam

Затем сделаем систему связи для автозапуска Samba:

chkconfig --levels 235 smb on
/etc/init.d/smb start

Добавляем Samba доступы

Создадим каталог для обмена файлами и дадим права:

mkdir -p /home/shares/allusers
chown -R root:users /home/shares/allusers/
chmod -R ug+rwx,o+rx-w /home/shares/allusers/

Теперь добавим его в /etc/samba/smb.conf:

[allusers]
  comment = All Users
  path = /home/shares/allusers
  valid users = @users
  force group = users
  create mask = 0660
  directory mask = 0771
  writable = yes

Если нужно чтобы у всех пользователей была возможность читать и писать в свои домашние каталоги через Samba, добавим следующие строки smb.conf (другие секции [homes] должны быть закомментированы!):

[homes]
   comment = Home Directories
   browseable = no
   valid users = %S
   writable = yes
   create mask = 0700
   directory mask = 0700

После изменений обязательно перезагружаем Samba:

/etc/init.d/smb restart

Добавление и управление пользователями

В примере добавляем пользователя Feanor:

useradd Feanor -m -G users

Установим пароль для нового пользователя( напр. 123456 ):

passwd 123456

Теперь добавим его в базу данных Samba:

smbpasswd -a Feanor

И наконец тестируем работу войдя в систему с десктопа при помощи файлового менеджера (проводника Windows) по адресу \\192.168.0.15 или \\192.168.0.15\Feanor. В качестве логина будет Feanor с выбранным вами ранее паролем( 123456 ).

Поделиться в соц. сетях

Метки:
Copyright © 2013-2017. All rights reserved.

Опубликованно Октябрь 17, 2014 by Feanor184 в категории Centos

Об Авторе

Постигаю Linux, учу Python, пытаюсь программировать)

2 комментарий(ев) к записи “Установка и настройка файлового Samba сервера на Centos

  1. Кирилл

    Учту.
    А мне нужно было прикрутить виндовую шару к линухе:
    Вдруг пригодиться.
    mount -t cifs -o noperm,username=домен/пользователь,password=пароль //172.16.0.0/обмен/’сетевая шара’ /mnt/shara

  2. Николай

    А после этих настроек попытаемся подключиться к общему ресурсу, /home/shares/allusers, например,из Linux Fedora и видим, что подключиться к ресурсу невозможно, а причины — не установлен и не настроен dnsmasq, или bind, не настроен ниFirewalld, или IPTables, не открыты порты 139/tcp и 445/tcp и самое главное, не определены ни рабочая группа ни домен и еще много, много, чего не сделано. Теперь для Кириллв, для того, чтобы автоматически смонтировать в Linux общий ресурс, надо сначала установить cifs-utils, а затем добавить в fstab следующую строку: //192.168.8.3/общая_папка /home/user/папка_для_монтирования cifs user=имя_пользователя,password=пароль,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0. Однако лучше для ввода логина и пароля использовать команду credentials, которая возьмёт логин и пароль из указанного файла.

Оставьте комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

=

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