Marius Burkard
2016-01-29 b8f4caccb73052b9d7488b592ed4854958a4dc76
refs
author Marius Burkard <m.burkard@pixcept.de>
Friday, January 29, 2016 10:25 -0500
committer Marius Burkard <m.burkard@pixcept.de>
Friday, January 29, 2016 10:25 -0500
commitb8f4caccb73052b9d7488b592ed4854958a4dc76
tree 7acb45f8b36d77e71e669b774f2e120db2b5535c tree | zip | gz
parent ab0d78da3371c569cd7ca0832339bd5de8ad3544 view | diff
ecb8fc2c5b3c1b42e15e3e44d287a650ef3b6aa6 view | diff
Merge branch 'dns-dnssec' into 'stable-3.1'

DNSSEC-Implementation for BIND-Users (Including TLSA for DANE)

This implements DNSSEC on a full automatic base. Whenever a zone gets added, changed or deleted it will be signed (or in case of deletion the keys get deleted) This adds full dnssec capabilities to the system.

Hints:
- DNSKEY-Records are not visible within ISPConfig as they get added by a script by the server cron.
- If there is low available entropy (<400 bits) new keys will not generate. In this case the zonefile (which was never signed before) stays unsigned until next change of soa or any rr in that zone. IF a key exists zone files will always be signed.
- I recommend installing haveged - especially on VMs - which raises available entropy by a huge amount of bits
- only de and en language included.
- DNSSEC can be switched on/off on a per zone base and is only available for primary zones (of course).
- Zone-Transfers will transfer the signed zone if DNSSEC is enabled for the originating zone

The scripts have been tested on my productive 3.0 server for about 4 weeks as well as a functional test for any scenarios I thought about in my 3.1 testing environment.

More info (older version): https://www.howtoforge.com/community/threads/bit-hacky-implementation-of-dnssec-patch-and-tlsa-dane.71829/

ANOTHER HINT: Currently the New zone Wizard is not working. This also happens in latest ISPC master branch so I ignored that and filed a bug report: http://bugtracker.ispconfig.org/index.php?do=details&task_id=4069


//Edit:
One more note: I left the wizard/templates unchanged as it is buggy at the moment. Providing a checkbox to switch dnssec_wanted between Y and N is up to you here. Should not be too complicated though...

See merge request !269
17 files added
15 files modified
1342 ■■■■■ changed files
TODO.txt 4 ●●●● diff | view | raw | blame | history
install/lib/installer_base.lib.php 25 ●●●●● diff | view | raw | blame | history
install/sql/incremental/upd_dev_collection.sql 10 ●●●●● diff | view | raw | blame | history
install/sql/ispconfig3.sql 6 ●●●● diff | view | raw | blame | history
install/tpl/named.conf.options.master 28 ●●●●● diff | view | raw | blame | history
interface/web/dns/dns_ds_edit.php 53 ●●●●● diff | view | raw | blame | history
interface/web/dns/dns_loc_edit.php 53 ●●●●● diff | view | raw | blame | history
interface/web/dns/dns_tlsa_edit.php 161 ●●●●● diff | view | raw | blame | history
interface/web/dns/form/dns_ds.tform.php 166 ●●●●● diff | view | raw | blame | history
interface/web/dns/form/dns_loc.tform.php 171 ●●●●● diff | view | raw | blame | history
interface/web/dns/form/dns_soa.tform.php 14 ●●●●● diff | view | raw | blame | history
interface/web/dns/form/dns_tlsa.tform.php 158 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/de_dns_ds.lng 17 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/de_dns_loc.lng 16 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/de_dns_soa.lng 3 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/de_dns_spf.lng 3 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/de_dns_tlsa.lng 16 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/en_dns_ds.lng 18 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/en_dns_loc.lng 16 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/en_dns_soa.lng 3 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/en_dns_spf.lng 3 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/lang/en_dns_tlsa.lng 16 ●●●●● diff | view | raw | blame | history
interface/web/dns/lib/remote.conf.php 3 ●●●●● diff | view | raw | blame | history
interface/web/dns/list/dns_a.list.php 2 ●●● diff | view | raw | blame | history
interface/web/dns/templates/dns_a_list.htm 3 ●●●●● diff | view | raw | blame | history
interface/web/dns/templates/dns_ds_edit.htm 32 ●●●●● diff | view | raw | blame | history
interface/web/dns/templates/dns_loc_edit.htm 32 ●●●●● diff | view | raw | blame | history
interface/web/dns/templates/dns_soa_edit.htm 10 ●●●●● diff | view | raw | blame | history
interface/web/dns/templates/dns_tlsa_edit.htm 32 ●●●●● diff | view | raw | blame | history
server/conf/bind_pri.domain.master 9 ●●●●● diff | view | raw | blame | history
server/lib/classes/cron.d/550-bind_dnssec.inc.php 89 ●●●●● diff | view | raw | blame | history
server/plugins-available/bind_plugin.inc.php 170 ●●●●● diff | view | raw | blame | history