The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"как создавать цепочки сертификатов?"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Информационная безопасность (Public)
Изначальное сообщение [Проследить за развитием треда]

"как создавать цепочки сертификатов?" 
Сообщение от eightn emailИскать по авторуВ закладки(ok) on 06-Июн-05, 19:14  (MSK)
А как создавать цепочки подписанных сертификатов в openssl?

Создал собственный корневой CA (company.ru)
Выдал и подписал им сертификаты для почтового сервера (mail.company.ru) и radius сервера (radius.company.ru).

Создал клиентские сертификаты client1,2,3 для клиентов, для работы с почтовым сервером, подписал их тоже корневым сертификатом CA (company.ru).

Все замечательно работает.

Но возник вопрос.
В песпроводной сети используется WPA шифрование через EAP/TLS с использованием radius сервера. Аутентификация клиента - по сертификату.
И тут оказалось, что клиентские сертификаты, выданные для почты, отлично подходят для аутентификации на радиус сервере, т.е. любой клиент, которому выдан почтовый клиенсткий сертификат, может работать и с беспроводной сетью. Вероятно, он сможет работать и с веб-сервером, если там тоже настроить аутентификацию посредством сертификатов и тд.

Другими словами, одного сертификата клиента хватит для всего. Это хорошо, но если нужно разграничить доступ клиентам (например, всем можно пользоваться своей почтой, но только избранным - подключаться к беспроводной сети). Что тут делать?

Пришло в голову, что нужно подписывать клиентские сертификаты не корневым (CA, company.ru), а соответствующими сертификатами серверов - mail.company.ru, radius.company.ru (а они, в свою очередь, уже были подписаны корневым центром CA). Теоретически, если я правильно понимаю идеологию сертификатов, в этом случае сертификат, выданный для работы с почтой, не подойдет для аутентификации на радиус-сервере.

К сожалению, попытка подписать клиенсткий сертификат серверными не удалась.
Точнее, подпись, как таковая, успешно проходит, я получаю файл сертификата:
------
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 6 (0x6)
        Signature Algorithm: md5WithRSAEncryption
        Issuer: C=RU, ST=Euro, L=Moscow, O=company.ru, OU=testlab, CN=radius.company.ru/emailAddress=eightn@company.ru
        Validity
            Not Before: Jun  6 12:22:02 2005 GMT
            Not After : Jun  6 12:22:02 2007 GMT
        Subject: C=RU, ST=Euro, L=Moscow, O=company.ru, OU=testlab, CN=client3/emailAddress=eightn@company.ru
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
            
------

но вот при попытке проверки такого сертификата

openssl verify -CAfile company.ru-ca.crt client3.crt
выдается примерно следующее:
client3.crt: /C=RU/ST=Euro/L=Moscow/O=company.ru/OU=testlab/CN=client3/emailAddress=eightn@company.ru
error 20 at 0 depth lookup:unable to get local issuer certificate
(вне зависимости от того, что ставить в CAfile - корневой сертификат (company.ru-ca.crt) или сертификат radius-сервера (radius.company.ru.crt), который в свою очередь, подписан корневым.
Указание пути -CApath к сертификатам тоже не помогает (выдается та же ошибка).
Та же ошибка выдается и при перечислении сертификатов цепочки:
openssl verify -CAfile company.ru-ca.crt radius.company.ru.crt client3.crt

radius.company.ru.crt: OK
client3.crt: /C=RU/ST=Euro/L=Moscow/O=company.ru/OU=testlab/CN=client3/emailAddress=eightn@company.ru
error 20 at 0 depth lookup:unable to get local issuer certificate

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "как создавать цепочки сертификатов?" 
Сообщение от .zZz. emailИскать по авторуВ закладки(??) on 07-Июн-05, 10:46  (MSK)
>А как создавать цепочки подписанных сертификатов в openssl?
>
>Создал собственный корневой CA (company.ru)
>Выдал и подписал им сертификаты для почтового сервера (mail.company.ru) и radius сервера
>(radius.company.ru).
>
>Создал клиентские сертификаты client1,2,3 для клиентов, для работы с почтовым сервером, подписал
>их тоже корневым сертификатом CA (company.ru).
>
>Все замечательно работает.
>

То есть, получается, что и клиентские сертификаты и серверные для CA - на одном "уровне"?
Вообще, в том же апаче доступом можно управлять на основе полей, например OU,CN. И тогда выход - выдавать почтовые сертификаты с полем OU=mailer, а тем, кто будет получать доступ к сети через NAS + radius, выдавать OU=wan-access. Если для радиуса эти атрибуты существуют как отдельные пары - то можно загнать в radcheck или в групповой radcheck.
А вообще, интересная тема - если получится - напишите, пожалуйста, как... ;)

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "как создавать цепочки сертификатов?" 
Сообщение от Alexey Morozov emailИскать по авторуВ закладки on 08-Июн-05, 12:49  (MSK)
У меня та-же самая проблема!
Если кто-то знает в чем проблема - напишите решение пожалуйста!
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "как создавать цепочки сертификатов?" 
Сообщение от Mikka Искать по авторуВ закладки(??) on 10-Июн-05, 13:09  (MSK)
Вообще, управлять доступом к ресурсам, генеря кучу дополнительных центров сертификации - не очень хорошая идея (как же SSO???).
А средства радиуса разве не позволяют кому-то открыть доступ, а кому-то закрыть?

Попробуйте скопировать в файл сертификата второго центра в цепочке в конец файла сертификат корневого центра и повторить проверку.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "как создавать цепочки сертификатов?" 
Сообщение от Mikka Искать по авторуВ закладки(??) on 10-Июн-05, 13:15  (MSK)
http://www.mkssoftware.com/docs/man1/openssl_verify.1.asp
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "как создавать цепочки сертификатов?" 
Сообщение от oksimus Искать по авторуВ закладки on 10-Июн-05, 17:12  (MSK)
>А как создавать цепочки подписанных сертификатов в openssl?
>
>Создал собственный корневой CA (company.ru)
>Выдал и подписал им сертификаты для почтового сервера (mail.company.ru) и radius сервера
>(radius.company.ru).
>
>Создал клиентские сертификаты client1,2,3 для клиентов, для работы с почтовым сервером, подписал
>их тоже корневым сертификатом CA (company.ru).
>
>Все замечательно работает.
>
>Но возник вопрос.
>В песпроводной сети используется WPA шифрование через EAP/TLS с использованием radius сервера.
>Аутентификация клиента - по сертификату.
>И тут оказалось, что клиентские сертификаты, выданные для почты, отлично подходят для
>аутентификации на радиус сервере, т.е. любой клиент, которому выдан почтовый клиенсткий
>сертификат, может работать и с беспроводной сетью. Вероятно, он сможет работать
>и с веб-сервером, если там тоже настроить аутентификацию посредством сертификатов и
>тд.
>
>Другими словами, одного сертификата клиента хватит для всего. Это хорошо, но если
>нужно разграничить доступ клиентам (например, всем можно пользоваться своей почтой, но
>только избранным - подключаться к беспроводной сети). Что тут делать?
>
>Пришло в голову, что нужно подписывать клиентские сертификаты не корневым (CA, company.ru),
>а соответствующими сертификатами серверов - mail.company.ru, radius.company.ru (а они, в свою
>очередь, уже были подписаны корневым центром CA). Теоретически, если я правильно
>понимаю идеологию сертификатов, в этом случае сертификат, выданный для работы с
>почтой, не подойдет для аутентификации на радиус-сервере.
>
>К сожалению, попытка подписать клиенсткий сертификат серверными не удалась.
>Точнее, подпись, как таковая, успешно проходит, я получаю файл сертификата:
>------
>Certificate:
>    Data:
>        Version: 3 (0x2)
>        Serial Number: 6 (0x6)
>
>        Signature Algorithm: md5WithRSAEncryption
>        Issuer: C=RU, ST=Euro, L=Moscow,
>O=company.ru, OU=testlab, CN=radius.company.ru/emailAddress=eightn@company.ru
>        Validity
>            
>Not Before: Jun  6 12:22:02 2005 GMT
>            
>Not After : Jun  6 12:22:02 2007 GMT
>        Subject: C=RU, ST=Euro, L=Moscow,
>O=company.ru, OU=testlab, CN=client3/emailAddress=eightn@company.ru
>        Subject Public Key Info:
>
>            
>Public Key Algorithm: rsaEncryption
>
>------
>
>но вот при попытке проверки такого сертификата
>
>openssl verify -CAfile company.ru-ca.crt client3.crt
>выдается примерно следующее:
>client3.crt: /C=RU/ST=Euro/L=Moscow/O=company.ru/OU=testlab/CN=client3/emailAddress=eightn@company.ru
>error 20 at 0 depth lookup:unable to get local issuer certificate
>(вне зависимости от того, что ставить в CAfile - корневой сертификат (company.ru-ca.crt)
>или сертификат radius-сервера (radius.company.ru.crt), который в свою очередь, подписан корневым.
>Указание пути -CApath к сертификатам тоже не помогает (выдается та же ошибка).
>
>Та же ошибка выдается и при перечислении сертификатов цепочки:
>openssl verify -CAfile company.ru-ca.crt radius.company.ru.crt client3.crt
>
>radius.company.ru.crt: OK
>client3.crt: /C=RU/ST=Euro/L=Moscow/O=company.ru/OU=testlab/CN=client3/emailAddress=eightn@company.ru
>error 20 at 0 depth lookup:unable to get local issuer certificate


можно в при генирации сертификата указать зачем нужен сертификат то еть счем ему работать- првалеьно назначение сертификата

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру