Рейтинг:0

Сертификат TLS для SNIproxy или обратный прокси-сервер с виртуальным хостом с сертификатом TLS

флаг ro

В настоящее время я использую SNIProxy (это самый простой способ настройки виртуальных хостов, который я когда-либо видел). Однако я могу установить SSL-сертификаты отдельно для каждого виртуального хоста с конфигурацией каждого сервиса (каждый на отдельном порту), что может быстро стать проблемой, а не для сервера в целом, поэтому мне нужен только сертификат для обратный прокси. Итак, есть ли способ сделать это? В качестве альтернативы, есть ли обратный прокси, который поддерживает виртуальные хосты (желательно с подстановочными знаками, чтобы тестовое задание.* пойду к test.com, test.net, test.orgи т. д.) и установить сертификат TLS только для этого прокси (я до сих пор не могу понять, как это сделать в NGINX или Caddy; NGINX поддерживает только хосты для каждой папки, а Caddy не поддерживает пользовательские сертификаты, хотя я могу быть неправильный).

Рейтинг:0
флаг ro

В итоге я поместил виртуальные хосты в SNIProxy на localhost http и добавил к нему NGINX в качестве HTTPS-интерфейса, чтобы при получении запроса он перенаправлял его на локальный хост вместе с заголовком хоста.

Для потомков вот мои конфиги:

Для СНиПрокси:

пользователь никто
pid-файл /run/sniproxy/sniproxy.pid

журнал ошибок {
    демон системного журнала
    уведомление о приоритете
}

слушать 127.0.0.1:8000 {
    прото http
}

Таблица {
    гугл.* 127.0.0.1:2000
    
    адгард.* 127.0.0.1:2001

    битварден.* 127.0.0.1:2002
    
    теа.* 127.0.0.1:2003

    файлы.* 127.0.0.1:2004

    фотопеа.* 127.0.0.1:2005

    десмос.* 127.0.0.1:2006

    YouTube.* 127.0.0.1:2007

}

и nginx.conf

рабочие_процессы 1;

#error_log журналы/error.log;
#error_log журналы/уведомление об ошибках.log;
#error_log журналы/информация error.log;

идентификатор /dev/ноль;

демон выключен;

События {
    worker_connections 1024;
}


http {
    proxy_temp_path ./tmp;
    журнал_доступа /dev/null;
    ssl_certificate ./cert.pem;
    ssl_certificate_key ./key.pem;
    proxy_set_header Хост $host;
    client_body_temp_path ./tmp;

    сервер {
            слушать 127.0.0.1:443 ssl;
    
            имя_сервера *.test;
    
            место расположения / {
                прокси_пароль http://127.0.0.1:8000;
            }
        }
    
        сервер {
            слушать 192.168.1.67:443 ssl;
            
            имя_сервера *.tt;
    
            место расположения / {
                прокси_пароль http://127.0.0.1:8000;
            }
        }

        сервер {
                    слушать 127.0.0.1:80;
                    
                    имя_сервера *.test;

                    вернуть 302 https://$host$request_uri;
                }
            
                сервер {
                    слушать 192.168.1.67:80;
                    
                    имя_сервера *.tt;

                    вернуть 302 https://$host$request_uri;
                }
}

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.