Tomcat redirectPort paaiškintas: HTTPS saugumo apribojimai ir jungtys
Paskelbimo data:
Atnaujinta:
Techniniai straipsniai > Tomcat redirectPort paaiškintas: HTTPS saugumo apribojimai ir jungtys
2026 m. būsena ir saugus naudojimas
Išvada: redirectPort nurodo ne TLS „Tomcat“ jungčiai, kur peradresuoti užklausą, kai dėl įdiegtos žiniatinklio programos saugos apribojimo reikia perduoti konfidencialų turinį. Tai nesukuria TLS jungties, nepriverčia HTTPS kiekvienai užklausai ir nepakeičia krašto tarpinio serverio peradresavimo politikos.
Ką išmoksite
- Kaip
<transport-guarantee>CONFIDENTIAL</transport-guarantee>suaktyvina konteinerio valdomą peradresavimą. - Kodėl tikslinis prievadas turi atitikti veikiančią HTTPS jungtį arba tinkamai suprojektuotą tarpinio serverio topologiją.
- Kuo tiesioginis Tomcat TLS skiriasi nuo TLS nutraukimo Apache HTTP serveryje ar kitame tarpiniame serveryje.
Kam tai skirta: „Java“ žiniatinklio administratoriai peržiūri „Tomcat“ jungties ir programos saugos apribojimų nustatymus.
2026 m. kontekstas: toliau pateiktas „Tomcat 9“ pavyzdys išlieka konceptualus, tačiau jungties atributai ir tarpinio serverio tvarkymas turi atitikti palaikomą „Tomcat“ šeimą. Sąmoningai sukonfigūruodami patikimas tarpinio serverio antraštes, išvengsite peradresavimo kilpų ir neteisingų schemų.
Saugos pastaba: pradiniame straipsnyje pateiktos komandos ir konfigūracijos pavyzdžiai nebuvo pakartotinai vykdomi dabartinėje gamybos aplinkoje. Prieš taikydami, patikrinkite palaikomas versijas, atsargines kopijas, prieigos valdiklius ir atšaukimo veiksmus atskiroje bandymo aplinkoje.
Pagrindiniai oficialūs šaltiniai
Apžvalga.
Kai pažvelgiau į "Tomcat" server.xml konfigūracijoje esantį prievado nustatymą, ten buvo nustatymas, vadinamas "redirectPort", bet negalėjau išsiaiškinti, koks tai buvo nustatymas, kai jį suvedžiau į "Google", todėl pažvelgiau į jį.
Šie nustatymai.
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Turinys
1. Kas yra redirectPort?
Pasirodo, tai, atrodo, yra nustatymas, kuris nukreipia jus, kai prieinate prie puslapio, kuriame nurodyta, kad reikalingas SSL.
Jei server.xml konfigūracijos reikšmės buvo
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Jei prisijungiama prie URL adreso "http://hoge:8080/hoge.html", naudotojas nukreipiamas į URL adresą "https://hoge:8443/hoge.html".
Reikalavimas naudoti SSL apibrėžiamas faile web.xml: elemento <transport-guarantee> reikšmė turi būti CONFIDENTIAL. Į failą įtraukite toliau pateiktą konfigūraciją.
~sutrumpinimas~
<security-constraint>
<web-resource-collection>
<web-resource-name>twx-portal</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
</web-app>
Kadangi url šablonas yra "/", pagal šį nustatymą visi URL adresai yra SSL reikalaujami ir nukreipiami. Jei nenurodyta, kad SSL yra privalomas, tai yra konfigūracijos reikšmė, kuri nenaudojama. Nors "redirectPort="8443" yra nustatytas "Tomcat" numatytojoje reikšmėje, atrodo, kad pats 8443 prievado aktyvavimo nustatymas negalioja su "Tomcat" numatytąja reikšme, todėl gali būti daug žmonių, kuriems "redirectPort="8443" yra nustatytas nežinant, bet Manau, kad yra daug žmonių, kuriems nukreipimo paskirties vietos 8443 prievadas nėra įjungtas.
1-1. pagrindas
Norėtume apibūdinti, kuo grindžiamos šios išvados. "Tomcat" puslapyje teigiama.
http://tomcat.apache.org/tomcat-9.0-doc/ssl-howto.html
“If you change the port number here, you should also change the value specified for the redirectPort attribute on the non-SSL connector. This allows Tomcat to automatically redirect users who attempt to access a page with a security constraint specifying that SSL is required, as required by the Servlet Specification.”
Esmė yra "prieiga prie puslapio su saugumo apribojimais, nurodančiais, kad reikalingas SSL, kaip reikalaujama servletų specifikacijoje". Tai yra web.xml nustatymas, kurį ką tik sukonfigūravote. Esmė ta, kad SSL reikalavimas yra servletų specifikacija, ir atrodo, kad jis nukreipiamas, kai yra taikomas.
2. santrauka
Šiame skyriuje aprašomi "Tomcat" server.xml nustatymai redirectPort. Į tai atkreipkite dėmesį nustatydami redirectPort.
Dėkojame, kad žiūrėjote iki pabaigos.
Techniniai straipsniai
Peržiūrėkite visus techninius straipsnius.
Profilis
Peržiūrėkite autoriaus profilį.
Kontaktai