Kerberos основан на симметричной криптосистеме и требует третье доверенное лицо (сервер). Расширение Kerberos позволяет использовать открытые ключи в процессе аутентификации.
Протокол
Безопасность протокола в значительной мере основывается на том, что системные часы участников более-менее синхронны и на временных утверждениях подлинности, называемых билетами Kerberos.
Ниже приведено упрощенное описание протокола. Следующие аббревиатуры будут использованы:
AS = Сервер аутентификации
TGS = Сервер предоставления билетов
SS = Ресурс, предоставляющий некий сервис, к которому требуется получить доступ
TGT = Билет для получения билета
В двух словах клиент авторизируется на AS, используя свой долгосрочный секретный ключ, и получает билет от AS. Позже клиент может использовать этот билет для получения дополнительных билетов на доступ к ресурсам SS без необходимости прибегать к использованию своего секретного ключа.
Более детально:
Шаги входа пользователя в систему:
Пользователь вводит имя и пароль на клиентской машине.
Клиентская машина выполняет над паролем одностороннюю функцию (обычно хэш), и результат становится секретным ключом клиента/пользователя.
Шаги аутентификации клиента:
Клиент посылает простым текстом сообщение серверу AS, запрашивая сервисы от имени пользователя. Например так: «Пользователь АБВ хочет запросить сервисы». Обратите внимание, что ни секретный ключ, ни пароль не посылаются на AS.
AS проверяет, есть ли такой клиент в базе. Если есть, то назад AS отправляет следующие два сообщения:
Сообщение A: Сессионный Ключ Client/TGS зашифрованный секретным ключом клиента/пользователя.
Сообщение B: TGT (который включает ID клиента, сетевой адрес клиента, период действия билета, и Сессионный Ключ Сlient/TGS) зашифрованный секретным ключом TGS.
Как только клиент получает сообщения A и B, он расшифровывает сообщение A, чтобы получить Сессионный Ключ Client/TGS. Этот сессионный ключ используется для дальнейшего обмена с сервером TGS. (Важно: Клиент не может расшифровать сообщение B, так как оно зашифровано секретным ключом TGS.) В этот момент у пользователя достаточно данных, чтобы авторизироваться на TGS.
Шаги авторизации клиента для получения сервиса:
При запросе сервисов клиент отправляет следующие два сообщения на TGS:
Сообщение C: Содержит TGT, полученный в сообщении B и ID требуемого сервиса.
Сообщение D: Аутентикатор (составленный из ID клиента и временного штампа), зашифрованный на Сессионном Ключе Client/TGS.
После получения сообщений C и D, TGS извлекает сообщение B из сообщения C и расшифровывает его используя секретный ключ TGS. Это дает ему Сессионный Ключ Client/TGS. Используя его TGS расшифровывает сообщение D и посылает следующие два сообщения клиенту:
Сообщение E: Client-to-server ticket (который содержит ID клиента, сетевой адрес клиента, время действия билета и Сессионный Ключ Client/server) зашифрованный секретным ключом сервиса.
Сообщение F: Сессионный ключ Client/server, зашифрованный на Сессионном Ключе Client/TGS.
Шаги клиента при запросе сервиса:
При получении сообщений E и F от TGS, у клиента достаточно информации для авторизации на SS. Клиент соединяется с SS и посылает следующие два сообщения:
Сообщение E из предыдущего шага (client-to-server ticket, зашифрованный секретным ключом сервиса).
Сообщение G: новый аутентикатор, который включающий ID клиента, временной штамп и зашифрованный на client/server session key.
SS расшифровывает билет используя свой секретный ключ для получения Сессионного Ключа Client/Server. Используя сессионный ключ, SS расшифровывает аутентикатор и посылает клиенту следующее сообщение для подтверждения готовности обслужить клиента и показать, что сервер действительно является тем, за кого себя выдает:
Сообщение H: Временной штамп, указанный клиентом + 1, зашифрованный на Сессионном Ключе Client/Server.
Клиент расшифровывает подтверждение, используя Сессионный Ключ Client/Server и проверяет, действительно ли временной штамп корректно обновлен. Если это так, то клиент может доверять серверу и может начать посылать запросы на сервер.
Сервер предоставляет клиенту требуемый сервис.
7. Администрирование информационно-вычислительных сетей
7.1 Описание структуры администрирования информационно вычислительной сети предприятия
Администрирование сводится к у правлению всеми Windows станциями через контролер домена Windows 2003 server с ролью Active Directory, в ней задаются все настройки безопасности. На прокси сервере администратор сам настраивает все без какой либо централизации и автоматизаци. Конролер домена и прокси сервер никак не взаимосвязаны и работают независемо.
Active Directory — LDAP-совместимая реализация интеллектуальной службы каталогов корпорации Microsoft для операционных систем семейства Windows NT. Active Directory позволяет администраторам использовать групповые политики (GPO) для обеспечения единообразия настройки пользовательской рабочей среды, развёртывать ПО на множестве компьютеров (через групповые политики или посредством Microsoft Systems Management Server 2003 (или System Center Configuration Manager)), устанавливать обновления ОС, прикладного и серверного ПО на всех компьютерах в сети (с использованием Windows Server Update Services (WSUS); Software Update Services (SUS) ранее). Active Directory хранит данные и настройки среды в централизованной базе данных. Сети Active Directory могут быть различного размера: от нескольких сотен до нескольких миллионов объектов.
Представление Active Directory состоялось в 1996 году, продукт был впервые выпущен с Windows 2000 Server, а затем был модифицирован и улучшен при выпуске сначала Windows Server 2003, затем Windows Server 2003 R2.
В отличие от версий Windows до Windows 2000, которые использовали в основном протокол NetBIOS для сетевого взаимодействия, служба Active Directory интегрирована с DNS и TCP/IP. DNS-сервер, обслуживающий Active Directory, должен быть совместим c BIND версии 8.1.2 или более поздней, сервер должен поддерживать записи типа SRV (RFC 2052) и протокол динамических обновлений (RFC 2136).
7.2 Список систем управления базами данных, применяемых на предприятии.
На файловом сервере поднят сервер базы данных 1С на основе My SQL 2005 обслуживающий систему регистрации заявок ITIL, и бухгалтерский компьютер на котором 1С бухгалтерия.
Microsoft SQL Server — система управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Основной используемый язык запросов — Transact-SQL, создан совместно Microsoft и Sybase. Transact-SQL является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями. Используется для небольших и средних по размеру баз данных, и в последние 5 лет — для крупных баз данных масштаба предприятия, конкурирует с другими СУБД в этом сегменте рынка.
Microsoft SQL Server в качестве языка запросов использует версию SQL, получившую название Transact-SQL (сокращённо T-SQL), являющуюся реализацией SQL-92 (стандарт ISO для SQL) с множественными расширениями. T-SQL позволяет использовать дополнительный синтаксис для хранимых процедур и обеспечивает поддержку транзакций (взаимодействие базы данных с управляющим приложением). Microsoft SQL Server и Sybase ASE для взаимодействия с сетью используют протокол уровня приложения под названием Tabular Data Stream (TDS, протокол передачи табличных данных). Протокол TDS также был реализован в проекте FreeTDS с целью обеспечить различным приложениям возможность взаимодействия с базами данных Microsoft SQL Server и Sybase.
Microsoft SQL Server также поддерживает Open Database Connectivity (ODBC) — интерфейс взаимодействия приложений с СУБД. Последняя версия (SQL Server 2005) обеспечивает возможность подключения пользователей через веб-сервисы, использующие протокол SOAP. Это позволяет клиентским программам, не предназначенным для Windows, кроссплатформенно соединяться с SQL Server. Microsoft также выпустила сертифицированный драйвер JDBC, позволяющий приложениям под управлением Java (таким как BEA и IBM WebSphere) соединяться с Microsoft SQL Server 2000 и 2005.
SQL Server поддерживает зеркалирование и кластеризацию баз данных. Кластер сервера SQL — это совокупность одинаково конфигурированных серверов; такая схема помогает распределить рабочую нагрузку между несколькими серверами. Все сервера имеют одно виртуальное имя, и данные распределяются по IP адресам машин кластера в течение рабочего цикла. Также в случае отказа или сбоя на одном из серверов кластера доступен автоматический перенос нагрузки на другой сервер.
SQL Server поддерживает избыточное дублирование данных по трем сценариям:
Снимок: Производится «снимок» базы данных, который сервер отправляет получателям.
История изменений: Все изменения базы данных непрерывно передаются пользователям.
Синхронизация с другими серверами: Базы данных нескольких серверов синхронизируются между собой. Изменения всех баз данных происходят независимо друг от друга на каждом сервере, а при синхронизации происходит сверка данных. Данный тип дублирования предусматривает возможность разрешения противоречий между БД.
В SQL Server 2005 встроена поддержка .NET Framework. Благодаря этому, хранимые процедуры БД могут быть написаны на любом языке платформы .NET, используя полный набор библиотек, доступных для .NET Framework, включая Common Type System (система обращения с типами данных в Microsoft .NET Framework). Однако, в отличие от других процессов, .NET Framework, будучи базисной системой для SQL Server 2005, выделяет дополнительную память и выстраивает средства управления SQL Server вместо того, чтобы использовать встроенные средства Windows. Это повышает производительность в сравнении с общими алгоритмами Windows, так как алгоритмы распределения ресурсов специально настроены для использования в структурах SQL Server.
В ходе практической деятельности мне удалось изучить проектно-технологическую документацию, выполнить технико-экономическое обоснование выполняемой разработки, реализацию некоторых из возможных путей решения поставленной в техническом задании задачи. Принимал участие в фазах проектирования, разработки, изготовления и сопровождения объектов профессиональной деятельности, при этом использовал современные методы, средства и технологии разработки. В ходе работы работал в коллективе специалистов высокого класса, взаимодействовал со специалистами смежного профиля.
9. Литература
1 Таненбаум Э. Современные операционные системы. 2-е изд.- СПб.: Питер,2002г.
2 Гордеев А.В. Операционные системы. 2-е изд.- СПб.: Питер,2004г.
3 Сташин В.В., Урусов Ф.В. Мологонцева О.Ф. Проектирование цифровых устройств на однокристальных микроконтроллерах. – М., Энергоатомиздат, 1990 г.
4 Ремизевич Т.В. Микроконтроллеры для встраиваемых приложений. Додека, - М., 2000.
5 Таненбаум Э.Компьютерные сети. 2-е изд.- СПб.: Питер,2002г.
6 Таненбаум Э.С. -Архитектура компьютера. 5-е изд. -СПб.: Питер,2007г
7 www.wikipedia.org
8 www.it-enigma.ru