pastioke.com
PHP

Self Signed SSL

Ditulis oleh Tim Pasti Oke

<form method='get'>
<input name='domainname' value='<? echo $_GET['domainname']?>'>
<button type='submit'>Submit</button>
</form>

<?php 
if($domain=$_GET['domainname']){

    // For SSL certificates, the  commonName is usually the domain name of
    // that will be using the certificate, but for S/MIME certificates,
    // the commonName will be the name of the individual who will use the certificate.
    $dn = array(
        "countryName" => "UK",
        "stateOrProvinceName" => "Somerset",
        "localityName" => "Glastonbury",
        "organizationName" => "The Brain Room Limited",
        "organizationalUnitName" => "PHP Documentation Team",
        "commonName" => $_GET['domainname'],
        "emailAddress" => "[email protected]"
    )
    
    // Generate a new private (and public) key pair
    $privkey = openssl_pkey_new()
    
    // Generate a certificate signing request
    $csr = openssl_csr_new($dn, $privkey)
    
    // You will usually want to create a self-signed certificate at this
    // point until your CA fulfills your request.
    // This creates a self-signed cert that is valid for 365 days
    $sscert = openssl_csr_sign($csr, null, $privkey, 365)
    
    // Now you will want to preserve your private key, CSR and self-signed
    // cert so that they can be installed into your web server.
    
    openssl_csr_export($csr, $csrout)// and var_dump($csrout)
    openssl_x509_export($sscert, $certout)// and var_dump($certout)
    openssl_pkey_export($privkey, $pkeyout, null)// and var_dump($pkeyout)
    
    echo "<textarea style='width:100%' rows='5'>$certout</textarea></hr><textarea  style='width:100%' rows='5'>$pkeyout</textarea>"
    
    // Show any errors that occurred here
    while (($e = openssl_error_string()) !== false) {
        echo $e . "\n"
    }
    
    //save certificate and privatekey to file
    file_put_contents($_GET['domainname']."_certificate.cer", $certout)
    file_put_contents($_GET['domainname']."_privatekey.pem", $pkeyout)
}
?>

Butuh solusi instan siap pakai?

Dapatkan modul & script server production-ready langsung di web store kami.

Kunjungi Toko Digital

Komentar

Belum ada komentar. Jadilah yang pertama memberikan komentar!

Kirim Komentar