www.eserv.ru // EservSslFaq

oldwiki /2004-11-29 13:45/ (v1)
Продукты и услуги Скачать Документация Купить Поддержка Форумы Партнёрам Статьи О компании
News
15.05.2012
Eserv504
15.05.2012
ActiveSync
01.04.2012
Eproxy508
25.03.2012
Eserv503
26.02.2012
Eserv502
08.02.2012
UMI.CMS
22.12.2011
Eserv431
20.12.2011
Eproxy507
15.11.2011
Eproxy506
19.09.2011
Eproxy505
08.09.2011
Eserv430
06.09.2011
Lightning
18.07.2011
PoweredBy
16.07.2011
IPv6
08.07.2011
Eproxy5beta1
17.06.2011
IPv6DNS
13.06.2011
IPv6Mail
21.03.2011
Eserv428
22.10.2010
Eserv426
21.10.2010
SSL
22.04.2010
Eserv423
20.04.2010
Eserv4WhatsNew
19.04.2010
EservLDAP
19.04.2010
EservDHCP
19.04.2010
EservRubricator
08.04.2010
EservDNS
08.04.2010
NSСI
08.04.2010
WPAD
27.03.2010
Eserv422
27.03.2010
Eserv4Docs
26.03.2010
Eserv4FAQ
21.03.2010
EservIrc
05.03.2010
Eserv421
05.03.2010
HttpProxy
02.03.2010
EservVideo
02.12.2009
Eserv4Wiki
02.12.2009
Eserv4acWEB
02.12.2009
PopPull
22.11.2009
PigMailPigProxy2/WhatsNew
22.11.2009
PigMail/WhatsNew
22.09.2009
FossilEservHowTo
22.09.2009
SourceCodeManagement
22.09.2009
FossilScm
16.09.2009
SendEmail
08.09.2009
RoundCube
07.05.2009
GitScm
07.05.2009
GitEservHowTo
06.05.2009
SunBird

Вопросы по использованию SSL/TLS-соединений в Eserv/3

TOC

Встала необходимость внедрения SSL для почтовых клиентов внутри локальной сети. Так и не понял, как и где я могу получить сертификат для моего сервера. Что за сертификат server.pem — из дистрибутива Eserv-a?

Это пример сертификата — выписанный для localhost и подписанный нашим CA. Если вопрос стоит только о шифровке каналов при передаче внутри ЛС (и вообще для своих пользователей где угодно), то можно использовать именно его. Если вам кроме этого нужно доказывать внешним отправителям что "вы это вы", то можно получить серверные сертификаты у общепризнанных CA — Thawte, VeriSign и т.п. Общепризнанность выражается в том, что подлинность подписей на выданных ими сертификатах можно проверить по встроенным в почтовые агенты и браузеры сертифкатам этих CA. Т.е. пользовательские программы доверяют им по умолчанию (доверяют ли пользователи — это другой вопрос). Сертификаты этих CA платные. Во многих случаях используются самовыданные сертификаты или сертификаты не включенных в списки доверенных CA (например, от российских CryptoVendors или от нашего CA ). В этом случае пользовательская программа выдает окошко с вопросом, доверяет ли пользователь этому центру сертификации.

Если я правильно понимаю, после того как я получу сертификат для своего сервера и установлю его на нем, из него я должен буду создать сертификаты доверия — которые я внедрю в почтовые клиенты на конечных станциях, правильно ?

Не совсем так. Не "сертификаты доверия". При подключении к вашему серверу по SSL/TLS клиентская программа на стороне пользователя получает сертификат сервера (в этом сертификате в частности содержится открытый ключ, которым подписывается симметричный сессионный ключ шифруемого соединения) и пытается проверить подлинность подписи CA на нем. Если сертификата этого издателя (центра сертификации, CA) в списке доверенных нет, то программа спросит у клиента — доверять ли этому издателю, и как доверять — на время этой конкретной сессии, или до конца срока действия сертфиката. Если пользователь выберет второе, то сертификат издателя помещается в список доверенных, и больше таких вопросов задаваться не будет. Именно это и есть "внедрение в почтовые клиенты", о котором вы говорите. Кроме подлинности подписи сравнивается доменное имя, указанное в подписываемом субьекте, с тем доменным именем, к которому клиент подключается. Если они не совпадают, то выдается соответствующее предупреждение (также как при проверке ~S/MIME подписи в Email сравнивается адрес отправителя и адрес в подписывающем сертификате). И проверяется, не истёк ли срок действия сертификата.

Кстати, далеко не все почтовые клиенты делают проверку сертификата и выдают какие-либо сообщения. Некоторые принимают любые сертификаты молча (в отличие от браузеров).

Где я могу получить сертификат для своего сервера, или его можно как-то создать самому?

Как было сказано выше, вы можете получить их в центрах сертификации. Каком именно — зависит от необходимого уровня доверия. Можно делать самовыдачу (с помощью OpenSsl, например), так делает абсолютно подавляющее владельцев серверов. Или можно получить сертификат с подписью CA, не включенных в списки доверенных по умолчанию. Если речь только о шифровке канала, а не о доверии, то в большинстве случаев вам хватит нашего server.pem.

Что за ключ в eserv3.ini SSLverifyClient — как он работает и для чего?

Там ведь написано в подсказке к этому ключу в веб-интерфейсе?

При регистрации Есерв-а, устанавливались сертификаты, неужели нужно для каждого пользователя создавать свой сертификат?

Нет. Пользователям сертификаты нужны только в случае, если сервер также проверяет пользовательский сертификат (в большинстве случаев это не так). Или для ~S/MIME-подписей писем.

TheBat выдает "Приветствие TLS не завершено. Имя сервера ("123.123.123.3") не соответствует сертификату." смотрю в сертификат: имя сервера: localhost ...

Если TheBat не выдает пользователю запрос, в котором можно игнорировать несоответствие имени сервера и имени в сертификате (о чем писалось выше), то остается получить сертификат с указанным именем сервера (в вашем случае 123.123.123.3, хотя лучше и клиента настроить на доменное имя вместо IP, и сертификат получить для этого доменного имени). Если платить CA не входит в ваши планы, то используйте OpenSSL или, например, нашу страницу создания YDK-сертификатов — правда созданный с его помощью PFX-файл вам (как и в с случае с платными CA) придется самостоятельно привести к формату server.pem. Мы бы могли высылать вам ключи в этом формате (скриптом на сервере), но для этого нам пришлось бы запросить у вас закрытый ключ, который создается в вашем браузере — а это нарушение принципов безопасной работы с ключами. В нормальном режиме на наш сервер ваш браузер передает только открытый ключ (для подписи его нашим ключем, т.е. для создания сертификата), закрытый ключ остается у вас, но вашему серверу в server.pem нужны оба ваших ключа.

См. также X.509

Работает на Eserv/7.0.beta1/Linux/x64 (Dec 20 2024)