diff --git a/Server/Plugins/NetworkTest/Info.lua b/Server/Plugins/NetworkTest/Info.lua
index d8c3095fe..2788d3674 100644
--- a/Server/Plugins/NetworkTest/Info.lua
+++ b/Server/Plugins/NetworkTest/Info.lua
@@ -90,6 +90,23 @@ g_PluginInfo =
 					},
 				},  -- lookup
 				
+				sclient =
+				{
+					HelpString = "Connects, as an SSL client, to a specified webpage (github.com by default) and downloads its front page using HTTPS",
+					Handler = HandleConsoleNetSClient,
+					ParameterCombinations =
+					{
+						{
+							Params = "",
+							Help = "Connects, as an SSL client, to github.com and downloads its front page using HTTPS",
+						},
+						{
+							Params = "host [port]",
+							Help = "Connects, as an SSL client, to the specified host and downloads its front page using HTTPS",
+						},
+					},  -- ParameterCombinations
+				},  -- sclient
+
 				udp =
 				{
 					Subcommands =
diff --git a/Server/Plugins/NetworkTest/NetworkTest.lua b/Server/Plugins/NetworkTest/NetworkTest.lua
index 22056d4e9..d6849ead6 100644
--- a/Server/Plugins/NetworkTest/NetworkTest.lua
+++ b/Server/Plugins/NetworkTest/NetworkTest.lua
@@ -371,6 +371,49 @@ end
 
 
 
+function HandleConsoleNetSClient(a_Split)
+	-- Get the address to connect to:
+	local Host = a_Split[3] or "github.com"
+	local Port = a_Split[4] or 443
+
+	-- Create the callbacks "personalised" for the address:
+	local Callbacks =
+	{
+		OnConnected = function (a_Link)
+			LOG("Connected to " .. Host .. ":" .. Port .. ".")
+			LOG("Connection stats: Remote address: " .. a_Link:GetRemoteIP() .. ":" .. a_Link:GetRemotePort() .. ", Local address: " .. a_Link:GetLocalIP() .. ":" .. a_Link:GetLocalPort())
+			LOG("Sending HTTP request for front page.")
+			a_Link:StartTLSClient()
+			a_Link:Send("GET / HTTP/1.0\r\nHost: " .. Host .. "\r\n\r\n")
+		end,
+
+		OnError = function (a_Link, a_ErrorCode, a_ErrorMsg)
+			LOG("Connection to " .. Host .. ":" .. Port .. " failed: " .. a_ErrorCode .. " (" .. a_ErrorMsg .. ")")
+		end,
+
+		OnReceivedData = function (a_Link, a_Data)
+			LOG("Received data from " .. Host .. ":" .. Port .. ":\r\n" .. a_Data)
+		end,
+
+		OnRemoteClosed = function (a_Link)
+			LOG("Connection to " .. Host .. ":" .. Port .. " was closed by the remote peer.")
+		end
+	}
+
+	-- Queue a connect request:
+	local res = cNetwork:Connect(Host, Port, Callbacks)
+	if not(res) then
+		LOGWARNING("cNetwork:Connect call failed immediately")
+		return true
+	end
+
+	return true, "SSL Client connection request queued."
+end
+
+
+
+
+
 function HandleConsoleNetUdpClose(a_Split)
 	-- Get the port to close:
 	local Port = tonumber(a_Split[4] or 1024)