Совместное использование файлов и принтеров
Категория: Взаимодействие с Windows | Автор: admin | 21-06-2010, 00:36 | Просмотров: 3781

Наиболее высокий уровень интеграции персональных компьютеров и платформы UNIX достигается благодаря совместному использованию каталогов, размещенных на UNIX-компьютере (или в специализированном файловом сервере UNIX), настольными компьютерами, работающими под управлением  Windows. Совместно  используемые  каталоги  могут быть настроены таким образом, чтобы представляться частью среды Windows: либо в качестве логических дисков либо в качестве дополнения дерева сетевых файловых систем Windows. Для выполнения этой функции можно использовать файловую систему NFS или CIFS.

 

Файловая система NFS

 

Файловая система NFS (Network File System) разрабатывалась для обеспечения возможности совместного использования файлов в сети UNIX-компьютеров, где механизмы блокировки файлов и безопасности системы существенно отличаются от таковых в среде Windows. И хотя имеется множество программ, позволяющих монтировать NFS-каталоги в Windows, следует избегать этого — во-первых, из-за различия архитектур, а во-вторых, по причине того, что файловая система CIFS работает гораздо лучше.

 

 

Файловая система CIFS

 

CIFS (Common Internet File System — общая файловая система для Internet) основана на протоколе SMB (Server Message Block — блок серверных сообщений). SMB стал дополнением к DOS, когда-то давно разработанным компанией Microsoft для того, чтобы операции дискового ввода/вывода переадресовывались в NetBIOS (Network Basic Input/Output System — сетевая базовая система ввода-вывода). Созданная компаниями IBM и Sytec система NetBIOS представляла собой примитивный интерфейс между сетью и приложениями.

В настоящее время пакеты SMB передаются через протокол NBT (NetBIOS over TCP), являющийся расширением NetBIOS. Как ни парадоксально это звучит, упомянутые протоколы получили широкое распространение и стали доступными на многих платформах — от MVS и VMS до наших любимых UNIX и Windows. Все оказались счастливы.

 

Samba: система CIFS для UNIX

 

Чрезвычайно популярный пакет Samba распространяется на условиях открытой GNU-лицензии и реализует файловую систему CIFS на UNIX-станциях. Он был создан Эндрю Триджеллом (Andrew Tridgell) из Австралии, который путем "обратного" проектирования воссоздал код протокола SMB, использовав его реализацию в других системах, и опубликовал полученный программный код в 1992 г.

Пакет Samba постоянно дорабатывается и расширяется. Он обеспечивает стабильный, проверенный механизм интеграции компьютеров, работающих под управлением Windows, в сеть UNIX. Прелесть Samba заключается в том, что достаточно инсталлировать только один пакет на UNIX-компьютер — никакого дополнительного программного обеспечения на Windows-компьютер устанавливать не нужно.

Файловая система CIFS предоставляет пять основных услуг:

  • совместное использование файлов;
  • сетевую печать;
  • аутентификацию и авторизацию;
  • преобразование имен;
  • объявление о наличии сервисов ("обзор" файловых серверов и принтеров).

Большая часть функций пакета Samba реализована в двух демонах: smbd и nmbd. Первый предоставляет сервисы печати и доступа к файлам, а также сервисы аутентификации и авторизации, а второй управляет другими важными функциями CIFS — подсистемой преобразования имен и сервисными объявлениями.

В отличие от NFS, которая жестко связана с ядром, пакет Samba не требует модификации ядра и запускается исключительно как пользовательский процесс. Он связывается с сокетами, через которые посылаются NBT-запросы, и ждет запроса от клиента на доступ к ресурсу. Как только запрос поступает и аутентифицируется, демон smbd создает свой дубликат и запускает его от имени пользователя, сделавшего запрос. В результате все разрешения на доступ к UNIX-файлам (включая групповые разрешения) остаются ненарушенными. Имеется только одна специальная функциональная возможность, которую демон smbd реализует сверх этого, — сервис блокировки файлов, позволяющий клиентским персональным компьютерам придерживаться привычной для них семантики блокирования.

 

Инсталляция и конфигурирование пакета Samba

 

В настоящее время пакет Samba входит в комплект поставки систем Red Hat и FreeBSD (его местоположение — каталог /usr/ports), а в Solaris и HP-UX его нужно загрузить и инсталлировать самостоятельно. Пакет доступен по адресу www.samba.org.

Независимо от используемой системы следует отредактировать файл smb.conf, указав в нем параметры конфигурации пакета Samba. В этом файле задаются каталоги и принтеры, предназначенные для совместного использования, а также права доступа к ним. Все опции задокументированы на man-странице, посвященной файлу smb.conf. Ознакомиться с документацией придется каждому, кто попытается интегрировать пакет Samba в сеть, в которой уже настроен совместный доступ к файлам Microsoft.

Важно также понимать, какие угрозы безопасности возникают вследствие совместного использования файлов или ресурсов в сети. В пакете Samba имеются средства контроля безопасности, но они работают только тогда, когда кто-то их применяет. Чтобы обеспечить базовый уровень безопасности, нужно выполнить два действия.

  • Расположенная в файле smb.conf строка hosts allow задает адреса клиентов, которым разрешен доступ к ресурсам Samba. Удостоверьтесь, что список содержит только проверенные IP-адреса (или диапазоны адресов).
  • Блокируйте доступ из Internet к TCP-портам CIFS, соответствующим образом настроив фильтрующий брандмауэр. Это TCP-порты с номерами 137—139. Более полную информацию о том, как осуществить подобную настройку.

Ниже представлен образец полного файла smb.conf, используемого в простой сети:

 

[global]

# workgroup = имя_домена_ИТ или имя_рабочей_группы

workgroup = MYGROUP

 

# Список узлов, которым разрешен доступ к объектам Samba.

# В данном случае допускаются лишь компьютеры двух сетей класса С.

hosts allow = 192.168.1.  192.168.2.

 

# Автоматическая загрузка списка принтеров из файла.

printcap name = /etc/printcap load printers = yes

 

# Использование отдельного журнального файла на каждом компьютере

# и задание его предельного размера равным 50 Кбайт.

log file = /var/log/samba/log.%m max log size = 50

 

# Выбор режима безопасности. В большинстве случаев требуется обеспечить

# безопасность на уровне пользователя. Более подробная информация

# об этом содержится в документации к пакету (файл security_level.txt).

security = user

 

# При желании можно установить парольную защиту. Этот процесс

# подробно описан в файлах ENCRYPTION.txt,  Win95.txt и WinNT.txt,

# прилагаемых к документации. Не активизируйте данные опции,

# предварительно не прочитав документацию.

;encrypt passwords = yes

;smb passwd file = /etc/smbpasswd

 

# В большинстве случаев следующая установка обеспечивает повышение

# производительности. Дополнительная информация имеется в файле speed.txt,

# а также в документации.

socket options = TCP_NODELAY

 

# Совместное использование начальных каталогов. Например, каталог

# ~trent в UNIX станет каталогом "trent" в проводнике Windows.

 

[homes]

comment = Home Directories

browseable = no

writable = yes

 

# Совместное использование всех принтеров.

[printers]

comment = All Printers

path = /var/spool/samba

browseable = no

guest ok = no

writable = no

printable = yes

 

# Совместное использование заданного каталога.

[devel]

comment = Staff Development Shared Directory

path = /devel/shared

public = no

writable = yes

printable = no

create mask = 0765

 

 

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

 

Отладка пакета Samba

 

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

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

Следующие журнальные записи отражают успешные попытки соединений:

 

01/19/2000 17:38:01 pan (192.225.55.154)  connect to service trent

     as user trent  (uid=8164,gid=10)   (pid 16625)

01/19/2000 17:40:30 pan (192.225.55.154) connect to service

     silver-lw as user trent  (uid=8164,gid=10)   (pid 16625)

01/19/2000 17:43:51 pan (192.225.55.154) closed connection

     to service silver-lw

01/19/2000 17:43:51 pan (192.225.55.154) closed connection to service trent

 

 

Команда smbstatus позволяет проверить текущие активные соединения и открытые файлы. Эта информация особенно полезна, когда приходится отслеживать проблемы блокировки (например, кто из пользователей открыл файл xyz для чтения-записи в монопольном режиме). В первой части выходных данных перечислены ресурсы, к которым подключены пользователи, во второй дана информация об активных блокировках файлов, а в третьей части отображена статистика использования ресурсов, собранная демоном smbd.

 

Samba version 2.0.5

Service     uid        gid        pid        machine

-----------------------------------------------------

info        trent     staff      22545       pan

trent       trent     staff      22545       pan

 

Locked files:

Pid     DenyMode  R/W   Oplock           Name

-----------------------------------------------------

22545  DENY_NONE  RDWR  EXCLUSIVE+BATCH  /home/trent/res alloc 2.xls

Share mode memory usage  (bytes):

1048336(99%) free + 168(0%) used + 72(0%) overhead = 1048576(100%) total

 

 

Блокировку можно отменить, уничтожив демон smbd, который "владеет" ею. Идентификатор процесса для каждой блокировки отображается в выводе команды smbstatus. Не рассказывайте своим пользователям о том, что вы знаете, как это делается, и помните, что принудительное снятие блокировки может привести к повреждению файлов. Кто-то же должен делать грязную работу!



 (голосов: 0)
Версия для печати | Комментариев: 0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.


 
Логин
Пароль
 

 
Locations of visitors to this page