This PR adds support for generating a self-signed CA and then using that CA to generate TLS certificates. A new tool `duplicati-configure` / `Duplicati.CommandLine.ConfigureTool.exe` is added to manage the certificates. The tool saves the configuration in the database and is meant to run with elevated privileges for the initial CA installation. The option `--configure-https` can be added to server/trayicon, and if the process has permissions, this will automatically install the CA certificate. If a CA is configured, the server will automatically issue, renew and use a TLS certificate. With this setup, the TLS is opt-in, but once the flow is well tested, we can switch it to opt-out.
27 lines
1.2 KiB
XML
27 lines
1.2 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<TargetFramework>net10.0</TargetFramework>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<Nullable>enable</Nullable>
|
|
<AssemblyName>Duplicati.CommandLine.ConfigureTool.Implementation</AssemblyName>
|
|
<Copyright>Copyright © 2025 Team Duplicati, MIT license</Copyright>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="System.CommandLine" Version="2.0.0-beta4.22272.1" />
|
|
<PackageReference Include="System.CommandLine.NamingConventionBinder" Version="2.0.0-beta4.22272.1" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\..\Library\Certificates\Duplicati.Library.Certificates.csproj" />
|
|
<ProjectReference Include="..\..\Library\RestAPI\Duplicati.Library.RestAPI.csproj" />
|
|
<ProjectReference Include="..\..\Library\SQLiteHelper\Duplicati.Library.SQLiteHelper.csproj" />
|
|
<ProjectReference Include="..\..\Library\AutoUpdater\Duplicati.Library.AutoUpdater.csproj" />
|
|
<ProjectReference Include="..\..\Library\Utility\Duplicati.Library.Utility.csproj" />
|
|
<ProjectReference Include="..\..\Library\Interface\Duplicati.Library.Interface.csproj" />
|
|
<ProjectReference Include="..\..\Server\Duplicati.Server.csproj" />
|
|
</ItemGroup>
|
|
|
|
</Project>
|