Сертифікат SSL для публічної IP-адреси?


10

Я щойно спробував придбати SSL Comodo Positive, але його було відхилено через те, що він не підтримує публічну IP-адресу, а натомість підтримує лише доменне ім’я.

Хтось знає будь-якого постачальника сертифікатів SSL, який підтримує загальнодоступну IP-адресу замість доменного імені?

Моя компанія має спеціалізований сервер, розміщений з веб-хостинговою компанією, який використовується для запуску помилок для декількох проектів (для декількох клієнтів). Оскільки він використовується лише для виправлення помилок, нам доменне ім’я не потрібно (наші клієнти отримують доступ до нього, ввівши публічний IP-адресу у своєму браузері).


2
Я б встановив доменне ім'я, щоб вам не довелося запам’ятовувати IP-адресу, коли ви знаходитесь у тому місці, де у вас немає його на закладці. Плюс при зміні IP-адрес він буде прозорим.
Марк Вагнер

Відповіді:


16

Я думаю, що ти можеш це зробити, але не так, як ти намагаєшся це зробити.

Сертифікат SSL - це твердження, що прив'язує відкритий ключ шифрування до структури X.500, яка включає елемент CN або загальне ім'я; підписаний сертифікат - це такий, коли прив'язка може бути сертифікована стороннім сертифікаційним органом, використовуючи відкритий ключ, уже відомий кінцевим користувачам (той стек сертифікатів Органу з сертифікації (CA), що знаходиться у вашому браузері).

Коли ви відвідуєте захищений від SSL веб-сайт із браузером, підписаний CN стає відомим браузеру. Що браузер вирішить зробити з цим, залежить від браузера. Браузери, які я знаю, порівнюють його з запитуваним ім'ям хосту, і помилка, якщо вона відрізняється (або якщо це сертифіковане прив'язка не витримує аналіз, наприклад, сертифікат підпису не відомий веб-переглядачу або прив'язка не- застарілих, але це вже інше питання). Нічого, що в принципі не заважає вам отримати публічно підписаний сертифікат, де CN є IP-адресою, а не FQDN (повнокваліфіковане доменне ім’я) [1], але це не змусить браузера порівнювати CN з IP адресу замість запитуваного імені хоста .

Я підозрюю, що найпростіший спосіб вирішити вашу проблему - це створити власний СА, що легко зробити, і про це є багато підручників з громадськості; один тут . Після того, як ваші кінцеві користувачі імпортують ваш CA у свої веб-переглядачі, усі сертифікати, які ви знайдете, будуть прийняті як авторитетні.

Тоді у вас може виникнути друга проблема в тому, що ви хочете запустити багато сайтів NameVirtualHost за однією IP-адресою. Це історично було непереборним, оскільки (на відміну від TLS) SSL переговори відбуваються раніше, ніж будь-що інше на зв'язку; тобто вбудований у ваш сертифікат CN відомий і використовується клієнтом, перш ніж клієнт зможе сказати, до якого хоста вони намагаються підключитися.

Нещодавно, здається, було введено розширення протоколу під назвою SNI (Вказівка ​​імені сервера), що дозволяє клієнтові та серверу вказувати, що вони хотіли б виконати деякі імена хоста до того, як буде представлено сертифікат SSL, що дозволяє отримати право набір сертифікатів, що надаються сервером. Мабуть, для цього потрібен apache 2.2.10, досить недавня версія OpenSSL та (що важливо ) підтримка на стороні клієнта.

Тож якби мені довелося робити те, що ти намагаєшся, я б дивився на карбування власного сертифіката ЦС, кажу своїм кінцевим користувачам, що вони повинні використовувати браузери, які підтримують SNI, та імпортувати мій кореневий сертифікат CA, а також вирізати та підписати власні SSL-сертифікати для кожного сайту bugtrack.

[1] Гаразд, ви, можливо, не знайшли того, хто це зробить, але це детальна інформація про реалізацію. Я намагаюся тут показати, що навіть якби ви це зробили, це не вирішило б вашої проблеми.


4
Чому для конкретної програми, чому б ні? Якщо він чекає постачальника додатків, і ви йому не довіряєте, то все одно пограбуєте щодо цієї програми, оскільки він має приватний ключ SSL і може розшифрувати речі незалежно. і якщо це настільки їх хвилює, він може просто вирізати власноруч підписані сертифікати для кожного зі своїх веб-сайтів, і вони можуть імпортувати їх за потребою.
MadHatter

2
@Tom - якщо ви не довіряєте особі, яка пропонує вам сертифікат у наведеному вище прикладі, то чому б ви взагалі мали справу з ними? Незалежно від того, незалежно від того, незалежно від того, незалежно від того, незалежно від того, чи є SSL-сертифікат, випущений / з підтримкою / відомого КА, ви переживаєте довіру WRT, якщо ви довіряєте дані програмі "онлайн".
Роб Моїр

2
Я припускаю, що побоювання полягає в тому, що, як видається, немає способу встановити ЦС як авторитетний лише для певних доменів, як тільки вони встановлять мій корінь CA, я можу легко засвідчити сайти онлайн-банкінгу так само легко, як і власний додаток для відстеження помилок. Якщо я можу отруїти їх кеш-пам'ять DNS, то я можу здійснити атаку "посереднього" на їхній Інтернет-банкінг. Якщо це насправді хвилює їх, і вони не хочуть використовувати користувальницький браузер для цього проекту, то, як я вже говорив вище, я міг вирізати сертифікат для власного підпису для кожного окремого помичника, який клієнти могли встановити за потреби.
MadHatter

1
Том, я насправді погодився з цією причиною, щоб хотіти використовувати "довірений" серт. Насправді я згоден з цим на 100%. Тим не менш, як ваш оригінальний коментар натрапив.
Роб Моїр

1
Палаючий доменне ім’я? Моя рідна мова - не англійська, тож ви можете це пояснити? Крім того, мій начальник вважає за краще використовувати публічний IP, можливо, він не хоче, щоб сайт знаходився в пошуковій системі (чи можуть пошукові системи знайти сайт, хоча він не має доменного імені?)
серійний двигун

10

Є один Root Certificate Authority, про який я знаю, він попередньо заповнений усіма основними браузерами та видає SSL-сертифікати на загальнодоступні IP-адреси: подивіться на GlobalSign . Вони зачитують інформацію про RIPE, щоб підтвердити ваш запит на сертифікат, тому, можливо, вам слід спочатку перевірити, чи запис RIPE видано на правильне ім’я.

Що стосується зворотного зв'язку, цей запис отримав:

Так , бажано придбати доменне ім’я та видати SSL-сертифікат на цьому CN. Це також дешевше, ніж варіант GlobalSign вище.

Але є випадки, коли сертифікати SSL з публічним IP в якості КН є корисними. Багато Інтернет-провайдери та уряди блокують небажані сайти на основі інфраструктури DNS. Якщо ви пропонуєте якийсь сайт, який, ймовірно, буде заблокований, наприклад, з політичних причин, це хороший варіант, щоб цей сайт був доступний через його публічну IP-адресу. У той же час, ви будете хотіти , щоб зашифрувати трафік для тих користувачів , і ви не хочете , щоб користувачі не-технологій , щоб пройти через клопоти клацання через виключення безпеки попередження браузера (так як CN сертифіката не відповідає фактично введений). Змусити їх встановити свій власний Root CA - це ще більше клопоту і не реально.


Зокрема, "спеціалізований сервер, розміщений з веб-хостинговою компанією" навряд чи матиме власний RIP-запис, а навпаки, навколишня мережа матиме запис RIPE (про компанію-хостинг)
Хаген фон Ейтцен

1

Ідіть і купуйте доменне ім’я. Вони дешеві, не дешевші від цього. Вам потрібен лише один. Можливо, навіть просто налаштувати bugtracker.yourcompany.com.

Потім для кожного помилки налаштуйте піддомен для цього імені. Отримайте сертифікат SSL для кожного з цих субдоменів. Оскільки вам здається, що це особливо не проти витрат, компанія, з якою ви хочете вести бізнес, називається StartSSL.

http://www.startssl.com/

Причина, яку ви хочете використовувати, полягає в тому, що (окрім довіри основних браузерів) їх сертифікати не коштують руки та ноги. Самий базовий сорт cert - це справді, чесно кажучи, без ганьби. Вони перевіряють вашу особу, а потім дозволяють оформити стільки, скільки вам потрібно. Якщо ви хочете більш фантастичних сертифікатів (які зазвичай коштують кілька сотень баксів), ви шукаєте близько 50 доларів протягом двох років, щоб підтримувати SSL для декількох доменів в одному IP.

Вони дуже дешеві за те, що ви отримуєте. Вони видають справжні серти, яким довіряють браузери ваших клієнтів, а не 90-денні випробування, як це роблять інші місця.


1
Я також не думаю, що я це розумію. Правильно виданий сертифікат SSL - це ідентифікаційний маркер сам по собі; сертифікаційний орган не надає жодної послуги після видачі. Мій сайт захищений сертифікатом RapidSSL, але якщо завтра вони занепали, мій сертифікат був би таким же ефективним, як і зараз.
MadHatter

2
Скільки ваших клієнтів збираються пройти повну перевірку провайдера SSL? Їм справді доведеться копатись, перш ніж зрозуміють, що вони мають справу з компанією, яка вела бізнес із ізраїльською компанією. Як сказала Мадхеттер, політична нестабільність має дуже мало спільного з тим, чи дійсний ваш сертифікат чи ні. Після його видачі діє до моменту його закінчення, повна зупинка. Але це здорово, якщо ви хочете заплатити іншим смішникам гроші іншого реєстратора за те, що технічно не складно. Сертифікати SSL - одна з найсмішніших аферистів.
Пол Макміллан

2
Гей, потрібно лише один клієнт, щоб зняти його. Вибачте, оскільки я не дуже зрозумілий з самого початку. Моя країна не дозволяє своїм людям вести бізнес з Ізраїлем. Це все.
серійний двигун

1
Так, це було б корисніше сказати. Сертифікати SSL без зайвих витрат, але за масштабами ведення бізнесу вартість майже нічого.
Пол Макміллан

2
"Після видачі він діє до моменту його закінчення, повна зупинка". Якщо вона не містить інформацію про відкликання, її відкликають, а клієнт здійснює перевірку скасування. І ЦС, що перебуває під цим, ймовірно, буде змушений відкликати всі свої сертифікати. Justinin '
Райан Болгер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.