39 lines
1.3 KiB
Plaintext
39 lines
1.3 KiB
Plaintext
|
{
|
||
|
# use Data::Validate::IP;
|
||
|
use Net::IP qw(ip_is_ipv4 ip_is_ipv6);
|
||
|
our $KeySize = $modSSL{KeySize} ||'4096';
|
||
|
our $FQDN = "$SystemName.$DomainName";
|
||
|
our $Country = $modSSL{Country} || "--";
|
||
|
our $State = $modSSL{State} || "----";
|
||
|
our $commonName = $modSSL{CommonName} || $FQDN;
|
||
|
our $crt = "/home/e-smith/ssl.crt/$FQDN.crt";
|
||
|
our $key = "/home/e-smith/ssl.key/$FQDN.key";
|
||
|
our $defaultCity = $ldap{defaultCity} || '-';
|
||
|
our $defaultCompany = $ldap{defaultCompany} || $commonName ;
|
||
|
our $defaultDepartment = $ldap{defaultDepartment} || '-';
|
||
|
our $email = "admin\@$DomainName";
|
||
|
our @subjectAlt = `/sbin/e-smith/generate-subjectaltnames`;
|
||
|
chomp @subjectAlt;
|
||
|
our $subjectAltName = "";
|
||
|
my $i=0;
|
||
|
for my $elem (@subjectAlt) {
|
||
|
$subjectAltName .= ", " if $i>0;
|
||
|
$i++;
|
||
|
if (ip_is_ipv4($elem) || ip_is_ipv6($elem) ){
|
||
|
$subjectAltName .= "IP:$elem";
|
||
|
next;
|
||
|
}
|
||
|
$subjectAltName .= "DNS:$elem";
|
||
|
}
|
||
|
$subjectAltName = ( $subjectAltName eq "DNS: ")? "": $subjectAltName;
|
||
|
|
||
|
# crop fields that are too long for X509:
|
||
|
$Country = substr($Country, 0, 2);
|
||
|
$defaultCity = substr($defaultCity, 0, 128);
|
||
|
$defaultCompany = substr($defaultCompany, 0, 64);
|
||
|
$defaultDepartment = substr($defaultDepartment, 0, 64);
|
||
|
$email = substr($email, 0, 64);
|
||
|
$commonName = substr($commonName, 0, 64);
|
||
|
$OUT="";
|
||
|
}
|