Package: certbot-dns-norisnetwork
certbot-dns-norisnetworknoris network DNS Authenticator plugin for CertbotAn authenticator plugin forcertbotto support ACMEv2 dns-01 challenge for domains the DNS zones of which are managed by noris network AG.This plugin automates the process of completing adns-01challenge by creating and subsequently removing TXT records using thenoris network ServiceAPI.InstallationInstall the plugin:Via pip:pip install certbot-dns-norisnetworkFrom source:python3 setup.py installPreparationThe usage of this plugin requires a configuration file containing noris networkServiceAPI Tokenobtained from ourCustomer Portal.Get your API TokenIn case you don't have a noris API Token, you can acquire one by following the instructions found in our OpenAPI Docs:Authentication mechanism for noris ServiceAPIRequired Roles for your UserCreate younoris API Tokenand store it in a safe place.Configure your Login DetailsCreate acredentials.inifile and add the following content:dns_noris_token=<norisAPIToken>Note: You should protect these API credentials as you would a password. Users who can read this file can use these credentials to issue arbitrary API calls on your behalf. Users who can cause Certbot to run using these credentials can complete adns-01challenge to acquire new certificates or revoke existing certificates for associated domains, even if those domains aren't being managed by this server.Important NotesMake sure that the file is only readable by the user.Certbot will emit a warning if it detects that thecredentials.inifile can be accessed by other users on your system. The warning includes "Unsafe permissions on credentials configuration file", followed by the path to the credentials file. This warning will be emitted each time Certbot uses the credentials file,including for renewal, and cannot be silenced except by addressing the issue.To restrict access to the file:chmod600/path/to/credentials.iniThe path to thecredentials.inifile can be provided interactively or using the--dns-noris-credentialscommand-line argument. Certbot records the path to this file for use during renewal, but does not store the file's contents.Ensure access to CertbotApart from thecredentials.inifile, Certbot user should have write access to thelogs,workandconfigdirectories as well.You can use the following options to overwrite the default locations, if needed:--logs-diroption to overwrite the default location (/var/log/letsencrypt/) for logs--work-diroption to overwrite the default location (/var/log/letsencrypt/) for working directory--config-diroption to overwrite the default location (/etc/letsencrypt/) for config directory.This is where the acquired certificate will be added.UsageWARNING: Non-ASCII domains provided through the-dargument should be in punycode format (xn--)!Acquire a certificates forexample.com:certbotcertonly\-adns-noris\--dns-noris-credentials/path/to/credentials.ini\--non-interactive\--agree-tos\-m'my.email@mail.com'\-dexample.comAcquire a certificate for bothexample.comandwww.example.com:certbotcertonly\-adns-noris\--dns-noris-credentials/path/to/credentials.ini\--non-interactive\--agree-tos\-m'my.email@mail.com'\-dexample.com\-dwww.example.comAcquire a certificate forexample.comwaiting 240 seconds for DNS propagation from the command line:certbotcertonly\-adns-noris\--dns-noris-credentials/path/to/credentials.ini\--dns-noris-propagation-seconds240\--non-interactive\--agree-tos\-m'my.email@mail.com'\-dexample.comCommand Line OptionsAvailable command-line options originating fromdns-norisAuthenticator:--dns-noris-credentials DNS_NORIS_CREDENTIALS
    Path to credentials INI file.
        Default: /etc/letsencrypt/credentials.ini

--dns-noris-propagation-seconds DNS_NORIS_PROPAGATION_SECONDS
    The number of seconds to wait for DNS to propagate before asking the ACME server to verify the DNS record.
        Default: 60For all the available command-line options originating fromCertbotyou can useCertbot's documentation.DockerIn order to create a docker container with acertbot-dns-norisnetworkinstallation,  you can use ourofficial Docker image:dockerpullnorisnetwork/certbot-dns-norisnetworkNote:Before running the app, make sure that the path to credentials (set by--dns-noris-credentialsarg) reside in a volume-mounted directory (e.g. in/etc/letsencrypt/).The application can be run as follows::dockerrun--rm\-v/var/lib/letsencrypt:/var/lib/letsencrypt\-v/etc/letsencrypt:/etc/letsencrypt\norisnetwork/certbot-dns-norisnetworkcertonly\--authenticatordns-noris\--dns-noris-propagation-seconds60\--dns-noris-credentials/etc/letsencrypt/credentials.ini\--agree-tos\--keep-until-expiring--non-interactive\--serverhttps://acme-v02.api.letsencrypt.org/directory\-m'user@mail.com'-dexample.com-d'*.subdomain.example.com'Developer GuideToolsUsepipto install all the required dev tools:pipinstall-e.[dev]Code FormatterUseBlackPython code formatter:blackcertbot_dns_norisnetwork/
blacktests/
blacksetup.pyCode AnalyzerUsepylintfor static code analyzing:pylintcertbot_dns_norisnetwork/
pytlinttests/Type Annotations CheckerUsemypyfor type checking:mypycertbot_dns_norisnetwork/
mypytests/New ReleaseUsebump2versionfor release versioning.Run the following commands to trigger a new release:bump2versionpatch# possible: major | minor | patchgitpush<remote-repo>&&gitpush<remote-repo>--tagsThis will adjust the version appropriately and create a tagged commit that will act as a trigger for the build and publish GitLab pipelines.