Samba є протоколом Microsoft для розділення файлів і служб друку. Цей
протокол був розроблений в 1987 році і пізніше перенесений на платформи
Linux Ендрю Тріджеллом (Andrew Tridgell). Офіційний сайт Samba,
тут ви завжди знайдете інформацію, що цікавить вас, і нові версії
пакету. Тема даної статті, на сьогоднішній день, є досить добре
освітленою. Настільки добре, що до недавнього часу я навіть не думав
писати цю статтю. Проте, мій особистий досвід показує, що
найпоширенішим виглядом серверів є файл-сервер. Відповідно, більшість
питань у початківців лінуксоїдов виникають по налаштуванню samba, на
основі якої і будується останній. Я спробую роз’яснити деякі моменти
відносно початкового налаштування samba. Чіпати всі можливі опцій я
не буду, унаслідок величезної їх кількості. Врешті-решт, всі вони дуже
добре описані в документації, що додається до програми. Також не буду
я дориватися до налаштування сервера друку. Оскільки займатися
налаштуванням такого сервера мені поки не доводилося.
Так, шо нам дає Samba?
Ця служба надає ряд можливостей:
- розділення файлових систем Linux операційними системами Windows 9x/nt;
- розділення файлових систем Windows 9x/nt операційною системою Linux;
- спільне використання принтерів, підключених до системи Linux, операційними системами Windows 9x/nt;
- спільне використання принтерів, підключених до Windows 9x/nt, операційною системою Linux;
- організації системи доменів для клієнтів під управлінням ОС
А тепер популярніше))
Інсталяція Samba в Debian
Хоча фактично у всіх сучасних дистрибутивах ніксів є самба, розглянемо її встановлення.
# apt-get install samba samba-common samba-client
Дана команда розпочне інсталяцію з покроковими питаннями.
Спочатку вам потрібно ввести ім’я робочої групи/домену (в даному прикладі я використовую ім’я ruchi)
Якщо ви хочете використовувати шифрування паролів натисніть yes та enter.
За вашим бажанням файл smb.conf буде відредаговано для отримання
WINS-налаштувань від DHCP-сервера (в даному прикладі я вибираю No і
натискаю enter)
Виберіть тип запуску samba — як демон або через inetd (в цьому прикладі я обрав варіант “запускати як демон”)
Якщо ви хочете створити базу даних паролів samba, виберіть yes та натисніть enter
На цьому з встановленням все.
Підготовка каталогів та користувачів
Створюємо каталоги Samba для використання з Windows
# mkdir windowsshare
Додаємо користувачів
# useradd Kerrygun
Задаємо пароль для користувача
# smbpasswd -a Kerrygun
Настройка Samba
За замовчуванням файл конфігурації Samba знаходиться в
/etc/samba/smb.conf. У даному файлі головною є секція Global, де ви
можете вказати усі основні параметри, як на прикладі:
[global] # робочча група workgroup = home # Ім'я вашої машини в мережі. Інколи відсутній. Якщо не пишемо - ім'я буде узято з команди hostname. # якщо потрібне - дописуйте цей рядок самостійно. netbios name = fileserver # Аліас сервера(в мережевому оточені буде ще один сервер клон вашого) netbios aliases = AliasServer # Опис вашої тачки (при перегляді мережевого оточення, стоїть після імені тачка) ; server string = hlammm-server # Обмеження на присутність вашої тачки в підмережах. Або з якої підмережі ви будете # доступні. Якщо ви хочете відкрити декілька підмереж пропишіть їх через пробел. # Допускається написання імені інтерфейсу. # З міркувань безпеки не рекомендується включати доступ ззовні до вашої мережі. host allow = 192.168.1. 127.0.0. eth1 # Автоматичне завантаження списку принтерів ; printcap = /etc/printcap ; load printers = yes# Схема друку. Я не пробував. # bsd, sysv, plp, lprng, aix, hpux, qnx ; printing = lprng # Ім'я гостьового входу (найчастіше, по дефолту "nobody"). Іншими # словами, чи можна дістати доступ до ваших мережевих ресурсів # не маючи облікового # запису на вашій машині. Але пам'ятаєте, такий користувач # у вашій системі повинен існувати # Зверніть увага, описується саме linux-користувач. # Samba має свій список користувачів, але про це пізніше. guest account = nobody # Куди писати повідомлення про помилки. # Створюється як загальна лог роботи samba і netbios так і # лог окремих користувачів. # далі розмір логу, 0 для необмеженого log file = /var/log/samba/log.%m max log size = 1000 syslog = 0
Тепер вам необхідно налаштувати спільний каталог користувачів (наприклад:-samba):
[SAMBA] path=/windowsshare browseable=yes writeable=yes valid users = Kerrygun admin users = debian
Перевіримо права доступу вашої samba
Якщо ви хочете перевірити коректність парметрів, вказаних у файлі конфігурації, виконайте наступну команду:
# testparm
вивід виглядатиме наступним чином:
Load smb config files from /etc/samba/smb.conf Processing section “[homes]” Processing section “[printers]” Processing section “[print$]” Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions
Тепер вам необхідно перезавантажити samba-сервер наступною командою:
# /etc/init.d/samba restart
Якщо ви бажаєте дізнатись більше параметрів конфігуарції samba, зверніться до сторінки підручкика samba config.
Перевіряємо налаштування вашої samba
Якщо ви бажаєте перевірити налаштування, виконайте команду для користувача Kerrygun:
# smbclient -L //serverip -U Kerrygun
Монтування samba-каталогів в Linux
Linux може переглядати спільні каталоги так само, як і інші носії
(жорсткий диск, спільні каталоги NFS, оптичні накопичувачі, і т.д.).
Використовуйте команду mount для монтування спільної файлової системи
samba так, наче вона прямо приєднана до файлової системи вашої Linux.
Наступний приклад команди mount, де домашній каталог (/home/david) на
комп’ютері з іменем toys змонтований до локального каталогу
(/mnt/toys). Команда вводиться від імені користувача root у вікні
терміналу:
# mkdir /mnt/Tshare
# mount -t smbfs -o username=KErrygun,password=test //Tshare/Kerrygun/mnt/Tshare
Тип файлової системи для спільного каталогу samba — smbfs (-smbfs).
Ім’я користувача (Kerrygun) та пароль (test) пропускаються як опції
(-o). Віддаленим спільним каталогом комп’ютері toys є //toys/david.
Локальна точка монтування — /mnt/toys. В цій точці ви маєте доступ до
вмісту /home/Kerrygun так наче це будь-який файл локального комп”ютера.
Ви матимете аналогічні права доступу на читання та зміну вмісту цього
каталога (та його підкаталогів), наче ви –користувач user, який
використовує вміст каталога безпосередньо на комп’ютері Tshare.
Щоб монтувати спільний каталог при завантаженні системи, додайте
відповідний запис до файлу /etc/fstab. Для вищеописаного прикладу ви
повинні додати наступний рядок (як привілейований користувач):
//Tshare/Kerrygun /mnt/Tshare smbfs username=Kerrygun,password=test
Вирішення проблем
Якщо ваш samba-сервер не працює належним чином, вам необхідно виконати наступні процедури:
1) Спочатку перевірте, чи працює ваша базова мережа
2) Перевірте, чи запущений самба-сервіс командою
# smbclient -L localhost
# Password: **********
3) Переконайтеся, що ваш міжмережний екран (брандмауер) не блокує
доступ до певних портів. Відкритими повинні бути порти 137, 138 та 139.
4) Переконайтесь, що паролі користувачів коректні. Спробуйте доступ до спільного каталогу самба як користувач командою:
# smbclient //localhost/tmp -U Kerrygun
В цьому прикладі клієнт samba під’єднується до спільного каталогу з іменем tmp, як користувач Kerrygun. Якщо пароль прийнято, то ви побачите інформацію про сервер і запрошення командного рядка:
# smb:\>
Налаштування робочих станцій Windows
Здійсніть вхід в систему під будь-яким користувачем з правами адміністратора
[Windows 2000] Start -> Settings -> Control Panel
-> System -> Network Identification -> Properties -> Member
of -> Domain -> вкажіть доменне ім’я, зазначене у секції
‘workgroup’ файлу smb.conf -> ok
[Windows XP] Start -> Control Panel -> System
-> Computer Name -> change -> Member of -> Domain ->
вкажіть доменне ім’я, зазначене у секції ‘workgroup’ файлу smb.conf
-> ok
Введіть ім’я корисувача root та відповідний пароль для файлового сервера Samba.
Якщо бажаєте лиш перенести існуючих користувачів робочої станції, та
користувач існує як на сервері так і на робочій станції, ви можете
ввійти на самба сервер — його профіль робочої станції буде скопійовано
на самба-сервер, коли він вийде з системи.
|