Ubuntu настройка за контрол на достъпа до samba. Файлов сървър за Windows.

самба  - програма, която ви позволява достъп до мрежови устройства на различни операционни системи чрез SMB / CIFS протокол. Той има клиентски и сървърни части. Това е свободен софтуер, издаден под лиценза GPL.

самба  Той работи на повечето Unix-подобни системи, като GNU / Linux, POSIX-съвместими Solaris, и Mac OS X Server, на различни BSD варианти, на OS / 2, Windows. самба  включени в почти всички GNU / Linux дистрибуции, включително, разбира се, в Ubuntu.

монтаж

За да направите споделена папка в Ubuntu Desktop, просто щракнете с десния бутон върху папката и изберете елемента от менюто "Публикуване на папка". Не трябва да се редактират конфигурационни файлове. Всичко описано по-долу се отнася само за ръчна конфигурация, например в случай на създаване на файлов сървър.

За да инсталирате, просто отворете терминала и въведете:

Sudo apt-get install samba

Приложението ще бъде автоматично изтеглено и инсталирано.

регулиране

Използвайки терминала, ще направим резервно копие на първоначалния конфигурационен файл:

Sudo cp /etc/samba/smb.conf(,.bak)

Сега можете да редактирате файла с настройки /etc/samba/smb.conf, за да го направите, да го отворите във всеки текстов редактор с привилегии на root. Например:

Sudo nano /etc/samba/smb.conf

Написано по-общо казано само един специфичен сценарий за използване на Samba, а в голям брой случаи всичко е конфигурирано напълно погрешно. Статията трябва да бъде коригирана, като се фокусира върху възможностите на Samba, а не само върху използването на тази програма като съхранение на файлове с местно разрешение. Пример за едно и също съхранение на файлове е по-добре да се направи отделна подробна статия.

Пример за конфигуриране на Samba като самостоятелен файлов сървър с разрешение:

; Глобални настройки на сървъра; Общи настройки на сървъра; Името на компютъра, който ще се показва в мрежовата среда Netbios name = main-string string =; Клиентска работна група = WORKGROUP обяви версия = 5.0 опции за сокети = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF = 8192 SO_SNDBUF = 8192 passdb backend = tdbsam security = потребителски нула пароли = true; Файл за псевдоним потребителски имена username map = / etc / samba / smbusers ред поръчка = hosts печели bcast; support support е настроена на yes, ако вашият nmbd (8) в Samba е WINS сървър. Не задавайте този параметър да да, ако нямате няколко подмрежи и не искате nmbd да работи като WINS сървър. Никога не задавайте този параметър на yes на повече от една машина в същата подмрежа. печели подкрепа = не; Отпечатване на поддръжка на принтера = CUPS printcap name = CUPS; Лог файл log = /var/log/samba/log.%m syslog = 0 само syslog = не; Конфигуриране на свързване към интерфейси, на които да се слуша, ако не е посочено, че слуша всички интерфейси; интерфейси = lo, eth0; само bind интерфейси = true; ; ; path = / var / lib / samba / принтери; browseable = yes; guest ok = yes; само за четене = да; напишете списък = root; create mask = 0664; директория маска = 0775; ; ; path = / tmp; printable = yes; guest ok = yes; browseable = no; ; path = / media / cdrom; търси се = yes, read only = yes; guest ok = yes; Твърд диск; Името на топките, видими от клиентите; Път до пътя на споделения диск = / media / sda1; Мога ли да разглеждам browseable = yes only read = няма гост ok = не създава маска = 0644 маска = 0755; Свързване към конкретно потребителско име или група, имена, разделени с интервали; force user = user1 user2; сила група = група 1 група2; Друг твърд диск, по аналогия с факта, че по-горе path = / media / sde1 browseable = да чете само = няма гост ok = не създава маска = 0644 директория маска = 0755

Сега трябва да се справим с потребителите.

Samba използва потребители, които вече са в системата, вземат например името на потребителя, да речем, че вече съществува в системата, трябва да го въведете в SMB базата данни и да зададете парола за достъп до споделените ресурси, ние ще направим това с командата:

Smbpasswd - потребител

Ще бъдете подканени да въведете парола, потребителят ще бъде добавен към базата данни, сега трябва да активирате този потребител.

Потребител-потребител

След това създайте псевдоним за потребителското име на потребителя, за да улесните достъпа от машината на Windows, на която има потребител Admin, например, създайте и редактирайте файла / etc / samba / smbusers:

Sudo докоснете / etc / samba / smbusers sudo gedit / etc / samba / smbusers

Напишете няколко реда в файла.

   # Unix_name = SMB_name1 SMB_name2 потребител = Админ

Това завършва настройката, рестартирайте Samba.

Можете да инсталирате най-простия GUI за Samba с командата:

Sudo apt-get install system-config-samba

Стартира се от командата:

Sudo system-config-samba

Той записва всички промени в конфигурационния файл на samba.

За отдалечено администриране на Samba като уеб интерфейс за Samba е перфектно

самба- пакет от програми, които позволяват достъп до мрежови устройства и принтери на различни операционни системи чрез SMB / CIFS протокол. Той има клиентски и сървърни части. Това е свободен софтуер, издаден под лиценза GPL.

Започвайки с версия 3, Samba предоставя услуги за файлове и печат за различни клиенти на Microsoft Windows и може да се интегрира с операционната система Windows Server, или като основен домейн контролер (PDC), или като член на домейн. Може също да бъде част от домейн на Active Directory.

Samba работи на повечето Unix-подобни системи, като Linux, POSIX-съвместими Solaris и Mac OS X Server, на различни BSD варианти. Samba е включена в почти всички Linux дистрибуции.

Инсталирането на Samba сървър се извършва от командата

# apt-get install samba

Samba сървър, който може да осигури достъп до споделени папки, използвайки SMB протокол. Достъпът може да бъде осигурен както с парола, така и без парола.

Обмислете опции за конфигуриране на Samba сървъра.

Конфигурирайте без парола достъп до споделените папки.

Отворете файла /etc/samba/smb.conf и го попълнете както следва:

workgroup = WORKGROUP

hosts allow = 192.168.7.0/24

интерфейси = eth0

max log size = 1000

syslog = 0

гост акаунт = никой

сигурност = споделяне

dos charset = cp866

unix charset = UTF-8

path = / var / local

comment = споделяне

печат = не

writable = yes

guest ok = да

create mask = 0666

директория маска = 0777

Сега разгледайте подробно конфигурационния файл.

Секцията Global описва общите настройки за работа на сървъра.

работна група  - записваме името на нашата работна група или домейн

домакините позволяват  - описваме подмрежата, която ще има достъп до нашия сървър

интерфейси  - изброяваме мрежовите интерфейси, по които ще се приемат връзки (всичко е възможно)

log file = /var/log/samba/log.%m

max log size = 1000

syslog = 0

Тези променливи описват параметрите за логване на нашия Samba сървър.

акаунт за гости  - задаване на кореспонденция между гост-потребителя и ползвателя на системата

сигурност = споделяне  - използва се в случай на настройка на достъп без парола.

dos charset  - обозначава кодирането, в което Samba ще комуникира с клиенти, които не поддържат Unicode

unix charset - указва кодирането на компютъра, на който работи самба


път  - път към папката на сървъра

коментар  - име на мрежова папка

писане  - дали е позволено писане в споделена папка

гост добре  - Достъпът на госта е разрешен

създайте маска  - описва правата за новосъздадения файл

директория маска  - описва правата за новосъздадената директория

След създаване на нашия конфигурационен файл, трябва да рестартирате услугата Samba.

#service restart рестартиране


Сега можете да проверите връзката с нашия файлов сървър от всеки компютър в мрежата.

За да направите това в Windows, отворете връзката в explorer   samba-ip

или в Linux изпълняваме командата в конзолата

smbclient -L samba-ip -N


В последния случай ще се покаже списъкът на споделените папки на нашия сървър.


Конфигуриране на парола за достъп до споделени папки.

Нека променим някои параметри в раздела Глобално.

Или по-скоро вместо сигурност = споделянепиша   security = потребител

Също така трябва да направите промени в раздела за описание на споделената папка. Изтрийте реда   guest ok = да

и добавете линията

напишете списък = user1

Където user1 е потребителят, който има пълен достъп до папката.

Сега трябва да създадете user1 в системата

#adduser user1


и добавете потребител на системата към потребителите на samba

#smbpasswd -а потребител1


Обърнете внимание! Потребителската парола в системата и потребителската парола за ресурсите на Samba може да са различни.


Сега достъпът до нашата споделена папка ще бъде с парола.

Ако стартирате втория потребител по подобен начин, то той ще има достъп до тази папка само за четене.


Можете напълно да ограничите достъпа на потребителя2 до нашата споделена папка. За да направите това, на сървъра се създава група, например, споделяне

#addgroup споделяне


И user1 се добавя към тази група.

#addgroup споделяне на потребител1

#chmod 770 / var / local

И собственикът на папката се променя

#chgrp споделяне / var / local /


Сега user2 изобщо няма да може да влезе в нашата споделена папка.


Здравейте, скъпи читатели. Файлов сървър на SAMBA позволява значително опростяване на обмена на файлове в локалната мрежа, както на работното място, така и у дома. Технологията SAMBA ви позволява да се свържете към файлов сървър като мрежово устройство, което се показва в “Моят компютър” на Windows системи, което прави този подход много удобен.

Първо трябва да инсталирате необходимите пакети, като изпълните следната команда в терминала:

Sudo apt-get инсталира samba samba-общ libcups2

Вашата парола ще бъде поискана, програмата ще ви попита дали наистина искате да извършите инсталацията. Въведете паролата и отговорете утвърдително на въпроса.

След като инсталацията приключи, преминете към конфигурацията. Конфигурационният файл smb.conf се намира в директорията / etc / samba. Отворете го с всеки удобен текстов редактор. Ще използвам нано редактора:

Първо трябва да намерите линията #security = user и да премахнете символа за коментар (първия знак) от него. Факт е, че ако в началото на реда има знак "#", той се смята за коментар, което означава, че е напълно игнориран от програмата. С премахването на маркера за коментар направихме тази линия видима за програмата. Той показва, че потребителите на системата от групата потребители ще получат достъп до файловия сървър.

Трябва да укажете мрежовото име на файловия сървър, като използвате него, можете да се свържете със сървъра на самба като мрежово устройство:

  // мрежово име / папка

В конфигурационния файл името на мрежата се задава чрез параметъра netbios name. Ще се обадя на файловия сървър Ubuntu, но можете да изберете име, което е по-удобно за вас.

Netbios name = Ubuntu

По подразбиране този параметър може да не е в файла с настройките и ако липсва, просто го добавяте към секцията.

Ако ще използвате файловия сървър във връзка с ActiveDirectory, препоръчително е да предотвратите превръщането на samba в браузър на домейн. Можете да направите това, както следва:

Местен капитан = не
домейн капитан = не
предпочитан капитан = не

За да увеличите скоростта на връзката със сървъра, можете да добавите следния ред:

Опции на сокета = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF = 8192 SO_SNDBUF = 8192

На този етап можете да завършите общата конфигурация на сървъра. Запишете конфигурационния файл (в nano, това може да стане с натискане на Ctrl + O) и излезете от редактора на текст (в nano това може да се направи, като натиснете Ctrl + X). За да влязат в сила настройките, първо трябва да изпълните демона на файловия сървър:

Сега трябва да подготвите директорията за съхраняване на файлове и да им зададете права. Ще използвам две директории: обществени и домове. Публичният указател ще бъде достъпен за четене и писане на абсолютно всички потребители от групата потребители, когато в домовете потребителите ще могат да пазят личните си файлове недостъпни дори за четене на всички, освен на самите тях. В самата система файловете на директорията на домовете ще се съхраняват в домашните директории на потребителите. Затова трябва само да създадем папка за съхраняване на публични файлове. Така че нека да започнем:

Sudo mkdir -p / home / samba / public
sudo chown -R root: потребители / начало / samba / public
sudo chmod -R ug + rwx, o + rx-w / home / samba / public

Сега трябва да отворите отново конфигурационния файл в текстов редактор:

Sudo nano /etc/samba/smb.conf

Разделът трябва да бъде представен по следния начин:


comment = Всички потребители
path = / начало / samba / public
валидни потребители = @users
force group = потребители
create mask = 0660
директория маска = 0771
writable = yes

Ако използвате друга потребителска група или сте създали друга папка за съхраняване на публични файлове, трябва да замените валидните потребителски, групови и пътни стойности с вашите собствени.

Остава да се промени секцията, тя трябва да има следната форма:


comment = Начало директории
browseable = не
валидни потребители =% S
writable = yes
create mask = 0700
директория маска = 0700

За да влязат в сила промените, трябва отново да запазите конфигурационния файл и да рестартирате демона на samba:

Sudo /etc/init.d/smbd рестартиране

Файловият сървър трябва да е наличен в локалната мрежа, можете да добавите нов потребител за достъп до файловия сървър, като използвате командата:

Създайте потребителско име и потребителско име -m -G потребители

В резултат на изпълнението на командата в системата ще бъде добавен нов потребител с файл на сървъра, който има достъп до файловете.

Можете да зададете парола за потребител (ако не сте го направили преди) с командата:

Sudo passwd потребителско име

Samba е софтуер за организиране на споделяне на файлове и работа с споделени ресурси между компютри, работещи под Linux / Unix и операционната система Windows. Samba се състои от клиентски и сървърни части. Клиентската част ви дава достъп до мрежовите папки и ресурси на Windows, а сървърната част от своя страна осигурява общ достъп до папката Ubuntu за други машини, включително Windows.

Този малък урок ще обхване най-простата конфигурация на Samba Ubuntu 16.04, както и как да настроите споделен достъп до папката Ubuntu с няколко нива на привилегии.

Ще създадем три споделени папки с различни нива на разрешения. Анонимна папка за достъп с достъп за потребители в определена група и достъп само за определен потребител.

Както Linux, така и Widnows машини ще имат достъп до споделени папки в Ubuntu, използвайки всяка програма за SMB протокол.

Подготовка на Windows

За да може всичко да работи правилно, всички машини трябва да са в една и съща работна група, изброени на сървъра Samba. По подразбиране за Windows, Linux и MacOS работните групи се наричат ​​Workgroup. За да разберете коя работна група се използва в Windows, отворете командния ред (Win + R, след това cmd) и изпълнете следната команда:

мрежа за конфигуриране


Виждаме параметъра, от който се нуждаем в линията Домейн на работната станция, Това е работната група.

Сега, ако компютър с Samba сървър във вашата мрежа има постоянен IP адрес, желателно е да го въведете във файла hosts. За да направите това, изпълнете командния ред като администратор:


И изпълнете командата:

notepad C: Windows System32 драйвери и др

В отворения файл добавете ред с IP адреса на компютъра, на който ще бъде инсталиран Samba:

192.168.0.1 srvr1.domain.com srvr1

Сега можете да отидете на въпроса как да споделите папката на Ubuntu.

Настройка на Samba в Ubuntu 16.04

Да започнем както обикновено с инсталацията. Инсталирането на Samba Ubuntu заедно с всички необходими компоненти се извършва с командата:

sudo apt-get install -y samba samba-обща python-glade2 system-config-samba

Когато всичко е инсталирано, можете да преминете към настройката. Първо, архивирайте оригиналния конфигурационен файл на Samba:

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

След създаването на архива създайте конфигурационния си файл с тази команда:

sudo vi /etc/samba/smb.conf

Първо ще определим глобалните настройки на файловия сървър. За да направите това, поставете следните редове във файла:


  workgroup = WORKGROUP
  netbios име = srvr1
  security = потребител
  карта на гост = лош потребител
  печели подкрепа = не
  dns proxy = не

Нека погледнем отблизо какво означават тези линии.

  • работна група  - Работната група, както вече беше споменато, трябва да бъде еднаква за всички машини
  • netbios име  - името на компютъра, който ще се показва в Windows
  • сигурност  - по подразбиране извършва удостоверяване на ниво потребител
  • поръчка за разрешаване на име - приоритет за разрешаване на IP адреси от NetBIOS име. bcast - означава изпращане на заявка за излъчване към локалната мрежа. Ако всички компютри, между които се планира взаимодействие, са в една и съща мрежа, тази опция е оптимална.

Когато приключите със създаването на конфигурационния файл, преминете към въпроса как да споделите папката Ubuntu за Windows.

Споделяне на папка Ubuntu

Първо, нека създадем споделена папка, достъпна за всички. Тоест, с анонимен достъп, без разрешение на samba.

Създайте папка, в която ще отворим достъп, например:

sudo mkdir -p / samba / allaccess

След като папката е създадена, трябва да направите правилните разрешения за нея. Следните команди позволяват достъп до папката за всички и правят собственика на никой:

cd / samba
  $ sudo chmod -R 0755 allaccess
  $ sudo chown -R никой: nogroup allaccess /

Следващата стъпка е да опишете allaccess папката в конфигурационния файл на samba:


  path = / samba / allaccess
  браузър = да
  writable = yes
  guest ok = да
  само за четене = не

Сега конфигурационният ви файл трябва да изглежда така:


  workgroup = WORKGROUP
  Server string = Samba Server% v
  netbios име = srvr1
  security = потребител
  карта на гост = лош потребител
  име разрешаване ред = bcast домакин
  dns proxy = не
#==============

  path = / samba / allaccess
  браузър = да
  writable = yes
  guest ok = да
  само за четене = не

За да приложите промените, рестартирайте сървъра Samba:

sudo услуга smbd рестартиране

Конфигурирането на Samba Ubuntu 16.04 за анонимен достъп е завършено. Сега можете да проверите наличността на споделената папка allaccess от Windows, за да направите това, щракнете върху Win + R и стартирайте:

достъп


Ще видите нашата папка. Ако не, проверете отново конфигурацията. Достъпът до папката може да бъде получен без разрешение на samba. Тинктура Самба топки с достъп без разрешение е завършена.

Ubuntu защитена публична папка

За да споделите папката за Windows Ubuntu, до която ще имат достъп само потребители от определена група, създайте отделна папка и я опишете в конфигурационния файл Samba в Ubuntu.

Първо създайте папка:

sudo mkdir -p / samba / allaccess / защитен

Създаване на група:

sudo addgroup защитена група

Конфигуриране на права:

cd / samba / allaccess
  $ sudo chown -R richard: защитена група
  $ sudo chmod -R 0770 защитен /

Последната стъпка е да добавите настройките към конфигурационния файл на samba:

sudo vi /etc/samba/smb.conf


  path = / samba / allaccess / защитен
  валидни потребители = @securedgroup
  гост ok = не
  writable = yes
  браузър = да

Рестартирайте сървъра Samba. Сега само потребителите на защитената група могат да имат достъп до споделената папка в Ubuntu.

За да проверите как работи това, нека добавим потребител на richard към нашата група:

sudo usermod -a -G защитена група Ричард

За да може да работи с общи папки в Ubuntu, той трябва да е в базата данни Samba. Затова създайте за него парола за Samba:

sudo smbpasswd - ричард

След въвеждане на командата ще бъдете подканени да въведете нова парола. За да приложите промените, не забравяйте да презаредите файловия сървър.

Ако искате да споделите папката Ubuntu, само определен потребител може да има достъп до него в конфигурационния файл @securegroup с потребителското име.

данни

Това е всичко. Сега знаете как правилно да инсталирате Samba на Ubuntu 16.04, както и неговата конфигурация. В допълнение към ръчното редактиране на конфигурационни файлове, за да споделите папка в Ubuntu, можете да използвате графичната помощна система samba-config. Но след като разглобим всички настройки на ниско ниво, лесно можете да се справите с тази програма.

Понякога трябва бързо да настроите файлова сфера на сървъра и да го отворите. В същото време няма нужда да се ограждат някои сложни конфигурации, права за достъп или нещо друго. Нуждаем се от бърз достъп до информация без никакви въпроси.

Наскоро се нуждаех от това, за да отворя достъп до архивите, които са били съхранени на сървъра. Аз самият не исках да разбирам и търся информация, необходимо беше бързо да дам на човека достъп до четене, така че той сам да намери всичко, от което се нуждае.

Няма да работя конкретно с версии на операционната система. Samba има едни и същи конфиг почти навсякъде, където съм работил с тях, особено в най-простите конфигурации.

Така че, инсталирайте samba по всеки подходящ начин за вашата операционна система. Конфигурациите са валидни за третата версия на samba. Тогава решаваме какво ни трябва:

  • достъп от потребител и парола
  • достъп до IP адрес,
  • достъп до всички без ограничения.

В зависимост от това настройките ще бъдат малко по-различни.

За достъп с парола  изготвяме такъв конфиг:

    security = user passdb backend = tdbsam работна група = MYGROUP сървър string = Samba path = / mnt / shara валидни потребители = @users force group = user create mask = 0660 директория маска = 0771 writable = yes browseable = yes

   # useradd споделен потребител -M -G потребители-s / sbin / nologin

Импортираме този потребител в samba и задаваме паролата:

   # smbpasswd - споделен потребител

И се опитайте да отидете на топката при:

   IP-сървър

Да се ​​организира достъп в зависимост от IP адреса, ние правим тези настройки в smb.conf:

security = share workgroup = MYGROUP server string = Samba map guest = лош потребителски път = / mnt / files browsable = да writable = да гост = да чета = хостове не позволяват = 192.168.0.171

В този случай пълният достъп ще бъде на адрес 192.168.0.171. За да добавите цяла подмрежа, трябва да посочите следното:

Хостовете позволяват = 192.168.0.

Можете да комбинирате различни подмрежи и адреси, разделени с интервали. Ние рестартираме samba и проверим.

Ако имате инсталирана samba 4, тази конфигурация няма да работи и ще получите грешка:

ПРЕДУПРЕЖДЕНИЕ: Игнориране на невалидна стойност "(! LANG: share" for parameter "security" !}

За да може ip достъпът да работи правилно, трябва да направите следните промени в горния конфиг:

Security = user map to guest = Лоша парола

Останалите параметри остават същите. След това ip достъпът ще работи на 4-та версия на samba.

ако достъпът ще бъде предоставен на всички без ограничение, тогава най-простата конфигурация на самба ще бъде:

    security = user workgroup = MYGROUP сървър string = Samba гост акаунт = никой карта за гост = лош потребителски път = / mnt / files browseable = Да гост OK = Да запишете = Да публичен = да

Не забравяйте да въведете правата за всички в папката:

   # chmod 0777 / mnt / файлове

Рестартирайте samba и опитайте да влезете. Не трябва да се задава въпрос.

Така само за 5 минути, можете да организирате прост файлов сървър, използвайки самба. И често по-трудно и не е необходимо. За всеки файл за боклук най-новата опция.



Свързани статии: