2

Я пытаюсь настроить stunnel для доступа к веб-службе HTTPS из клиента, использующего только HTTP. Должен быть кусок пирога, верно? У меня есть следующий stunnel.conf:

client=yes
verify=0
[test-https]
accept  = 1337
connect = www.google.com:443

Но когда я указываю своему браузеру http://localhost:1337 я получаю страницу с ошибкой 404 от Google:

404. That’s an error. The requested URL / was not found on this server

Я пробовал много других сайтов и всегда получаю какую-то ошибку. Например, WordPress сайты сказали бы:

Не удалось найти ни /etc/wordpress/config-localhost.php, ни /etc/wordpress/config-localhost.php. Убедитесь, что один из них существует, доступен для чтения веб-сервером и содержит правильный пароль / имя пользователя.

Кажется, я делаю что-то в корне неправильно, но каждый пример в Интернете показывает ту же конфигурацию, что и я. Может кто-нибудь, пожалуйста, помогите мне?

Я использую stunnel 5.02-1 (x86_64) в Arch Linux. Я положил свой журнал на Stunnel на Pasbin.

2 ответа2

3

Проблема с частью localhost . Большинство серверов не отвечает, если вы используете localhost качестве имени.

Как решить эту проблему: во- первых, сделать Nslookup на сервере вы хотите достичь , и выбрать один из множественных IP, то есть 12.34.56.78 (не истинный Google IP, только что сделал это) Настройте stunnel.conf , чтобы указать на что IP:

connect = 12.34.56.78:443

Установите в /etc/hosts вашего клиента (я предполагаю, что это тот же компьютер, что и stunnel, если нет, используйте соответствующий IP-адрес) этой новой строки:

127.0.0.1 www.google.com

Используйте URL http://www.google.com:1337

ПРИМЕЧАНИЕ: если вы все еще получаете ошибки, попробуйте изменить accept с 1337 до 443.

0

Две проблемы:

  1. Создайте свой собственный самозаверяющий сертификат с помощью этих команд в каталоге /etc /stunnel:

    openssl genrsa 1024> stunnel.key openssl req -new -key stunnel.key -x509 -days 1000 -out stunnel.crt cat stunnel.crt stunnel.key> stunnel.pem

и убедитесь, что две строки в файле /etc/stunnel/stunnel.conf

 ;cert = /etc/stunnel/mail.pem
 ;key = /etc/stunnel/mail.pem

изменены следующим образом:

 cert = /etc/stunnel/stunnel.pem
 key = /etc/stunnel/stunnel.pem
  1. Вызов в вашем браузере, учитывая вашу метку [test-https], не должен быть http://localhost:1337 но вместо этого он должен быть test-https://localhost:1337

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .