Самба: SmbClient

Привіт, друзі!. Ми продовжуємо серію на Samba, і сьогодні ми побачимо пакет smbclient, який надає нам ряд інструментів для доступу до спільних ресурсів на серверах Microsoft Windows та Samba.

Завжди майте на увазі, що ми даємо Точка входу до програм чи послуг, про які ми пишемо. НЕМАЄ Ми маємо намір замінити рясну документацію, яка багато, але багато разів, є у нас під рукою в сховищах програм. Ось чому ми завжди говоримо, що для отримання додаткової інформації людина, або ми рекомендуємо вам прочитати супровідну документацію ЗАВЖДИ ПЕРЕД пошуком в Інтернеті. Шкода, що багато документації, яка є у сховищах, є англійською мовою. На даний момент у нас є безліч вільного програмного забезпечення, розробленого тисячами ентузіастів. Найменше, що ми можемо зробити, - це прочитати і трохи вивчити, як ним користуватися. Я впевнений, що наша частина - це та, яка вимагає найменших зусиль.

Заздалегідь перепрошую за будь-які ненавмисні упущення чи помилки. Писати про Samba Suite - це дуже важке завдання, хоча б лише про команду з нього.

Перш ніж продовжувати, рекомендуємо прочитати:

У статті ми побачимо:

  • smbClient
  • Самба-Common-Bin
  • Налаштування файлу / Etc / resolv.conf
  • Вступ до архіву /etc/samba/smb.conf
  • Використання SmbClient
  • Резюме

El paquete smbclient Ми можемо встановити його через Synaptic або через командний рядок. Як корінь виконуємо в консолі:

aptitude show smbclient aptitude встановити smbclient

Зверніть увагу, що пакети також встановлені самба-загальний y самба-спільний-бен. Однак програма Samba як така не встановлена SmbClient IF належить до набору Samba.

smbClient

Пакет надає нам такі інструменти:

  • findmb: Список інформації про комп'ютери, які відповідають на запит імені SMB у підмережі.
  • smbclient: Клієнт, подібний до FTP для доступу до спільних ресурсів на серверах SMB / CIFS.
  • smbget: Службова програма, схожа на wget, для завантаження файлів із серверів SMB.
  • smbtar: Сценарій консолі, який працює на SmbClient, що дозволяє нам робити резервні копії спільних ресурсів SMB / CIFS безпосередньо на магнітофон на UNIX.
  • rpcclient: Інструмент для виконання клієнтських функцій MS-RPC або Віддалений виклик процедури Microsoft. Більше інформації в довідці Windows.
  • smbspool: Надсилає файл на принтер SMB.
  • smbtree: Список або браузер SMB в текстовому режимі. Подібно до «Мережевого середовища» комп’ютерів Windows. Друкує дерево з усіма відомими доменами, серверами в кожному домені та їх спільними ресурсами.
  • smbcacls: Інструмент для керування списками контролю доступу NT у папках або спільних файлах типу SMB.
  • smbcquotas: Утиліта для управління квотами (Квоти) на акції малого та середнього бізнесу.

Самба-Common-Bin

Тим часом самба-спільний-бен пропонує нам такі програми:

  • мережу: Утиліта, задумана для роботи як програма «мережу»Windows. Це інструмент для управління серверами Samba та віддаленими серверами CIFS.
  • nmblookup: Клієнт NetBIOS через TCP / IP, що використовується для пошуку імен NetBIOS.
  • smbpasswd: Команда, яка дозволяє нам змінити пароль SMB користувача.
  • testparm: Службова програма, яка допомагає нам перевірити синтаксис основного файлу конфігурації Samba smb.conf.

З усіх вищезазначених команд особисто я використовував переважно testparm, smbclient, smbtree, мережу y smbpasswd. Це була б надзвичайно довга стаття, до того ж нудна, щоб висвітлити усіх, хто задіяний.

Щоб протестувати SmbClient, ми створили невелику локальну мережу з наступним обладнанням:

w2003: Основний контролер домену в Windows 2003 SP2, Enterprise Server, який також надає послуги DNS та WINS. Ім'я домену друзі.cu. Користувачами, зареєстрованими в Домені, є: elrond, Леголас, піпін y кроки. :-). На цьому сервері ми маємо спільну папку Середзем'я, якому ми надали дозволи на читання кроки а читати - писати піпін. Користувач elrond Він також є адміністратором домену.

miwheezy: Машина з Debian 7.0 "Wheezy", в яку ми встановимо пакет smbclient.

необхідність: Команда з Ubuntu 12.04 Server LTS та Gnome-Shell, в якій ми також встановимо пакет SmbClient. Ми приєднуємось до цієї команди до домену amigos.cu, щоб користувачі, зареєстровані в домені, могли розпочати локальний сеанс. Отже, у вас є обліковий запис машини на контролері домену. Він як це робиться про приєднання Debian або Ubuntu до Microsoft Active Directory, ми побачимо в наступній статті.

smb-iii-01

Налаштування файлу / Etc / resolv.conf

Надзвичайно важливо правильно оголосити DNS, особливо якщо у нас є локальна мережа з контролером домену Microsoft. У нашому прикладі, ІР w2003.amigos.cu Це 10.10.10.30. Тому файл / Etc / resolv.conf буде з таким змістом:

пошук сервера імен amigos.cu 10.10.10.30

У випадку, якщо у нас не встановлено Network-Manager-GNOME, наприклад, на сервері, не завадило б правильно оголосити попередні параметри у файлі / etc / network / interfaces.

DNS, які встановлюються під час налаштування контролера домену в Microsoft, мають цілу серію додаткових записів, які міцно інтегрують їх із функціями Active Directory.

Будь-які запобіжні заходи, які ми вживаємо, є дійсними, щоб Samba працювала коректно, і нам не довелося ламати голову через помилки конфігурації, яких нам вдалося уникнути.

Вступ до файлу /etc/samba/smb.conf

Коли ми встановлюємо пакет smbclient, створюється основний файл конфігурації Samba Suite: smb.conf.

  • Завжди робіть резервну копію файлу ДО зміни будь-якого аспекту.
  • Незважаючи на те, що довідка англійською мовою, ми рекомендуємо ПРОЧИТАТИ УВАЖНО перед тим, як наважитися змінити будь-який параметр.
  • Якщо ви зовсім не знаєте англійської, будь ласка, змініть лише те, що вказано в іншій літературі, включаючи цю статтю.

smb.conf Містить інформацію про конфігурацію виконання програм Samba Suite. Його синтаксис перевіряється командою testparm. Як і в наступних статтях, ми побачимо більше про цей файл, поки що ми обмежимося зазначенням мінімально необхідних змін, які ми повинні внести в нього, у випадку машини з Debian або Ubuntu, і що не пов’язано з жодним доменом. Зміни виділено жирним шрифтом.

 [глобальний] ## Перегляд / ідентифікація ### # Змініть це на ім'я робочої групи / NT-домену, який ваш сервер Samba буде частиною робочої групи = ДРУЗІ
# рядок сервера є еквівалентом рядка поля NT Description сервер = сервер% h # Розділ підтримки служб імен в Інтернеті Windows: # Підтримка WINS - повідомляє компонент NMBD Samba, щоб увімкнути його WINS Server # виграє підтримка = немає # WINS Server - Каже компоненти NMBD Samba повинні бути клієнтом WINS # Примітка: Samba може бути або сервером WINS, або клієнтом WINS, але НЕ тим, ні іншим; виграє сервер = wxyz
виграє сервер = 10.10.10.30

### ЗАЛИШКИ ФАЙЛУ ЗАСТАВЛЯЮТЬСЯ ЗМІНЕНИМИ

Тобто, внесені зміни будуть в параметрах робоча група y виграє сервер тільки. Деякі цікавляться використанням WINS. Samba настійно рекомендує використовувати цю послугу в мережах SMB / CIFS, щоб правильно визначити IP-імена NetBIOS. Навіть коли інстальовано контролер домену Samba, у файлі конфігурації smb.conf демону NMBD пропонується діяти як сервер WINS через параметр wins support = yes, що НЕ потрібно в нашому конкретному випадку.

Ми перевіряємо синтаксис файлу smb.conf:

xeon @ miwheezy: ~ $ testparm
Завантажте конфігураційні файли smb з /etc/samba/smb.conf rlimit_max: збільшення rlimit_max (1024) до мінімальної межі Windows (16384) Розділ обробки "[будинки]" Розділ обробки "[принтери]" Розділ обробки "[print $]" Завантажено файл послуг OK. Роль сервера: ROLE_STANDALONE
Натисніть клавішу Enter, щоб побачити дамп визначень вашої служби [глобальна] робоча група = ДРУЗІ рядок сервера =% h Карта сервера до гостя = Поганий користувач дотримується обмежень pam = Так зміна пароля pam = Так passwd програма = / usr / bin / passwd% u passwd chat = * Введіть \ snew \ s * \ spassword: *% n \ n * Повторно введіть \ snew \ s * \ spassword: *% n \ n * password \ supdated \ susccessfully *. синхронізація пароля unix = Так syslog = 0 файл журналу = /var/log/samba/log.%m макс. розмір журналу = 1000 dns проксі = Немає перемог сервера = 10.10.10.30 користувачі дозволяють гостям = Так панічна дія = / usr / share / samba / panic-action% d idmap config *: backend = tdb [.....]

## Якщо ми робимо це в точності.amigos.cu, яка раніше була приєднана ## до домену friends.cu, результат трохи відрізняється ##

кроки @ точні: ~ $ testparm
Завантажте конфігураційні файли smb з /etc/samba/smb.conf rlimit_max: збільшення rlimit_max (1024) до мінімальної межі Windows (16384) Завантажений файл служб OK. Роль сервера: ROLE_DOMAIN_MEMBER
Натисніть клавішу Enter, щоб побачити дамп визначень вашої служби [глобальна] робоча група = сфера AMIGOS = сфера безпеки AMIGOS.CU = рівень реклами ADS = 0 локальний майстер = немає майстра домену = немає оболонки шаблону = / bin / bash winbind enum користувачів = так groups = Так winbind використовувати домен за замовчуванням = Так idmap config BCTUK: range = 10000000-19000000 idmap config BCTUK: backend = rid idmap config *: range = 11000-20000 idmap config *: backend = tdb

Після внесення змін не потрібно перезапускати будь-які служби, і ми готові використовувати команду smbclient.

Використання SmbClient

SmbClient - це в основному консольна команда. Тому ми цим скористаємось.

En miwheezy.amigos.cu:

xeon @ miwheezy: ~ $ smbclient -L w2003
Введіть пароль xeon: не вдалося налаштувати сеанс: NT_STATUS_LOGON_FAILURE

## Логічний результат, оскільки xeon не є зареєстрованим користувачем у Домені

xeon @ miwheezy: ~ $ smbclient -L w2003 -U кроки
Введіть пароль trancos: Домен = [ДРУЗІ] ОС = [Windows Server 2003 3790 з пакетом оновлень 2] Сервер = [Windows Server 2003 5.2] Ім'я спільного доступу Тип Коментар --------- ---- ------ - C $ Disk за замовчуванням IPC $ IPC Remote IPC ADMIN $ Disk Remote Admin SYSVOL Disk Logon server share 
    Середземноморський диск      
    NETLOGON Disk Logon server share Domain = [ДРУЗІ] OS = [Windows Server 2003 3790 з пакетом оновлень 2] Сервер = [Windows Server 2003 5.2] Коментар сервера --------- ------- PRECISE Samba 3.6.3 .2003 Майстер робочої групи W2003 --------- ------- ДРУЗІ WXNUMX

## Подивіться на спільний ресурс tierramedia

xeon @ miwheezy: ~ $ smbclient // w2003 / Середня земля -U elrond
Введіть пароль елронда: Домен = [ДРУЗІ] ОС = [Windows Server 2003 3790 з пакетом оновлень 2] Сервер = [Windows Server 2003 5.2] smb: \> dir NT_STATUS_ACCESS_DENIED listing \ * smb: \> exit

## Логічно !!!. Хоча elrond є адміністратором, він не має дозволів на ресурс.

xeon @ miwheezy: ~ $ smbclient // w2003 / Середня земля - ​​кроки вперед
Введіть пароль trancos: Домен = [ДРУЗІ] OS = [Windows Server 2003 3790 з пакетом оновлень 2] Сервер = [Windows Server 2003 5.2] smb: \> реж. D 0 Сб 20 липня 16:58:54 2013 .. D 0 Сб 20 липня 16:58:54 2013 Папка Піпіна D 0 Сб 13 липня 13:01:46 2013 Hawaii.Five-0.2010.S01E01.HDTV.XviD. Avi A 366793752 Tue Sep 21 22:51:12 2010 Hawaii.Five-0.2010.S01E01.HDTV.XviD.srt A 63362 Wed Sep 22 14:03:40 2010 40915 блоків розміром 262144. Доступні 29215 блоків smb: \> тест mkdir NT_STATUS_ACCESS_DENIED створення віддаленого каталогу \ test smb: \> вихід

## Пам'ятайте, що кроки мають лише дозволи на читання

xeon @ miwheezy: ~ $ smbclient // w2003 / серединна земля -U піпін
Введіть пароль піпіна: Домен = [ДРУЗІ] ОС = [Windows Server 2003 3790 з пакетом оновлень 2] Сервер = [Windows Server 2003 5.2] smb: \> реж. D 0 Сб 20 липня 16:58:54 2013 .. D 0 Сб 20 липня 16:58:54 2013 Папка Піпіна D 0 Сб 13 липня 13:01:46 2013 Hawaii.Five-0.2010.S01E01.HDTV.XviD. Avi A 366793752 вівторок 21 вересня 22:51:12 2010 Hawaii.Five-0.2010.S01E01.HDTV.XviD.srt A 63362 середа 22 вересня 14:03:40 2010 40915 блоків розміром 262144. Доступні 29215 блоків smb: \> mkdir try smb: \> реж. D 0 Нд лип. 21 14:21:30 2013 .. D 0 Нд лип. 21 14:21:30 2013 Папка Піпіна D 0 сб. Лип. 13 13:01:46 2013 Гаваї. П’ять-0.2010.S01E01.HDTV.XviD. Avi A 366793752 Tue Sep 21 22:51:12 2010 Hawaii.Five-0.2010.S01E01.HDTV.XviD.srt A 63362 Wed Sep 22 14:03:40 2010 test D 0 Sun Jul 21 14:21:30 2013 40915 блоки з розмір 262144. Доступні 29215 блоків smb: \>? ? allinfo altname архів размер_блок скасувати case_sensitive кд CHMOD Чаун близько дель реж його відлуння виходу отримати getfacl geteas Жорсткою історії допоможе iosize ок замку посилання малих Ls л маски мкр MGET MkDir більш MPUT нового відкритого POSIX posix_encrypt posix_open posix_mkdir posix_rmdir д прочитати підказку postix_unlink роздрукувати його кинути putwdir друку підказка putwdir rd recse reget rename reput rm rmdir showacls set setmode stat symlink tar tarmode translate unlock volume vuid wdel logon listconnect showconnect ..!             

## Список команд, а потім довідка щодо команди ## Пам'ятайте, що smbclient - це як ftp-клієнт.

smb: \> допомогти отримати ДОПОМОГУ отримати: [локальна назва] отримати файл smb: \> вихід
xeon @ miwheezy: ~ $ ls -l
всього 68 drwxr-xr-x 2 xeon xeon 4096 13 липня 12:56 Робочий стіл -rw-r - r-- 1 xeon xeon 63362 21 липня 14:24 Hawaii.Five-0.2010.S01E01.HDTV.XviD.srt

## Справді, файл srt був скопійований у папку, З ЯКОЇ МИ ВИЗОВАЛИ ## smbclient.

xeon @ miwheezy: ~ $ man smb.conf> samba.man
xeon @ miwheezy: ~ $ ls -l
всього 420 drwxr-xr-x 2 xeon xeon 4096 13 липня 12:56 Робочий стіл -rw-r - r-- 1 xeon xeon 63362 21 липня 14:24 Hawaii.Five-0.2010.S01E01.HDTV.XviD.srt -rw - r - r-- 1 xeon xeon 359814 21 14 липня 30:XNUMX samba.man
xeon @ miwheezy: ~ $ smbclient // w2003 / серединна земля -U піпін
Введіть пароль піпіна: Домен = [ДРУЗІ] ОС = [Windows Server 2003 3790 з пакетом оновлень 2] Сервер = [Windows Server 2003 5.2] smb: \> поставити samba.man, помістивши файл samba.man як \ samba.man (10980,6 kb / s) (в середньому 10980,7 kb / s) smb: \> реж. D 0 Нд лип. 21 14:31:36 2013 .. D 0 Нд. Лип. 21 14:31:36 2013 Папка Піпіна D 0 Сб. Лип. 13 13:01:46 2013 Гаваї. П’ять-0.2010.S01E01.HDTV.XviD. Avi A 366793752 Tue Sep 21 22:51:12 2010 Hawaii.Five-0.2010.S01E01.HDTV.XviD.srt A 63362 Wed Sep 22 14:03:40 2010 test D 0 Sun Jul 21 14:21:30 2013 самба. Людина A 359814 Нд лип. 21 14:31:36 2013 40915 блоків розміром 262144. Доступні 29213 блоки smb: \> вихід

## Давайте спробуємо команду smbtree

xeon @ miwheezy: ~ $ smbtree
Введіть пароль xeon: ДРУЗІ \\ W2003 \\ PRECISE Samba 3.6.3 \\ PRECISE \ IPC $ Послуга IPC (Samba 3.6.3)
xeon @ miwheezy: ~ $ smbtree -U леголи
Введіть пароль леголаса: AMIGOS \\ W2003 \\ W2003 \ NETLOGON Спільний доступ до сервера \\ W2003 \ tierramedia \\ W2003 \ SYSVOL Спільний доступ до сервера \\ W2003 \ ADMIN $ Remote Admin \\ W2003 \ IPC $ Remote IPC \\ W2003 \ C $ Спільний доступ \\ PRECISE Samba 3.6.3 \\ PRECISE \ IPC $ Послуга IPC (Samba 3.6.3)

## Дотримуйтесь виходу із зареєстрованими та незареєстрованими користувачами

Резюме

  • Завжди рекомендується запускати команди з обліковими даними користувача, зареєстрованого в домені, навіть якщо клієнтський комп'ютер не приєднаний до домену. Звичайно, ми повинні знати дані автентифікації цього користувача або мати свій обліковий запис користувача в домені.
  • З вищевикладеного випливає, що НЕ ОБОВ'ЯЗКОВО ОБ'ЄДНАТИ МАШИНУ КЛІЄНТА ОБ'ЄДНАТИ У ДОМЕН, якщо ми не хочемо увійти на клієнтський комп'ютер як користувач домену. Насправді моя робоча станція не приєднана до домену моєї компанії.
  • Команди отримати y put вони працюють із спільного ресурсу в локальну папку або клієнтську машину, з якої викликано smbclient.
  • Знати всі внутрішні команди smbclient, ми повинні ввести знак питання ?.
  • Якщо ми виконуємо ті самі попередні операції з комп'ютера, раніше приєднаного до домену, результати будуть однаковими. Ми перевіряємо це в нашому точний.amigos.cu.
  • Використання SmbClient виходить далеко за рамки того, що ми бачили в статті. Ми побачимо це в наступних публікаціях.
  • Хоча він сильний для багатьох посвячених, набір Samba вимагає особистого вивчення. Не всі відповіді містяться у статтях у WWW Village. І багато з них мовою Шекспіра.
  • Не падайте духом при першій помилці. Якщо ми дізнаємося, як користуватися Samba Suite, ми дізнаємось багато нового про мережі SMB / CIFS, зокрема про мережі Microsoft.

Нарешті, запустіть у Nautilus або іншому браузері файлів smb: // pipin @ w2003 / середина, щоб встановити зв’язок із цим ресурсом. Спробуйте відкрити файл . AVI з VLC, а потім з тотемом. Отримайте власні висновки.

І все на сьогодні, друзі. До наступної пригоди !!!.

Моя локальна мережа:

smb-iii-02