Apa arti sebenarnya kunci SSH yang tidak dikenali
Kunci SSH yang terdaftar di akun GitHub adalah kredensial yang dapat mengautentikasi sebagai akun tersebut. Melihat kunci yang tidak Anda kenali adalah alasan untuk menyelidiki, bukan kesimpulan. Kunci itu bisa milik perangkat yang Anda lupakan, pengaturan anggota tim lama, laptop lama, atau sesuatu yang tidak Anda otorisasi. Pendekatan aman adalah mengidentifikasi pemilik dan tujuannya sebelum menghapus apa pun, karena menghapus kunci yang digunakan oleh alur kerja sah akan merusak alur kerja tersebut.
GitHub memperlakukan beberapa hal sebagai jalur akses terpisah. Kunci SSH pribadi, kunci deploy yang terpasang pada repositori, dan aplikasi OAuth terotorisasi adalah mekanisme berbeda dengan cakupan berbeda. Mengaudit satu jalur tidak mengaudit yang lain.
GitHub menyarankan untuk mengaudit kunci SSH, kunci deploy, dan aplikasi terotorisasi sebagai jalur akses terpisah. Sumber
Daftar periksa sebelum dan sesudah
Gunakan ini sebagai daftar kerja. Kolom “sebelum” adalah tentang mengumpulkan fakta; kolom “sesudah” adalah tentang mengonfirmasi hasil.
| Tahap | Periksa | Mengapa penting |
|---|---|---|
| Sebelum | Daftar setiap kunci SSH yang ditampilkan di akun, dengan judul dan sidik jari atau detail pembuatan yang terlihat | Anda perlu gambaran lengkap sebelum memutuskan entri mana yang tidak dikenal |
| Sebelum | Cocokkan setiap kunci dengan perangkat atau orang yang bisa Anda sebutkan | Kunci tanpa nama adalah yang perlu dipertanyakan |
| Sebelum | Tanyakan apakah ada alur kerja saat ini yang bergantung pada kunci tersebut (build, deployment, mesin bersama) | Menghapus kunci yang aktif digunakan akan merusak alur kerja itu |
| Sebelum | Periksa apakah akses yang sama juga diberikan melalui kunci deploy atau aplikasi terotorisasi | Ini jalur terpisah dan perlu tinjauan sendiri |
| Sebelum | Tentukan tindakan: pertahankan, ganti, atau hapus | Kunci yang sudah kedaluwarsa mungkin perlu diganti, bukan sekadar dihapus |
| Sesudah | Pastikan kunci tidak lagi muncul di daftar kunci SSH akun | Daftar yang terlihat adalah konfirmasi pertama Anda |
| Sesudah | Pastikan alur kerja yang terdampak masih berjalan, atau Anda punya jalur pengganti | Penghapusan tidak boleh membuat proses sah terhenti |
| Sesudah | Catat apa yang Anda hapus dan kapan, tanpa merekam materi kunci itu sendiri | Catatan membantu audit di masa depan |
Menghapus kunci SSH akun
Penghapusan itu sendiri dilakukan di pengaturan akun. Jalur yang didokumentasikan GitHub adalah Settings, lalu SSH and GPG keys, tempat Anda dapat meninjau kunci SSH akun dan menghapus yang tidak dikenali atau sudah kedaluwarsa.
Di Settings, SSH and GPG keys, tinjau kunci SSH akun dan hapus yang tidak dikenali atau sudah kedaluwarsa. Sumber
Jaga cakupan tetap sempit. Langkah ini menghapus kunci SSH akun. Ini tidak menghapus kunci deploy, mencabut aplikasi terotorisasi, atau mengubah isi repositori. Jika audit Anda menemukan masalah di area tersebut, tangani sebagai tugas terpisah.
Alur kerja sah yang perlu dipertimbangkan sebelum menghapus
Tidak setiap kunci yang tidak familiar itu bermusuhan. Pertimbangkan situasi umum ini sebelum bertindak:
- Perangkat yang tidak lagi Anda gunakan. Laptop lama atau mesin kerja mungkin masih memiliki kunci terdaftar. Jika Anda masih memiliki perangkatnya, Anda dapat mengonfirmasi kecocokan; jika tidak, penghapusan biasanya adalah pilihan yang tepat.
- Mesin bersama atau tim. Orang lain mungkin menambahkan kunci untuk tujuan sah. Konfirmasi dengan pemiliknya sebelum menghapus.
- Pengaturan deployment atau otomasi. Jika kunci digunakan oleh proses terjadwal, menghapusnya dapat menghentikan proses itu. Identifikasi ketergantungan terlebih dahulu.
- Kunci yang Anda buat dan lupakan. Judul dan tanggal pembuatan sering memicu ingatan. Jika Anda dapat mencocokkannya dengan pengaturan masa lalu Anda sendiri, Anda mungkin memilih untuk mempertahankan atau menggantinya daripada menghapusnya.
Jika ragu, urutan yang lebih aman adalah mengidentifikasi, lalu mengganti dengan kunci yang Anda kendalikan, lalu menghapus entri lama. Itu menjaga jalur yang berfungsi tetap ada sambil Anda menutup jalur yang tidak dikenal.
Apa yang tidak dilakukan proses ini
Menghapus kunci SSH adalah tindakan bertarget, bukan pembersihan akun menyeluruh. Ini tidak:
- mencabut aplikasi OAuth atau integrasi terotorisasi lainnya;
- menghapus kunci deploy dari repositori;
- membuktikan siapa yang membuat kunci atau mengapa;
- mengonfirmasi bahwa tidak ada jalur akses lain.
Perlakukan masing-masing sebagai pemeriksaan terpisah. Audit adalah serangkaian langkah kecil yang dapat diverifikasi, bukan satu tombol.
Di mana pencarian nama pengguna cocok, dan di mana tidak
Pencarian nama pengguna publik dapat membantu Anda melihat apa yang tampaknya terkait dengan nama pengguna yang diketahui di berbagai platform publik. Itu konteks yang berguna ketika Anda mencoba memahami identitas atau jejak online. Ini bukan cara untuk memeriksa pengaturan akun GitHub, dan tidak dapat memberi tahu Anda siapa pemilik kunci SSH. TraceSeek, aplikasi yang dibahas oleh TruthsSeek, memeriksa nama pengguna publik yang diketahui di 3.000+ platform dan mengembalikan pemindaian pertama dalam 20-30 detik, dengan pemindaian pertama gratis. Ini tidak mengoperasikan pengaturan GitHub, dan kecocokan publik adalah petunjuk, bukan bukti kepemilikan.
Menangani kredensial dengan aman
Jangan pernah mempublikasikan kunci privat, token, atau kredensial lengkap di obrolan, issue, tangkapan layar, atau posting forum. Jika Anda perlu bantuan mengidentifikasi kunci, bagikan hanya detail non-rahasia seperti judulnya atau sidik jari yang terlihat, dan hanya dengan orang yang Anda percaya. Jika Anda mencurigai kunci telah terekspos, menghapusnya dari akun adalah satu langkah; merotasi apa pun yang bergantung padanya adalah keputusan terpisah yang harus Anda buat dengan sengaja.