SMB: практика

Дальше идут настройки связанные с существованием в сети нескольких машин, на которых есть сервера smb, там есть метод для определения, кто главный, кто кому передает информацию, и так далее.

Далее ручки для управления NT-доменом. Нужны они, чтобы, например, при логине выполняется некий скрипт.

Обратите внимание на кусок, где описана работа с файлами и их именами. К сожалению, windows windowsу рознь, и что работало в одном, может не работать в другом... То же с именами файлов. Стоит помнить про одну важную вещь: в линуксе в имени файла может присутствовать любой символ, кроме слеша и нулевого. И если попробовать создать такого типа фаил, то он создастся, но с невообразимым именем (состоящим в основном из шестнадцатеричных цифр), и по тому имени содержащему необычные символы к нему можно обратится, но лучше не использовать эти символы. Но если известно, что все машины линуксовые, то можно сказать unix extensions yes, и этих проблем не будет.

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

К списку категорий пользователей, которые есть в ОС Linux добавляется "никакой" пользователь, который ещё не авторизовался, это значит, что такой ресурс будет доступен даже для не аутентифицированным пользователям.

После правки конфигурационного фаила запускаем самбу.

[root@class305 ~]# chkconfig smb on
[root@class305 ~]# service smb start

Просмотрим шары через smbclient.

[user@host193 ~]$ smbclient -L host1
Password:
Anonymous login successful
Domain=[ALTDOMAIN] OS=[Unix] Server=[Samba 3.0.30-ALT]

        Sharename       Type      Comment
        ---------       ----      -------
        tmp             Disk      Temporary file space
        IPC$            IPC       IPC Service (Samba server on class305 (v. 3.0.30-ALT))
Anonymous login successful
Domain=[ALTDOMAIN] OS=[Unix] Server=[Samba 3.0.30-ALT]

        Server               Comment
        ---------            -------
        CLASS305             Samba server on class305 (v. 3.0.30-ALT)

        Workgroup            Master
        ---------            -------
        ALTDOMAIN
[user@host193 ~]$ smbclient //host1/tmp
Password:
Anonymous login successful
Domain=[ALTDOMAIN] OS=[Unix] Server=[Samba 3.0.30-ALT]
smb: \> ls
  .                                   D        0  Wed Aug  6 16:53:38 2008
  ..                                  D        0  Wed Aug  6 14:14:34 2008
  ksocket-saj                         D        0  Wed Aug  6 16:35:47 2008
  kde-saj                             D        0  Wed Aug  6 16:34:21 2008
  gconfd-saj                          D        0  Wed Aug  6 14:29:34 2008
  orbit-saj                           D        0  Wed Aug  6 16:09:05 2008
  .xfsm-ICE-45SOFU                    H      231  Wed Aug  6 14:29:11 2008
  .X0-lock                           HR       11  Wed Aug  6 14:17:35 2008
  .font-unix                         DH        0  Wed Aug  6 14:17:18 2008
  .esd                               DH        0  Wed Aug  6 14:17:18 2008
  .X11-unix                          DH        0  Wed Aug  6 14:17:35 2008
  .ICE-unix                          DH        0  Wed Aug  6 16:35:47 2008

                62086 blocks of size 2048. 62080 blocks available
smb: \>

Теперь заведём пользователя. adduser smbuser. Обратим внимание, что у этого пользователя нет posix-пароля и он не может войти в систему. После этого мы можем через smbpasswd создать его и задать ему пароль. Этот пользователь добавился в smbpasswd.

[root@class305 ~]# adduser smbuser
[root@class305 ~]# smbpasswd -a smbuser
New SMB password:
Retype new SMB password:
Added user smbuser.
[root@class305 ~]# cat /etc/samba/smbpasswd
smbuser:502:CCF9155E3E7DB453AAD3B435B51404EE:3DBDE697D71690A769204BEB12283678:[U          ]:LCT-4899A43C:

Теперь при просмотре ресурсов мы видим ресурс smbuser --- домашний каталог пользователя smbuser.

[user@host193 ~]$ smbclient -U smbuser -L host1
Password:
Domain=[CLASS305] OS=[Unix] Server=[Samba 3.0.30-ALT]

        Sharename       Type      Comment
        ---------       ----      -------
        tmp             Disk      Temporary file space
        IPC$            IPC       IPC Service (Samba server on class305 (v. 3.0.30-ALT))
        smbuser         Disk      Home Directory for 'smbuser'
Domain=[CLASS305] OS=[Unix] Server=[Samba 3.0.30-ALT]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------
        ALTDOMAIN

Можно примонтировать то, что нам выдается по самбе при помощи команды smbmount. Есть две различные реализации монтирования smb-ресурсов: в стиле mount --- smbmount и в стиле cifs --- mount.cifs

Единственное, что ещё можно рассказать про самбу: раздача принтеров. Самба устроена так, что по умолчанию она уже раздает все принтеры по smb, которые есть в cups. Как в cups, так и в smb драйвер находится на клиенте, а не на сервере. Это может быть не совсем верно в cups(поскольку там не понятно где заканчивается клиент и начинается сервер), но в windows именно так. Поэтому никаких дополнительных настроек по поводу раздачи принтера, подключенного к linux машине, виндовз-пользователю не надо. Исключения составляют всякие извращенные win-принтера, которые в cups не работают.

Осталось сказать две вещи и разбудить всесолода. Настройки самбы достаточно велики и умом их нельзя объять, и поэтому надо настраивать то что конкретно вас интересует. Для любителей графических настройщиков существует графический настройщик под названием SWAT, который полностью перегенерирует smb.conf, удаляя все комментарии, и фактически является редактором для smb.conf.

Конфигурация посредством kde:

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

Таким образом графический интерфейс kde предоставляет следующие возможности по администрированию сервера samba:

../kcontrolcenter_smb_new_user_dialog.png ../kcontrolcenter_smb_new_user_dialog_password_typing.png ../kcontrolcenter_smb_new_user_dialog_strong_password.png

Далее ручки для управления NT-доменом. Нужны они, чтобы, например, при логине выполняется некий скрипт. ../kcontrolcenter_smb_general.png

../kcontrolcenter_smb_shares2.png Здесь же можно добавить или изменить имеющиеся разделяемые ресурсы. ../kcontrolcenter_smb_share_add_general.png Принципиальна галочка "только чтение". По умолчанию ресурсы создаются только для чтения. Разрешить просмотр --- в оригинале был browsable. Галочка разрешить просмотр приводит к тому, что пользователь при просмотре сети это будет видно. Открытый --- public --- доступны незарегистрированным пользователям. ../kcontrolcenter_smb_share_add_general_filled.png после всех настроек жмем ок и получаем еще один разделяемый ресурс. ../kcontrolcenter_smb_share_added.png По большому счёту, поскольку homes и так расшарен, то, в принципе можно ничего не трогать.

kioslave smb.

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

Упрощённая раздача папок.

../konqueror_smb_authorization.png ../konqueror_smb_default_credentials.png ../konqueror_smb_host1.png ../konqueror_smb_host1_tmp.png ../konqueror_smb_user.png


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

End date

5

1

1

1

1

SergeyKorobkov, DmitryChistikov, VsevolodKrishchenko


CategoryLectures CategoryPspo CategoryMpgu CategoryUneex