Учебное пособие к
лабораторным работам
Небаев И.А.
Программное обеспечение
систем телеобработки данных
http://opds.sut.ru
.......
user@host:[]$ rsync -avzLlH --progress /home/user 10.10.12.1::backup/.....10731 100% 1.71MB/s 0:00:00 (xfer#3, to-check=1012/1123) books/kspd_cns/kspd_cns.pdf 2697718 100% 24.74MB/s 0:00:00 (xfer#4, to-check=1011/1123) books/kspd_cns/kspd_cns.toc 19090 100% 177.55kB/s 0:00:00 (xfer#5, to-check=1008/1123) books/kspd_cns/booklet/ books/kspd_cns/booklet/book_kspd_cns.pdf Firewall WWW......
4052506 100% 7.43MB/s 0:00:00 (xfer#6, to-check=1053/1173) ЦУ books/kspd_cns/booklet/book_kspd_cns.ps 37669567 100% 7.97MB/s 0:00:04 (xfer#7, to-check=1052/1173) b....
SVN....... ЦОД R1 R OpenSSH_6.0p1-hpn13v11, OpenSSL 1.0.1c 10 May Reading conguration data /etc/ssh/ssh_conf Южный Боровое Connecting to 10.10.12.1 [10.10.12.1] port 2223.
Connection established.
identity le id_rsa type 1....
......
.....
DNS SMTP
match: OpenSSH_5.8p2_hpn13v11 FreeBSD-20110503 pat OpenSSH_5* debug1: Enabling compatibility mode for protocol 2.................
84135 100% 134.47kB/s 0:00:00 (xfer#13, to-check=1045/1173) 76542 100% 121.34kB/s 0:00:00 (xfer#14, to-check=1044/1173) 19090 100% 30.17kB/s 0:00:00 (xfer#15, to-check=1043/1173)......
Кафедра ОПДС СПб ГУТ ))) Санкт-Петербургский Государственный Университет Телекоммуникаций им. проф. М. А. Бонч-Бруевича (СПб ГУТ) Кафедра Обработки и Передачи Дискретных Сообщений (ОПДС) Небаев И. А.
Учебное пособие к лабораторным работам Программное обеспечение систем телеобработки данных Учебное пособие призвано ознакомить студентов старших курсов с программным обеспечением вычислительных сетей телеобработки данных. Представленный материал служит справочным и методическим пособием при выполнении курса практических лабораторных работ по дисциплине Программное обеспечение систем телеобработки данных (ПОСТД).
Учебное пособие предназначено для студентов, обучающихся по специальности 230100 Информатика и вычислительная техника.
Санкт-Петербург 2012г.
Программное обеспечение систем телеобработки данных Содержание 1. Введение 2. Лабораторные работы 2.1. Лабораторная работа 1. Терминальный мультиплексор консоли управления и обработки данных................................. 2.2. Лабораторная работа 2. Программное обеспечение систем обработки удаленного доступа..................................... 2.2.1. Протокол TELNET............................ 2.2.2. Протокол SSH............................... 2.3. Лабораторная работа 3. ПО службы передачи файлов систем телеобработки данных........................................ 2.3.1. Протокол TFTP.............................. 2.3.2. Протокол FTP............................... 2.3.3. Протокол SFTP.............................. 2.4. Лабораторная работа 4. ПО синхронизации и резервного хранения информации систем обработки данных......................... 2.5. Лабораторная работа 5. ПО систем централизованной обработки и управления версиями..................................... 3. Литература А. Форма отчета Условные обозначения В пособии используются следующие условные обозначения:
Моноширинный шрифт - указывает на командные конструкции.
Курсив - важное предупреждение или примечание.
1. Введение Современные системы телеобработки данных характеризуются сложной распределенной сетевой структурой, применением параллельной обработки массивов данных, клиентсерверной архитектурой приложений и множественным избыточным резервированием обрабатываемых даных.
Наряду с постоянной модернизацией аппаратного обеспечения систем обработки данных, происходит непрерывное развитие и совершенствование средств программного обеспечения. В задачи программного обеспечения центров обработки данных, как совокупности распределнных СОД, входят процедуры организации совместного доступа к хранящейся в центре информации, поддержка актуальных, синхронизированных копий обрабатываемых данных в рамках структуры сети, вопросы удаленного доступа и безопасной загрузки результатов обработки массивов полезной информации.
Решение задач такого рода требует не только применения современного инструментария ПО для управления РСОД, но и накладывает достаточно высокие квалификационные рекомендации на подготовку административно-управляющего состава инженеров, специалистов и др.
Представленное учебное пособие предназначено для введения и ознакомления студентов старших курсов с программным обеспечением систем удаленной обработки данных современных вычислительных сетей. Материал призван служить учебным и методическим пособием при выполнении курса лабораторных работ по одноименной дисциплине кафедры ОПДС.
2. Лабораторные работы 2.1. Лабораторная работа 1. Терминальный мультиплексор консоли управления и обработки данных Цели: Лабораторная работа преследует цели практического введения в базовые функции и инструменты ПО на примере терминального мультиплексора современных СОД (систем обработки данных). Закрепленные навыки работы с терминальным ПО необходимы для успешного выполнения данного курса лабораторных работ.
Описание: Терминальный мультиплексор электронной консоли управления системы обработки данных является прикладным приложением, позволяющим организовывать неперекрывающуюся, многоуровневую, иерархическую структуру терминалов управления систем мониторинга и обработки данными. Особенностью терминального мультиплексора, помимо структуризации терминалов обработки данных, является возможность работы в неинтерактивном режиме фонового исполнения, без потери обрабатываемых данных. На рис.1 представлены основные плоскости применения терминальных мультиплексоров в ряде служб современной инфокоммуникационной сети.
Виртуальная консоль управления В основе работы терминального мультиплексора заложен принцип обработки пользовательских сессий. Сессией называется набор окон (квазитерминалов) управления и обработки данных, запущенных пользователем. В каждой инициированной сессии терминального мультиплексора может располагаться одно или несколько окон, структурированных заданным порядком. В свою очередь, каждое окно может быть разделено на несколько панелей, по-горизонтали и по-вертикали.
В качестве терминального мультиплексора в лабораторной работе используется ПО tmux. В ряде особенностей рассматриваемого ПО следует отметить клиент-серверную архитектуру, кроссплатформенность и низкие требования к аппаратному обеспечению терминала.
Для запуска терминального мультиплексора необходимо открыть терминал (или консоль) c запущенным интерфейсом командной строки и ввести команду tmux.
Управление окнами внутри структуры мультиплексора, в основном, осуществляется с помощью коротких клавишных комбинаций, краткий список которых приведен в табл.1.
Ctrl-b,,, Переход по окнам в соответствующем направлении Таблица 1. Командные клавишные комбинации терминального мультиплексора tmux Комбинация Ctrl-b d позволяет произвести временное отключение от активной сессии. После отключения от сессии терминального мультиплексора, происходит автоматический выход в командную оболочку операционной системы. Программы, запущенные в мультиплексоре, продолжают выполнение. Для возврата к отключенной сессии необходимо вызвать команду tmux с опцией attach. В случае, если мультиплексор не обнаружит предыдущей сессии, последует сообщение об отсутствии запущенных сессий no sessions (лист.1).
user@host [~]: tmux attach no sessions Комбинация клавиш Ctrl-b $ позволяет назначить запущенной сессии произвольное имя. Т. о. в системе, одновременно, может работать несколько разноименных сессий мультиплексора. Переключение и возврат к каждой из сессий осуществляется с помощью команды tmux, аргументами которой служат опция attach и ключ -t с именем подключаемой сессии. Пример приведен в лист.2.
Листинг 2. Использование нескольких отключенных сессий tmux user@host [~]: tmux attach -t session_one...
user@host [~]: tmux attach -t session_two Для завершения работы терминального мультиплексора следует воспользоваться сочетанием Ctrl-b & или командой exit. Следует напомнить, что в данном случае работа всех приложений, запущенных в рамках сессии мультиплексора также будет завершена.
Задачи: Запустить терминальный мультиплексор, произвести настройку окон вывода информации, собрать данные, указанные по заданию и сформировать отчет.
1) Запустить терминал с командной оболочкой ОС и ввести команду tmux. В появившемся окне запустить системный монитор процессов htop;
2) С помощью комбинации Ctrl-b c создать новое окно и разделить его на две равные панели по-горизонтали (сочетание Ctrl-b "). В нижней панели окна последовательно выполнить команду uname -a для отображения информации о рабочей системе и получить список последних терминальных сессий (команда last). С помощью комбинации Ctrl-b перейти к верхней панели и запустить консольный браузер командой elinks opds.sut.ru, отобразив т. о. главную страницу сайта кафедры ОПДС;
3) Комбинацией клавиш Ctrl-b p переключиться на первое окно сессии терминального мультиплексора и просмотреть список системных процессов. Отметить наличие запущенного браузера и нескольких экземпляров оболочки командной строки;
4) Переименовать сессию мультиплексора (клавиши Ctrl-b $) в system. С помощью комбинации Ctrl-b d произвести временное отключение от текущей сессии мультиплексора, выйдя при этом в командную оболочку ОС;
5) Запустить второй терминал с командной оболочкой ОС и снова ввести команду tmux.
Запустить анализатор сетевого трафика командой sudo tcpdump -v -l, просмотреть вывод анализатора и отметить пересылку различных сетевых пакетов в ЛВС лаборатории;
6) Аналогично предыдущим пунктам, переименовать данную сессию мультиплексора в sni и произвести временное отключение терминала (Ctrl-b d);
7) Вернувшись к первому терминалу, реактивировать сессию мультиплексора под названием sni, воспользовавшись командой tmux attach -t sniff. Отметить безостановочное выполнение приложения анализатора сетевого трафика;
8) В командной строке второго терминала, используя команду tmux attach -t system восстановить соответствующую имени сессию мультиплексора. Воспользовавшись сочетаниями переключений между окнами перейти к окну с приложением htop и найти процесс tcpdump, соответствующий запущенному в другой сессии анализатору сетевого трафика;
9) Последовательно завершить работу всех приложений, закрыв окна терминального мультиплексора в каждой из инициированных сессий.
Отчет: Сформировать отчет в электронном виде, в соответствии с формой приведенной в приложении А.
Контрольные вопросы:
1) Дайте определение следующим понятиям: компьютерный терминал, компьютерная консоль, эмулятор терминала, терминальный мультиплексор?
2) Выделите преимущества и недостатки рассмотренного терминального мультиплексора?
3) Приведите пример практического использования терминиальныого мультиплексора, опираясь на задания лабораторной работы?
2.2. Лабораторная работа 2. Программное обеспечение систем обработки удаленного доступа Цели: Лабораторная работа предназначена для целей практического ознакомления с программным обеспечением удаленного доступа к распределнным системам обработки данных. Рассматривается создание шифрованных транспортных туннелей для обеспечения средств управления и передачи файлов между центром управления и удаленной системой обработки данных.
Описание: Программное обеспечение систем обработки удаленного доступа строится на основе ахитектуры клиент-сервер. После успешной авторизации клиентской части ПО пользователя, серверный процесс передает управление указанной командной оболочке операционной системы. Окружение пользователя в случае доступа к удаленной системе, практически полностью аналогично работе в окружении локальной системы. Наиболее распространенными реализацими программного обеспечения обработки удаленного доступа являются службы telnet и ssh. В работе каждой из указанных служб существует ряд определенных особенностей.
Протокол прикладного уровня эталонной сетевой модели OSI TELNET реализует сетевой текстовый (псевдографический) интерфейс между удаленными хостами. В качестве конечных точек взаимодействия могут выступать виртуальные терминалы, системные процессы и пр. Серверный процесс службы telnet по-умолчанию ожидает соединений на TCP-порту 23. Проведя регистрацию пользователя (логин – пароль), служба предоставляет доступ к интерфейсу командной строки. Следует отметить, что протокол TELNET не имеет встроенной поддержки шифрования и является критически уязвимым к проведению любых видов сетевых атак. Применение и исследование службы telnet оправдано с исторической и методологической точки зрения. Кроме указанных причин, клиент telnet, также применяется для исследования доступных сетевых служб на удаленных хостах.
Реализация протокола TELNET, в рамках лабораторной работы, осуществляется серверной службой telnetd и клиентом telnet.
В отличии от службы telnet, протокол SSH предоставляет шифрованное транспортное соединение к удаленной системе обработки данных. Передаваемая информация подвергается симметричному блочному шифрованию, с использованием одного из стойких алгоритмов шифрования Blowsh или Triple DES (3DES). Особенностью работы протокола SSH является создание частного и публичного зашифрованных ключей. В процессе установления соединения и проверки подключения, удаленные узлы обмениваются публичными ключами, подтверждая т. о. свою подлинность. Серверный процесс ожидает подключений на TCP-порту 22. После процедур обмена шифрованными ключами и регистрации пользователя, сервер передает управление интерфейсу командной оболочки. Любая информация передаваемая по протоколу SSH инкапсулируется в транспортные сегменты, подвергается стойкому шифрованию и с помощью процедур сетевого уровня передается на удаленную систему.
Рабочая станция PC
DNS SMTP
В данной лабораторной работе рассматривается реализация протокола SSH, средствами пакета OpenSSH. Помимо предоставления удаленного доступа к интерфейсу командной строки и некоторых других служб, в пакет OpenSSH также входят утилиты передачи файлов между системами обработки данных внутри шифрованного транспортного канала.2.2.1. Протокол TELNET Для подключения к удаленной системе с использованием протокола TELNET достаточно ввести команду telnet в оболочке интерпретатора командной строки. Управление командной оболочкой будет передано клиенту telnet локальной системы. Для управления подключением к удаленным системам существует набор команд, краткий список которых представлен в табл.2.
Таблица 2. Краткий список команд внутренней оболочки клиента telnet Пример использования внутренних командных конструкций telnet приведен в лист.3.
user@host [~]: telnet telnet > ?
Commands may be abbreviated. Commands are :
...
close - close current connection logout - logout remote user, close the connection display - display operating parameters mode - enter line or character mode...
telnet > open ( to ) term. opdsnet Trying 172.16.100.88...
Connected to term. opdsnet.
Escape character is ’^] ’.
FreeBSD / i386 ( term. opdsnet ) ( pts /1) login :...
...
Помимо режима упрощенной командной оболочки (см.лист.3), клиент telnet поддерживает краткую форму с помощью аргументов командной строки. В простейшем случае командная конструкция трансформируется к виду telnet удаленный_узел порт, где в качестве аргумента удаленный_узел следует указать IP-адрес удаленной системы или ее доменное имя. Аргумент порт можно опустить, если серверная служба использует порт по-умолчанию (TCP 23).
Листинг 4. Подключение к удаленному узлу с помощью клиента telnet user@host [~]: telnet domain. opdsnet Trying 172.16.100.18...
Connected to domain. opdsnet.
Escape character is ’^] ’.
FreeBSD / i386 ( domain. opdsnet ) ( pts /3) login :...
...
2.2.2. Протокол SSH Существует несколько типов подключения к удаленной системе с использованием службы ssh. В общем случае, для создания сетевого подключения к удаленной системе обработки данных предназначена команда ssh, в качестве одного из аргументов которой служит IP-адрес или доменное имя удаленной системы (лист.5).
user@host [~]: ssh 172.16.100. В примере из лист.5 происходит попытка установления соединения с узлом 172.16.100.19, где в качестве имени пользователя будет использоваться логин user. В случае успешной попытки подключения к удаленному узлу, необходимо указать пароль. Опция -l, команды ssh, используется в том случае, если необходимо произвести подключение к удаленной системе под другим логином и паролем (лист.6). C кратким набором доступных опций команды можно ознакомится в табл.3.
user@host [~]: ssh -l admin 172.16.100. Приведенные примеры описывают аутентификацию с ключом узла. Это означает, что соединение устанавливается на основании публичного ключа удаленного узла и регистрационной информации пользователя. Однако для создания более надежного подключения применяется метод аутентификации с публичным ключом. В этом случае необходимо сгенерировать собственную пару из публичного и частного ключа, а затем распространить публичный ключ на удаленные узлы. Т. о. становится возможным проводить защищенную аутентификацию без использования регистрационного пароля пользователя системы удаленной обработки данных.
-с blowfish|3des|des Для выполнения данных процедур необходимо использовать команду ssh-keygen, которая сформирует пару ключей в корневом каталоге пользователя /.ssh/id_rsa и /.ssh/id_rsa.pub. Данные хранящиеся в файле id_rsa.pub следует передать на удаленный узел и записать (дописать) в файл /.ssh/authorized_keys. Пример использования команд приведен в лист.7:
user@host [~]: ssh_keygen Generating public / private rsa key pair.
...
Your identification has been saved in / home / user /. ssh / id_rsa.
Your public key has been saved in / home / user /. ssh / id_rsa. pub.
Далее необходимо передать публичный ключ локальной системы на удаленный узел. С помощью команды scp можно произвести передачу файлов по шифрованному транспортному соединению ssh. Команда scp поддерживает множество способов передачи данных, однако в данном случае, в качестве аргументов достаточно указать систему отправки и удаленный узел приемки файла. Пример приведен в лист.8. Краткий список опций команды scp приведен в табл.4.
Листинг 8. Передача файлов по шифрованному каналу ssh user@host [~]: scp ~/. ssh / id_rsa. pub remote :~/. ssh / authorized_keys В лист.8 в качестве первого аргумента команды scp выступает файл id_rsa.pub, который необходимо передать узлу получателю remote (IP-адрес 172.16.100.19), в каталог.ssh под именем authorized_keys.
По завершению указанных процедур, становится возможным подключится к удаленной системе, произведя авторизацию по отпечатку публичного ключа (лист.9):
Листинг 9. Беспарольное подключение по отпечатку публичного ключа user@host [~]: ssh remote...
user@remote [~]:
Задачи: Создать подключение удаленного доступа к системе обработки данных, сформировать шифрованные ключи и произвести их обмен с удаленной системой, передать файл по шифрованному туннелю, воспользовавшись беспарольным доступом с аутентфикацией по публичным ключам.
1) Запустить терминал с командной оболочкой ОС и ввести команду tmux (терминальный мультиплексор). Комбинациями клавиш Ctrl-b c создать новое окно и запустить анализатор трафика tcpdump с фильтром пакетов получаемых и передаваемых от узла term.opdsnet с TCP-портом источника и назначения 23. С помощью команды tee, вывести отфильтрованные IP-пакеты на терминал и сохранить данные в файл telnet.log, в домашнем каталоге пользователя. Для этого следует воспользоваться командой sudo tcpdump -l -v -nn tcp and src port 23 or dst port | tee telnet.log;
2) В первом окне терминального мультиплексора попытаться установить соединение с удаленным сервером term.opdsnet по протоколу TELNET. Для авторизации следует использовать логин student_nn, где переменная nn обозначает номер лабораторного компьютера (например, student_01, student_11 и т. д.).;
3) Воспользовавшись окном сетевого монитора (см.выше), анализировать прохождение сетевых пакетов между узлами назначения. Отметить пакеты инициации соединения 4) Подключившись к удаленной системе ввести пароль stud и выполнить команду uname -a, выведя тем самым информацию об удаленной системе. Для разрыва соединения использовать команду logout;
5) В окне сетевого монитора отметить пакеты инициирующие разрыв сессии telnet.
Прервать фильтрацию пакетов сетевым анализатором tcpdump, воспользовавшись комбинацией Ctrl-c. В файле telnet.log выделить записи установления и разрыва соединения с сервером telnet;
6) Снова запустить анализатор сетевого трафика с фильтром пакетов получаемых и передаваемых узлу term.opdsnet c TCP-портом источника и назначения 22. С помощью команды tee, вывести отфильтрованные IP-пакеты на терминал и сохранить данные в файл ssh.log, в домашнем каталоге пользователя. Для этого следует воспользоваться командой sudo tcpdump -l -v -nn tcp and src port 22 or dst port 22 | tee ssh.log;
7) Переключившись на первое окно терминального мультиплексора, с помощью команды ssh -l student_nn term.opdsnet попытаться установить шифрованное соединени с удаленным сервером term.opdsnet. Переменная nn, как и прежде обозначает номер лабораторного компьютера. Проследить передачу и прием пакетов между узлами в окне сетевого анализатора. Отметить взаимодействующие TCP-порты;
8) Подключившись к удаленной системе ввести пароль stud и выполнить команду uname -a, выведя информацию об удаленной системе;
9) Создать текстовый файл с содержанием ФИО и номера лабораторного компьютера на локальном узле и с помощью команды scp -v -o User=student_nn /home/student/имя_файла term.opdsnet:/home/student_nn/ передать его по шифрованному каналу на удаленную систему. Проверить наличие копии переданного файла на удаленном узле, воспользовавшись файловым менеджером Midnight Commander (команда mc на удаленной системе);
10) Отключившись от удаленного узла (команда exit), на локальном хосте, сформировать зашифрованные ключи, воспользовавшись командой ssh-keygen;
11) Используя команду scp с указанием места расположения файла (публичного ключа) на локальной системе (/home/student/.ssh/id_rsa.pub), произвести его передачу по шифрованному туннелю на удаленный узел в заданный каталог /home/student_nn/.ssh/ под именем authorized_keys. Проследить процесс пересылки пакетов между удаленными узлами в окне анализатора пакетов;
12) Воспользовавшись командой ssh -l student_nn term.opdsnet, снова сделать попытку подключения к удаленной системе. Отметиь отличия в процедурах подключения и регистрации пользователя на удаленной системе;
13) Аналогично, с помощью команды scp, произвести повторную передачу текстового файла на удаленный узел. Убедиться в наличии переданной копии файла на удаленном хосте. Отметить отличия в процедуре передачи файла;
14) Остановить анализатор сетевых пакетов, воспользовавшись комбинацией Ctrl-c.
Просмотреть содержимое файла ssh.log, отметить пакеты инициации сетевого взаимодействия и разрыва соедиений TCP.
Отчет: Сформировать отчет в электронном виде, в соответствии с формой приведенной в приложении А. К отчету приложить именные текстовые файлы telnet.log и ssh.log.
Контрольные вопросы:
1) Определите основные цели и задачи решаемые с помощью ПО удаленного доступа?
2) Выделите отличительные особенности между режимами работы удаленного доступа по протоколам TELNET и SSH?
3) Опишите способы установления соединения при использовании протокола SSH? Охарактеризуйте положительные и отрицательные аспекты приведенных методов.
4) Основываясь на заданиях лабораторной работы, приведите практический пример использования систем удаленного доступа?
5) Перечислите распространенные сетевые службы, основанные на использовании шифрованного соединения по протоколу SSH? Приведите пример использования службы передачи файлов по безопасному туннелю?
2.3. Лабораторная работа 3. ПО службы передачи файлов систем телеобработки данных Цели: Лабораторная работа ставит цели закрепления теоретического материала по протоколам и программному обеспечению службы передачи файлов. В рамках заданий данной лабораторной работы, рассматриваются протоколы FTP, TFTP, SFTP и пакеты прикладного ПО для работы с ними.
Описание: Прикладное программное обеспечение, предназначенное для работы с телематическими службами передачи файлов между системами обработки данных занимает значительное функциональное положение в инфраструктуре современных компьютерных сетей.
Протоколы, реализующие процедуры и функции службы передачи файлов между узлами сети, ведут свою историю со времени зарождения первичных компьютерных сетей (1971 г.). В отсутствии на тот момент функций, предоставляемых сервисами электронной почты (SMTP, POP, IMAP) и пересылки гипертекстовой информации (HTTP), служба передачи файлов (FTP) использовалась как основное средство обмена данными между связанными мейнфреймами и удаленными терминалами обработки информации.
Несмотря на текущее, постепенное внедрение и распростраенние протоколов, поддерживающих широкие возможности электронного документооборота (например, протоколы WebDAV, SMB, интегрированные сервисы Google Docs и т.д.), службы и протоколы передачи файлов занимают прочную позицию в информационном пространстве глобальных и локальных сетей от загрузки файлов на Web-хостинг до распространения программного обеспечения через сетевые репозитории.
Существует несколько вариантов реализаций протокола передачи файлов (FTP), каждая из которых предназначена для наиболее эффективного выполнения задач сетевого обмена информацией. В рамках лабораторной работы будут рассмтариваться протоколы TFTP (Trivial File Transfer Protocol), SFTP (SSH File Transfer Protocol) и стандартный протокол IETF FTP. Следует отметить, что протоколы TFTP и FTP имеют официальный статус (стандарт Internet) и подтверждены спецификациями IETF с номерами RFC 1350 и RFC 959, соответственно. Протокол SFTP разрабатывался в рамках рассмотренного ранее прикладного протокола SSH (IETF RFC 4251), и до настоящего времени является черновиком (Draft) стандарта, однако, де-факто, обладает функциональным рядом реализаций (в том числе принятых промышленностью отрасли) и широким распространением среди стандартных служб сети Internet.
Простейший протокол передачи файлов, в качестве сетевого транспорта использует UDP-дейтаграммы. Серверный процесс ожидает получения дейтаграмм на 69 UDP-порту.
Протоколы FTP и SFTP манипулируют TCP-сокетами. SFTP-служба использует туннелирование канала в транспортный TCP поток SSH, т.е. работа сервера SFTP осуществляется поверх работы службы SSH. По-умолчанию для пересылки файлов используется тот же TCP-порт, что и для службы SSH (TCP 22).
FTP TFTP SFTP
Рис. 3. Пересылка файлов в структуре распределенной сети В отличии от расмотренной ранее утилиты scp из пакета OpenSSH, предназначенной для простого, односеансового, защищенного копирования файлов, служба SFTP реализует не только полный набор возможностей стандартного протокола FTP, но и добавляет шифрование транспортного туннеля, а также возможность аутентификации клиентов по уникальным пользовательским ключам.В независимости от конкретной реализации, протоколы FTP имеют клиентсерверную структуру. Однако базовый протокол FTP отличается достаточно запутанной схемой взаимодействия между клиентским и серверным ПО. По-умолчанию, используется два соединения между удаленными узлами. Управляющее соединение, инициируемое клиентом, характеризуется пересылкой TCP-сегментов между динамическим сокетом клиента и 21 портом сетевой службы сервера. Данный канал предназначен только для организации текстовой оболочки управления и пересылки командных конструкций (например, загрузка файла, выгрузка, просмотр директорий и т. д.). Непосредственная пересылка полезных данных (файлов) может происходить по двум направлениям, зависящим от режима работ сервера FTP.
В первом случае, клиентское ПО, используя управляющее соединение, отсылает серверу номер динамического порта, выделенного ОС для установления внешнего TCPсоединения. После получения соответствующих сегментов TCP-потока, серверная служба FTP попытается установить соединение, используя локальный TCP-порт 20 и указанный динамический порт клиента, т. е. организовать исходящее соединение от сервера к клиенту. После передачи файлов (любых иных данных) данное соединение будет закрыто, а повторная передача потребует выделения клиентом нового динамического порта, для ожидания входящего подключения с стандартного TCP-порта (20) сервера. Такой режим передачи файлов получил название активный. На рис.4 изображена условная диаграмма управляющего соединения и пересылки файлов.
Помимо, представленного выше алгоритма установления соединений, серверная служба стандартного протокола FTP поддерживает две схемы аутентификации пользователей.
В общем случае, аутентификация пользователя необходима для выделения ряда полномочий учетной записи. Использование набора учетных записей позволяет контролировать и разделять доступные ресурсы сервера между всеми пользователями данной службы. Под ресурсами следует понимать не только материально-технические возможности аппаратуры, но и, например, наличие разрешений (прав) на запись в каталог, изменение структуры директорий, модификации файлов и т. д. и т. п. Т. о., в зависимости от того, какую учетную запись использует пользователь при регистрации в системе серверной службы FTP, клиенту будет выделен определенный набор прав на использование ресурсов сервера.
Наиболее распространенный способ доступа к ресурсам сервера FTP в глобальных сетях, это использование анонимного доступа. В данном случае, любой пользователь подключившийся к удаленной службе FTP, автоматически получает ограничененые права, соответствующие гостевой записи. По распространенный сетевой практике, служба FTP разрешает чтение общедоступных файлов, а в редких случаях допускается запись данных в определнные каталоги. Подобный режим работы сервера FTP принято называть анонимным, т. к. для работы с файловым содержимым используется абстрактная, общая (нерегулярная) учетная запись, с максимально ограниченными возможностями.
Для авторизации в системе анонимного сервера FTP следует использовать логин anonymous и пароль в виде электронной почты, например, [email protected]. Необходимо подчеркнуть, что система авторизации не требует указания реально существующего электронного почтового ящика, и в качестве пароля можно использовать произвольную строку символов.
Второй способ аутентификации подразумевает использование индивидуальных учетных записей пользователей. Разрешения на используемые ресурсы сервера, в данном случае, полностью соответствуют правам регулярной учетной записи в ОС сервера FTP. Авторизация пользователя требует указания конкретного логина и соответствующего ему пароля. Подобная схема аутентификации пользователей получила наибольшее распространение в среде корпоративных и коммерческих сетей (например, службы web-хостинга и пр.). Серверную службу, работающую в таком режиме принято именовать приватной (частной).
2.3.1. Протокол TFTP Как уже было упомянуто ранее, протокол TFTP использует транспортные средства UDP-дейтаграмм, а серверная служба ожидает входящие пакеты на 69 UDP-порту. После получения UDP-дейтаграммы на указанный порт, сервеная служба выделяет произвольный динамический порт (UDP) и отвечает на порт клиента, с которого был принят запрос.
Дальнейшее взаимодействие осуществляется только с использованием динамических портов, а порт 69 необходим для первоначального инициирования службы (см. рис.6).
С помощью команды status, можно вывести информацию о текущем соединении. Например:
tftp > status Connected : 10.10.15.1 port Options blksize : disabled timeout : disabled multicast : disabled mtftp variables client - port : listen - delay : timeout - delay : Список всех доступных команд в режиме оболочки tftp выводится командой help.
Наиболее распространенный способ работы с сервером TFTP, заключается в непосредственном указании команде atftp имени файла, требуемого для загрузки на локальную систему. В таком случае, командная конструкция принимает вид atftp –-get -r имя_файла -l имя_файла IP-адрес, где после ключей -r и -l указывается имя файла на удаленной системе, и имя файла, под которым его следует сохранить на локальной системе, соответственно. Например, чтобы загрузить файл firmware.bin с удаленного сервера 10.0.0.1, и сохранить файл под именем update.bin на локальной системе, можно использовать следующую команду:
user@host [~]: atftp -- get -r firmware. bin -l update. bin 10.0.0. Для загрузки файла на сервер TFTP используется опция –-put. В случае наличия разрешения на запись в корневой каталог сервера, можно загрузить файл, воспользовавшись аналогичной командой atftp –-put -r имя_файла -l имя_файла IP-адрес. Смысл ключей -r и -l сохраняется.
2.3.2. Протокол FTP Принцип взаимодействия клиен-серверного ПО и алгоритм работы протокола FTP расмотрен ранее, поэтому данный раздел посвящен описанию функциональных возможностей стандартного клиента ftp.
Консольный клиент ftp это стандартное, межплатформенное ПО для работы с удаленной службой FTP. Для запуска клиента, достаточно указать команде ftp IP-адрес (или доменное имя) узла, к которому необходимо произвести подключение. Процедура установления соединения завершится выводом отладочных (информационных) данных и приглашением к авторизации пользователя. Например:
user@host [~]: ftp 10.0.0....
Connected to 10.0.0.2.
220 - Welcome to private ftp - service.
220 - 10.0.0.2 FTP server ( Version 6.00 LS ) ready.
Name (10.0.0.2: user ):
Для подключения к серверу FTP в пассивном режиме передачи следует воспользоваться опцией -p. По традици, опция -v позволяет вывести дополнительную информацию (т. н. режим подробного вывода).
После выполнения процедур авторизации, клиент ftp переключается в режим командной оболочки, сигнализирующий о готовности принимать непосредственные команды пользователя:
230 Guest login ok, access restrictions apply.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp >...
Команда help выводит список всех доступных директив, help встроенная_команда позволит получить справку по использованию конкретной команды.
Наиболее востребованные директивы перечислены в табл.5.
Таблица 5. Краткий список встроенных команд клиента ftp Для копирования файла из удаленного каталога сервера используется команда get, с опцими указывающими имя и путь до файла на удаленном сервере и название файла, под которым следует сохранить копию на локальном узле. Например, в лист.15 произведено копирование файла image.iso из каталога /pub в локальный каталог узла /home/user/iso/ с именем файла image.iso.
ftp > get / pub / image. iso / home / user / iso / image. iso Загрузка файлов в обратном порядке происходит аналогичным образом. Команде put необходимо передать путь до передаваемого файла и указать место и имя, под которым файл будет записан в системе удаленного сервера (лист.16).
ftp > put / home / user / updates / changelogs. txt / uploads / changelogs. txt Применение прочих команд аналогично рассмотренным примерам. Следует отметить, лишь, необходимость понимания текущего местоположения клиента ftp в пределах корневого каталога удаленной системы. Как указано выше, для перемещения по структуре каталогов используется команда cd, которой в качестве опции передается имя каталога (например, cd /uploads, cd /pub/bin/ и пр.).
2.3.3. Протокол SFTP Как уже было упомянуто выше, помимо реализации всех функций стандартного клиента FTP, протокол SFTP поддерживает туннелирование сетевого трафика в сеанс SSH и аутентификацию пользователя по нескольким защищенным схемам. Практические аспекты работы с клиентом sftp из рассматриваемого ранее пакета OpenSSH в целом не отличаются от применения стандартного клиента ftp. Основное отличие заключается в методах аутентификации подключаемых пользователей.
Основные опции команды sftp (табл.6) сходны по логике действия с рассматриваемыми ранее опциями клиента удаленного доступа ssh.
-с blowfish|3des|des Для подключения к удаленной службе достаточно указать команде sftp имя пользователя и IP-адрес сервера в стандартном формате sftp учетная_запись @10.0.0.1.
Если указанная учетная запись пользователя активна (не заблокирована) и существует на удаленной системе, последует приглашение ввести пароль (лист.17). Как и в предыдущих случаях, успешная авторизация оканчивается переключением клиента в режим командной оболочки с соответствующим приглашением клиента sftp к вводу команд.
user@host :[~]: sftp [email protected]. Password : ********...
sftp > Если в домашнем каталоге (на локальном узле) указанной учетной записи (в данном случае user) существует зашифрованный приватный ключ (id_rsa) SSH, а на удаленной системе присутствует его отпечаток в виде публичного ключа (id_rsa.pub), то вход на удаленный сервер будет осуществлятся с помощью процедуры подтверждения ключей, что т. о., не только исключает необходимость ввода пароля, но и существенно увеличивает степень безопасности удаленного подключения. Подробнее о процедурах генерации зашифрованных ключей и способе их обмена со службой удаленного доступа ssh см. раздел 2.2.2.
локальный хост (с опцией -r будет произведено рекурсивное копирование каталога опцией -r будет произведено рекурсивное копирование каталога) Таблица 7. Краткий список встроенных команд клиента sftp Встроенные команды клиента sftp аналогичны по функциональности командам стандартного клиента (табл.5). Список встроенных команд извлекается директивой help. Наиболее распространенные команды клиента sftp приведены в табл.7.
Работа с файлами на удаленной системе основопологается на правах и разрешениях используемой учетной записи пользователя. Т.о., например, если текущему пользователю разреша запись в конкретный каталог, то становиться возможным модифицировать его содержимое. В случае, если доступные права огрничиваются только чтением (и исполнением), то допускается копирование файлов, но не их изменение. Просмотреть права текущего пользователя по отношению к содержимому каталога (или самой директории) можно с помощью команды ls с опциями -la, примененной в оболочке клиента:
Листинг 18. Просмотр прав пользователя в текущем каталоге sftp > ls - la В примере из лист.18, файлы textbook.pdf, footprint.txt и каталог stock принадлежат пользователю user и группе stuff, о чем свидетельствуют записи в 3 ( пользователь ) и 4 ( группа ) колонке листинга. Символ точки в конце первой строки также указывает, что текущий каталог принадлежит указанному пользователю. Буквы латинского алфавита перечисленные в первой колонке каждой строки обозначают права соответствующие владельцу, участнику группы и прочим лицам. В данном случае, владелец файлов (пользователь user) имеет право на чтение (r), запись (w) и исполнение (x). Участники пользовательской группы stuff имеют права на чтение (r) и и исполнение (x). Прочие пользователи имеют право лишь на чтение файлов и исполнение команд в директории (например, переход по каталогам, вывод содержимого и пр.). Символ d в начале строки указывает, что данная запись является каталогом (dir).
Задачи:
1) Запустить терминал командной оболочки ОС и ввести команду tmux. Создать новое окно (Ctrl-b c) и запустить анализатор трафика tcpdump с фильтром UDPдейтаграмм, получаемых и передаваемых между сервером term.opdsnet и локальным узлом. Для этого следует использовать команду sudo tcpdump -vl -nn udp and host term.opdsnet or host ‘hostname‘ | tee tftp.log. В переменную hostname, выделенную символами апострофов (‘) будет автоматически подставлено доменное имя локального узла;
2) Переключившись на первое окно терминального мультиплексора (Ctrl-b p), и воспользовавшись клиентом atftp следует загрузить файлы flash.bin и update.txt с удаленного сервера в домашний каталог локального узла;
3) Убедившись в наличии копий указанных файлов, следует остановить сетевой анализатор пакетов и провести анализ данных, накопленных в файле tftp.log. Необходимо отметить UDP-дейтаграммы инициирующие подключение к серверу, а также выделить взаимодействующие сокеты;
4) Перезапустить анализатор, настроив правила фильтрации на отображение трафика TCP между сервером term.opdsnet и локальным узлом. При этом следует указать конкретные порты назначения и отправки (TCP 20 и 21), применив конструкцию sudo tcpdump -vl -nn tcp and host term.opdsnet or host ‘hostname‘ or dst port 21 or src port 21 or src port 20 | tee ftp_act.log.
Данные полученные с помощью фильтра будут выводится на экран терминала и сохраняться в файле ftp_act.log;
5) Подключившись к удаленному серверу term.opdsnet, используя стандартный клиент ftp произвести копирование файла writeme.txt с сервера в домашний каталог на локальном узле. Для авторизации на сервере FTP следует использовать учетную запись с логином student_nn, где переменная nn обозначает номер лабораторного компьютера (например student_01, student_07 и т. д.). В качестве пароля использовать комбинацию stud. Открыв файл в текстовом редакторе leafpad, записать ФИО и строку FTP в активном режиме передачи файлов ;
6) Аналогично, используя клиент ftp произвести загрузку модифицированного файла writeme.txt на FTP-сервер;
7) Остановить сбор сетевых пакетов анализатором tcpdump. Настроить правила фильтрации на сбор информации о передаче TCP-данных между узлами term.opdsnet и локальной системой, указав в данном случае порт источника и назначения 21.
Полученные данные следует выводить на экран терминала и сохранять в файле ftp_pasv.log. Для этого необходимо применить команду sudo tcpdump -vl -nn tcp and host term.opdsnet or host ‘hostname‘ or dst port 21 or src port | tee ftp_pasv.log;
8) С помощью опции -p, явно указав клиенту ftp режим пассивной передачи данных, подключиться к серверу term.opdsnet и скопировать текстовый файл writemetoo.txt в домашний каталог локальной системы. Добавить ФИО и строку FTP в пассивном режиме передачи данных в файл writemetoo.txt, используя текстовый редактор leafpad;
9) Воспользовавшись клиентом ftp в пассивном режиме передачи данных записать измененный файл на сервер. Приостановить сбор сетевых пакетов анализватором tcpdump и проверить содержимое файлов ftp_act.log и ftp_pasv.log;
10) Используя фильтр, отбирающий пересылку TCP-данных с портом источником и назначения 22, запустить анализатор сетевых пакетов командой sudo tcpdump -vl -nn tcp and host term.opdsnet or ‘hostname‘ or dst port 22 or src port 22 | tee sftp.log;
11) Командой sftp [email protected] произвести подключение к SFTP-серверу.
Как и ранее, переменная nn обозначает номер лабораторного компьютера;
12) После успешной авторизации, с помощью встроенной в оболочку sftp команды mkdir создать каталог.ssh в домашнем каталоге пользователя на удаленной системе. Сгенерировав шифрованные ключи (см. раздел 2.2.2 л. р. 2) на локальном узле, скопировать публичный ключ (id_rsa.pub) в созданный каталог.ssh под именем файла authorized_keys. Разорвать соединение клиента sftp командой quit;
13) Повторно воспользовавшись командой sftp [email protected] подключиться к серверу SFTP, используя на этот раз автоматическую авторизацию по проверке шифрованных ключей. Отметить различия между двумя способами аутентификации;
14) Используя редактор leafpad создать текстовый файл securesftp.txt и внести в него строку Этот файл передан по защищенному каналу SSH. Скопировать указанный файл на удаленнуый сервер, применив встроенную в клиент sftp команду 15) Cоздать каталог data на удаленном сервере и перенести файлы writeme.txt, writemetoo.txt и файл securesftp.txt в новый каталог. Снова используя команду put загрузить файлы flash.bin и update.txt с локального узла в папку data удаленного сервера SFTP;
16) Остановить сбор сетевых пакетов анализатором tcpdump, и проверить содержимое файла sftp.log, отметив при этом используемые при обмене файлами TCP-сокеты.
Отчет: Сформировать отчет в электронном виде, в соответствии с формой приведенной в приложении А. К отчету приложить именные текстовые файлы tftp.log, ftp_act.log, ftp_pasv.log и sftp.log.
Контрольные вопросы:
1) Выделите основные отличия протоколов FTP от протокола прикладного уровня HTTP? Укажите основные области применения?
2) Перечислите способы аутентификации пользователей в расммотренных протоколах TFTP, FTP, SFTP? Обозначьте положительные и отрицательные стороны перечисленных методов?
3) Назовите зарегистрированные (стандартные) номера портов рассмотренных протоколов передачи файлов? Дайте определение понятию сокет ?
4) Используя диаграммы в описании лабораторной работы, оформите алгоритмы работы протоколов TFTP, FTP, SFTP?
5) Укажите основные отличия в активном и пассивном режиме передачи данных протокола FTP? Объясните необходимость наличия обоих режимов?
6) В лабораторной работе рассматривалось стандартное ПО систем телеобработки данных с консольным интерфейсом (интерфейсом командной строки). Перечислите аналогичное ПО, использующее графический интерфейс пользователя?
7) Опишите преимущества и недостатки рассматриваемого стандартного ПО СТД для передачи файлов в сравнении с указанными утилитами, использующими графический интерфейс?
2.4. Лабораторная работа 4. ПО синхронизации и резервного хранения информации систем обработки данных Цели: В лабораторной работе рассматриваются принципы работы прикладного ПО, предназначенного для выполнения задач сетевой синхронизации и резервирования информации между удаленными системах обработки данных.
Описание: Одной из главных функций современных систем телеобработки данных является задача синхронизации и хранения резервных копий обработанной информации, как в пределах структуры сети распределенной СОД (локально), так и на системах удаленного доступа. Располагая несколькими распределенными архивами данных, становится возможным обеспечить параллельную, бесперебойную обработку и передачу информации между узлами сети с высокой степенью защищенности.
Отказоустойчивость системы обработки данных складывается из нескольких слагаемых степень избыточности самой информации, количество копий архивов и распределенность систем обработки и хранения данных, защищенность каналов передачи данных от ошибок и воздействия внешних помех, количество резервных линий (транков) и т.д. В основные функции ПО синхронизации и резервного хранения информации СОД входят задачи обеспечения своевременной синхронизации данных между узлами распределенной сети, корректная обработка обновлений в структуре архива резервного хранения и предоставление сетевого доступа к копии информации, обрабатываемой СОД.
В качестве примера функциональных возможностей ПО синхронизации и резервного хранения информации систем обработки данных, на рис.7 приведен случай практического применения данного ПО в качестве инструмента сетевой передачи и архивного хранения пользовательских данных на удаленной, распределенной системе обработки данных (РСОД).
В лабораторной работе, для целей практического ознакомления с рассматриваемым классом ПО СОД будет использоваться прикладной пакет rsync.
Серверный прикладной процесс службы rsync ожидает подключений от клиентского ПО, используя 873 порт. В качестве протокола транспортного уровня может быть использован как протокол TCP, так и протокол UDP. Отличительной особенностью рассматриваемого ПО системы телеобработки данных, является минимизация передачи служебного и пользовательского трафика. Это возможно, за счет вычисления различий в структуре синхронизирующихся каталогов и передачи только тех частей информации (файлов), которые или отсутствуют, или были изменены в структуре системы назначения (сервера или клиента). Данный фактор можно считать решающим, при необходимости синхронизации и резервного копирования файлов между системами, объединенными линиями связи с большими задержками (любой вид модемного подключения Dial-up, DSL, беспроводное сотовое подключение и т.д.). В качестве дополнительной опции, следует отметить так же поддержку сжатия передаваемых данных.
RSYNC SSH
Рис. 7. Хранение информации на удаленных системах обработки данных Помимо обеспечения средств сетевой синхронизации и резервного хранения, ПО rsync может использоваться для синхронизации данных расположенных на локальных СОД.В общем случае командная конструкция для выполнения синхронизации посредством rsync должна содержать исходный путь и целевую систему назначения. В лист.19 приведен пример загрузки копии дерева каталогов с удаленного сервера remote из каталога backup в локальный каталог пользователя /home/user:
Листинг 19. Пример сетевой синхронизации каталогов user@host [~]: rsync - avz remote :: backup / / home / user Расшифровка опций, примененных к команде rsync в лист.19 приведена в табл.8. Следует обратить особое внимание, что подключение к удаленному модулю backup на системе remote происходит под учетной записью локального пользователя, т. е. в данном случае user. Если необходимо использовать специальную учетную запись (например, учетную запись пользователя на удаленной системе), в конструкции из лист.19 необходимо явно указать требуемую учетную запись. Например:
user@host [~]: rsync - avz stuff@remote :: backup / / home / user Т.о. для подключения к удаленному модулю backup будет использоваться учетная запись пользователя stuff, а не запись локального пользователя (user).
В конструкции команды используется символ двоеточия (::) для строгого указания команде rsync произвести подключение к 873 TCP-порту удаленной системы. При указании исходной системы в формате remote:backup/, клиент rsync попытается установить соединение с оболочкой удаленного доступа (ssh) указанной системы, и использовать данную службу в качестве транспорта. Важной особенностью также является присутствие символа косой черты (/) в конце исходного пути в данном случае, команде rsync явно указывается произвести синхронизацию содержимого каталога backup. В противном случае, будет произведено копирование самого каталога backup в локальный каталог /home/user.
–-backup-dir=каталог Помимо задач сетевой синхронизации данных, rsync может быть использован для сохранения структур локальных каталогов. Конструкция команды, в данном случае, будет состоять из локальных путей до синхронизируемых объектов. Например, для синхронизации данных, хранящихся в каталоге rootdir (исходный каталог) и backupdir (целевой каталог) можно использовать следующую команду:
Листинг 21. Пример синхронизации локальных каталогов user@host [~]: rsync - avr -- delete ~/ rootdir / ~/ backupdir / В лист.21 используется опция –-delete, которая указывает команде rsync удалить каталоги из директории backupdir, отсутствующие в директории исходного каталога (rootdir). Следует особо отметить наличие завершаюшего символа косой черты / как уже было отмечено ранее, это приведет к копированию содержимого каталога, а не самого каталога. Символ ~ в конструкции пути, представляет собой сокращенную форму записи домашнего каталога пользователя, и в данном случае эквивалентен записи /home/user/.
Задачи: Создать локальную копию заданной структуры каталогов, произвести сетевую синхронизацию с удаленным сервером обработки данных, синхронизировать каталоги пользователей соседних лабораторных компьютеров с помощью центрального сетевого сервера и выполнить очистку сетевой и локальной копии обрабатываемых каталогов.
1) Запустить терминал командной оболочки ОС и ввести команду tmux (терминальный мультиплексор). Разделить текущее окно мультиплексора по-горизонтали, и в одной из панелей запустить анализатор трафика tcpdump с фильтром пакетов получаемых и передаваемых от узла term.opdsnet с портом назначения и портом источником TCP 873. Для этого следует использовать команду sudo tcpdump -vl -nn tcp and src port 873 or dst port 873 | tee rsync.log. Как и в предыдущих лабораторных заданиях, конвеерная передача данных утилите tee позволит сохранить заголовки IP-пакетов в указанный файл и, одновременно, вывести их на экран терминала;
2) С помощью файлового менеджера mc проверить наличие и иерархию каталогов в домашней директории пользователя на локальном узле, изображенную на диаграмме рис.8. Добавить индивидуальные данные в файл name.txt (ФИО, группа) и address.txt (номер лабораторного компьютера). В домашнем каталоге пользователя создать папку с именем backup_nn, где переменные nn определяют номер лабораторного компьютера (например, backup_01 или backup_10);
3) Используя команду rsync и опции из табл.8 произвести синхронизацию содержимого каталога rootdir и backup_nn, создав, т. о., локальную архивную копию файлов. С помощью используемой ранее команды tee вывести данные в окно терминала и сохранить в файл rsync_local.log. Для этого можно воспользоваться следующей командой: rsync -avr –-progress /home/student/rootdir/ /home/student/backup_nn/ | tee rsync_local.log. После выполнения процедуры, проверить наличие копий файлов в директории backup_nn;
4) Произвести сетевую синхронизацию содержимого локального каталога backup_nn с удаленным хранилищем данных на сервере term.opdsnet, и сохранить протокол сетевой передачи в файл rsync_remote.log. Для подключения к модулю синхронизации следует использовать учетную запись удаленного пользователя student_nn (значение nn в данном случае должно быть идентично значению переменной nn из предыдущих пунктов задания). Для этого необходимо использовать команду rsync -avrz –-progress /home/student/backup_nn [email protected]::students | tee rsync_remote.log. В качестве пароля для доступа к удаленномк модулю синхронизации students следует использовать комбинацию stud. В панели сетевого монитора проследить процедуры установления соединения с серверной службой rsync, передачу данных и отметить TCP-порты участвующие в обмене информацией на обоих узлах;
5) Создать каталог nethood на локальном узле, и загрузить данных с сетевого хранилища из указанного каталога, синхронизированного с соседнего лабораторного компьютера. Для этого следует воспользоваться командой rsync -avzr –-progress [email protected]::students/backup_nn /home/student/nethood, где в качестве переменной nn следует указать каталог backup, расположенный на сетевом хранилище term.opdsnet, с номером отстоящим на две цифры далее локального номера лабораторного компьютера (например, backup_10 или backup_02 и т. д.).
Используя файловый менеджер mc, проверить наличие новых файлов name.txt и address.txt в структуре каталога nethood, убедившись в их принадлежности соответствующему удаленному узлу. В панели сетевого монитора tcpdump отметить процедуры передачи и приема сетевых пакетов между указанными узлами сети;
6) По заверешению всех процедур обмена файлами, очистить содержимое локальных и удаленных каталогов на сетевом хранилище. Для этого, с помощью файлового менеджера mc очистить локальные каталоги, а затем произвести процедуры сетевой синхронизации с сервером, указав команде rsync опцию –-delete. Например, rsync -avr –-progress –-delete /home/student/backup_nn [email protected]::students.
Отчет: Сформировать отчет в электронном виде, в соответствии с формой приведенной в приложении А. К отчету приложить именные текстовые файлы rsync.log, rsync_local.log и rsync_remote.log.
Контрольные вопросы:
1) В краткой форме, опишите алгоритм манипуляции данными, лежащий в основе рассматриваемого ПО?
2) Приведите пример алтернативных служб, применимых для выполнения задач сетевой синхронизации и резервирования данных?
3) Укажите два способа синхронизации данных с помощью клиента rsync и сетевых служб, выполняющихся на сервере? Определите используемые TCP-порты?
4) Выделите основные отличия в алгоритме работы и назначении ПО rsync и распростарненной сетевой службе сети Internet FTP?
5) Воспользовавшись заданиями лабораторной работы, приведите практический пример использования рассматриваемого ПО?
2.5. Лабораторная работа 5. ПО систем централизованной обработки и управления версиями Цели:
Задачи:
Отчет:
Контрольные вопросы:
3. Литература [1] Олифер В. Г., Олифер Н. А. Компьютерные сети. Принципы, технологии, протоколы: Учебник для Вузов. 3-е издание. СПб.: Питер, 2008.
[2] Крейг Х. TCP/IP. Сетевое администрирование, 3-е издание. СПб.: Символ-Плюс, 2004.
[3] Боттс Т., Доусон Т., Перди Г. Н. Linux. Руководство администратора сети. 3-е издание.
М.: Кудиц-Пресс, 2006.
А. Форма отчета Отчет по результатам выполненной лабораторной работы формируется в электронном виде согласно шаблону (см.далее). Формат файла для сохранения PDF.
К отчету прикрепляются файлы, содержащие данные, собранные с помощью сетевого анализатора пакетов tcpdump во время выполнения заданий лабораторной работы.
PDF-отчет и log-файлы анализатора, сохраняются в архиве (zip, tar и пр.). Название архива должно состоять из латинских символов, без использоваия тире, дефисов, двоеточий и т. д. Например, имя архива может состоять из фамилии и номера лабораторной работы NebaevIA_lr8.tar.gz.
Архив с отчетом следует отправить на электронный адрес [email protected]. В поле subject электронного письма рекомендуется указать значимую тему, например, Отчет по л.р.3.
Соблюдение правил сетевого этикета (http://ru.wikipedia.org/wiki/Netiquette) широко приветствуется.
Задачи, решенные в рамках лабораторной работы:
В краткой форме привести основные задачи лабораторной работы, указать способы и инструменты их решения. Например: Основными задачами л.р. является.... Для решения указанных задач применяется следующее ПО:.... Кратко, с технической точки зрения, охарактеризовать и проанализировать работу используемого ПО.
Например: ПО... используется для..., состоит из..., выполняется на....
Блок-диаграмма или схема логических соединений узлов сети:
Схематичное изображение функциональных компонентов (узлов) сети, с указанием ПО, выполняемого на данном узле и способе сетевого взаимодействия.