Ingress digunakan untuk mengatur lalu lintas masuk aplikasi dan juga untuk penghentian SSL. Sebaliknya, rahasia digunakan untuk menyimpan informasi rahasia dan sertifikat TLS untuk aplikasi.
Posting ini akan menggambarkan:
- Apa Rahasia Kubernetes?
- Prasyarat: Hasilkan Kunci Pribadi dan Sertifikat
- Bagaimana Cara Membuat TLS Rahasia di Kubernetes?
- Bagaimana Cara Membuat Rahasia Melalui File Yaml?
- Bagaimana Cara Menyematkan Rahasia Dengan Kubernetes Pod?
- Kesimpulan
Apa Rahasia Kubernetes?
Rahasia adalah salah satu sumber daya Kubernetes, yang digunakan untuk menyimpan informasi rahasia seperti kredensial login pengguna, kunci, sertifikat, atau token. Rahasianya dapat dibuat secara individual dan dihubungkan ke pod. Ini mencegah pengembang memberikan data rahasia dalam kode dan juga memberikan lapisan keamanan tambahan. Berbagai jenis rahasia dapat dibuat dan digunakan. Rahasia yang paling umum digunakan adalah:
Rahasia Generik: Rahasia umum digunakan untuk menyimpan informasi dasar seperti kata sandi, token, kunci API, kunci OAuth, dan sebagainya.
Rahasia TLS: Rahasia TLS digunakan untuk menyimpan kunci pribadi dan sertifikat yang ditandatangani oleh CA. Untuk memastikan keamanan aplikasi yang berjalan di dalam Kubernetes dan untuk mengamankan komunikasi di dalam cluster, pengguna biasanya perlu membuat dan menyematkan rahasia TLS ke dalam pod.
Registri Docker: Ini digunakan untuk menyimpan kredensial registri buruh pelabuhan untuk dengan mudah menarik gambar dari registri.
Prasyarat: Hasilkan Kunci Pribadi dan Sertifikat
Untuk membuat sertifikat dan kunci pribadi untuk peningkatan keamanan, gunakan OpenSSL yang membuat CSR (permintaan penandatanganan sertifikat) dan kunci pribadi. Kemudian, gunakan CSR untuk menghasilkan sertifikat yang ditandatangani sendiri atau sertifikat CA.
Untuk memanfaatkan perintah OpenSSL di Windows, pengguna diharuskan menginstal Git. Untuk tujuan ini, ikuti tautan kami “ Instal git di Windows ' artikel.
Setelah menginstal git, ikuti petunjuk di bawah ini untuk membuat kunci pribadi dan sertifikat yang ditandatangani.
Langkah 1: Luncurkan Terminal Git Bash
Lakukan penelusuran untuk “ Git Bash ” di menu Start dan luncurkan terminal:
Untuk memeriksa direktori saat ini gunakan “ pwd ' memerintah:
pwdSaat ini, kami bekerja di direktori %USERPROFILE%:
Langkah 2: Buat Direktori Baru
Buat direktori baru untuk menyimpan sertifikat dan kunci pribadi:
mkdir sertifikatArahkan ke direktori yang baru dibuat menggunakan “ CD ' memerintah:
CD sertifikat
Langkah 3: Hasilkan Kunci Pribadi
Sekarang, buat kunci pribadi melalui perintah yang diberikan. Di sini, kunci pribadi yang dihasilkan akan disimpan di “ mycert.key ”:
membuka kunci genp -algoritma RSA -keluar mycert.key
Langkah 4: Hasilkan CSR
Untuk menghasilkan CSR (permintaan layanan sertifikat) untuk mendapatkan sertifikat yang ditandatangani, gunakan perintah yang diberikan:
persyaratan terbuka -baru -kunci mycert.key -keluar mycert.csr
Langkah 5: Hasilkan Sertifikat
Terakhir, dengan menggunakan kunci pribadi dan CSR yang dihasilkan, buat sertifikat dan simpan di “ mycert.crt ” mengajukan. Untuk tujuan ini, jalankan perintah di bawah ini:
membuka sl x509 -permintaan -di dalam mycert.csr -kunci tanda mycert.key -keluar mycert.crt -hari 365
Setelah membuat sertifikat TLS, pengguna dapat membuat TLS rahasia dengan mengikuti bagian di bawah ini.
Bagaimana Cara Membuat TLS Rahasia di Kubernetes?
Untuk memastikan keamanan aplikasi dan komunikasi yang aman di dalam dan di luar cluster Kubernetes, sertifikat TLS (Transport Layer Security) sangat penting yang digunakan dalam enkripsi data. Rahasia Kubernetes memungkinkan kita menyematkan sertifikat TLS dengan pod yang berjalan melalui TLS rahasia. Untuk membuat TLS rahasia di Kubernetes, ikuti petunjuk berikut.
Langkah 1: Mulai Klaster Minikube
Untuk memulai cluster minikube, pertama-tama luncurkan Windows PowerShell sebagai administrator. Setelah itu, buat dan jalankan cluster menggunakan “ minikube dimulai ' memerintah:
minikube dimulai
Langkah 2: Dapatkan Node
Akses node Kubernetes untuk memeriksa apakah cluster sudah dimulai atau belum:
minikube mendapatkan node
Langkah 3: Buat TLS Rahasia
Buat rahasia TLS di Kubernetes menggunakan “ kubectl buat rahasia
Langkah 4: Dapatkan Rahasia
Untuk konfirmasi, catat rahasia Kubernetes menggunakan perintah yang diberikan:
kubectl dapatkan rahasiaDi sini, Anda dapat melihat kami telah secara efektif menciptakan “ rahasia demo ” yang berisi “ 2 ”nilai data:
Langkah 5: Jelaskan Rahasia
Untuk melihat bagaimana data dilihat atau disimpan secara rahasia, jelaskan rahasianya menggunakan “ kubectl mendeskripsikan rahasia
Anda dapat melihat nilai disimpan dalam byte dan tidak dapat dilihat secara langsung, tidak seperti ConfigMaps Kubernetes:
Bagaimana Cara Membuat TLS Rahasia Melalui File Yaml?
Untuk membuat TLS rahasia melalui file yaml, pertama-tama buatlah “ rahasia.yml ” file, tambahkan sertifikat berkode tls base64 dalam ' tls.crt ”, dan tambahkan kunci yang dikodekan base64 dalam ' tls.kunci ”.
Untuk demonstrasi, ikuti langkah-langkah yang tercantum.
Langkah 1: Buat File Yaml
Buat file bernama “ rahasia.yml ” dan tempelkan kode yang diberikan:
versi api : v1data :
tls.crt : 'sertifikat berkode base64'
tls.kunci : 'kunci yang dikodekan base64'
baik : Rahasia
metadata :
nama : rahasia mitos
ruang nama : bawaan
jenis : kubernetes.io/tls
Dalam cuplikan di atas, ganti nilai kunci “tls.crt” dan “tls.key” dengan sertifikat dan nilai kunci asli Anda:
Langkah 2: Buat Rahasia
Sekarang, terapkan file yaml rahasia melalui “ kubectl terapkan -f
Outputnya menunjukkan bahwa kita telah berhasil membuat “ rahasia mitos ” menggunakan file yaml:
Catatan: Lihat Sertifikat TLS dan Kunci Pribadi
Untuk melihat sertifikat yang dikodekan base64 dan menggunakannya dalam file yaml, jalankan perintah “ cat
Untuk melihat kunci yang dikodekan base64, gunakan “ cat
Bagaimana Cara Menyematkan TLS Rahasia Dengan Kubernetes Pod?
Setelah membuat TSL rahasia, pengguna dapat menyematkannya dengan pod Kubernetes. Untuk melakukannya, gunakan petunjuk berikut.
Langkah 1: Buat File Yaml
Buatlah file bernama “ pod.yml ” file dan tempel cuplikan di bawah ini ke dalam file:
versi api: v1jenis: Pod
metadata:
nama: demo-pod
spesifikasi:
wadah:
- nama: html-lanjutan
gambar: rafia098 / html-img: 1.0
envDari:
- rahasiaRef:
nama: demo-rahasia
Dalam cuplikan di atas:
- “ baik ” kunci menentukan sumber daya Kubernetes yang dibuat pengguna.
- “ nama ” kunci akan mengatur nama pod.
- “ kontainer Kunci ” akan menyimpan informasi kontainer.
- “ nama ” di bawah kunci “containers” akan mengatur nama container.
- “ gambar Kunci ” akan menyediakan gambar aplikasi atau container untuk membuat dan memulai aplikasi di dalam container.
- “ envFrom ” kunci akan mengatur variabel lingkungan dari sumber daya Kubernetes lainnya. Di sini, untuk menyematkan TLS rahasia ke dalam pod, “ rahasiaRef ” digunakan untuk memberikan referensi rahasia. Untuk menyematkan TLS rahasia di atas, tentukan nama rahasia di kunci “nama”.
Langkah 2: Buat atau Tingkatkan Pod
Selanjutnya, buka folder tempat “ pod.yml ” file dibuat:
CD C:\Users\Dell\Documents\Kubernetes\Secret
Terapkan file yaml untuk membuat atau mengkonfigurasi ulang pod menggunakan “ kubectl terapkan ' memerintah:
kubectl terapkan -F pod.yml
Langkah 3: Akses Pod Kubernetes
Untuk verifikasi, daftarkan pod Kubernetes:
kubectl dapatkan podDi sini, Anda dapat melihat kami telah membuat “ demo-pod ” berhasil:
Langkah 4: Jelaskan Podnya
Untuk memeriksa apakah pod telah menyematkan TLS rahasia atau tidak, jelaskan pod tersebut menggunakan perintah di bawah ini:
kubectl mendeskripsikan pod demo-podOutput di bawah ini menunjukkan bahwa kita telah berhasil menyematkan rahasia TLS dengan pod:
Kami telah membahas cara membuat TLS rahasia dan menyematkannya dengan aplikasi Kubernetes yang berjalan di pod.
Kesimpulan
Untuk membuat TLS rahasia di Kubernetes, pertama-tama buatlah sertifikat bertanda tangan TLS dan kunci pribadi. Setelah itu, mulai cluster Kubernetes dan jalankan perintah “ kubectl buat rahasia