Security
- Git kursu
- Uzman
- Ders 31/32
- 6 dk
GPG imzalı bir commit oluşturup SSH ile push edersin.
GPG İmzalama ve SSH ile Güvenlik
Git'te kimlik doğrulaması için SSH anahtarları kullanılırken, commit'lerin gerçekten sizin tarafınızdan yazıldığını kanıtlamak için GPG imzaları kullanılır. git commit -S -m "mesaj" komutu commit nesnesini GPG anahtarınızla kriptografik olarak imzalar. git log --show-signature veya git verify-commit ile imzanın geçerliliği doğrulanır.
git config --global user.signingkey <KEY_ID>
git commit -S -m "Güvenli commit"
git push git@github.com:user/repo.git mainUygulama GPG İmzalı Commit Yapılandırması
Git deposunda tüm commit'lerin varsayılan olarak imzalanmasını sağlamak için commit.gpgsign yapılandırmasını true yap. Ardından git config commit.gpgsign değerini terminale yazdır.
Başlangıç kodu
git init -q
# commit.gpgsign ayarını true yap
# Ayarın değerini git config ile yazdırÖrnek çözüm
git init -q
git config commit.gpgsign true
git config commit.gpgsignBeklenen çıktı
true
Uygulama SSH Uzak Depo Yapılandırması
origin adında SSH URL'si git@github.com:acme/security-core.git olan bir uzak depo ekle. Ardından git remote get-url origin komutu ile tanımlanan SSH adresini terminale yazdır.
Başlangıç kodu
git init -q
# SSH remote ekle
# Remote URL'sini ekrana yazdırÖrnek çözüm
git init -q
git remote add origin git@github.com:acme/security-core.git
git remote get-url originBeklenen çıktı
git@github.com:acme/security-core.git
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bir commit oluştururken kriptografik GPG imzası eklemek için hangi bayrak kullanılır?
- -G
- -k
- -S Doğru cevap
- -s
Açıklama: Büyük -S bayrağı commit'i GPG anahtarıyla imzalar; küçük -s ise yalnızca commit mesajının sonuna Signed-off-by satırı ekler.
2 Commit İmzasını Doğrula
git verify-commit ____ HEAD
git verify-commit verify-commit HEAD
Açıklama: git verify-commit komutu belirtilen commit'in GPG imzasını kontrol ederek imzalayan anahtarın geçerliliğini denetler.
3 Güvenlik Kavramları
| Kavram | Anlamı |
|---|---|
git commit -S |
Commit'i GPG ile imzalar |
git verify-commit |
GPG imzasını doğrular |
SSH anahtarı |
Uzak depoya erişim sağlar |
--show-signature |
Log'da imzaları gösterir |