Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    dnssec-keygen unknown algorithm HMAC-MD5

    Scheduled Pinned Locked Moved DHCP and DNS
    17 Posts 4 Posters 14.8k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • viktor_gV
      viktor_g Netgate
      last edited by

      correct command is tsig-keygen:

      # tsig-keygen -a HMAC-MD5 myhost.dyn.example.com.
      key "myhost.dyn.example.com." {
      	algorithm hmac-md5;
      	secret "2IGG/tbbiMXUwdoHNUxigQ==";
      };
      
      1 Reply Last reply Reply Quote 2
      • R
        rayures @Gertjan
        last edited by

        @Gertjan said in dnssec-keygen unknown algorithm HMAC-MD5:

        You are running bind on pfSense ?

        yes

        BIND 9.14.12 (Stable Release) <id:f3dc26e>
        

        What about installing the native FreeBSD package bind9utils ?

        pkg install bind-tools-9.14.12
        

        ( current with pfSense 2.4.5 - FreeBSD 11.3 )

        tnx for the suggestion for a other machine with BIND just for this.

        @viktor_g said in dnssec-keygen unknown algorithm HMAC-MD5:

        correct command is tsig-keygen:

        # tsig-keygen -a HMAC-MD5 myhost.dyn.example.com.
        key "myhost.dyn.example.com." {
        	algorithm hmac-md5;
        	secret "2IGG/tbbiMXUwdoHNUxigQ==";
        };
        

        tnx. tsig-keygen works!

        // the netgate docs should be updated with this.

        GertjanG 1 Reply Last reply Reply Quote 0
        • GertjanG
          Gertjan @rayures
          last edited by

          @rayures said in dnssec-keygen unknown algorithm HMAC-MD5:

          // the netgate docs should be updated with this.

          The doc is based on the philosophy that pfSense is a firewall router, using RFC 2136 to make it's WAN IP known by using updating a (master) domain name server.
          These domain name servers, references by there NS records, normally have very static IP's - not the iones that RFC 2136 imply.
          Also, file, web and media servers (services) do not belong on a firewall.

          True, one can install 'bind' and use it as a local (master ?) name server. But : should it ?
          The doc, as stated above, shows the real-live scenario, how RFC 2136 is (more) normally implemented.

          Btw : the acme package use an API that uses bind's "nsupdate", a somewhat identical remote record updating mechanism.

          No "help me" PM's please. Use the forum, the community will thank you.
          Edit : and where are the logs ??

          R 1 Reply Last reply Reply Quote 0
          • R
            rayures @Gertjan
            last edited by rayures

            @Gertjan

            No matter the philosophy de docs are based on, it contains old(?) and inaccurate information. It should be updated.

            // i got it al working now via GUI. kinda easy if you now how.

            for future reference:

            1. generate key via pfsense command prompt [diagnostics / command prompt / exceture shell command]
              command:
            tsig-keygen -a HMAC-SHA512 example.com
            

            output:

            key "example.com" {
            	algorithm hmac-sha512;
            	secret "VERYLONGSECRETKEY==";
            };
            
            1. paste output in BIND global settings [services - bind dns server - settings - show advanced options - advanced features - global settings]

            2. edit your BIND Zone [ services - bind dns server - Zones]

            • enable 'update policy': grant example.com self example.com ANY; //beware: this could break ACME updates
            • save
            1. add RFC2136 client [services - dynamic dns - RFC2136 clients]
            • enable
            • interface: WAN
            • Hostname: example.com
            • Key name: example.com
            • Key Algo: HMAC-SHA512
            • key: VERYLONGSECRETKEY==
            • Server: 127.0.0.1 //server where BIND is running;
            • Use Public IP: enable // if necessary
            • Description: what you want
            • Save
            1. Look at the logs [Status - Sytem Logs - System - DNS Resolver]
              see something like:
            update: info: client @0x802e58e00 192.168.0.2#63676/key example.com: view default: updating zone 'example.com/IN': adding an RR at 'example.com' A 123.123.123.123
            

            celebrate :-)

            1. for test purposes use DNS lookup [Diagnostics - DNS Lookup]
            • hostname: example.com
              see resulting IP adress from A record.

            //small update because i had issues with ACME updates after this.

            generated an extra key for acme updates and added it to BIND global settings (see 2.)

            tsig-keygen -a HMAC-SHA512 acme-update
            

            add the keyname and secret to your ACME certificate options under 'method - DNS-NSupdate/RFC2136'

            add to BIND zone update-policy:

            grant "example.com" selfsub example.com A; grant "acme-update" name _acme-challenge.example.com TXT;
            

            the ddns key can only update the A record, and ACME can only update the TXT record.

            1 Reply Last reply Reply Quote 0
            • L
              lelik67
              last edited by

              @rayures said in dnssec-keygen unknown algorithm HMAC-MD5:

              tsig-keygen -a HMAC-SHA512 example.com

              Which version of pfSense/FreeBSD you have?

              tsig-keygen -a HMAC-SHA512 host.example.com
              

              gives me

              tsig-keygen: Command not found.
              

              and

              dnssec-keygen -a HMAC-SHA512 -b 512 -n HOST host.example.com
              

              gives

              dnssec-keygen: fatal: unknown algorithm HMAC-SHA512
              

              Am I missing somethning?

              GertjanG viktor_gV 2 Replies Last reply Reply Quote 0
              • GertjanG
                Gertjan @lelik67
                last edited by

                @lelik67 said in dnssec-keygen unknown algorithm HMAC-MD5:

                Am I missing somethning?

                It was available, tsig-keygen
                Not any more in 2.4.5-p1 .... ?

                I can just subscribe to your @metoo

                No "help me" PM's please. Use the forum, the community will thank you.
                Edit : and where are the logs ??

                1 Reply Last reply Reply Quote 0
                • viktor_gV
                  viktor_g Netgate @lelik67
                  last edited by

                  @lelik67 said in dnssec-keygen unknown algorithm HMAC-MD5:

                  tsig-keygen -a HMAC-SHA512 host.example.com

                  pfSense 2.4.5-p1, bind pkg 9.14_4:

                  [2.4.5-RELEASE][root@pf245p1.lab.int]/root: tsig-keygen -a HMAC-SHA512 host.example.com
                  key "host.example.com" {
                  	algorithm hmac-sha512;
                  	secret "7ZhDCogKtFOXdcQeanXCApoKeeqM3Wf7h7oZGTy1Vk+F6ecQjOleMoEE8ikzNdpIAElEbWqnedyuxddmXUxtRw==";
                  };
                  
                  1 Reply Last reply Reply Quote 0
                  • GertjanG
                    Gertjan
                    last edited by

                    @viktor_g said in dnssec-keygen unknown algorithm HMAC-MD5:

                    tsig-keygen -a HMAC-SHA512 host.example.com

                    Interesting :

                    [2.4.5-RELEASE][admin@pfsense.brit-hotel-fumel.net]/root: tsig-keygen -a HMAC-SHA512 host.example.com
                    tsig-keygen: Command not found.
                    

                    I should login as root ?

                    No "help me" PM's please. Use the forum, the community will thank you.
                    Edit : and where are the logs ??

                    viktor_gV 1 Reply Last reply Reply Quote 0
                    • viktor_gV
                      viktor_g Netgate @Gertjan
                      last edited by

                      @Gertjan try /usr/local/sbin/tsig-keygen

                      1 Reply Last reply Reply Quote 0
                      • GertjanG
                        Gertjan
                        last edited by

                        I already looked over there.
                        No tsig-keygen
                        Neither elsewhere.

                        A

                        grep -R 'tsig-keygen' *
                        

                        goes 'unknown'.

                        Is it part of a 'dns-tools' FreeBSD package ?

                        No "help me" PM's please. Use the forum, the community will thank you.
                        Edit : and where are the logs ??

                        viktor_gV 1 Reply Last reply Reply Quote 0
                        • viktor_gV
                          viktor_g Netgate @Gertjan
                          last edited by

                          @Gertjan it's part of the pfSense-pkg-bind package

                          1 Reply Last reply Reply Quote 0
                          • GertjanG
                            Gertjan
                            last edited by

                            Ok, .....

                            [2.4.5-RELEASE][root@priv.brit-hotel-fumel.net]/root: pkg install pfSense-pkg-bind
                            Updating pfSense-core repository catalogue...
                            pfSense-core repository is up to date.
                            Updating pfSense repository catalogue...
                            pfSense repository is up to date.
                            All repositories are up to date.
                            The following 3 package(s) will be affected (of 0 checked):
                            
                            New packages to be INSTALLED:
                                    bind914: 9.14.12 [pfSense]
                                    lmdb: 0.9.24_1,1 [pfSense]
                                    pfSense-pkg-bind: 9.14_4 [pfSense]
                            
                            Number of packages to be installed: 3
                            
                            The process will require 17 MiB more space.
                            3 MiB to be downloaded.
                            
                            Proceed with this action? [y/N]: N
                            

                            This also installs bind ?

                            No "help me" PM's please. Use the forum, the community will thank you.
                            Edit : and where are the logs ??

                            viktor_gV 1 Reply Last reply Reply Quote 0
                            • viktor_gV
                              viktor_g Netgate @Gertjan
                              last edited by

                              @Gertjan Right

                              1 Reply Last reply Reply Quote 0
                              • viktor_gV
                                viktor_g Netgate
                                last edited by viktor_g

                                # pkg info -l bind914 | grep tsig-keygen
                                	/usr/local/man/man8/tsig-keygen.8.gz
                                	/usr/local/sbin/tsig-keygen
                                
                                1 Reply Last reply Reply Quote 0
                                • GertjanG
                                  Gertjan
                                  last edited by

                                  Ok, thanks.

                                  As I said at the beginning of this thread : I'm using a remote bind server to do the rfc2136 - so I do have the tools ( dnssec-keygen on the bind server == not pfSense) that does the work for me.

                                  @rayures has a point, that, I can't deny.

                                  No "help me" PM's please. Use the forum, the community will thank you.
                                  Edit : and where are the logs ??

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post
                                  Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.