Email or username:

Password:

Forgot your password?
kantor

@rf

Что вы делаете с https сертификатами селфхостед сервисов? Объясню ситуацию:

У меня есть ряд веб-сервисов, которые я поднял на своей машине и пожелал бы не светить внешнему миру. Как следствие, у меня есть впн, через которых я могу до них достучаться. И если прописать в hosts файл локальный адрес вместо публичного, то всё окей, но проблема в том, что на локальный адрес не получить letsencrypt или zerossl сертификат. Да, я знаю про самоподписанные сертификаты, но закидывать их на каждую свою новую машину немного проблемно, а без https браузеры и приложения ругаются и мешают жить. Что-то мне говорит, что должно быть более элегантное решение проблемы, так что если кто сталкивался — я вас слушаю.

11 comments
Moana Rijndael 🍍🍕

@kantor если доступ только из VPN, то можно оставить их работать по HTTP
Надёжный зашифрованный канал уже обеспечен уровнем ниже

kantor

@mo Я бы и оставил, но ряд приложений и сервисов ругаются если нет ssl. Браузеры точно ругаются

OfShad0ws

@kantor
на VPS ставлю nginx и настраиваю там сертификат и прокси
базовый конфиг, в интернете много полноценных примеров:
docs.nginx.com/nginx/admin-gui

kantor

@OfShad0ws это-то я знаю, пост перечитайте, там вопрос не в том, как поднять реверс-прокси с ssl, а в том, как получить сертификат для того, что в широкий интернет выходить не должно

OfShad0ws

@kantor
так это, домен купить / взять бесплатный и к нему сертификат выпустить.
платно вроде можно взять сертификат на IP, но домен дешевле будет.

> в широкий интернет выходить не должно

тут проблемы не будет, firewall настройте - VPN для всех (сейчас же так?), а nginx только по VPN.

kantor

@OfShad0ws так, вы всё ещё не понимаете ситуацию. ВПН это не в бытовом значении «ой, мне надо обойти блокировку инстаграмчика», а в исходном значении — виртуальная приватная сеть. То есть у сервера локальный адрес, у клиента локальный адрес, всё в локалке и крутится, а впн нужен, чтобы к этой приватной локалке подключаться

OfShad0ws

@kantor
и что тут меняется?
у вас есть виртуальная *частная* сеть (если уж говорить об исходных значениях), получите белый IP и купите домен.
дальше всё как я написал.

если это решене не подходит, другого у меня нет

Александр
@rf @kantor Можно поднять свой CA внутри и выписывать себе сертификаты :)

Но проще либо не пользоваться TLS вообще, либо использовать самоподписанный.
Александр
@rf @kantor Самоподписанный, кстати, для простоты можно использовать один и тот же.

Ну и "браузеры ругаются" - а не хрен бы с ними? :) Предупреждение для конкретных узлов можно выключить.
Александр
@rf @kantor Впрочем, есть ещё костыльные варианты, если хочется странного.

1. Регаешь домен в интернете. Ставишь там веб-сервер и выписываешь серт на него.

2. Копируешь серт на внутренние сервисы.

3. В настройках VPN обеспечиваешь разрешение этих адресов на внутренние.

Такой подход часто используется в организациях.
@rf @kantor Впрочем, есть ещё костыльные варианты, если хочется странного.

1. Регаешь домен в интернете. Ставишь там веб-сервер и выписываешь серт на него.
SEVA77
@rf @kantorДа, я знаю про самоподписанные сертификаты, но закидывать их на каждую свою новую машину немного проблемноПо моему также проблемно, как и с letsencrypt и пр. Сгенерировать новый сертификат и указать его в конфигах дело 2-5 минут, а предупреждения браузеров, приложений можно просто игнорить, мол да, согласен, да перейти.

У самого такая же хрень, доступ только через впн, но один сервис без https не работает.
@rf @kantorДа, я знаю про самоподписанные сертификаты, но закидывать их на каждую свою новую машину немного проблемноПо моему также проблемно, как и с letsencrypt и пр. Сгенерировать новый сертификат и указать его в конфигах дело 2-5 минут, а предупреждения браузеров, приложений можно просто игнорить, мол да, согласен, да перейти.
Go Up