Categories
Tutorial, Manual, Tips dan Trik

Yo, Bro Neo Dan Mbak Sis, Pakai Baju HTTPS Dong

Menurut teman-teman BPTSI yang mengikuti pelatihan dan sertifikasi analisis keamana siber, salah satu PR website publik milik instansi/institusi adalah absennya HTTPS. Padahal HTTPS itu sangat penting untuk melindungi data dari penyadapan di tengah meningkatnya kejahatan siber.

Neo Feeder PDDIKTI (Neo Feeder) dan Sister PDDIKTI (Sister) merupakan beberapa perangkat yang disediakan oleh Kementrian Pendidikan dan Kebudayaan untuk melakukan pelaporan data transaksi akademik dosen dan mahasiswa. Tidak jarang dua perangkat dapat diakses oleh publik dengan username dan password masing-masing agar memudahkan proses.

Nah, di bawah ini adalah beberapa cara untuk mengaktifkan HTTPS di Sister dan Neo Feeder.

Daftar Isi

HTTPS Bro Neo dan Mbak Sis

HTTPS merupakan salah satu hal yang penting dalam mengamankan data Neo Feeder PDDIKTI dan Sister PDDIKTI. Tanpa itu, username, password dan data-data akan terlihat dengan jelas di jaringan, apalagi apabila dapat diakses oleh publik.

— Yo, Bro Neo Dan Mbak Sis, Pakai Baju HTTPS Dong
https://pdsi.unisayogya.ac.id/yo-bro-neo-dan-mbak-sis-pakai-baju-https-dong/ 2022-06-07 16:44:46

Modul: Moco Dulu (Baca Dulu)

Kebutuhan

  • Alamat
    • Sister: sister-nonhttps.example.com:8890
    • Neo Feeder: feeder.example.com:8100 untuk skenario on the spot, feeder-nonhttps.example.com:8100 untuk skenario menggunakan proxy
  • Memiliki sertifikat SSL yang berada di folder /pathSSL. Belum punya? Baca di sini jika belum punya.
  • Server Web berbasis Ubuntu

Skenario Sister: Tidak Memiliki User dan Password Sudoers

Server Sister tidak dapat dikonfigurasi karena tidak memiliki user dan password sudoers, sehingga HTTPS untuk sister menggunakan Proxy.

Pada server Web,

Pertama, buat berkas konfigurasi untuk virtual host sister

nano /etc/apache2/sites-available/sister-proxy.conf

Kedua, definisikan proses proxy ke server Sister

<IfModule mod_ssl.c>
  <VirtualHost _default_:80>
    ServerName sister.example.com
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteCond %{SERVER_PORT} ^80$
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,R=permanent]
  </VirtualHost>
  <VirtualHost _default_:443>
    ServerAdmin webmaster@localhost
    ServerName sister.example.com
    ErrorLog ${APACHE_LOG_DIR}/sister_proxy_error.log
    SSLEngine on
    SSLCertificateFile    /pathSSL/certificate.crt
    SSLCertificateKeyFile /pathSSL/certificate.key
    SSLCertificateChainFile /pathSSL/certificate.ca-bundle
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
    ProxyPreserveHost On
    ProxyPass /  http://sister-nonhttps.example.com:8890/ timeout=3600 KeepAlive=on
    ProxyPassReverse /  http://sister-nonhttps.example.com:8890/
    Header add Content-Security-Policy "upgrade-insecure-requests"
    RequestHeader set Content-Security-Policy "upgrade-insecure-requests"
  </VirtualHost>
</IfModule>

Ketiga, uji konfigurasi. Ulangi langkah kedua apabila terjadi kesalahan

a2ensite sister-proxy
apachectl configtest

Keempat, restart apache2 agar proxy dijalankan. Sister dapat diakses dengan alamat https://sister.example.com

service apache2 restart

Skenario Alternatif Neo Feeder: HTTPS On The Spot

Pada server Neo Feeder,

Pertama, buka C:\NEO FEEDER\nginx\conf\nginx.conf

Kedua, tambahkan baris berikut agar Neo Feeder dapat diakses menggunakan HTTPS dengan alamat https://feeder.example.com:8100

server {
listen 8100 ssl http2;
server_name localhost;
ssl_certificate C:\PathSSL\chain-ssl.crt;
ssl_certificate_key C:\PathSSL\ssl.key;

Skenario Neo Feeder: Menggunakan Proxy

Pada server Web,

Pertama, buat berkas konfigurasi untuk virtual host feeder

nano /etc/apache2/sites-available/feeder-proxy.conf

Kedua, definisikan proses proxy ke server Neo Feeder

<IfModule mod_ssl.c>
  <VirtualHost _default_:80>
    ServerName feeder.example.com
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteCond %{SERVER_PORT} ^80$
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,R=permanent]
  </VirtualHost>
  <VirtualHost _default_:443>
    ServerAdmin webmaster@localhost
    ServerName feeder.example.com
    ErrorLog ${APACHE_LOG_DIR}/feeder_proxy_error.log
    SSLEngine on
    SSLCertificateFile    /pathSSL/certificate.crt
    SSLCertificateKeyFile /pathSSL/certificate.key
    SSLCertificateChainFile /pathSSL/certificate.ca-bundle
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
    ProxyPreserveHost On
    ProxyPass /  http://feeder-nonhttps.example.com:8100/ timeout=3600 KeepAlive=on
    ProxyPassReverse /  http://feeder-nonhttps.example.com:8100/
    Header add Content-Security-Policy "upgrade-insecure-requests"
    RequestHeader set Content-Security-Policy "upgrade-insecure-requests"
  </VirtualHost>
</IfModule>

Ketiga, uji konfigurasi. Ulangi langkah kedua apabila terjadi kesalahan

a2ensite feeder-proxy
apachectl configtest

Keempat, restart apache2 agar proxy dijalankan. Neo Feeder dapat diakses dengan alamat https://feeder.example.com

service apache2 restart

Pada Server Feeder,

Pertama, Buka notepad sebagai admin.

Kedua, Klik file > open. Isikan pada filename: %WinDir%\System32\drivers\etc\hosts

Ketiga, tambahkan baris

127.0.0.1 feeder.example.com

Di dalam server Neo Feeder, Neo Feeder dapat diakses dengan alamat http://feeder.example.com:8100 (bukan https)

Demikian, semoga bermanfaat. [bst]

By basit

Biro Pengembangan Teknologi Dan Sistem Informasi

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.