Connection over a proxy Quickfix/n - proxy

I am trying to establish a connection with quickfix/n but I am behind the company firewall. So I need to connect over a proxy to the acceptor.
According to the documentation of quickfix/j it is possible via JAVA, however in the documentation of quickfix/n there is no information about possibility of connecting to the acceptor over a proxy via C#.
Is it possible at all to do that from C# with quickfix/n ?
In JAVA this can be done via configuration file, e.g.:
ProxyType=http
ProxyVersion=1.1
ProxyHost=XXX.XXX.XXX.XXX
ProxyPort=YYYY

QuickFix/n v.1.7.0 does not support proxy at all.
QuickFix/n v.1.10.0 does support proxy (automatic via. WebRequest.GetSystemWebProxy()), however it does not support bypassing of the proxy details (user name and password).
I have created my own fork from v1.7.0 that supports user defined proxy (not WebRequest.GetSystemWebProxy) + credentials. This can be found here: https://github.com/mcjacek/quickfixn
ProxyHost=proxy.intranet.yourproxy.com
ProxyPort=8080
ProxyUserName=UserName
ProxyUserNamePassword=Password
I will soon refactor and create PR to merge it to master.

Related

How to use anything but Google Shell or Web browser when oauth2.googleapis.com is blacklisted (not sure about this)?

I can not connect to Google Services from client application if it is trying to communicate with oauth2.googleapis.com (which is probably blocked in my corporate network - I dont know how to test it for sure).
I tried BigQuery with JDBC driver in Dbeaver. With basic settings.
User-based login does this:
It generates link for OAUTH. I open the browser and login with the right google account. Then I insert generated code into the Dbeaver and I recieve that AUTH has failed.
Service-based login does this:
It does not want me to visit any webpage. It just tells me:
[Simba][BigQueryJDBCDriver](100004) HttpTransport IO error : oauth2.googleapis.com.
I also tried to use ODBC, where PROXY can be filled in. But no luck.
When I take a look into 'Proxy Options' the proxy port is always rewritten by proxy host. Weird.
This is what happens when i click on 'catalog' or 'dataset' drop-down field. I cant do any further steps.
BUT!
When I set my HTTP PROXY in GCLOUD CLI APP then communication works. And I can call BQ from it.
Does it mean that GCLOUD communicates through HTTP Proxy and DBeaver or ODBC does not? Or does it mean that GCLOUD does not need oauth2.googleapis.com but ODBC and JDBC do and it is blacklisted? I am confused.
We need to migrate from our internal environment to GCP. We would love to use various applications. I would ask for whitelisting oauth2.googleapis.com but i am not sure this is the only problem as GCLOUD app works without any flaws.
I am not-experienced with networking so i am more than happy to update / correct this question or add any info (if you need) to help me understand this issue. Thank you
According to your description, your corporate network is using a Proxy to reach out Internet, this is the reason why gcloud is capable to reach out BigQuery service when Proxy settings are configured in your system; through Cloud SDK Proxy settings or HTTP PROXY environment variable.
You require to setup the proxy settings within the JDBC connection string as described in Simba JDBC driver documentation, e.g.:
jdbc:bigquery:DataSetId=MyDataSetId;ProjectId=MyProjectId;OAuthType=1;ProxyHost=MyProxyHost;ProxyPort=MyProxyPort;ProxyUID=MyProxyUsername;ProxyPWD=MyProxyPassword
This connection string will indicate the Proxy settings to Simba JDBC driver.

IMAP proxy with authentication

I'm thinking about a solution for the following scenario. We have an internal email server which can currently be reached from the internet via HTTPS and IMAP(S).
Now I need to integrate an external application which will do two-way-sync of one specific mailbox using IMAP. However, I don't want to just open port 993/TCP so any mailbox can be accessed via IMAP over the internet. Since we don't use IMAP internally, one possibility would be to disable IMAP for all mailboxes that don't need it.
Another solution that would work without opening up a port at all would be to sync messages from the internal mailbox to an external, publicly accessible mailbox using a tool such as imapsync. I'm just afraid this might not be the most reliable solution.
What I'd prefer is to set up an IMAP proxy server (with SSL of course) that would filter connections by user and would only allow white-listed users to actually connect to our internal IMAP server. I didn't find any software that is able to do this out of the box. The thing that comes closest is a scripted solution using nginx and Perl - not maintained and might have security issues. Does anyone know of an IMAP proxy that is able to do filtering or pre-authentication?
Thanks!

Get ESRI maps in Microstrategy Desktop behind a proxy

I´m running Microstrategy Desktop v. 10.5.0 on Windows 10 and I´m trying to build a few maps. I´m behind a HTTP proxy in the format
http_proxy=http://<user>:<password>#proxy.mycorp.com:8080
https_proxy=http://<user>:<password>#proxy.mycorp.com:8080
and every time I try to start a map I get the message
Unable to download the ESRI map. No Internet connection. You can configure an Internet proxy through you computer´s Settings.
The internet works for all other programs with the same proxy and the ESRI CDN links also work directly on the browser behind the proxy. If I connect to a network outside my work connection and disable the proxy the maps work. Is there a way to make Microstrategy Desktop work behind a proxy?
Can you please look into the following link, You have to check with your network admins and request them to unblock some websites and ports.
https://community.microstrategy.com/t5/Clients-Interfaces/Sporadic-issues-with-ESRI-maps-in-Desktop-10-with-proxy-setting/td-p/248444
We faced the same issue, and we requested our network admin team to do the following :
For simpicity, you could open below configuration in the firewall:
Ports 443 , 80 and 6080
*.arcgis.com, *.esri.com and *.arcgisonline.com
Starting with MicroStrategy Analytics Enterprise 9.4.1 Hotfix 6 and in MicroStrategy 10.X, users are able to configure MicroStrategy Web to send HTTP request to ESRI via internal proxy servers. The following provides the details
Un-authenticated proxy :
If the proxy server does not require authentication, user can go to Web Administration security page and configure the following settigs
Go to Web Administration --> Security Page.
Check "Enable HTTP proxy server"
Fill out the Server address and Server port
enter image description here
Authenticated proxy server
It the proxy server requires authentication , User will need to add in the esriconfig.xml file located under plugins\ConnectorForESRIMap\WEB-INF\xml\config (see sample below).
Note: Restart the web server after this change
<ec> <apps clientToken="true"> <key><![CDATA[------]]></key></apps></ec>

Tools for setting up Proxy Chain

We are trying to setup a chain of proxy server in our development system. We wanted to connect to a service through these proxies. The reason why we thought about proxy chaining is that there is no connectivity to the service from all the systems. So we thought we will run a proxy on one system, which will connect to a proxy on another system and so on.
Client ---> A (Proxy)--->B(proxy)---->Final destination
Could you please suggest some tools to achieve this? The service that we have is a SOAP based secured web service.
There is an open source application called ProxyChain for this, here is readme file for this project:
http://proxychains.sourceforge.net/howto.html
You can install as more as proxy chains you want using this open source software, you can configure it per your requirements. Also you can somehow use some port-forwarding. What is the client for SOAP requests? Is it a web or desktop application?

How do I Make Management Studio Express use proxy settings to connect to online SQL service

It doesn't seem like SQL Management Studio Express 2005 considers Internet Options proxy settings defined for the LAN when trying to connect to SQL Server 2005.
Is there a way to make it use the proxy settings?
Short Answer: You don't.
As far as I know, SQL Server uses TCP 1433 for pretty much all the traffic, hence a typical web proxy will not allow you to connect anyway - you need a more sophisticated proxy that supports something like SOCKS for example.
Assuming that you did have an appropriate proxy available, you could try using an app like Proxifier to force SQL Management Studio to use the SOCKS connection.
As a fallback, if your web proxy allows the CONNECT method, you might be able to establish a connection to a server elsewhere to act as a middle-man. You could try using SSH for example to tunnel TCP 1433, and have it route it to your hosted SQL database.
Note: I have never actually tried the above setup, so it may not even work or there may be other issues you encounter. That said, the advice is sound and you should be able to make it work.

Resources