Рейтинг:0

Порт 433 веб-сервера Apache и порт 8080 Tomcat, перенаправление не работает

флаг in

Мой веб-сервер Apache работает на порту 433 с протоколом https.Я хочу запустить Tomcat на порту 8080, потому что нет необходимости в дополнительном шифровании, Tomcat находится на той же машине, поэтому мне не нужен порт 8433. Но когда я перенаправляю трафик с 433 на 8080 через iptables но я получил сообщение об ошибке: Этот сайт не может обеспечить безопасное соединение

ERR_SSL_PROTOCOL_ERROR

Какие конфигурации мне нужны в tomcat server.xml и apache.conf, чтобы это работало?

    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               URIEncoding="UTF-8"
               redirectPort="8443" />
    
    <!-- A "Connector" using the shared thread pool-->
    
    <Connector executor="tomcatThreadPool"
               port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
<!-- I've tried this before when I thought I need an SSL for Tomcat. I think it's irrelevant now -->
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
               maxThreads="150" SSLEnabled="true" >
        <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
        <SSLHostConfig>
            <Certificate certificateKeyFile="conf/localhost-rsa-key.pem"
                         certificateFile="conf/localhost-rsa-cert.pem"
                         certificateChainFile="conf/localhost-rsa-chain.pem"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>

в httpd.conf

<Виртуальный хост *:80>
     Администратор сервера root@localhost
     DocumentRoot "/var/www/html"
     DirectoryIndex index.html
     имя_сервера mydomain.zone
     ErrorLog "/var/log/httpd/mydomain.zone.error_log"
     CustomLog "/var/log/httpd/mydomain.zone.access_log" общий
RewriteEngine включен
RewriteCond %{SERVER_NAME} =mydomain.zone
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</ виртуальный хост>
Включить /etc/httpd/conf/httpd-le-ssl.conf

РЕДАКТИРОВАТЬ: Я попытался, как было предложено, с ProxyPass "/" "http://mydomain.zone:8080/" и ProxyPassReverse "/" "http://mydomain.zone:8080/". Все та же проблема.

Я задавался вопросом, есть ли iptables правило, которое я реализовал ранее, но это не так. Это текущие активные правила iptables:

-P ВВОД ПРИНЯТЬ
-P ВПЕРЕД ПРИНЯТЬ
-P ВЫВОД ПРИНЯТЬ
-N FORWARD_IN_ZONES
-N FORWARD_IN_ZONES_SOURCE
-N FORWARD_OUT_ZONES
-N FORWARD_OUT_ZONES_SOURCE
-N FORWARD_direct
-N FWDI_доверенный
-N FWDI_trusted_allow
-N FWDI_trusted_deny
-N FWDI_trusted_log
-N FWDO_trusted
-N FWDO_trusted_allow
-N FWDO_trusted_deny
-N FWDO_trusted_log
-N ВХОДНЫЕ_ЗОНЫ
-N INPUT_ZONES_SOURCE
-N ВХОД_прямой
-N IN_доверенный
-N IN_trusted_allow
-N IN_trusted_deny
-N IN_trusted_log
-N ВЫХОД_прямой
-A ВВОД -m conntrack --ctstate СВЯЗАННО, УСТАНОВЛЕНО -j ПРИНЯТЬ
-A ВВОД -i lo -j ПРИНЯТЬ
-A ВХОД -j ВХОД_прямой
-A ВХОД -j INPUT_ZONES_SOURCE
-A ВХОД -j ВХОД_ЗОНЫ
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -j REJECT --reject-with-icmp-host-prohibited
-A FORWARD -m conntrack --ctstate СВЯЗАННО, УСТАНОВЛЕНО -j ПРИНЯТЬ
-A ВПЕРЕД -i lo -j ПРИНЯТЬ
-A FORWARD -j FORWARD_direct
-A FORWARD -j FORWARD_IN_ZONES_SOURCE
-A FORWARD -j FORWARD_IN_ZONES
-A FORWARD -j FORWARD_OUT_ZONES_SOURCE
-A FORWARD -j FORWARD_OUT_ZONES
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A FORWARD -j REJECT --reject-with-icmp-host-prohibited
-A ВЫВОД -o lo -j ПРИНЯТЬ
-A ВЫХОД -j ВЫХОД_прямой
-A FORWARD_IN_ZONES -i eth0 -g FWDI_trusted
-A FORWARD_IN_ZONES -g FWDI_trusted
-A FORWARD_OUT_ZONES -o eth0 -g FWDO_trusted
-A FORWARD_OUT_ZONES -g FWDO_trusted
-A FWDI_trusted -j FWDI_trusted_log
-A FWDI_trusted -j FWDI_trusted_deny
-A FWDI_trusted -j FWDI_trusted_allow
-A FWDI_trusted -j ПРИНЯТЬ
-A FWDO_trusted -j FWDO_trusted_log
-A FWDO_trusted -j FWDO_trusted_deny
-A FWDO_trusted -j FWDO_trusted_allow
-A FWDO_trusted -j ПРИНЯТЬ
-A INPUT_ZONES -i eth0 -g IN_trusted
-A INPUT_ZONES -g IN_trusted
-A IN_trusted -j IN_trusted_log
-A IN_trusted -j IN_trusted_deny
-A IN_trusted -j IN_trusted_allow
-A IN_trusted -j ПРИНЯТЬ
Рейтинг:1
флаг ph

Используйте прокси-сервер вместо использования iptables для переадресации портов

LosmiNCL avatar
флаг in
Я удалил свое правило iptables и вставил: `ProxyPass / http://www.mydomain.zone:8080 ProxyPassReverse / http://www.mydomain.zone:8080` Теперь у меня ошибка: Сервис недоступен Сервер временно не может обслужить ваш запрос из-за простоя на техническое обслуживание или проблем с пропускной способностью. Пожалуйста, повторите попытку позже. (Я проверил, Tomcat работает, и Apache перезапущен). Можете ли вы дать мне более подробный ответ?
Damn devil avatar
флаг ph
ProxyPass "/" "http://www.example.com/" ProxyPassReverse "/" "http://www.example.com/"
Рейтинг:0
флаг ph

ProxyPass "/" "http://www.example.com/" ProxyPassReverse "/" "http://www.example.com/"

измените свой прокси-пасс, как указано выше

LosmiNCL avatar
флаг in
Я написал это в conf/httpd.conf. Это не работает. Может быть, я должен написать это в conf/httpd-le-ssl.conf или в conf.d/ssl.conf?
Damn devil avatar
флаг ph
**ProxyPass "/" "https://www.example.com/" ProxyPassReverse "/" "https://www.example.com/"** используйте это, так как это безопасный порт подключения, к которому вы пытаетесь получить доступ . Т.е. используйте https вместо http

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

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