Перейти к содержимому

Как сделать общую папку в centos

  • автор:

Создание общей папки в CentOS

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

Делаем папку общей в CentOS

Сразу отметим, что примененные сегодня изменения будут распространяться на все компьютеры локальной сети вне зависимости от установленной там ОС. То есть доступ к каталогу сможет получить пользователь ПК под управлением Windows или, например, macOS. Вся настройка происходит на том устройстве, где и находится та самая директория. Давайте начнем с первого шага.

Шаг 1: Установка и запуск Samba

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

  1. Откройте стандартную консоль, например, через иконку в меню приложений. Открытие терминала для предоставления общего доступа к папке в CentOS
  2. Введите там команду sudo yum install samba samba-common и нажмите на клавишу Enter. Команда для установки дополнительного инструмента Samba в CentOS
  3. Приставка sudo означает, что действие будет выполняться от имени суперпользователя, поэтому придется подтвердить подлинность учетной записи путем указания пароля. Подтверждение пароля для установки дополнительного инструмента Samba в CentOS
  4. Появится уведомление о намерении добавить новые пакеты в ОС, примите его, выбрав вариант y. Подтверждение добавления новых пакетов Samba в CentOS
  5. Для постоянной работы сервиса необходимо, чтобы он запускался вместе с CentOS. Добавьте его в автозагрузку с помощью sudo chkconfig —level 345 smb on . Добавить утилиту Samba в автозапуск CentOS
  6. После этого запустите службу Samba командой service smb start и переходите к следующему шагу. Запуск выполнения дополнительной утилиты Samba в CentOS

Шаг 2: Создание разрешений для Firewall

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

iptables -A INPUT -p udp -m udp -s 192.168.1.0/24 —dport 137 -j ACCEPT
iptables -A INPUT -p udp -m udp -s 192.168.1.0/24 —dport 138 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -s 192.168.1.0/24 —dport 139 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -s 192.168.0.0/24 —dport 445 -j ACCEPT

Открытие портов для настройки дополнительной утилиты Samba в CentOS

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

Шаг 3: Запуск конфига Samba и изучение параметров

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

  1. Мы советуем использовать удобный консольный текстовый редактор nano. По умолчанию он отсутствует в CentOS, поэтому инсталлируйте его, введя команду sudo yum install nano . Установка текстового редактора nano для редактирования Samba в CentOS
  2. Подтвердите действие, указав пароль от учетной записи суперпользователя. Ввод пароля для установки текстового редактора nano для Samba в CentOS
  3. Запустите конфигурационный файл, выполнив sudo nano /etc/samba/smb.conf . Запуск конфигурационного файла утилиты Samba в CentOS
  4. Теперь на экране отображается все содержимое файла. Редактирование содержимого конфигурационного файла Samba в CentOS

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

Правило Значение
workgroup Имя рабочей группы, в которую входит сервер
server string Краткое произвольное описание сервера
interfaces Сетевые интерфейсы, доступные для подключения к секции
hosts allow Хосты, которые могут получить доступ
hosts deny Запрещенные хосты
log file Файл, куда будут сохраняться все уведомления, коды ошибок к другие действия
max log size Максимальный размер указанного выше файла (после преодоления максимума создается новый файл)
security Способ проверки подлинности пользователей
guest account Ассоциация для гостевой учетной записи

Ниже вы видите пример оформления секции.

workgroup = WORKGROUP
server string = Samba Server %v
netbios name = centos
interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
hosts allow = 127. 192.168.12. 192.168.13.
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
map to guest = bad user

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

Теперь вы знаете об основных параметрах Samba и о том, как примерно выглядит секция — набор правил для определенной папки. Осталось только сделать такую группу. Если необходимый каталог еще не существует, создайте его с помощью команды mkdir /home/user/ashare , где /home/user/ashare — путь к директории и ее название.

  1. Запустите текстовый редактор nano, как это было показано в предыдущем шаге.
  2. Внесите изменения, например: [Folder]
    path = /tmp
    public = yes
    writable = yes
    printable = no
    write list = +staff Здесь Folder — название секции, path = /tmp — путь к папке, а все остальные параметры открывают полный доступ для всех участников локальной сети. Юзеры смогут не только просматривать содержимое, но и всячески редактировать его. После внесения изменений нажмите на Ctrl + O, чтобы сохранить их. Сохранение изменений конфигурационного файла Samba в CentOS
  3. Не меняйте имя файла для записи, а просто нажмите Enter. Отклонение изменений в названии конфигурационного файла Samba в CentOS
  4. Выйдите из текстового редактора через Ctrl + X. Выход из текстового редактора после редактирования Samba в CentOS
  5. Обновите конфигурацию, активировав service smb reload . Обновление конфигурации утилиты Samba в CentOS
  6. Проверьте работоспособность всех секций testparm -s /etc/samba/smb.conf . Проверка работоспособности всех параметров Samba в CentOS
  7. Если возникли какие-либо ошибки, потребуется перезагрузить сервис: service smb restart . Перезапуск сервиса Samba в CentOS

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

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

Теперь вы владеете информацией о том, как можно без каких-либо трудностей расшарить папку в CentOS. По завершении этой процедуры каталог появится на всех локальных устройствах. Например, путь на Windows будет иметь вид: \\linuxServer\Folder , где linuxServer — название родительской машины, а Folder — та самая папка.

Общие папки

4.Прописываем в smb.conf следующие параметры
Вводим команду, вставляем текст, нажимаем Enter и, затем, Ctrl+D.

cat >>/etc/samba/smb.conf
[global] dos charset = CP866 unix charset = utf8 display charset = cp1251 workgroup = WORKGROUP #имя рабочей группы server string = Filestore #имя сервера security = USER #группа пользователей map to guest = Bad User [Public] #имя ресурса path = /home/docstore #путь к папке read only = Yes guest ok = Yes browseable = yes writable = yes create mask = 0777 force create mask = 0777 directory mask = 0777

Перезапускаем сервис SMB:

service smb restart;service nmb restart
systemctl enable smb.service;systemctl enable nmb.service

Добавление второй папки

Делаем так же как и в первом шаге, только добавляем раздел с описанием второго ресурса ниже первого.

В первом примере у нас Public и папка docstore. Во втором будет Share и files.

mkdir /home/files;chmod 777 /home/files

2.Прописываем в smb.conf следующие параметры (без //комментариев)
Вводим команду, вставляем текст, нажимаем Enter и, затем, Ctrl+D.

cat >>/etc/samba/smb.conf
[Share] path = /home/files read only = Yes guest ok = Yes browseable = yes writable = yes create mask = 0777 force create mask = 0777 directory mask = 0777

3.Перезапускаем сервис SMB:

service smb restart;service nmb restart

Папка с паролем

Создадим пользователя в системе, имя пользователя share, его пароль 1q@W3e, при создании сделаем каталог пользователя (ключ -m) и зададим пароль (ключ -p).

# useradd -m share -p 1q@W3e

Назначим нового владельца, пользователя share, и несколько изменим разрешения:

mkdir /home/kadry;chmod 777 /home/kadry # chown -R share:users /home/kadry # chmod -R ugo+rwx /home/kadry

Примечание: Утилита smbpasswd находится в пакете samba-client

Добавляем пользователя в Samba (вводим пароль 1q@W3e):

smbpasswd -a share

Добавим в samba.cfg следущее:

[Kadry] comment = Кадры path = /home/kadry read only = no guest ok = no browseable= yes writable=yes create mask = 0777 directory mask = 0777 force user = share force group = users

Папка будет доступна пользователю share с паролем 1q@W3e.

Перезапускаем сервис SMB:

service smb restart;service nmb restart

Настройки соединения с сервером

GUI

Введите в адресной строке адрес хранилища:

smb://172.16.0.2

Введите, если нужно, пароль.

Примечание: при подключении с паролем автоматически прописывается рабочая группа WORKGROUP. Проверьте на сервере рабочую группу в файле /etc/samba/smb.conf.

Через командную строку

  • С паролем
mount -t cifs //172.16.0.2/kadry /mnt/share -o users,username=share,password="1q@W3e",file_mode=0777,dir_mode=0777
mount -t cifs //172.16.0.2/public /mnt/guest -o users,username=guest,password=,file_mode=0777,dir_mode=0777

Через Autofs

Источники:

  1. Общий каталог — создание, совместный доступ, подключение
  2. Простой Samba-сервер. Доступ всем на все.
  3. Samba доступ к папкам с паролем и без
  4. Включаем службу DHCP на ALT Linux 7.0 Server

Дополнительная информация

  1. Расшаривание каталогов обычным пользователем
  2. Пример настройки smb.conf для «файлопомойки»
  3. Монтирование_ресурса_Самбы_через_/etc/fstab
  4. Прозрачный доступ к samba-ресурсам с помощью smbnetfs
  5. Некоторые_типовые_проблемы_при_использовании_samba

Как расшарить папку в CentOS с помощью Samba

img

Привет! В сегодняшней статье я опишу как «расшарить» папку на CentOS сервере – то есть предоставить ей общий доступ без указания пароля. Сделать это возможно с помощью установки сервера Samba и нескольких дополнительных манипуляций.

Доступ будет производиться по протоколу SMB/CIFS (Server Message Block/Common Internet File System

Установка

Перед установкой необходимо понять, в каком статусе у вас находится SELinux – для этого нужно выполнить команду selinuxenables && echo enabled || echo disabled . В случае если результат такой же, как на скриншоте ниже – можете смело приступать непосредственно к самому процессу установки (ниже):

Как расшарить папку в CentOS с помощью Samba

В противном случае, вам необходимо будет его отключить – для этого откройте конфигурационный файл по пути /etc/selinux/config любым текстовым редактором – например, Vi — vi /etc/selinux/config и поставьте значение SELINUX в положение disabled и выполните перезагрузку системы командой reboot

SELinux – дополнение к стандартной системе контроля доступа Linux, но его настройка довольна трудоёмка и оно включено по умолчанию. Без каких-либо манипуляций SELinux часто может блокировать изменения, вызываемые при запуске различных служб или программ.

Далее приступаем к установке Samba сервера. Для этого нужно выполнить команду:

yum install samba samba-common cups-libs samba-client

Теперь создадим папку – вводим команду mkdir –p /root/SHAREDFOLDER (имя папки и директория, соответственно, могут быть произвольными).

Далее устанавливаем на неё права:

chown –R root:users /root/SHAREDFOLDER chmod –R 775 /root/SHAREDFOLDER
Конфигурация

Открываем текстовым редактором основный файл конфигурации Samba – воспользуемся Vi: vi /etc/samba/smb.conf .

В данном файле необходимо проверить чтобы в секции global присутствовали следующие строки:

[global] security = user passdb backend = tdbsam workgroup = MYGROUP map to guest = Bad User server string = Samba Server Version %v

Затем закомментируйте (проставьте точку с запятой) перед аргументами в разделах [homes] (доступ к гостевым директориям) и в [printers] (доступ к принтерам).

Теперь добавьте конфиг для вашей созданной папке, выглядеть это должно следующим образом:

[SHAREDFOLDER] comment = Everybody has access path = /root/SHAREDFOLDER force group = users create mask = 0666 directory mask = 0777 writable = yes guest ok = yes browseable = yes

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

chkconfig –levels 235 smb on /etc/init.d/smb restart

Помните – Samba использует порты 137, 138, 139 и 445. Эта информация вам может понадобится при пробросе портов и настройке iptables.

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

Как сделать общую папку в linux, настройка samba

Сегодня я покажу как можно расшарить папки в Ubuntu для домашних сетей, что бы можно было заходить в ваши папки в linux, например с компьютера с Windows.

sudo apt-get update sudo apt-get install samba

После того как samba будет установлена нужно поправить конфиг. Для этого набираем:

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak sudo nano /etc/samba/smb.conf

В файл вставляем следующие строчки:

[global] workgroup = WORKGROUP server string = servername netbios name = SERVERNAME #servername замените на имя вашего хоста log file = /var/log/samba/%m.log max log size = 50 security = user #запрещаем гостевой доступ map to guest = Bad User dns proxy = no # следовать по симлинкам unix extensions = no wide links = yes follow symlinks = yes # utf кодировка dos charset = cp866 unix charset = UTF8 # отключаем принтеры load printers = no show add printer wizard = no printcap name = /dev/null disable spoolss = yes # можно ограничить доступ по адресам/сетям # hosts allow = 127. 192.168.24. # по умолчанию все файлы, начинающиеся с точки будут иметь атрибут "скрытый" hide dot files = yes #добавляем шару #название общей папки [system_trash] #путь до нее path = /mnt/system_trash guest ok = no read only = no browsable = yes writeable = yes

Далее нужно посмотреть что бы имени вашего хоста соответствовал ip адрес этого хоста:

sudo nano /etc/hosts

Здесь должна быть строчка вида:

192.168.1.100 servername

После этого сохраняем файл (в нано комбинация клавиш ctrl+x) и перезапускаем самбу:

sudo /etc/init.d smbd restart sudo /etc/init.d samba restart

Далее нужно добавить пользователя в пользователи samba (пользователь должен существовать в системе). Добавим нового пользователя в систему и самбу:

sudo adduser user sudo smbpasswd -a user

После того как пользователь будет добавлен можно пробовать зайти на нашу шару с виндовой машины. Вводим логин и пароль пользователя. Должна будет открыться наша шара.

Для справки — что бы посмотреть пользователей samba нужно набрать команду:

sudo pdbedit -L -v

Что бы удалить пользователя Samba:

sudo smbpasswd -x user

Добавить комментарий

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