Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Мельников Д. А. - Организация и обеспечение безопасности информационно-технологических сетей и систем - 2012

.pdf
Скачиваний:
728
Добавлен:
15.07.2016
Размер:
20.96 Mб
Скачать

242

Глава 17. П рот окол сет ево го у п ра вл ен и я SNMP т рет ьей версии

 

Подсистема обработки сообщений. Подсистема обработки

сообщений отвечает за подготовку сообщений к их дальнейшей пе­ редаче и «изъятие» (разобрамление) данных из поступивших сооб­ щений. Эта подсистема может включать несколько моделей обра­ ботки SNMP-сообщений (рис. 17.2).

Каждая модель обработки SNMP-сообщений определяет фор­ мат соответствующей версии сообщения, а также координирует подготовку и разобрамление каждого такого сообщения в соответст­ вии с его версией.

Подсистема обеспечения безопасности. Подсистема безопас­ ности предоставляет ряд услуг по обеспечению защиты информа­ ции, к которым относятся аутентификация и конфиденциальность SNMP-сообщений. Эта подсистема может включать несколько моде­ лей обеспечения безопасности (рис. 17.3). В SNMPv3-CTa^E3,apTe при­ нята модель обеспечения информационной безопасности на основе выбора пользователем способа и средств защиты информации (User-based Security Model - USM).

Рис. 17.3. Подсистема обеспечения безопасности

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

Рис. 17.4. Подсистема управления доступом

раздел И.

243

Протокол обеспечения безопасности определяет способы, ал­ горитмы и процедуры, а также MIB-модули, используемые при пре­ доставлении услуг по обеспечению безопасности (аутентификация и конфиденциальность).

Рис. 17.5. Классический SNMP-менеджер

244

Гла ва 17. П рот окол сет ево го у п р а вл ен и я SNMP т р ет ьей версии

Подсистема управления доступом. Подсистема управления доступом предоставляет услуги авторизации на основе одной или нескольких моделей управления доступом (рис. 17.4). В SNMPv3стандарте принята модель управления доступом на основе про­ смотра данных (View-based Access Control Model - VACM).

Рис. 17.6. Классический SNMP-агент

Раздел 11.

245

Модель управления доступом описывает соответствующую функцию принятия решения относительно доступа к элементам SNMP-системы в целях реализации процедуры принятия решения на основе учета прав доступа.

Прикладные программные SNMP-модули. Прикладные программные SNMP-модули могут включать несколько следующих субмодулей:

огенераторы команд, которые осуществляют мониторинг и ма­ нипулируют управляющей информацией;

вполучатели (приемники) команд (то есть ответного реагирова­ ния на поступившие команды), которые обеспечивают доступ к управляющей информации;

оисточники управляющих операций/процедур, которые явля­ ются первичным источниками асинхронных сообщений;

вполучатели (приемники) управляющих операций/процедур, которые обрабатывают поступившие асинхронные сообщения;

вуполномоченный трансляторы (ретрансляторы), которые транслируют SNMP-сообщения между базовыми программ­ ными SNMP-блоками.

Такие прикладные программные SNMP-модули обеспечивают

использование услуг, предоставляемых базовым программным SNMP-модулем.

SNMP-менеджер. Базовый программный SNMP-блок (одно­ значно связанный со своим базовым программным SNMP-модулем), который включает один или несколько прикладных программных SNMP-модулей, состоящих из субмодулей генераторов команд и/или получателей управляющих операций/процедур, называется SNMP-менеджером (рис. 17.5).

SNMP-агент. Базовый программный SNMP-блок (однозначно связанный со своим базовым программным SNMP-модулем), кото­ рый включает один или несколько прикладных программных SNMP-модулей, состоящих из субмодулей приемников команд и/или источников управляющих операций/процедур, называется SNMP-агентом (рис. 17.6).

Именование пользователей системы сетевого управления. На рис. 17.7 приведена структура именования пользователей систе­ мы сетевого управления.

Пользователь (principal) - это тот, кто использует предоставчяемые системой сетевого управления услуги. Пользователем может быть (среди прочих возможных):

1)субъект (человек), выполняющий определенную роль;

2)группа субъектов, в которой каждый субъект выполняет свою определенную роль;

SNM P-модуля
(«Security-

246Глава 17. Протокол сетевого управления SNMP третьей версии

3)прикладной программный модуль (процесс) или группа таких модулей (процессов);

4)комбинации из выше перечисленных.

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

INTERNET

Рис. 17.7. Структура именования пользователей системы сетевого управления

Имя пользователя («securityName») представляет собой чита­ бельную последовательность символов, однозначно определяющую пользователя. Формат этого имени зависит от модели обеспечения безопасности и может использоваться вне границ самой модели безопасности.

Идентификатор имени пользователя, зависимого от модели безопасности («model-dependent security ГО»), представляет собой последовательность символов, определяемую соответствующей мо­ делью безопасности и отображающую имя пользователя

Name») в пределах этой модели обеспечения безопасности. Идентификатор имени пользователя может быть читабельным

или наоборот, его синтаксис определяется моделью безопасности (например, это могут быть имена групп и имена субъектов).

Преобразование идентификатора в имя пользователя и на­ оборот полностью возлагается на соответствующую модель обеспе­ чения безопасности.

Именование управляющей информации. Управляющая ин­ формация размещается в базовом программном SNMP-блоке, в кото­ ром субмодуль приема команд и ответного реагирования на них («Command Responder») имеет локальный доступ к нескольким груп­ пам (модулям) управляющей информации (рис. 17.8). Этот приклад­ ной субмодуль использует идентификатор «contextEnginelD», который эквивалентен идентификатору базового программного «snmpEnginelD».

раздел II.

247

Рис. 17.8. Структура именования управляющей информации

Группа (модуль) управляющей информации («SNMP-context» или просто «context») представляет собой совокупность данных управления, которые доступны с помощью базового программного SNMP-блока. Любой элемент данных управления может присутст­ вовать в одной или нескольких группах управляющей информации. В действительности, базовый программный SNMP-блок имеет дос­ туп ко многим группам управляющей информации. Комбинация идентификаторов «contextEnginelD» и «contextName» однозначно (недвусмысленно) определяет группу (модуль) управляющей ин­ формации в пределах административного сетевого сегмента.

Идентификатор «contextEnginelD». В рамках административ­ ного сетевого сегмента, идентификатор «contextEnginelD» уникаль­

248 Глава 17. Протокол сетевого управления SNMP третьей версии

но определяет базовый программный SNMP-блок, который может распознать субъект управления, указанный в группе (модуле) управляющей информации с соответствующим идентификатором (именем) «contextName».

Идентификатор (имя) «contextName» используется для имено­ вания группы (модуля) управляющей информации. Каждый иден­ тификатор «contextName» обязательно должен быть уникальным в пределах одного базового программного SNMP-блока.

Определитель «scopedPDU» представляет собой блок данных, который содержит идентификаторы «contextEnginelD» и «context­ Name», а также PDU-блок.

PDU-блок представляет собой протокольный блок данных («SNMP Protocol Data Unit»), содержащий данные, указанную в группе (модуле) управляющей информации, которая, в свою оче­ редь, однозначно определена в рамках административного сетевого сегмента с помощью комбинации идентификаторов «contextEngine­ lD» и «contextName».

17.3. Абстрактные служебные интерфейсы

Абстрактные служебные интерфейсы (Abstract Service Interfac­ es - ASI) служат для определения концептуальных интерфейсов между различными подсистемами базового программного SNMPблока. ASI-интерфейсы обеспечивают прозрачное функционирова­ ние базовых программных SNMP-блоков и не накладывают какихлибо ограничений на функционирование прикладных процессов (модулей). Более того, они не должны интерпретироваться как при­ кладные программные интерфейсы (Application Program Interface - API) или как требования к состоянию API.

ASI-интерфейсы описываются с помощью группы примитивов (простых наборов символов), которые определяют наборы услуг и элементы абстрактных данных. Запрос услуг осуществляется с по­ мощью примитивов.

Примитивы диспетчеризации. Подсистема диспетчеризации, как правило, предоставляет услуги прикладным программным SNMP-модулям (или просто прикладным модулям) через PDU/Dispatcher-субмодуль (рис. 17.5 и рис. 17.6).

PDU/Dispatcher-субмодуль в интересах прикладных модулей в целях передачи SNMP-запросов или управляющих опера­ ций/процедур на другой базовый программный SNMP-блок фор­ мирует следующие примитивы:

раздел II.

249

statuslnfo rm ation=

sen dP du(

IN transportD om ain

IN transportA ddress

IN m essa g eP ro ce ssin g M o d el IN securityM odel

IN sec u rityN a m e

IN securityLevel

IN co n tex tE ngin elD

IN co n tex tN am e

IN pduVersion

IN P D U

IN e xp ectR esp o n se

п е р е д а ч а « s e n d P d u H a n d le » , есл и успеш ны й прием пе р е д а ч а «errorlndication», есл и ош иб ка

тип а д р ес ац и и п р и м ен ен и е сетев о го а д р е с а

обы чно, S N M P -вер сия

испол ь зуем ая м о дель о б е сп еч ен и я б езопа снос ти по и м ени этого по л ьзов ател я тр еб уе м ы й уровень б езо па сно с ти

д ан н ы е из этого S N M P -б л о ка

д ан н ы е из этой группы уп рав л я ю щ е й и нф о рм ац ии версия P D U -б л о ка

S N M P /P D U -б ло к

отв ет полож ительны й или отри ц ател ьн ы й

)

 

 

 

PDU/Dispatcher-субмодуль

для

передачи

входящего

SNMP/PDU-блока в прикладные модули

формирует

следующие

примитивы:

 

 

 

processPdu(

IN m essa g eP ro ce ssin g M o d el IN securityM odel

IN securityN am e

IN securityLevel

IN con textE ngin elD

IN con textN am e

IN pduVersion IN PD U

IN m a x S ize R e s p o n s e S c o p e d P D U IN stateR eferenc e

о б р а б о тка P D U -зап р о с а /у п р а в л я ю щ е й оп ер ац и и обы чно, S N M P -вер сия

испол ь зуем ая м о дель о б есп еч ен и я б езопа снос ти по им ени этого пол ьзов ател я тр еб уе м ы й уровень б езопа снос ти

д ан н ы е из этого S N M P -б л о ка

д ан н ы е из этой группы уп р ав л я ю щ е й инф о рм ац ии версия P D U -б л о ка

S N M P /P D U -б л о к

м аксим альны й р азм е р о тв етного P D U -б л о ка

ука за н и е состояния д анн ы х (при п е р е д а ч е о тв е та )

)

PDU/Dispatcher-субмодуль в интересах прикладного модуля для передачи ответного SNMP/PDU-блока в другой PDU/Dispatcherсубмодуль формирует следующие примитивы:

result =

«ус п еш н о » или «о ш и б ка»

returnResponsePdu(

 

IN m essageP rocessingM odel

обы чно, S N M P -вер сия

IN securityM odel

испол ь зуем ая м одель о б есп еч ен и я б езо па сно с ти

IN securityNam e

по им ени этого пол ьзовател я

IN securityLevel

уровень б езопа снос ти как во в ход ящ ем запр о се

IN contextE nginelD

д анн ы е из этого S N M P -б ло ка

IN contextN am e

д анн ы е из этой группы уп рав л я ю щ е й инф о рм ац ии

IN pduVersion

версия P D U -б л о ка

IN P D U

S N M P /P D U -б ло к

IN m axS izeR esponseScopedP DU

максимальны й размер, обеспечиваемы й при передаче

IN stateR eference

ука за н и е состояния д анн ы х (как указан о в зап р о с е )

IN statuslnform ation

«ус п еш н о » или «о ш и б ка» (у ка за те л ь /зн а ч е н и е

)

ош иб ки )

PDU/Dispatcher-субмодуль для передачи входящего ответ­ ного SNMP/PDU-блока в прикладные модули формирует сле­ дующие примитивы:

250

Глава 17. Протокол сетевого управления SNMP третьей версии

p ro ce s s R e s p o n s e P d u (

IN m essa g e P ro c e s s in g M o d e l IN securityM odel

IN sec u rityN a m e IN securityLevel

IN c o n tex tE n g in elD IN co n te x tN a m e

IN pdu V ersion IN P D U

IN status Inform ation IN s e n d P d u H a n d le )•

о б р а б о тка о тв етного S N M P /P D U -б л о ка обы чно, S N M P -вер сия

испол ь зуем ая м о дель о б есп еч ен и я безопасности по и м ени этого пол ьзов ател я уровень б езопа снос ти

д ан н ы е из этого S N M P -б л о ка

д ан н ы е из этой группы уп рав л я ю щ е й инф орм ации версия P D U -б л о ка

S N M P /P D U -б л о к

« ус п еш н о » или «ош и б ка»

у п р ав л е н и е со стороны «se n d P d u »

Прикладные модули могут регистрировать ответственность (или снимать ее) за специфический идентификатор «contextEngine­ lD» и за специфический указатель типа SNMP/ PDU-блока «pduType» относительно PDU/Dispatcher-субмодуля (перечень со­ ответствующих «pduType», которые может регистрировать при­ кладной модуль, определяется моделью(ями) обработки сообщений, входящей (ими) в состав базового программного SNMP-блока, со­ держащего PDU/ Dispatcher-cyбмодуль):

statuslnfo rm ation =

reg isterC o n textE n g in e lD (

IN

c o n tex tE n g in elD

IN

pdu T yp e

u n reg isterC o n te xtE n g in elD (

IN

c o n tex tE n g in elD

IN

pd u T yp e

--«ус п еш н о » или «о ш и б ка»

-- пр ин ятие отв етстве нно сти базовы м S N M P -блоком

сэтим ID

--реги страц ия ти п а (о в ) S N M P /P D U -б ло ка

--

п е р е д а ч а отв етстве нно сти б азов ом у S N M P -блоку

сэтим ID

--сн яти е ти п а (о в ) S N M P /P D U -б л о ка с регистрации

)•

Примитивы подсистемы обработки сообщений. Dispatcherсубмодуль сообщений (рис. 17.5 и рис. 17.6) взаимодействует с моде­ лью обработки для определения версии SNMP-сообщений.

Подсистема обработки сообщений в целях подготовки исхо­ дящих SNMP-сообщений, содержащих запросы или управляющие операции, формирует следующие примитивы:

statuslnfo rm ation =

« ус п еш н о » или «о ш и б ка»

p re p a re O u tg o in g M e s s a g e (

 

IN transportD om ain

тип а д р ес ац и и

IN transportA dd ress

пр и м ен ен и е сетев о го а д р е с а

IN m e s s a g e P ro c e s s in g M o d e l

обы чно, S N M P -вер сия

IN securityM odel

испол ь зуем ая м одель о б есп еч ен и я безопасности

IN s ec u rityN a m e

по им ени этого пользователя

IN securityLevel

треб уем ы й уровень б езопасности

IN c o n tex tE n g in elD

д ан н ы е из этого S N M P -бло ка

IN con te x tN a m e

д анн ы е из этой группы уп рав л я ю щ е й инф ормации

IN pduV ersion

версия P D U -б ло ка

IN P D U

S N M P /P D U -б л о к

Раздел II.

IN e x p e ctR esp o n se

IN sen d P d u H a n d le

O U T d es tTran sportD om ain O U T destTran sportA ddress O U T outg o in g M ess ag e

O U T outgo in g M ess ag eL en g th

251

«ус п еш н о » или «о ш и б ка» уп р ав л е н и е ср а в н ен и ем вход ящ их ответны х соо б щ ен и й

сетев ой се гм е н т на зн ач ен и я д л я доставки а д р е с на зн ач ен и я д л я достав ки с о о б щ ен и е д л я пе р ед ачи р азм е р со о б щ ен и я д л я п е р ед ачи

Подсистема обработки сообщений в целях подготовки исходя­ щих SNMP-сообщений, содержащих ответы на поступившие запросы или управляющие операции, формирует следующие примитивы:

result =

prep a re R esp o n seM essa g e( IN m essa geP roce ssingM odel IN securityM odel

IN securityN am e

IN securityLevel

IN con textE ngin elD

IN con textN am e IN pduVersion IN P D U

IN m a x S iz e R e s p o n s e S c o p e d P D U

IN stateR eferen c e

IN statuslnform ation

O U T destTran sportD om ain O U T destTransportA ddress O UT o u tgoingM essage

O UT o u tgoingM essageLen gth

--«ус пеш но» или «о ш и б ка»

обы чно, S N M P -вер сия

-

та ка я ж е как и в по ступи в ш ем запр о се

--

та ко е ж е как и в по ступи в ш ем запро се

такой ж е как и в п о ступи в ш ем зап р о се

д ан н ы е из этого S N M P -б л о ка

д ан н ы е из этой группы уп р ав л я ю щ е й и нф о рм ац ии

версия P D U -б л о ка

S N M P /P D U -б л о к

-- возм ож ны й м аксим ал ьны й р а зм е р P D U -б л о ка

у ка за н и е состояния д анн ы х (как указан о в зап р о с е )

«ус п еш н о » или « о ш и б ка» (у ка за те л ь /зн а ч е н и е ош иб ки )

тип а д р ес ац и и д л я достав ки

~а д р е с на зн ач ен и я д л я д остав ки

со о б щ е н и е д л я п е р ед ачи

-

р азм е р со о б щ ен и я д л я п е р ед ачи

)

Подсистема обработки сообщений формирует служебный при­ митив для предварительной обработки отдельных элементов абст­ рактных данных, содержащихся во входящих SNMP-сообщениях:

result =

--

«ус пеш но »

или «о ш и б ка»

prepareD ataElem ents(

--

тип а д р ес ац и и источника со о б щ ен и я

IN transportDom ain

IN transportAddress

--

а д р е с источника соо б щ ен и я

IN w holeM sg

--

как принято из сети

IN w holeM sgLength

--

как принято из сети

OUT m essageP rocessingM odel

--

обы чно, S N M P -вер сия

OUT securityM odel

--

испол ь зуем ая м о дель о б есп еч ен и я б езопа снос ти

OUT securityN am e

--

по им ени этого пол ьзов ател я

OUT securityLevel

--

тр еб уе м ы й уровень б езопа снос ти

OUT contextE nginelD

--

д анн ы е из этого S N M P -б ло ка

OUT contextN am e

--

д анн ы е из этой группы уп рав л я ю щ е й

 

 

инф о рм ац ии

O UT pduVersion

--

версия P D U -б л о ка

OUT P D U

-

S N M P /P D U -б ло к

OUT pduType

--

тип S N M P /P D U -б л о ка

OUT sen dP duH andle

-

у п р ав л е н и е с р а в н ен и ем запросов

O UT m a x S ize R e s p o n s e S c o p e d P D U

--

возм ож ны й

м аксим альны й р азм е р P D U -б л о ка

OUT statuslnform ation

--

«ус пеш но »

или « о ш и б ка» (у ка за те л ь /зн а ч е н и е

 

 

ош иб ки )

 

O UT stateR eferenc e

--

ука за н и е состо яни я д анн ы х (для в озм ож ного

 

 

о тв е та )

 

)