Назад | Перейти на главную страницу

Использование Apache в качестве Stunnel

Я использовал stunnel, чтобы превратить http-порт в https. Однако он не поддерживает сшивание OCSP, поэтому я решил вместо этого использовать обратный прокси Apache. Служба, которую я хочу сделать https, находится на 7231, поэтому я создал виртуальный хост для прослушивания порта 7232 и перенаправления на него всего трафика https. Однако он не работает, потому что по какой-то причине он просто берет контент из 443. Он должен получать контент с 7231 и отображаться через https на 7232.

Что я делаю не так?

Listen 7232
<IfModule mod_ssl.c>
SSLStaplingCache shmcb:/var/run/apache2/stapling_cache(128000)
<VirtualHost *:7232>
        ServerAdmin webmaster@localhost

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        SSLEngine On
        SSLProxyEngine On

        ProxyRequests Off
        <Proxy *>
          Order deny,allow
          Allow from all
        </Proxy>


ProxyPass / http://mywebsite.org:7231/
ProxyPassReverse / http://mywebsite.org:7231/

ServerName mywebsite.org:7232
Include /etc/letsencrypt/options-ssl-apache.conf
SSLUseStapling on
SSLCertificateFile /etc/letsencrypt/live/mywebsite.org/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/mywebsite.org/privkey.pem
</VirtualHost>
</IfModule>

Оказывается, это была моя ошибка в VirtualHost для 443.

Вот как это выглядело:

<VirtualHost *:443 *:7232>
        # Configurations go here! 
</VirtualHost>

Из-за этого VirtualHost он заменял отдельный для 7232. Так что просто удалите 7232 из этого, чтобы немедленно решить проблему.

Урок выучен: Всегда проверяйте другие VirtualHosts, чтобы убедиться, что для того же порта ничего не настроено.