One Hat Cyber Team
  • Dir : ~/scripts/
  • View File Name : gencrt
    }; print ""; } if ($send_key_yn) { open( SENDMAIL, "|/usr/sbin/sendmail -t" ); print SENDMAIL "To: $contactemail\n"; print SENDMAIL "To: $xemail\n"; print SENDMAIL "From: ssl\@$hostname\n"; print SENDMAIL "Subject: SSL RSA PRIVATE KEY for $host ($gendate)\n\n"; print SENDMAIL $key; close(SENDMAIL); } #--------------------------- my $csr; eval { $csr = Cpanel::SSL::Create::csr( key => $key, subject_names => [ [ dNSName => $host ], ], subject => [ [ countryName => $country ], [ emailAddress => $email ], [ localityName => $city ], [ organizationName => $co, ], [ organizationalUnitName => $cod ], [ stateOrProvinceName => $state ], ], ); } or die "Failed to generate the CSR: $@"; if ( !-t STDIN ) { print "
    CSR (Certificate Signing Request)
    ";
        print qq{};
        print "
    "; } open( SENDMAIL, "|/usr/sbin/sendmail -t" ); print SENDMAIL "To: $contactemail\n"; print SENDMAIL "To: $xemail\n"; print SENDMAIL "From: ssl\@$hostname\n"; print SENDMAIL "Subject: SSL CERTIFICATE SIGNING REQUEST for $host ($gendate)\n\n"; print SENDMAIL<new(); my ( $keyfile, $key_fh ) = $tf->file(); print {$key_fh} $key; close $key_fh; my $gen = $openssl->generate_cert( { 'keyfile' => $keyfile, 'country' => $country, 'state' => $state, 'city' => $city, 'company' => $co, 'division' => $cod, 'hostname' => $host, 'email' => $email, } ); die "$gen->{'stderr'}\n" if !$gen->{'status'}; $cert = $gen->{'stdout'}; } if ( !-t STDIN ) { print "
    CRT (Self Signed Certificate)
    ";
        print qq{};
        print "
    "; } my ( $ok, $sslstorage ) = Cpanel::SSLStorage::User->new(); die "$sslstorage\n" if !$ok; my $err; ( $ok, $err ) = $sslstorage->add_key( 'text' => $key ); die "$err\n" if !$ok; ( $ok, $err ) = $sslstorage->add_certificate( 'text' => $cert ); die "$err\n" if !$ok; ( $ok, $err ) = $sslstorage->add_csr( 'text' => $csr ); die "$err\n" if !$ok;