Jump to content
Калькуляторы

Apache, SSL - как отключить ошибки в логах на несовпадение CN?

Есть веб-сервер с самоподписанным сертификатом.

В сертификате прописано CN="My Server", а также прописан altSubject для доменного имени сервера.

В современных браузерах все работает, каких-либо предупреждений они на предмет несовпадения имени домена не пишут.

Но в логах апача есть ошибки:

[warn] RSA server certificate CommonName (CN) `My Server' does NOT match server name!?

Как бы от них избавиться?

Share this post


Link to post
Share on other sites

А зачем такие проблемы с сертификатом? Что мешает сделать нормальный?

Edited by vop

Share this post


Link to post
Share on other sites

Нормальный это какой?

В котором доменное имя прописано в CN?

Помоему сейчас так делать не рекомендуют.

И кроме того, у меня два домена и сервер должен работать по обоим адресам.

Share this post


Link to post
Share on other sites

Ну, по большому счету, грустная новость в том, что он будет всегда трепаться в логе, если (далее цитата):

 

....
if (SSL_X509_getCN(ptemp, cert, &cn)) {
....
 if (strNE(s->server_hostname, cn)) {
    ap_log_error(APLOG_MARK, APLOG_WARNING, 0, s,
              "%s server certificate CommonName (CN) `%s' "
              "does NOT match server name!?",
               ssl_asn1_keystr(type), cn);
 }
}

 

Подход в лоб - как только хостнаме не равен соммон наме, так сразу сообщаем об этом в лог.

 

Теперь по поводу самого сертификата. Честно говоря, я не слышал того, что теперь не рекомендуют в CN записывать домен. Ну и особо и не слежу за новостями. Может есть какая ссылка? Все, что попадается в сети, требует в CN писать домен.

 

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

 

Что касается вообще сертификатов, то, чисто мое мнение - создавать сертификат с альтернативными именами имеет смысл только в том случае, если вы покупаете его для нескольких сайтов. Если вы работаете с собственными сертификатами, то что мешает поступить более "грамотно" - сделать свой root CA, и при помощи его подписывать такое количество отдельных сертификатов для каждого сайта (включая и заход по IP), сколько нужно? А клиентам предложить установить у себя этот CA сертификат, и не иметь больше проблем.

 

Еще можно сделать wildcard CN *.domain.name Хотя, апач и на это будет ругаться.

 

Ну и радикальный вариант - в коде апачи закомментировать кусок, приведенный выше, и рекомпильнуть сервер.

Edited by vop

Share this post


Link to post
Share on other sites

Вообщем я в ServerName прописал имя сервера "My Server", в ServerAlias прописал доменные имена.

В сертификате в CN указано имя сервера "My Server", в altName указаны доменные имена.

В логах ошибок нет, сайт без каких-либо ошибок открылся в IE11, в Хроме, в старой Опере и в Файрфоксе.

 

Если вы работаете с собственными сертификатами, то что мешает поступить более "грамотно" - сделать свой root CA, и при помощи его подписывать такое количество отдельных сертификатов для каждого сайта (включая и заход по IP)

А разве Апач умеет назначать разные сертификаты на разные сайты, которые размещаются на одном IP-адресе?

Share this post


Link to post
Share on other sites

Вообщем я в ServerName прописал имя сервера "My Server", в ServerAlias прописал доменные имена.

В сертификате в CN указано имя сервера "My Server", в altName указаны доменные имена.

В логах ошибок нет, сайт без каких-либо ошибок открылся в IE11, в Хроме, в старой Опере и в Файрфоксе.

 

Тоже трик, как вариат. :) Апача ServerName не проверяет на корректность. :)

 

А разве Апач умеет назначать разные сертификаты на разные сайты, которые размещаются на одном IP-адресе?

 

На каждый IP и домен (на каждый вход) делается virtualhost со своим сертификатом. Большинство софта поддерживает ныне CNI. А тот софт, который не поддерживает, один фиг.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this