Главная » Просмотр файлов » Пояснительная записка

Пояснительная записка (1209853), страница 5

Файл №1209853 Пояснительная записка (Разработка проекта защиты информационных ресурсов предприятия при удаленном доступе пользователей) 5 страницаПояснительная записка (1209853) страница 52020-10-04СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 5)

ClientName.key – приватный ключ хоста Microsoft Windows;

Следует запустить OpenVPN-GUI как обычное приложение Windows с помощью кнопки Пуск. В панели системных задач (в системном «трее», или в панели System Tray) появится значок OpenVPN-GUI в виде небольшого окна с замком.

Для подключения необходимо нажать значок правой клавишей мыши и выбрать «Подключиться». Если все настроено правильно, на экране появится окно соединения, в котором будут отображаться сообщения. После успешного соединения изображение окна с замком станет зеленого цвета. Это означает, что канал VPN установлен. В случае возникновения проблем стоит просмотреть сообщения в окне подключения, а также журнал сервера OpenVPN. В большинстве случаев проблемы связаны с ошибками при подготовке сертификатов и ключей.

Чтобы разъединить канал OpenVPN, требуется нажать значок OpenVPN-GUI правой клавишей мыши и выбрать из меню строку «Отключиться».

3.9 Реализация двойной авторизации пользователей

Для допуска в виртуальную сеть, построенную на базе OpenVPN, клиент должен авторизоваться. В OpenVPN это можно сделать 3 способами:

  • по логину и паролю;

  • по ключу и сертификату в файлах;

  • по ключу и сертификату на криптографическом USB-токене или смарт-карте.

Так как в компании не много сотрудников, которым будет разрешён удалённый доступ, и они не обладают высокими знаниями в информационных технологиях, то будет целесообразно применять авторизацию по USB-токенам или смарт-картам. Чтобы повысить безопасность при авторизации пользователей, будет использована смешанную авторизацию, по сертификату (без пароля) и по ключевой паре логин/пароль.

Для внедрения авторизации по логину/паролю необходимо добавить разработанный скрипт vpn_check на сервер OpenVPN в корневой каталог и прописать его в конфигурации сервера. Скрипт будет вызываться при попытке подключения пользователя, а затем запрашивать логин/пароль от пользователя. После ввода пары логина/пароля сервер получает данные от пользователя и сравнивает с записями в БД. Если логин пароль совпадает с одной из записей в БД, то происходит подключение пользователя к серверу. При этом также происходит проверка и по сертификату. Пример подключения пользователя к OpenVPN с двухфакторной авторизацией показан на рисунке 3.9.1. Сначала клиент и сервер обмениваются самозаверенными сертификатами и подтверждают, что они подлинные. Затем у пользователя запрашивается логин и пароль. Логин и пароль для подключения задаются при создании учётной записи через веб-интерфейс OpenVPN Контроль.

Рисунок 3.9.1 – Запрос логина и пароля

3.10 Реализация разграничения доступа пользователей

Для настройки разграничения удалённого доступа, согласно пункту 3.3. Прежде всего, необходимо убедится в выполнении вышеописанных шагов, сделав подсеть 192.168.10.0/24 доступной для всех клиентов (хотя мы сконфигурируем маршрутизацию так, чтобы позволить клиентский доступ ко всей подсети 192.168.10.0/24, затем требуется применить ограничения доступа, пользуясь брандмауэрными правилами, чтобы реализовать вышеприведенную таблицу политик в пункте 3.3.).

Прежде всего, требуется определить статический номер для нашего интерфейса tun, чтобы позже ссылаться на него в брандмауэрных правилах:

dev tun0

В серверном конфигурационном файле определяется диапазон IP-адресов для администраторов:

server 172.16.0.0 255.255.0.0

Добавляются маршруты для диапазонов остальных пользователей:

  • route 172.16.12.0 255.255.255.0 – сервисные инженеры;

  • route 172.16.13.0 255.255.255.0 – сотрудники лаборатории;

  • route 172.16.14.0 255.255.255.0 – сотрудники по работе с клиентами;

  • route 172.16.11.0 255.255.255.0 – начальники.

Поскольку будут присваивать фиксированные IP-адреса, необходимо использовать каталог клиентской конфигурации:

client-config-dir ccd

Требуется поместить специальные конфигурационные файлы в подкаталог ccd, чтобы определить фиксированный IP-адрес для каждого VPN-клиента:

ccd/Admin_Name

ifconfig-push 172.16.10.5 172.16.10.6

ccd/S_Eng_Name

ifconfig-push 172.16.12.5 172.16.12.6

ccd/Lab_Name

ifconfig-push 172.16.13.5 172.16.13.6

ccd/Staff_Name

ifconfig-push 172.16.14.5 172.16.14.6

ccd/Director_Name

ifconfig-push 172.16.11.5 172.16.11.6

Каждая пара адресов ifconfig-push представляет виртуальные клиентские и серверные IP–конечные точки. Они должны быть взяты из последовательных /30 подсетей, чтобы быть совместимыми с клиентами Windows и с драйвером TAP-Win32. В частности, последний октет в IP- адресе каждой пары конечных точек должен быть взят из этого набора:

[ 1, 2] [ 5, 6] [ 9, 10] [ 13, 14] [ 17, 18]

[ 21, 22] [ 25, 26] [ 29, 30] [ 33, 34] [ 37, 38]

[ 41, 42] [ 45, 46] [ 49, 50] [ 53, 54] [ 57, 58]

[ 61, 62] [ 65, 66] [ 69, 70] [ 73, 74] [ 77, 78]

[ 81, 82] [ 85, 86] [ 89, 90] [ 93, 94] [ 97, 98]

[101,102] [105,106] [109,110] [113,114] [117,118]

[121,122] [125,126] [129,130] [133,134] [137,138]

[141,142] [145,146] [149,150] [153,154] [157,158]

[161,162] [165,166] [169,170] [173,174] [177,178]

[181,182] [185,186] [189,190] [193,194] [197,198]

[201,202] [205,206] [209,210] [213,214] [217,218]

[221,222] [225,226] [229,230] [233,234] [237,238]

[241,242] [245,246] [249,250] [253,254]

Это завершает конфигурацию OpenVPN. Последний шаг – добавить брадмауэрные правила, чтобы финализировать политику доступа. Для этого примера необходимо использовать правила в синтаксисе iptables.

Правила для администратора:

# Admin rule

iptables -A FORWARD -i tun0 -s 172.16.10.0/24 -d 192.168.10.0/24 -j ACCEPT

Правила для сервисного инженера:

# S_Eng rule

iptables -A FORWARD -i tun0 -s 172.16.12.0 /24 -d 192.168.10.7 -j ACCEPT

# S_Eng rule

iptables -A FORWARD -i tun0 -s 172.16.12.0 /24 -d 192.168.10.10 -j ACCEPT

Правила для сотрудников лаборатории:

# Lab rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.7 -j ACCEPT

# Lab rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.11 -j ACCEPT

# Lab rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.14 -j ACCEPT

Правила для сотрудников по работе с клиентами:

# Staff rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.6 -j ACCEPT

# Staff rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.7 -j ACCEPT

# Staff rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.14 -j ACCEPT

Правила для начальников отдела:

# Director rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.5 -j ACCEPT

# Director rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.6 -j ACCEPT

# Director rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.7 -j ACCEPT

# Director rule

iptables -A FORWARD -i tun0 -s 172.16.13.0/24 -d 192.168.10.14 -j ACCEPT

Данные правила продемонстрированы согласно Таблице 3.4.2 «Сопоставление доступа групп пользователей к информационным ресурсам». Они будут фильтроваться брандмауэром, и пользователи будут получать доступ только к тем ресурсам, которые разрешены данными правилами. Эти настройки являются базовыми и настраиваются один раз.

3.11 Разработка веб-интерфейса для мониторинга и контроля пользователей OpenVPN

После успешной базовой настройки OpenVPN сервера и фаервола необходимо упростить задачу администрирования OpenVPN сети. Для этого было принято решение разработать веб-интерфейс со следующим функционалом:

  • Статус OpenVPN сервера;

  • Создание/удаление пользователей с генерированием сертификатов клиентов;

  • Список подключенных пользователей.

Для разработки веб-интерфейса был выбран язык Python 3.4. с библиотекой Django. Django – это бесплатная библиотека на языке Python, упрощающая разработку веб сайта. Имеет свой готовый шаблон сайта и использует шаблон проектирования MVC. Django поддерживает большинство современных СУБД.

Чтобы сайт мог функционировать, его нужно разместить на одном сервере с OpenVPN. Так как используется сервер под управление Centos, для размещения сайта на данной машине необходимо использовать Apache HTTP-сервер. Чтобы разрабатывать сайт под Apache, необходимо добавить модуль mod-Python, и в качестве базы данных будет использоваться PostgreSQL.

3.11.1 Функциональная модель OpenVPN Контроль

Функциональная модель системы разработана с использованием диаграмм вариантов использования UML. Вариант использования – возможность моделируемой системы, благодаря которой пользователь может получить конкретный измеримый и нужный ему результат.

Данная диаграмма отражает отношения между актёрами и вариантами использования (функциями) на концептуальном уровне. Отношения “include” означают обязательное включение одного варианта использования другим, а отношение “extend” – возможное.

На рисунке 3.11.1.1 представлена контекстная диаграмма вариантов использования. На ней показано взаимодействие администратора с веб-интерфейсом, он имеет возможность создавать, изменять, удалять клиентов OpenVPN. Что облегчит работу сопровождения сети VPN.

Рисунок 3.11.1.1 – Контекстная диаграмма использования

3.11.2 Информационная модель OpenVPN Контроль

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

Класс анализа представляет собой набор из одного или более классов. Элементами, отображаемыми на диаграмме, являются классы и отношения между ними.

Диаграмма классов анализа продемонстрирована на рисунке 3.11.2.1, на ней показан набор классов которые необходимо реализовать для веб-интерфейса сопровождения OpenVPN Контроль.

Рисунок 3.11.2.1 – Диаграмма классов анализа

На рисунке 3.11.2.2 показана диаграмма классов, построенная на основе диаграммы классов анализа. Класс MyAminSite отвечает за загрузку веб-интерфейса. После входа в систему класс UserAdmin подгружает интерфейс для администратора. Класс AddressPoolAdmin служит для работы с пулами адресов, а класс VPNUserAdmin позволяет создавать, изменять пользователя и генерировать сертификаты с конфигурационным файлом. Также имеется возможность загрузить их на АРМ администратора через браузер для дальнейшей работы.

Класс OpenvpmMonitor работает с интерфейсом управления OpenVPN, берёт оттуда статистику, обрабатывает её и передаёт в класс OpenvpnHtmlPrinter для структурирования полученных данных в виде таблиц. Класс VPNUserMonitorAdmin открывает сформированные таблицы классом OpenvpnHtmlPrinter и отображает их на веб-интерфейсе администратора.

Рисунок 3.11.2.2 – Диаграмма классов (физическая)

На рисунке 3.11.2.3 показана диаграмма классов БД, построенная на основе диаграммы классов анализа. База данных состоит из двух частей, первая часть для пользователей веб-интерфейса, вторая – для клиентов OpenVPN. Первая часть БД содержит 6 таблиц. Таблица Auth_user содержит информацию о пользователях веб-интерфейса. Таблица Auth_Permission хранит права для работы в веб интерфейсе. Также предусмотрена таблица Auth_Group, где содержится информация о группе. Таблицы Auth_user_group, Auth_user_ permission, Auth_group_ permission являются промежуточными для связи многие-ко-многим. Вторая часть БД требуется для работы с клиентами OpenVPN. Таблица openvpncontrop_vpnuser содержит информацию о самом клиенте OpenVPN и сгенерированные сертификаты. В таблице openvpncontrop_adresspool содержит информацию о пулах IP-адресов.

Рисунок 3.11.2.3 – Диаграмма классов БД (физическая)

3.11.3 Диаграмма компонентов

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

При разработке диаграмм компонентов преследуются цели:

  • спецификация общей структуры исходного кода системы;

  • спецификация исполнимого варианта системы.

Данные диаграммы обеспечивают согласованный переход от логического к физическому представлению системы в виде программных компонентов.

На рисунке 3.11.3.1. показана диаграмма компонентов разрабатываемого приложения. На ней изображено физическое представление в виде программных компонентов. Проект представляет папку с файлами с программного кода. Помимо компонентов, показанных на диаграмме, для корректной работы на самом сервере добавлены исполнительные работы, которые помогают выполнять генерацию сертификатов пользователя.

Рисунок 3.11.3.1 – Диаграмма компонентов

3.11.4 Диаграмма развертывания

Характеристики

Список файлов ВКР

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее