Tag: auto enter password

  • เปลี่ยน Certificate!?

    เนื่อง Certificate *.psu.ac.th จาก Comodo เดิมซึ่งกลายเป็น Cert. ที่จัดว่า WEAK แล้ว ทางเจ้าหน้าที่เครือข่ายจึงได้ขอ Cert. ใหม่มา ที่ Strong ขึ้น 🙂 ก็ต้องมานั่งเปลี่ยน Cert. ในเครื่องที่ให้บริการขั้นตอนดังนี้

    • Download Cert. ใหม่มาซึ่งต้องติดต่อขอไปที่ Net@dmin โดยผ่านช่องทางของ help.psu.ac.th
    • ไฟล์ที่จะโหลดมาใช้งานมีทั้งหมด 3 ไฟล์ได้แก่ STAR_psu_ac_th.ca-bundle, STAR_psu_ac_th.crt และ STAR_psu_ac_th_key.key เมื่อดาวน์โหลดมาเสร็จแล้วให้เอาไปแทนที่เก่าได้เลย ในตัวอย่างนี้จะเก็บไว้ที่ /etc/ssl/private
    • ทีนี้ มาดู config เก่าของ apache2

    <IfModule mod_ssl.c>
    <VirtualHost *:443>
    ServerName bahamut.psu.ac.th
    ServerAdmin cc-server-admin@group.psu.ac.th
    DocumentRoot "/var/www/html"
    ErrorLog ${APACHE_LOG_DIR}/bahamut.ssl_error_log
    TransferLog ${APACHE_LOG_DIR}/bahamut.ssl_access_log
    LogLevel warn

    SSLEngine on
    SSLCertificateFile /etc/ssl/private/STAR_psu_ac_th.crt
    SSLCertificateKeyFile /etc/ssl/private/STAR_psu_ac_th.key
    SSLCertificateChainFile /etc/ssl/private/STAR_psu_ac_th.ca-bundle

    RewriteEngine On
    RewriteRule /avl https://licensing.psu.ac.th

    <Directory /var/www/licensing>
    AllowOverride All
    Order deny,allow
    Deny from all
    Allow from 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16
    </Directory>
    </VirtualHost>
    </IfModule>

      • จะเห็นว่าไฟล์ชื่อไม่ตรงอยู่ไฟล์หนึ่งคือ STAR_psu_ac_th.key ก็เปลี่ยนชื่อให้ตรง เป็นอันเสร็จ
      • แต่ … เนื่องจากเป็น Cert. ใหม่ เพื่อเพิ่มความแข็งแรง เจ้าหน้าที่เครือข่ายจึงได้กำหนด Passphrase ไว้ด้วย ต้องแก้ไขแฟ้ม /etc/apache2/mods-enabled/ssl.conf ในบรรทัดที่เขียนว่า SSLPassPhraseDialog exec:/usr/share/apache2/ask-for-passphrase ให้แก้ /usr/share/apache2/ask-for-passphrase เป็น /etc/ssl/private/passphrase-script แล้วสร้างแฟ้ม /etc/ssl/private/passphrase-script มีข้อความว่า

    #!/bin/sh
    echo "passphrase ที่ได้รับแจ้งจาก Net@dmin"

      • chmod +x /etc/ssl/private/passphrase-script และทดสอบ script ด้วยว่าผลลัพธ์ที่ได้ตรงกับ passphrase ที่ Net@dmin แจ้งมา
      • restart apache2 ด้วยคำสั่ง sudo service apache2 restart ถ้า passphrase ที่ใส่ไว้ในแฟ้ม passphrase-script ถูกต้องจะ restart สำเร็จ
      • เป็นอันเสร็จ

    สิ่งที่ต้องแก้เพื่อให้ได้ A+ ในการทดสอบกับเว็บ https://www.ssllabs.com/ssltest/analyze.html

    • แก้ไขแฟ้ม /etc/apache2/mods-enabled/ssl.conf โดยแก้ไข/เพิ่ม ข้อความดังต่อไปนี้

    SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:
    RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS
    SSLHonorCipherOrder on
    SSLProtocol all -SSLv3 -SSLv2
    SSLCompression off

    • sudo a2enmod headers เพื่อให้ module headers ของ apache2 ทำงาน
    • แก้ไขแฟ้มของไซต์ที่เปิด ssl ไว้ จากตัวอย่างนี้คือ /etc/apache2/sites-enabled/licensing-ssl.conf โดยเพิ่มข้อความว่า
      Header add Strict-Transport-Security "max-age=15768000;includeSubDomains"
    • ตัวอย่าง

    <IfModule mod_ssl.c>
    <VirtualHost *:443>
    ServerName licensing.psu.ac.th
    ServerAdmin cc-server-admin@group.psu.ac.th
    DocumentRoot "/var/www/html/avl"
    ErrorLog ${APACHE_LOG_DIR}/licensing.ssl_error_log
    TransferLog ${APACHE_LOG_DIR}/licensing.ssl_access_log
    LogLevel warn
    SSLEngine on
    Header add Strict-Transport-Security "max-age=15768000;includeSubDomains"
    SSLCertificateFile /etc/ssl/private/STAR_psu_ac_th.crt
    SSLCertificateKeyFile /etc/ssl/private/STAR_psu_ac_th.key
    SSLCertificateChainFile /etc/ssl/private/STAR_psu_ac_th.ca-bundle
    </VirtualHost>
    </IfModule>

    • restart apache2 ด้วยคำสั่ง sudo service apache2 restart
    • ทั้งหมดนี้ทำ บน Ubuntu 14.04.1
    • ผลของการตั้งค่าตามนี้ จะทำให้ผู้ใช้ที่ยังใช้งาน Windows XP และ IE6 ไม่สามารถใช้งานเว็บไซต์ได้
    • จบ ขอให้สนุกครับ

    จุดสังเกตุเมื่อเปลี่ยน certificate แล้ว
    ก่อนเปลี่ยนบน Chrome เบราเซอร์
    https-sharedrive-chrome-before-update-cert

    หลังเปลี่ยนบน Chrome เบราเซอร์
    after

    ที่มา:

    http://www.bauer-power.net/2014/04/how-to-enable-http-strict-transport.html#.VJJ8pXtKW7A

    http://www.hackido.com/2009/10/quick-tip-auto-enter-password-for-your.html