summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorWouter Tinus <win.acme.simple@gmail.com>2020-02-20 21:41:00 +0100
committerWouter Tinus <win.acme.simple@gmail.com>2020-02-20 21:41:00 +0100
commit26f70caaea1deb12c9e59b94d280b11532e3b796 (patch)
tree4aab834c3b190bdecb9e2f2510ee9d7c4fef6663 /src
parent39bf891e8b9f61f98d3ec9f6fee546c220c589f2 (diff)
downloadletsencrypt-win-simple-26f70caaea1deb12c9e59b94d280b11532e3b796.zip
letsencrypt-win-simple-26f70caaea1deb12c9e59b94d280b11532e3b796.tar.gz
letsencrypt-win-simple-26f70caaea1deb12c9e59b94d280b11532e3b796.tar.bz2
additional connection check
Diffstat (limited to 'src')
-rw-r--r--src/main.lib/Clients/Acme/AcmeClient.cs22
-rw-r--r--src/main.lib/Services/ProxyService.cs6
2 files changed, 21 insertions, 7 deletions
diff --git a/src/main.lib/Clients/Acme/AcmeClient.cs b/src/main.lib/Clients/Acme/AcmeClient.cs
index c13dda8..4cff3e2 100644
--- a/src/main.lib/Clients/Acme/AcmeClient.cs
+++ b/src/main.lib/Clients/Acme/AcmeClient.cs
@@ -13,6 +13,7 @@ using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Net.Mail;
+using System.Security.Authentication;
using System.Security.Cryptography;
using System.Threading.Tasks;
@@ -221,14 +222,25 @@ namespace PKISharp.WACS.Clients.Acme
httpClient.BaseAddress = _settings.BaseUri;
try
{
+ _log.Verbose("SecurityProtocol setting: {setting}", System.Net.ServicePointManager.SecurityProtocol);
_ = await httpClient.GetStringAsync("directory");
- _log.Debug("Connection OK!");
- }
- catch (Exception ex)
+ }
+ catch (Exception)
{
- _log.Error(ex, "Error connecting to ACME server");
+ _log.Warning("No luck yet, attempting to force TLS 1.2...");
+ httpClient = _proxyService.GetHttpClient(sslProtocols: SslProtocols.Tls12);
+ httpClient.BaseAddress = _settings.BaseUri;
+ try
+ {
+ _ = await httpClient.GetStringAsync("directory");
+ }
+ catch (Exception ex)
+ {
+ _log.Error(ex, "Unable to connect to ACME server");
+ return;
+ }
}
-
+ _log.Debug("Connection OK!");
}
/// <summary>
diff --git a/src/main.lib/Services/ProxyService.cs b/src/main.lib/Services/ProxyService.cs
index 22e0353..36c0d9f 100644
--- a/src/main.lib/Services/ProxyService.cs
+++ b/src/main.lib/Services/ProxyService.cs
@@ -1,6 +1,7 @@
using System;
using System.Net;
using System.Net.Http;
+using System.Security.Authentication;
namespace PKISharp.WACS.Services
{
@@ -25,11 +26,12 @@ namespace PKISharp.WACS.Services
/// Get prepared HttpClient with correct system proxy settings
/// </summary>
/// <returns></returns>
- public HttpClient GetHttpClient(bool checkSsl = true)
+ public HttpClient GetHttpClient(bool checkSsl = true, SslProtocols sslProtocols = SslProtocols.None)
{
var httpClientHandler = new HttpClientHandler()
{
- Proxy = GetWebProxy()
+ Proxy = GetWebProxy(),
+ SslProtocols = sslProtocols
};
if (!checkSsl)
{