File tree 2 files changed +7
-3
lines changed
2 files changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -871,8 +871,10 @@ const internalCertificate = {
871
871
logger . info ( `Requesting Let'sEncrypt certificates via ${ dns_plugin . display_name } for Cert #${ certificate . id } : ${ certificate . domain_names . join ( ', ' ) } ` ) ;
872
872
873
873
const credentialsLocation = '/etc/letsencrypt/credentials/credentials-' + certificate . id ;
874
- const credentialsCmd = 'mkdir -p /etc/letsencrypt/credentials 2> /dev/null; echo \'' + certificate . meta . dns_provider_credentials . replace ( '\'' , '\\\'' ) + '\' > \'' + credentialsLocation + '\' && chmod 600 \'' + credentialsLocation + '\'' ;
875
- const prepareCmd = 'pip install ' + dns_plugin . package_name + ( dns_plugin . version_requirement || '' ) + ' ' + dns_plugin . dependencies ;
874
+ // Escape single quotes and backslashes
875
+ const escapedCredentials = certificate . meta . dns_provider_credentials . replaceAll ( '\'' , '\\\'' ) . replaceAll ( '\\' , '\\\\' ) ;
876
+ const credentialsCmd = 'mkdir -p /etc/letsencrypt/credentials 2> /dev/null; echo \'' + escapedCredentials + '\' > \'' + credentialsLocation + '\' && chmod 600 \'' + credentialsLocation + '\'' ;
877
+ const prepareCmd = 'pip install ' + dns_plugin . package_name + ( dns_plugin . version_requirement || '' ) + ' ' + dns_plugin . dependencies ;
876
878
877
879
// Whether the plugin has a --<name>-credentials argument
878
880
const hasConfigArg = certificate . meta . dns_provider !== 'route53' ;
Original file line number Diff line number Diff line change @@ -181,7 +181,9 @@ const setupCertbotPlugins = () => {
181
181
182
182
// Make sure credentials file exists
183
183
const credentials_loc = '/etc/letsencrypt/credentials/credentials-' + certificate . id ;
184
- const credentials_cmd = '[ -f \'' + credentials_loc + '\' ] || { mkdir -p /etc/letsencrypt/credentials 2> /dev/null; echo \'' + certificate . meta . dns_provider_credentials . replace ( '\'' , '\\\'' ) + '\' > \'' + credentials_loc + '\' && chmod 600 \'' + credentials_loc + '\'; }' ;
184
+ // Escape single quotes and backslashes
185
+ const escapedCredentials = certificate . meta . dns_provider_credentials . replaceAll ( '\'' , '\\\'' ) . replaceAll ( '\\' , '\\\\' ) ;
186
+ const credentials_cmd = '[ -f \'' + credentials_loc + '\' ] || { mkdir -p /etc/letsencrypt/credentials 2> /dev/null; echo \'' + escapedCredentials + '\' > \'' + credentials_loc + '\' && chmod 600 \'' + credentials_loc + '\'; }' ;
185
187
promises . push ( utils . exec ( credentials_cmd ) ) ;
186
188
}
187
189
} ) ;
You can’t perform that action at this time.
0 commit comments