I have a Delphi application which connects to a MySQL published database on Internet with address like mysql01.example.com:3306.
However, my client computer is behind a proxy and I just can connect if I pass by the proxy. I use the ZeosLib to connect and it doesn't have proxy authentication.
Is it possible to forward connection to the proxy using some kind of proxy forward program? Is there another possibility to solve this problem?
Thanks a lot.
Synapse framework has a socks proxy implementation.
Or you can make it yourself (quite easy, since socks protocol is really simple, even version 5). See:
SOCKS 4 SPECS
SOCKS 5 RFC
SOCKS 5 user/pass auth
SOCKS 5 GSS-API auth
Synapse blcksock code
Related
I have connected to other websites but have been able to connect to AWS I have seen others had this issue before me but none of the threads I found were answered. I am hoping someone has suggestion I can post the code if necessary. Is there a special way to connect to the AWS website? The goal of the project is to send data to a web page which was created using Amazons AWS services. We are using an Access point and are using a Json format.
To establish a connection with AWS you must need a secured connection (https TLS 1.2) but the SIM900 firmware only provide TLS 1.0 (see the doc here : https://simcom.ee/documents/SIM900/SIM900_HTTPS%20AT%20Command%20Set_V1%2000.pdf)
I think I see somebody with the same configuration than yours (Arduino + sim900) who used a lib to connect to AWS.
Or you can establish a TCP connection with AWS and then use a lib to handshake and send data with TLS 1.2 protocol. More informations about TCP and TLS : https://medium.facilelogin.com/nuts-and-bolts-of-transport-layer-security-tls-2c5af298c4be
I have ELB balancing TCP traffic to my Node.js processes. When ELB is balancing TCP connections it does not send the X-Forwarded-Proto header like it does with http connections. But I still need to know if the connection is using SSL/TLS so I can respond with a redirect from my Node process if it is not a secure connection.
Is there a way to make ELB send this header when balancing TCP connections?
Thanks
You can configure proxy protocol for your ELB to get connection related information. In case of HTTP the ELB adds headers telling about the client information, in case of TCP however, AWS ELB simply passes through the headers from the client without any modifications, this causes the back end server to lose client connection information as it is happening in your case.
To enable proxy control for your ELB, you will have to do it via API, there is currently no way to do it via UI.
http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/enable-proxy-protocol.html
The above doc is a step-by-step guide on how to do this, I don't want to paste the same here as that information might change over time.
EDIT:
As it turns out, Amazon implements Version 1 of the proxy protocol only which does not give away SSL information. It does however give port numbers which was requested by the client and a process can be developed stating something like if the request was over port 443 then it was SSL. I don't like it as it is indirect, requires hardocoding and coordination between devops and developers... seems to be the only way for now...lets hope AWS ELB starts supporting Version 2 of the proxy protocol which does have SSL info soon.
I am using Apache HttpClient 4.2.3 library for for accessing resources via HTTP/HTTPS. Requests are sent through SOCKs proxy which requires 'basic authentication'.
I looked at the API doc and found that there is class ProxyAuthenticationStrategy, which looks like serves the purpose.
But I am not able to figure it out how to use it. Specifically I am not able to find how to provide proxy credentials to ProxyAuthenticationStrategy.
I looked at the documentation & searched over net but could not find appropriate help over this topic.
Can someone please guide me on how to configure basic authentication for SOCKs Proxy?
Note: I am successfully able to communicate using Apache HttpClient 4.2.3 library through SOCKs proxy without authentication.
Thanks,
Sachin
SOCKS is a TCP/IP level proxy protocol. It has nothing to do with HTTP and is out of scope as far HttpClient is concerned. HttpClient can be configured to connect all network sockets it creates via a SOCKS proxy but it will make no attempt to provide any user credentials to the SOCKS proxy.
Which is best tcp socket server to testing html5websocket? I developing a html5socket based client that will interact with tcp. So I want first a testing server. I am good in PHP but not in sockets programming. So I used PHPwebsocket downloaded from google code. I tried it using its own client and server for testing but it suddenly disconnects and not work as intended so is there any other socket server to test HTML5 websocket client? Which one is better, I can use a python based, or java based tcp server or if in PHP then that can be more convenient. And please tell me what else I need to test HTML5 websocket. I am newbie in sockets. So my concepts are not so clear.
thanks for any advise.
If you want to self host then:
pywebsocket - Python
jwebsocket - Java
jetty with WebSockets - Java
You could connect to the Pusher hosted WebSocket API to see if you can connect. More information on the endpoints and Pusher protocol here:
http://pusher.com/docs/pusher_protocol
You would need to sign up for a free Pusher sandbox account to do this though.
You say you want to "interact with tcp". Do you have specific protocols in mind? If using JMS, XMPP, or AMQP, the Kaazing WebSocket Gateway provides these industry standard APIs and protocols in the browser out-of-the-box. For example, using JMS, you can build pretty complex messaging applications without a single line of server-side code. Everything can run in the client (typically in JavaScript in the browser).
Here are some examples showcasing the power of extending rich business protocols all the way to the browser.
Also, the Kaazing gateway comes with free development license; fully functional server for up to 50 concurrent connections, no functionality or time restrictions.
I was asking myself if Selenium has any possibilities to secure the communication in Selenium Grid for example. As far as I know Selenium communicates via JSON and Selenese commands. But it is not encrypted. Are there any possibilities to encrypt the communication?
Thanks a lot.
Quick hack: make an ssh tunnel.
Forward remote server's port 4444 as a local port using following ssh command:
ssh user#remotesrv -L 4444:127.0.0.1:4444
Now when you connect to your local port 4444, it actually connects to your server's port 4444 on a secure link. Refer to this link for tutorial.
Afterwards, just open the remote web driver as you normally do.
This will now be on a secure link.
You would have to run your own SSL proxy in front of the hub and the nodes. It is presumed that you aren't publicly exposing your grid.