It sounds like you're trying to use bar as a jump host to connect to jump, and use jump as a jump host to connect to foo. In other words, trying to connect to bar like this:
local --> foo --> jump --> bar
Your ssh config should look like this:
Browsing the same problem I had, I found the solution.
Simply, you have to uncomment few additional lines in file "httpd.conf":
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
In my case, It worked.
A lot of companies do not use end to end encryption, yet they have configurations similar to yours. BShea is correct, it will work, and a proxy is the route you want to go. Here is an example.
Tomcat has connectors, with the HTTP connector turned on by default.
Apache has the same concept, allowing for HTTP and HTTPS traffic, with HTTP enabled by default.
Ok, I do apologize. I forgot to add the proxy_protocol=true to the command that creates the proxy:
lxc config device add mycontainer myport25 proxy listen=tcp:x.x.x.x:25 proxy_protocol=true connect=tcp:127.0.0.1:25
Now the exim logs show the sender server IP:
2020-10-07 16:45:21 1kQAgz-0000Hk-4g <= email@example.com H=host.remote.domain.com [...
Proxy is a relay that accepts a connection and makes its own connection on your behalf. Firewall is a rules based network security system.
Sophisticated firewalls likely include security aware proxies. Security oriented in that they understand application details like protocols, encryption such as TLS, and hopefully user identity. And via proxy, as where ...
DoH definitely unable to work via proxy, because HTTP(S) proxy protocol is not designed for name resolving on the client side.
A "proxy" is a message-forwarding agent for HTTP (RFC 7230). It just forwards request and responce HTTP messages between user-agent and server.
RFC7230 - Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and