acme-dns | Limited DNS server with RESTful HTTP API | DNS library

 by   joohoi Go Version: v1.0 License: MIT

kandi X-RAY | acme-dns Summary

kandi X-RAY | acme-dns Summary

acme-dns is a Go library typically used in Networking, DNS applications. acme-dns has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.

Limited DNS server with RESTful HTTP API to handle ACME DNS challenges easily and securely.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              acme-dns has a medium active ecosystem.
              It has 1664 star(s) with 190 fork(s). There are 43 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 102 open issues and 84 have been closed. On average issues are closed in 46 days. There are 30 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of acme-dns is v1.0

            kandi-Quality Quality

              acme-dns has 0 bugs and 0 code smells.

            kandi-Security Security

              acme-dns has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              acme-dns code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              acme-dns is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              acme-dns releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 2440 lines of code, 117 functions and 17 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of acme-dns
            Get all kandi verified functions for this library.

            acme-dns Key Features

            No Key Features are available at this moment for acme-dns.

            acme-dns Examples and Code Snippets

            No Code Snippets are available at this moment for acme-dns.

            Community Discussions

            QUESTION

            Golang fails to link an aarch64/arm64 binary on an x86_64 machine while cross compiling
            Asked 2021-Sep-15 at 19:38

            I am trying to cross compile https://github.com/joohoi/acme-dns for an aarch64 machine on my x86_64 desktop.

            ...

            ANSWER

            Answered 2021-Sep-15 at 19:38

            Problem reproduced, and resolved by replacing -ldflags="-extld=$CC" with -ldflags="-extld=aarch64-linux-gnu-gcc".

            Alternatively, you can also export the CC variable beforehand.

            The error output was caused by mismatching linker (with your original build command, it was still the x86-64 linker that got invoked).

            Tested on two hosts of mine: one Ubuntu 20.04 + go1.13, the other Ubuntu 18.04 + go1.16.

            More explanations:

            Seems that the in-line CC env variable setting is passed to the go tool, but not used in the shell's parameter substitution. The following output (Bash 5.0) demonstrates this:

            Source https://stackoverflow.com/questions/69144677

            QUESTION

            Letsencrypt certs generated but getting TLS error with docker traefik using dns acme challenge
            Asked 2021-Aug-10 at 15:28

            i am following this doc https://doc.traefik.io/traefik/user-guides/docker-compose/acme-dns/ to setup docker traefik using the dns acme challenge for letsencrypt

            i am able to have the certs generated by each service that request it dynamically and in the logs it shows

            ...

            ANSWER

            Answered 2021-Aug-10 at 15:28

            All the configurations are correct, only issue was to switch away from the staging servers to test it live

            commented the following lines in traefik_docker_compose.yaml file

            Source https://stackoverflow.com/questions/68719017

            QUESTION

            Traefik + Let's Encrypt on AWS Lightsail
            Asked 2021-Jun-28 at 00:33

            I'm currently using Traefik and Lego in order to have HTTPS connection for my docker containers (as mentioned here) In the following documentation, it's mentioned that I need to use the following provider to do DNS Challenge.

            But I get this error:

            ...

            ANSWER

            Answered 2021-Jun-27 at 20:14

            The error message tells that Lego made the request using the IAM role assigned to your lightsail instance. I guess your instance lacks permissions to modify DNS settings for lightsail.

            You should create a new user in AWS IAM and enable programmatic access in order to obtain AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY.

            Then, pass those values as environment variables to your containers running Lego. Lego will use those env vars to authenticate with Lightsail APIs in us-east-1. [1]

            My instance's region is eu-west-3 (I tried changing the region in Lego config, doesn't work)

            Your Lego instance must call AWS APIs in us-east-1, see [2][3].

            Lego and Traefik do not call the AssumeRole directly and do not create the temporary token

            I guess Traefik/Lego assume the lightsail instance role automatically using EC2 instance metadata service, see [4]:

            For applications, AWS CLI, and Tools for Windows PowerShell commands that run on the instance, you do not have to explicitly get the temporary security credentials—the AWS SDKs, AWS CLI, and Tools for Windows PowerShell automatically get the credentials from the EC2 instance metadata service and use them. To make a call outside of the instance using temporary security credentials (for example, to test IAM policies), you must provide the access key, secret key, and the session token.

            I'm using AWS_ACCESS_KEY_ID_FILE and AWS_SECRET_ACCESS_KEY_FILE in Traefik environment configuration.

            I could not find those env vars in the Lego source code [1]. Make sure that Lego is actually using your configured AWS credentials. The error message posted above suggests it's not using them and falls back to the instance profile instead.

            [1] https://github.com/go-acme/lego/blob/master/providers/dns/lightsail/lightsail.go#L81
            [2] https://docs.aws.amazon.com/cli/latest/reference/lightsail/create-domain-entry.html#examples
            [3] https://github.com/go-acme/lego/blob/master/providers/dns/lightsail/lightsail.go#L69
            [4] https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#instance-metadata-security-credentials

            Source https://stackoverflow.com/questions/68124714

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install acme-dns

            Install Go 1.13 or newer. Move the built acme-dns binary to a directory in your $PATH, for example: sudo mv acme-dns /usr/local/bin. Edit config.cfg to suit your needs (see configuration). acme-dns will read the configuration file from /etc/acme-dns/config.cfg or ./config.cfg, or a location specified with the -c flag. If your system has systemd, you can optionally install acme-dns as a service so that it will start on boot and be tracked by systemd. This also allows us to add the CAP_NET_BIND_SERVICE capability so that acme-dns can be run by a user other than root. If you did not install the systemd service, run acme-dns. Please note that acme-dns needs to open a privileged port (53, domain), so it needs to be run with elevated privileges.
            Install Go 1.13 or newer.
            Build acme-dns:
            Move the built acme-dns binary to a directory in your $PATH, for example: sudo mv acme-dns /usr/local/bin
            Edit config.cfg to suit your needs (see configuration). acme-dns will read the configuration file from /etc/acme-dns/config.cfg or ./config.cfg, or a location specified with the -c flag.
            If your system has systemd, you can optionally install acme-dns as a service so that it will start on boot and be tracked by systemd. This also allows us to add the CAP_NET_BIND_SERVICE capability so that acme-dns can be run by a user other than root. Make sure that you have moved the configuration file to /etc/acme-dns/config.cfg so that acme-dns can access it globally. Move the acme-dns executable from ~/go/bin/acme-dns to /usr/local/bin/acme-dns (Any location will work, just be sure to change acme-dns.service to match). Create a minimal acme-dns user: sudo adduser --system --gecos "acme-dns Service" --disabled-password --group --home /var/lib/acme-dns acme-dns. Move the systemd service unit from acme-dns.service to /etc/systemd/system/acme-dns.service. Reload systemd units: sudo systemctl daemon-reload. Enable acme-dns on boot: sudo systemctl enable acme-dns.service. Run acme-dns: sudo systemctl start acme-dns.service.
            If you did not install the systemd service, run acme-dns. Please note that acme-dns needs to open a privileged port (53, domain), so it needs to be run with elevated privileges.

            Support

            acme-dns is open for contributions. If you have an idea for improvement, please open an new issue or feel free to write a PR!.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/joohoi/acme-dns.git

          • CLI

            gh repo clone joohoi/acme-dns

          • sshUrl

            git@github.com:joohoi/acme-dns.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular DNS Libraries

            AdGuardHome

            by AdguardTeam

            coredns

            by coredns

            sealos

            by fanux

            sshuttle

            by sshuttle

            dns

            by miekg

            Try Top Libraries by joohoi

            godance

            by joohoiGo

            focli

            by joohoiPython

            pyacmedns

            by joohoiPython

            blight

            by joohoiPython