Root Sign Certificate 2/2

Ada banyak variasi dalam proses pembuatan/permohonan sertifikat SSL root sign. Dikatakan permohonan karena sertifikat yang diberikan 'ditandatangani' oleh penyedia jasa yang sudah diakui keberadaanya. Beberapa diantaranya verisign ,thawte , dan geotrust .

Perlu dipertimbangkan pihak reseller yang menawarkan harga lebih murah dari induknya. (mungkin sudah diatur demikian). Seperti pasarhosting dengan harga sekitar Rp.340.000,- bandingkan dengan induknya thawte yang membanderol harga $149 untuk produk sertifikat SSL yang sama. Dari pengamatan, pihak induk menyediakan fasilitas free trial selama sebulan untuk mencicipi sertifikat yang ditawarkan.

Bahasan ini mengikuti cara dyndns sebagai reseller.

  • Sebagai root pindah direktory ke /etc/httpd ----> root@hellfire:/etc/httpd#
  • Buat RSA private key ---> # openssl genrsa -des3 1024 > privatdech.key
  • Kemudian jawab pass phrase (password)

    Generating RSA private key, 1024 bit long modulus
    ...................++++++
    ........++++++
    e is 65537 (0x10001)
    Enter pass phrase:
    Verifying - Enter pass phrase:
  • Mungkin ingin melihat isi file yang dihasilkan ? Gunakan teks editor Anda :

    -----BEGIN RSA PRIVATE KEY-----
    Proc-Type: 4,ENCRYPTED
    DEK-Info: DES-EDE3-CBC,B22407DDD9034C7C

    8yx3ONzRjm6OADDJs40bESOthAj/pjrQjmw2RIg7pSSlEko6pmeDk4KlenEvWK57
    kcXjXJAinKfEquNa765ot9CCb/NFcR69A2m2t5PhGMtzeHE73CW4aPwFOrX5MMaI
    Kjy65MAVb7T+8iJYgBJhjHP/KnHqu51ejLbAiN3bbHJJu6YLZvrBfYCffYmzNuij
    2sQWkUyUKRg6wNRJ1bXLNDktNNkvueMZr2D+nxFldEBx7YD6dfk7F0YODCOOo8V2
    Jhz/V5uxv7LqzaVuTHHhErJOKzE/KmOcCLvMu2mv94ck2csSyg0V1BFyoWGvE2U6
    LGvbCoLzc8qDWEZBoyFvm3+m4Vh0VCs94bOxfvZ3pM4v30ldbM9YPX3TrxxowX+g
    by7wRtzxLyz/pEbYdgN387iUMpBQV2zzQkkv8CpjBXTD4B1BLWJQVfNN+yzQ88PZ
    uACnhjSt1lWXcP76p5PzUy4SM6bS89bQ9oVM0Aou2zTW+PQipDevdHB/qjN3P1zM
    evTiUeLF22MYBW67GV6b1TprWibHomZU3P3Z9U4sgOVI91vkKt71Umr5EBZkXtEd
    KbPulRu/JnWm51BQX/VKtwrKW4vji0YfOYX175gAyvYCbFuMiyh5FnVkgHyTUzyT
    VrOaLP1VQXcLTNtAThn3YCfgwYV5OJ+r3wXEUUkO9nyiU0Zx2vmjOLLPUv8lLby6
    d/A3TBLLkrxxrQ4MtGjKaKadr5rFfcaHX9oY/VciGp4JRb6WcB7wfK9dOEMUQ/do
    698tgKRzZiEEH9pp79BQExZKCwLsGnJ5zs++W6x/2tWpZqq+VxtA2A==
    -----END RSA PRIVATE KEY-----
  • Buat CSR (request sertifikat)
    # openssl req -new -key privatdech.key > privatdech.csr
  • Jawab pertanyaan yang muncul :
    Enter pass phrase for privatdech.key:
    You are about to be asked to enter information that will be incorporated
    into your certificate request.
    What you are about to enter is what is called a Distinguished Name or a DN.
    There are quite a few fields but you can leave some blank
    For some fields there will be a default value,
    If you enter '.', the field will be left blank.
    -----
    Country Name (2 letter code) [AU]:ID (harus standart ISO --> ID = Indonesia)
    State or Province Name (full name) [Some-State]:Jawa-Timur
    Locality Name (eg, city) []:Surabaya
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:GoodDay
    Organizational Unit Name (eg, section) []:my GoodDay
    Common Name (eg, YOUR name) []:www.domainAnda.com (Isi dengan domain Anda !!! bukan nama Anda :))
    Email Address []:michael.dar@gmail.com


    Please enter the following 'extra' attributes
    to be sent with your certificate request
    A challenge password []: (tidak perlu diisi)
    An optional company name []: (tidak perlu diisi)
  • Okay ! file privatdech.csr telah jadi, view isi file, copy dan siap dikirim untuk request

    -----BEGIN CERTIFICATE REQUEST-----
    MIIB4DCCAUkCAQAwgZ8xCzAJBgNVBAYTAklEMRMwEQYDVQQIEwpKYXdhLVRpbXVy
    MREwDwYDVQQHEwhTdXJhYmF5YTEQMA4GA1UEChMHR29vZERheTETMBEGA1UECxMK
    bXkgR29vZERheTEbMBkGA1UEAxMSd3d3LmRvbWFpbkFuZGEuY29tMSQwIgYJKoZI
    hvcNAQkBFhVtaWNoYWVsLmRhckBnbWFpbC5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD
    gY0AMIGJAoGBALjLtiI1IM2N/uBswzfUAva5U3Ao01b3qIJQolismGE6iJhotJ4Z
    6W1FiFQCHm657wp9UJuAJbZsCH5qyAlqmO0dw4wB6rIc+5qP6t61DNwVfmNZlFUl
    v4VYQAsS/UtZq74mruq4/OLla3JEzv6n2K1PWvVLcIuGv2GxdaRIb28rAgMBAAGg
    ADANBgkqhkiG9w0BAQUFAAOBgQAJuNIoYsb2cYJQcvzQJy4f/tOfL1pAg9wiKZ1g
    puL7lU5CL2mpfcvCeAGMU+N/tjD6zPgcLpcK+2rSW6NLwhGtWM+z5PpJ3HObUGUh
    U4nS20+RFYLjTHABhHdbwX26pEhM1cQHNP/gLWnb4oz3h8NJ5lUu0dT6qdCgBKp9
    UaoFdw==
    -----END CERTIFICATE REQUEST-----
  • Gambar di dyndns.
  • dyn2dyn2

  • copykan isi file privatdech.csr ke window yang telah disediakan dan klik continue.
  • Jangan kuatir, jika proses pembuatan file csr ada yang keliru, maka akan diberitahukan.
  • Setelah beberapa proses termasuk urusan charge biaya, maka tinggal menunggu kiriman e-mail untuk approver, bukti Anda yang mempunyai domain tersebut.
  • E-mail akan dikirim langsung dari pihak induk dalam kasus ini geotrust, dan Anda mesti approval. Satu masalah jika Anda tidak punya e-mail berbasis domain Anda.Jadi pihak geotrust tidak akan mengirim e-mail ke yahoo atau google mail. Jadi pilihan yang disediakan seperti admin@domainanda.com atau root@domainanda.com atau info@domainanda.com tentu Anda dapat mengakali hal ini untuk meredirect e-mail approver tersebut ke gmail Anda.
  • Setelah urusan approval dan charge biaya selesai, Anda akan menerima 3 hal dari reseller, bisa dicopy atau dikirim via e-mail :Server Certificate, Root CA Cert , dan Smart Icon html. Yang terakhir adalah banner kecil asal SSL Anda.

Implementasi Ke HTTPD Apache Webserver

  • Dengan editor Anda, copy pastekan isi file Server Certificate dan jadikan sebuah file misal Server.crt
    Berlaku sama untuk Root CA Cert yang Anda terima menjadi rootca.crt
  • Edit file /etc/httpd/extra/httpd-ssl.conf
    Edit bagian virtual host.
    < VirtualHost domainanda:443>
    # General setup for the virtual host
    DocumentRoot "/srv/httpd/folderweb ANda"
    ServerName www.domainanda.com:443
    ServerAdmin admin@domainanda.com
    ErrorLog "/var/log/httpd/error_log"
    TransferLog "/var/log/httpd/access_log"
  • Point ke File sertifikat
    SSLCertificateFile "/etc/httpd/server.crt"
    SSLCertificateKeyFile "/etc/httpd/privatdech.key"
    SSLCACertificatePath "/etc/httpd
    SSLCACertificateFile "/etc/httpd/rootca.crt"
  • Edit httpd.conf. Hilangkan tanda # pada baris dibawah ini:
    #LoadModule ssl_module lib64/httpd/modules/mod_ssl.so
    #Include /etc/httpd/extra/httpd-ssl.conf
  • restart httpd server : #apachectl -k restart
  • coba akses domain Anda dengan https://www.domainanda.com
  • semoga sukses !!

Beberapa catatan :

  • Mayoritas penyedia jasa sertifikat SSL membedakan antara domain tanpa www dengan www. Jadi jika Anda pesan sertifikat www.domainanda.com maka sertifikat ini tidak berlaku untuk domainanda.com (tanpa www) kecuali godaddy yang sekaligus memberikan keduanya (dengan atau tanpa www)
  • Jika ingin halaman tertentu saja yang secure, gunakan aplikasi mod_rewrite pada httpd apache untuk meredirect kehalaman tertentu.
  • Password pass phrase mesti diberikan saat restart webserver. (kerepotan yang pantas untuk situs komersial hehehe)
  • Sertifikat SSL tidak bisa buat situs yang share IP address (virtual host) Tentu Anda dapat menjalankan 4 virtualhost dengan 4 sertifikat jika anda punya 4 IP berbeda dalam server Anda.
  • Untuk tambahan Subdomain biasanya kena charge tambahan.
  • Jika situs Anda komersial dan ada urusan charge, lebih baik gunakan sertifikat root sign , meski (menurut saya) secara teknis sama amannya :)

Semoga memberi inspirasi !