66523

Сетевые службы. Защита сетевых ресурсов

Лабораторная работа

Информатика, кибернетика и программирование

Шлюз по умолчанию и DNS-сервер имеют IP-адрес 192.168.123.1 В качестве DNS-сервера используется сервер bind9, сконфигурированный в ОС Ubuntu GNU/Linux. Исходная конфигурация не изменялась, были добавлены зоны для компьютеров сети

Русский

2014-08-22

27.84 KB

3 чел.

ФГБОУ ВПО "Санкт-Петербургский государственный
политехнический университет"

Факультет технической кибернетики

—————————

Кафедра информационной безопасности компьютерных систем

ОТЧЕТ

по лабораторной работе №3

«Сетевые службы. Защита сетевых ресурсов»

по дисциплине «Операционные системы»

Студент гр. 2088/1

Никитин А. С.

Преподаватель

Степанова Т. В.

Санкт-Петербург — 2012

1. Формулировка задания

Цель работы — изучение сетевого взаимодействия в ОС различного типа, настройка базовых сетевых серверов и использования межсетевого экрана.

2. Использованные теоретические сведения

http://www.zytrax.com/books/dns/ch8/soa.html
http://sudouser.com/ustanovka-i-nastrojka-dns-servera-bind9-ubuntu-debian-howto.html
http://linux.die.net/man/5/pam.d
http://www.opennet.ru/base/net/vsftpd_fedora7.txt.html

3. Результаты работы

3.1. Выполнение индивидуального задания

Была настроена сеть из четырёх компьютеров со следующими параметрами:

Операционная система

IP-адрес

DNS-имя

Ubuntu GNU/Linux

192.168.123.1

ftp.network

Windows XP

192.168.123.2

wini.network

Windows XP

192.168.123.3

winii.network

Windows XP

192.168.123.4

winiii.network


Шлюз по умолчанию и DNS-сервер имеют IP-адрес 192.168.123.1
В качестве DNS-сервера используется сервер bind9, сконфигурированный в ОС Ubuntu GNU/Linux. Исходная конфигурация не изменялась, были добавлены зоны для компьютеров сети:
В файл /etc/bind/named.conf добавлена строка ‘include “/etc/bind/work.conf”;’
Содержимое файла /etc/bind/work.conf:

zone "ftp.network" {

type master;

file "/etc/bind/ubuntuserver";

};
zone "wini.network" {

type master;

file "/etc/bind/winiclient";

};
zone "winii.network" {

type master;

file "/etc/bind/winiiclient";

};
zone "winiii.network" {

type master;

file "/etc/bind/winiiiclient";

};

В этом файле содержатся записи о зонах доменных имён.
Все файлы, указанные в записях зон, одинаковы по своей структуре и отличаются лишь некоторыми полями:

$TTL 604800 ;Время, в течение которого может сохраняться кешированная запись

@ IN SOA ftp.network. root.ftp.network. ( ;SOA-запись – основные параметры зоны. В заголовке указаны доменное имя и e-mail-адрес владельца

2012040301 ;серийный номер. Должен увеличиваться при изменении записи зоны. По рекомендациям должен содержать дату изменения и количество изменений за день

108000 ;Время, по прошествии которого вспомогательный DNS-сервер должен обновлять запись

1800 ;Время между попытками обновления записи, если прошлая была неудачной

120960 ;Время, в течение которого запись действительна

1800 ;

);

@ IN NS ftp.network. ;NS-сервер, обслуживающий данную зону

@ IN A 192.168.123.1 ;IP-адрес, соответствующий зоне

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

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

/etc/vsftpd.conf:

anonymous_enable=NO #Сервер не анонимен

local_enable=YES #Необходимо разрешить использование локальных логинов для входа на сервер, так как будут использоваться виртуальные пользователи

write_enable=YES #Разрешение записи на сервер

local_root=/data #Корневой каталог, который будет установлен при входе на сервер пользователя

chroot_local_user=YES #Помещение локальных пользователей в chroot-среду.

guest_enable=YES #Гостевой вход будет приведён ко входу локального пользователя

guest_username=ftpuser #Имя локального пользователя
user_config_dir=/etc/vsftpd/users/ #В данной директории хранятся дополнительные файлы конфигурации, специфичные для разных пользователей

virtual_use_local_privs=YES #Виртуальные пользователи будут пользоваться привилегиями локальных

chmod_enable=YES #Разрешение использования команды SITE CHMOD

chown_uploads=YES #Для загруженных файлов будет меняться владелец

chown_username=ftpuser #на локального пользователя, представляющего виртуальных пользователей на данном компьютере

local_umask=0022 #Значение маски, используемое при создании файла локальным пользователем. Только чтение для пользователей из группы и всех остальных

file_open_mode=0777 #Базовое значение маски

listen=YES #Запускается vsftpd отдельно

listen_port=21 #Порт для ожидания подключений

pasv_min_port=30000 #Диапазон портов, используемых для PASV-подключения
pasv_max_port=30999

xferlog_enable=YES #Настройки логирования

xferlog_std_format=YES

xferlog_file=/var/log/vsftpd.log

tcp_wrappers=YES #Входящие подключения проходят через контроль доступа tcp_wrapers

pam_service_name=ftp #Название сервиса аутентификации пользователей


Файл /etc/pam.d/ftp содержит конфигурацию сервиса аутентификации пользователей

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/login #аутентификация пользователя

account required /lib/security/pam_userdb.so db=/etc/vsftpd/login #разрешение/запрет доступа

Файл /etc/vsftpd/login.db получен из текстового файла, содержащего пары строк – логин и пароль , с помощью команды db4.6_load -T -t hash -f logins.txt login.db – получение базы данных хешей.

Также для пользователей созданы персональные конфигурации в директории /etc/vsftpd/users. В данных файлах настраиваются права доступа и корневые каталоги для пользователей.

/etc/vsftpd/users/useri

local_root=/data #Корневой каталог для данного пользователя

write_enable=YES #Для данного пользователя разрешены команды записи

/etc/vsftpd/users/userii

local_root=/data/userii #Корневой каталог для данного пользователя

write_enable=YES #Для данного пользователя разрешены команды записи

/etc/vsftpd/users/useriii

local_root=/data/useriii #Корневой каталог для данного пользователя

write_enable=NO #Для данного пользователя запрещены команды записи

Пользователь

Операция

Локальный адрес файла

Результат

useri

Запись в /testfile

/data/testfile

Файл записан

useri

Запись в /useriii/testfile

/data/useriii/testfile

Файл записан

userii

Запись в /testfile

/data/userii/testfile

Файл записан

useri

Чтение /userii/testfile

/data/userii/testfile

Файл прочтён

userii

Чтение /testfile

/data/userii/testfile

Файл прочтён

useriii

Запись в /testwrite

/data/useriii/testwrite

Файл не записан

useriii

Чтение /testfile

/data/useriii/testfile

Файл прочтён


Правила фильтрации входящего трафика:
iptablesA INPUTp tcpj DROP
iptablesA INPUTp udpj REJECT

iptablesA INPUTp icmpj REJECT
Результат – подключение к ftp-серверу стало невозможным, так как для этого используется протокол tcp.

3.2. Ответы на контрольные вопросы

1. Какие функции обеспечивает серверная и клиентская части сетевой ОС?

Серверная часть обеспечивает средства создания и обслуживания разделяемых ресурсов.

Клиентская часть обеспечивает возможность доступа к разделяемым ресурсам.

2. Каковы основные отличия рекурсивных DNS-серверов от не рекурсивных?
При нахождении отсылки на другой DNS-сервер не рекурсивный сервер отправит клиенту сообщение об этом как результат трансляции. После этого клиент должен самостоятельно послать запрос на следующий сервер. Рекурсивный сервер делает этот процесс прозрачным для пользователя, возвращая сразу результат трансляции.

3. Какие функции выполняют демоны Samba?
Два основных демона – smbd и nmbd. Smbd обеспечивает сетевые сервисы и аутентификацию и авторизацию пользователей, nmbd обеспечивает работу службы имён NetBIOS.

4. Каким образом можно ограничить доступ к ресурсам Web-сервера Apache?
Существует файл access.conf, в котором есть возможность задать права доступа для отдельных каталогов. Таким образом можно ограничить доступ посетителей Web-сайта к папкам, содержащим не предназначенные для показа им файлы.

5. С какой целью используется действие LOG межсетевого экрана netfilter/iptables?
Данное действие может использоваться для журналирования пакетов, соответствующих определённым критериям, что может быть полезным для из последующего анализа.

4. Выводы

Сетевые службы представлены достаточно широко, и в большинстве своём имеют достаточно гибкие настройки, чтобы обеспечивать безопасность и выполнение именно тех действий, что требуются для решения поставленной задачи.


Приложение

Исходные тексты программ

#include <linux/kernel.h>

#include <linux/module.h>

#include <linux/proc_fs.h>

#include <asm/uaccess.h>

#include <asm/current.h>

#include <linux/security.h>

#include <linux/cred.h>

#define FILE    "euidread"

static char filebuffer[] = "Hello, this is \"euidread\" \"file\" content\n"; //Строка,
//
возвращаемая при чтении из файла

static struct proc_dir_entry *procfile;

static ssize_t file_read(struct file *filp, char *buffer, size_t length, loff_t *offset) {

   static int finished = 0; //Чтение файла

   if (finished) { //Если поднят флаг завершения, возвращаем ноль

       finished = 0;

       return 0;

   }

   finished = 1;

   if (copy_to_user(buffer, filebuffer, 41)) return -EFAULT; //Возвращается строка

   return 41;

}

int file_open(struct inode *inode, struct file *file) { //Открытие файла

   try_module_get(THIS_MODULE);

   return 0;

}

int file_close(struct inode *inode, struct file *file) { //Закрытие файла

   module_put(THIS_MODULE);

   return 0;

}

static struct file_operations file_ops = { //Операции над файлом

   .read = file_read,

   .open = file_open,

   .release = file_close

};

static int access_permission(struct inode *inode, int op) { //Определение прав доступа

   if ((((op & 07) == 04) && current_euid() < 1000)) return 0; //Если действие – чтение,

//и EUID меньше 1000, то доступ разрешается

   return -EACCES;

}

static struct inode_operations inode_ops = { //Операции над inode

   .permission = access_permission

};

int init_module() { //Инициализация модуля

   procfile = create_proc_entry(FILE, 0666, NULL); //Создание файла с полным доступом

   if (procfile == NULL) return -ENOMEM;

   procfile->proc_iops = &inode_ops; //Задание параметров

   procfile->proc_fops = &file_ops;

   procfile->mode = S_IFREG | S_IRUSR;

   procfile->uid = 0;

   procfile->gid = 0;

   procfile->size = 80;

   return 0;

}

void cleanup_module() { //Выгрузка модуля

   remove_proc_entry(FILE, NULL);

}


 

А также другие работы, которые могут Вас заинтересовать

23522. History of the Mexicans as Told by Their Paintings 266 KB
  This edition is the only available complete English translation published one year after Joaquín García Icazbalceta first published the Spanish text in the Anales del Museo Nacional de México. Of the Mexican Year. Vchilobi 7 the younger brother and god of the Mexicans was born without flesh naciò sin carne but only bones in which condition he lived six hundred years during which period of time the gods did nothing whatever the father as well as the sons and in their representation there is no account taken of these six hundred...
23523. ПРОСТРАНСТВЕННО-ХРОНОЛОГИЧЕСКИЕ АСПЕКТЫ ИНДОЕВРОПЕЙСКОЙ ПРОБЛЕМЫ И КАРТА ПРЕДПОЛАГАЕМЫХ ПРАРОДИН ШЕСТИ НОСТРАТИЧЕСКИХ ЯЗЫКОВ 147.5 KB
  Очевидно что на карте помещены прародины праязыков потомков ностратических языков и что эта картина на несколько тысячелетий отстоит от эпохи ностратического единства датируемого А. Долгопольским VIII тыс. Хелимского: Этот период отделен от нас не одним десятком тысячелетий его ареалом был Южный Прикаспий [3 с. Терентьева считающих что по данным глоттохронологии возраст ностратической макросистемы определяется около 15 тыс.
23524. Водский язык в 19 – 20 веках 294.5 KB
  А теперь как здороваться и прощаться: Terve Tere päivä Тэрве Тэрэпяйвя Здравствуйте Добрый день Tere oomnikkoa Тэрэ оомниккоа Доброе утро Tere õhtagoa Тэрэ ыхтагоа Добрый вечер Jäämm yvässi Яямм ювясси До свидания Познакомимся теперь с так называемыми кумулятивными рунами: Kuza piippu Ađđaa nalla. Возьмем глаголы из прошлого урока и образуем от них будущее время: valaa наливать valavad наливают nõizõn valamaa буду наливать juvva пить joovad пьют nõizõn joomaa буду пить syvvä есть ...
23525. Повседневный арабский язык 1.95 MB
  Что касается ритма занятий то было бы оптимально если бы Вы прослушивали каждый день по новому разговору. Предисловие для преподающих арабский язык Дорогие коллеги Данный материал может быть использован для занятий как в группе так и индивидуально. Это господин Али альХаляби. Меня зовут Али альХаляби.
23526. АРАБСКИЙ ЯЗЫК В ДИАЛОГАХ 590 KB
  Разговор 3 В гостинице اَلْحِوَارُ اَلثَالِثُ فِي اَلْفُنْدُقِ Добрый вечер يُورِي: مَسَاءُ اَلْخَيْرِ Добрый вечер سَعِيدْ: مَسَاءُ اَلْخَيْرِ Меня зовут Юрий Кабанов. شُكْراً جَزِيلاً Не за что прощение اَلْعَفْوُ Разговор 6 Телефонный разговор مُكَالَمَةٌ هَاتِفِيَّةٌ Алло أَلُو Да кто на линии на проводе نَعَمْ، مَنْ عَلَى اَلْخَطِّ؟ Я Юрий из Москвы. Добро пожаловать господин Юрий Где ты сейчас أَهْلاً وَسَهْلاً يَا سَيِّدْ يُورِي أَيْنَ أَنْتَ اَلآنَ؟ Я сейчас в городе Фес в гостинице. Основная часть Разговор 1...
23527. Словарь шумеро-аккадского языка 849 KB
  Составление первого подобного словаря на русском языке при отсутствии картотеки картотека составлявшаяся в течение многих лет погибла во время Отечественной войны и блокады Ленинграда оказалось делом исключительно трудоемким и создание его потребовало большого напряжения и большой затраты сил хотя словарь этот включает только не большое число текстов рассчитанных для чтения на первых двух курсах обучения в университете и естественно не может претендовать на полноту. Струве вполне отвечает научным требованиям составления...
23528. Грамматика датского языка 475 KB
  they немое после l n r и перед t s dreng [дрэŋ] мальчик gade [гэ:ðэ] улица holdt [хольт] остановка e [e] [æ] [a] закрытое как в слове меч в конце открытое э перед g открытое a leve [лeвэ] жить spise [сби:сэ] есть jeg [яй] я meget [майэт] очень f [ф] как русское far [фа:] отец g [г] [у] [ŋ] [и] [ ] в начале слова г в середине или конце слова у носовое ŋ как в англ. слове sing после гласной и иногда немое в середине слова give [gi:væ] or [gi] give brag [брa'у] удар synge [сюŋэ] петь sang [саŋ] песня jeg...
23529. ГРАММАТИКА ИСПАНСКОГО ЯЗЫКА 1.03 MB
  1 Имя существительное Nombre sustantivo В испанском языке существительные бывают: собственные Rosa Роза Carmen Кармен 2 нарицательные la mesa стол el árbol дерево одушевленные el hombre мужчина el gato кот неодушевленные el bosque лес la silla стул конкретные la cara лицо el techo потолок абстрактные el tiempo время el aire воздух собирательные la biblioteca библиотека la muchedumbre толпа 1. Существительные которые оканчиваются в единственном числе на согласные z и x меняют их во множественном числе на c:...
23530. Повседневный немецкий язык 1.92 MB
  ru Einleitung Введение Первая часть Herr Klein Guten Tag Hören Sie bitte zu Ich bin Dieter Klein. Ich bin Lehrer. Ich bin Deutscher. Ich spreche Deutsch.