Artikel berikut akan menjelaskan secara singkat memasang self-signed SSL Jupyter Notebook. Salah satu hal yang mendasar yang dibutuhkan oleh seorang praktisi data sains adalah alat yang memudahkan baginya melakukan pre-proses data dan mengolah data sebelum dimasukkan ke dalam pembelajaran mesin. Bagi mereka yang menggunakan python untuk mengolah dan melakukan pelatihan pada data maka Jupyterhub Notebook mestinya sudah tidak asing lagi.
Perlu diketahui ada Jupyter, Jupyterhub, dan ada Jupyterlab. Tiga aplikasi ini mirip dan hanya berbeda fungsi. Jupyter digunakan untuk pengguna tunggal, sedangkan Jupyterhub digunakan untuk banyak pengguna. Sedangkan Jupyterlab merupakan Jupyter versi terbaru dengan antarmuka yang lebih baik. Saya tidak akan membahas detil satu-satu dan hanya akan membahas Jupyterhub.
Ada beberapa cara dan sudah sangat banyak langkah-langkah bagaimana memasangnya. Kali ini saya mencoba fokus bagaimana membuat Jupyterhub Notebook yang biasa kita akses berjalan pada protokol yang lebih aman yakni SSL. Server yang saya gunakan untuk membangun self-signed SSL Jupyter Notebook adalah GNU/Linux Ubuntu 16.04 edisi server. Silakan cek kembali dengan perintah
lsb_release -a
Selanjutnya cek terlebih dahulu apakah paket openssl ada pada server kita dengan cara:
which openssl
Seharusnya muncul dimana letak paket openssl yang kita miliki. Jika belum ada silakan pasang terlebih dahulu. Selanjutnya membuat direktori baru tempat dimana kita akan menyimpan berkas-berkas yang dibutuhkan. Silakan gunakan direktori yang hanya akses root atau user sekelas root yang bisa mengaksesnya.
Pertama yang harus dilakukan adalah membangkitkan sertifikat SSL terlebih dahulu sebagai berikut
mkdir ssl
cd ssl
openssl req -X509 -nodes -days 365 -newkey rsa:4096 -keyout cert.key -out cert.pem -batch
Perintah diatas akan menghasilkan dua buah berkas yakni cert.key dan cert.pem. Pastikan kedua buah berkas sudah ada pada direktori ssl diatas.
Langkah kedua adalah mengaktifkan Jupyterhub dengan satu buah perintah berikut:
jupyterhub --ip 192.168.0.1 --port 8888 --ssl-key cert.key --ssl-cert cert.pem
Sesuaikan parameter –ip dan –port dengan yang kita miliki. Jika kita ingin Jupyterhub ini dapat diakses dari luar maka akan lebih baik taruh parameter –ip dengan publik IP yang kita miliki.
sangat bermanfaat, makasih
Jika bermanfaat boleh dishare juga