Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for DNSSEC #2938

Merged
merged 46 commits into from
Oct 21, 2022
Merged

Conversation

jaapmarcus
Copy link
Member

@jaapmarcus jaapmarcus commented Sep 21, 2022

Please note this PR is not stable and should not be used in production

Due the price raises for .ch domain without DNSSEC support it made sense to add support for it.

Please note Syncing "Hestia" API will not get supported due to issues with it.

To enable it change manually edit DNSSEC in /usr/local/hestia/data/user/{user}/dns.conf and set DNSSEC='no' to 'yes' or add "DNSSEC='yes'

Then rebuild it.

See update information on how to enable it in combination with zone transfer below...

Bug in v-add-dns-record


Fix


A new NS DNSKEY Mix up


Don't add " 


Fix error 


Fix few typos
Bind need write access to the folder where .db file is stored
func/rebuild.sh Outdated Show resolved Hide resolved
@jaapmarcus
Copy link
Member Author

jaapmarcus commented Sep 23, 2022

Todo list

  1. Restore Backup
  2. Syncing
  3. Idn support / check
  4. general testing
  5. Web UI

@jaapmarcus
Copy link
Member Author

UI It self might need some ❤️

Screenshot 2022-10-02 at 21 48 32

@jaapmarcus jaapmarcus marked this pull request as ready for review October 3, 2022 19:59
@jaapmarcus jaapmarcus linked an issue Oct 4, 2022 that may be closed by this pull request
@jaapmarcus
Copy link
Member Author

Do not update to this branch if your server contains critical domains

Install branch:
Run v-update-sys-hestia-git jaapmarcus feature/dnssec-support

If you are planning to use it under a "single" setup without any "DNS cluster" just enable DNSSEC and run v-list-dnssec-public-key user domain.com plain DS or v-list-dnssec-public-key user domain.com plain to get the required DS or DNSKEY

For setting up a DNS Cluster:
On the "master"

Run v-update-sys-hestia-git jaapmarcus feature/dnssec-support

nano /usr/local/hestia/conf/hestia.conf

And edit: DNS_CLUSTER_SYSTEM='hestia' to DNS_CLUSTER_SYSTEM='zone'

Open /etc/bind/named.options and change the following:

allow-transfer {"none";};
Remove "none" and add your slaves ip separated by a ;
Add
also-notify { slaveip; };

On your slave:
Run v-update-sys-hestia-git jaapmarcus feature/dnssec-support

Open /etc/bind/named.options and change the following:

allow-recursion { 127.0.0.1; ::1;};;
Add masterip;

Add
allow-notify{ masterip; };

Now setup the slave as you would normally do.

Copy link
Member

@ScIT-Raphael ScIT-Raphael left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Testing went properly, couldnt find any bug.

@ScIT-Raphael ScIT-Raphael merged commit bc4a07e into hestiacp:main Oct 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Feature: DNSSec for domains
2 participants