Can curl make a connection to any TCP ports, not just HTTP/HTTPS?
Matthew Harrington
Can curl make a connection to any TCP ports not just HTTP/HTTPS
I need to check for an open port, for example: 11740.
Is this possible?
3 Answers
Yes, it's possible, the syntax is curl [protocol://]<host>[:port], for example:
curl example.com:1234If you're using Bash, you can also use pseudo-device /dev files to open a TCP connection, e.g.:
exec 5<>/dev/tcp/127.0.0.1/1234
echo "send some stuff" >&5
cat <&5 # Receive some stuff.See also: More on Using Bash's Built-in /dev/tcp File (TCP/IP).
1Of course:
curl
curl Port 80 and 443 are just default port numbers.
Since you're using PHP, you will probably need to use the CURLOPT_PORT option, like so:
curl_setopt($ch, CURLOPT_PORT, 11740);
Bear in mind, you may face problems with SELinux: