[Gelistirici] Açık anahtar dağıtımı
Faik Uygur
faik at pardus.org.tr
30 Oca 2007 Sal 15:17:28 EET
Merhaba,
Bu konuda Debian neler yapıyor diye biraz araştırdım. Halen testing ve
unstable branchlarında apt-secure testleri ve geliştirme işine devam
ediyorlar. İlgili bir dokümanda kullanılacak yapı güzel bir şekilde
anlatılmış. [1] Konuştuğumuz çoğu şey ve endişeler burada cevaplanmış
aslında.
Çok kısa Debian'da ne yapıldığını özetleyeyim:
stable branch arşivi altında bir Release [2] dosyası mevcut. Bu dosya contrib,
main, non-free depoları altında ve her birinin kendi mimarisinin altındaki
Packages [3] isimli dosyaların md5 bilgilerini tutuyor. Packages ise o depo
ve o mimari altındaki tüm paketlerin md5,sha1sum bilgilerini. Tüm bu
bilgilere Release ile gidildiği için Release.gpg isminde bir dosyada o arşive
ait bu bilgilerin doğruluğu Release.gpg imzası ile doğrulanıyor.
PiSi'ce baktığımızda pisi-index.xml.bz2 ve pisi-index.xml.bz2.sig şeklinde
düşünebiliriz. Şu an pisi içerisinde aynen bu yapı mevcut. Fakat anahtar
yönetim mekanizması eksik. Sorunumuz bunu imzalayacak gizli anahtarın,
açık anahtar çiftinin dağıtımıydı.
Bu dokümandan çıkan ve düşünmediğimiz bir konu da, depo anahtar çiftinin
senede bir yenilenmesi işi. Debian her sene bunu gerçekleştiriyor. Hatta ilk
geçiş (2005-2006 sanırım) apt'daki bir hata sebebiyle başarısız olmuş. Tüm
paketler güvensiz görünmüş. Bu da düşünebileceğimiz bir şey.
Debian sertifika filan kullanmıyor. Bu bizim kullanmayacağımız anlamına
gelmiyor tabi ama anladığım sertifika'nın alımı, gerektiğinde yenilenmesi hep
kendi içinde bir takım sıkıntıları da beraberinde getiriyor. Bu konuda kimse
de bir şey söylemediğine göre böyle bir şey olmayacak diyebiliriz.
Nasıl yapacağımıza gelince:
Bu iş öncelikle bir güven ağı (web-of-trust) işi. Güven'in bir yerde başlaması
gerekiyor. Buna göre anahtar çiftini depo sahibi oluşturacak. Bunun yanında
depo sahibi'nin de ayrıca kendi anahtar çifti olacak. Kendi anahtarı ile
oluşturduğu bu açık depo anahtarını imzalayacak. Gerekiyorsa depo'dan
sorumlu birden fazla geliştirici bu anahtarı imzalayabilir.
İmzalanan bu açık anahtar hem web sunucularımızda ilgili herhangi bir yerde,
hem de açık anahtarın kendi paketinde bulunacak. CD dağıtımları içerisinde
öntanımlı gelecek olan bu anahtar paket ile kurulacak. Ayrıca yıllık anahtar
değişimi yapacak isek, o depoya ait, bu paketin güncellenmesi ile
gerçekleştirilecek.
Anahtar aynı zamanda web sunucunda da olacak. pisi'yi anahtar yönetim işine
hiç karıştırmak istemiyorum. pisi-cli kullanıcısı gpg ile açık anahtarı
ekleyebilir. package-manager kullanıcısı için ise depo yönetimi ekranında
depo adı, depo adresi yanında bir de depo açık anahtarı adresi olacak. Depo
ekleneceği zaman package-manager bu anahtar ile ilgili bir uyarı mesajı
göstererek: bu depo'ya ait şu anahtar şu şu insanlar tarafından
imzalanmıştır. Bu anahtarı güvenilir kabul ediyor musunuz? Güveniyor musunuz?
Ekleyeyim mi? gibi bir takım sorular soracak. Paranoyak olan kullanıcı gidip
bu anahtar hakkında araştırma yapabilir. Aynı şekilde gpg ile konsol
kullanıcısı anahtarı eklemeden önce anahtarı imzalayanları ve anahtarın
doğruluğunu araştırabilir. Her sene güncellenen açık anahtar, bir önceki
senenin açık anahtarı ile de imzalanıyor. Bu da hoş bir şey.
Eksikler, yorumlar, öneriler?
- Faik
[1] http://wiki.debian.org/SecureApt
[2] ftp://ftp.linux.org.tr/pub/debian/dists/stable/Release
[3] ftp://ftp.linux.org.tr/pub/debian/dists/stable/main/binary-i386/Packages
Gelistirici mesaj listesiyle ilgili
daha fazla bilgi