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);

}


 

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

49913. Создание нейронной сети в среде Нейросимулятор v 1.0 789 KB
  Нейронные сети на финансовом рынке Обзор основных нейропакетов. Архитектура сети. Обучение сети Тестирование. Но по сей день нейросети воспринимаются как перспективный но экзотический слабо изученный на российском рынке инструмент.
49914. Методы фокус-групп для сбора социологической информации 177 KB
  Место фокус-групп в системе социологических и маркетинговых методов Понятие метода фокус-групп Соотношение фокус-групп с групповыми методами и интервью Соотношение фокус-групп и наблюдения
49915. Овариоэктомия кошки 425 KB
  Оба длинных тонких рога матки cornu uteri имеют одинаковую толщину и трубчатую форму но не всегда одинаковую длину. Диаметр рога матки у небеременной кошки составляет 34 мм длина рогов матки колеблется между 90 и 100 мм. Каждый рог матки описывает выгнутую вентрально дугу; в каудальной части оба рога матки соединяются. Затем они сливаются полностью образуя тело матки corpus uteri.
49916. Разработка элементов систем искусственного интеллекта с использованием логической модели представления знаний 283.52 KB
  Используя предикаты parent(symbol,symbol), man(symbol), woman(symbol), married(symbol,symbol), записать факты, описывающие Вашу семью. Записать 8 правил вывода для любых родственных отношений в Вашей (или вымышленной)семье (например: мать, отец, сестра, брат, племянница, племянник, тетя, дядя, внучка, внук, бабушка, дедушка, двоюродная сестра, двоюродный брат и т.д.).
49917. Разработка элементов систем искусственного интеллекта с использованием логической модели представления знаний 320.9 KB
  По заданию было построено дерево родственных отношений, составлено 19 фактов и 13 правил, которые описывают родственные связи в моей семье. Используя язык логического программирования Prolog, написана программа, в которой отображаются все родственные отношения с помощью заданных правил и фактов. Использовались такие предикаты, как parent(string, string), man(string), woman(string), married(string ,string).
49918. Правоведение. Курс лекций 810 KB
  В конспекте лекций по курсу Правоведение в 1 части рассмотрены основы теории права без знания которых невозможна полноценная правовая подготовка современных специалистов и изучение конкретных отраслей права системы права России. Во 2 части рассмотрены основы важнейших отраслей системы права России конституционного государственного права гражданского права семейного права трудового права экологического права административного права.ОСНОВЫ ТЕОРИИ ПРАВА Лекция...
49919. Разработка инструментальной среды для проектирования и выполнения нейропроектов 509 KB
  В течение последних 10 лет искусственные нейронные сети получили широкое распространение в качестве инструмента для решения различных задач анализа данных и распознавания образов. Разработать универсальный инструментарий при помощи которого можно создавать различные нейропроекты приложения использующие нейронные сети как универсальные так и специализированные. Модули для работы сетями включают в себя модуль для работы со структурой сети модули реализующие различные алгоритмы обучения а также модули содержащие...
49920. Кинематическое исследование грейферного механизма 4.76 MB
  В левом верхнем углу чертежного листа в масштабе 10:1 вычерчена кинематическая схема грейферного механизма в 12-ти положениях. Для этого один полный оборот ведущего звена 1 разбит на 12 частей по , где за нулевое положение принята точка, совпадающая с осью Y. Направление вращения ведущего звена выбрали так, чтобы перемещение пленки зубом грейфера обеспечивалось сверху вниз.
49921. Повышение эффективности системы подготовки и переподготовки государственных служащих в Республике Башкортостан 305 KB
  Образовавшийся дефицит компетентных кадров выдвинул на первый план проблему создания корпуса государственных и муниципальных служащих обладающих современными научными знаниями в области государственного и муниципального управления и профессионально подготовленных к осуществлению функций государства и местного самоуправления в своей практической деятельности. Решение столь сложной задачи невозможно без эффективной системы подготовки переподготовки и повышения квалификации государственных и муниципальных служащих. Функционирование системы...