SOCKS5-välityspalvelimen määrittäminen Qpid JMS:lle Netty-käsittelijöillä
Liitä SOCKS5 ProxyHandler -tarjoaja Qpid JMS -yhteyden laajennuksilla ja säilytä AMQPS-välittäjän URI.
Qpid JMS:n Netty-siirto voi hankkia uuden välityspalvelinkäsittelijän yhteyslaajennuksen kautta:
Supplier<ProxyHandler> handlers = () ->
new Socks5ProxyHandler(
new InetSocketAddress("proxy.example", 1080));
JmsConnectionFactory factory = new JmsConnectionFactory(
"amqps://broker.example:5671");
factory.setExtension(
JmsConnectionExtensions.PROXY_HANDLER_SUPPLIER.toString(),
(connection, remote) -> handlers);Supplier ja InetSocketAddress ovat JDK-tyyppejä. Välityspalvelinkäsittelijät kuuluvat Nettylle ja tehdas sekä laajennuksen enum org.apache.qpid.jms:lle.
Julkisesti saatavilla välittäjälle sallitulla julkisella välityspalvelinreitillä SOCKS5-välityspalvelinluettelo tarjoaa isäntä- ja porttiehdokkaita; varmista, että valittu solmu sallii välittäjän todellisen isännän ja portin. Laajennus palauttaa tarjoajan; jokainen tarjoajakutsu luo uuden käsittelijän. Yhden tallennetun muuttuvan käsittelijän palauttaminen useille yhteyksille rikkoisi tämän omistusjärjestelyn.
Käytä SOCKS5-todennuksessa käsittelijän ylikuormitusta, joka hyväksyy käyttäjänimen ja salasanan. Pidä välittäjän tunnistetiedot JMS-yhteydessä ja säilytä todellinen AMQPS-välittäjän URI ja TLS-nimi.
Laajennus tukee Nettyn HTTP-, SOCKS4- ja SOCKS5-välityspalvelinkäsittelijöitä. HTTP CONNECTissa välittäjän on sallittava välittäjän kohdeportti.