Blog
Thoughts on engineering, design, and building great products.
Tự Tay Ký Toàn Bộ Certificate Bằng cfssl
Phần lõi của 'from scratch': dùng cfssl tạo ba CA (Kubernetes, etcd, front-proxy) rồi ký toàn bộ certificate cho từng thành phần — apiserver với SAN đầy đủ, kubelet từng worker với CN/O đặc biệt, controller-manager, scheduler, kube-proxy, client cho etcd, và cặp khóa service-account. Làm từng cái, đúng từng trường, rồi verify chuỗi tin cậy.
PKI và TLS: Vì Sao Cluster Cần Nhiều Certificate Đến Vậy
Một cluster Kubernetes cần tới cả chục certificate và ba CA riêng. Bài này giải thích mô hình PKI/TLS làm nền cho mọi kết nối trong cluster: CA ký cho ai, mTLS hai chiều hoạt động ra sao, và một điểm hay quên — trường CN và O trong certificate chính là danh tính và nhóm RBAC mà api-server tin.
Ansible Vault: Quản Lý Bí Mật
Mật khẩu, khóa API không thể để trần trong Git. Ansible Vault mã hóa bí mật bằng AES256, giải mã tự động lúc chạy. Bài này: encrypt/view/edit file bí mật, encrypt_string cho từng giá trị, dùng trong playbook, và best practices.
TLS/SSL: Mã Hóa và Chứng Chỉ
Deep-dive vào chữ 'S' của HTTPS: TLS bắt tay mã hóa thế nào, chứng chỉ chứa gì, và chuỗi tin cậy từ chứng chỉ server tới CA gốc giúp trình duyệt tin một website ra sao. Quan sát thật bằng openssl.
Firewall và Bảo Mật Mạng
Kiểm soát ai được kết nối tới cổng nào: firewall lọc lưu lượng theo IP, cổng, hướng. Hiểu nguyên tắc default-deny, firewall có trạng thái, iptables/nftables trên Linux, ufw, và security group trên cloud.
SSH và Truyền File: ssh, scp, rsync
Cách bạn thực sự vào một server Linux từ xa: SSH với xác thực bằng key (an toàn hơn mật khẩu), file cấu hình tiện dụng, và truyền file bằng scp và rsync. Kỹ năng nền tảng cho mọi việc trên server.
User, Group và sudo
Linux là hệ đa người dùng. Bài này giải thích user và group được lưu ở đâu (/etc/passwd, /etc/shadow, /etc/group), cách tạo/quản lý, và vì sao nên dùng sudo thay vì đăng nhập thẳng bằng root.