alibek Posted March 10, 2015 Posted March 10, 2015 Есть веб-сервер с самоподписанным сертификатом. В сертификате прописано CN="My Server", а также прописан altSubject для доменного имени сервера. В современных браузерах все работает, каких-либо предупреждений они на предмет несовпадения имени домена не пишут. Но в логах апача есть ошибки: [warn] RSA server certificate CommonName (CN) `My Server' does NOT match server name!? Как бы от них избавиться? Вставить ник Quote
vop Posted March 10, 2015 Posted March 10, 2015 (edited) А зачем такие проблемы с сертификатом? Что мешает сделать нормальный? Edited March 10, 2015 by vop Вставить ник Quote
alibek Posted March 10, 2015 Author Posted March 10, 2015 Нормальный это какой? В котором доменное имя прописано в CN? Помоему сейчас так делать не рекомендуют. И кроме того, у меня два домена и сервер должен работать по обоим адресам. Вставить ник Quote
vop Posted March 10, 2015 Posted March 10, 2015 (edited) Ну, по большому счету, грустная новость в том, что он будет всегда трепаться в логе, если (далее цитата): .... 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 March 10, 2015 by vop Вставить ник Quote
alibek Posted March 11, 2015 Author Posted March 11, 2015 Вообщем я в ServerName прописал имя сервера "My Server", в ServerAlias прописал доменные имена. В сертификате в CN указано имя сервера "My Server", в altName указаны доменные имена. В логах ошибок нет, сайт без каких-либо ошибок открылся в IE11, в Хроме, в старой Опере и в Файрфоксе. Если вы работаете с собственными сертификатами, то что мешает поступить более "грамотно" - сделать свой root CA, и при помощи его подписывать такое количество отдельных сертификатов для каждого сайта (включая и заход по IP) А разве Апач умеет назначать разные сертификаты на разные сайты, которые размещаются на одном IP-адресе? Вставить ник Quote
vop Posted March 11, 2015 Posted March 11, 2015 Вообщем я в ServerName прописал имя сервера "My Server", в ServerAlias прописал доменные имена. В сертификате в CN указано имя сервера "My Server", в altName указаны доменные имена. В логах ошибок нет, сайт без каких-либо ошибок открылся в IE11, в Хроме, в старой Опере и в Файрфоксе. Тоже трик, как вариат. :) Апача ServerName не проверяет на корректность. :) А разве Апач умеет назначать разные сертификаты на разные сайты, которые размещаются на одном IP-адресе? На каждый IP и домен (на каждый вход) делается virtualhost со своим сертификатом. Большинство софта поддерживает ныне CNI. А тот софт, который не поддерживает, один фиг. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.