Document 181619

advertisement
Нижегородский Государственный Технический
Университет им. Р.Е.Алексеева
Кафедра «Вычислительные системы и технологии»
Лабораторная работа №1
«Сетевое взаимодействие Windows и Linux»
Выполнил:
студент группы 10-В-2
Кульнев Андрей
Нижний Новгород
2014 год
Цель работы: Изучение механизмов и средств интеграции Windows и Linux на базе сетевых
файловых систем.
План работы:
1.Проверка сетевого доступа по протоколу TCP/IP.
2.Реализация сервера файлового доступа SMB на Linux-системе.
3.Работа SMB-клиента в Linux .
4.Сетевая файловая система NFS в Linux.
5.Использование пакета Windows Service for Unix для организации сетевой файловой системы
NFS в Winows.
Выполнение работы:
1. Проверка сетевого доступа по протоколу TCP/IP. Получить информацию по настройке
сетевых интерфейсов (команды ifconfig в Linux и ipconfig в Windows). Настроить локальные
файлы трансляции DNS-имен и Netbios-имен хостов.
В Linux /etc/hosts, /etc/samba/lmhost.
В Windows: %SYSTEMROOT%\system32\drivers\etc\hosts, … \lmhosts.sam. Проверить сетевой
доступ между хостами командой ping.
Выполнение:
Первым делом мы должны сконфигурировать стек TCP/IP на Windows и Linux узлах. Данная
лабораторная работа будет выполнятся с использованием виртуальных машин (два Linux узла и один
узел c ОС Windows Server 2003).
Соединениям на узлам будут назначены следующие IPv4 адреса:
Windows – 192.168.26.209
Linux1 – 192.168.26.1
Linux2 – 192.168.26.2
Нужно отметить, что стек TCP/IP на windows узле у нас уже сконфигурирован и применение
команды ipconfig было рассмотрено подробно в прошлом семестре. Результат команды ipconfig /all
представлен на рисунке 1.
Рис. 1 Результат команды ipconfig /all
В Linux системе для получения информации о настройке сетевых интерфейсов мы будем
использовать команду ifconfig. Если аргументы не заданы, ifconfig выводит состояние активных в
настоящее время интерфейсов.
Воспользуемся командой ifconfig. Заходим в терминальный режим. Затем регистрируемся: вводим
имя пользователя root и пароль. А затем прописываем ifconfig (Рис. 2).
Рис. 2 Результат команды ifconfig
В результате команда вывела нам список интерфейсов и информацию об их настройке. Нас
интересует интерфейс p7p1. Из результата команды ifconfig мы увидели, что данный интерфейс не
имеет IPv4 адреса, поэтому нам нужно его назначить. Для этого прописываем следующую команду:
Ifconfig p7p1 192.168.26.1
Теперь если опять ввести команду ifconfig мы увидем, что в описание интерфейса eth0 появилась
строчка «inet addr: 192.168.26.1 Bcast: 192.168.26.255 Mask:255.255.255.0». (рис. 3)
Рис. 3 Результат назначения IPv4 адреса для p7p1
Аналогичные действия выполняем и для второго Linux узла.
Проверим есть ли связь. На Windows узде пропишем ping 192.168.26.1 (рис. 4).
Рис. 4 Проверка связи с Linux узлом
В результате видим, что связь есть.
Однако, например, если мы попытаемся обратится к узлу windows используя его Netbios-имя, то в
результате мы увидим, сообщение об ошибке. Для обеспечения трансляции Netbios и DNS имен
нужно добавить следующие данные в файлы hosts, lmhosts и lmhosts.sam:
192.168.26.209 5426-S9
192.168.26.1 5426-1
192.168.26.2 5426-2
После внесения всех изменений проверяем связь.
На Linux узле прописываем ping –c 4 5426-S9. В результате связь есть (рис. 5).
На Windows узле прописываем ping 5426-1. В результате связь есть (рис. 6).
Рис. 5 Проверка связи Linux узла с Windows узлом с помощью трансляции имени в IP-адрес
Рис. 6 Проверка связи Windows узла с Linux узлом с помощью трансляции имени в IP-адрес
2. Реализация сервера файлового доступа SMB на Linux-системе.
Установка и конфигурирование Samba. (Linux - SMB-сервер, Windows - SMB-клиент)
Samba это популярный пакет программ, которые позволяют обращаться к сетевым
дискам и принтерам на различных операционных системах по протоколу SMB/CIFS.
Имеет клиентскую и серверную части. Является свободным программным обеспечением,
выпущеным под лицензией GPL.
Схема:
2.1 Ознакомиться с составом Samba. Найти основные файловые компоненты: /etc/samba/...,
/etc/rc.d/init.d/smb;
/usr/sbin/smbd, nmbd, swat;
/usr/bin/testparm, smbpasswd, smbstatus, smbclient, smbmount
/etc/samba/smb.conf - конфигурационный файл smbd-севера. Этот файл описывает все службы
сервера, которые можно сделать доступными для клиентов
/etc/samba/lmhosts – это файл соответствия NetBIOS имени IP адресу. Формат файла очень
похож на формат файла /etc/hosts, кроме того что компонент имени хоста должен
соответствовать формату NetBIOS имени.
/usr/bin/smbclient – это клиент который может 'общаться' с SMB/CIFS сервером. Среди его
возможностей: получение файлов с сервера на локальную машину, перемещение файлов с
локальной машины на сервер, получение списка папок с сервера и т. д.
/usr/bin/smbpasswd. Программа smbpasswd выполняет несколько различных функции в
зависимости от типа запуска , от лица пользователя root или нет. Если запущена от обычного
пользователя, то позволяет пользователю изменять пароль используемый им в SMB сессии
на любых компьютерах.
По умолчанию будет пытаться сменить текущий SMB пароль пользователя на локальной
машине. Это подобно работе программы passwd. В отличие от работы
программы passwd программа smbpasswd не запускается от root, она работает в клиент
серверном режиме и соединяется с локально запущенным демоном smbd.
/usr/sbin/smbd это сервер, который может предоставлять сервисы SMB. Сервисами являются
файловый сервер и сервер печати. Они предоставляются клиентам, которые используют SMB
протокол. Этот протокол совместим с протоколом LanManager (NetBIOS).
/usr/sbin/nmbd - это сервер, понимающий и способный отвечать на запросы службы имен NetBIOS,
посылаемые клиентами SMB/CIFS.Он также учавствует в просмотре (browsing) сети.
При запуске клиенты SMB/CIFS обычно ищут в сети сервер служб SMB/CIFS, необходимый им для
определения IP-адреса интересующей их машины.
Сервер nmbd просто просматривает такие запросы, и, если в запросе упомянуто его NetBIOS-имя,
он ответит IP-адресом машины, на которой он запущен. По умолчанию его NetBOIS-имя – это
первичное DNS-имя машины, на которой он запущен, но может быть переопределено параметром
netbios name smb.conf. Таким образом сервер nmbd будет отвечать на широковещательные запросы
для своего имени(ен).
nmbd также может служить в качестве WINS-сервера (Windows Internet Name Server, Windowsсервер службы имен Internet). Это означает, что сервер nmbd сервера базы данных WINS: по
результатам запросов добавлять имена в базу данных и отвечать на запросы имен клиентов.
Кроме того, сервер nmbd может действовать в качестве прокси-сервера WINS, ретранслировать
широковещательные запросы от клиентов, не понимающих WINS, на WINS-сервер.
/usr/sbin/swat позволяет администратору Samba комплексно конфигурировать файл smb.conf
через веб браузер. Как следствие страница конфигурации swat содержит ссылки помощи ко
всем конфигурационным опциям файла smb.conf позволяя администратору изменять
настройки Samba быстро и просто.
/usr/bin/testparm - это программа-тест для проверки правильности внутреннего оформления
конфигурационного файла.
/usr/bin/smbstatus - программа для вывода списка соединений Samba.
/usr/bin/smbmount - это урезанная версия программы smbclient используемой для монтирования
ресурсов smbfs. Данная прогамма реализует только команду mount, которая вызывает
программу smbmnt для выполнения монтирования.
2.2 Изучить конфигурирование Samba.
(Содержимое файла smb.conf( команда man smb.conf)
По комментариям найти основные параметры, определяющие функции Samba. Задать имя
рабочей группы и имя сервера в сети. Выбрать режим безопасности на уровне пользователей,
шифрацию паролей, файл паролей smb-пользователей.
Для работы сервиса SMB необходим конфигурационный файл smb.conf. Этот файл определяет, к
каким системным ресурсам предоставляется доступ для внешнего мира, и какие ограничения
существуют на использование этих ресурсов.
Конфигурационный файл имеет текстовый формат и разбит на разделы. Каждый раздел
начинается с заголовка раздела, такого как [global], [homes] и т.п. Названия всех разделов в
файле smb.conf заключены в прямоугольные скобки [ ]. Отдельные записи в разделах указываются в
соответствии с формулой name = значение.
Основные разделы в файле smb.conf:
1)Раздел [global] определяет переменные, которые Samba будет использовать для определения
доступа ко всем ресурсам. Все остальные секции описывают отдельный ресурс сервера.
2) Раздел [homes] позволяет удаленным пользователям иметь доступ к своим домашним
директориям.
3) Раздел [printers] используется аналогично разделу [homes]. Если он представлен, то
пользователь может подсоединиться к любому принтеру, определенному в
файле /etc/printcap хоста Linux, даже если печатающее устройство не имеет сервисного
элемента в файле smb.conf.
Основные параметры в smb.conf, которые определяют, как Samba-сервер выглядит со стороны клиентов и в
каких рабочих группах и сетях он доступен:
1) Параметр workgroup
Значение по умолчанию - workgroup. Этот параметр определяет, в какой рабочей группе будет
находиться сервер. При получении запроса от клиента Samba-сервер будет сообщать, что он
принадлежит к рабочей группе, заданной этим параметром.
2) Параметр NetBIOS name
По умолчанию в качестве NetBIOS-имени сервера Samba использует DNS-имя компьютера. Этот
параметр устанавливает NetBIOS-имя Samba-сервера. По умолчанию оно совпадает с первым
компонентом DNS-имени хоста.
3) Параметр NetBIOS aliases
Значение по умолчанию - пустая строка (нет псевдонимов).
Параметр предназначен для создания группы NetBIOS-имен, которые nmbd будет анонсировать как
дополнительные имена, для которых Samba-сервер может предоставлять службы. Однако даже если
компьютер работает в качестве сервера просмотра или сервера авторизации, то эти имена не
анонсируются как имена сервера просмотра или сервера авторизации; только основное NetBIOSимя системы будет являться именем сервера просмотра или сервера авторизации.
4) Параметр server string
По умолчанию строкой описания сервера является номер версии Samba . Параметр определяет, какая
текстовая строка появится на клиентах в качестве комментария к серверу при просмотре сети, а
также при выполнении команды net view.
5) Параметр interfaces
Этот параметр позволяет задать несколько сетевых интерфейсов для того, чтобы Samba-сервер смог
надлежащим образом использовать службу просмотра. Значением параметра является список пар IPадрес - маска подсети.
Если значение этого параметра не задано, то Samba пытается найти основной интерфейс, но не
будет использовать дополнительные интерфейсы. Если в компьютере не установлено несколько
сетевых карт, то следует оставить значение этого параметра пустым; Samba найдет сетевую карту и
автоматически определит IP-адрес и маску подсети.
6) Параметр hosts allow
Значением этого параметра является список узлов, которым разрешен доступ к службе. Если
параметр задан в разделе globals, то он относится ко всем разделяемым ресурсам; более того, если
для конкретного ресурса запрещен доступ для одного из узлов, указанных в списке hosts allow в
разделе globals, то доступ все равно разрешается. Обратным параметром для host allow является host
deny.
7) Параметр security
Этот параметр влияет на то, как будут себя вести клиенты Samba и это один из наиболее важных
параметров файла smb.conf.
Он устанавливает "security mode bit" в репликах к smbd в момент согласования протокола, тем
самым включая или отключая режим безопасности. Клиенты, основываясь на этой информации,
определяют нужно ли (и если да то как) передавать серверу имя пользователя и пароль.
Значение по умолчанию security = USER, т.к. это наиболее подходящее значение для связи с
Windows 98 и Windows NT. Другие значения: SHARE, SERVER или DOMAIN.
8) Параметр password server
Этот параметр позволяет задать имя другого SMB-сервера. При работе в режиме безопасности на
уровне домена или безопасности на уровне сервера Samba будет производить проверку корректности
имен/паролей при помощи указанного удаленного сервера. Вам следует указывать в качестве
значения параметра NetBIOS-имя сервера
9) Параметр browseable
Этот параметр определяет, будет ли разделяемый ресурс видим в списке доступных ресурсов при
просмотре сети. Данный параметр не делает ресурс недоступным - только невидимым.
10) Параметр DNS proxy
Параметр имеет смысл только в том случае, если Samba-сервер играет роль сервера WINS и
определяет, будет ли nmbd переправлять запросы на определение имени серверу DNS, если имя не
найдено в базе данных WINS.
11) Параметр WINS proxy
Параметр определяет, будет ли nmbd отвечать на широковещательные запросы на определение имен,
если имена принадлежат другим узлам, но nmbdзнает ответ.
12) Параметр WINS server
Параметр задает IP-адрес или DNS-имя сервера WINS, на котором nmbd будет регистрировать
используемые имена.
13) Параметр WINS support
Параметр определяет, будет ли nmbd играть роль сервера WINS.
14) Параметр valid users
Значением параметра является список пользователей, которым разрешен доступ к системе. Параметр
не является обязательным. По умолчанию его значением является пустая строка, что означает, что
доступ разрешен всем. Обратный данному параметру является параметр invalid users
15) Параметр OS level
Этот параметр задает значение, которое Samba анонсирует в качестве версии операционной системы
при выборах сервера просмотра. Значение по умолчанию выбрано так, чтобы Sambaсервер проигрывал выборы любой Windows-машине.
16) Параметр preferred master
Параметр указывает, должен ли nmbd играть роль предпочитаемого сервера просмотра для своей
рабочей группы. Если параметр установлен в значение yes, то немедленно после
запуска nmbd инициирует выборы сервера просмотра. По умолчанию сервер, инициировавший
выборы, имеет некоторое преимущество.
17) Параметр local master
Параметр позволяет задать, должен ли nmbd участвовать в выборах сервера просмотра для своей
подсети. Если параметр установлен в значение nо, то Samba-сервер никогда не будет пытаться стать
сервером просмотра. В этом случае Samba будет проигрывать все выборы сервера просмотра и
никогда не станет сервером просмотра подсети.
18) Параметр path
Параметр определяет каталог, который будет являться разделяемым.
Выполним конфигурирование файла smb.conf.
Задаем имя рабочей группы:
Задаем имя узла:
Оставляем режим безопасности на уровне пользователя:
workgroup = 5426
netbios name = 5426-1
security = user
2.3 Внутри каталога /pub сформировать разделяемые каталоги /pub/smbN (N - номер хоста) и
описать их в smb.conf как сетевые ресурсы с различными типами доступа.
Создаем каталог /pub/smb1. Для этого прописываем в терминале mkdir /pub; mkdir /pub/smb1
Рис. 7 Созданный каталог smb1
Опишем созданный каталог в smb.conf. Пропишем в файле smb.conf следующее:
[smb1]
path = /pub/smb1
browsable = yes
writeable = yes
public = yes
2.4 Создать учетную запись пользователя Samba командой smbpasswd -а имя_пользователя
Перед созданием учетной записи пользователя Samba, нужно создать соответствующую
локальную учетную запись на узле.
Прописываем adduser student. Затем задаем пароль: passwd student.
Теперь можно создавать учетную запись пользователя Samba. Прописываем следующее:
smbpasswd –a student.
После этой команды, нас попросят ввести новый smb-пароль, вводим его дважды. Все, учетная
запись student добавлена.
2.5 Стартовать сервер Samba, выполнив скрипт: ./smb restart.
Перед запуском сервера Samba, можно убедиться, что файл smb.conf правильно сконфигурирован, а
также вывести для самопроверки smb секции
Прописываем в терминале: testparm.
В результате выводится сообщение, что все нормально и дамп определения samba (рис. 8).
Рис. 8 Результат команды testparm
Теперь можно приступить к запуску сервера Samba. Для этого нужно запустить демонов smbd и
nmbd. Для этого в системе есть скрипты smb и nmb. Они расположен в /etc/rc.d/init.d.
Для этого прописываем:
./smb start
./nmb start
Теперь можно выполнить команду ps ax, чтобы убедиться, что демоны запущены. Результат
выполнения команды отображен на рисунке 9.
Рис. 9 Результат команды ps ax
В результате после выполнения команды ps ax, мы убедились, что демоны smbd и nmbd запущены.
2.6 В Windows-клиенте проверить доступность и свойства сетевых ресурсов.
Заходим в сетевой окружение и видим, что в списке узлов рабочей группы 5426 появился наш
узел 5426-1 (рис. 10)
Рис. 10 Список узлов рабочей группы 5426
Осуществляем подключение сетевого диска. Вводим \\192.168.26.1\smb1. После чего появляется
окно, в котором вводим имя пользователя student и пароль student (рис. 11).
Рис. 11 Подключение сетевого диска
В результате подключение успешно выполняется и мы получаем доступ к сетевым ресурсам (рис.
12).
Рис. 12 Подключенный сетевой диск
Посмотрим содержимое log-файла log.5426-S9:
[2014/03/09 12:12:30.799869, 1] smbd/service.c:1070(make_connection_snum)
5426-s9 (::ffff:192.168.26.209) connect to service smb1 initially as user student (uid=501, gid=502) (pid
1626)
Здесь мы видим, что подключение к узлу 5426-S9 выполнилось, время подключения, а также
пользователя, от имени которого выполнялось подключение, его uid и gid.
3. Работа SMB-клиента в Linux. Программы smbclient и smbmount (mount.cifs) . (Windows SMB-сервер, Linux - SMB-клиент)
Создаем на windows узле каталог C:\public (рис. 13). И открываем общий доступ к нему. Затем
предоставляем полный доступ к каталогу для пользователя student.
Рис. 13 Содержимое каталога public
3.1 Подсоединиться с помощью программы smbclient к серверу Windows. Опробовать основные
команды интерфейса smbclient.
Для начала посмотрим список всех доступных ресурсов на узле 5426-S9 от имени пользователя
student с паролем student:
smbclient –L //5426-S9 –Ustudent%student
В списке видим и наш созданный каталог public (рис. 14)
Рис. 14 Список сетевых ресурсов на узле 5426-S9
Выполним подключение к каталогу public от имени student:
smbclient //5426-S9/public –Ustudent%student
Рис. 15 Подключение к каталогу public
Посмотрим, что у нас в каталоге введя команду dir (рис. 16)
Рис. 16 Содержимое каталога public
Зайдем в каталог dir1, посмотрим его содержимое (рис. 17)
Выполним копирование файла 1.txt c сервера на машину клиент. Для этого вводим:
get 1.txt /publ/copy_1.txt
Результат отображен на рисунке 17.
Рис. 17 Результат копирования файла с сервера
3.2 С помощью команды smbmount (mount.cifs) выполнить монтирование сетевого каталога
Windows-сервера на Linux-клиенте.
СИНТАКСИС:
mount.cifs {service} {mount-point} [-o options]
Утилита mount.cifs подключает UNC имя указанное в параметре service (используется
синтаксис //server/share, где "server" – это имя сервера или IP адрес и "share" – это имя общего
ресурса) к локальной папке mount-point. Возможно получение программой mount.cifs прав
пользователя root (setuid root) для разрешения не-root пользователям монтировать общие ресурсы в
директории к которым эти пользователи имеют права на запись.
Опции mount.cifs определяются как список разделенных запятыми пар ключ=значение.
Выполним монтирование сетевого каталога public. Для этого введем следующее:
mount.cifs //5426-S9/public /publ –o user=student%student
Результат отображен на рисунке 18.
Рис. 18 Результат монтирования
4. Сетевая файловая система NFS в Linux. (Linux - NFS-сервер, Linux - NFS-клиент)
4.1Найти основные компоненты, необходимые для работы NFS /etc/exports;
/sbin/portmap;
/usr/sbin/rpc.nfsd, rpc.mountd, exportfs.
файл /etc/exports
В файле /etc/exports перечислены все каталоги, экспортируемые с сервера.
Одна строка задает один каталог. Каталог можно указать дважды в файле /etc/exports: один раз для
версий NFS 2 или 3, и один раз для версии NFS 4. Эти каталоги сервер NFS экспортирует
автоматически при каждом запуске. Затем клиенты могут смонтировать экспортированные каталоги.
Синтаксис строк файла /etc/exports следующий:
каталог
-опция[,опция]
Параметр каталог - это полный путь к каталогу. В опциях может быть задан флаг, или список имен
хостов. Если файл /etc/exports отсутствует, то сценарий /etc/rc.nfs не запустит демоны nfsd и
rpc.mountd.
/sbin/portmap (в моем случае он называется rpcbind);
Portmap является сервером, который преобразует программные номера RPC в номера портов
протокола DARPA. Он обслуживает все обращения к RPC.
Сервер RPC при запуске сообщает процессу portmap номер прослушиваемого порта, а также
номера тех программ, которые он готовится обслужить. Если клиенту нужно обратиться к RPC с
конкретным номером программы, он сначала должен войти в контакт с процессом portmap на
серверной машине и определить номер порта связи с пакетами RPC.
/usr/sbin/rpc.nfsd
Демон работающий на сервере и обрабатывающий клиентские запросы операций с файловой
системой.
/usr/sbin/rpc.mountd
Программа Mountd является демон NFS монтирования. При получении запроса смонтировать от
клиента NFS, он проверяет запрос со списком экспортируемых файловых в etc/exports . Если клиенту
разрешено монтировать файловую систему, Mountd создает дескриптор файла на указанный каталог,
и добавляет в etc /rmtab. После получения запроса размонтировать, он удаляет запись клиента из
rmtab.
/usr/sbin/exportfs
Команда для обработки файла экспорта и создания файла /var/lib/ nfs/xtab.
Файл xtab содержит информацию об экспортированных каталогах - именно из этого файла извлекает
сведения mountd, обрабатывая запросы клиентов на монтирование.
4.2 Внутри каталога /pub сформировать разделяемые каталоги /pub/nfsN (N - номер хоста).
Описать экспорт каталогов с различными типами доступа в /etc/exports.
Для доступа по сети с уч.записью root добавить параметр (no_root_squash) . Обновить таблицу
экспорта в ядре командой #exportfs -г.
Создаем на сервере (5426-1) каталог /pub/nfs1 командой mkdir /pub/nfs1. И задаем права доступа к
каталогу командой chmod 777 /pub/nfs1. Затем создадим в нем несколько файлов командой touch
/pub/nfs1/1.txt; touch /pub/nfs1/2.txt
Добавляем в файл /etc/exports следующую запись:
/pub/nfs1 *(no_root_squash, rw)
-
rw –чтение запись;
no_root_squash –по умолчанию пользователь root на клиентской машине не будет иметь доступа к
разделяемой директории сервера. Эта опция снимает это ограничение.
-
* - доступ к каталогу для всех адресов
Далее нужно обновить таблицу экспорта в ядре. Для этого выполняем следующую команду:
exportfs -r
4.3 Перезапустить демоны NFS скриптом #/etc/rc.d/init.d/nfs restart Проверить состав процессов
в памяти командой ps ах.
Теперь на сервере нужно запустить демонов nfsd и mountd. Для этого выполняем команду
ect/rc.d/init.d/nfs restart. Теперь посмотрим состав запущенных процессов командой ps ax. Результат
представлен на рисунке 19.
Рис. 19 Состав запущенных процессов
В результате мы демоны nfsd и mountd в списке есть. Поскольку один экземпляр
демона nfsd может обрабатывать только один запрос одновременно и поскольку время
ответа NFS обычно составляет значительную долю общего времени ответа, запускается
несколько демонов nfsd. Таким образом обеспечивается параллельная работа
демонов nfsd.
4.4 Смонтировать сетевую файловую систему на клиенте с другого хоста в каталог /mnt/nfsN.
Монтирование томов nfs выполняется следующей командой:
mount -t nfs nfs_volume local_dir options
Параметр nfs_volume имеет вид remote_host:remote_dir.
Выполним монтирование сетевого каталога /pub/nfs1 узла 5426-1 на каталог /mnt/nfs1 узла 5426-2.
Для этого на узле 5426-2 прописываем в терминале следующее:
mount –t nfs 192.168.26.1:/pub/nfs1 /mnt/nfs1
Результат монтирования отображен на рисунке 20.
Рис. 20 Результат монтирования каталога /pub/nfs1 узла 5426-1 на узле 5426-2
5. Использование пакета Windows Service for Unix для организации сетевой файловой системы
NFS в Windows. (Windows - NFS-сервер, Linux - NFS-клиент)
5.1 Ознакомиться с составом пакета MSFU.
Службы Майкрософт для Network File System (NFS) предоставляют решение совместного доступа к
файлам, работающих в смешанной среде Windows и UNIX. Службы Майкрософт для NFS позволяют
пользователям перемещать файлы между Microsoft Windows Server и компьютерами под
управлением UNIX с помощью протокола сетевой файловой системы NFS.
Для работы Windows2003 c NFS необходимо добавить Службу Майкрософт для Network File
System. Для этого проделаем следующее:
1. Установка и удаления программ -> Установка компонентов Windows
2. Другие службы доступа к файлам и принтерам сети -> Служба Microsoft для NFS (рис. 21)
И выбираем там:
2.1 Администрирование служб Microsoft для NFS – Позволяет настраивать конфигурацию клиента
для NFS, сервера для NFS и подкомпонентов службы сопоставления имен как на локальном, так и
удаленном компьютерах.
2.2 Внешнее представление данных RPC – Предоставляет службы для клиента NFS, сервера для
NFS и службы сопоставления имен пользователей.
2.3 Клиент для NFS – позволяет этому компьютеру хранить файлы на NFS-серверах UNIX и
обращаться к ним.
2.4 Проверка подлинности сервера для NFS – позволяет пользователям UNIX, сопоставленной
местной учетной записью, обращаться к файлам.
2.5 Программа сопоставления портов RPC – Представляет службы сопоставления портов для
сервера NFS и службы сопоставления имен.
2.6 Сервер для NFS – позволяет компьютерам с ОС UNIX хранить файлы на этом компьютере и
обращаться к ним.
2.7 Сопоставление имен пользователей – сопоставляет имена пользователей UNIX именам
пользователей Windows (для доменов, не хранящих идентификационные записи UNIX в Active
Directory).
Далее выполняем установку компонентов.
Рис. 21 Установка компонентов службы Microsoft для NFS
После установки в меню администрирование появилась новая запись «Службы Microsoft для Network
File System». Выбираем ее, и у нас запускается окно консоли управления NFS.(рис. 22).
Рис. 22 Консоль управления NFS
5.2 В каталоге /student создать разделяемый каталог и описать
его как экспортируемую файловую систему. Согласовать учетные записи в Windows и Linux,
выполнить отображение имен пользователей. С помощью консоли администрирования
стартовать сервис NFS.
Создадим каталог C:\student\andrew, заполним его информацией (рис. 23). Теперь нужно описать
созданный каталог для доступа в сети. Заходим в свойства каталога andrew и видим, что там
появилась новая вкладка «Совместный доступ NFS» (рис. 24). Переходим на эту вкладку и ставим
переключатель в положение «Открыть общий доступ к этой папке». Также ставим галочку напротив
«Разрешить анонимный доступ». Далее переходим к настройке разрешений. Разрешаем для всех
компьютеров чтение и запись, а также разрешаем доступ пользователю root.
Рис. 23 Содержимое каталога C:\student\andrew
Рис. 24 Вкладка «Совместный доступ»
После выполнения всех настроек нажимаем «применить» и выходим. Чтобы связь заработала,
необходимо, чтобы пользователи UNIX систем как-то были связаны с пользователями Windows. Для
этого мы загрузим список пользователей и групп из самой UNIX системы. И сделаем соответствие
пользователей Windows системы и UNIX системы.
Итак, нам надо скачать файлы /etc/passwd и /etc/group. Сделать это можно используя
инструменты, которые мы применяли во втором пункте данной работы, а именно организовать связь:
Linux – smb-сервер, Windows – smb-клиент.
Для этого запускаем демонов smbd и nmbd. И далее выполняем команды:
cp /etc/passwd /pub/smb1/passwd
cp /etc/group /pub/smb1/group
Далее сохраняем эти файлы на диск windows.
В оснастке «Службы Майкрософт для Network File System» жмем правой кнопкой по
«Сопоставление имен пользователей», выбираем радиокнопку «Использовать файлы паролей и
групп», загружаем файлы. Жмем кнопку «Синхронизировать», дальше Ok.
Рис. 25 Настройка сопоставления имен
Теперь в оснастке Службы Майкрософт для Network File System нажимаем правой кнопкой мыши по
разделу «Схемы сопоставления пользователей» и выбираем пункт «Создать сопоставления…». В
появившемся окне (рис. 26) нажимаем на кнопки «Показать пользователей Windows» и «Показать
пользователей Unix». Далее выбираем в обоих столбцах пользователя student. И нажимаем
«Добавить».
Рис. 26 Окно создания сопоставлений пользователей
В результате в окне «Схемы сопоставления пользователей» появилась запись (рис. 27). Также
сопоставим администратора и root.
Рис. 27 Созданная схема сопоставления пользователей
Теперь стартуем в консоли администрирования сервер NFS.
5.3 Смонтировать файловую систему в Linux и проверить доступ.
Выполним монтирование сетевого каталога C:\student\andrew на каталог /mnt/nfs в linux системе.
Выполняем следующую команду:
mount –t nfs 192.168.26.209:andrew /mnt/nfs
Регистрируемся в системе под учетной записью student и смотрим содержимое каталога /mnt/nfs
(рис. 28).
Рис. 28 Содержимое каталога /mnt/nfs
В результате монтирование сетевого каталога C:\student\andrew выполнилось успешно.
5.4 Применить NFS-клиент пакета SFU для монтирования ресурса на NFS-сервере Linux.
Выполним монтирование сетевого каталога /mnt/nfs1 который мы описывали в пункте 4 данной
лабораторной работы. Для этого на linux перезапускаем демона nfsd с помощью скрипта командой:
#/etc/rc.d/init.d/nfs restart. Еще нужно внести небольшое изменение в файл /etc/exports.
Изменим /pub/nfs1 *(no_root_squash, rw) на /pub/nfs1 *(no_root_squash, rw, insecure).
Опция insecure - Разрешить соединения с портов 1024 и выше (Allow connections from port 1024 and
higher) — Службы, работающие с портами до 1024, должны быть запущены от имени root. Этот
вариант разрешает запуск NFS-службы другими пользователями.
Запускаем NFS-клиента на Windows-узле, через консоль администрирования «Службы
Майкрософт для Network File System».
Для монтирования каталога /pub/nfs1 зайдем в настройки подключения сетевого диска. Диск будем
подключать не прописывая \\server\share, а через обзор в сетевом окружении. В сетевом окружение
переходим в NFS Network, далее в Default LAN. В списке будет наш узел с именем 5426-1 (рис. 29).
В списке сетевых ресурсов узла выбираем \pub\nfs1 и нажимаем «Ок». Далее подключаем сетевой
диск.
Рис. 29 Подключение сетевого диска
Подключение сетевого диска проходит успешно.
Рис. 30 Результат подключения сетевого диска.
Download