Простой HTTPS-прокси-сервер HTTP

Я пытаюсь протестировать U2F в Google Appengine.

К сожалению, dev_appserver.py, сервер приложений для разработки для локального тестирования, работает только в HTTP, а стандарт U2F требует, чтобы веб-сервер был подключен через HTTPS.

Есть несколько вариантов прокси-серверов, в том числе stunnel, stud, фунт и ngrok.

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

Идеальным решением была бы программа командной строки типа prog_name -listen localhost:8041 -proxy localhost:8040; другими словами, очень простая настройка командной строки.

Программы stud и pound кажутся излишними.

Вариант stunnel кажется лучшим и наиболее распространенным решением, но было бы лучше, если бы его можно было настроить из командной строки, а не из файла конфигурации.

Нгрок очень крут и, кажется, придерживается правильных направлений. Однако это дает вам случайное имя сервера, что может быть проблемой, поскольку U2F appId должен соответствовать серверу (если постоянство имеет значение), но в остальном это в основном правильная идея.

У меня есть смутное воспоминание о том, что это возможно с openssl из командной строки, но единственная команда, которая кажется подходящей, - это s_server, и она, похоже, предоставляет только информацию об отражении/отладке ssl, а не возможность прокси-запросов как таковых. Моя память должна быть ошибочной.

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

Существуют ли другие разумные варианты разработки с HTTPS-сервером, когда контент обслуживается через HTTP (как в случае с dev_appserver.py AppEngine)?


person Brian M. Hunt    schedule 03.02.2016    source источник
comment
Некоторые другие варианты здесь: news.ycombinator.com/item?id=7585056   -  person Brian M. Hunt    schedule 03.02.2016