GPG Anahtarlarınızı Linux'ta Yedekleme ve Geri Yükleme

Yayınlanan: 2022-08-18
Bir bash istemi gösteren Linux dizüstü bilgisayar
fatmawati achmad zaenuri/Shutterstock.com

Gizlilik giderek daha sıcak bir konu. Linux'ta gpg komutu, kullanıcıların açık anahtarlı şifreleme kullanarak dosyaları şifrelemesine olanak tanır; bu durumda şifreleme anahtarlarınızı kaybetmek felaket olur. Bunları nasıl yedekleyeceğiniz aşağıda açıklanmıştır.

OpenPGP ve GNU Gizlilik Koruması

Elektronik dosyaların basılı kopyalara göre avantajlarından biri, elektronik dosyaları yalnızca yetkili kişilerin erişebileceği şekilde şifreleyebilmenizdir. Yanlış ellere geçerlerse, önemli değil. Dosyaların içeriğine yalnızca siz ve hedeflenen alıcı erişebilir.

OpenPGP standardı, açık anahtarlı şifreleme adı verilen bir şifreleme sistemini tanımlar. Bu standardın GNU Privacy Guard uygulaması, standarda göre şifreleme ve şifre çözme için bir komut satırı aracı olan gpg ile sonuçlandı.

Standart, bir genel anahtar şifreleme şemasını özetlemektedir. “Genel anahtar” olarak adlandırılsa da, ilgili iki anahtar vardır. Her kişinin bir ortak anahtarı ve bir özel anahtarı vardır. Özel anahtarlar, adından da anlaşılacağı gibi asla ifşa edilmez veya başkasına iletilmez. Genel anahtarlar güvenle paylaşılabilir. aslında, planın çalışması için ortak anahtarların paylaşılması gerekir.

Bir dosya şifrelendiğinde, kodlama işleminde gönderenin özel anahtarı ve alıcının genel anahtarı kullanılır. Dosya daha sonra alıcıya teslim edilebilir. Dosyanın şifresini çözmek için kendi özel anahtarını ve gönderenin genel anahtarını kullanırlar.

Genel ve özel anahtarlar, eşleşen bir çift olarak oluşturulur ve belirli bir kimliğe bağlanır. Hassas materyalleri başkalarına iletmeseniz bile, özel belgelere ekstra bir koruma katmanı eklemek için bunları kendi bilgisayarınızda kullanabilirsiniz.

Linux'ta GPG ile Dosyaları Şifreleme ve Şifresini Çözme
İLGİLİ Linux'ta GPG ile Dosyaları Şifreleme ve Şifresini Çözme

Şifreleme, birinci sınıf algoritmalar ve kriptografik işlevler kullanır. Uygun genel ve özel anahtarlar olmadan şifrelenmiş dosyalara giremezsiniz. Ve anahtarlarınızı kaybederseniz, bu sizin için de geçerli. Yeni anahtarlar oluşturmak yardımcı olmaz. Dosyalarınızın şifresini çözmek için şifreleme işleminde kullanılan anahtarlara ihtiyacınız vardır.

Anahtarlarınızı yedeklemenin, onları nasıl geri yükleyeceğinizi bilmek kadar büyük önem taşıdığını söylemeye gerek yok. İşte bu görevleri nasıl gerçekleştireceğiniz.

.gnupg Dizini

Anahtarlarınız, ana dizininizde “.gnupg” adlı bir dizinde saklanır. Bu dizin ayrıca size şifrelenmiş dosyalar gönderen herkesin ortak anahtarlarını da saklayacaktır. Genel anahtarlarını içe aktardığınızda, bu dizindeki dizine alınmış bir veritabanı dosyasına eklenirler.

Bu dizindeki hiçbir şey elbette düz metin olarak saklanmaz. GPG anahtarlarınızı oluşturduğunuzda, bir parola girmeniz istenir. Umarım, bu parolanın ne olduğunu hatırlamışsınızdır. Buna ihtiyacın olacak. “.gnugp” dizinindeki girişler onsuz çözülemez.

Dizine bakmak için tree yardımcı programını kullanırsak, bu alt dizin ve dosya yapısını göreceğiz. tree , bilgisayarınızda zaten yoksa, dağıtımınızın depolarında bulacaksınız.

 ağaç .gnupg 

.gnupg dizininin dizin yapısı.

Dizin ağacının içeriği şunlardır:

  • openpgp-revocs.d : Bu alt dizin, iptal sertifikanızı içerir. Özel anahtarınız ortak bilgi haline gelirse veya başka bir şekilde tehlikeye girerse buna ihtiyacınız olacak. İptal sertifikanız, eski anahtarlarınızın kullanımdan kaldırılması ve yeni anahtarların kabul edilmesi sürecinde kullanılır.
  • private-keys-v1.d : Bu alt dizin, özel anahtarlarınızı saklar.
  • pubring.kbx : Şifreli bir dosya. Sizinki de dahil olmak üzere genel anahtarları ve bunlarla ilgili bazı meta verileri içerir.
  • pubring.kbx~ : Bu, “pubring.kbx” dosyasının yedek kopyasıdır. “pubring.kbx” üzerinde değişiklik yapılmadan hemen önce güncellenir.
  • trustdb.gpg : Bu, kendi anahtarlarınız ve diğer kişilere ait kabul edilen genel anahtarlar için kurduğunuz güven ilişkilerini içerir.

Gizli dosya ve klasörler de dahil olmak üzere, ana dizininizin düzenli ve sık yedeklemelerini yapmalısınız. Bu, tabii ki “.gnupg” dizinini yedekleyecektir.

Ancak GPG anahtarlarınızın, kendilerine ait periyodik bir yedeklemeyi garanti edecek kadar önemli olduğunu düşünebilirsiniz veya belki de anahtarlarınızı masaüstünüzden dizüstü bilgisayarınıza kopyalamak ve böylece her iki makinede de bulunmasını isteyebilirsiniz. Sonuçta her iki makinede de sensin.

Hangi Anahtarların Yedekleneceğini Belirleme

GPG sisteminizde hangi anahtarların olduğunu bize söylemesini gpg isteyebiliriz. --list-secret-keys seçeneklerini ve --keyid-format LONG seçeneklerini kullanacağız.

 gpg --list-secret-keys --keyid-format UZUN 

GPG anahtar ayrıntılarını terminal penceresine listeleme

GPG'nin “/home/dave/.gnupg/pubring.kbx” dosyasının içine baktığı söylendi.

Ekranda görünenlerin hiçbiri gerçek gizli anahtarınız değil.

  • "sec" (gizli) satırı, şifrelemedeki bit sayısını (bu örnekte 4096), anahtar kimliğini, anahtarın oluşturulduğu tarihi ve "[SC]"yi gösterir. "S", anahtarın dijital imzalar için kullanılabileceği ve "C", sertifika için kullanılabileceği anlamına gelir.
  • Bir sonraki satır, anahtar parmak izidir.
  • "uid" satırı, anahtarın sahibinin kimliğini tutar.
  • "ssb" satırı, oluşturulduğunda gizli alt anahtarı ve "E"yi gösterir. “E” şifreleme için kullanılabileceğini gösterir.

Farklı kimliklerle kullanmak için birden fazla anahtar çifti oluşturduysanız, bunlar da listelenir. Bu kullanıcı için yedeklenecek yalnızca bir anahtar çifti var. Yedek, bu anahtarın sahibinin topladığı ve güvenmeye karar verdiği diğer kişilere ait tüm ortak anahtarları içerecektir.

Yedekleme

gpg tüm kimlikler için tüm anahtarları yedeklemesini veya tek bir kimlikle ilişkili anahtarları yedeklemesini isteyebiliriz. Özel anahtarı, gizli anahtarı ve güven veritabanı dosyasını yedekleyeceğiz.

Genel anahtarları yedeklemek için --export seçeneğini kullanın. Ayrıca --export-options backup seçeneklerini de kullanacağız. Bu, dosyaların başka bir bilgisayarda doğru şekilde içe aktarılmasını sağlamak için tüm GPG'ye özgü meta verilerin dahil edilmesini sağlar.

--output seçeneği ile bir çıktı dosyası belirleyeceğiz. Bunu yapmasaydık, çıktı terminal penceresine gönderilirdi.

 gpg --export --export-options backup --output public.gpg 

Genel GPG anahtarlarını dışa aktarma

Anahtarları yalnızca tek bir kimlik için yedeklemek istiyorsanız, anahtarlarla ilişkili e-posta adresini komut satırına ekleyin. Hangi e-posta adresini hatırlamıyorsanız, yukarıda açıklandığı gibi --list-secret-keys seçeneğini kullanın.

 gpg --export --export-options backup --output public.gpg [email protected] 

Tek bir kimlik için genel GPG anahtarlarını dışa aktarma

Özel anahtarlarımızı yedeklemek için --export seçeneği yerine --export --export-secret-keys seçeneğini kullanmamız gerekiyor. Bunu farklı bir dosyaya kaydettiğinizden emin olun.

 gpg --export-secret-keys --export-options backup --output private.gpg 

Özel GPG anahtarlarını dışa aktarma

Bu sizin özel anahtarınız olduğundan, devam etmeden önce GPG ile kimlik doğrulamanız gerekir.

Parolanızın sorulmadığını unutmayın . Girmeniz gereken şey, GPG anahtarlarınızı ilk oluşturduğunuzda verdiğiniz paroladır. İyi şifre yöneticileri, bu gibi bilgileri güvenli notlar olarak tutmanıza izin verir. Onları saklamak için iyi bir yer.

Özel anahtarları dışa aktarmak için GPG parolasını sağlama

Parola kabul edilirse dışa aktarma gerçekleşir.

Güven ilişkilerinizi yedeklemek için, “trustdb.gpg” dosyanızdaki ayarları dışa aktarmamız gerekiyor. Çıktıyı “trust.gpg” adlı bir dosyaya gönderiyoruz. Bu bir metin dosyasıdır. cat kullanılarak görüntülenebilir.

 gpg --export-ownertrust > trust.gpg
 kedi güveni.gpg 

GPG güven ilişkilerini dışa aktarma

İşte oluşturduğumuz üç dosya.

 ls -hl *.gpg 

Dışa aktarma komutları tarafından oluşturulan üç dosya

Bunları başka bir bilgisayara taşıyacağız ve geri yükleyeceğiz. Bu, o makinede kimliğimizi belirleyecek ve mevcut GPG anahtarlarımızı kullanmamıza izin verecek.

Anahtarları başka bir bilgisayara taşımıyorsanız ve güvenli olduklarından iki kat emin olmak için yedekliyorsanız, başka bir ortama kopyalayın ve güvenli bir şekilde saklayın. Yanlış ellere geçseler bile, genel anahtarınız yine de herkese açıktır, bu yüzden orada bir zararı yoktur. Ve parolanız olmadan özel anahtarınız geri yüklenemez. Ancak yine de yedeklerinizi güvende ve gizli tutun.

Dosyaları bir Manjaro 21 bilgisayarına kopyaladık.

 ls *.gpg 

Bir Manjaro bilgisayarına aktarılan dışa aktarılan dosyalar

Varsayılan olarak Manjaro 21, Z kabuğunu kullanır, zsh , bu yüzden farklı görünür. Ama bu önemli değil, hiçbir şeyi etkilemeyecek. Yaptığımız şey kabuk tarafından değil, gpg programı tarafından yönetiliyor.

Anahtarlarımızı içe aktarmak için --import seçeneğini kullanmamız gerekiyor.

 gpg --import public.gpg 

Genel GPG anahtarlarını içe aktarma

Anahtarın ayrıntıları içe aktarılırken görüntülenir. “trustdb.gpg” dosyası da bizim için oluşturulmuştur. Özel anahtarı içe aktarmak da aynı derecede kolaydır. --import seçeneğini tekrar kullanıyoruz.

 gpg --import private.gpg 

Özel GPG anahtarlarını içe aktarma

Parolayı girmemiz istenir.

Özel GPG anahtarlarını içe aktarmak için parolayı girme

"Parola" alanına yazın, "Sekme" tuşuna basın ve "Enter" tuşuna basın.

İçe aktarılan özel GPG anahtarlarının onayı

İçe aktarılan anahtarların ayrıntıları görüntülenir. Bizim durumumuzda, sadece bir anahtarımız var.

Güven veritabanımızı içe aktarmak için şunu yazın:

 gpg --import-ownertrust trust.gpg 

GPG güven ilişkilerini içe aktarma

--list-secret-keys seçeneğini bir kez daha kullanarak her şeyin düzgün bir şekilde içe aktarıldığını kontrol edebiliriz.

 gpg --list-secret-keys --keyid-format UZUN 

İçe aktarmanın çalıştığını doğrulama

Bu bize daha önce Ubuntu bilgisayarımızda gördüğümüz çıktının aynısını verir.

Gizliliğinizi koruyun

Yedekleyerek GPG anahtarlarınızın güvende olduğundan emin olun. Bir bilgisayar felaketiniz varsa veya daha yeni bir modele yükseltme yapıyorsanız, anahtarlarınızı yeni makineye nasıl aktaracağınızı bildiğinizden emin olun.

İLGİLİ: Linux Sisteminizi rsync ile Nasıl Yedeklersiniz?