Создание информационной системы удаленного администрирования серверов онлайн-игр для ООО «Мираж»

Автор работы: Пользователь скрыл имя, 20 Ноября 2012 в 17:29, дипломная работа

Описание работы

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

Содержание работы

ВВЕДЕНИЕ
Глава 1 Аналитическая часть
Понятие серверов и их классификация
1.1.1 Аппаратное обеспечение
1.1.2 Классификация стандартных серверов
1.2 Сущность и методы удаленного доступа
1.2.1 Типы взаимодействующих систем
1.2.2 Удаленный узел
1.2.3 Удаленное управление
1.3 Понятие многопользовательских ролевых онлайн-игр
1.4 Обзор существующих информационных систем удаленного администрирования серверов онлайн-игр
1.4.1 RT Java Server Administrator v.1.0
1.4.2 La2offline Interlude 2.0
1.4.3 Off php admin by Hint
1.4.4 Интегрированная в игровую оболочку административная панель
1.5 Скриптовый язык PHP и его взаимодействие с базами данных
1.5.1 Использование
1.5.2 Синтаксис
1.5.3 Типы данных
1.5.4 Суперглобальные массивы
1.5.5 Объектно-ориентированное программирование
1.5.6 Взаимодействие с базами данных (MS SQL)
1.5.7 Недостатки языка
Глава 2 Практическая часть
2.1 Постановка задачи
2.2 Краткая характеристика предприятия ООО «Мираж»
2.3 Особенности администрирования серверов онлайн-игр
2.4 Обоснование выбора средства разработки
2.5 Разработка алгоритма решения задач администрирования серверов
2.6 Разработка структуры баз данных
2.7 Описание разработанной системы
2.7.1 Защита системы от несанкционированного доступа
2.7.2 Главное окно системы
2.7.3 Фрейм настройки записей
2.7.4 Основной фрейм управления
2.7.5 Фрейм блокирования учетных записей
2.7.6 Фрейм записей захода на сервер
2.7.7 Фрейм записей действий
2.7.8 Фрейм записей чата
2.7.9 Фрейм истории предметов
2.7.10 Фрейм поиска предметов
2.7.11 Фрейм списка предметов
Глава 3 Экономическая часть
3.1 Особенности определения экономической эффективности программного продукта
3.2 Расчет затрат на разработку и внедрение программного продукта
3.3 Расчет годового экономического эффекта и периода окупаемости
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Файлы: 2 файла

Диплом_Спиридонов.doc

— 4.37 Мб (Скачать файл)

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

В HTTPS для шифрования используется длина ключа 40, 56, или 128 бит. Старые версии браузеров использует длину ключа 40 бит (пример тому — IE), что связано с экспортными ограничениями в США. Длина ключа 40 бит не является сколько-нибудь надёжной. Многие современные сайты требуют использования новых версий браузеров, поддерживающих шифрование с длиной ключа 128 бит с целью обеспечить достаточный уровень безопасности. Такое шифрование значительно затрудняет злоумышленнику поиск паролей и другой личной информации.

2. Парольный доступ к страницам Web-узла

Сервер Apache снабжен удобными средствами предоставления парольного доступа к страницам Web-узлов, основанными на использовании файлов .htaccess [17]. Когда посетитель пытается просмотреть содержимое защищенных страниц Web-узла, сервер посылает браузеру посетителя специальный запрос, в результате чего на экране его компьютера появляется окно аутентификации, показанное на рисунке 2.5.

Рисунок 2.5 - Запрос имени пользователя и пароля для доступа к Web-узлу

Чтобы получить доступ, посетитель должен ввести в  поле Пользователь свой идентификатор, а в поле Пароль — пароль доступа. В случае ввода ошибочных данных пользователь получает уведомление об ошибке авторизации (рисунок 2.6).

Рисунок 2.6 - Уведомление об ошибке авторизации

Сервер Apache современных  версий позволяет использовать два  типа аутентификации — базовый (Basic) и аутентификацию с использованием MD5 (Digest). Первый тип аутентификации предполагает хранение идентификаторов пользователей и паролей в обычном текстовом файле. Аутентификация типа Digest обеспечивает более безопасный способ передачи паролей, но доступна только в самых новых версиях браузеров.

3. Ограничение доступа посетителей web-узла по IP-адресу

Сервер Apache предусматривает возможности ограничения доступа посетителей к тому или иному web-узлу по IP-адресу. В случаях, когда web-узлы используются для администрирования других web-узлов или иных ресурсов, возможность доступа должна быть только у управляющего персонала.

Команды Order, Deny и Allow позволяют ограничивать доступ к каталогу, указанному в качестве аргумента команды <Directory>:

<Directory /usr/local/httpd>

Order Deny,Allow

Allow from all

</Directory>

С помощью команды Order задается порядок, в котором используются команды запрещения доступа Deny и разрешения доступа Allow.

Если эти  команды указаны в порядке Deny,Allow, то вначале обрабатываются все команды запрещения доступа Deny, а затем — команды разрешения доступа Allow. При этом по умолчанию доступ к каталогу Web-узла разрешен для всех Интернет-узлов посетителей, адреса IP которых  не соответствуют условию, описанному в аргументе команды Deny.

При указании параметров в последовательности Allow,Deny доступ к каталогу по умолчанию запрещен. Только те клиенты, адреса IP которых соответствуют аргументу команды Allow, могут получить доступ (но только в том случае, если эти адреса не попадают под действие команды Deny).

В качестве аргумента  командам Deny и Allow можно передавать одиночные адреса IP, списки и диапазоны адресов IP.

Описанная выше защита виртуальных Web-узлов от несанкционированного доступа, основанная на установке ограничений по адресам IP, не является достаточно надежной. Злоумышленники могут легко подменить адрес IP, получив таким образом доступ в обход системы защиты.

Другой недостаток данного способа защиты заключается  в том, что его нельзя применить, если посетители пользуются динамическими адресами IP из разных подсетей. В этом случае при каждом подключении к Интернету у них будет разный адрес IP и составить подходящее правило доступа будет очень сложно.

Поэтому ограничение  доступа по адресу IP целесообразно  дополнять другими видами защиты, например, парольной защитой.

4. Дополнительная аутентификация для доступа к самой системе

После успешного  прохождения аутентификации и получения  доступа к Web-узлу используются дополнительные методы защиты, а в частности аутентификация непосредственно для доступа в систему. Форма аутентификации для разрабатываемой системы представлена на рисунке 2.7.

Рисунок 2.7 - Окно аутентификации для доступа в систему

Обозначения на рисунке 2.7:

Поле 1 – Имя  пользователя

Поле 2 – Пароль

Поле 3 – Код  с картинки

Ниспадающий список – выбор одного из серверов

Помимо стандартных методов аутентификации, использующих имя пользователя и пароль для доступа, используются картинки с символами. Изображения на этих картинках обычно сделаны нестандартным шрифтом либо символы подвержены значительному искажению. Это позволяет исключить возможность брута (программного перебора паролей с использованием огромных словарей), поскольку распознать такую картинку может только человек.

 

2.7.2 Главное  окно системы

Непосредственно сразу же после прохождения аутентификации, описанной в предыдущем пункте, открывается  главное окно системы (рисунок 2.8). Интерфейс системы состоит из фреймов, в каждый из которых в процессе работы загружаются данные из серверных логов  (записи обо всех действиях, совершаемых пользователями). Фрейм - элемент языка HTML версии 3.0 и выше, позволяющий разделить веб-страницу на несколько независимых окон и в каждом из них размещать отдельную веб-страницу. При этом допускаются ссылки из одного окна в другое окно. В разработанной системе фреймы обладают возможностью масштабирования, что позволяет настроить интерфейс удобным способом при выполнении тех или иных действий.

Рисунок 2.8 - Главное окно системы

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

Рисунок 2.9 - Главное окно системы со скрытым фреймом и кнопками управления

2.7.3 Фрейм настройки записей

Фрейм настройки записей (рисунок 2.10) предназначен для выбора количества отображаемых записей и выбора диапазона или нескольких периодов, за которые эти  записи будут загружены. Количество записей указывает на максимальное построчное количество записей, которые будут отображены во фрейме при загрузке  данных. Возможен выбор как отдельной даты или диапазона, так и нескольких периодов с нужным отклонением. Для уменьшения времени загрузки данных добавлена возможность выбора не только даты, но и времени. Если известно точное время события, то можно просто указать это время в виде короткого интервала и загрузить только необходимые для проверки записи, что существенно облегчит их анализ в дальнейшем.

Рисунок 2.10 - Фрейм настройки записей

2.7.4 Основной фрейм управления

Основной фрейм управления (рисунок 2.11) содержит кнопки для взаимодействия со всеми другими фреймами и содержит ссылки на дополнительные окна, недоступные в общем виде.

Рисунок 2.11 - Основной фрейм управления

Элементы основного  фрейма управления:

    1. Кнопка «Аккаунт» позволяет выбрать аккаунт (учетную запись пользователя)
    2. Кнопка «Аккаунт ID»  позволяет выбрать аккаунт по уникальному идентификатору в базе, присваиваемому каждому пользователю при регистрации
    3. Кнопка «Персонаж» позволяет выбрать персонажа, располагающегося на аккаунте пользователя
    4. Кнопка «Char ID» позволяет выбрать персонажа по уникальному идентификатору в базе, присваиваемому при создании персонажа
    5. Поле «Чар» отображает выбранного персонажа и состояние его активности (онлайн или нет), так же доступен просмотр других персонажей на аккаунте и всех персонажей, которые когда-либо были на аккаунте, но удалены на данный момент.
    6. Кнопка «Выход» предназначена для завершения сессии

Следующий ряд  кнопок управления предназначен для взаимодействия основного фрейма управления с другими фреймами. При нажатии на данные кнопки загружаются записи в соответствующие фреймы системы (рисунок 2.12).

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

Оставшиеся  кнопки основного фрейма управления используются для открытия других функциональных окон.

Кнопка «Info» предназначена для просмотра общей информации об учетной записи пользователя и о конкретном персонаже (рисунок 2.13). В окне можно просмотреть даты последнего удачного входа на сервер и отключения, последний IP-адрес подключения и множество другой информации, необходимой администраторам.

Рисунок 2.13 - Окно информации о персонаже

Кнопка «Info2» предназначена для просмотра дополнительной внутриигровой информации о конкретном персонаже, например, об одетых на данный момент предметах, списке друзей и прочего (рисунок 2.14).

.

Рисунок 2.14 - Окно дополнительной информации о персонаже

Кнопки «to Home» и «to Town» открывают окна, предназначены для перемещения персонажа в близлежащий виртуальный город или же в город на выбор соответственно (рисунок 2.15). На практике данные инструменты используются в случаях «застревания» персонажей, когда пользователь не может самостоятельно выбраться из определенного места по причине ошибок геодаты (виртуальный ландшафт)  или иных ошибок клиента, мешающих нормальному подключению персонажа к виртуальному миру.

Рисунок 2.15 - Окна перемещения персонажа

Кнопки «Add», «Mod», «Mod (col)» предназначены для изменения различных параметров персонажей и операций с предметами (в том числе с внутриигровой валютой). Предусмотрены возможности удаления, добавления, перемещения, изменения параметров и предметов.

Кнопки «Ban/Unban» и «Mute/Unmute» предназначены для временной блокировки/разблокировки персонажей и для наложения запрета отправки сообщений в чат/снятия соответственно (рисунок 2.16). Данные функции необходимы для применения временных мер по отношению к пользователям. Наиболее распространенным нарушением является использование нецензурной лексики в отношении других игроков, что противоречит политике сервера и запрещено правилами. В таких случаях пользователь блокируется на определенное количество часов в зависимости от типа нарушения.

Рисунок 2.16 - Окна временных санкций в отношении персонажа

Кнопка «Check Test» выполнена для временного использования и предназначена для просмотра результатов тестирования.

Ссылка «Search» открывает окно параметрического поиска (рисунок 2.17). При выявлении нарушителей хорошие возможности поиска являются ключевым моментом, именно поэтому в разработанной системе поиск может осуществляться по нескольким параметрам. Для обеспечения более полных результатов поиска предусмотрена возможность поиска по маске (фрагменту искомой информации, например, части названия аккаунта). Полученные результаты поиска могут использовать для применения определенных санкций к аккаунтам/персонажам, в том числе сразу ко всей группе (массовая блокировка). В результатах поиска выводятся индикаторы текущего состояния учетных записей пользователя, каждый цвет индикатора соответствует одному из возможных вариантов: онлайн (на сервере), забанен персонаж, забанен аккаунт.

Рисунок 2.17 - Окно параметрического поиска

Ссылка «Renames» открывает окно поиска по истории переименований (рисунок 2.18) . По нику (имени) персонажа можно получить информацию обо всех его предыдущих никах и датах использования услуги по смене ника. На практике нарушители очень часто используют услугу смены ника персонажа, тем самым пытаясь избежать наказания. Инструмент поиска в истории переименований позволяет избежать ошибок в определении нарушителей и  найти учетную запись пользователя даже в случае переименования персонажа на ней.

Рисунок 2.18 - Окно поиска в истории переименований

2.7.5 Фрейм блокирования учетных записей

Фрейм блокирования учетных записей (рисунок 2.19) предназначен для постоянной или временной блокировки учетных записей пользователей. В ниспадающем списке необходимо выбрать причину блокировки или написать самостоятельно, выбрать тип бана с разбаном или без (параметр в дальнейшем используется для автоматического сервиса разблокировки аккаунтов) и заблокировать учетную запись кнопкой «Бан акка». Через этот же интерфейс производится проверка аккаунтов на предмет блокировки (кнопка check) и их разблокировка. В некоторых случаях в качестве штрафа при разблокировке используется удаление предметов; список предметов для удаления можно выбрать поставив метку «удаление вещей при разбане» до блокировки аккаунта. Поскольку разблокировка аккаунтов происходит в автоматическом режиме пользователями (если причина блокировки предусматривает возможность разблокировки), то удаление предметов происходит так же автоматически в момент разблокировки.

Рисунок 2.19 - Фрейм блокирования учетных записей пользователей

2.7.6 Фрейм записей захода на сервер

Фрейм записей захода на сервер (рисунок 2.20) предназначен для просмотра IP-адресов подключения и отключения от сервера пользователей. Загрузка записей во фрейм производится за определенную дату или интервал (указывается во фрейме настройки записей) для конкретной учетной записи пользователя. Так же предусмотрен поиск других учетных записей, которые заходили и выходили в этот же временной промежуток с IP, указанного в поле поиска. В строке Id отображается уникальный идентификатор каждого действия (подключение к серверу, отключение, авторизация и т.п.). В строке date – дата, в строке данные – информация по IP-адресу и список аккаунтов, заходивших с данного IP.

Рисунок 2.20 - Фрейм записей заходов на сервер

2.7.7 Фрейм записей действий

Фрейм записей действий является основной рабочей областью (рисунок 2.21). В данный фрейм загружаются записи обо всех действиях пользователя на сервере, начиная от подключения к серверу и заканчивая отключением.

РЕФЕРАТ.doc

— 29.50 Кб (Просмотреть файл, Скачать файл)

Информация о работе Создание информационной системы удаленного администрирования серверов онлайн-игр для ООО «Мираж»