lego/dns/azuredns/index.html
github-actions[bot] f4dd0df0f5 Deploy to GitHub pages
2026-03-12 20:30:13 +00:00

673 lines
69 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en" dir="ltr" itemscope itemtype="http://schema.org/Article" data-r-output-format="html">
<head>
<meta charset="utf-8">
<meta name="viewport" content="height=device-height, width=device-width, initial-scale=1.0, minimum-scale=1.0">
<meta name="generator" content="Hugo 0.148.2">
<meta name="generator" content="Relearn 8.0.0">
<meta name="description" content="Configuration for Azure DNS.">
<meta name="author" content="Lego Team">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Azure DNS :: Lets Encrypt client and ACME library written in Go.">
<meta name="twitter:description" content="Configuration for Azure DNS.">
<meta property="og:url" content="https://go-acme.github.io/lego/dns/azuredns/index.html">
<meta property="og:site_name" content="Lets Encrypt client and ACME library written in Go.">
<meta property="og:title" content="Azure DNS :: Lets Encrypt client and ACME library written in Go.">
<meta property="og:description" content="Configuration for Azure DNS.">
<meta property="og:locale" content="en">
<meta property="og:type" content="article">
<meta property="article:section" content="DNS Providers">
<meta property="article:published_time" content="2019-03-03T16:39:46+01:00">
<meta property="article:modified_time" content="2025-12-29T18:33:53+01:00">
<meta itemprop="name" content="Azure DNS :: Lets Encrypt client and ACME library written in Go.">
<meta itemprop="description" content="Configuration for Azure DNS.">
<meta itemprop="datePublished" content="2019-03-03T16:39:46+01:00">
<meta itemprop="dateModified" content="2025-12-29T18:33:53+01:00">
<meta itemprop="wordCount" content="1079">
<title>Azure DNS :: Lets Encrypt client and ACME library written in Go.</title>
<link href="/lego/images/favicon.svg?1773347407" rel="icon" type="image/svg+xml">
<link href="/lego/images/favicon.png?1773347407" rel="icon" type="image/png">
<link href="/lego/css/auto-complete/auto-complete.min.css?1773347407" rel="stylesheet">
<script src="/lego/js/auto-complete/auto-complete.min.js?1773347407" defer></script>
<script src="/lego/js/search-lunr.min.js?1773347407" defer></script>
<script src="/lego/js/search.min.js?1773347407" defer></script>
<script>
window.relearn = window.relearn || {};
window.relearn.index_js_url="/lego/searchindex.en.js?1773347407";
</script>
<script src="/lego/js/lunr/lunr.min.js?1773347407" defer></script>
<script src="/lego/js/lunr/lunr.stemmer.support.min.js?1773347407" defer></script>
<script src="/lego/js/lunr/lunr.multi.min.js?1773347407" defer></script>
<script src="/lego/js/lunr/lunr.en.min.js?1773347407" defer></script>
<script>
window.relearn = window.relearn || {};
window.relearn.contentLangs=['en'];
</script>
<link href="/lego/fonts/fontawesome/css/fontawesome-all.min.css?1773347407" rel="stylesheet" media="print" onload="this.media='all';this.onload=null;"><noscript><link href="/lego/fonts/fontawesome/css/fontawesome-all.min.css?1773347407" rel="stylesheet"></noscript>
<link href="/lego/css/perfect-scrollbar/perfect-scrollbar.min.css?1773347407" rel="stylesheet">
<link href="/lego/css/theme.min.css?1773347407" rel="stylesheet">
<link href="/lego/css/format-html.min.css?1773347407" rel="stylesheet" id="R-format-style">
<script>
window.relearn = window.relearn || {};
// configuration
window.relearn.min = `.min`;
window.relearn.path='\/dns\/azuredns\/index.html';
window.relearn.relBasePath='..\/..';
window.relearn.relBaseUri='..\/..\/..';
window.relearn.absBaseUri='https:\/\/go-acme.github.io\/lego';
window.relearn.disableAnchorCopy=false;
window.relearn.disableAnchorScrolling=false;
window.relearn.disableInlineCopyToClipboard=false;
window.relearn.enableBlockCodeWrap=true;
// legal
window.relearn.getItem = (s,n) => {return s.getItem(n)};
window.relearn.setItem = (s,n,v) => {return s.setItem(n,v)};
window.relearn.removeItem = (s,n) => {return s.removeItem(n)};
// translations
window.T_Copy_to_clipboard = `Copy to clipboard`;
window.T_Copied_to_clipboard = `Copied to clipboard!`;
window.T_Copy_link_to_clipboard = `Copy link to clipboard`;
window.T_Link_copied_to_clipboard = `Copied link to clipboard!`;
window.T_Reset_view = `Reset view`;
window.T_View_reset = `View reset!`;
window.T_No_results_found = `No results found for "{0}"`;
window.T_N_results_found = `{1} results found for "{0}"`;
// variant stuff
window.relearn.themevariants = [ 'blue' ];
window.relearn.customvariantname = "my-custom-variant";
window.relearn.changeVariant = function(variant) {
var oldVariant = document.documentElement.dataset.rThemeVariant;
window.relearn.setItem(window.localStorage, window.relearn.absBaseUri + "/variant", variant);
document.documentElement.dataset.rThemeVariant = variant;
if (oldVariant != variant) {
document.dispatchEvent( new CustomEvent('themeVariantLoaded', { detail: { variant, oldVariant } }) );
window.relearn.markVariant();
}
}
window.relearn.markVariant = function() {
var variant = window.relearn.getItem(window.localStorage, window.relearn.absBaseUri + "/variant");
document.querySelectorAll(".R-variantswitcher select").forEach((select) => {select.value = variant;});
}
window.relearn.initVariant = function() {
var variant = window.relearn.getItem(window.localStorage, window.relearn.absBaseUri + "/variant") ?? "";
if( variant == window.relearn.customvariantname ){
}else if( !variant || !window.relearn.themevariants.includes(variant) ){
variant = window.relearn.themevariants[0];
window.relearn.setItem(window.localStorage, window.relearn.absBaseUri + "/variant", variant);
}
document.documentElement.dataset.rThemeVariant = variant;
}
window.relearn.initVariant();
window.relearn.markVariant();
</script>
</head>
<body class="mobile-support html" data-url="/lego/dns/azuredns/index.html">
<div id="R-body" class="default-animation">
<div id="R-body-overlay"></div>
<nav id="R-topbar">
<div class="topbar-wrapper">
<div class="topbar-sidebar-divider"></div>
<div class="topbar-area topbar-area-start" data-area="start">
<div class="topbar-button topbar-button-sidebar" data-content-empty="disable" data-width-s="show" data-width-m="hide" data-width-l="hide"><button class="topbar-control" onclick="toggleNav()" type="button" title="Menu (CTRL&#43;ALT&#43;n)"><i class="fa-fw fas fa-bars"></i></button>
</div>
<div class="topbar-button topbar-button-toc" data-content-empty="hide" data-width-s="show" data-width-m="show" data-width-l="show"><button class="topbar-control" onclick="toggleTopbarFlyout(this)" type="button" title="Table of Contents (CTRL&#43;ALT&#43;t)"><i class="fa-fw fas fa-list-alt"></i></button>
<div class="topbar-content">
<div class="topbar-content-wrapper">
<nav class="TableOfContents">
<ul>
<li><a href="#credentials">Credentials</a></li>
<li><a href="#additional-configuration">Additional Configuration</a></li>
<li><a href="#description">Description</a>
<ul>
<li><a href="#default-azure-credentials-default-option">Default Azure Credentials (default option)</a></li>
<li><a href="#environment-variables">Environment variables</a></li>
<li><a href="#workload-identity">Workload identity</a></li>
<li><a href="#azure-managed-identity">Azure Managed Identity</a></li>
<li><a href="#azure-cli">Azure CLI</a></li>
<li><a href="#open-id-connect">Open ID Connect</a></li>
<li><a href="#azure-devops-pipelines">Azure DevOps Pipelines</a></li>
</ul>
</li>
<li><a href="#more-information">More information</a></li>
</ul>
</nav>
</div>
</div>
</div>
</div>
<ol class="topbar-breadcrumbs breadcrumbs highlightable" itemscope itemtype="http://schema.org/BreadcrumbList"><li itemscope itemtype="https://schema.org/ListItem" itemprop="itemListElement" class=""><a itemprop="item" href="/lego/index.html"><span itemprop="name">Lego</span></a><meta itemprop="position" content="1">&nbsp;>&nbsp;</li><li itemscope itemtype="https://schema.org/ListItem" itemprop="itemListElement" class=""><a itemprop="item" href="/lego/dns/index.html"><span itemprop="name">DNS Providers</span></a><meta itemprop="position" content="2">&nbsp;>&nbsp;</li><li itemscope itemtype="https://schema.org/ListItem" itemprop="itemListElement" class=""><span itemprop="name">Azure DNS</span><meta itemprop="position" content="3"></li>
</ol>
<div class="topbar-area topbar-area-end" data-area="end">
<div class="topbar-button topbar-button-prev" data-content-empty="disable" data-width-s="show" data-width-m="show" data-width-l="show"><a class="topbar-control" href="/lego/dns/azure/index.html" title="Azure (deprecated) (🡐)"><i class="fa-fw fas fa-chevron-left"></i></a>
</div>
<div class="topbar-button topbar-button-next" data-content-empty="disable" data-width-s="show" data-width-m="show" data-width-l="show"><a class="topbar-control" href="/lego/dns/baiducloud/index.html" title="Baidu Cloud (🡒)"><i class="fa-fw fas fa-chevron-right"></i></a>
</div>
<div class="topbar-button topbar-button-more" data-content-empty="hide" data-width-s="show" data-width-m="show" data-width-l="show"><button class="topbar-control" onclick="toggleTopbarFlyout(this)" type="button" title="More"><i class="fa-fw fas fa-ellipsis-v"></i></button>
<div class="topbar-content">
<div class="topbar-content-wrapper">
<div class="topbar-area topbar-area-more" data-area="more">
</div>
</div>
</div>
</div>
</div>
</div>
</nav>
<div id="R-main-overlay"></div>
<main id="R-body-inner" class="highlightable dns" tabindex="-1">
<div class="flex-block-wrapper">
<article class="default">
<header class="headline">
</header>
<h1 id="azure-dns">Azure DNS</h1>
<p>Configuration for <a href="https://azure.microsoft.com/services/dns/" rel="external" target="_blank">Azure DNS</a>.</p>
<ul>
<li>Code: <code>azuredns</code></li>
<li>Since: v4.13.0</li>
</ul>
<p>Here is an example bash command using the Azure DNS provider:</p>
<div class="highlight wrap-code" dir="auto"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e">### Using client secret</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>AZURE_CLIENT_ID<span style="color:#f92672">=</span>&lt;your service principal client ID&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>AZURE_TENANT_ID<span style="color:#f92672">=</span>&lt;your service principal tenant ID&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>AZURE_CLIENT_SECRET<span style="color:#f92672">=</span>&lt;your service principal client secret&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>lego --dns azuredns -d <span style="color:#e6db74">&#39;*.example.com&#39;</span> -d example.com run
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">### Using client certificate</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>AZURE_CLIENT_ID<span style="color:#f92672">=</span>&lt;your service principal client ID&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>AZURE_TENANT_ID<span style="color:#f92672">=</span>&lt;your service principal tenant ID&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>AZURE_CLIENT_CERTIFICATE_PATH<span style="color:#f92672">=</span>&lt;your service principal certificate path&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>lego --dns azuredns -d <span style="color:#e6db74">&#39;*.example.com&#39;</span> -d example.com run
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">### Using Azure CLI</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>az login <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>lego --dns azuredns -d <span style="color:#e6db74">&#39;*.example.com&#39;</span> -d example.com run
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">### Using Managed Identity (Azure VM)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>AZURE_TENANT_ID<span style="color:#f92672">=</span>&lt;your service principal tenant ID&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>AZURE_RESOURCE_GROUP<span style="color:#f92672">=</span>&lt;your target zone resource group name&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>lego --dns azuredns -d <span style="color:#e6db74">&#39;*.example.com&#39;</span> -d example.com run
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">### Using Managed Identity (Azure Arc)</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>AZURE_TENANT_ID<span style="color:#f92672">=</span>&lt;your service principal tenant ID&gt; <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>IMDS_ENDPOINT<span style="color:#f92672">=</span>http://localhost:40342 <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>IDENTITY_ENDPOINT<span style="color:#f92672">=</span>http://localhost:40342/metadata/identity/oauth2/token <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>lego --dns azuredns -d <span style="color:#e6db74">&#39;*.example.com&#39;</span> -d example.com run</span></span></code></pre></div>
<h2 id="credentials">Credentials</h2>
<table>
<thead>
<tr>
<th>Environment Variable Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>AZURE_CLIENT_CERTIFICATE_PATH</code></td>
<td>Client certificate path</td>
</tr>
<tr>
<td><code>AZURE_CLIENT_ID</code></td>
<td>Client ID</td>
</tr>
<tr>
<td><code>AZURE_CLIENT_SECRET</code></td>
<td>Client secret</td>
</tr>
<tr>
<td><code>AZURE_TENANT_ID</code></td>
<td>Tenant ID</td>
</tr>
</tbody>
</table>
<p>The environment variable names can be suffixed by <code>_FILE</code> to reference a file instead of a value.
More information <a href="https://go-acme.github.io/lego/dns/#configuration-and-credentials" rel="external" target="_blank">here</a>.</p>
<h2 id="additional-configuration">Additional Configuration</h2>
<table>
<thead>
<tr>
<th>Environment Variable Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>AZURE_AUTH_METHOD</code></td>
<td>Specify which authentication method to use</td>
</tr>
<tr>
<td><code>AZURE_AUTH_MSI_TIMEOUT</code></td>
<td>Managed Identity timeout duration</td>
</tr>
<tr>
<td><code>AZURE_ENVIRONMENT</code></td>
<td>Azure environment, one of: public, usgovernment, and china</td>
</tr>
<tr>
<td><code>AZURE_POLLING_INTERVAL</code></td>
<td>Time between DNS propagation check in seconds (Default: 2)</td>
</tr>
<tr>
<td><code>AZURE_PRIVATE_ZONE</code></td>
<td>Set to true to use Azure Private DNS Zones and not public</td>
</tr>
<tr>
<td><code>AZURE_PROPAGATION_TIMEOUT</code></td>
<td>Maximum waiting time for DNS propagation in seconds (Default: 120)</td>
</tr>
<tr>
<td><code>AZURE_RESOURCE_GROUP</code></td>
<td>DNS zone resource group</td>
</tr>
<tr>
<td><code>AZURE_SERVICEDISCOVERY_FILTER</code></td>
<td>Advanced ServiceDiscovery filter using Kusto query condition</td>
</tr>
<tr>
<td><code>AZURE_SUBSCRIPTION_ID</code></td>
<td>DNS zone subscription ID</td>
</tr>
<tr>
<td><code>AZURE_TTL</code></td>
<td>The TTL of the TXT record used for the DNS challenge in seconds (Default: 60)</td>
</tr>
<tr>
<td><code>AZURE_ZONE_NAME</code></td>
<td>Zone name to use inside Azure DNS service to add the TXT record in</td>
</tr>
</tbody>
</table>
<p>The environment variable names can be suffixed by <code>_FILE</code> to reference a file instead of a value.
More information <a href="https://go-acme.github.io/lego/dns/#configuration-and-credentials" rel="external" target="_blank">here</a>.</p>
<h2 id="description">Description</h2>
<p>Several authentication methods can be used to authenticate against Azure DNS API.</p>
<h3 id="default-azure-credentials-default-option">Default Azure Credentials (default option)</h3>
<p>Default Azure Credentials automatically detects in the following locations and prioritized in the following order:</p>
<ol>
<li>Environment variables for client secret: <code>AZURE_CLIENT_ID</code>, <code>AZURE_TENANT_ID</code>, <code>AZURE_CLIENT_SECRET</code></li>
<li>Environment variables for client certificate: <code>AZURE_CLIENT_ID</code>, <code>AZURE_TENANT_ID</code>, <code>AZURE_CLIENT_CERTIFICATE_PATH</code></li>
<li>Workload identity for resources hosted in Azure environment (see below)</li>
<li>Shared credentials (defaults to <code>~/.azure</code> folder), used by Azure CLI</li>
</ol>
<p>Link:</p>
<ul>
<li><a href="https://learn.microsoft.com/en-us/azure/developer/go/azure-sdk-authentication" rel="external" target="_blank">Azure Authentication</a></li>
</ul>
<h3 id="environment-variables">Environment variables</h3>
<h4 id="service-discovery">Service Discovery</h4>
<p>Lego automatically finds all visible Azure (private) DNS zones using <a href="https://learn.microsoft.com/en-us/azure/governance/resource-graph/" rel="external" target="_blank">Azure ResourceGraph query</a>.
This can be limited by specifying environment variable <code>AZURE_SUBSCRIPTION_ID</code> and/or <code>AZURE_RESOURCE_GROUP</code> which limits the
DNS zones to only a subscription or to one resourceGroup.</p>
<p>Additionally environment variable <code>AZURE_SERVICEDISCOVERY_FILTER</code> can be used to filter DNS zones with an addition Kusto filter eg:</p>
<div class="highlight wrap-code" dir="auto"><pre tabindex="0"><code>resources
| where type =~ &#34;microsoft.network/dnszones&#34;
| ${AZURE_SERVICEDISCOVERY_FILTER}
| project subscriptionId, resourceGroup, name</code></pre></div>
<h4 id="client-secret">Client secret</h4>
<p>The Azure Credentials can be configured using the following environment variables:</p>
<ul>
<li>AZURE_CLIENT_ID = &ldquo;Client ID&rdquo;</li>
<li>AZURE_CLIENT_SECRET = &ldquo;Client secret&rdquo;</li>
<li>AZURE_TENANT_ID = &ldquo;Tenant ID&rdquo;</li>
</ul>
<p>This authentication method can be specifically used by setting the <code>AZURE_AUTH_METHOD</code> environment variable to <code>env</code>.</p>
<h4 id="client-certificate">Client certificate</h4>
<p>The Azure Credentials can be configured using the following environment variables:</p>
<ul>
<li>AZURE_CLIENT_ID = &ldquo;Client ID&rdquo;</li>
<li>AZURE_CLIENT_CERTIFICATE_PATH = &ldquo;Client certificate path&rdquo;</li>
<li>AZURE_TENANT_ID = &ldquo;Tenant ID&rdquo;</li>
</ul>
<p>This authentication method can be specifically used by setting the <code>AZURE_AUTH_METHOD</code> environment variable to <code>env</code>.</p>
<h3 id="workload-identity">Workload identity</h3>
<p>Workload identity allows workloads running Azure Kubernetes Services (AKS) clusters to authenticate as an Azure AD application identity using federated credentials.</p>
<p>This must be configured in kubernetes workload deployment in one hand and on the Azure AD application registration in the other hand.</p>
<p>Here is a summary of the steps to follow to use it :</p>
<ul>
<li>create a <code>ServiceAccount</code> resource, add following annotations to reference the targeted Azure AD application registration : <code>azure.workload.identity/client-id</code> and <code>azure.workload.identity/tenant-id</code>.</li>
<li>on the <code>Deployment</code> resource you must reference the previous <code>ServiceAccount</code> and add the following label : <code>azure.workload.identity/use: &quot;true&quot;</code>.</li>
<li>create a federated credentials of type <code>Kubernetes accessing Azure resources</code>, add the cluster issuer URL and add the namespace and name of your kubernetes service account.</li>
</ul>
<p>Link :</p>
<ul>
<li><a href="https://azure.github.io/azure-workload-identity/docs/topics/service-account-labels-and-annotations.html" rel="external" target="_blank">Azure AD Workload identity</a></li>
</ul>
<p>This authentication method can be specifically used by setting the <code>AZURE_AUTH_METHOD</code> environment variable to <code>wli</code>.</p>
<h3 id="azure-managed-identity">Azure Managed Identity</h3>
<h4 id="azure-managed-identity-with-azure-workload">Azure Managed Identity (with Azure workload)</h4>
<p>The Azure Managed Identity service allows linking Azure AD identities to Azure resources, without needing to manually manage client IDs and secrets.</p>
<p>Workloads with a Managed Identity can manage their own certificates, with permissions on specific domain names set using IAM assignments.
For this to work, the Managed Identity requires the <strong>Reader</strong> role on the target DNS Zone,
and the <strong>DNS Zone Contributor</strong> on the relevant <code>_acme-challenge</code> TXT records.</p>
<p>For example, to allow a Managed Identity to create a certificate for &ldquo;fw01.lab.example.com&rdquo;, using Azure CLI:</p>
<div class="highlight wrap-code" dir="auto"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>export AZURE_SUBSCRIPTION_ID<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;00000000-0000-0000-0000-000000000000&#34;</span>
</span></span><span style="display:flex;"><span>export AZURE_RESOURCE_GROUP<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;rg1&#34;</span>
</span></span><span style="display:flex;"><span>export SERVICE_PRINCIPAL_ID<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;00000000-0000-0000-0000-000000000000&#34;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>export AZURE_DNS_ZONE<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;lab.example.com&#34;</span>
</span></span><span style="display:flex;"><span>export AZ_HOSTNAME<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;fw01&#34;</span>
</span></span><span style="display:flex;"><span>export AZ_RECORD_SET<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;_acme-challenge.</span><span style="color:#e6db74">${</span>AZ_HOSTNAME<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>az role assignment create <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>--assignee <span style="color:#e6db74">&#34;</span><span style="color:#e6db74">${</span>SERVICE_PRINCIPAL_ID<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>--role <span style="color:#e6db74">&#34;Reader&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>--scope <span style="color:#e6db74">&#34;/subscriptions/</span><span style="color:#e6db74">${</span>AZURE_SUBSCRIPTION_ID<span style="color:#e6db74">}</span><span style="color:#e6db74">/resourceGroups/</span><span style="color:#e6db74">${</span>AZURE_RESOURCE_GROUP<span style="color:#e6db74">}</span><span style="color:#e6db74">/providers/Microsoft.Network/dnszones/</span><span style="color:#e6db74">${</span>AZURE_DNS_ZONE<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>az role assignment create <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>--assignee <span style="color:#e6db74">&#34;</span><span style="color:#e6db74">${</span>SERVICE_PRINCIPAL_ID<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>--role <span style="color:#e6db74">&#34;DNS Zone Contributor&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>--scope <span style="color:#e6db74">&#34;/subscriptions/</span><span style="color:#e6db74">${</span>AZURE_SUBSCRIPTION_ID<span style="color:#e6db74">}</span><span style="color:#e6db74">/resourceGroups/</span><span style="color:#e6db74">${</span>AZURE_RESOURCE_GROUP<span style="color:#e6db74">}</span><span style="color:#e6db74">/providers/Microsoft.Network/dnszones/</span><span style="color:#e6db74">${</span>AZURE_DNS_ZONE<span style="color:#e6db74">}</span><span style="color:#e6db74">/TXT/</span><span style="color:#e6db74">${</span>AZ_RECORD_SET<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span></span></span></code></pre></div>
<p>A timeout wrapper is configured for this authentication method.
The duration can be configured by setting the <code>AZURE_AUTH_MSI_TIMEOUT</code>.
The default timeout is 2 seconds.
This authentication method can be specifically used by setting the <code>AZURE_AUTH_METHOD</code> environment variable to <code>msi</code>.</p>
<h4 id="azure-managed-identity-with-azure-arc">Azure Managed Identity (with Azure Arc)</h4>
<p>The Azure Arc agent provides the ability to use a Managed Identity on resources hosted outside of Azure
(such as on-prem virtual machines, or VMs in another cloud provider).</p>
<p>While the upstream <code>azidentity</code> SDK will try to automatically identify and use the Azure Arc metadata service,
if you get <code>azuredns: DefaultAzureCredential: failed to acquire a token.</code> error messages,
you may need to set the environment variables:</p>
<ul>
<li><code>IMDS_ENDPOINT=http://localhost:40342</code></li>
<li><code>IDENTITY_ENDPOINT=http://localhost:40342/metadata/identity/oauth2/token</code></li>
</ul>
<p>A timeout wrapper is configured for this authentication method.
The duration can be configured by setting the <code>AZURE_AUTH_MSI_TIMEOUT</code>.
The default timeout is 2 seconds.
This authentication method can be specifically used by setting the <code>AZURE_AUTH_METHOD</code> environment variable to <code>msi</code>.</p>
<h3 id="azure-cli">Azure CLI</h3>
<p>The Azure CLI is a command-line tool provided by Microsoft to interact with Azure resources.
It provides an easy way to authenticate by simply running <code>az login</code> command.
The generated token will be cached by default in the <code>~/.azure</code> folder.</p>
<p>This authentication method can be specifically used by setting the <code>AZURE_AUTH_METHOD</code> environment variable to <code>cli</code>.</p>
<h3 id="open-id-connect">Open ID Connect</h3>
<p>Open ID Connect is a mechanism that establish a trust relationship between a running environment and the Azure AD identity provider.
It can be enabled by setting the <code>AZURE_AUTH_METHOD</code> environment variable to <code>oidc</code>.</p>
<h3 id="azure-devops-pipelines">Azure DevOps Pipelines</h3>
<p>It can be enabled by setting the <code>AZURE_AUTH_METHOD</code> environment variable to <code>pipeline</code>.</p>
<h2 id="more-information">More information</h2>
<ul>
<li><a href="https://docs.microsoft.com/en-us/go/azure/" rel="external" target="_blank">API documentation</a></li>
<li><a href="https://github.com/Azure/azure-sdk-for-go" rel="external" target="_blank">Go client</a></li>
</ul>
<footer class="footline">
<i class='fa-fw fas fa-calendar'></i> Dec 29, 2025
</footer>
</article>
</div>
</main>
</div>
<aside id="R-sidebar" class="default-animation">
<div id="R-header-topbar" class="default-animation"></div>
<div id="R-header-wrapper" class="default-animation">
<div id="R-header" class="default-animation">
<a id="logo" href="/lego"><img src="/lego/images/lego-logo-white.min.svg" alt="lego logo"></a>
</div>
<search><form action="/lego/search/index.html" method="get">
<div class="searchbox default-animation">
<button class="search-detail" type="submit" title="Search (CTRL+ALT+f)"><i class="fas fa-search"></i></button>
<label class="a11y-only" for="R-search-by">Search</label>
<input data-search-input id="R-search-by" name="search-by" class="search-by" type="search" placeholder="Search...">
<button class="search-clear" type="button" data-search-clear="" title="Clear search"><i class="fas fa-times" title="Clear search"></i></button>
</div>
</form></search>
</div>
<div id="R-homelinks" class="default-animation">
<div class="R-menu-divider default-animation">
<hr class="padding">
</div>
<div class="R-sidebarmenu R-shortcutmenu-homelinks">
<ul class="space collapsible-menu">
</ul>
</div>
<div class="R-menu-divider default-animation">
<hr class="padding">
</div>
<div class="R-sidebarmenu R-shortcutmenu-headercontrols">
<ul class="">
</ul>
</div>
<div class="R-menu-divider default-animation">
<hr class="padding">
</div>
</div>
<div id="R-content-wrapper" class="highlightable">
<div class="R-sidebarmenu R-shortcutmenu-main">
<ul class="enlarge morespace collapsible-menu">
<li class="" data-nav-id="/lego/installation/index.html"><a class="padding" href="/lego/installation/index.html">Installation<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/usage/index.html"><a class="padding" href="/lego/usage/index.html">Usage<i class="fa-fw fas fa-check read-icon"></i></a><ul id="R-subsections-62f9042a23780ab51a3b699210e86d03" class="collapsible-menu"></ul></li>
<li class="parent " data-nav-id="/lego/dns/index.html"><a class="padding" href="/lego/dns/index.html">DNS Providers<i class="fa-fw fas fa-check read-icon"></i></a><ul id="R-subsections-1a5c4aa622b091f451ffa4fea9c3a5f1" class="collapsible-menu">
<li class="" data-nav-id="/lego/dns/com35/index.html"><a class="padding" href="/lego/dns/com35/index.html">35.com/三五互联<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/active24/index.html"><a class="padding" href="/lego/dns/active24/index.html">Active24<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/edgedns/index.html"><a class="padding" href="/lego/dns/edgedns/index.html">Akamai EdgeDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/alidns/index.html"><a class="padding" href="/lego/dns/alidns/index.html">Alibaba Cloud DNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/aliesa/index.html"><a class="padding" href="/lego/dns/aliesa/index.html">AlibabaCloud ESA<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/allinkl/index.html"><a class="padding" href="/lego/dns/allinkl/index.html">all-inkl<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/alwaysdata/index.html"><a class="padding" href="/lego/dns/alwaysdata/index.html">Alwaysdata<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/lightsail/index.html"><a class="padding" href="/lego/dns/lightsail/index.html">Amazon Lightsail<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/route53/index.html"><a class="padding" href="/lego/dns/route53/index.html">Amazon Route 53<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/anexia/index.html"><a class="padding" href="/lego/dns/anexia/index.html">Anexia CloudDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/safedns/index.html"><a class="padding" href="/lego/dns/safedns/index.html">ANS SafeDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/artfiles/index.html"><a class="padding" href="/lego/dns/artfiles/index.html">ArtFiles<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/arvancloud/index.html"><a class="padding" href="/lego/dns/arvancloud/index.html">ArvanCloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/auroradns/index.html"><a class="padding" href="/lego/dns/auroradns/index.html">Aurora DNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/autodns/index.html"><a class="padding" href="/lego/dns/autodns/index.html">Autodns<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/axelname/index.html"><a class="padding" href="/lego/dns/axelname/index.html">Axelname<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/azion/index.html"><a class="padding" href="/lego/dns/azion/index.html">Azion<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/azure/index.html"><a class="padding" href="/lego/dns/azure/index.html">Azure (deprecated)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="active " data-nav-id="/lego/dns/azuredns/index.html"><a class="padding" href="/lego/dns/azuredns/index.html">Azure DNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/baiducloud/index.html"><a class="padding" href="/lego/dns/baiducloud/index.html">Baidu Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/beget/index.html"><a class="padding" href="/lego/dns/beget/index.html">Beget.com<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/binarylane/index.html"><a class="padding" href="/lego/dns/binarylane/index.html">Binary Lane<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/bindman/index.html"><a class="padding" href="/lego/dns/bindman/index.html">Bindman<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/bluecat/index.html"><a class="padding" href="/lego/dns/bluecat/index.html">Bluecat<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/bluecatv2/index.html"><a class="padding" href="/lego/dns/bluecatv2/index.html">Bluecat v2<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/bookmyname/index.html"><a class="padding" href="/lego/dns/bookmyname/index.html">BookMyName<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/brandit/index.html"><a class="padding" href="/lego/dns/brandit/index.html">Brandit (deprecated)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/bunny/index.html"><a class="padding" href="/lego/dns/bunny/index.html">Bunny<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/checkdomain/index.html"><a class="padding" href="/lego/dns/checkdomain/index.html">Checkdomain<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/civo/index.html"><a class="padding" href="/lego/dns/civo/index.html">Civo<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/cloudru/index.html"><a class="padding" href="/lego/dns/cloudru/index.html">Cloud.ru<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/clouddns/index.html"><a class="padding" href="/lego/dns/clouddns/index.html">CloudDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/cloudflare/index.html"><a class="padding" href="/lego/dns/cloudflare/index.html">Cloudflare<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/cloudns/index.html"><a class="padding" href="/lego/dns/cloudns/index.html">ClouDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/cloudxns/index.html"><a class="padding" href="/lego/dns/cloudxns/index.html">CloudXNS (Deprecated)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/conoha/index.html"><a class="padding" href="/lego/dns/conoha/index.html">ConoHa v2<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/conohav3/index.html"><a class="padding" href="/lego/dns/conohav3/index.html">ConoHa v3<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/constellix/index.html"><a class="padding" href="/lego/dns/constellix/index.html">Constellix<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/corenetworks/index.html"><a class="padding" href="/lego/dns/corenetworks/index.html">Core-Networks<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/cpanel/index.html"><a class="padding" href="/lego/dns/cpanel/index.html">CPanel/WHM<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/czechia/index.html"><a class="padding" href="/lego/dns/czechia/index.html">Czechia<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ddnss/index.html"><a class="padding" href="/lego/dns/ddnss/index.html">DDnss (DynDNS Service)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/derak/index.html"><a class="padding" href="/lego/dns/derak/index.html">Derak Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/desec/index.html"><a class="padding" href="/lego/dns/desec/index.html">deSEC.io<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/designate/index.html"><a class="padding" href="/lego/dns/designate/index.html">Designate DNSaaS for Openstack<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/digitalocean/index.html"><a class="padding" href="/lego/dns/digitalocean/index.html">Digital Ocean<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/directadmin/index.html"><a class="padding" href="/lego/dns/directadmin/index.html">DirectAdmin<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dnsmadeeasy/index.html"><a class="padding" href="/lego/dns/dnsmadeeasy/index.html">DNS Made Easy<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dnsexit/index.html"><a class="padding" href="/lego/dns/dnsexit/index.html">DNSExit<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dnshomede/index.html"><a class="padding" href="/lego/dns/dnshomede/index.html">dnsHome.de<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dnsimple/index.html"><a class="padding" href="/lego/dns/dnsimple/index.html">DNSimple<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dnspod/index.html"><a class="padding" href="/lego/dns/dnspod/index.html">DNSPod (deprecated)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dode/index.html"><a class="padding" href="/lego/dns/dode/index.html">Domain Offensive (do.de)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/domeneshop/index.html"><a class="padding" href="/lego/dns/domeneshop/index.html">Domeneshop<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dreamhost/index.html"><a class="padding" href="/lego/dns/dreamhost/index.html">DreamHost<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/duckdns/index.html"><a class="padding" href="/lego/dns/duckdns/index.html">Duck DNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dyn/index.html"><a class="padding" href="/lego/dns/dyn/index.html">Dyn<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dyndnsfree/index.html"><a class="padding" href="/lego/dns/dyndnsfree/index.html">DynDnsFree.de<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/dynu/index.html"><a class="padding" href="/lego/dns/dynu/index.html">Dynu<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/easydns/index.html"><a class="padding" href="/lego/dns/easydns/index.html">EasyDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/edgecenter/index.html"><a class="padding" href="/lego/dns/edgecenter/index.html">EdgeCenter<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/efficientip/index.html"><a class="padding" href="/lego/dns/efficientip/index.html">Efficient IP<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/epik/index.html"><a class="padding" href="/lego/dns/epik/index.html">Epik<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/eurodns/index.html"><a class="padding" href="/lego/dns/eurodns/index.html">EuroDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/excedo/index.html"><a class="padding" href="/lego/dns/excedo/index.html">Excedo<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/exoscale/index.html"><a class="padding" href="/lego/dns/exoscale/index.html">Exoscale<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/exec/index.html"><a class="padding" href="/lego/dns/exec/index.html">External program<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/f5xc/index.html"><a class="padding" href="/lego/dns/f5xc/index.html">F5 XC<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/freemyip/index.html"><a class="padding" href="/lego/dns/freemyip/index.html">freemyip.com<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/namesurfer/index.html"><a class="padding" href="/lego/dns/namesurfer/index.html">FusionLayer NameSurfer<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/gcore/index.html"><a class="padding" href="/lego/dns/gcore/index.html">G-Core<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/gandi/index.html"><a class="padding" href="/lego/dns/gandi/index.html">Gandi<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/gandiv5/index.html"><a class="padding" href="/lego/dns/gandiv5/index.html">Gandi Live DNS (v5)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/gigahostno/index.html"><a class="padding" href="/lego/dns/gigahostno/index.html">Gigahost.no<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/glesys/index.html"><a class="padding" href="/lego/dns/glesys/index.html">Glesys<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/godaddy/index.html"><a class="padding" href="/lego/dns/godaddy/index.html">Go Daddy<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/gcloud/index.html"><a class="padding" href="/lego/dns/gcloud/index.html">Google Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/googledomains/index.html"><a class="padding" href="/lego/dns/googledomains/index.html">Google Domains<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/gravity/index.html"><a class="padding" href="/lego/dns/gravity/index.html">Gravity<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/hetzner/index.html"><a class="padding" href="/lego/dns/hetzner/index.html">Hetzner<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/hostingde/index.html"><a class="padding" href="/lego/dns/hostingde/index.html">Hosting.de<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/hostingnl/index.html"><a class="padding" href="/lego/dns/hostingnl/index.html">Hosting.nl<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/hostinger/index.html"><a class="padding" href="/lego/dns/hostinger/index.html">Hostinger<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/hosttech/index.html"><a class="padding" href="/lego/dns/hosttech/index.html">Hosttech<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/httpreq/index.html"><a class="padding" href="/lego/dns/httpreq/index.html">HTTP request<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/httpnet/index.html"><a class="padding" href="/lego/dns/httpnet/index.html">http.net<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/huaweicloud/index.html"><a class="padding" href="/lego/dns/huaweicloud/index.html">Huawei Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/hurricane/index.html"><a class="padding" href="/lego/dns/hurricane/index.html">Hurricane Electric DNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/hyperone/index.html"><a class="padding" href="/lego/dns/hyperone/index.html">HyperOne<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ibmcloud/index.html"><a class="padding" href="/lego/dns/ibmcloud/index.html">IBM Cloud (SoftLayer)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/iijdpf/index.html"><a class="padding" href="/lego/dns/iijdpf/index.html">IIJ DNS Platform Service<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/infoblox/index.html"><a class="padding" href="/lego/dns/infoblox/index.html">Infoblox<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/infomaniak/index.html"><a class="padding" href="/lego/dns/infomaniak/index.html">Infomaniak<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/iij/index.html"><a class="padding" href="/lego/dns/iij/index.html">Internet Initiative Japan<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/internetbs/index.html"><a class="padding" href="/lego/dns/internetbs/index.html">Internet.bs<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/inwx/index.html"><a class="padding" href="/lego/dns/inwx/index.html">INWX<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ionos/index.html"><a class="padding" href="/lego/dns/ionos/index.html">Ionos<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ionoscloud/index.html"><a class="padding" href="/lego/dns/ionoscloud/index.html">Ionos Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ipv64/index.html"><a class="padding" href="/lego/dns/ipv64/index.html">IPv64<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ispconfig/index.html"><a class="padding" href="/lego/dns/ispconfig/index.html">ISPConfig 3<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ispconfigddns/index.html"><a class="padding" href="/lego/dns/ispconfigddns/index.html">ISPConfig 3 - Dynamic DNS (DDNS) Module<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/iwantmyname/index.html"><a class="padding" href="/lego/dns/iwantmyname/index.html">iwantmyname (Deprecated)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/jdcloud/index.html"><a class="padding" href="/lego/dns/jdcloud/index.html">JD Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/joker/index.html"><a class="padding" href="/lego/dns/joker/index.html">Joker<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/acme-dns/index.html"><a class="padding" href="/lego/dns/acme-dns/index.html">Joohoi&#39;s ACME-DNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/keyhelp/index.html"><a class="padding" href="/lego/dns/keyhelp/index.html">KeyHelp<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/leaseweb/index.html"><a class="padding" href="/lego/dns/leaseweb/index.html">Leaseweb<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/liara/index.html"><a class="padding" href="/lego/dns/liara/index.html">Liara<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/limacity/index.html"><a class="padding" href="/lego/dns/limacity/index.html">Lima-City<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/linode/index.html"><a class="padding" href="/lego/dns/linode/index.html">Linode (v4)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/liquidweb/index.html"><a class="padding" href="/lego/dns/liquidweb/index.html">Liquid Web<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/loopia/index.html"><a class="padding" href="/lego/dns/loopia/index.html">Loopia<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/luadns/index.html"><a class="padding" href="/lego/dns/luadns/index.html">LuaDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/mailinabox/index.html"><a class="padding" href="/lego/dns/mailinabox/index.html">Mail-in-a-Box<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/manageengine/index.html"><a class="padding" href="/lego/dns/manageengine/index.html">ManageEngine CloudDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/manual/index.html"><a class="padding" href="/lego/dns/manual/index.html">Manual<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/metaname/index.html"><a class="padding" href="/lego/dns/metaname/index.html">Metaname<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/metaregistrar/index.html"><a class="padding" href="/lego/dns/metaregistrar/index.html">Metaregistrar<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/mijnhost/index.html"><a class="padding" href="/lego/dns/mijnhost/index.html">mijn.host<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/mittwald/index.html"><a class="padding" href="/lego/dns/mittwald/index.html">Mittwald<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/myaddr/index.html"><a class="padding" href="/lego/dns/myaddr/index.html">myaddr.{tools,dev,io}<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/mydnsjp/index.html"><a class="padding" href="/lego/dns/mydnsjp/index.html">MyDNS.jp<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/mythicbeasts/index.html"><a class="padding" href="/lego/dns/mythicbeasts/index.html">MythicBeasts<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/namedotcom/index.html"><a class="padding" href="/lego/dns/namedotcom/index.html">Name.com<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/namecheap/index.html"><a class="padding" href="/lego/dns/namecheap/index.html">Namecheap<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/namesilo/index.html"><a class="padding" href="/lego/dns/namesilo/index.html">Namesilo<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/nearlyfreespeech/index.html"><a class="padding" href="/lego/dns/nearlyfreespeech/index.html">NearlyFreeSpeech.NET<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/neodigit/index.html"><a class="padding" href="/lego/dns/neodigit/index.html">Neodigit<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/netcup/index.html"><a class="padding" href="/lego/dns/netcup/index.html">Netcup<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/netlify/index.html"><a class="padding" href="/lego/dns/netlify/index.html">Netlify<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/nicmanager/index.html"><a class="padding" href="/lego/dns/nicmanager/index.html">Nicmanager<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/nifcloud/index.html"><a class="padding" href="/lego/dns/nifcloud/index.html">NIFCloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/njalla/index.html"><a class="padding" href="/lego/dns/njalla/index.html">Njalla<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/nodion/index.html"><a class="padding" href="/lego/dns/nodion/index.html">Nodion<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ns1/index.html"><a class="padding" href="/lego/dns/ns1/index.html">NS1<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/octenium/index.html"><a class="padding" href="/lego/dns/octenium/index.html">Octenium<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/otc/index.html"><a class="padding" href="/lego/dns/otc/index.html">Open Telekom Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/oraclecloud/index.html"><a class="padding" href="/lego/dns/oraclecloud/index.html">Oracle Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ovh/index.html"><a class="padding" href="/lego/dns/ovh/index.html">OVH<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/plesk/index.html"><a class="padding" href="/lego/dns/plesk/index.html">plesk.com<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/porkbun/index.html"><a class="padding" href="/lego/dns/porkbun/index.html">Porkbun<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/pdns/index.html"><a class="padding" href="/lego/dns/pdns/index.html">PowerDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/rackspace/index.html"><a class="padding" href="/lego/dns/rackspace/index.html">Rackspace<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/rainyun/index.html"><a class="padding" href="/lego/dns/rainyun/index.html">Rain Yun/雨云<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/rcodezero/index.html"><a class="padding" href="/lego/dns/rcodezero/index.html">RcodeZero<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/regru/index.html"><a class="padding" href="/lego/dns/regru/index.html">reg.ru<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/regfish/index.html"><a class="padding" href="/lego/dns/regfish/index.html">Regfish<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/rfc2136/index.html"><a class="padding" href="/lego/dns/rfc2136/index.html">RFC2136<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/rimuhosting/index.html"><a class="padding" href="/lego/dns/rimuhosting/index.html">RimuHosting<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/nicru/index.html"><a class="padding" href="/lego/dns/nicru/index.html">RU CENTER<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/sakuracloud/index.html"><a class="padding" href="/lego/dns/sakuracloud/index.html">Sakura Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/scaleway/index.html"><a class="padding" href="/lego/dns/scaleway/index.html">Scaleway<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/selectel/index.html"><a class="padding" href="/lego/dns/selectel/index.html">Selectel<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/selectelv2/index.html"><a class="padding" href="/lego/dns/selectelv2/index.html">Selectel v2<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/selfhostde/index.html"><a class="padding" href="/lego/dns/selfhostde/index.html">SelfHost.(de|eu)<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/servercow/index.html"><a class="padding" href="/lego/dns/servercow/index.html">Servercow<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/shellrent/index.html"><a class="padding" href="/lego/dns/shellrent/index.html">Shellrent<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/simply/index.html"><a class="padding" href="/lego/dns/simply/index.html">Simply.com<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/sonic/index.html"><a class="padding" href="/lego/dns/sonic/index.html">Sonic<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/spaceship/index.html"><a class="padding" href="/lego/dns/spaceship/index.html">Spaceship<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/stackpath/index.html"><a class="padding" href="/lego/dns/stackpath/index.html">Stackpath<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/syse/index.html"><a class="padding" href="/lego/dns/syse/index.html">Syse<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/technitium/index.html"><a class="padding" href="/lego/dns/technitium/index.html">Technitium<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/tencentcloud/index.html"><a class="padding" href="/lego/dns/tencentcloud/index.html">Tencent Cloud DNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/edgeone/index.html"><a class="padding" href="/lego/dns/edgeone/index.html">Tencent EdgeOne<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/timewebcloud/index.html"><a class="padding" href="/lego/dns/timewebcloud/index.html">Timeweb Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/todaynic/index.html"><a class="padding" href="/lego/dns/todaynic/index.html">TodayNIC/时代互联<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/transip/index.html"><a class="padding" href="/lego/dns/transip/index.html">TransIP<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/ultradns/index.html"><a class="padding" href="/lego/dns/ultradns/index.html">Ultradns<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/uniteddomains/index.html"><a class="padding" href="/lego/dns/uniteddomains/index.html">United-Domains<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/variomedia/index.html"><a class="padding" href="/lego/dns/variomedia/index.html">Variomedia<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/vegadns/index.html"><a class="padding" href="/lego/dns/vegadns/index.html">VegaDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/vercel/index.html"><a class="padding" href="/lego/dns/vercel/index.html">Vercel<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/versio/index.html"><a class="padding" href="/lego/dns/versio/index.html">Versio.[nl|eu|uk]<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/vinyldns/index.html"><a class="padding" href="/lego/dns/vinyldns/index.html">VinylDNS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/virtualname/index.html"><a class="padding" href="/lego/dns/virtualname/index.html">Virtualname<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/vkcloud/index.html"><a class="padding" href="/lego/dns/vkcloud/index.html">VK Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/volcengine/index.html"><a class="padding" href="/lego/dns/volcengine/index.html">Volcano Engine/火山引擎<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/vscale/index.html"><a class="padding" href="/lego/dns/vscale/index.html">Vscale<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/vultr/index.html"><a class="padding" href="/lego/dns/vultr/index.html">Vultr<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/webnamesca/index.html"><a class="padding" href="/lego/dns/webnamesca/index.html">webnames.ca<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/webnames/index.html"><a class="padding" href="/lego/dns/webnames/index.html">webnames.ru<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/websupport/index.html"><a class="padding" href="/lego/dns/websupport/index.html">Websupport<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/wedos/index.html"><a class="padding" href="/lego/dns/wedos/index.html">WEDOS<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/westcn/index.html"><a class="padding" href="/lego/dns/westcn/index.html">West.cn/西部数码<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/yandex360/index.html"><a class="padding" href="/lego/dns/yandex360/index.html">Yandex 360<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/yandexcloud/index.html"><a class="padding" href="/lego/dns/yandexcloud/index.html">Yandex Cloud<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/yandex/index.html"><a class="padding" href="/lego/dns/yandex/index.html">Yandex PDD<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/zoneee/index.html"><a class="padding" href="/lego/dns/zoneee/index.html">Zone.ee<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/zoneedit/index.html"><a class="padding" href="/lego/dns/zoneedit/index.html">ZoneEdit<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="/lego/dns/zonomi/index.html"><a class="padding" href="/lego/dns/zonomi/index.html">Zonomi<i class="fa-fw fas fa-check read-icon"></i></a></li></ul></li>
</ul>
</div>
<div class="R-sidebarmenu R-shortcutmenu-shortcuts">
<div class="nav-title padding">More</div>
<ul class="space collapsible-menu">
<li class="" data-nav-id="https://github.com/go-acme/lego"><a class="padding" href="https://github.com/go-acme/lego" rel="external" target="_blank"><i class='fab fa-fw fa-github'></i> GitHub repo<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="https://github.com/go-acme/lego/issues"><a class="padding" href="https://github.com/go-acme/lego/issues" rel="external" target="_blank"><i class='fas fa-fw fa-bug'></i> Issues<i class="fa-fw fas fa-check read-icon"></i></a></li>
<li class="" data-nav-id="https://github.com/go-acme/lego/discussions"><a class="padding" href="https://github.com/go-acme/lego/discussions" rel="external" target="_blank"><i class='fas fa-fw fa-comments'></i> Discussions<i class="fa-fw fas fa-check read-icon"></i></a></li>
</ul>
</div>
<div id="R-footer-margin"></div>
<div class="R-menu-divider default-animation">
<hr class="padding">
</div>
<div class="R-sidebarmenu R-shortcutmenu-footercontrols">
<ul class="">
<li class="R-historyclearer">
<div class="padding menu-control">
<i class="fa-fw fas fa-history"></i>
<span>&nbsp;</span>
<div class="control-style">
<button>Clear History</button>
</div>
<div class="clear"></div>
</div>
</li>
</ul>
</div>
<div id="R-footer"><p>Built with <a href="https://github.com/McShelby/hugo-theme-relearn" title="love"><i class="fas fa-heart"></i></a> by <a href="https://gohugo.io/">Hugo</a></p></div>
</div>
</aside>
<script src="/lego/js/clipboard/clipboard.min.js?1773347407" defer></script>
<script src="/lego/js/perfect-scrollbar/perfect-scrollbar.min.js?1773347407" defer></script>
<script src="/lego/js/theme.min.js?1773347407" defer></script>
</body>
</html>