@@ -98,11 +98,11 @@ function soa_dnssec_create(&$data) {
9898
9999 //* Verify that we do not already have keys (overwriting-protection)
100100 if ($ data ['old ' ]['dnssec_algo ' ] == $ data ['new ' ]['dnssec_algo ' ]) {
101- if (file_exists ($ dns_config ['bind_zonefiles_dir ' ].'/dsset- ' .$ domain .'. ' )) {
101+ if (file_exists ($ dns_config ['bind_keyfiles_dir ' ].'/dsset- ' .$ domain .'. ' )) {
102102 return $ this ->soa_dnssec_update ($ data );
103103 } else if ($ data ['new ' ]['dnssec_initialized ' ] == 'Y ' ) { //In case that we generated keys but the dsset-file was not generated
104104 $ keycount =0 ;
105- foreach (glob ($ dns_config ['bind_zonefiles_dir ' ].'/K ' .$ domain .'*.key ' ) as $ keyfile ) {
105+ foreach (glob ($ dns_config ['bind_keyfiles_dir ' ].'/K ' .$ domain .'*.key ' ) as $ keyfile ) {
106106 $ keycount ++;
107107 }
108108 if ($ keycount > 0 ) {
@@ -116,11 +116,11 @@ function soa_dnssec_create(&$data) {
116116 $ dnssec_algo = explode (', ' ,$ data ['new ' ]['dnssec_algo ' ]);
117117
118118 //* Create the Zone Signing and Key Signing Keys
119- if (in_array ('ECDSAP256SHA256 ' ,$ dnssec_algo ) && count (glob ($ dns_config ['bind_zonefiles_dir ' ].'/K ' .$ domain .'.+013*.key ' )) == 0 ) {
120- $ app ->system ->exec_safe ('cd ?; dnssec-keygen -3 -a ECDSAP256SHA256 -n ZONE ?; dnssec-keygen -f KSK -3 -a ECDSAP256SHA256 -n ZONE ? ' , $ dns_config ['bind_zonefiles_dir ' ], $ domain , $ domain );
119+ if (in_array ('ECDSAP256SHA256 ' ,$ dnssec_algo ) && count (glob ($ dns_config ['bind_keyfiles_dir ' ].'/K ' .$ domain .'.+013*.key ' )) == 0 ) {
120+ $ app ->system ->exec_safe ('cd ?; dnssec-keygen -3 -a ECDSAP256SHA256 -n ZONE ?; dnssec-keygen -f KSK -3 -a ECDSAP256SHA256 -n ZONE ? ' , $ dns_config ['bind_keyfiles_dir ' ], $ domain , $ domain );
121121 }
122- if (in_array ('NSEC3RSASHA1 ' ,$ dnssec_algo ) && count (glob ($ dns_config ['bind_zonefiles_dir ' ].'/K ' .$ domain .'.+007*.key ' )) == 0 ) {
123- $ app ->system ->exec_safe ('cd ?; dnssec-keygen -a NSEC3RSASHA1 -b 2048 -n ZONE ?; dnssec-keygen -f KSK -a NSEC3RSASHA1 -b 4096 -n ZONE ? ' , $ dns_config ['bind_zonefiles_dir ' ], $ domain , $ domain );
122+ if (in_array ('NSEC3RSASHA1 ' ,$ dnssec_algo ) && count (glob ($ dns_config ['bind_keyfiles_dir ' ].'/K ' .$ domain .'.+007*.key ' )) == 0 ) {
123+ $ app ->system ->exec_safe ('cd ?; dnssec-keygen -a NSEC3RSASHA1 -b 2048 -n ZONE ?; dnssec-keygen -f KSK -a NSEC3RSASHA1 -b 4096 -n ZONE ? ' , $ dns_config ['bind_keyfiles_dir ' ], $ domain , $ domain );
124124 }
125125
126126 $ this ->soa_dnssec_sign ($ data ); //Now sign the zone for the first time
@@ -149,17 +149,17 @@ function soa_dnssec_sign(&$data) {
149149
150150 //* Include ECDSAP256SHA256 keys in zone
151151 if (in_array ('ECDSAP256SHA256 ' ,$ dnssec_algo )) {
152- foreach (glob ($ dns_config ['bind_zonefiles_dir ' ].'/K ' .$ domain .'.+013*.key ' ) as $ keyfile ) {
153- $ includeline = '$INCLUDE ' . basename ( $ keyfile) ;
152+ foreach (glob ($ dns_config ['bind_keyfiles_dir ' ].'/K ' .$ domain .'.+013*.key ' ) as $ keyfile ) {
153+ $ includeline = '$INCLUDE ' . $ keyfile ;
154154 if (!preg_match ('@ ' .preg_quote ($ includeline ).'@ ' , $ zonefile )) $ zonefile .= "\n" .$ includeline ."\n" ;
155155 $ keycount ++;
156156 }
157157 }
158158
159159 //* Include NSEC3RSASHA1 keys in zone
160160 if (in_array ('NSEC3RSASHA1 ' ,$ dnssec_algo )) {
161- foreach (glob ($ dns_config ['bind_zonefiles_dir ' ].'/K ' .$ domain .'.+007*.key ' ) as $ keyfile ) {
162- $ includeline = '$INCLUDE ' . basename ( $ keyfile) ;
161+ foreach (glob ($ dns_config ['bind_keyfiles_dir ' ].'/K ' .$ domain .'.+007*.key ' ) as $ keyfile ) {
162+ $ includeline = '$INCLUDE ' . $ keyfile ;
163163 if (!preg_match ('@ ' .preg_quote ($ includeline ).'@ ' , $ zonefile )) $ zonefile .= "\n" .$ includeline ."\n" ;
164164 $ keycount ++;
165165 }
@@ -171,20 +171,20 @@ function soa_dnssec_sign(&$data) {
171171 file_put_contents ($ dns_config ['bind_zonefiles_dir ' ].'/ ' .$ filespre .$ domain , $ zonefile );
172172
173173 //* Sign the zone and set it valid for max. 16 days
174- $ app ->system ->exec_safe ('cd ?; dnssec-signzone -A -e +1382400 -3 $(head -c 1000 /dev/random | sha1sum | cut -b 1-16) -N increment -o ? -t ? ' , $ dns_config ['bind_zonefiles_dir ' ], $ domain , $ filespre .$ domain );
174+ $ app ->system ->exec_safe ('cd ?; dnssec-signzone -A -e +1382400 -3 $(head -c 1000 /dev/random | sha1sum | cut -b 1-16) -N increment -o ? -K ? - t ? ' , $ dns_config ['bind_zonefiles_dir ' ], $ domain , $ dns_config [ ' bind_keyfiles_dir ' ], $ dns_config [ ' bind_zonefiles_dir ' ]. ' / ' . $ filespre .$ domain );
175175
176176 //* Write Data back ino DB
177- $ dnssecdata = "DS-Records: \n" .file_get_contents ($ dns_config ['bind_zonefiles_dir ' ].'/dsset- ' .$ domain .'. ' );
177+ $ dnssecdata = "DS-Records: \n" .file_get_contents ($ dns_config ['bind_keyfiles_dir ' ].'/dsset- ' .$ domain .'. ' );
178178 $ dnssecdata .= "\n------------------------------------ \n\nDNSKEY-Records: \n" ;
179179
180180 if (in_array ('ECDSAP256SHA256 ' ,$ dnssec_algo )) {
181- foreach (glob ($ dns_config ['bind_zonefiles_dir ' ].'/K ' .$ domain .'.+013*.key ' ) as $ keyfile ) {
181+ foreach (glob ($ dns_config ['bind_keyfiles_dir ' ].'/K ' .$ domain .'.+013*.key ' ) as $ keyfile ) {
182182 $ dnssecdata .= file_get_contents ($ keyfile )."\n\n" ;
183183 }
184184 }
185185
186186 if (in_array ('NSEC3RSASHA1 ' ,$ dnssec_algo )) {
187- foreach (glob ($ dns_config ['bind_zonefiles_dir ' ].'/K ' .$ domain .'.+007*.key ' ) as $ keyfile ) {
187+ foreach (glob ($ dns_config ['bind_keyfiles_dir ' ].'/K ' .$ domain .'.+007*.key ' ) as $ keyfile ) {
188188 $ dnssecdata .= file_get_contents ($ keyfile )."\n\n" ;
189189 }
190190 }
@@ -213,7 +213,7 @@ function soa_dnssec_update(&$data, $new=false) {
213213 return false ;
214214 }
215215
216- if (!$ new && !file_exists ($ dns_config ['bind_zonefiles_dir ' ].'/dsset- ' .$ domain .'. ' )) $ this ->soa_dnssec_create ($ data );
216+ if (!$ new && !file_exists ($ dns_config ['bind_keyfiles_dir ' ].'/dsset- ' .$ domain .'. ' )) $ this ->soa_dnssec_create ($ data );
217217
218218 $ dbdata = $ app ->db ->queryOneRecord ('SELECT id,serial FROM dns_soa WHERE id=? ' , intval ($ data ['new ' ]['id ' ]));
219219 $ app ->system ->exec_safe ('cd ?; named-checkzone ? ? | egrep -ho \'[0-9]{10} \'' , $ dns_config ['bind_zonefiles_dir ' ], $ domain , $ dns_config ['bind_zonefiles_dir ' ].'/ ' .$ filespre .$ domain );
@@ -237,12 +237,12 @@ function soa_dnssec_delete(&$data) {
237237
238238 $ domain = substr ($ data ['new ' ]['origin ' ], 0 , strlen ($ data ['new ' ]['origin ' ])-1 );
239239
240- $ key_files = glob ($ dns_config ['bind_zonefiles_dir ' ].'/K ' .$ domain .'.+* ' );
240+ $ key_files = glob ($ dns_config ['bind_keyfiles_dir ' ].'/K ' .$ domain .'.+* ' );
241241 foreach ($ key_files as $ file ) {
242242 unlink ($ file );
243243 }
244244 unlink ($ dns_config ['bind_zonefiles_dir ' ].'/ ' .$ this ->zone_file_prefix ().$ domain .'.signed ' );
245- unlink ($ dns_config ['bind_zonefiles_dir ' ].'/dsset- ' .$ domain .'. ' );
245+ unlink ($ dns_config ['bind_keyfiles_dir ' ].'/dsset- ' .$ domain .'. ' );
246246
247247 if ($ app ->dbmaster !== $ app ->db ) $ app ->dbmaster ->query ('UPDATE dns_soa SET dnssec_info= \'\', dnssec_initialized= \'N \' WHERE id=? ' , intval ($ data ['new ' ]['id ' ]));
248248 $ app ->db ->query ('UPDATE dns_soa SET dnssec_info= \'\', dnssec_initialized= \'N \' WHERE id=? ' , intval ($ data ['new ' ]['id ' ]));
0 commit comments