[บันทึกกันลืม] วิธีป้องกันไม่ให้ผู้ใช้ดาวน์โหลดสิ่งใด ๆ ออกไปจาก Jupyter Notebook/Lab ได้

ปัญหา การใช้ Jupyter Notebook/Lab (aka. Jupyter) นั้นมีข้อดีคือ เราสามารถจำกัดการเข้าถึงข้อมูลที่ละเอียดอ่อนได้ อย่างเช่นเราสามารถตั้งค่าการ access ของ database user ได้จาก private ip ของ Jupyter ได้ แต่ก็ยังมีช่องโหว่คือ ผู้ใช้สามารถ Export file แล้ว download ออกไปได้ ** Caution: บันทึกนี้ไม่สามารถป้องการการ scp และ API call เพื่อ upload ไปยัง Google Drive, Owncloud ได้ ** ในที่นี้ ใช้ Jupyter ผ่าน Docker/Kubernetes แนวทางการแก้ไข Credit: เปิด Terminal แล้วพิมพ์คำสั่งต่อไปนี้ เพื่อปิด เมนู แต่ก็ยังมีทางให้เรียกผ่าน URL ได้อยู่ดี จึงต้อง disable การเรียกผ่าน HTTP protocol ได้ จึงต้องปิดด้วยการปิดการเรียก File handler อีกชั้น โดยประกอบด้วย 2 ขั้นตอน 1. การแก้ไขไฟล์ $HOME/.jupyter/jupyter_notebook_config.py 2. สร้างไฟล์ $HOME/.jupyter/handlers.py จากนั้น restart jupyter container ผลคือ หวังว่าจะเป็นประโยชน์ครับ

Read More »

[บันทึกกันลืม] kubernetes certificate expired

ถ้าท่านที่รัน Kubernetes นานพอ ก็จะได้เจอปัญหานี้ พอดี cluster ผมใช้งานมาครบ 365 วันนี้พอดี เราก็มือใหม่ซะด้วยสิ ทีนี้ ว้าวุ่นเลย อิอิ ปัญหา เมื่อใช้คำสั่งต่าง ๆ บน control plane แล้วได้ error ประมาณนี้ Unable to connect to the server: x509: certificate has expired or is not yet valid: สาเหตุ Certificate ของ kubernetes cluster มีวันหมดอายุ และวันนี้มันหมดอายุไปแล้ว วิธีตรวจสอบ วิธีแก้ไข จาก Managing Expired Certificates in Kubernetes Clusters บอกว่า ให้ restart container ที่เกี่ยวข้องกับ kube-apiserver, kube-scheduler, kube-controller-manager, and etcd โดยใช้คำสั่ง ตรวจสอบผล หวังว่าจะเป็นประโยชน์

Read More »