ÖYD Güvenlik

Buradan başlayın

Zaman sıkıntısı mı çekiyorsunuz? Baskıyla mücadele etmek ve daha iyi bir dünya inşa etmek için çok mu meşgulsünüz? Muhteşem! Burada bahsedeceğimiz kolay adımlarla kendinizin ve çevrenizdeki herkesin sayısal hayatını daha güvenli kılabilirsiniz.

  • Yazışma disiplinine giriş yapın: Saldırıların çoğu e-posta kutunuza veya telefonunuza gelir. E-posta ve anlık yazışma kullanırken uygun önlemleri nasıl alacağınızı öğrenin.
  • Parola yöneticisi ve Zarola kullanın: Parola yöneticisi kullanarak kendinizi pek çok tehlikeden koruyabilirsiniz. Parola yöneticinizi, Zarola ile koruyarak güvenliğinizi artırabilirsiniz.
  • Cihazlarınızı şifreleyin: Tam disk şifreleme kullanması çok kolay, pek çok işletim sisteminde dahili olarak gelen ve cihazlarınızdaki verilerin korunmasında çok etkili bir sistemdir.
  • Web sitelerini daha güvenli gezin: Varsayılan tarayıcınızı ve birkaç küçük ayarı değiştirip iki-üç eklenti kurarak web üzerindeki güvenliğinizi ve keyfinizi fazlasıyla artırabilirsiniz.
  • Yazılımlarınızı güvenli çalıştırın: Özgür yazılımlar kullanmak ve yazılımları güncellemek, güvenliğiniz için basit ama etkin adımlardır.

Güvenlik neden önemlidir?

Bilgi ve iletişim (bilişim) teknolojilerinin giderek yükselen önemi bir başka olguyu daha hayatımıza getirdi: gözetim toplumunun yükselişi. Gözetimi, güç sahiplerinin hakimiyetlerini korumak için iletişim üzerinde kontrol kurması olarak düşünebilirsiniz.

Devletler; yeni bilişim teknolojilerine, iletişimi ve kitleleri topluca kontrol etmek için gerekli altyapıları geliştirerek tepki vermiştir. Keza, daha önce yapamayacakları gözetim, İnternet'ten anlık olarak akan verilerle mümkün olmuştur. Pek çok devlet, insanların ve sivil toplumun iletişimini dinlemek ve cihazlarına girmek için ahlaki değerleri olmayan özel şirketlerle iş birliği yapmaktadır.

Şirketler; İnternet sayesinde ortaya çıkan veriye dayalı düzende, rekabette sağ kalabilmek için insanların kişisel verilerini toplayıp, inceleyip sonuç çıkarmanın ve bu sonuçları kullanmanın çok fazla kar getirdiğini gördü. Özellikle reklamcılık sektörü, tamamen bireylerin takip edilmesi ve davranışlarının incelenmesi üzerine kurulu bir sisteme geçiş yaptı. Bunun da sonucu, ortaya saçılmış kişisel veriler ve tarihin bugüne kadar hiç görmediği toplu bir gözetim oldu.

Kötü niyetli kişiler; kişilerin cihazlarına ve hesaplarına yaptıkları saldırılar ile elde ettikleri verileri kullanarak şantaj yapmanın ve sahteciliğin karlı bir iş olduğunu fark ettiler. Devletler de pek kadir olmalarına rağmen, bu kişileri bahane ederek toplu gözetim sistemlerini meşrulaştırmaya çalışmaktadır.

Bu bağlamda, sayısal güvenlik bireylerin yaşamı için hayati bir öneme sahiptir.

İnsanlar toplu gözetimin yükselişi ve boyutları hakkında bilgi edinmeye başladıklarında çoğunlukla yenik hissetmektedirler. Kimi bu durumdan kurtuluş olmadığına karar verip tüm benliklerini gözetim altında yaşamaya razı gelmekte veya tüm sayısal iletişimlerini kendilerini korumak adına sonlandırmaktadırlar. Biz üçüncü bir yol olduğuna inanıyor ve güvenlik ile mahremiyetin herkese erişilebilir olması için çalışıyoruz.

Güvenlik önizlemi

Güvenlik TipiBu nedir?Ne zaman Faydalıdır?
Beşeri GüvenlikDavranışlarınız ile ilgili yapabileceğiniz küçük değişiklikler.İnsan hatalarının bir güvenlik sistemindeki zayıf halka olmasını engeller.
Cihaz GüvenliğiBilgisayar ve telefonlarınızı saldırılara daha dayanıklı kılacak adımlar.Cihazınızın fiziksel olarak saldırganların eline geçmesi durumunda bilinen saldırılara karşı dayanıklı kılmak yararlıdır.
Yazışma Güvenliğiher mesajı gönderir veya alırken şifrelenin yolları.Eğer belirli bir mesajın gönderilir ve depolanırken mahremiyetini teminat altına almak için gereklidir.
Ağ GüvenliğiSizi takip eden siteleri engellemek ve İnternet trafiğinizi şifrelemek.Davranışsal takiplere, hesap çalınmalarına, sansüre, sosyal ağ takibine, dinlemlere ve reklamlara karşı korunmaya yardımcı olur.

Ayrıca daha fazla güvenlik rehberi için güvenlik okuma listesi sayfasını inceleyebilirsiniz.

Beşeri Güvenlik

Her sistemin en zayıf halkası insandır

Dünyanın en iyi algoritmaları, şifreleme yazılımları, güvenlik duvarları veya çelik kapıları, kullanan kişilerin dikkati ve özeni kadar güvenlidir. Parolanız "1234" ise veya gelen her e-postayı açıp içindekilere tıklayıp bilgisayarınıza kuruyorsanız sizi hiçbir şey koruyamaz.

Güvenlik insanda başlar. Her sistemin güvenliğinin insanda başlayıp insanda bittiğinin farkındalığı ile donanıp kullandığınız sistemleri bu disiplin içinde korumalısınız. Unutmayın sizi güvende tutacak bir sihirli değnek yok! Güvenliğinizi, güvenebileceğiniz tek kişi olarak kendiniz sağlamalısınız.

Sadece mahremiyetinizi koruyor olsanız da dünyanın en önemli haberlerini savaş bölgelerinden de geçiriyor olsanız güvenlik amacını yerine getirebilmenin koşulu öğrenmek ve eğitimden geçmektedir. İhtiyaçlarınızı ve tehlikeleri belirledikten sonra hiç aksatmadan planınıza sağdık kalmak ve değişimlere uyum sağlamak zorundasınız. Aksi halde bugün değil ise yarın güvenliğiniz aşınacaktır.

Birkaç basit adımla çok ciddi tehlikeleri bertaraf edebilirsiniz. Aşağıdaki rehberlerimiz size bu konuda yol göstermeye hazırdır.

Mesaj Disiplini

Gönderene asla güvenmeyin

Yaşanan çoğu saldırının temel kaynağının e-postalar olmasının nedeni gönderenin kimliğini doğrulama imkanı olmamasıdır.

Tekrar edelim; Herhangi biri, bir e-postanın gönderen bilgisini başka birinden gelmiş gibi taklit edebilir.

Gönderenin doğrulanması zor olduğundan, e-posta kutusu oltalama ve kötücül yazılımlarla yapılan saldırıların habitatıdır.

  • Oltalama Saldırısı: Bir kişinin olmadığı biri gibi kendini tanıtıp, bu aldatma ile bilgi elde etmesidir. Saldırgan bu yöntem ile kimlik bilgilerinin, bankacılık bilgilerinin, parolaların veya diğer hassas verilerin peşinde olabilir.

  • Kötücül yazılım saldırısı: Bir saldırganın sizi, bilgisayarınıza bir bağlantı veya eklenti aracılığı ile kötücül bir yazılımı yüklemeniz için kandırmasıdır.

Genel olarak e-posta kutunuzda gördüğünüz beklenmedik her e-postaya şüpheyle yaklaşmalısınız. Sizden bir bağlantıya tıklamanızı, bir eklentiyi indirmenizi veya bir bilgiyi göndermek gibi bir şey yapmanızı isteyen her e-posta -tanıdığınız birinden bile olsa- şüphe uyandırmalıdır.

Eğer hesabınıza başka biri tarafından girildiyse; hatırlamadığınız yanıtlar, yeni girdiler, yeni dizinler, oluşturmadığınız filtreler veya ayarlarınızda değişiklikler görmeniz mümkündür. Bunun gibi şüpheli durumlarda teknik destek almalı ve önleyici bir çözüm olarak parolalarınızı değiştirmelisiniz.

E-postalardaki bağlantılardan sakının

Bağlantılar (linkler), çoğunlukla masum görünümlü, hatta kimi zaman e-postanın içinde gizli olan, saldırganların sizden bilgi çalmalarının veya cihazlarınızı ele geçirmelerinin en yaygın yollarından biridir.

En iyisi, e-postalarla gelen bağlantılara asla tıklamamaktır. Eğer e-posta ile gelen bir bağlantının mutlaka açılması gerekiyorsa şunlara dikkat edilmelidir:

  • E-posta bekliyor muydunuz? Gelen adres tanıdığınız birinden gibi görünse bile, beklemediğiniz e-postalara dikkatle yaklaşmakta fayda vardır.
  • Gelen bağlantıya tıklamak yerine elle yazabilir misiniz? Gönderilen bağlantı göründüğü gibi olmayabilir. Alan adları, aslına benzer eşyazımlar veya farklı harfler içeriyor olabilir (Ör. rakam olan "0" ile büyük "O", veya Latin ile Kiril alfabesi gibi). Size gelen bağlantı, https://depo.oyd.org.tr gibi görünüyor olabilir fakat aslında sizi saldırganın web sitesi olan https://deρo.οyd.org.tr adresine yönlendiriyor olabilir (İkinci bağlantıda Yunan alfabesindeki "ο/omicron" harfi var.). Bu tip saldırıları önlemenin en güvenli yolu, ilgili bağlantıyı adres çubuğuna elle yazmaktır.
  • Alan adını tanıyor musunuz? Çoğu e-posta istemcisi, web tarayıcılarında olduğu gibi, imleci bağlantıların üzerinde tuttuğunuzda gittiği URL'i gösterir. Eğer bağlantının gittiği yer beklenmedik veya yabancı ise, gönderenin gerçek olup olmadığını teyit edin. Bağlantılar her zaman "https://" ile başlamalıdır. Eğer "data://" ile başlıyorsa bu kesinlikle bunun bir oltalama saldırısı olduğuna işarettir.

Bilinmeyen kişilerden veya şüpheli görünen e-postalarla gelen bağlantıları ve dosyaları asla açmayın. Tanıdığınız kişilerin aksine bilinmeyen kimseler size gerçekten ihtiyacınız olacak bir bağlantı veya dosya göndermeyecektir. Eğer bilinmeyen bir gönderenin bağlantısı gerçekten gerekli bir bilgi içeriyorsa, bu bilgiye webte yapılacak bir arama gibi daha güvenilir bir yolla ulaşmak mümkündür.

Bir bağlantıya tıkladıktan sonra asla hesaplarınıza giriş yapmayın

Eğer e-posta ile gelen bir bağlantıya tıklarsanız, açılan sayfada herhangi bir hesabınızın bilgileri ile giriş yapmamanız önemlidir. Eğer bir web sayfası sizden giriş yapmanızı isterse şu adımları takip edin:

  1. Tarayıcınızda yeni bir sekme açın ve alan adını elle tekrar girin.
  2. Yeni açtığınız sekmeden hesabınıza giriş yapın.
  3. E-postadaki bağlantıya geri dönüp tekrar tıklayarak açın.
  4. Bağlantı açıldığında sizden giriş yapmanızı istemiyor olması gerekir. Eğer yine de giriş yapmanızı istiyorsa bu e-posta muhtemelen oltalama saldırısıdır.

Bu yöntem sizi çoğu oltalama saldırısından koruyacaktır.

Dosya eklerinden uzak durun

E-posta ekleri, oltalama saldırıları için aracı olmak dahil ciddi tehlikeler içerir. Dosya eklerinin gönderen ile alıcı arasında takip edilmediği veya değiştirilmediğine dair güvence yoktur. Haliyle gönderdiğiniz ekin alıcıya ulaşan ek ile aynı dosya olduğuna emin olamazsınız. Sizin ile alıcınız arasındaki kötücül bir sunucu, gönderinizi istediği gibi bir virüs veya kötücül yazılım ile değiştirebilir. Ek olarak gönderilen dosyalar alıcının, kontrol edilmesi kolay olmayan e-posta kutusunda kalmaktadır. Örneğin, kredi kartı bilgilerinizi içeren bir ödeme formunu satıcıya göndermeniz durumunda satıcı silmediği sürece o bilgi kendilerine ait e-posta sunucusunda duracaktır. Bir ihlal olması durumunda, sunucuya giren saldırganlar gönderdiğiniz bilgiye de erişecektir.

Dosyaları e-posta eki olarak göndermek yerine, bir sunucuda tutup bağlantılarını e-posta ile göndermek daha iyi bir çözümdür. İdeali, bu bağlantıların dosyaları bir parola ile koruduğu veya bir tür yetkilendirme sistemi ile giriş yapılan ve bir süre sonra süresi geçen sistemlerle sunulmasıdır. Bu bağlantılar, çoğu veri depolama sistemi tarafından kolaylıkla üretilebilmektedir. Kendi sunucunuzda duran veya uzak sunucularda bizzat çalıştırdığınız sistemler bu imkana sahip olabilir. (Örn. Nextcloud)

Geçici bir bağlantı ile dosya göndermek istiyorsanız, https://share.riseup.net servisini kullanabilirsiniz.

Ek Okumalar

Parolalar

Parola yöneticisi kullanın

Parola yöneticisi kullanmak, kişisel güvenliğinizi arttırmak için yapabileceğiniz en önemli değişikliktir.

Bilgisayarların işlem güçlerinin giderek arttığı ve sızıntılar dolayısı ile çokça kişinin parolaları İnternet'e saçıldığı için insanların kafalarından uydurduğu parolalar artık yetersiz kalmaktadır. Güvenli parolalar artık xoo|Z'eetohth3Zoaph^ gibi göründüğünden insanların hatırlaması mümkün değildir.

Bir parola yöneticisi, size hem güçlü hem de eşsiz parolalar kullanma imkanı sağlar. Parola yöneticisi ile her hesabınız için benzersiz parolalar atar ve tüm hesaplarınızın parolalarına erişmenizi sağlayacak sadece bir adet parola hatırlarsınız. Özetle siz bir tane güvenli parola hatırlarsınız, parola yöneticisi sizin için yüzlerce!

İyi bir parola yöneticisinde dikkat edilmesi gereken üç önemli özelliği vardır:

  • Yerel Uygulama: Parolalarınızı, bir ana parola ile şifreleyerek saklayan özel bir uygulamadır. Bu oldukça güvenilir bir seçenek olmakla birlikte birden fazla cihaz arasında eşitlemeyi güçleştirecektir.
  • Bulut Hizmetleri: Genellikle ücretli olmakla parolalarınızı cihazlarınızdan bağımsız olarak saklayan bir hizmeti ifade eder. Bulut hizmetleri aracılığı ile parolalarınıza her yerden ulaşmanın kolaylığı olmakla birlikte dezavantajı daha az güvenliğe sahip olmasıdır.
  • Tarayıcı Eklentileri: Hem yerel uygulama hem de bulut hizmeti olarak sunulan parola yöneticileri çoğunlukla, parolalarınıza kolaylıkla erişebilmeniz için bir tarayıcı eklentisine sahiptirler. Bu eklentiler rahatlık sağlar fakat daha az güvenlidirler.
  • Özgür Yazılım: Kullanacağınız parola yöneticisi muhakkak özgür bir yazılım olmalıdır. Nasıl çalıştığını bilemediğiniz bir yazılıma parolalarınızı teslim etmek güvenli değildir.

Hangi aracı seçtiğinize bakmaksızın gerçekten önemli olan bir parola yöneticisi kullanmanızdır. Lütfen aşağıdaki önerileri aklınızda tutun:

  • Ana Parola: Bir parola yöneticisi kullanırken, ana parolanızı kaybetmemeniz hayati önem taşır. Ana parolayı unutma ihtimaline karşı bir yere bu parolayı not edebilirsiniz. Ama güçlü ve unutulması zor bir ana parola üretmek için Zarola kullanmanızı öneriyoruz. Bilgisayarlar için zor ama hatırlamanız için kolay bir parola tüm sayısal hayatınızın dayanacağı bir parolayı unutmamak için en garanti yoldur.
  • Yedekler: Parola yöneticinizin verilerini düzenli olarak yedeklemeniz de bir o kadar önemlidir. Bulut hizmeti yedekleme işini sizin için yaparken yerel yedeklerinizi düzenli olarak almanız yararınıza olacaktır. Yerel uygulamalar için veri dosyasının yedeğini almak yeterlidir. Ara sıra parola yöneticinizin parolaları sakladığı küçük dosyayı bir USB belleğe koyup kenara kaldırmak sizi çokça baş ağrısından kurtarabilir.

Yaygın parola yöneticileri;

  • KeePassXC: (yerel uygulama) Kullanım kolaylığı açısından tavsiye edilen yerel parola yöneticisidir. Neredeyse her bilgisayarda çalışabilmektedir ve Nextcloud ile eşitlenebilir.
  • Pass: GnuPG ve Git ile çalışan bir parola yöneticisidir. Eğer GnuPG'ye ve Git'e biraz hakimseniz, kesinlikle pass kullanmanız tavsiye edilir. Pass, parolalarınızı GnuPG anahtarınızla şifreler ve uzak bir Git sunucusuyla eşitleyebilir. Android istemcisi ve Firefox eklentisi mevcuttur.
  • Bitwarden: Tamamen uzak sunucuda çalışan ve pek çok platform için istemcileri bulunan bir parola yöneticisidir.

Güçlü Parolalar Kullanın

Güçlü parolalar rastgele üretilirler. Bir parolanın gücünü, uzunluğu ve rastgeleliği belirler. Cihazınız ve parola yöneticisi ana parolası haricindeki tüm parolalarınız bir parola yöneticisi tarafından rastgele üretilmelidir. Parolalarınız en az 12 karakter olmalıdır. Ancak 26 karakterden uzun parola kullanmanıza gerek yoktur. İyi bir parola geleceğe yönelik iyi bir yatırımdır.

İnsanlar, bilgisayarların aksine güvenli parolalar yaratmakta bir hayli başarısızdır. Bırakın bilgisayar bu işi sizin için yapsın.

Hatırlamanız gereken parolalar üretmek için pek çok yol bulunmaktadır. Eğer parola yöneticisi kullanıyorsanız bırakın uygulama sizin için üretsin. Ancak kendiniz hatırlaması kolay güçlü parolalar oluşturmak istiyorsanız biz Zarola kullanmanızı öneriyoruz.

Zarola, kolayca hatırlanabilir ve yüksek derecede güvenli parolalar oluşturabilmenizi sağlayan bir yöntemdir. İnsanlar rastgele şeyler üretemeyeceklerinden rastgelelik kaynağı olarak zar veya bozuk para kullanılır. 7776 Tane kelime içinden seçilen 7 adet ile parola oluşturulur ve hikayeleştirilerek ezberlenir. Bazen komik hikayeler bile çıkar!

Konuya ilişkin Security Self-defense'in "Güçlü Parolalar Üretmek" rehberine bakabilirsiniz.

Her hesabın güvenli ve eşsiz bir parola ile korunması önemlidir, çünkü bir hesaba erişim bazen diğer hesap ve sistemlere erişim hakkı doğurabilir. Bu durum, özellikle hesaplarınızı sıfırlama imkanı olan her e-posta hesabı için geçerlidir (genellikle "parolamı unuttum" bağlantıları ile).

Eşsiz parolalar kullanın

Eşsiz parolalar kullanmak üçüncü parti hizmetleri kullanırken alınan riskleri en aza indirir. Şayet bir parolayı birden fazla hesap için kullanırsanız, bir hesaptan sızan kullanıcı adı ve parolalar ile diğer hesaplarınıza sızılabilir. Farklı servisler için farklı parolalar kullanmak hesaplarınızı birbirinden izole ederek riski azaltacaktır. Bir parola yöneticisi kullanmak bunu yapmayı oldukça kolaylaştırır.

Parolalarınızı gizli tutun

Parolalarınızı her kim sorarsa sorsun asla kimseye vermeyin (Evet, teknik destek vermek için soran IT personeline de vermeyin.). Neredeyse her hesap ve sistem parola sıfırlamasına olanak tanımaktadır. Herhangi bir IT uzmanı, size parolanızı sormadan bakım amaçlı parolanızı sıfırlayabilmektedir. Bu tip sistemler aynı zamanda erişimleri takip altında tutar, sizi sıfırlama hakkında bilgilendirir ve her yönetici erişiminden sonra parolanızı değiştirmeniz istenir. Bunun için sadece söz konusu sistemlere erişiminizin olması yeterlidir.

Kurumsal ve kişisel parolalarınızı ayırın

Burada kurumsal paroladan kasıt, kurumunuzun sistemlerine ve dijital kimliklerine erişim sağlayan herhangi bir paroladır. Bunlar gerçekten önemli bilgiler olduklarından, kişilerin kendi kişisel hesaplarına girmek için kullandıkları parolalardan farklı olmalı ve ayrı olarak saklanmalıdır. Kurumsal parolanızı, parola yöneticisinde ayrı bir giriş veya farklı bir parola dosyası kullanarak, ya da tamamen farklı bir parola yöneticisi seçerek saklayabilirsiniz.

Ek okuma listesi

Çift Aşamalı Doğrulama

Çift aşamalı doğrulama kullanın

Çift aşamalı doğrulama veya kısa adı ile 2FA (Two Factor Authentication) bir sisteme veya hesaba erişim için iki farklı girdinin gerekmesi demektir. Genellikle girdilerin kaynaklarının veya elde edilme şekillerinin farklı olması istenir. Sadece parola ile giriş yapılan sistemlerde "parola" bilinen bir şey olarak bir aşamayı ifade eder. Bunun yanında bir başka "şey" daha gerekmesi durumunda ikinci aşama elde edilmiş olur.

Bugün bankacılık işlemleri yapan neredeyse herkes 2FA'nın en yaygın metoduna aşinadır. Bankacılık sistemine giriş yaptığınızda banka sizden parolanızı girmenizi istediği gibi bir de atılan SMS'teki kodu girmenizi ister. Bu durumda parolanız bildiğiniz bir şey olarak ilk aşamayı, SMS'in gönderildiği SIM kart da sahip olduğunuz ikinci aşamayı oluşturur. Bu bakımdan bir kişinin hesabınıza erişmek için hem parolanızı öğrenmesi hem de SIM kartınız ile birlikte onun parolasını da bilmesi gereklidir.

2FA neden önemlidir?

2FA basit bir çaba ile bir sistemi çok daha güvenli kılar. Bir saldırgan birden fazla fiziki koşulda bulunan ve elde etmesi görece daha zor olan iki ayrı sırrı elde etmesi gerekir. 2FA kodları çoğunlukla zamana bağlı olduğu için bu sırrın öğrenilmesi de ileride kullanılabileceği anlamına gelmeyecektir. Bu sebeple mümkün olunan her hesap ve sistemde bir şekilde 2FA kullanılması tavsiye edilir. Görece en güvensizi SMS yolu ile olsa da, akıllı cihazınızda çalışacak bir yazılım veya özellikle bu iş için geliştirilmiş bir donanım 2FA olarak kullanılabilir.

2FA nasıl kullanılır?

2FA kullanımı hesaplarınızın hizmet sağlayıcısına bağlıdır.

  • SMS aracılığıyla: Pek çok hizmet size SMS ile bu imkanı sunacaktır. SMS uygulaması kolay bir yol olduğundan tercih edilmektedir. Fakat GSM şebekesi doğası gereği güvensiz olduğundan size gönderilen kodun çalınması veya SIM kartınızın çeşitli şekillerde kopyalanması sizi riske atabilir. Aynı zamanda kişisel veriniz ve günümüzde kimliğinizin bir parçası olan cep telefonu numaranızı vermek anonimliğinizi bozacağı gibi güvenliğinizi tehlikeye de atabilir.

  • Yazılım aracılığıyla: Akıllı cihazlarınıza kurabileceğiniz bir yazılım aracılığıyla 2FA kullanmanız mümkün olabilir. Bu imkan her zaman SMS'e tercih edilmelidir. Cihazınız zamana bağlı olarak çoğunlukla 60 saniye geçerli kodları yerel olarak üretecek ve size gösterecektir. Bunu yapmak için ilgili yazılımı çalıştırmanız ve hesap yöneticisinin size gösterdiği adımları takip edip ilgili karekodu okutmanız yeterlidir.

    • FreeOTP+ ve andOTP, Android cihazlarınızda 2FA kodları üretmek için kullanabileceğiniz özgür yazılımlardır.

andOTP kullanım rehberi

  • Donanımsal anahtarlar ile: Özellikle çift aşamalı yetkilendirme için tasarlanmış cihazlar güvenlik için en iyi çözümdür. Lakin donanımların pahalı olması sebebi ile pek az hizmet bu yöntemi tercih etmektedir. Bu amaçla kendi cihazınızı alıp yazılım yerine bu cihazlar ile kod üretimi yapabilirsiniz.

    • Yubikey: Sadece bir 2FA cihazı olmaktan çok daha fazlasını yapabilen en yaygın kullanılan çift aşamalı yetkilendirme cihazıdır. Birden fazla protokolü desteklemekle tavsiye edilebilecek ilk üründür.
    • RSA Tokens: Bulabilir ve kullanabilirseniz RSA donanımlarını kod tabanlı 2FA uygulamalarında kullanabilirsiniz.

Yubikey 2FA rehberi

2FA kullanırken nelere dikkat edilmeli?

2FA başkalarının hesabınıza girmesini etkili şekilde engellediği gibi sizin de hesabınıza erişmenizi aynı şekilde engelleyebilir. Bu sebeple 2FA kodlarınızın gönderildiği SIM kartınızı veya kodların üretildiği cihazınızı korumalısınız. Hayat sürprizlerle dolu olduğundan genellikle SMS harici her 2FA uygulaması size çoğunlukla 10 tane yedek kod verir. Bu yedek kodları bastırarak güvenilir bir yerde saklamanız hatta bir iki tanesini cüzdanınızda taşımanız şiddetle önerilir. Bu şekilde ikinci aşamanızı kaybetmeniz durumunuzda hesaplarınızdan mahrum kalmazsınız.

Ek okuma listesi

andOTP ile OTP Kurulumu

andOTP Android işletim sisteminde kullanılabilen özgür bir OTP yazılımıdır. F-droid aracılığı ile kurabileceğiniz andOTP'yi Freeotp ve Freeotp+ yazılımlarından ayıran şifreli veri tabanı, GPG şifreleme ve anahtar dışa aktarım gibi daha gelişmiş özellikleridir. Bu bakımdan andOTP neredeyse tüm OTP yazılımları gibi işlev görse de kullanım özellikleri bakımından daha ileri seçenekler sunmaktadır.

Kurulum

andOTP'yi tüm Android yazılımı dağıtan depolarda bulmanız mümkündür. Tavsiyemiz özgür F-droid deposundan kurulumunuzu yapmanızdır. Bunun için:

F-droid'de andOTP ismini aratıp install(yükle) seçeneği ile kurulumunuzu başlatın ve çıkan ekranda tekrar yükleye basarak kurulumunuzu tamamlayın.

alt-text alt-text alt-text alt-text

andOTP'yi çalıştırdığınızda sizi bir kurulum ekranı karşılayacaktır.

alt-text

andOTP'nin ayarlarından ilk belirlemeniz gereken veritabanının nasıl şifreleneceğidir. Bu noktada modern Android destekleyen cihazlarda parola ve anahtar deposu (keystore) şeklinde iki adet seçenek vardır. Keystore desteklenen cihazlarda donanımsal kriptografik bir aracın şifreleme anahtarlarını yönetmesini sağlar. Bu hem özgür olmayan bir donanıma güveni gerektirmekte hem de andOTP geliştiricisinin ifadesi ile uyumsuzluklarla sonuçlanabilmekte. Bu sebepten parola seçeneğini seçerek kuruluma devam edebilirsiniz.

alt-text alt-text

Parolanızı belirlemenizin ardından kurulum işlemi sonlanacak ve andOTP size parolanızı sorarak açılacaktır.

alt-text alt-text

Bir OTP token eklemek için sağ altta bulunan + simgesine tıklayarak kullanılabilecek seçenekleri görüntüleyip seçebilirsiniz.

alt-text

Çıkan seçeneklerden:

  • Scan QR code: OTP kullanacağınız hizmetin size gösterdiği karekod'u okutarak gerekli bilgilerin kaydedilmesine yarar.

  • QR code from image: Şayet hizmetin sağladığı OTP token karekodu bir fotoğrafta bulunuyorsa bunu gösterip bilgilerin girilmesini sağlar.

  • Enter details: OTP token bilgilerinin elle girilmesine imkan verir.

Bu seçeneklerden en yaygın olarak kullanacağınız scan qrcode seçeneğidir keza neredeyse OTP imkanı veren her hizmet kolay token ekleme için karekod ile kurulum sırasında kullanıcılarına imkan sağlamaktadır.

alt-text

Kameranız ile karekod taramak için ayrı bir yazılıma ihtiyacınız olabilir. Bu noktada yine özgür olan [Binary Eye](alt-text veya Barcode Scanner yazılımlarından birini öneririz.

Karekodu taramanız üzerine OTP token eklenecek ve talebiniz üzerine üretilmeye başlayacaktır. Bu noktadan sonra söz konusu token'e ait hizmeti kullanmak için andOTP'den aldığınız kodu belirtilen süre içinde girmeniz yeterlidir.

alt-text

Ayarlar

andOTP'yi kullanmak için özellikle ayarlarını değiştirmeniz gerekmiyor. Kimi ayarlar ileri kullanım ihtiyaçları için faydalı olabileceğinden göz atmakta fayda vardır.

alt-text alt-text

Yukarıdaki şekilde kilitlenme seçeneklerini ayarlamak andOTP'nin tuttuğu sırların korunması için en iyi seçeneği sağlayacaktır. Benzer şekilde söz konusu token'ler hesaplarınıza erişmenizde önemli rol oynayacağı için düzenli yedeklemelerinizi GPG ile şifrelemeniz için gerekli ayarları yaparak yedeklerinizi cihazınızdaki bir dizine kaydedebilir veya Android'in düzenli aldığı yedeklere şifreli şekilde güvenle ekleyebilirsiniz. Bunun için Openkeychain yazılımına ihtiyacınız olacaktır. Kullanımı için rehberimize danışabilirsiniz.

Yubikey ile 2FA Kurulumu

Yubikey çok amaçlı kriptografik bir güvenlik anahtarıdır. Günümüzde en yaygın kullanılan cihaz olmakla pek çok hizmet tarafından desteklenmekte ve fazlasıyla kullanım alanı bulmakta. Yubikey Neo'dan sonra özgür donanımları terk eden Yubico artık özel mülk sistemler üretmekte ve bu konuda bir açıklamaları bulunmakta.

Yubikey'in en yaygın kullanımlarından biri çevrimiçi hizmetlerde ikinci faktör olarak kullanımıdır. Bu amaçla Yubikey'ler birden fazla sistemi desteklemektedir.

  • TOTP: En yaygın kullanılan 2FA sistemi olarak zamana dayalı 6 haneli kod üretimine dayanır. Bu sistem akıllı mobil cihazlarda kullanabildiği gibi Yubikey üzerinde de kullanılabilmekte.

  • FIDO U2F: FIDO U2F Yubico ile Google tarafından geliştirilmiş bir 2FA teknolojisidir. Pek çok servis tarafından desteklenmekle, Yubikey üzerindeki sabit bir kriptografik anahtarın hizmetlere tanıtılması ile anahtarın kullanıldığı cihazlardan tek tıklama ile giriş imkanı sağlar.

  • OTP: Yubikey'in sahip olduğu özel anahtara bağlı olarak usb üzerinden klavye gibi cihaza yazdırdığı bir kod aracılığı ile kullanılan 2FA uygulaması. Yubikey sunucusu tarafından doğrulama yapılması ile kullanılmakta fakat son kullanıcı için çok yeri olduğu söylenemez.

Yubikey 2FA Tercihi

Hangi sistemi kullanacağınızın tercihi çoğunlukla size değil hizmet aldığınız şirkete kalmakta. Bu bakımdan hala çoğunluktaki hizmet sağlayıcıların 2FA desteklemediği öngörülürse destekleyen hizmetlerin tercihi hangi yöndeyse o imkanı kullanmanız biraz zorunlu gibi.

Bu bakımdan en çok kullanılan sistem TOTP olmakta. Keza hem akıllı mobil cihazlarda hem de Yubikey gibi kriptografik donanımlarda kullanılabildiğinden yaygın erişim imkanı hizmet sağlayıcılar için kullanımını makul kılmakta. Bugün neredeyse herkes bir çeşit mobil cihaz sahibi olduğundan soft token kullanımı yaygın. Yubikey ile söz konusu kullanımı daha güvenli gerçekleştirmeniz mümkün.

U2F ise daha yeni bir teknoloji olmakla birlikte yaygınlık kazanmakla birlikte daha seyrek görülen bir sistem. Kurulumu ve kullanımı OTP'ye göre çok daha kolay olmakla birlikte özel bir donanım gerektirmesi yaygınlığını etkilemekte. Aynı zamanda giriş için kullanılan donanıma kesin suretle bağlı bir anahtarı kullandığından hem daha güvenli hem de yedekleme yapamadığınızdan kaybetmeniz durumunda sıkıntı doğurabilmekte.

TOTP kurulumu

Bilgisayar üzerinden

Uçbirim ve Ykman ile

Bilgisayar üzerinden Yubikey ile OTP kullanımınını hem uçbirimden hem de grafik arayüz üzerinden gerçekleştirmek mümkün. Gerekli işlemleri yerine getirebilmek için aşağıdaki komut ile bilgisayarınıza ihtiyaç duyulacak yazılımları yükleyebilirsiniz:

Debian : sudo apt-get install yubikey-manager yubikey-personalization yubikey-personalization-gui

RPM : sudo yum install yubikey-manager yubikey-personalization yubikey-personalization-gui

Gerekli yazılımları elde ettikten sonra OTP kullanacağınız hizmetin ayarlarına gelip muhtemelen güvenlik adı altında bulacağınız çift aşamalı yetkilendirme (Two Factor authentication veya 2FA) bölümüne gelip söz konusu güvenlik tedbirini etkinleştirin. Bu rehberde Protonmail kullanılmıştır.

OTP soft token olarak mobil cihazlarda kullanılması düşünüldüğünden bir karekod şeklinde hizmet sağlayıcı tarafından sunulacaktır. Bu karekod aslında paylaşılan sırrı ve süre ile kritopgrafik ayarlara ilişkin detaylar içermekte. Bu bilgileri elle de girmek mümkün ki bilgisayarda bu şekilde yapılması gerekli. Elle giriş seçeneğini seçerek gerekli detaylara ulaşabilirsiniz.

alt-text alt-text

ykman Yubikey'leri uçbirimden kullanmaya ve programlamaya yarayan bir yazılım. Bu yazılım ile hizmet sağlayıcı tarafından verilen bilgileri cihaza işlenebilmekte. Bunun için aşağıdaki komutu kullanabilirsiniz.

ykman oath add [token'e vermek istediğiniz isim]

Uçbirim sizden hizmet sağlayıcının verdiği sırrı isteyecektir. Bunu girmeniz üzerine OTP token Yubikey'e eklenir.

Enter a secret key (base32):AUVROVQ4NDQGYRNC56WBTUKAYELPP43V

Yukarıdaki seçenek en yaygın kabul gören standartları kullandığından çoğu ayarı varsayılan olarak kabul eder. Bu bakımdan bir OTP token ile ilgili daha fazla ayarı özelleştrmeniz gerekiyor ise ykman oath -h ile girilebilecek parametrelere bakabilirsiniz. Lakin aşağıdaki komut çoğu koşulda kullanım ihtiyacına yetecektir.

ykman oath add --digits [kaç haneli kod üretilecek 6|7|8] ---issuer [hizmet sağlayıcının adı] --period [kaç saniyelik kod üretilecek] [token'e vermek istediğiniz isim]

Örnekle Protonmail'dan guvenlik@protonmail.com e-postası için OTP ayarlarını yapıldığı varsayılır ise:

ykman oath add --digits 6 --issuer Protonmail --period 30 guvenlik

Şayet Yubikey'in kod üretmeden önce düğmesine basılmasını bir güvenlik ihtiyacı olarak isterseniz komutu -t parametresi ile verebilirsiniz. Böylece bilgisayarınıza takılı durumda Yubikey'den kod istendiğinde Yubikey sizden onay isteyecektir. Bu cihazdaki her yazılımın siz farkına varmadan kod talep edebilmesinin önüne geçer.

Şayet OTP kodlarınızın Yubikey'i eline geçirenlerde sorunsuzca elde edilmesinin önüne geçmek isterseniz bir pin ile koruma altına alabilirsiniz. Bunun için aşağıdaki komutu kullanıp pin belirleyebilirsiniz.

ykman oath set-password

Parola/pin'inizi iki kere girdikten sonra yubikey'den otp token almak için bu bilgiyi sunmanız gerekecektir. Dilerseniz güvendiğiniz cihazlarda bu parolanın hatırlanmasını sağlayabilirsiniz. Bilgisayarınızda bunun için aşağıdaki komutu çalıştırıp pin/parolanızı girin.

ykman oath remember-password

Token'i cihaza yazabildiğinizden emin olmak ve kod almak için aşağıdaki komutları kullanabilirsiniz:

Tüm token'ları almak için: ykman oath code

Belirli bir token'ı almak için: ykman oath code [token adı]

Token'i başarılı şekilde üretebildikten sonra kullandığınız hizmet sağlayıcı sizden her şeyin yolunda olduğunu doğrulamak adına parolanızı ve ilgili token'in geçerli bir çıktısını isteyecektir.

alt-text

İşlemin başarılı olmasının ertesinde hizmet sağlayıcınız tarafından bir miktar tek kullanımlık parola oluşturulup size sunulacaktır. Bu kodlar OTP olmadan giriş imkanı sağlayacağından dikkatli saklanmalıdır. Bu kodlar ile şayet cihazınıza erişiminizi kaybederseniz hesabınıza erişim imkanı tanımaktadır. Bunları yazdırıp güvenli bir yerde saklamanız önerilir.

alt-text

Grafik arayüz ile

Bu bölüme katkı verebilirsiniz.

Mobil cihaz ve NFC ile

İşin gerçeği mobil cihazlarla Yubikey'e OTP kurulumu çok daha kolay gerçekleşiyor. Bu özellikten mobil cihazlarda yararlanmak için Yubikey'inizin NFC desteklemesi veya doğrudan USB portundan cihazınıza bağlanması gerekli.

OTP kullanımı için cihazınızda Yubico Authenticator yazılımının yüklü olması gerekli. F-droid özgür yazılım deposundan ilgili yazılımı elde edebilirsiniz.

alt-text

Alt kısımda bulunan + simgesine basarak yeni bir token eklemek üzere işleme başlayabilirsiniz. Yubico Authenticator size karekod okutmak veya bilgileri elle girmek üzere iki seçenek sunacaktır. Çoğunlukla bir karekod size sunulacağıdan ilgili seçenek ile işleme devam edin.

alt-text

Karekodu okutmanız üzerine gerekli bilgiler ekrana doldurulup karşınıza çıkarılacaktır.

alt-text

Save demeniz üzerine yazılım sizden Yubikey'i cihaza okutmanızı isteyecektir.

alt-text

Şayet Yubikey OTP modülü pin ile korunuyorsa pin girişi talep edilip tekrar yubikey'i okutmanızın ardından token eklenmesi tamamlanacaktır.

alt-text

Yubikey'inizi cihaza her okuttuğunuzda Yubico Authenticator çalışacak ve size kayıtlı olan OTP kodlarını verecektir.

alt-text

U2F kurulumu

FIDO U2F tarayıcı temelli bir yetkilendirme sistemi. Kurulumu kolay olmakla birlikte ileriki zamanlarda bu durum değişebilecek olmakla birlikte daha az hizmet tarafından desteklenmekte. U2F kurulumu destekleyen bir hizmete Yubikey kurulumu yapmak çok basit. Güvenlik ayarlarında güvenlik anahtarı (security token) başlıklı bir bölüm bulunuyor ise Yubikey ile U2F kurulumu yapabilirsiniz.

alt-text alt-text

Kurulumu başlattıktan sonra çeşitli şekillerde sizden Yubikey'inizi bağlamanız ve dokunarak etkinleştirmeniz istenecektir. Bu noktada Firefox size sitenin yetkilendirme talep ettiğine dair bir uyarı çıkaracaktır.

alt-text alt-text alt-text

Kaydın başarılı olması üzerine hesabınıza anahtarınız tanımlanacaktır.

Bu durumda kaydettiğiniz yubikey'in kaybolması durumunda hesabınıza erişemez hale gelebilirsiniz. Bu neden ile ikinci bir güvenlik tedbirini daha kaydederek bu duruma engel olmanız mümkün. Bunun için Akıllı cihaz üzerinden OTP kullanımını tavsiye ederiz.

Yubikey'de U2F yetkilendirmesine pin veya parola ile tedbir koyulamamakta. Bu nedenle Yubikey'inizi elinde bulunduran biri herhangi bir sorun çekmeden ikinci faktör olarak cihazınızı kullanabilir. Bu sebepten Yubikey'inizi iyi korumanız önerilir. Bu tehdit modeli sizin için geçerli ise Yubikey ile TOTP OTP kullanımı pin ile korunabildiğinden daha güvenli olacaktır.

Fiziki Güvenlik

Bir cihazın güvenliği sadece yazılımsal değil aynı zamanda donanımsal koşullara da bağlıdır. Teknik olarak cihazınıza uzaktan gelebilecek tehlikelere karşı tedbir alsanız bile cihazınıza fiziki erişimi olan bir saldırganın, çok daha etkili ve görünmez saldırılarına maruz kalmanız işten bile değildir. Bu tip saldırılara karşı alınabilecek tedbirler yine fiziki olmaktadır.

Fiziki erişimi ile gerçekleştirilebilecek saldırılar, basit bir web araması ile elde öğrenilebileceklerden ulus devlet seviyesinde kaynakları gerektiren yöntemlere uzanmaktadır. Bu bakımdan fiziki erişim ile yapılabilecek saldırılar sadece filmlerde görülebilecek cinsten zorlukta değildir.

Fiziki saldırılara karşı alınabilecek tedbirler hem teknik hem de beşeri olmaktadır. Basit davranış değişiklikleri ile cihazlarınızın fiziki güvenliğini çok daha iyi hale getirebilir, teknik tedbirlerle cihazlarınızı çok daha zorlu hedefler kılabilirsiniz.

Cihazlarınızı yanınızdan ayırmayın

Cihazlarınıza kimsenin dokunmadığından emin olmanın en ucuz ve en kesin yolu cihazlarınızdan gözünüzü ayırmamaktır. Her ne kadar basit bir tavsiye gibi görünse de cihazlarımızı terk ettiğimiz zamanlar değerlendirildiğinde pek çok kişinin dikkat etmesi gerektiği ortaya çıkacaktır.

Elbette tüm cihazlarınızı sürekli üzerinizde taşımak tehdit modelinize bağlı olarak anlamlı olabileceği gibi gereksiz bir yük de yaratabilir. Bu bakımdan iki koşulun değerlendirilmesinin önemi ortaya çıkmaktadır.

  • Cihazlarınızı bıraktığınız/kullandığınız ortamın fiziki güvenliği

  • Cihazlarınızın müdahaleye dayanıklılığı

Bu iki koşulu size tehlike oluşturabilecek saldırıların imkanları ile kıyaslayarak anlamlı bir modelleme yapmanız mümkündür. Şayet cihazınızı pek de tanımadığınız insanlarla birlikte çalıştığınız işyerinizde bırakıyorsanız cihazlarınız için pek çok yönden endişe edebilirsiniz. Söz konusu alan kamera ile izleniyor ve görüntüleri tutan kişilere güvenebilirseniz riskiniz azalabilir. Evinizde bıraktığınız bilgisayarınız görece daha güvende olacaktır. Şayet evinizi veya bilgisayarınızı koruyacak bir alarm sisteminiz varsa daha az risk içinde sayılırsınız.

İçinde bulunduğunuz durumun maddi koşulları ile cihazlarınızı terk ettiğiniz alanların koşullarının bir kıyaslamasının her an yapılması gerekli. Bu konu hakkında Evil Maid kavramı altındaki yaklaşımları inceleyebilirsiniz.

Cihazlarınızı gözetim altında tutun

Şayet cihazlarınızı taşıyamıyor veya taşımak istemiyorsanız, cihazlarınızı sürekli gözetim altında bulundurmayı değerlendirebilirsiniz. Bu cihazlarınıza yapılacak bir müdahaleyi engellemeyecek olsa da saldırganı caydırabilir, sizden habersiz müdahale edemeyecek olduğundan dolayı saldırının anlamını yitirmesine neden olabilir veya durumun farkında olmayan bir saldırganı kayıt altına alabilir. Her halükarda kayıt sisteminizin de güvenliğini düşünmeniz ve gözetim sisteminizin sizi olası durumlarda uyaracağından ve kayıtlara kolayca müdahale edilemeyeceğinden emin olmanız gerekir. Şayet hiç bakmadığınız veya baktığınızda silinmiş bir kamera kaydı bir girişimi kaydetse bile çok işinize yaramayacaktır.

Bu amaçla tasarlanmış ilginç projelerden biri olarak Guardian Project tarafından geliştirilen Haven dikkate değerdir. Bir android telefonu güvenli bir gözetim aracına çevirmeye yarayan Haven, cihazın sensörleri ve kamerası ile izlediği alandaki değişiklikleri kaydedip kullanıcısına Signal ve TOR üzerinden haber verebilmekte.

Cihazlarınızı girişimlere dayanıklı hale getirin

Cihazlarınızı fiziki müdahalelere karşı dayanıklı hale getirmek hem donanımsal/yazılımsal tedbirleri hem de cihazınıza yapılan müdahaleleri ortaya çıkaracak fiziki tedbirleri kapsamaktadır.

Yazılımsal/Donanımsal tedbirler

Cihazınızın /boot sektörünü ve tüm açılış aşamalarını kriptografik araçlarla kontrol altına alarak bir saldırganın bu süreci bozmasını engelleyebilirsiniz. Bu pek çok basit ve gelişmiş saldırıyı durdurma potansiyeline sahip bir tedbir olmakla kimi zaman özel donanım ve emek gerektirmektedir.

Fiziki güvenlik tedbirleri

Cihazınıza fiziki girişimde bulunmak genellikle bir biçimde cihazınızın açılmasını gerektirebilir. Bu cihazın donanımlarına bir ekleme yapmak veya ram ve sabit sürücü gibi donanımların çıkarılarak/değiştirilerek müdahale edilmesi olabileceği gibi kabaca kilidi açık cihazınızın elinizden kapılması da olabilir. Bir saldırganın yapacağı değişikliklerin ifşa olacağını fark etmesi hem caydırıcı hem de genel olarak güven verici bir önlemdir.

Haven ile Güvenli Ortam İzlemesi

Bu sayfaya katkı verebilirsiniz.

Simli Oje ve Entropi ile Fiziki Cihaz Güvenliği

Fiziksel güvenlik cihazların güvenliğinin sağlanması açısından ciddi bir endişe olarak var olmakta. Her ne kadar boot güvenliği veya şifreleme gibi yazılımsal kaynaklı güvenlik tedbirleri kimi saldırıları engelleyebilecek olsa da fiziken cihaza yerleştirilecek bir cihaz aracılığı ile gerçekleştirilebilecek saldırılara karşı çok az koruma sağlamaktadır.

Fiziki tedbirlerin amaçlarından biri de kullanılan cihazlara yapılabilecek fiziki müdahalelerin nasıl engellenebileceği veya yapılan müdahalelerin nasıl fark edilebileceğinden oluşmakta. Keza donanıma yapılan bir müdahalenin doğrulanması kimi zaman imkansıza yakın olabilecek olduğundan pratik olarak soruna getirilebilecek en iyi çözüm müdahalenin olmadığından emin olmaktan geçmekte.

Bu açıdan cihazların göz önünden ayrılmaması en önemli tedbir olsa da günlük yaşantımızda bunun mümkün olmadığı pek çok durum söz konusudur. Masaüstü bilgisayarlar bulundukları yerde kalmak, kimi kısıtlı alanlara girilirken mobil cihazların terk edilmesi zorundadır. Bu gibi durumlarda söz konusu fiziki alanların güvenliği ve bu alanlarda cihazlara erişimi olanlara olan güven endişenin temelini oluşturmakta. Keza bir cihazın açılıp gerekli değişikliklerin yapılması çok fazla vakit istememekte ve yeterince istekli bir saldırgan pek çok olağan tedbiri aşmaya imkan sahibidir.

Sim ve Entropi

Bir cihazın açılıp açılmadığını öğrenmeye yakın zamanlara kadar en hevesli kişiler bize chazları çoğunlukla kaçamak garantiler kapsamında satan şirketlerdi. Cihazların çeşitli alanları üzerinde, çoğunlukla bir vida veya kapağın eşiğinde bulunan "açılırsa garanti kapsamı biter" kapsamındaki etiketler, "tamper evident" yani emniyet etkietleri bu amaç doğrultusunda kullanılmaktadır. Bu etiketler çeşitli mekanik ve kimyasal yöntemlerle etiketin açılıp kapandığını belli eden özelliklerle donatılmakla olağan kullanıcı için belli etmeden müdahaleyi çok zorlaştırmaktadır.

alt-text

Lakin sizi, bilgisayarınızı ve kullandığınız etiketi bilen veya dünyadaki her güvenlik etiketinden bir tane bulundurmaya gücü yetecek bir saldırgan için bu etiketlerin bir engel teşkil ettiği söylenemez. Keza bilgisayarınızdaki etiket çıkarılıp yerine aynısından bir tane yapıştırılmış olursa cihazınıza müdahale edildiğine dair nasıl bir izlenim edinilebilir? Güvenlik etiketleri seri üretim ürünler olmakla belirli bir tasarımda ve topluca üretilmekteler. Bu etiketleri fiziki özelliklerini belirli kıldığından iki etiket arasındaki fark da felsefi düzeyde kalmaktadır.

Belirlenebilirlik bir sorun olduğu zaman çözüm neredeyse her zaman belirlenemezlikle yani entropi ile çözülmektedir. Parolalarınızı koruyan entropi ile aynı kapsamda cihazınızı koruyacak etkiet de entropiden faydalanır. Şöyle ki; şayet bir saldırgan dünyada seri üretimde bulunan veya özel ürettirmiş olsanız bile bilgi sahibi olduğu bir etiketten yaptırabilir lakin tamamen rastgele olan bir etiketten üretmesi çok ama çok zordur.

Bu sorunun çözümü olarak Chaos Computer Club'ın 30c3 konferansında eric Michaud ve Ryan Lackey tarafından yapılan sunumda neredeyse her kozmetik dükkanında bulunabilecek simli oje önerilmektedir. Fikir ojenin içerdiği simlerin her boyamada tamamen rastgele sonuçlar vermesine dayanmaktadır. Bu şekilde cihazın vidalarına ve/veya portlarına yapılan mühürler daha sonra kontrol edilerek bozulup bozulmadığından görece emin olunabilmektedir. Keza aynı şekilde mührü oluşturmak veya bir iz bırakmadan çıkarıp yerine takmak pek kolay bir iş değildir.

Simli oje ile mühür oluşturmak

Cihazlarınızın güvenliğini simli oje ile sağlamak için öncelikle doğru ojeyi bulmanız gereklidir. Bu olağan ojeler gibi kişisel bir tercihten ziyade içindeki sim ve özellikleri ile ilgili. Kullanacağınız ojenin aşağıdaki özellikleri göstermesine dikkat etmelisiniz.

  1. Simler homojen olmamalıdır.
  2. Simler gözle seçilebilecek büyüklükte olmalıdır.
  3. Mümkün ise farklı renk ve şekillerde simler içermelidir.
  4. Ojenin sıvısının şeffaf olması tercih sebebidir.

Bu şekilde ojeniz daha fazla belirsizlik içerecek ve inceleme için daha elverişli olacaktır.

Ojenizi edindikten sonra aşağıdaki adımlarla başlayabilirsiniz.

Cihazınızda uygun yeri belirleyin

Güvenliğinden endişe ettiğiniz cihazınızın sökülebilir kısımlarını çıkarmak için mutlaka müdahale edilmesi gereken yerleri tespit edin. Bu cihazın ortalarında olan bir vida olabileceği gibi bir kapağın eşiği veya cihazın her vidası olabilir. Bu incelemeyi yaparken veri yönünden kritik görünmese de cihazın içine bağlı ekran gibi diğer alanları da dahil etmeye dikkat edin. Şayet port girişlerini de kapatmak isterseniz bunları bir cins bant ile kapatıp bantların köşelerinden taşacak şekilde mühürleyebilirsiniz.

Aşağıdaki cihaz ve konumları değerlendirmeniz önerilir.

  • Kritik alanlardaki vidalar
  • HDD ve RAM kapakları
  • Cihazın kasasının birleşme noktaları
  • Portlar
  • USB belleklerin girişleri
  • Taşınabilir donanımların birleşim yerleri

Mühürlenecek alanı temizleyin

Ojenin iyice tutunabilmesi uygulanacağı alanın temizliğine bağlı. Bu bakımdan toz, yağ, parmakizi gibi kirleticiler mühürün dayanıklılığına etki edecektir. Temizlik için alkol içeren bir çözelti veya aseton kullanabilirsiniz. Aynı zamanda mühürü ileride çıkarmak ve cihazınıza zarar gelmemesi arzunuz ise cihazın üzerinde kaplama olmayan bir alan tercih etmeniz önerilir.

Şayet mühürün dayanıklılığına ciddi bir yatırım yapmak istiyorsanız uygulama alanını zımparalayarak tutunmayı arttırabilirsiniz ama pek çok durum için bu aşırı olacaktır. Aynı zamanda vida delikleri derin olan cihazlarda deliği bir kağıt veya pamuk ile kapatmak ojenin içeri kaçmasını engelleyecektir.

alt-text

Ojenizi sürün

Uygulama alanına simli ojenizi damlatarak veya bolca sürerek uygulayın. Burada amaç birleşik ve parçalı olmayan kalın bir tabaka elde etmek. Ojenizden yeterince simin yüzeye aktarıldığından emin olun. İşlemin ertesinde ojeye kuruması için yeterli süreyi tanıyın.

alt-text

Mühürlerin fotoğrafını çekin

Her ne kadar simleri ve konumlarını hatırlayabileceğinizi düşünseniz de gerekli olan güvenlik payı en küçük değişikliklerin fark edilebilmesini gerektirmekte. Bu amaçla yaptığınız her mührün iyi aydınlatılmış bir ortamda bulanık olmayan yakın bir fotoğrafını çekin.

Bu fotoğrafları yanınızdan ayırmayacağınız bir aygıt üzerinde depolamanız gerekmekte. Bu amaçla elinizden alınmayacağı bir koşulda telefonunuzu kullanmanız mümkündür. Daha iyi bir seçenek artık fazlasıyla ucuz ve küçük olan microSD hafıza kartına bu fotoğrafları koyup üzerinizde dikkat çekmeyecek bir yerde bulundurabilirsiniz.

GPG anahtarınızı hazırlayın

Bu aşama zorunlu olmasa da yapacağınız mührü kontrol etmek için kullanacağınız fotoğrafların değiştirilmediğinden emin olmanın tek yolu kriptografik olarak imzalamaktan geçmektir. Bu hem fotoğrafları içeren aygıtın kontrolünü kaybetmeniz durumunda önem taşır hem de uzun vadede bu mührü korumanızı kolaylaştırır.

GPG ve kullanımı size yabancı konular ise GPG rehberimizden faydalanabilirsiniz.

Mührün kontrol edilmesi

Bir tehlikenin atlatılması ertesinde mühürün bütünlüğünü kontrol etmek için, benzer ışık koşullarında tekrar fotoğraflayıp iki fotoğraf arasında gidip gelerek benzerliğini gözle doğrulayabilirsiniz.

Private Lock ile Kapkaç Önlemi

Günümüzde neredeyse yaşam zorunluluğu haline gelmiş mobil cihazlardan olan akıllı telefonlar, en önemli verilerimizi tuttuğumuz araçlar konumundalar. Bu durum söz konusu cihazları ciddi bir mahremiyet ve güvenlik riski haline de getirmekte.

Mobil cihazlar, çalınma ve kaybolma riski içinde kullanıldıklarından şifreleme neredeyse zaruri bir güvenlik tedbiri. Lakin bilgisayarlara nazaran mobil cihazlar neredeyse hiç kapatılmadığından şifreleme anahtarları sürekli olarak RAM üzerinde durmakta ve ekran kilidinin açık olduğu her an cihazın içeriğindeki neredeyse tüm bilgiler cihazı elinde tutanın insafına kalmakta.

Bu tehlikenin gerçekleşme riski teorik bir tartışma değil. Birleşik Krallık'ta bir polis teşkilatı yasal olarak bir zanlıya kapkaç yaparak söz konusu imkanın gerçek hayatta kullanımının mümkün olduğunu herkse göstermiş bulunuyor. Buna telefonu elinizden alıp akla hayale gelmeyecek şeyler yapabilecek yakınlarınız ve arkadaşlarınızı da eklerseniz konuya karşı tedbir almak yerinde görülebilir.

Private Lock

Private Lock F-droid yazılım deposunda bulunabilecek özgür bir yazılım olarak cihazınızın elinizden kapılması veya düşürülmesi gibi ani hızlanmalarda ekranını kitleyerek güvenlik sağlıyor.

Öncelikle F-droid üzeriden Private Lock uygulamasını indirerek cihazınıza kurun ve çalıştırın. Kısa bir tanıtımın ardından aşağıdaki basit ekran ile karşılaşacaksınız.

alt-text alt-text

Private Lock fazlasıyla basit bir yazılım. 0-40 arasında derecelendirilen değer cihazınızdaki jiroskop sensörüne bağlı olarak hangi kuvvetlerde cihazınızın kilitleneceğini belirlemekte. Hemen altta bulunan dairede ise cihazınızın sensöründen o anda gelen tepkinin değeri verilmekte. Dairenin tamamen yeşil olması durumunda telefonunuz kilitlenmekte. 0 ile 40 arasındaki dereceyi ayarlayarak telefonunuzun içine düşebileceği fiziki koşulları deneme yolu ile uygun ayarı bulmanız gerekli. Bir arkadaşınızdan telefonu elinizden olabildiğince nazik şekilde habersiz kapmasını isteyin. Telefonunuz kilitleninceye kadar ayarı uygun şekilde düzenleyin.

NOT: Ayarı çok düşük yapmanız durumunda olağan kullanımlar sırasında da can sıkıcı kilitlenmelerle karşılaşabilirsiniz.

Ayarlar

Private Lock çok karmaşık işlevler sunan bir yazılım olmadığından ayarlar bölümünd sadece dört tane seçene bulabilirsiniz.

alt-text

  • System start: Cihazınız açıldığında Private Lock'ın başlamasını sağlayacaktır.

  • Haptic feedback: Cihazınızın kilitlendiğini bir titreşim ile size bildirilmesini sağlar.

  • Run service when locked: Ekran kilidi devrede iken de kilitleme işlevinin etkin olmasını sağlayarak ekran kilidini her an devreye sokulmasını sağlar.

Ayarları dilediğiniz gibi yapabilirsiniz. Tavsiyemiz "system start" ile "run service when locked" seçeneklerinin işaretli olmasıdır.

Dikkat edilmesi gerekenler

  1. Private Lock kusursuz değildir. Kimi zaman istenmeyen zamanlarda kilitleme yapabileceğinden bununla biraz yaşamanız gereklidir.

  2. Aynı sebepten Private Lock gerçekten gerektiğinde çalışmayabilir. Keza jiroskop her zaman doğru değer ölçemediği gibi yaşanan kapkaç olayının şiddeti duruma etki edecektir. Bu özellikle ayarın gereğinden yüksek yapıldığı durumlar için geçerlidir.

  3. Private Lock sürekli olarak jiroskop sensörünü dinleyeceği için cihazınızın şarjından bir miktar tüketecektir. Kullanılan cihazlarda bu belirgin olmamakla birlikte dikkat edilmesi gerekebilir.

Locker ile Ekran Kilidi Güvenliği

Locker Android cihazlarda ekran kilidinizin deneme sayısını belirleyip bu sayının aşılması durumunda cihazınızdaki tüm verileri silmeye yarayan basit bir yazılımdır.

Locker'i özgür uygulama deposu F-droid aracılığı ile cihazınıza kurabilirsiniz. Locker'i çalıştırdığınızda sizi gayet basit bir ekran ile karşılayacaktır.

alt-text alt-text

Kurulumun ardından Locker'i çalıştırıp ekrana gelen ayarları yapmaya başlayabilirsiniz.

alt-text

İlk olarak admin enabled seçeneğini işaretleyerek işletim sisteminizde Locker'e yönetici yetkisi vermeniz gerekli. Bu seçenği işaretlemenizle birlikte cihazınız sizden bu konuda yetki talep edecektir.

alt-text

Yetki ardından ayarları dilediğiniz gibi yapabilirsiniz. Ana ekrandan kaç deneme ertesinde cihazın sıfırlanacağını belirledikten sonra `Disable Lock Screen Warning' seçeneğini seçerek ana ekranda cihazın kendini sıfırlayacağına dair uyarı çıkmasını engelleyebilirsiniz. Bu seçenek bir arkadaşınızın laf olsun diye cihazınızı sıfırlamasına karşı uyarı gösterecek olsa da saldırganın durumdan haberdar olup denemelerini durdurmasına da sebep olacağından kullanım koşuluna göre değerlendirilmesi gereklidir.

Gerekli ayarların yapılması ardından Enable düğmesine basarak korumayı devreye alabilirsiniz.

alt-text alt-text

Bu noktadan sonra ekran kilidinizde belirlediğiniz sayıda hata oluşması durumunda cihazınız içindeki tüm verileri silerek sıfırlanacaktır. İstenmeyen bir durumun gerçekleşmesine karşı dikkatli olmanız ve düzenli olarak yedek almanız şiddetle önerilir.

Yazıcılarınızdaki tehlike: Machine Identification Code

MIC

Yazıcınızdan çıktı aldığınız bir kağıdın, sizi takip etmek için kullanılabileceği fikri sanki Hollywood filmlerinden bir sahne gibi duyuluyor olabilir, ancak içinde yaşadığımız dünyada artık bu da mümkün olabiliyor.

Xerox ve Canon tarafından 80’li yıllarda geliştirilen Machine Identification Code (MIC), yazıcıdan çıkan her kağıda ilk bakışta gözle görülemeyen bir grup nokta çizerek daha sonrasında ilgili kağıdın kaynağının tespit edebilmesini sağlayan bir teknolojidir. Asıl amacının banknot sahteciliğine karşı bir önlem olduğu ifade edilen MIC, uzun yıllar açığa çıkmamış, ilk defa 2004 yılında Hollanda hükumetinin bir grup kalpazanı tespit etmek için bu teknolojiyi kullanmasıyla bilinir hale gelmiştir. Aynı yıl PC World dergisi bu sistemin uzun yıllardır sahte para basan kişileri tespit etmek için kullanıldığını açıklamıştır.

MIC

2005 yılında Electronic Frontier Foundation, birçok kişiden topladığı örnekleri bir araya getirerek MIC’nin nasıl çalıştığını çözmüş ve pek çok yazıcı üreticisi tarafından bu sistemin kullanıldığını ortaya çıkartmıştır. Sistemin devletler ve şirketler tarafından tam olarak nasıl ve ne şekilde kullanıldığı hakkında hala çok fazla bilgi yoktur, ancak 2015 yılında yine EFF tarafından, tüm büyük renkli yazıcı üreticilerinin devletlerle yazıcı çıktılarının izlenebilir olmasını sağlamak üzere gizli bir anlaşma yaptıkları iddia edilmiştir.

Bu sistemde, alınan her çıktının üzerine yazıcının modeline bağlı olarak belirli bir düzende sarı renkli noktalar yerleştirilir. Bu noktalar normal şartlarda gözle görülmez, ancak çok yüksek çözünürlükte tarayıcılar sayesinde veya morötesi ışık altında görünebilir hale gelirler. CCC tarafından, bırakılan kodun teoride 64 bayt veri depolayabildiği ifade edilmiştir.

Günümüzde bu sistemi tam olarak hangi üreticilerin hangi modellerinde kullandığı yayınlanmamıştır.

Bu sistem sayesinde, devletler ve sisteme erişimi olan tüm taraflar yazıcılardan alınan çıktıları takip edebilmektedir. Bu durum, belge sızdıran kişiler ve muhalifler için bir tehdit unsuru olabilir. Yazıcınızdan aldığınız bir çıktı, bir gün bazı kesimlerin hoşuna gitmeyebilir ve kolayca tespit edilebilirsiniz.

MIC

MIC’den korunmak için, alacağınız yazıcının ilgili özelliği ihtiva edip etmediğini kontrol edebilirsiniz. H-Node isimli web sitesi, özgür yazılımlarla çalışan donanımların listelendiği bir dizindir. Burada yazıcılar bölümündeki her yazıcı için ilgili teknolojiyi ihtiva edip etmediği bilgisine yer verilmiştir.

Ayrıca 2018 yılında Dresden Teknik Üniversitesi’ndeki bir grup bilim insanı tarafından geliştirilen deda aracı, yazıcınızdan çıkan kağıtlardaki MIC verisini anonimleştirebilmekte ve bu yolla güvenliğinizi ve mahremiyetinizi sağlayabilmektedir.


© 2020 Özcan Oğuz - CC BY-SA Orijinal kaynak

Sınır geçiş güvenliği

Eğer ABD sınırından geçmeyi planlıyorsanız, sınır personeli verilerinize erişmek isteyebilir ya da el koymaya çalışabilir. Bu rehber, ABD sınırında sorun yaşamamanız için bazı tavsiyeler içermektedir.

Öncelikle tehdit modelinizi gözden geçirin ve kendi durumunuzu sorgulayın. Vize durumunuz, seyahat geçmişiniz, taşıdığınız verinin hassasiyeti, dahil veya yakın temasta olduğunuz kurumlar ve benzeri faktörler yaşayacağınız süreci belirleyecektir.

SINIRDA ÇOK YÜKSEK İHTİMALLE TEK BAŞINIZA OLDUĞUNUZU VE ABD İSTİHBARATININ TAHMİN ETTİĞİNİZDEN ÇOK DAHA FAZLA BİLGİYE SAHİP OLABİLECEĞİNİ UNUTMAYIN.

Seyahatinizden önce yapmanız gerekenler

  • Taşıdığınız verinin miktarını azaltın. Alıkonulma ihtimaline karşı geçici cihazlar kullanmayı, mevcut cihazlarınızdaki verileri temizlemeyi ve ihtiyaç duyacağınız elzem verileri bir uzak sunucuya koymayı düşünebilirsiniz. CİHAZLARINIZDA HİÇBİR VERİ TUTMAMANIZ ŞİDDETLE TAVSİYE EDİLİR.
  • Verilerinizi şifreleyin. Cihazlarınızı basit ekran parolaları yerine tam disk şifreleme ile şifreleyin. Cihaz Şifreleme rehberimizi takip edebilirsiniz.
  • Parolalarınızı güvenli olanlarla değiştirin. Hatta mümkünse bir Zarola kullanın.
  • Verilerinizi yedekleyin. Cihazlarınız alıkonulursa verilerinize erişebilmek için uzak ve güvenli bir konumda verilerinizi yedekte tutun.
  • Cihazlarınızı tamamen kapatın. Cold boot gibi saldırılara karşı cihazlarınızı kapalı konumda tutun.
  • Parmak izi kullanmayın. Sınırdaki bir ajanın parmağınızı zorla kavrayıp okuyucuya bastırması çok kolaydır, bunu unutmayın.
  • Mümkünse cihazlarınızı ojeleyin. Cihazlarınızın açılıp açılmadığını anlamak için faydalı olacaktır. Nasıl yapacağınızı öğrenmek için rehberimize bakabilirsiniz.
  • Tüm hesaplarınızdan çıkış yapın. Eğer cihazınızda yine de veri tutuyorsanız, uzak sunuculara bağlanan hesaplarınızdan çıkış yapın.
  • Rahat olun. Aşırı güvenlik, her zaman güvenlik demek değildir. Çok üst düzey güvenlik tedbirleri ortada hiçbir şey yokken sınır görevlilerini şüphelendirebilir.
  • En yakın konsolosluğun numarasını bir kenara yazın. Yaşanabilecek ciddi sorunlar halinde son çare olarak ulaşabilmeniz için en yakın konsolosluğun iletişim bilgilerini bir kağıda not alın.

Sınırdayken yapmanız gerekenler

Eğer sınır görevlileri cihazlarınızı açmanızı ya da parolalarınızı girmenizi isterse ne yapmalısınız? Maalesef bunun için kesin bir cevap yok.

  • Güvende kalmaya çalışın. Sakin olun ve görevlilere saygılı davranmaya çalışın. Kesinlikle görevlilere yalan söylemeyin, anlaşılması halinde ağır sonuçlarla karşılaşabilirsiniz.
  • Eğer isteklerini kabul ederseniz, görevliler cihazlarınızı dikkatli bir biçimde inceleyebilir ve dahi verilerinizin bir kopyasını alabilir. Bu yüzden cihazınızda hiçbir şey barındırmayın.
  • Eğer isteklerini reddederseniz ve ABD vatandaşı değilseniz, sınır görevlileri sizi ülkeye almama hakkına sahiptir.

Ek okumalar

Cihaz Güvenliği

Güvendiğiniz cihazlar, güvenmediğiniz şirketler

Sayısal dünya ile kurduğunuz her iletişim, elektronik bir cihaz ile etkileşim gerektirmekte. Artık yaşamın kaçınılmaz gereklilikleri olan cihazlarımız bizimle ilgili her türlü bilgiyi, en derin sırlarımızı içermekle en çok güven duyulması ve korunması gereken nesneler konumundalar. Cihazlarımıza olan güvenimiz, devletlerin ve şirketlerin kontrol çabası altında neredeyse yok durumunda. Çoğu kimse kullandıkları cihazlara güvenmediklerini açıkça beyan etmektedir.

Cihazlarımızı güvenli kılmak bugün çaresiz bir kavga olmaktan gün geçtikçe kazanılan bir mücadeleye dönüşmüştür. Günümüzde yazılımların özgürlüğünün mücadelesi sürdüğü gibi donanımlarında özgürlüğü benzer bir mücadele içindedir. Bu mücadelede atılan her adım hem daha özgür bir insanlığa hem de günümüzün bilişim sistemlerinin güvenliğine katkı sağlamaktadır.

Elbette günümüzde cihazların özgürlüğü ve güvenliği tamamen kazanılmış değildir. Bgün üretim sistemlerinin ve üretilen donanımların karmaşıklığı bireysel olarak bu cihazların incelenmesini ve kesinlikle güvenilirliğinin kanıtlanmasını çok zorlaştırmakta. Fakat basit birkaç adım bir çok tehdide karşı koyabilecek şekilde cihazları güvenli kılabilmekte ve pek çok durumda bu yazılım ve donanım özgürlüğünden geçmekte. Özgür Yazılım Derneği / Donanım Özgürlüğü makalesinin bu konu hakkında okunması önerilebilir.

Yazılım Güvenliği

Yazılımlarınızı güncel tutun

Bir saldırgan, yazılımlarınızdaki bir zayıflığı kullanarak cihazlarınızın güvenliğini tehlikeye atabilir. Bu risk çoğu zaman sadece yazılımlarınızı güncel tutarak önleyebileceğiniz bir durumdur. Yazılım geliştiricileri çoğunlukla bu açıkları saldırganlar durumu keşfetmeden önce düzelterek güncellemeler aracılığı ile yamarlar.

Özellikle işletim sisteminizi güncel tutmak önemlidir, çünkü işletim sisteminiz cihazınızdaki her işleme ayrıcalıklı ulaşım yetkisi vardır.

Otomatik güncellemeler nasıl açılır?

  • GNU/Linux: Çoğu dağıtımda otomatik güncelleştirmeler zaten açık gelir ve kritik güncelleştirmeler konusunda uyarılırsınız. Elle güncelleme yapmak isterseniz kullandığınız dağıtımın grafik arayüzünden faydalanabilir veya;

    • APT kullanan dağıtımlar için (Debian, Ubuntu vs.) uçbirimden güncelleme yapmak için kullanacağınız komut: sudo apt-get update & sudo apt-get upgrade -y

    • RPM kullanan dağıtımlar için (Red Hat, Fedora, CentOS vs.): sudo yum update -y

    • Pacman kullanan dağıtımlar için (Arch, Manjaro vs.): sudo pacman -Syu

  • macOS: Apple menüsüne tıklayın, Sistem tercihleri > App Store > Güncellemeleri otomatik olarak denetle

  • Windows: Başlat çubuğuna tıklayın, daha sonra Ayarlar > Güncelleme ve güvenlik > Windows Güncellemeleri > İleri seçenekleri tıkladıktan sonra Güncellemeler nasıl indirilsin seçeneğinin altındaki Otomatik (önerilen)'i seçin.

Uyarılar:

  • Bazı güncellemelerin işe yaraması için güncellemeden sonra cihazınızı yeniden başlatmanız gerekebilir. Bu yüzden güncellemelerden sonra cihazınızın yeniden başlatılmasına izin vermeniz gerekir.
  • Eğer özel yazılım gereksinimleriniz varsa otomatik güncellemeler yazılımlarınızın çalışmasında aksamalara sebep olabilir. Örneğin bazı işletim sistemi güncellemeleri mevcut yazılımla uyuşmayabilir.
  • Yazılımınızı güncel tutmak, kullanıcıyı kandırarak yapılan kötü amaçlı yazılım ve oltalama saldırılarından korumaz.

Uygulama mağazasını kullanın

Mümkün olduğunca yazılımlarınızı işletim sisteminize ait uygulama mağazasından indirmelisiniz;

  • Güvenilirdir: Uygulama mağazasındaki uygulamalar geliştiricileri tarafından imzalanır ve mağaza tarafından doğrulanır. Bu doğrulama çoğu zaman sığ bir inceleme olduğu için mutlak olarak güven duyulmamalıdır ama hiç yoktan iyidir.
  • Güncellemeler için efektiftir: Uygulama mağazası uygulamalarınızı güncel tutmanıza yardım eder.
  • Side Loading Saldırılarını Önler: Uygulama mağazası dışından uygulama indirmeye "side Loading" denir. Side loading şu anda Android'de varsayılan olarak engelli, iOS'te ise imkansız ancak GNU/Linux'ta ve macOS'te seçime bağlı durumdadır. Windows sistemler ise çoğunlukla side loading'e dayanmaktadır. Side loading kullanarak indirdiğiniz ve doğrulamadığınız her yazılım nihayetinde sisteminizi kötücül yazılımlara karşı tehlikeye atar. Bu neden ile sistemlerinize kurduğunuz yazılımları güvenilir kaynaklardan ve uygulama mağazalarından yüklemeniz önerilir.

Not: Resmi Android uygulama mağazası Google Play'i taklitçi uygulamalardan kaçınmak için dikkatli kullanmalısınız. En iyisi sadece özgür yazılımların sunulduğu F-Droid uygulama mağazasını kullanmanızdır.

Şüpheliyse indirmeyin

Mobil uygulamalar, tarayıcı eklentileri ve ücretsiz programların artması ile birçok güvenlik problemi de ortaya çıktı. Bu sebep ile güvendiğiniz kuruluşların (örneğin daha önce kullanmış olduğunuz) yazılım geliştiricileri tarafından geliştirilmeyen yazılımlardan mümkün ise kaçının.

Görünürde iyi niyetli olan veya faydalı görünen yazılımlar (virüs tarayıcıları gibi) aslında arka plandaki kötü hareketlerini gizliyor olabilir. Çoğu tarayıcıda ve mobil cihazda bir uygulama kurulum sırasında cihazda ulaşabileceği bilgiler ve donanımlar hakkında çeşitli izinler ister. Bu izinlerin uygulamanın beklenen amacı kapsamında kaldığına kabaca göz atmak gereklidir.Örneğin bir fener uygulaması cihazınızın rehberine erişmek veya telefon aramaları yapabilmek isterse bu yazılımı kullanmamalısınız. Aramalarınıza, kişilerinize, kameranıza, mikrofonunuza, konum servislerinize veya tüm saklama alanınıza verdiğiniz erişim izinleri hakkında çok dikkatli olunmalıdır.

İndirdikten sonra verdiğiniz izinlere bakmak, cihaza ve koşula göre farklılık gösterebilir. Firefox tarayıcısında, ayarlar altında "Mahremiyet ve güvenlik" sekmesinde verilen izinleri görebilirsiniz. Chrome ve Chromium'da, chrome://extensions/'a gidin ve her eklenti için izinlere tıklayın. iOS cihazlarında, ayarların altında tüm izinlerin listesi vardır. Her iznin altında da o izinleri kullanan uygulamalar yer alır. Android cihazlarında Ayarlar > Uygulama yöneticisinde uygulama listesini görüntüleyebilirsiniz. Her uygulamanın altında uygulamanın kullandığı izinleri gösteren bir liste vardır.

Genel bir alışkanlık olarak cihazlarınızda gereksiz veya çok seyrek kullandığınız yazılımları bulundurmamak gerekir. Şayet bir yazılımın sunduğu hizmeti Web'den alabiliyorsanız, yazılımını cihazınıza kurmak yerine tarayıcınız aracılığı ile web üzerinden hizmet almayı seçebilirsiniz. Genel olarak da bir yazılım hem özgür değil hem de ücret istemeden çok şey vaat ediyorsa işin içinde bir bit yeniği var mı bakılmalıdır.

Maalesef dizüstü ve masaüstü bilgisayarlarındaki çoğu işletim sisteminin bir izin yönetimi yok ve yazılımlar kurulum sırasında sistem kaynaklarına erişim için izin istemiyor. Bu yüzden bilgisayarlarınıza indirdiğiniz yazılımlarda çok daha dikkatli olmanız gerekiyor.

Korsan yazılım kullanmayın / Mümkünse mülk yazılım kullanmayın

Korsan yazılım indirmek bilgisayarınıza virüs veya kötü amaçlı yazılım bulaştırmak için harika bir yoldur. Pek çok mülk yazılım da kaynak koduna erişemediğiniz için şüpheli ve bazen amacı gereği zaten güvenlik tehlikesidir.

Eğer cihazlarınızda yapmanız gereken bir işlem varsa ve bunun için uygun bir yazılım arıyorsanız öncelikle özgür yazılımları değerlendirmeniz önerilir.

Özgür yazılım kullanın

Özgür yazılımlar, genellikle kullanılan özel mülk yazılımlara harika alternatiflerdir. GNU/Linux, Windows, macOS ve Android için kolaylıkla elde edilebilir.

  • Mozilla Firefox: Web tarayıcısı (Google Chrome yerine)
  • Mozilla Thunderbird: E-posta istemcisi (Microsoft Outlook yerine)
  • VLC media player: Medya oynatıcı (Windows Media Player yerine)
  • Gimp: Taramalı grafik ve fotoğraf düzenleme programı (Adobe Photoshop yerine)
  • Krita: Bit eşlem grafik ve fotoğraf düzenleme programı (Adobe Photoshop yerine)
  • Inkscape: Vektör çizim programı (Adobe Illustrator yerine)
  • LibreOffice: Ofis yazılımı (Microsoft Office yerine)
  • Scribus: Masaüstü yayıncılık uygulaması (Adobe InDesign yerine)
  • F-Droid: Android işletim sistemlerinde özgür yazılımların bulunabileceği benzersiz bir uygulama deposu.

Ayrıca bakınız

Boot Güvenliği

Bilgisayarınız düğmesine basmanızdan işletim sisteminin sizi kullanılabilir şekilde karşılayacağı ana kadar sırası ile pek çok yazılım çalıştırarak açılır. Bu süreç bilgisayarınızın donanımların yüklenmesinden işletim sisteminizin açılış ayarlarına kadar pek çok süreci yöneten farklı yazılımlarca yönetilir. Sürecin başından sonuna kadar istediğiniz gibi güvenli gitmesi fiziki ve yazılımsal kimi güvence ve varsayımlara bağlıdır.

Boot güvenliğini neden önemsemelisiniz?

Cihazınızın boot sürecini ele geçirmiş bir saldırgan işletim sistemi seviyesinde farkına bile varılamayacak saldırılar gerçekleştirebilir. Özellikle tedbir alınmamış bilgisayarlarda bahsedilen saldırıların gerçekleştirilmesi ciddi bilgi birikimi de gerektirmemektedir. Bu tip saldırıları önlemek için çeşitli tedbirler alabilirsiniz.

Bilgisayarınızda ilk çalışan yazılım anakartınızda küçük bir ROM çipinde bulunan boot yazılımıdır. BIOS Türkiye'de bilgisayar tarihinden bilinen bir yazılımdır. BIOS'un yerini çağdaş bilgisayarlda artık UEFI-Unified Extensible Firmware Interface almıştır. UEFI Microsoft'un da içinde bulunduğu bir konsorsiyum tarafından düzenlenmekle neredeyse satılan ana akım tüm bilgisayarların boot yazılımıdır.

Boot nasıl gerçekleşir?

Bilgisayarınızı açtığınız andan itibaren, sisteminizde yüklü olan çeşitli yazılımlar, çalışarak işletim sisteminiz yükleninceye kadar sırası ile çalışarak birbirlerini yüklerler. Bu zincirleme işlem işletim sisteminiz ile bilgisayarın donanımları arasındaki uyumu sağlar.

Bilgisayarınızda ilk çalışan yazılım, cihazın anakartında özel bir çip üzerinde çalışan UEFI veya BIOS yazılımıdır. Bu yazılım sistemdeki cihazları kullanılabilir hale getirmek, cihazınızda boot imkanı tanıyan bir cihaz bulup bunun çalışmasını sağlamak ile görevlidir. Modern bilgisayarlda en sık görülecek yazılım UEFI (Unified Extensible Firmware Interface) idir.

UEFI aynı zamanda Secureboot adında bir güvenlik sistemi de içermektedir. Secureboot günümüzdeki uygulaması ile bir DRM yani kullanıcıların özgürlüklerini sınırlayan bir sistemdir. Secureboot, Microsoft'a ait bir anahtar içerir ve bu anahtar ile imzalanmamış hiçbir kodun çalışmasına izin vermez. Bu sebeple pek çok GNU/Linux dağıtımı modern cihazlarda çalışabilmek için ya Secureboot'un kapatılmasını ya da Microsoft tarafından imzalanmış shim adında bir yazılımın sisteme dahil edilmesini gerektirmektedir. Secureboot'a kullanıcılar kendi anahtarlarını ekleyip kendi imzaladıkları kodların çalışmasını sağlayabilseler de bu çok zorlu bir süreç olmakla birlikte UEFI ve Secureboot'un özgür olmayan yazılımlar olduğu gerçeğini değiştirmemektedir.

Özgür Libreboot desteklendiği cihazlarda bios yazılımının tamamen yerine geçerek olabilecek en özgür bilgisayar sistemine imkan sağlamaktadır. Libreboot doğrudan GRUB kullandığından, GRUB tarafından desteklenen şifreleme ve imzalama imkanlarını doğal olarak desteklemektedir. Bu sayede hem güvenli hem de özgür bir sistem oluşturmak mümkündür.

Sisteminizdeki UEFI veya Libreboot bir önyükleyici çalıştıracaktır. GNU/Linux dağıtımlar için bu GRUB'dır. GRUB sürücünüzdeki /boot sektöründe Linux çekirdeği ile birlikte bulunur ve çekirdeğin yüklenmesinden sorumludur. Çekirdek sisteminizde donanımlarla işletim sisteminizin arasındaki iletişimden sorumlu olmakla güvenliğiniz için önemli bir konumdadır.

Çekirdeğin yüklenmesinin ardından işletim sisteminiz yüklenir ve bilgisayarınız sizin tarafınızdan kullanılabilir hale gelir.

Boot zincirindeki güvenlik tehlikeleri

  • Şayet secureboot'un açık olmadığı standart bir kurulumunuz var ise bir saldırganın çekirdeğinizi kötücül bir versiyon ile değiştirip parolalarınızı ele geçirmesi veya daha ileri saldırılar gerçekleştirmesi mümkündür.

  • Bilgisayarınıza fiziki erişimi olan biri /boot sektörünüzdeki çekirdek ve GRUB yapılandırmanızı herhangi bir özel tekniğe ihtiyaç duymadan kolaylıkla değiştirebilir ve güvenliğinize zarar verebilir.

  • Secureboot nihayetinde Microsoft gibi tarihi kullanıcı dostu olmayan olaylarla dolu olan bir şirkete ve 99 ABD doları karşılığında imzaladığı kodların güvenliğine dayanmaktadır. Bu bakımdan bir saldırganın özel bir tedbir almadıysanız. Parasını verip secureboot'un güvenliğini geçmesi mümkündür.

  • Özgürlük her zaman güvenlik ile eş anlamlı değildir. UEFI ve secureboot kullanmıyor ve libreboot yüklü bir cihaz kullanıyor olsanız da güvenliğiniz için gerekli adımları atmadığınız sürece benzer riskleri siz de taşıyor olacaksınız.

Boot güvenliğine giriş yapın

Libreboot ve GnuPG ile boot güvenliği

Libreboot, GnuPG ile birlikte bilgisayarınızı daha güvenli hale getirebilir. Bunun için öncelikle bir bilgisayarın nasıl çalıştığını ve açılmak için içinden geçtiği süreçlerin anlaşılması gereklidir.

Bir bilgisayar hayatına elektrik ile başladığında sırasıyla aşağıdaki adımlar gerçekleşir:

  1. Libreboot, anakarttaki bir hafızadan RAM'e yüklenir ve çalışmaya başlar.
  2. Libreboot, bir önyükleyici (bootloader) olan GRUB'ı yükler.
  3. GRUB /boot dizininde bulunan ayar dosyasına bağlı olarak Linux'u yani çekirdeği yükler.
  4. Çekirdek donanımları devreye alarak işletim sistemini yükler.
  5. Bilgisayarınız açılır.

Bu sürecin güvenliği, her aşamanın kendinden sonraki aşamayı istenilen şekilde ve bilinen kaynaktan yüklenmesinin sağlanması ile mümkündür.

Libreboot, kendi dahilinde GRUB'ı çalıştırır. Bu bakımdan Libreboot kurulu bir cihazda kullanılabilecek biri depolama aygıtında, biri BIOS çipinde olmak üzere iki GRUB bulunur. Libreboot çalışma aşamasında BIOS çipinde bulunan GRUB'ı kullanarak sistemde bulunan GRUB'ı yükler.

GnuPG ile Libreboot'un GRUB'ın kurulumunu ve yüklenecek çekirdeklerin değiştirilmediğini doğrulaması için ayarlarda bir miktar değişiklik yapmak gerekmektedir.

Bir GnuPG anahtarı oluşturun

GRUB, kriptografik olarak çekirdek ve ayar dosyalarını denetlemek için GnuPG kullanmaktadır. Şifreleme esnasında kullanılacak anahtarın kullanıcı tarafından üretilmesi gerekmektedir. Eğer halihazırda bir GnuPG anahtarınız yoksa, sadece bu amaçla kullanmak için veya genel olarak kullanılmak üzere bir GnuPG anahtarı üretebilirsiniz. Bunun için GnuPG anahtar üretimi rehberinden yararlanabilirsiniz.

Bu noktada, ihtiyaç ve beklentilerinize göre değerlendirmeniz gereken bir husus vardır. Eğer kişisel GnuPG anahtarınızı sürekli olarak kullanacaksanız, bu anahtarın bir noktada açığa çıkması veya kaybedilmesi tehlikesini de göze almanız gerekecektir. Aynı zamanda bu durum, siz farkında olmadan anahtarınız kullanılarak çekirdeklerin veya ayar dosyalarının sizin anahtarınızla imzalanabileceği anlamına da gelmektedir. Bu sebepten dolayı anahtarınızı bir zarola ile korumanızı ve kağıt bir yedeğini almanızı şiddetle tavsiye ederiz.

GnuPG anahtarınızı oluşturduktan sonra sonraki aşamaya geçebilirsiniz.

Gerekli yazılımları indirin

Libreboot imajında değişiklikler yapabilmek ve bu değişiklikleri BIOS çipine yükleyebilmek için bazı yazılımlara ihtiyaç vardır. Libreboot'un arşivinden gerekli dosyaları indirebilir, indirilen dosyaların imzalarını GnuPG ile doğrulayabilirsiniz. İhtiyacınız olan cbfstool ve flashrom (dizinde flash adında) yazılımları indirdiğiniz arşivin dizininde bulunmaktadır.

Flashrom yazılımını dağıtımınızın paket depolarından da indirebilirsiniz.

APT paket yöneticisi kullanan dağıtımlarda (Debian, Mint, Ubuntu vb.):

sudo apt-get update

sudo apt-get install flashrom

Yum paket yöneticisi kullanan dağıtımlarda (Fedora, CentOS vb.):

sudo yum install flashrom

Değiştirilecek Libreboot imajını elde edin

Bu noktada iki seçenek bulunmaktadır. Şayet cihazınızda halihazırda Libreboot yüklüyse, cihazınızın ROM'undan doğrudan imajı çekebilir ve üzerinde değişiklik yapabilirsiniz.

  • Bunun için aşağıdaki komutu çalıştırabilirsiniz;

sudo flashrom -p internal -r libreboot.rom

ROM imajı libreboot.rom olarak bulunduğunuz dizine kaydolacaktır.

  • Eğer ROM imajını indirip değişikliklerinizi yapmak isterseniz, Libreboot imajını buradan indirebilirsiniz.

Çipin boyutunu öğrenmek için, flashrom -p internal komutunu çalıştırın. Aşağıdaki gibi bir çıktı elde etmeniz gerekmektedir:

Found Macronix flash chip "MX25L6406E/MX25L6408E" (8192 kB, SPI)
mapped at physical address 0x00000000ff800000.

Yukarıdaki örnekte, çip boyutu 8 MB olarak görünmektedir.

Dilediğiniz arşiv yöneticisi ile cihazınıza uygun olan imajı çıkarabilirsiniz.

ROM imajından grubtest.cfg dosyasını çıkarın

ROM imajında yapılacak değişiklikler için cbfstool yazılımını kullanabilirsiniz. Bunun için çıkardığınız libreboot.rom dosyasını cbfstool'un bulunduğu dizine koyun.

Uçbirimde cbfstool dizininde iken ./cbfstool libreboot.rom print komutu ile ROM imajında bulunan dosyaları listeleyebilirsiniz. İmaj içinde grub.cfg ve grubtest.cfg adlı iki GRUB ayar dosyası görülecektir. grub.cfg, Libreboot'un temel kullandığı yapılandırma dosyasıdır. Öncelikle grubtest.cfg dosyasını düzenleyerek bir deneme yapılandırması oluşturun. Böylece, yapılandırmadan memnun olduktan sonra grub.cfg dosyası ile test dosyasını değiştirip cihazınızı güvenli şekilde hazır hale getirebilirsiniz.

cbfstool dizininde libreboot.rom'un bulunduğundan emin olup, aşağıdaki komutu çalıştırarak grubtest.cfg dosyasını çıkarabilirsiniz.

./cbfstool libreboot.rom extract -n grubtest.cfg -f grubtest.cfg

GRUB güvenliği için parola belirleyin

Bir saldırganın GnuPG doğrulamasını aşmak için yapması gereken tek şey, boot aşamasında GRUB'a doğrulama yapmamasını söylemektir. Bu bakımdan, Libreboot içinde çalışan GRUB'ın ayar değişiklikleri için parola talep etmesi güvenliğin anlamlı olabilmesi için şarttır.

Bunun için Zarola yöntemini kullanmanızı şiddetle tavsiye ederiz. Çünkü bilgisayarınızın güvenliğinin ilk adımı bu parolanın güvenliğine bağlıdır.

Bunun için bir uçbirim açıp, grub-mkpasswd-pbkdf2 komutunu çalıştırıp parolanızı girebilirsiniz. Çıktı şuna benzeyecektir:

grub.pbkdf2.sha512.10000.B08007ADC512E1BB058D62132F94A6EBF96E27511538F1F9ED59B3DE0556FA70A63F617C56D532C499D2E42AABF6B9F8F5EDAC604DC88567268A2D63DF0325F3.A9392DB618EE22AC423CB490B9809B08FB003FBA63B04F310DCD776335282B5D57134671248C711D9D60A7E9A220821B6701EB038F1368D87B66FC632B73801B

Seçtiğiniz metin editörü ile grubtest.cfg dosyasına, bir önceki adımda aldığınız parola özüt (hash) değerini aşağıdaki şekilde girin.

gfxpayload=keep
terminaloutput --append gfxterm

set superusers="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.B08007ADC512E1BB058D62132F94A6EBF96E27511538F1F9ED59B3DE0556FA70A63F617C56D532C499D2E42AABF6B9F8F5EDAC604DC88567268A2D63DF0325F3.A9392DB618EE22AC423CB490B9809B08FB003FBA63B04F310DCD776335282B5D57134671248C711D9D60A7E9A220821B6701EB038F1368D87B66FC632B73801B

#Default to first option, automatically boot after 1 seccond

Her açılışta GRUB'a parola girmemek için, standart yükleme seçeneğini parola gerektirmeyen bir şekilde ayarlamak yerinde olacaktır. GRUB, GnuPG ile kontrolleri yapacağı için bu işlem güvenlik açısından bir sorun teşkil etmeyecektir. Bunun için --unrestricted parametresini aşağıdaki gibi ekleyin.

menuentry 'Load Operating System (incl. fully encrypted disks) [o]' --hotkey='o' --unrestricted {

Sabit diskinizde bulunan GRUB'ın GnuPG güvenliğini geçememesi için aşağıdaki gibi unset superusers satırının başına # koyarak devre dışı bırakılması gerekmektedir.

function try_user_config {
   set root="${1}"
   for dir in boot grub grub2 boot/grub boot/grub2; do
      for name in '' autoboot_ libreboot_ coreboot_; do
         if [ -f /"${dir}"/"${name}"grub.cfg ]; then
            #unset superusers
            configfile /"${dir}"/"${name}"grub.cfg
         fi
      done
   done
}

Açık anahtarınızı hazırlayın

GRUB'ın kontrolleri yapacağı GnuPG anahtarınızın açık anahtarını (public key) uygun formatta kaydetmeniz gerekmektedir. Bunun için aşağıdaki komutu çalıştırın. Açık anahtarınız, boot.key ismiyle bulunduğunuz dizine kaydedilecektir. (Birden fazla GnuPG anahtarınız varsa, --export parametresinden sonra anahtar ID'nizi ya da e-posta adresinizi girmeniz gerekmektedir.)

gpg --export > boot.key

GRUB'ın imza kontrolünü açın

Libreboot GRUB'ın imzaları GnuPG anahtarınızla kontrol etmesi için aşağıdaki parametreyi grubtest.cfg yapılandırma dosyasında menü girdilerinden üste ekleyin.

trust (cbfsdisk)/boot.key
set check_signatures=enforce

Çekirdek ve yapılandırma dosyalarını imzalayın

Libreboot'un kontrol etmesi gereken dosyalara kendi anahtarınızla imza atmanız gerekmektedir. İmzalanacak dosyalar aşağıdaki gibidir;

/boot/initramd veya initramfs
/boot/vmlinuz.*
/boot/grub/grub.cfg

Libreboot'a eklenecek;

grubtest.cfg

Dosyaları imzalamak için aşağıdaki komutu listedeki dosyalar için tek tek çalıştırın.

gpg -u [anahtar ID veya e-postanız] --detach-sign [imzalanacak dosya]

Her işlem sonrasında imzalanan dosyanın adı ile bir .sig dosyası oluşacaktır. Boot dizini altındaki dosyaları imzalamak için root yetkisine ihtiyacınız vardır. GnuPG'yi root yetkisi ile çalıştırdığınızda, anahtarınız root kullanıcısının anahtarlığında olmadığından ilgili anahtarın bulunamadığına dair bir hata alabilirsiniz. Bunun için çalıştırdığınız GnuPG komutlarına --homedir /home/kullaniciadi/.gnupg parametresini ekleyerek GnuPG'nin anahtarınızın bulunduğu dizinde çalışmasını sağlayabilirsiniz.

Her bir .sig dosyasını ilgili dosyanın yanına ekledikten sonra ROM'un hazırlanmasına ve yüklenmesine geçebilirsiniz.

Libreboot ROM'una grubtest.cfg'nin yazılması

Aşağıdaki dosyaları cbfstool dizininin altına alın:

boot.key
grubtest.cfg
grubtest.cfg.sig

Daha sonra ROM'un içindeki eski dosyaların silinmesi gerekmektedir. Bunun için aşağıdaki komutları sırasıyla çalıştırın:

./cbfstool libreboot.rom remove -n boot.key

./cbfstool libreboot.rom remove -n grubtest.cfg

./cbfstool libreboot.rom remove -n grubtest.cfg.sig

Ardından yeni dosyalarımızın libreboot.rom'un içine eklenmesi gerekmektedir. Bunun için:

./cbfstool libreboot.rom add -n boot.key -f boot.key -t raw

./cbfstool libreboot.rom add -n grubtest.cfg -f grubtest.cfg -t raw

./cbfstool libreboot.rom add -n grubtest.cfg.sig -f grubtest.cfg.sig -t raw

Artık libreboot.rom dosyanız BIOS çipinize yazılmaya hazır.

ROM'a libreboot.rom imajının yazılması

libreboot.rom dosyasını "flash" dosyasının bulunduğu dizine alın ve ardından aşağıdaki komutu çalıştırarak çipe imajı yazın.

sudo ./flash update libreboot.rom

Eğer doğru ROM imajını seçtiğinizden emin olmanıza rağmen uyumsuzluk hatası alıyorsanız yazım işlemini zorla yapabilirsiniz.
KESİNLİKLE GARANTİSİ YOKTUR, BİLGİSAYARINIZI KULLANILAMAZ HALE GETİREBİLİRSİNİZ.

sudo ./flash forceupdate libreboot.rom

Bilgisayarınızı yeniden başlatın ve denemenizi yapın

ROM yazıldıktan sonra, bilgisayarınızı yeniden başlatıp yaptığınız değişikliklerin çalışıp çalışmadığını deneyebilirsiniz. Ekranınız açılır açılmaz birkaç kere boşluk tuşuna basıp, gelen GRUB ekranında Load test configuration (grubtest.cfg) inside of CBFS seçeneğini seçin. Gelen ekrandan bilgisayarınızı başlattığınızda sorunsuz şekilde çalışıyorsa her şey yolunda demektir.

Herhangi bir şey yanlışsa ve cihazınız açılmazsa, bilgisayarınızı kapatıp yeniden açtığınızda olağan yapılandırmanız ile açılacaktır, panik yapmayın.

Eğer imza sisteminin çalışıp çalışmadığını denemek isterseniz, kasıtlı olarak imzalı dosyalarını silip grubtest.cfg ile bilgisayarınızı başlatmaya çalışırsanız hata almanız lazımdır. Bu şekilde yapılandırmanızın doğru olduğunu ve imzaları denetlediğini görebilirsiniz.

Yapılandırmanızı kalıcı hale getirin

Eğer grubtest.cfg yapılandırmasından memnun kaldıysanız, grubtest.cfg dosyasını grub.cfg olarak adlandırıp 7. adımdan itibaren işlemleri tekrarladığınızda, bilgisayarınız Libreboot ve GRUB'ın GnuPG denetimi altında açılacaktır.

Çekirdek veya GRUB yapılandırmalarınıza güncelleme geldiği durumlarda imzaları yenilemeyi ihmal etmeyin, aksi takdirde bilgisayarınız açılmaz.

İmzalama işlemini otomatikleştirmek

Güncellemeler, kurulumunuza bağlı olarak kendiliğinden ve sessizce gerçekleşebilmektedir. Bu durum, güncellenen çekirdek ve GRUB yapılandırma dosyası imzalanmayacağı için, Libreboot'un bir sonraki açılışta cihazınızı çalıştırmayı reddetmesi ile sonuçlanabilir. Bu durumda Libreboot'u, parolasını girerek, imza kontrolü olmadan çalıştırabilirsiniz. Ancak gereksiz paniğe yol açmamak adına, işletim sisteminizin çekirdeğinizi her güncellediğinde imzalarını da yenilemesini sağlayabilirsiniz. Bunun için küçük bir betiğe ihtiyacınız vardır. Bu betiğin olduğu gibi çalışabilmesi için özel anahtarınızı (private key) root kullanıcısının anahtarlığına koyabilir (gpg --import ile) ya da betiğin içerisinde gpg ile başlayan tüm komutların sonuna --homedir /home/kullaniciadiniz/.gnupg parametresini ekleyebilirsiniz.

grub2-signing-extension betiğini bağlantıdan indirebilir veya aşağıdan kopyalayabilirsiniz.

#!/bin/bash
#grub2-update-kernel-signature
#Renews the signature in /boot/.
#Author: Bandie
#Licence: GNU-GPLv3

function sign(){
  for f in `find /boot -maxdepth 1 -type f`
  do
    if gpg --detach-sign $f
    then
      echo $f signed.
    else
      return 1
    fi
  done
  if gpg --detach-sign "/boot/grub/grub.cfg"
  then
    echo /boot/grub/grub.cfg signed.
  else
    return 1
  fi
  return 0
}


rm /boot/*.sig
rm /boot/grub/grub.cfg.sig

if ! sign
then
  sign
fi

Betiği aşağıdaki dizine zz-update-signatures adıyla kaydedin:

Dizindeki betikler isimlerine göre sırayla çağrıldıklarından betiğinizin alfabetik olarak sonda yer alması gerekiyor.

/etc/kernel/postinst.d/

Ardından dosyaya çalıştırma izni verin:

sudo chmod +x zz-update-signatures

Bu aşamanın ardından, her çekirdek güncellemesinde ilgili betik çalışarak imzaların varlığını kontrol edecek, imza yoksa /boot dizinindeki her dosyayı imzalayacak ve ardından GRUB yapılandırmasını imzalayacaktır. Bu aşamada cihazınız sizden GnuPG anahtarınızın parolasını isteyecektir.

İşler ters giderse

Buraya Katkı Verebilirsiniz.

Ek Okumalar

https://libreboot.org/docs/gnulinux/grub_hardening.html

https://github.com/Bandie/grub2-signing-extension

https://www.crowdstrike.com/blog/enhancing-secure-boot-chain-on-fedora-29/

https://www.gnu.org/software/grub/manual/grub/html_node/Using-digital-signatures.html

/boot sektörünü şifrelemek

Boot sektöründe bulunan çekirdek ve grub yapılandırma dosyalarınızdan doğabilecek tehlikeleri /boot sektörünü şifreleyerek yüksek oranda bertaraf edebilirsiniz.

GNU/Linux dağıtımlarının kurulum aşamasında sunduğu tam disk şifreleme /boot sektörünü şifrelemez. Bu tercihin pratik sebepleri bulunmakla birlikte bir gün tercihen bu yapılandırmanın seçilebilmesi dağıtımlar yönünden gereklidir.

Boot sektörünü şifrelemek ne sağlar?

Boot sektörünün şifrelenmesi bilgisayarınıza kapalı iken erişen fiziken erişen bir kişinin kötücül bir çekirdek veya grub yapılandırmasını sürücünüze yazarak bilgisayarınızın güvenliğini elinizden almasına yüksek oranda engel olur.

Boot sektörünün şifrelenmesi

UYARI: Bu rehberde yapacağınız işlemler işletim sisteminizin çalışmamasına sebebiyet verebilir. Yedek almadan bu rehberde anlatılanları uygulamamanız hararetle önerilir

Bu rehber anlatımında Cryptsetup-team rehberini esas almış ve kimi noktalarda değişiklikler getirmiştir. Test Fedora 31 dağıtımı ile UEFI kullanan Dell XPS 13 cihaz üzerinde yapmıştır.

Öncelikle bilgisayarınızın kurulum aşamasında LUKS şifreleme ile kurulduğu varsayımı ile aşağıdaki komut aracılığıyla sürücünüzün düzenine bakın.

root@debian:~# lsblk -o NAME,FSTYPE,MOUNTPOINT /dev/sda
NAME                    FSTYPE      MOUNTPOINT
sda
├─sda1                  ext2        /boot
├─sda2
└─sda5                  crypto_LUKS
  └─sda5_crypt          LVM2_member
    ├─debian--vg-root   ext4        /
    └─debian--vg-swap_1 swap        [SWAP]

Yukarıda bulunan /boot olarak işaretli olan "sda1" kurulumumuzun konusu olan donanımı ifade etmektedir. Bu değer sizin cihazınızda farklı olabilir. Doğru cihazı seçtiğinizden emin olun. Bu rehberde hep sda1 olarak kullanılacaktır.

Boot sektörünü şifrelemek için ilgili sektör silip tekrar yapılandırılacağı için öncelikle /boot altında olan dosyaların bir kopyasının alınması gerekmektedir. Sisteminizde bu rehber dahilinde yapacağınız pek çok işlem root yetkisi gerektirmektedir. Başlamak için;

/boot dizinini salt-okunur olarak bağlayın edin.

mount -oremount,ro /boot

/boot dizinin yazılacağı boş bir tar dosyası oluşturun.

install -m0600 /dev/null /tmp/boot.tar

/boot dizinini oluşturduğunuz tar dosyasına kaydedin.

tar -C /boot --acls --xattrs --one-file-system -cf /tmp/boot.tar .

/boot dizinini çıkarın.

umount /boot

Eğer /boot/efi gibi alt noktalar var ise cihazınızda onları da çıkarın.

umount /boot/efi

Şayet umount komutu inat ederse -l parametresi ile çalıştırın.

/boot sektörünün olacağı cihazı LUKS1 ile şifreleyin.

ÖNEMLİ NOT: Şayet cihazınızın /root sektörü de şifreli ise aşağıda belirleyeceğiniz parolanın farklı olması durumunda bilgisayarınızın her açılışında 3 kere parola girmeniz gerekeceğini hatırlatmak isteriz. Bu durumu önlemenin çeşitli yolları olsa da güvenlik endişeniz yüksek ise 3 kere parola girmeye katlanmanız veya aynı parolayı hem /boot hem /root sektörleri için belirlemenizi öneririz. Şayet aynı parolayı kullanırsanız işletim sisteminiz otomatik otomatik olarak 1 parola girişini atlayacaktır.

cryptsetup luksFormat --type luks1 /dev/sda1

WARNING!
========
This will overwrite data on /dev/sda1 irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase for /dev/sda1:
Verify passphrase:

Gerekli değeri crypttab'a girip ilgili bölümü açın.

uuid="$(blkid -o value -s UUID /dev/sda1)"

echo "boot_crypt UUID=$uuid none luks" | tee -a /etc/crypttab

cryptsetup luksOpen /dev/nvme0n1p2 boot_crypt

Starting crypto disk...boot_crypt (starting)...
Please unlock disk boot_crypt:  ********
boot_crypt (started)...done.

Oluşturulan cihaz üzerinde bir dosya sistemi kurulması gerekli. Bunun için /boot dizininin UUID değerinin bilinmesi gerekli. Aşağıdaki komutu girerek gerekli değeri öğrenin.

grep /boot /etc/fstab

Komut ertesinde aşağıdaki gibi bir cevap dönecektir.

# /boot was on /dev/sda1 during installation
UUID=c104749f-a0fa-406c-9e9a-3fc01f8e2f78 /boot           ext2    defaults        0       2

UUID= sonrasında gelen tireler ile ayrılmış değeri bir sonraki komutta dosya sistemi oluşturmak için kullanılacaktır. Aşağıdaki komut ile dosya sistemini oluşturun.

ÖNEMLİ NOT: UUID değeri her cihazda farklı olacağından yukarıdaki komut sonrası gelen değeri kullandığınızdan emin olmalısınız.

mkfs.ext4 -m0 -U c104749f-a0fa-406c-9e9a-3fc01f8e2f78 /dev/mapper/boot_crypt

Komutu çalıştırdıktan sonra uçbirim aşağıdaki dönüşü size verecektir.

mke2fs 1.44.5 (15-Dec-2018)
Creating filesystem with 246784 1k blocks and 61752 inodes
Filesystem UUID: c104749f-a0fa-406c-9e9a-3fc01f8e2f78
[…]

Şifrelenen ve dosya sistemi oluşturulan /boot sektörünün daha önce yedeklenen içeriğinin geri yüklenmesi gerekli. Bunun için öncelikle /boot sektörünü bağlamak için aşağıdaki komutları çalıştırın.

mount -v /boot

Eğer EFI bölümünüz var ise bilgisayarınızda onu da ayrıca bağlamanız gereklidir.

mount -v /boot/efi

Ardından yedeklenen tar dosyasını /boot dizinine açın.

tar -C /boot --acls --xattrs -xf /tmp/boot.tar

Boot sektörü şifrelenip, gerekli dosyalar eklendikten sonra GRUB2 yapılandırmasının şifreli /boot sektörü için tekrar ayarlanması gerekli. Bunun için aşağıdaki komutları sırası ile çalıştırın.

echo "GRUB_ENABLE_CRYPTODISK=y" >>/etc/default/grub

Kullandığınız GNU/Linux dağıtımı grub yapılandırma dosyasını farklı isimdeki dizinlerin altına eklemiş olabilir. Aşağıdaki komutta verilen dizinin cihazınızdaki doğru konum ile değiştirildiğinden emin olun.

grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

Önemli notlar

  • Bilgisayarınızın ilk açılışında GRUB /boot sektörüne erişebilmek için size parolanızı soracaktır. Siyah ekranda gelen tatsız bir giriş ekranı sizi korkutmasın. Parolanızı girerken ekranda * gibi simgeler çıkmayacağından parolayı doğru girmek konusunda dikkatli olun. Aynı zamanda GRUB /boot sektörünü deşifre edebilmek için işlemcilerin yerleşik AES motorunu veya işlemcinin tüm çekirdeklerini kullanamadığından işlemin tamamlanması bir dakikadan fazla alabilir. Şayet parolayı doğru girer iseniz cihazınızın yüklenmesine devam edilir, yanlış girerseniz UEFI ekranına dönülür.

  • /boot sektörü için belirlediğiniz parola şayet /root sektörünüz ile aynı ise bilgisayarınız sizden aynı parolayı iki kere isteyecektir: bir kere açılışta GRUB tarafından bir kere de işletim sisteminizin yüklenmesi için. Şayet farklı parolalar belirledi iseniz 3 kere parola sorulacaktır.

  • GRUB standart olarak ABD (US) klavye kullanır. Bu sebeple açılışta parolanızı girer iken Türkçe veya başka dilde özel harfler ve özel karakterler girmeniz gerekiyor ise bunların US klavyede nasıl girildiğini öğrenmeniz gereklidir.

Boot Sektörünü Harici USB Bellekte Taşımak

Bu sayfaya katkı verebilirsiniz.

Yetkilendirme Güvenliği

Login veya yetkilendirme GNU/Linux dahil olmak üzere neredeyse her bilgisayar sisteminin temel güvenlik tedbirlerinden biridir. Ekran kilidi olarak yaygın şekilde kullanıcıların karşısına çıkan yetkilendirme sistemleri, bilgisayara kimlerin hangi yetki ile erişeceğine ve erişime olan kişilerin belirlenmesinde kullanılır.

En temel yetkilendirme kullanımı kullanıcı adı ve parola şekilindedir. Her kullanıcı bir kullanıcı adı ile tanımlanır ve bu kullanıcıya giriş yapabilmesi için bir parola verilir. Söz konusu parola kullanıcılar tarafından sır olarak saklanır ve sisteme girişte kendilerine sorulur. Bu bakımdan yetkilendirme sisteminin güvenliği parolanın güvenliği ve kullanıcıların sır tutabilmesine bağlıdır.

Yetkilendirme sistemlerine sunulabilecek diğer girdiler; tek kullanımlık kodlar (OTP), biyometrik veriler (parmakizi vb.) ve kriptografik araçlar (akıllı kartlar, Yubikey) olarak çeşitlendirilebilir. Bu girdiler tek başına yetkilendirme için yeterli görülebileceği gibi ikinci faktör olarak parola ile birlikte sistem güvenliğini arttırmak için de kullanılabilir. Bu sayede bir kullanıcının sistemde yetkilendirilmesi bilgiği bir şey ile sahip olduğu bir şeye gereksinim duyacağından yetkilendirme için bir saldırganın edinmesi gereken kaynak arttırılmış olur.

İkinci faktör

İkinci faktör olarak tercih edeceğiniz sistem tamamen kullanım ve güvenlik ihtiyaçlarınıza bağlıdır. Kimi sistemler var olan donanımlarınızı (akıllı telefon, parmak) kullanabilirken kimileri kriptografik bir aracı gerektirmektedir. Bu anlamda hem fiziki hem de kullanım bakımından bir miktar külfet getirmekle hangi yöntemin daha faydalı olacağı kullanım koşuluna bağlıdır.

Akıllı cihazlardan google-authenticator ile yapılaca OTP yetkilendirmesi hali hazırda sahip olunan bir cihazı kullanmakla en düşük maliyeti ortaya çıkaracak ve sürekli yanınızda taşıdığınız bir cihazı unutma ihtimalini doğurmayacaktır. Lakin her bilgisayarınıza giriş yapmak istediğinizde telefonunuza da erişmeniz ve kodu ekrana girmeniz gerekeceğinden yorucu bir duruma dönüşebilir sık kullanılan bilgisayarlarda.

Parmak izi kullanan sistemler kullanım kolaylığı sunsa da söz konusu sistemler arasında en az güvenli olandır. Hem parmak izi hataya açık bir sistem olarak haklı olarak erişmeniz gereken bir sisteme erişememenize sebep olabilir hem de bir saldırganın en kolay aşabileceği ikinci faktör konumundadır. Filmlerdeki gibi parmağınızdan olmakla görece basit yöntemlerle parmak izi sistemlerinin aşılması mümkündür.

Kriptografik araçlar ise her iki sistemin bir birleşimini sunmaktadır. Bu cihazlar hem taklit edilip aşılması zor hem de pratik olarak kullanması çok kolaydır. Lakin [Yubikey](https://yubico.com] gibi cihazlar hem pahalı hem de kolay elde edilebilen araçlar değildir. Bu araçların kurulumları da bir miktar karmaşık olsa da muhtemelen fiziki güvenliğiniz için en iyi seçenek olmaktadırlar. Tek eksik yön bu cihazları sürekli taşımanız gerektiğinden bunu yapmanın pratik bir yolunu da hayatınıza ekleme zorunluluğudur.

Yetkilendirme güvenliği için ikinci faktör olarak kullanılabilecek sistemlere ilişkin rehberlerimize aşağıdaki bağlantılardan erişebilirsiniz:

Google-Authenticator ile yetkilendirme

Yubikey ile yetkilendirme

Parmak izi ile yetkilendirme

Yubikey ile Login Güvenliği

Yubikey çok işlevli kriptografik bir güvenlik aracı. Yubikeyler GPG anahtarı olarak kullanılabildiği gibi U2F ve TOTP gibi ikinci faktör yetkilendirme araçları olarak da kullanılabilmekte. Bu özellikleri sayesinde bilgisayarlarda yetkilendirme aşamasında ikinci faktör olarak kullanılması mümkün olmakta. Bu kullanıcıların bildikleri bir şey (parola/pin) ve sahip oldukları bir şey (Yubikey) ile sistemlere giriş yapabilmelerine imkan vermekte.

Kurulum

Öncelikle Yubikey'in challange-response imkanından yararlanarak login olabilmek için aşağıdaki gerekli paketleri kurmanız gerekmekte.

Debian tabanlı sistemler için: sudo apt-get install libpam-yubico yubikey-manager

RPM tabanlı sistemler için: sudo yum install libpam-yubico yubikey-manager

Yubikey'in ayarlanması

Öncelikle Yubikey'inizin bilgisayarınızda görüldüğünden emin olmak için aşağıdaki komutu bir uçbirimde çalıştırıp Yubikey versiyonunuzu gördüğünüzden emin olun.

ykinfo -v

Şayet Yubikey dahilinde bir challange-response slotu altında anahtarınız bulunuyorsa bu bölümü geçebilirsiniz. Aksi takdirde Yubikey'inizin iki OTP bölümünden birinde bir sefere mahsus olarak kurulum yaparak gerekli anahtarların oluşturulmasını sağlamanız gerekiyor. Bunun için Yubikey'i bilgisayarınıza takarak bir uçbirimde aşağıdaki komutu çalıştırın.

ykpersonalize -2 -ochal-resp -ochal-hmac -ohmac-lt64 -oserial-api-visible

Uçbirimden aşağıdaki gibi bir cevap dönecektir. Üretilen anahtar listelenecek ve 2 bölüme bu anahtarı atayıp atamak istemediğiniz sorulacaktır. Soruya evet anlamında y diyerek devam edin.

Firmware version 4.x.x Touch level 263 Program sequence 3

Configuration data to be written to key configuration 2:

fixed: m:
uid: n/a
key: h:69b16d50e08c34f12fecc148ae0eabf284c59484
acc_code: h:000000000000
OATH IMF: h:0
ticket_flags: CHAL_RESP
config_flags: CHAL_HMAC|HMAC_LT64
extended_flags: SERIAL_API_VISIBLE

Commit? (y/n) [n]: 

Şayet Yubikey'inizi bilgisayara takılı bırakıyoranız, yetkilendirmenin sizden habersiz sistem tarafından gerçekleştirilmesini engellemek için Yubikey'e dokunma gerekliliği getirebilirsiniz. Bunun için aşağıdaki komutu kullanabilirsiniz.

ykpersonalize -2 -ochal-resp -ochal-hmac -ohmac-lt64 -ochal-btn-trig -oserial-api-visible

Bu noktadan sonra artık Yubikey'iniz challange-response bölümüne sahip ve kullanıma hazır. Şayet denemek isterseniz aşağıdaki komutu girerek bir uçbirimde rastgele cevabı görebilirsiniz.

ykman otp calculate 2 1111111111111111

PAM ayarları

PAM yapılandırmasını ayarlamadan önce gerekli Yubikey anahtarının bilgisayarınızda ev dizini altına eklenmesi gerekiyor. Bunun için aşağıdaki komutu çalıştırın.

ykpamcfg -2 -v

Uçbirim Yubikey'e istek göndererek dönüşünü bekleyecektir. Şayet dokunma ayarını açtıysanız Yubikey'e dokunmanız gerekebilir bu noktada. Uçbirimden aşağıdaki gibi bir sonuç alacaksınız.

debug: ../util.c:222 (check_firmware_version): YubiKey Firmware version: 4.4.2

Sending 63 bytes HMAC challenge to slot 2
Sending 63 bytes HMAC challenge to slot 2
Stored initial challenge and expected response in '/home/xxx/.yubico/challenge-1234567'.

PAM GNU/Linux cihazlarda kullanıcı yetkilendirmesinden sorumlu olan yazılımdır. /etc/pam.d dizini altında bulunan ayar dosyaları ile PAM davranışları şekillendirilebilir. Bu rehber PAM detaylarına girmek üzere yazılmadığından bir sistemdeki olası en güvenli kullanımı önerecektir. Fakat GA ve PAM ayarlarını ihtiyacınıza göre istediğiz gibi şekillendirebilirsiniz. Buna parola olmadan sadece GA kodu ile cihazınıza giriş yapmaktan, su/sudo gibi özel login tiplerine sınırlama getirmek şeklinde çeşitlendirmek mümkün.

Cihazınızdaki tüm PAM kontrolündeki login işlemlerine GA kodunu uygulamak için aşağıdaki dosyayı tercih ettiğiniz bir metin editörü ile açın. Aşağıdaki komutta nano editörü kullanılmıştır.

** Birazdan açacağınız sudo yetkisi vereceğiniz uçbirimi kapatmayın!!! **

sudo nano /etc/pam.d/common-auth

Karşınıza aşağıdakine benzer bir metin çıkacaktır.

#
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.).  The default is to use the
# traditional Unix authentication mechanisms.
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules.  See
# pam-auth-update(8) for details.

# here are the per-package modules (the "Primary" block)
auth    [success=1 default=ignore]      pam_unix.so nullok_secure
#auth    optional                        pam_exec.so /home/alper/wrongpasspic.sh
# here's the fallback if no module succeeds
auth    requisite                       pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth    required                        pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth    optional                        pam_cap.so
# end of pam-auth-update config

Dosyanın sonuna aşağıdaki satırı ekleyin ve ctrl + x komutu ile kaydedip çıkın.

auth required pam_yubico.so mode=challenge-response

** Şayet bu aşamada bir sorun var ve ekran kilidinizi devreye alırsanız cihazınıza tekrar giremeyebilirsiniz!! **

Bu noktadan sonra cihazınızdaki tüm yetkilendirme gereken işlemlerde sizden Yubikey'i takmanız istenecektir. Her şeyin yolunda olduğundan emin olmak ve bir sorun varsa zahmetsizde düzeltmek için ** yukarıdaki tavsiyeye bağlı olarak açık tuttuğunuz sudo yetkili uçbirimden ** başka bir uç birim açarak aşağıdaki komutu girin.

sudo echo test

sudo yetkilendirmesi için Yubikey'iniz takılı iken sizden parola sorulması ve uçbirimin test yazdırması gerekli. Şayet bu gerçekleşmedi ise ayarlarınızda bir terslik var demek olacağından geri dönüp adımlarda bir hata yapıp yapmadığınızı kontrol etmelisiniz. Şayet bir sorunla karşılaşırsanız sudo yetkili uçbirimden /etc/pam.d/common-auth dosyasında yaptığınız değişiklikleri geri alıp kaydederek cihazınızın erişiminiz dışına kitlenmesini engelleyebilirsiniz.

Şayet test'i başarılı şekilde geçti iseniz artık Yubikey ile birlikte cihazınızı biraz daha güvenli şekilde kullanmaya başlayabilirsiniz.

Diğer kullanıcılar

Eğer cihazda birden fazla kullanıcı var ve sadece bir kullanıcı Yubikey kullanacak ise /etc/pam.d/common-auth yapılandırmasındaki değişikliği aşağıdaki ile değiştirerek sadece google-authenticator kurulumu yapmış kullanıcıların OTP kullanmasını sağlayabilirsiniz.

** Bu durum root kullanıcısının 2FA dışında kalmasına sebep olacağından gerekmedikçe önerilmez. **

auth required pam_yubico.so mode=challenge-response nullok

Şayet root kullanıcısının da girişini Yubikey ile gerçekleştirmek isterseniz yukarıdaki adımları root kullanıcı ile tekrar etmeniz gereklidir.

Google-Authenticator ile Login Güvenliği

Google-authenticator(GA) GNU/Linux cihazlarda login ekranlarında parola ile birlikte ikinci faktör olarak (2FA) akıllı cihazlardan alınacak bir kodu sunarak giriş yapılmasına imkan veren bir yazılım. GA kullanarak cihazlarınıza erişimi daha kontrollü ve güvenli hale getirmek mümkün.

Kurulum

Öncelikle bilgisayarınıza google-authenticator ve PAM modülünü kurmanız gerekiyor. Bunun için aşağıdaki komutları çalıştırın.

Debian sistemlerde: sudo apt-get install google-authenticator libpam-google-authenticator

RPM tabanlı sistemlerde: sudo yum install google-authenticator libpam-google-authenticator

Kurulumun tamamlanmasının ardından GA'nın ayarlarını yaparak cihazınızda bir anahtar oluşturmak bunu kullandığınız mobil cihazdaki bir OTP yazılımına aktarmak için aşağıdaki komutu uçbirimde çalıştırın.

google-authenticator

Komutu çalıştırmanızın ardından Do you want authentication tokens to be time-based (y/n) sorusuna evet anlamında y cevabını verip devam edin.

Uçbirimde aşağıdaki şekilde bir karekod ve bir terslik durumunda kullanılmak üzere 5 adet tek kullanımlık kod çıkacaktır.

alt-text

Çıkan karekodu tercihiniz olan bir OTP yazılımı ile mobil cihazınıza eklemelisiniz. Bunun için özgür andOTP yazılımı önerilir ve kullanım rehberine başvurabilirsiniz. Aynı zamanda acil durum kodlarını da elle veya yazıcı ile yazdırarak güvenli bir yerde taşımanız bir aksilik durumunda cihazınıza erişmeniz için hararetle önerilir. Bunun için en iyi yol bastırdığınız kodları kesip koyu renkli bir bant ile kaparak cüzdan gibi sürekli taşıdığınız bir yerde bulundurmanız olacaktır. Böylece gerektiğinde kodları kullanmanız mümkün olacağı gibi istenmeyen şekilde el geçirilmesinin de önüne geçebilirsiniz. Şayet tehdit modelniz bu durumun aksine hareket etmenizi gerektiriyor ise cihazınıza daha zor olacak ise de GA erişimi olmadan da ulaşmanız mümkündür.

Karekodu taradıktan sonra gelecek tüm sorulara evet diyerek kurulumu tamamlayın. Çıkan sorular sırası ile bir kodun tekrar kullanılması, zaman sapmalarına karşı koruma ve sürekli giriş denemelerine karşı tedbir sunacaktır.

Do you want me to update your "/home/xxxx/.google_authenticator" file? (y/n) y

Do you want to disallow multiple uses of the same authentication
token? This restricts you to one login about every 30s, but it increases
your chances to notice or even prevent man-in-the-middle attacks (y/n) y

By default, a new token is generated every 30 seconds by the mobile app.
In order to compensate for possible time-skew between the client and the server,
we allow an extra token before and after the current time. This allows for a
time skew of up to 30 seconds between authentication server and client. If you
experience problems with poor time synchronization, you can increase the window
from its default size of 3 permitted codes (one previous code, the current
code, the next code) to 17 permitted codes (the 8 previous codes, the current
code, and the 8 next codes). This will permit for a time skew of up to 4 minutes
between client and server.
Do you want to do so? (y/n) y

If the computer that you are logging into isn't hardened against brute-force
login attempts, you can enable rate-limiting for the authentication module.
By default, this limits attackers to no more than 3 login attempts every 30s.
Do you want to enable rate-limiting? (y/n) y

Bu işlemin ardından ev dizinizin altında .google_authenticator dizininde kullanılacak anahtarınız oluşturulmuş olacak ve işletim sisteminizin PAM ayarlarına giriş yapmaya hazır olacaksınız.

PAM ayarları

PAM GNU/Linux cihazlarda kullanıcı yetkilendirmesinden sorumlu olan yazılımdır. /etc/pam.d dizini altında bulunan ayar dosyaları ile PAM davranışları şekillendirilebilir. Bu rehber PAM detaylarına girmek üzere yazılmadığından bir sistemdeki olası en güvenli kullanımı önerecektir. Fakat GA ve PAM ayarlarını ihtiyacınıza göre istediğiz gibi şekillendirebilirsiniz. Buna parola olmadan sadece GA kodu ile cihazınıza giriş yapmaktan, su/sudo gibi özel login tiplerine sınırlama getirmek şeklinde çeşitlendirmek mümkün.

Cihazınızdaki tüm PAM kontrolündeki login işlemlerine GA kodunu uygulamak için aşağıdaki dosyayı tercih ettiğiniz bir metin editörü ile açın. Aşağıdaki komutta nano editörü kullanılmıştır.

** Birazdan açacağınız sudo yetkisi vereceğiniz uçbirimi kapatmayın!!! **

sudo nano /etc/pam.d/common-auth

Karşınıza aşağıdakine benzer bir metin çıkacaktır.

#
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.).  The default is to use the
# traditional Unix authentication mechanisms.
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules.  See
# pam-auth-update(8) for details.

# here are the per-package modules (the "Primary" block)
auth    [success=1 default=ignore]      pam_unix.so nullok_secure
#auth    optional                        pam_exec.so /home/alper/wrongpasspic.sh
# here's the fallback if no module succeeds
auth    requisite                       pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth    required                        pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth    optional                        pam_cap.so
# end of pam-auth-update config

Dosyanın sonuna aşağıdaki satırı ekleyin ve ctrl + x komutu ile kaydedip çıkın.

auth required pam_google_authenticator.so

** Şayet bu aşamada bir sorun var ve ekran kilidinizi devreye alırsanız cihazınıza tekrar giremeyebilirsiniz!! **

Bu noktadan sonra cihazınızdaki tüm yetkilendirme gereken işlemlerde sizden GA kodu istenecektir. Her şeyin yolunda olduğundan emin olmak ve bir sorun varsa zahmetsizde düzeltmek için ** yukarıdaki tavsiyeye bağlı olarak açık tuttuğunuz sudo yetkili uçbirimden ** başka bir uç birim açarak aşağıdaki komutu girin.

sudo echo test

sudo yetkilendirmesi için sizden parola ve ardından GA kodu sorulması gerekli. Şayet bu gerçekleşmedi veya test yazısı başarılı şekilde yazılmadı ise ayarlarınızda bir terslik var demek olacağından geri dönüp adımlarda bir hata yapıp yapmadığınızı kontrol etmelisiniz. Şayet bir sorunla karşılaşırsanız sudo yetkili uçbirimden /etc/pam.d/common-auth dosyasında yaptığınız değişiklikleri geri alıp kaydederek cihazınızın erişiminiz dışına kitlenmesini engelleyebilirsiniz.

Şayet test'i başarılı şekilde geçti iseniz artık google-authenticator ile birlikte cihazınızı biraz daha güvenli şekilde kullanmaya başlayabilirsiniz.

Diğer kullanıcılar

Eğer cihazda birden fazla kullanıcı var ve sadece bir kullanıcı GA kullanacak ise /etc/pam.d/common-auth yapılandırmasındaki değişikliği aşağıdaki ile değiştirerek sadece google-authenticator kurulumu yapmış kullanıcıların OTP kullanmasını sağlayabilirsiniz.

** Bu durum root kullanıcısının 2FA dışında kalmasına sebep olacağından gerekmedikçe önerilmez. **

auth required pam_google_authenticator.so nullok

Şayet root kullanıcısının da girişini GA ile kullanmak isterseniz yukarıdaki adımları root kullanıcı ile tekrar etmeniz gereklidir.

Parmak izi ile Login Güvenliği

Parmak izi, yetkilendirme için en yaygın kullanılan girdilerden biridir. Biyometrik verilerin yetkilendirme için kullanımı hem kişilerden görece ayrılmaz bir öğeyi kullanarak kişilerin fiziki varlığını garanti etmekte hem de neredeyse her bireye özel bir veriyi kullanarak kişiye güvenlik sağlamaktadır. Biyometrik verilerin kanuni kullanım sınırları bir yana bırakıldığında, bu özellikler diğer ikinci faktör araçlarına göre parmak izi kullanımını özellikle ön plana çıkartmaktadır.

Ancak parmak izi seçenekler arasındaki en güvenli tercih sayılmaz. Bu bakımdan:

  • Parmak izi değiştirilemez. Haliyle bu verinin güvenliğini sağlamak özellikle önem kazanır.
  • Parmak izi insanların her yere bıraktığı bir şey olması hasebiyle görece kolaylıkla elde edilebilir bir bilgidir.
  • Parmak izi tarama sistemleri aldatılmaya açıktır. Her ne kadar gelişmiş donanımlar bunu zorlaştırsa da imkansız kılmamaktadır.
  • Parmak izi taramaları kişiyi tanımlamakta hata yapabilir. Özellikle yaralanmalar gibi fiziki değişiklikler taramayı imkansız kılabilir.

Bu sebeplerden ötürü parmak izini üçüncü faktör olarak veya sadece kişilerin fiziki varlığını kanıtlamak için zayıf bir kanıt olarak kullanmakta yarar vardır. Halihazırda sadece parola ile korunan bir sisteme parmak izi doğrulaması eklenmesi bir miktar daha güvenlik sağlayacaktır. Özellikle dahili parmak izi tarayıcısı olan cihazlarda bunu yapmanın maliyeti neredeyse sıfır olduğundan değerlendirilebilir bir seçenek olarak ortaya çıkabilir.

EĞER TEHDİT MODELİNİZDE ALIKONULMA İHTİMALİ VARSA NE OLURSA OLSUN PARMAK İZİ DOĞRULAMASI KULLANMAYIN.

Kurulum

Öncelikle bilgisayarınıza fprintd paketini kurmanız gerekiyor. Bunun için aşağıdaki komutları sırayla çalıştırabilirsiniz:

Debian tabanlı (Ubuntu, Mint vb.) sistemlerde: sudo apt-get install fprintd

Red Hat tabanlı (Fedora vb.) sistemlerde: sudo yum install fprintd

Kurulumun ardından fprintd ve dahili PAM modülü bilgisayarınıza kurulmuş olacak. Parmak izi taramasına başlamak için aşağıdaki komutu girin.

fprintd-enroll -f [ Parmak adı ]

fprintd'ye hangi parmağınızı taradığınızı belirtmeniz gerekmektedir. Bu sayede, size tarama sırasında hangi parmağınızı sorduğunu bilebilirsiniz. Tavsiyemiz, olası bir aksilik durumunda kullanımınızı etkilememek için her iki elinizde bulunan ikişer parmağı tanıtmanız yönünde olacaktır. Geçerli parmak isimleri şunlardır:

KomutParmak adı
left-thumbSol baş parmak
left-index-fingerSol işaret parmağı
left-middle-fingerSol orta parmak
left-ring-fingerSol yüzük parmağı
left-little-fingerSol serçe parmak
right-thumbSağ başparmak
right-index-fingerSağ işaret parmağı
right-middle-fingerSağ orta parmak
right-ring-fingerSağ yüzük parmağı
right-little-fingerSağ serçe parmak

Sol serçe parmağınızı tanıtmak için örnek komut:

fprintd-enroll -f left-little-finger

Daha sonra parmağınızı 4 kere tarayıcıdan geçirmeniz istenecek ve başarılı olması halinde ekleme işlemi tamamlanacaktır.

Using device /net/reactivated/Fprint/Device/0
Enrolling left-little-finger finger.
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-completed

İşlemin başarısını test etmek için aşağıdaki komutu çalıştırıp parmağınızı okutabilirsiniz.

fprintd-verify -f left-little-finger

Kayıtlı parmak izleriniz listelenecek ve belirttiğiniz parmağı okutmanız üzerine onay alacaksınız.

Using device /net/reactivated/Fprint/Device/0
Listing enrolled fingers:
 - #0: left-little-finger
Verify result: verify-match (done)

PAM ayarları

PAM, GNU/Linux sistemlerde kullanıcı yetkilendirmesinden sorumlu olan yazılımdır. /etc/pam.d dizini altında bulunan yapılandırma dosyaları ile PAM davranışları şekillendirilebilir. Bu rehber PAM detaylarına girmek üzere yazılmadığından dolayı bir sistemdeki olası en güvenli kullanımı önerecektir. Arzu ederseniz, PAM ayarlarını ihtiyacınıza göre istediğiz gibi şekillendirebilirsiniz.

Cihazınızın PAM kontrolündeki tüm login işlemlerine parmak izi doğrulamasını eklemek için aşağıdaki dosyayı tercih ettiğiniz bir metin editörü ile açın. Aşağıdaki komutta nano editörü kullanılmıştır.

Birazdan açacağınız sudo yetkisi vereceğiniz uçbirimi kapatmayın!!!

sudo nano /etc/pam.d/common-auth

Karşınıza aşağıdakine benzer bir metin çıkacaktır.

#
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.).  The default is to use the
# traditional Unix authentication mechanisms.
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules.  See
# pam-auth-update(8) for details.

# here are the per-package modules (the "Primary" block)
auth    [success=1 default=ignore]      pam_unix.so nullok_secure
#auth    optional                        pam_exec.so /home/alper/wrongpasspic.sh
# here's the fallback if no module succeeds
auth    requisite                       pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth    required                        pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth    optional                        pam_cap.so
# end of pam-auth-update config

Dosyanın sonuna aşağıdaki satırı ekleyin ve Ctrl + X kısayolu ile dosyayı kaydedip çıkın.

auth required pam_fprintd.so

Şayet bu aşamada bir sorun varsa ve ekran kilidinizi devreye alırsanız cihazınıza tekrar giremeyebilirsiniz!!

Bu noktadan sonra cihazınızdaki tüm yetkilendirme gereken işlemlerde sizden parmak iziniz istenecektir. Her şeyin yolunda olduğundan emin olmak ve bir sorun varsa zahmetsizce düzeltmek için yukarıdaki tavsiyeye bağlı olarak açık tuttuğunuz sudo yetkili uçbirimden başka bir uçbirim açarak aşağıdaki komutu girin.

sudo ls ~

Sudo yetkilendirmesi için sizden parola ve ardından parmak izi istenmesi gerekir. Şayet bu gerçekleşmediyse veya ev dizininin altındaki dosyalar başarılı bir şekilde listelenmediyse geri dönüp adımlarda bir hata yapıp yapmadığınızı kontrol edin. Şayet bir sorunla karşılaşırsanız sudo yetkili uçbirimden /etc/pam.d/common-auth dosyasında yaptığınız değişiklikleri geri alıp kaydederek cihazınızın kilitlenmesini engelleyebilirsiniz.

Şayet testi başarılı şekilde geçtiyseniz artık parmak iziniz ile birlikte cihazınızı biraz daha güvenli şekilde kullanmaya başlayabilirsiniz.

Diğer kullanıcılar

Eğer cihazda birden fazla kullanıcı varsa ve sadece bir kullanıcı parmak izi kullanacaksa /etc/pam.d/common-auth yapılandırmasındaki değişikliği aşağıdakiyle değiştirerek sadece parmak izi kurulumu yapmış kullanıcıların ikinci faktöre ihtiyaç duymasını sağlayabilirsiniz.

Bu durum root kullanıcısının 2FA dışında kalmasına sebep olacağından gerekmedikçe önerilmez.

auth required pam_fprintd.so nullok

Şayet root kullanıcısının da girişini parmak iziyle yapmak isterseniz yukarıdaki adımları root kullanıcısıyla tekrar etmeniz gereklidir.

Cihaz Şifreleme

Cihazlarınızı neden şifrelemelisiniz?

Cihazlarınızı şifrelemekle, cihazınızın depolama alanındaki; işletim sisteminizi, kurduğunuz yazılımları ve kişisel verilerinizi içeren bölümleri cihazınız kapalıyken parolasını bilmeyenlere karşı erişilmez kılarsınız.

Cihazınız şifreli değil iken çalınması kaybolması durumunda cihazınızı bulan herhangi biri kolaylıkla dosyalarınızı okuyabilir, hesaplarınıza erişebilir ve kimliğinizi çalabilir. Daha kötüsü, bir saldırgan kötücül yazılımları cihazınıza yükleyerek tüm kullanımınıza uzaktan erişebilir.

Cihazlar nasıl şifrelenir?

Tam disk şifreleme (Full disk encryption) bazı mobil cihazlarda olağan olarak gelmekte olsa da dizüstü ile masaüstü bilgisayarlarda ve çoğu cep telefonunda elle ayarlanmalıdır.

Bilgisayar Kurulumları:

  • GNU/Linux: Neredeyse her GNU/Linux dağıtımı kurulumu sırasında diskinizi şifrelemeyi mümkün kılar. Bu amaçla iki yöntem söz konusudur:

    • "Tam Disk" Şifreleme: GNU/Linux dağıtımlarında LUKS artık standart olarak desteklenmektedir. Bu yöntem cihazınızın ana depolama alanındaki işletim sistemi dahil her şeyi şifreler. Cihazınız açılırken size ayrı ve deşifre amacıyla bir parola sorulur.
    • "Ev Dizini" Şifreleme: Bu yaklaşımda ise işletim sistemi şifrelenmez. Kişisel verileriniz korunacaktır fakat bir saldırganın cihazınıza eriştiğinde işletim sisteminize etki edecek bir değişiklik yapmasını engellemeyecektir.
  • Windows: Security Planner / Windows Şifrelemesi

    • Önemli: Microsoft, standart olarak şifreleme anahtarlarınızı uzak sunucularda yedeklemektedir. Bu Microsoft'un ve iş birliği yaptığı her devletin cihazınızı kolaylıkla deşifre edebilmesi demektir. Eğer bir devletin cihazınızın içeriğine erişmesinden endişeli iseniz bu "özelliği" devre dışı bırakmalısınız ve yeni anahtarlar üretmelisiniz.
  • macOS: Security Planner / Mac Şifreleme

Cep Telefonu Kurulumları:

Cihaz şifrelemenin zorlukları

Sınırları: Cihaz şifreleme her derde deva değildir! Eğer parolalarınız yeterince güçlü değil ise bir bilgisayar rahatlıkla parolanızı tahmin edebilir ve cihazınıza erişilebilir. Ayrıca cihaz şifreleme virüslere ve kötücül yazılımlara karşı hiçbir koruma sağlamaz. Eğer verileriniz bir bulut hizmetine yedeklendiyse ve bu hizmeti sağlayan sunucular açığa çıkar veya devletle iş birliği yaparsalarsa cihaz şifrelemesi verilerinizi korumayacaktır (kullanılan hizmet özellikle uçtan uca şifreleme desteklemiyorsa).

Yetkilendirme etkinleştirilmelidir
Cihaz şifrelemesi, yetkilendirme zorunlu değilse etkili değildir. Örneğin dizüstünü bilgisayarınıza giriş yapmanız veya cep telefonunuzun ekran kilidini bir PIN ile korumanız gibi...

Veri kurtarmayı imkansız kılar
Tam disk şifreleme, iyi bir parola ve PIN yönetimi sürdürülmüyorsa verilerinize erişiminizi kaybetme riskinizi arttırır. Unutulan bir parola veya PIN, disk şifreleme anahtarının bulunduğu sektörde yaşanan bir arıza verilerinizi sizin veya bir başkasının kurtaramayacağının garantisidir. Verilerinizin düzenli yedeklerini alarak veri kaybı riskini azaltmalısınız. Yedeklerinizi de fiziki güvneliğini sağlayamıyorsanız şifrelemeniz önerilir.

Cihaz kapalı veya kilitli olmalıdır
Cihaz şifrelemesi sadece bilgisayarınız kapalı iken tam güvenlik sağlar. Bir kere parolanız ile giriş yaptıktan sonra bilgisayarınız, verilerinizin deşifre edilmesi için gerekli anahtarı hafızasına almış olmakla ekran kilidi etkin olsa bile çalışır durumda olduğundan (veya uyurken) bir kişinin verilerinize erişme riskini taşır. Bu tip bir saldırı fazlasıyla teknik yetkinlik gerektirmekte ve bu risk bilgisayarınızı açık tutmanıza veya giriş yapmanıza engel olmamalı. Fakat cihazınızın sizden uzak kalabileceği tehlikeli durumlarda bilgisayarınızı kapalı tutmak en iyisidir. Eğer bu tip bir saldırının kurbanı olmaktan endişeli iseniz en iyisi cihazınızı fiziksel olarak her zaman yanınızda bulundurmalısınız.

Ek okuma listesi

Mobil Cihazlar

Taşınabilir cihazlar günlük hayatın vazgeçilmez parçaları haline gelmiş durumdalar. Artık bilgisayar denilince dizüstü bilgisaylar akla gelmekte, her telefon kullanıcısı bir şekilde "akıllı" mobil cihazlar kullanmakta. Bu gelişme insanların sürekli bağlı kalmasını ve tüm toplumsal örgütlenmenin bu bağlılığa dayanmasına sebep olmakta ve bu cihazlarla ürettilen bilgi giderek artmakta.

Söz konusu mobil cihazlar olunca çalınma, kaybolma ve bir şekilde istenmeyen ellere düşme ihtimali taşınabilirliklerinden dolayı çok olası olmakta. Bu durum cihazların bilinçli veya bilinçsiz olarak içerdikleri çok miktardaki kişisel ve değerli bilgi ile birleştiğinde konuya ilişkin güvenlik tedbirlerinin de özellikle değerlendirilmesi gerekmekte.

Özgürlük sorunu

Günümüzdeki tüm genel son kullanıcı ürünleri gibi mobil cihazlar da özgürlük düşüncesi ile imal edilmemektedirler. Özgür olmayan sistemlerin üreticilerine hizmet ettiği gerçeği kullanıcıların güvenliğini de belirsizlik içine itmektedir.

  • Donanım özgürlüğü: Modern bilişim aygıtlarının donanı seviyesindeki özgürlüğü neredeyse yok denecek düzeydedir. Tamir etmeimkanlarının kısıtlanmasından, DRM uygulamalarına kadar pek çok yansıma gözlemlenebilir. Bu durumu değiştirmek üzere projeler var olsa da çip üreticileri gibi alternatifi zor bulunan kritik parçaların ayakbağı özgür donanımların elde edilmesine hala engel olmaktadır.

  • Yazılım özgürlüğü: Günümüzdeki yazılım özgürlüğü mücadelesinin çizgisinde mobil cihazların da yazılımsal özgürlüğü hala ilerleme aşamasında. Bilgisayarlar gibi firmware seviyesinden işletim sistemi ile kullanıcı yazılımlarına kadar pek çok yazılım üreticilerden geldiği hali ile özgür olmamakta. İşletim sistemi ve yazılımlar görece özgürleştirilebilse de hala firmware seviyesi mülk olarak kullanılmak zorunda. Bu bilinmezlikle birlikte bir güvenlik riskini de orta çıkarmakta.

  • GSM mahremiyeti: Baseband modem, GSM şebekesine bağlantı kuran donanım olarak mobil cihazlarda donanım ve yazılım özgürlüğünün en büyük düşmanı konumunda. Baseband çoğu cihazda ana işlemci ile doğrudan bağlantı halinde, RAM'i ortak kullanmakta ve dilediği veriye ulaşıp işlem yapabilmekte. Bu cihazın yazılımının eski ve özgür olmaması bir risk oluşturmakta ve bu durumun kötüye kullanıldığı bilinmekte. GSM'in güvenli olduğu varsayılsa bile sistemin tasarımı gereği hizmet sağlayıcı ve uzantısı olarak devletler tüm kullanıcıların anlık olarak nerede olduğunu ve kullanım bilgilerini elde edebilmekte. Bu mahremiyet sorunu duruma göre bir güvenlik sorununa da dönüşebilmekte.

Risk değerlendirmesi

Mobil cihazların günümüz kullanıcıları için hem mahremiyet hem de güvenlik açısından pek çok istenmeyecek özelliği bulunmaktadır. Bu özelliklerin kimi doğal olarak var olmakta kimileri ise kasıtlı olarak kişileri ve bilgilerini kontrol etmek amacı ile kötüye kullanılmaktadır.

Bugün genel bir tavsiye olarak güvenlik ihtiyacının yüksek olduğu durumlarda ve tehlike doğurabilecek bilgilerin işlenmesinde mobil cihazların kullanılması önerilmez. Hem donanımsal bilinmezlik hem de gerekli güvenlik ihtiyacının karşılanmasının mobil cihazın avantajlarını çok yüksek oranda ortadan kaldırmasından dolayı kritik kullanımlarda uygun donanımların seçilmesi yerinde olur.

Şayet kullanım ihtiyacı mobil bir donanımı gerektiriyor ve bu gereklilik öngörülen riskleri aşacak durumda ise değerlendirmenin yapılarak gerekli tedbirlerin alınması ile riskin en aza indirilmesi mümkündür.

  1. Taşınabilir bir cihaza ihtiyaç var mı?
  2. Anlık bağlantı (GSM) gerekli mi?
  3. Cihazın korunmasına ne kadar kaynak ayrılabilir?
  4. Gerektiğinde cihazı elden çıkarma maliyetine katlanılabilir mi?
  5. Kullanım mülk yazılımları gerektiriyor mu?

Yukarıdaki soruların cevaplarına göre en uygun cihaz ve kullanım tasarımının yapılması mümkündür. Tercihlerinize göre farklı cihaz ve kurulumlar yapabilirsiniz. Kullanım koşullarınızı belirledikten sonra cihaz seçimine geçebilirsiniz.

Kullanım senaryoları

Aşağıda çeşitli kullanım senaryoları belirlenmiştir. Buna göre uygun kullanım önerileri de bulunmaktadır.

  1. Sürekli bağlantı
  2. wifi - wifi
  3. Harici wifi modem

Sürekli bağlantı ihtiyacı ve GSM destekli cihazlar

Şayet durumun değerlendirmeniz sonucunda modern cep telefonu kullanımı alışkanlıklarını sürdürmek zorundaysanız Baseband modemi taşıyan bir cihazı alıp kullanmak zorunda kalacaksınız. Bu teorik olarak özgür olmayan ve kürsel bir ağ ile sürekli bağlantı kuran bir işlemciyi cihazınızın üzerinde yetki sahibi olabileceği riskini de taşımak anlamına gelmekte. Genel kanı, özellikle hedef alınmayacaksanız veya hedef gözetmeyen toplu bir gözetim/saldırının nesnesi olma ihtimaliniz düşük ise bu tehlikeyi taşımanın makul olduğu yönündedir.

Bu noktada yapacağınız cihaz tercihi baseband modemden doğan endişelerinizi azaltabilir. Baseband izolasyonu cihazların ana işlemcisi ile baseband modeminin birbirinden ayrı olmasını ifade etmektedir. Bu şekilde tasarlanmış cihazlarda işletim sisteminin ve işlediği bilgilerin modem tarafından görülmesi mümkün olmadığı gibi modem sisteme doğrudan müdahale edememekte. Bu anlamda işletim sistemi modemi kapatmak istediğinde (uçak modu) modemin gerçekten kapandığına inanmak mümkün olabilmekte.

Hangi telefonların bu imkanı sunduğunu öğrenmek ise başlı başına bir sorun olabilmekte. Replicant projesinin tercih ettiği cihazlar özellikle baseband izolasyonu imkanı sağlamakta. GrapheneOS projesi de sanallaştırma aracılığı ile cihaz işlemcisi ile basband arasında bağlantıları kontrol edebilmekte. Pinephone da wifi ve modem donanımlarını işlemciden ayrı tutmakta. Benzer şekilde Librem5 cihazlar da baseband modem'i sistemde ayrı çalıştırmakta.

Sayılan cihazların ya modern kullanım için eski ya da Türkiye'de bulunması zor cihazlar olması gerçeği söz konusu tavsiyeyi bir noktada boşa çıkarmakta. Bir cihazın izolasyon konusundaki kapasitesini öğrenmek çoğu zamandan pek de kolay bulunmayan tasarım detaylarını incelemeyi gerektirdiğinden yeni cihazların keşfi kolay olmamakta.

Şayet sayılan projelere dahil bir cihazı kullanma imkanınız var ise GSM şebekesini kullanırken en azından cihazınızı kontrol altında tumanız mümkün olabilir.

Wifi

Günümüzdeki internet üzerinden iletişim hizmet ve sistemlerinin gelişmişliği altında artık sesli ve yazılı iletişimin sadece internet bağlantısı ile sağlanması çok kolaylaşmış durumda. Signal veya Jitsi gibi araçların sağladığı imkanlar ile artık GSM ses bağlantısına ihtiyaç eskisi kadar yok. Bu neden ile bir kişi internet bağlantısını sağlayabildiği her yerden iletişim kurması mümkün.

Buna e-posta gibi diğer iletişim ihtiyaçlarının da çoğunlukla İnternet üzerine taşındığı gözönüne alındığında bir kişinin GSM şebekesinin sağladığı klasik ses ve yazılı (SMS) bağlantı imkanlarına ihtiyacının az olması muhtemel. Özellikle VOIP benzeri klasik telefon hizmetini İnternet üzerinden sağlayan servislerle telefon ihtiyacının da karşılanabilmesi mümkün.

Özellikle büyük şehirlerde pek çok yerde wifi bağlantısının bulunabildiği durumlarda GSM modemi içermeyen veya izolasyonu yeterli olan bir cihazı sadece wifi üzerinden kullanmak fikri değerlendirilebilir.

Harici wifi modem

Modern cihazlardaki GSM modem izolasyonunun sıkıntısı ve wifi bulunmayan alanlarda bağlantı ihtiyacı için bugünlerde yaygın şekilde kullanılan wifi hotspot olarak da bilinen 4G modemlerin kullanılan mobil cihaz ile eş olarak kullanılması bir seçenek. Bu kurulum hem kişilere iyi derecede bir baseband izolasyonu sağlarken hem de kişilerin sürekli bağlantı ihtiyaçlarını karşılayabilir. Lakin GSM sistemlerinin mahremiyet yönünden getirdiği sorunlar ve bu durumun yansıması olabilecek güvenlik endişelerini ortadan kaldırmamakta.

Hangi Mobil Cihaz

Mobil Cihaz Genel Tavsiyeler

Mobil Cihaz Tercihi

Cihazınızı içinde bulunduğunuz duruma göre seçmelisiniz:

  • Yüksek Risk: Şayet ulus devletler ve şirketler gibi yüksek bütçeli bir grubun hedefi olduğunuzu veya olabileceğinizi öngörüyorsanız.
  • Orta Risk: Hali hazırda hedef olmadığınız ve ihtimal görmediğiniz halde bir görece yüksek kabiliyetlere sahip saldırgana karşı kolay lokma olmayı tercih etmiyorsanız.
  • Düşük Risk: Taşınabilir cihazlarınızı hassas veriler için kullanmıyor veya düşük miktarda veri işliyorsanız.

Yüksek risk

Eğer riskiniz yüksek ise, telefonları hassas hiç bir şey için kullanmamanız tavsiye edilir. Bunun pek çok sebebi bulunmakta:

  1. Sorunların başında tüm telefonların sizi kablosuz telefon ağına (hücresel ağ) bağlayan, "baseband modem" olarak adlandırılan bir donanım içermesi ve bu cihazların doğal olarak bir takip sistemi olmasıdır. Bu modemler özel mülktür ve uzaktan kötüye kullanılabilecek pek çok güvenlik açığı içerme ihtimalini taşımaktadır. Bu açıklar takip edilmenizden, tüm iletişiminizin ve ortamınızın dinlenmesine kadar ilerleyebilir.

  2. Replicant tamamen özgür bir Android dağıtımı olarak sadece belirli cihazlar üzerinde çalışmaktadır. Çalıştığı cihazların temel özelliği baseband modem'i işlemciden izole etmenin bir imkanı olmasıdır. Replicant aynı zamanda, cihaz üzerindeki, Wi-Fi, Bluetooth, GPS gibi donanımları özgür sürücüleri bulunmadığı için çalıştırmaz. Şayet mobil cihaz kullanmanız gerekiyorsa ve bu cihaz ile önemli veriler işleyecekseniz Replicant kurulu bir telefon iyi bir tercih olabilir.

Cep telefonlarına alternatif olarak Wi-Fi desteği olan ama hücresel ağa bağlanmayan bir tablet satın alabilirsiniz. Bu tip cihazlar baseband modem içermemektedir ve uzaktan saldırılara karşı çok daha dayanıklıdır. Sadece Wi-Fi içeren bir cihaz ile hala hücresel ağa, ayrı bir taşınabilir hotspot cihazı ile bağlanabilirsiniz.

NOT: Uçak modu yeterli değildir. Cihazınıza bağlı olarak, uçak modunda bile baseband modem hala çalışıyor ve cihazınızı saldırılara açık tutuyor olabilir.

Tavsiye edilen sadece Wi-Fi destekleyen cihazlar:

Güncellenecektir (1 Ağustos 2020)

Orta risk

Taşınabilir cihazınızda; devletler, şirketler veya meraklı insanlar tarafından elde edilmesini istemediğiniz hassas veriler mi var? Elbette var, herkesin var! Bu durumda, biri cihazınızı bulduğunda veya çaldığında onların işini olabildiğince zorlaştırmak istemeniz çok doğal.

Şayet hiç uğraşmayacağım diyorsanız, kendinizi Apple şirketinin sinsi yumuşak kollarına bırakıp modern bir iPhone alabilirsiniz. Pek çok gerçek olayda bu cihazlara örgütlü devletler dışında kolaylıkla erişilemediği görüldü. Lakin Apple şirketinin Çin ile yaşadığı aşk, yakın zamanda özgür olmayan yazılımında bulunan açıklar ve İsrailli bir şirketin 1000 ABD dolarına her iPhone'un kilidini kırabildiği iddiası ile yaşamanız gereklidir.

Tavsiyemiz uygun bir cihaz alarak üzerinde GrapheneOS veya LineageOS Android dağıtımları çalıştırmanız ve Google, Facebook gibi casusluk şirketlerinin yazılımları da dahil özgür olmayan yazılımlar çalıştırmamanızdır. GrapheneOS ve LineageOS piyasadan alabileceğiniz pek çok cihaza kolaylıkla kurulabilen ve mahremiyetinize önem veren toplulukların geliştirdiği işletim sistemleridir.

Tavsiye edilen cihazlar:

  • LineageOS için;

    • LG G3 Türkiye'de kolaylıkla bulunabilen, temizi için biraz araştırma gerektiren ama zamanına göre çok iyi donanıma sahip bir cihazdır. LineageOS kurulumu rootlama gereğinden dolayı biraz baş ağrıtabilir ama fiyat/performansta çok başarılıdır. Ancak LG G3 cihazlar, kronik olarak anakart arızası yaşayabilmektedir. Bu durumu göz önünde bulundurmanızı tavsiye ederiz. Bataryası çıkarılabilmektedir.
    • Xiaomi Redmi Note 7 Bir üst modeline (Xiaomi Redmi Note 8) kıyasla fiyat olarak daha uygun bir seçenektir. USB-C desteklediği için de geleceğe dönük rahat etmenizi sağlar. Ancak NFC desteği bulunmamaktadır.
    • Xiaomi Redmi Note 8/8T Çok daha modern bir donanım olarak Redmi Note 8 performans isteyen kullanıcılar için iyi bir tercih olabilir. USB-C desteklediği bulunmaktadır. Ancak Xiaomi Redmi Note 8 modelinin de NFC desteği bulunmamaktadır.
  • GrapheneOS için;

    • Google Pixel serisi cihazların tamamına GraphenOS kurulabilmekte fakat Pixel 4 sürümü henüz tamamlanmadı. Graphene uzun dönemli destek için, şimdilik Pixel 3 serisi cihazları önermektedir. GrapheneOS, Pixel 4 için tamamlandığında bu önerinin Pixel 4 olarak değişmesi muhtemel.

Düşük risk

Telefonunuzu kilitsiz bir şekilde öylece ortalıkta mı bırakıyorsunuz? O zaman ya başınıza gelecekleri hak ediyorsunuz ya da gerçekten taşınabilir cihazlarınızda hiçbir şey olmadığını düşünüyorsunuz. Ne yazık ki modern taşınabilir cihazlar İnternet'e bağlı oldukları ve kullanıldıkları sürece siz fark etmeseniz de ziyadesiyle fazla veri üretir ve bunları kaydederler. Bu verilerden belki haberiniz yoktur ama pekala bilgili bir kişi -ki bu bilgisayarla ilgili her sorunuzda aradığınız arkadaşınız bile olabilir- bu bilgilere ulaşmanın bir yolunu bilebilir.

Bu sebeple riskinizin düşük olduğuna eminseniz ve yanıldığınız için pişman olmayacaksanız, pekala herhangi bir telefon alıp ekran kilidi bile kullanmadan hayatınızı sürdürebilirsiniz.

LineageOS ile Mobil Cihaz Güvenliği

LineageOS, mobil cihazlar için Android tabanlı bir işletim sistemidir. Privacy Guard gibi araçlarla verileriniz hakkında azami kontrol sahibi olmanızı sağlar. Hiçbir Google servisini kullanmaksızın (dolayısıyla verilerinizi Google ile paylaşmaksızın) kullanabileceğiniz bir Android dağıtımıdır. Her ay güvenlik güncellemeleri gönderen, güvenlik odaklı bir dağıtımdır. Tüm işlemlerin öncesinde şarjınızın %60'ın üstünde olduğundan ve verilerinizi yedeklediğinizden emin olun. İşlem sonunda telefonunuzdaki tüm veriler silinecektir.

Bu döküman "Xiaomi Redmi Note 8" cihazına kuruluma göre oluşturulmuştur.

Rehber boyunca mobil cihazınızı kullandığınız her durumda aşağıdaki başlıktaki adımları yapmılmış olduğunu kontrol edin. Cihazınızı bilgisayara bağladığınızda sizden USB hata ayıklama izni isterse bu izni verin.

Cihazınızda geliştirici seçeneklerini ve USB hata ayıklamayı aktifleştirin

  • Cihazımızın Ayarlar > Telefon Hakkında kısmına girip MIUI sürüm numarasına 8 kere bastıktan sonra Ayarlar menünüzün altına Geliştirici Seçenekleri menüsünün eklendiğini göreceksiniz.
  • Geliştirici seçenekleri menüsüne girip MI Kilit açma durumu seçeneğine basın. Hesap ekleyin.
  • USB hata ayıklama seçeneğini aktifleştirin.

alt-text

Bu aşamadan sonra tekrar hesap eklememeniz gerekmektedir.

ADB ve Fastboot programlarını kurun

Kurulum için kullanacağımız yazılımlar olan ADB ve Fastboot programlarını cihazınıza kurun. Ubuntu kullanıyorsanız aşağıdaki komutla kurabilirsiniz.

sudo apt-get install android-tools-adb android-tools-fastboot

Bootloader kilidini açın

Bu işlemin tamamlanması için 7 gün beklemeniz gerekmektedir. Bu bölümdeki işlemler için ne yazık ki içinde Windows işletim sistemi çalışan bir cihaza ihtiyacınız olacak. Windows kurulu bilgisayara MI Unlock Tool'u kurunuz.

Ön işlemler

  • Programı çalıştırın.
  • Feragatnameyi kabul edin.
  • MI hesabınıza giriş yapın.

alt-text

  • Mobil cihazınızı USB girişinden bilgisayara bağlayıp ses kısma ve güç butonlarına aynı anda basarak boot loader ekranına girin ve kilidi açmak üzere artık tıklanabilir olan unlock butonuna tıklayın.
  • Karşınıza gelen güvenlik uyarısını okuyun ve devam etmek istiyorsanız yine de kilidi açmak üzere unlock anyway butonuna tıklayın.
  • Yüklenme ekranının ardından 7 gün sonra (bu süre değişkenlik gösterebilir) cihazınızın bootloader kilidinin açılacağına dair bir uyarı göreceksiniz.

alt-text

Bu esnada tekrar MI hesabı eklemeyin, aksi halde tekrar beklemek durumunda kalacaksınız.

Süre dolduktan sonraki işlemler

  • Süre dolduktan sonra tekrar Windows cihazınızda kurulu olan MI Unlock Tool programını açın.
  • Eğer hesabınıza tekrar giriş yapmanızı istiyorsa, İlk işlemler başlığındaki giriş adımlarını tekrar edin.
  • Cihazınızın ses kısma ve güç butonlarına aynı anda basarak boot loader ekranına girin.
  • Uyarıları kabul ederek yine de kilidi aç demek için unlock anyway seçeneğine tıklayın. İşlemler sonrasında boot loader kilidiniz açılmış olmalı.

alt-text

Fastboot ile Lineage Recovery imajını kurun

  • Recovery imajının son sürümünü buradan (.img dosyaları) indiriniz.
  • Cihazınızı USB ile bilgisayarınıza bağlayın. Geliştirici seçeneklerinin açık olduğundan, USB hata ayıklamaya izin verdiğinizden emin olduktan sonra adb devices komutuyla cihazınızı görmeniz gerekir.
  • Bağlantının sağlandığından emin olduktan sonra adb reboot bootloader komutuyla fastboot moduna girin. Bu moda ses kısma ve güç butonlarına aynı anda basarak da girebilirsiniz.
  • Cihazınız fastboot moduna girdiğinde bilgisayarınızdan fastboot devices komutunu çalıştırdığınızda cihazınızın listelenmesi gerekir. Böylece fastboot yazılımının cihazınızı bulduğundan emin oluruz.
  • Ardından fastboot flash recovery <indirdiğiniz-recovery-imajı>.img komutu ile recovery imajıyla cihazınızı flaşlayın.
  • Kapalı durumdaki cihazınızı ses açma ve güç butonlarına (dikkat edin bu sefer ses açma) aynı anda basarak recovery (kurtarma) modunda açın.

Kurtarma modunda ADB ile LineageOS'i kurun

  • LineageOS kurulum paketini indirin.

    • Kurulum paketini doğrulamak için doğrulama yazılımını kurun.
    git clone https://github.com/LineageOS/update_verifier
    cd update_verifier
    pip install -r requirements.txt
    
    • python update_verifier.py lineageos_pubkey /path/to/indirilen_zip komutu ile indirdiğiniz dosyanın imzasını doğrulayın. Bu işlem sonucunda verified successfully çıktısını alıyorsanız imza doğru demektir.
  • Ardından kurtarma modundaki cihazınızda Factory Reset, sonrasında Format data/factory reset menülerini seçin. Bu işlemin tüm verilerinizi sileceğini göz önünde bulundurarak üçüncü ekranda da Factory reset seçeneğini seçin.

alt-text

  • Fabrika ayarlarına döndürmemizin ardından, imzasını kontrol etmiş olduğumuz LineageOS'u kurmaya hazırız. Ana menüye dönün.
  • Bilgisayarınızdan yüklemeyi gerçekleştirmek için mobil cihazınızdaki menüde önce “Apply Update”, ardından “Apply from ADB” seçeneklerini seçin. Sonra bilgisayarınızdan adb sideload indirdiğiniz_LineageOS_kurulumu.zip komutuyla kurulumu gerçekleştirin.

alt-text

Cihazınızı yeniden başlattığınızda LineageOS işletim sisteminin açılış ekranını görüyorsanız kurulum tamamlanmış demektir.

alt-text

Bu döküman büyük ölçüde buradaki resmi rehberi takip etmektedir.

GrapheneOS Kurulumu

GrapheneOS güvenlik odaklı bir Android projesi. Proje Google Pixel cihazların donanımsal özellikleri ile birlikte güvenlik özelliklerinin varsayılan olarak geldiği bir dağıtım sağlamakta.

GrapheneOS'in kurulumu proje tarafından hazırlanan rehber ve betik sayesinde fazlasıyla kolay. Bu rehber Grapheneos'in web sitesindeki kurulum rehberinden çeviridir. Keza proje kısıtlı sayıda cihazda çalıştığından kurulum fazlasıyla belgelenmiş ve iyileştirilmiş durumda. Kimi değişiklikler ise kolaylık ve anlaşılırlık amacı ile eklenmiştir rehbere.

Kurulum

Bu rehber GrapheneOS'in resmen desteklenen cihazlarına ilişkindir. Hem projenin hem de özel kurulumlar için kullanılabilir.

Gereksinimler

En az 2GB boş hafızaya sahip olmalısınız.

Windows 10, macOS Catalina, Arch Linux, Debian buster ve Ubuntu 20.04 LTS GraphenOS'in kurulumu için desteklenen işletim sistemleridir. Bu işletim sistemlerinden birinin güncel haline kuruluma devam etmeden önce sahip olmalısınız. Eski sürümler ve diğer GNU/Linux dağıtımları genellikle çalışmakla birlikte bir sorunla karşılaşmanız durumunda desteklenen işletim sistemlerinden birini denemeniz önerilir.

Desteklenen cihazlardan birine sahip olmanız gerekli. Cihazınızın kilidinin açılıp GrapheneOS kurulabilmesini garanti etmek için operatörlerin sattığı cihazlardan uzak durmanız önerilir. Operatörler tarafından satılan cihazlar aynı işletim sistemi ve firmware'i içermekle birlikte cihazda operatöre özel ayarların açılabilmesi için bir ID ile birlikte gelmekte. Bu ayarlar bootloader'in kilidinin açılmasını engellemekte. Operatörler bunu devreden çıkarabilecek olsalar da destek ekibinin bunu bilmeme ihtimali yüksek ve olsa bile bunu yapmayabilirler. Operatörlerden bağımsız bir cihaz edinerek bu tehlikeden ve potansiyel dertlerden uzak kalabilirsiniz. Eğer operatör cihazının kilidini açabilirseniz bu GrapheneOS için bir sorun teşkil etmeyecektir.

Cihazın standart işletim sistemini güncellemek ve buradaki önergeleri takip etmeden önce en güncel firmware'i çalıştırdığından emin olmakta fayda var. Bu şekilde olası sorunlara, eksik özelliklere ve eski sürümlerdeki diğer değişikliklerle karşılaşmanın önüne geçilebilir. Dilerseniz cihazınızı online olarak güncelleyebilir veya Pixel cihazlara has tam güncelleme paketini yükleyebilirsiniz.

Bu rehber komut satırı araçları kullanmakta. Windows'ta eski komut satırı yerine PowerShell kullanılmakta.

Fastboot kurulumu

Fastboot'un güncel bir kopyasını edinmeniz ve işletim sisteminizde PATH çevresel değişkenine ekli olmalıdır. fastboot --version komutunu çalıştırarak hangi sürüme sahip olduğunuzu görebilirsiniz. Sürümünüz en az 29.0.6. olmalıdır. Dağıtımınızın paket yöneticisini kurulum için kullanabilirsiniz lakin pek çok paket deposu fastboot'un geliştirici sürümünü bulundurmakta, standart versiyon platform-tools (adb, fastboot, etc) kendilerine göre düzenleyip güncel tutmamakta.

Dağıtım paketlerinin listesi:

  • Arch Linux: android-tools fastboot ve diğer gerekli araçları getirmekte ve adb gibi başka araçların kurulmasına ihtiyaç duymamakta. adroid-udev fastboot ve adb'nin yerel oturumda root yetkisi olmadan çalışabilmesini sağlayacak udev kuralları içermekte.
  • Debian: Gelen paketler hem çalışmamakta hem de eski sürümlerden oluşmakta, kurulumda kullanmayın (üstteki paragrafa bakın)
  • Ubuntu: Gelen paketler hem çalışmamakta hem de eski sürümlerden oluşmakta, kurulumda kullanmayın (üstteki paragrafa bakın)

platform-tools haricen kurulumu

Eğer işletim sisteminiz fastboot'un uygun bir sürümünü içermiyor ve repolarında bulundurmuyor ise platform-tools'un harici bir sürümünü Google'dan kurmayı değerlendirebilirsiniz. Eğer Android SDK kurulumunuz var ise veya geliştirme ile uğraşacaksanız platform-tools' paketlerini Android SDK paket yöneticisi ile kurabilir ve güncel tutabilirsiniz. Android SDK, haricen veya Android Studio aracılığı ile elde edilebilir.

Platform-tools'u indirmek doğrulamak ve çıkartmak için GNU/Linux işletim sisteminde:

curl -O https://dl.google.com/android/repository/platform-tools_r30.0.4-linux.zip

echo '5be24ed897c7e061ba800bfa7b9ebb4b0f8958cc062f4b2202701e02f2725891 platform-tools_r30.0.4-linux.zip' | sha256sum -c

Not: Yukarıda belirtilen sha256 değeri zaman içinde güncellenen paketler nedeni ile değişmiş olabilir. Bu değerin kolaylıkla bulunabildiği tek yer GrapheneOS kurulum sayfası olduğundan kurulumdan önce değişikliklere göz atmakta fayda var.

unzip platform-tools_r30.0.4-linux.zip

Daha sonra aracı işletim sisteminizin PATH yoluna eklemek ve her seferinde doğrudan yolunu göstermeden çalıştırmak için GNU/Linux'da aşağıdaki komutu kullanabilirsiniz:

export PATH="$PWD/platform-tools:$PATH"

Tercih ederseniz indirdiğiniz paketin dizinine gidip fastboot binary dosyasının bulunduğu dizinde uçbirimde başına ./ koyarak fastboot'u çalıştırmanız mümkün.

Kurulumun ardından fastboot --version komutunun çıktısı:

fastboot version 30.0.4-6686687
Installed as /home/username/downloads/platform-tools/fastboot

Bu açık olan uçbirime ait geçici bir PATH kaydı olmakla birlikte eğer yeni bir uç birim açarsanız tekrar yukarıdaki şekilde kaydedilmesi gerekir. Kurulum betiğini çalıştırmadan önce fastboot komutunun kullandığınız uçbirimde çalıştığından emin olun.

Signify'ın kurulması

HTTPS'nin sunabildiğinin güvencenin ötesinde indirilen işletim sisteminin doğrulanabilmesi için signify aracını kullanabilirsiniz. Eğer signify paketini güvendiğiniz bir paket yöneticisinden elde edemiyorsanız signify kullanmanın çok da bir anlamı bulunmamakta. GrapheneOS sürümleri kendi sunucumuzda bulundurulmakta ve üçüncü taraflarca sunulan mirror'ları kullanmamaktayız. Kötücül bir signify kurulumu tüm işletim sisteminizi ve GrapheneOS imajınızı da geleneksel işletim sistemlerindeki tehdit yönetimi eksikliğinden dolayı tehlikeye atabilir. Bu durumda signify kullanmak hiç kullanmamaktan daha kötü olabilir. Sunucularımızın kötücül davranması rastgele birinin GitHub hesabının veya GitHub'ın kendisinin kötücül olmasından daha düşük bir ihtimal. Her halukarda bu rehbere kurulum için güvenmektesiniz ki yayınlanan sürümlerle bu web sitesi aynı sunucu üzerinde bulunmakta.

Not: Yukarıdaki not hali ile GrapheneOS'in sitesi için geçerli durumda. Şu anda üçüncü bir tarafın rehberini okumakta olduğunuzdan şüphe duyduğunuz durumlarda yukarıdaki tehdit modeline bağlı olarak GrapheneOS web sitesini referans almanız önerilir.

Dağıtımlarda bulunan Signify paket listesi:

Arch Linux: signify
Debian: signify-openbsd
Ubuntu:signify-openbsd

OEM kilidinin kaldırılma ayarı

OEM kilidinin kaldırılması için işletim sistemi içinden izin verilmesi gerekli.

Geliştirici ayarlarını Ayarlar menüsünden -> About phone (telefon hakkında) sekmesi altında bulunan "build number" bölümüne geliştirici modunun aktive edildiğine dair mesaj gelinceye kadar tıklayarak açabilirsiniz.

Daha sonra Settings(ayarlar) -> System(sistem) -> Advenced(gelişmiş) -> Developer Options(geliştirici seçenekleri) yolunu takip edip "Enable OEM unlocking"(OEM kilidini kaldır) sçeeneğini seçebilirsiniz. Bu Google Play hizmetleri ile gelen cihazlarda hırsızlığa karşı fabrika ayarlarına geri döndürme koruması kapsamında internet bağlantısı gerektirecektir.

Bootloader'in kilidini kaldırmak

Öncelikle cihazın bootloader ekranına girmeniz gerekli. Bunu cihazı kapatıp ardından ses kısma düğmesini ile güç düğmesine aynı anda basıp tutarak gerçekleştirebilirsiniz.

Bootloader kilidini işletim sistemi ve firmware yüklemek için kaldırın:

fastboot flashing unlock

Not: Bu komutu telefonu bağladığınız bilgisayar üzerinden fastboot'un çalıştığı uçbirimden çalıştırmanız gerekiyor.

Komutun telefon üzerinden onaylanması gerekli. Onayın ardından cihazdan tüm verinin silinecektir.

Fabrika imajının indirilmesi

Kurulum işlemini tamamlayabilmek için cihazınıza uygun GrapheneOS fabrika imajına ihtiyacınız olacak.

Dilerseniz dosyaları web tarayıcınız ile doğrudan indirebilir veya curl benzeri bir komut kullanabilirsiniz. Genellikle komut satırı kullanmak hali hazırda kurulumun kalanında kullanacak olduğunuzu düşünürsek daha kolaydır. Curl ile işlemi gerçekleştirmek için talimatlar aşağıda bulunmakta.

Fabrika imajları doğrulamak için gerekli olan umumi anahtarın (factory.pub) indirmek için:

curl -O https://releases.grapheneos.org/factory.pub

factory.pub'un içeriği şu şekildedir:

untrusted comment: GrapheneOS factory images public key
RWQZW9NItOuQYJ86EooQBxScfclrWiieJtAO9GpnfEjKbCO/3FriLGX3

Umumi anahtar aynı zamanda Twitter'deki resmi @GrapheneOS hesabında, /u/GrapheneOS Reddit hesabında ve GitHub'da bulunabilir. Kullanımda olan anahtar bir yenisi ile değiştirildiğinde eskisi ile imzalanmakta.

Fabrika imajlarını indirme sayfasından indirmek için; örneğin Pixel 3 XL için 2020.05.05.02 (crosshatch) sürümünü indirmek için:

curl -O https://releases.grapheneos.org/crosshatch-factory-2020.05.05.02.zip
curl -O https://releases.grapheneos.org/crosshatch-factory-2020.05.05.02.zip.sig

Signify yazılımını güvenli şekilde edinebildiyseniz imzaları aşağıdaki komut ile doğrulayabilirsiniz:

signify -Cqp factory.pub -x crosshatch-factory-2020.05.05.02.zip.sig && echo verified

Not: Her ne kadar komut signify olarak komutu çağırmış olsa da komutun Debian ve Ubuntu'da signify-openbsd olduğunu hatırlatmak gerkeli.

Bu komut eğer doğrulama başarılı ise "verified" çıktısı verecektir. Eğer bir şey yanlış giderse hata alacaksınız.

Fabrika imajının flashlanması

İlk kurulum fabrika imajının flashlanması ile gerçekleştirilmekte. Bu var olan işletim sistemini kaldırıp tüm yükli veriyi yok edecektir.

Kurulum işlemine başlamak için cihazda bootloader ekranına gidin.

Ardından fabrika imajlarını çıkartın.

GNU/Linux'da:

Not: Bu işlemi fabrika imajını indirdiğiniz dizinde yapmanız gerekli.

unzip crosshatch-factory-2020.05.05.02.zip

Çıkarttığınız dizine gidin:

cd crosshatch-factory-2020.05.05.02

İmajı dizindeki flash-all betiği ile kurun:

./flash-all.sh

Flash işleminin bitmesini bekleyin ve ardından cihazı kullanmadan önce bootloader'i tekrar kilitleyin keza kilitleme işlemi cihazdaki tüm verileri yok edecektir.

Bootloader'i kilitlemek

Bootloader'in kilitlenmesi boot aşamasındaki doğrulama için önemlidir. Bu aynı zamanda fastboot'un başka flashlamalar veya veri silmek için kullanılmasının da önüne geçer. Doğrulanmış boot cihaz işletim sistemine yapılan herhangi bir müdahaleyi (vbmeta, boot/dtbo, product, system, vendor) engelleyecektir ve değiştirilmiş/bozulmuş herhangi bir verinin okunmasına mani olacaktır. Eğer değişiklikler fark edilirse hata koruması veriyi orjinal haline getirmeye çalışır ve düzeltme sonrasında doğrulama gerçekleştirilebilir ki bu kötücül olmayan bozulmalara karşı son derece etkilidir.

Bootloader ekranında kilitleme için:

fastboot flashing lock

Komutun telefon üzerinden onaylanması gerekli. Onayın ardından cihazdan tüm verinin silinecektir.

Oem kilidinin kapatılması

OEm kilidinin kaldırılması için gereken ayar cihaz açıldıktan sonra tekrar geliştirici seçeneklerinden kapatılabilir.

Kurulumun doğrulanması

Auditor ve kullanımı ile ilgili bilgiyi GraphenOS'in rehberinden edinebilirsiniz

Mobil cihazlara ilişkin genel tedbirler

Mobil Cihaz Kullanımına İlişkin Genel Tedbirler

Cihazlarınızı yanınızdan ayırmayın

Cihazlarınızı fiziksel olarak yanınızda tutmak her zaman iyi bir fikirdir. Aksi takdirde bir saldırganın cihazınıza müdahale etmek, verilerinizi ele geçirmek ve gelecekteki etkinliklerinizi izlemek amacı ile kötücül yazılım yüklemesine fırsat doğabilir.

Cihazlarınızın zafiyeti tavsiye edilen donanımları kullanıp kullanmadığınıza, şifrelemenin etkinleştirilip etkinleştirilmediğine ve cihazınızı bir parola veya PIN ile koruyup korumadığınıza bağlıdır. Tüm bunlara rağmen bilinmeyen güvenlik açıkları çeşitli seviyedeki saldırılara cihazınızı açık kılabilir. Bu duruma karşı alınabilecek en iyi tedbir cihazlarınızı her halde göz önünden ayırmamaktır.

Temel olarak saldırı kaynağını aşağıdaki gibi sınıflamak mümkündür:

  • Yetkin saldırganlar Kilitli telefonlara girmekte uzmanlaşmış büyük devletleri ve uluslararası şirketleri kapsar.
  • Eğitimli saldırganlar Yerel kolluk kuvvetlerini ve telefon kıran adli tıp şirketlerini kapsar.
  • Olağan saldırganlar Özel donanım sahibi olmayan yetenekli teknoloji meraklılarını kapsar.

Cihazınızın kimin eline geçtiğine, sizin tedbirlerinize, süreye bağlı olarak riskiniz de değişir. Bu bakımdan olağan saldırganlar olarak tanımlayabileceğimiz özel bir eğitimi bulunmayan çevrenizdeki insanlar doğal olarak basit bir pin/parola tedbiri ile kontrol altına alınabilirken diğer saldırganlar için çabanızı ve tedbirlerinizi de arttırmanız gerekir.

Her zaman cihazlarınızı elinizde tutma imkanınız olmayabilir. Eğer cihazınızdan riskin yüksek olduğu bir koşulda, mesela bir uluslararası sınırı geçerken, uzak kalma ihtimaliniz var ise cihazınızı yedekleyip tüm verileri sıfırlamak gibi üst bir tedbire başvurabilirsiniz.

Ekran kilidinde PIN veya parola kullanın - biyometrik kullanmayın

Bilgisayarlarımızın aksine mobil cihazlarımız neredeyse sürekli açık kalırlar. Bu sebeple tüm diskiniz şifreli bile olsa açık bulunan cihazınıza her isteyen erişebiliyorsa muhtemelen pek de güvende sayılmazsınız. Ekran kilidinizi 4-6 haneli bir PIN olarak belirleyip kabaca 3 ayda bir Zarola yöntemi ile değiştirin veya bir parola belirleyip daha uzun aralıklarla değiştirin.

Parmak izi, yüz tanıma gibi biyometrik yetkilendirme sistemleri doğaları gereği güvensizdir. Her ne kadar şirketler bunların aşılamaz olduklarını iddia etseler de çoğu zaman bu tip sistemlere karşı etkili saldırılar yapılmıştır ve en başarılısı ebeveyninin parmağına uyuduğu sırada telefonunu dokundurup binlerce dolarlık oyun satın alan çocuğun zekasını aşamaz. Bu sebeple biyometrik giriş yöntemleri kullanacaksanız bunları ikinci aşama olarak değerlendirip mümkün ise hem PIN/parola hem biyometrik kullanın. Şayet biyometrik verileriniz bir şekilde bir gün çalınırsa yeni bir parmak veya yüz alamayacağınızı unutmayın.

Yüksek risk taşıdığınızı düşünüyorsanız, cihazınızı size açtıracak kişinin Avrupa İşkencenin Önlenmesi Komitesi'nin kararlarını umursamayacağını asla unutmayın.

Ekranınızı saklayın

En büyük ihlaller en küçük tedbirsizliklerden yaşanabilir. Muhtemelen yüksek bütçeli kırma girişimleri yakınlarımızın telefonlarımızı kurcalamasından daha az olası. Bu sebeple ekran parolanızı veya PIN'inizi girerken ve genel olarak cihazınızı kullanırken telefonunuzun ekranını omzunuzun üstünden bakacak kişilerden sakının. Buna kanıksadığınız güvenlik kameraları da dahildir. Paranoyakça gelebilir ama cihazınızı koruyan en önemli veriyi bu şekilde ortalığa saçmanız muhtemelen her şeyi riske atmanızla eşdeğerdir.

Kapkaça karşı tedbir alın

Her türlü tedbiri almış olabilirsiniz ama bir an vardır ki cihazınız olabildiğince korunaksızdır. Telefonunuzu kullandığınız an! Bu noktada hem cihazınız açık hem de ekran kilidi yok. Pratik olarak o anda telefonu elinde bulunduran herkes neredeyse her işlemi cihazınız ile yapabilir, bu bir şaka değil. Haliyle telefonunuzun elinizden kapılması durumunda tedbir almak için Privatelock kullanabilirsiniz.

Bildirimlerin kilit ekranında görülmesine izin vermeyin

Bankanızdan gelen 2FA kodları, sevdiklerinizden gelen yazışmalar, en güncel dedikodular ve hepsi açıkça cihazınızın kilit ekranında görünüyorsa mahremiyetiniz ile birlikte güvenliğiniz de olduğu gibi çöpe gidebilir. Ayarlarınızdan kilit ekranında görülecekleri sınırlayın.

Bilmediğiniz cihazlara bağlamayın

Bu öneri hem tanınmadık Wi-Fi ağlarını hem de artık her yerde bulunan USB şarj çıkışlarını kapsar. Cihazınızı bu bilinmeyen ortamlara maruz bırakmak sizi riske sokabilir. Ya kendi şarj cihazınızı kullanın ya da bu tip çıkışları kullanmak zorundaysanız USB kondom kullanın. Ayrıca yeni Android sürümlerinde "Şarj için USB" diye bir seçenek de vardır.

Kablosuz aygıtlarınızı kullanmıyorsanız kapatın

Wi-Fi ve Bluetooth gibi teknolojiler kablosuz olarak sizinle ilgili pek çok veriyi ortalığa saçabilirler. Bunların arasında en önemlisi cihazınızın kablosuz aygıtlarını tanımlayan MAC adresi gelir. Bu bilgi cihazınızla birlikte sizi de tanımlamakta ve takip edilmeniz için de elverişli bir araç olarak kullanılabilirler. Bu sebeple kullanmadığınız her zaman bu donanımları kapatın. Şayet cihazınız MAC adresi rastgeleleştirebiliyor ise bu imkanı kullanın.

Signal kullanın

Signal özgür bir anlık yazışma yazılımı olarak telefonunuzla gelen normal yazışmaya güvenli bir alternatif oluşturmaktadır. WhatsApp veya Telegram gibi çalışsa da çok daha güvenlidir.

Neden Signal kullanmalısınız?

  • GSM hizmet sağlayıcınız size gönderilen her mesajın bir kopyasını tutmaktadır. Signal ile GSM hizmet sağlayıcınız ne mesajlarınıza ne de iletişimde bulunduğunuz insanlara ulaşabilir.
  • Bir saldırgan için telefon numaranızı ele geçirmek görece kolaydır. Konuştuğunuz kişinin başına bu geldiğinde Signal, kişinin "güvenlik numarası'nın" değiştiğine dair bir uyarı verir. Bu aynı zamanda biri yeni telefon edindiğinde de gerçekleşir. Güvenlik numarasını doğrulamak aranızdaki yazışmaların kimse tarafından okunmadığını garanti eder.
  • Signal aynı zamanda güvenli ses iletişimi için de kullanılabilir. GSM hizmet sağlayıcınız kimi aradığınızı, kimin sizi aradığı ve aramaların uzunluğuna ilişkin kayıt tutar. Signal ile yaptığınız aramalarda GSM servis sağlayızınız bu bilgilere ulaşamaz. Cihazınız güvenli olduğu sürece aramalarınızın içeriği ve uzunluğu gizli kalacaktır.
  • WhatsApp, Telegram veya Wire gibi diğer "güvenli" olarak pazarlanan yazışma programları Signal ile kıyaslanınca çokça soruna sahiptir.

Daha fazla bilgi için, Security Planner / Signal'e bakın.

Silence kullanın

Silence, Android için geliştirilmiş bir SMS (kısa mesaj servisi) yazılımıdır. Silence'ı kurduktan sonra telefonunuzun standart SMS programı olarak atarsınız ve tüm SMS'leriniz Silence'e gelir. Normal koşullarda her SMS programı gibi SMS'leriniz gelir ve gider ama Silence kullanan kişilerle anahtar değişimi yaptıktan sonra tamamen uçtan uca şifreli SMS yazışması yapabilirsiniz.

Fotoğraf çekerken güvenlik

Telefonunuzun kamerası, çektiğiniz her fotoğrafa yüksek olasılıkla hassas çokça veriyi eklemektedir. İnternet'te paylaştığınız bir gönderinin nasıl kullanılacağını bilemeyeceğinizden, fotoğrafların taşıdığı kişisel veriyi paylaşmadan önce silmek iyi bir fikirdir.

Fotoğraflarınızda "geotagging" sorununu engellemek için, kamera ayarlarınızı açın ve konum bilgisini kaydetme ayarlarını kapatın.

Geotagging kapalı iken bile kamera yazılımınız cihazınızın modelini ve diğer potansiyel olarak hassas veriyi fotoğraflara kaydedecektir. Bu durumdan kurtulmanın en iyi yolu ayrı bir yazılımla EXIF verisini fotoğraf dosyalarından silmektir. Bu yazılımlar aynı zamanda konum bilgisini de çektiğiniz geçmiş fotoğraflardan silmek için de kullanılabilir.

Daha fazla bilgi için: Fotoğraflardan EXIF üstverisini silmenin 3 yolu.

Harici Bellekleri Şifrelemek

Harici bellekler ortaya çıktıkları ilk günlerden itibaren giderek hayatımızda daha fazla yer edindiler. Öncelikle görece taşınabilir sabit sürücülerden başlayan taşınabilir kayıt ortamları, NAND hafıza aygıtlarının yani bugün usb bellek olarak bilinen donanımların yaygınlaşması ile veri taşımanın en pratik yöntemi haline geldiler.

Hem fiyatların azalması hem de kapasitenin geometrik artışı usb bellekleri ve usb harici harddiskleri çok cazip araçlar haline getirmekte. Lakin pek çok önemli verinin taşındığı, saklandığı bu donanımların hayatımıza getirdiği en büyük tehlike yine bu kadar tutulmaları ile aynı olan taşınabilirlikleri. USB hafıza aygıtları; kolaylıkla unutulabilmekte, çalınabilmekte ve gerekirse bir saldırgan tarafından rahatça kurcalanabilmekte. Bu sebepten taşınabilir veri depolama aygıtlarının da şifrelenerek güvenli kılınması gerekli.

Planlama

Öncelikle usb belleğiniz ile ne yapmak istediğinizi belirlemeniz gerekli. Keza şifrelenmiş verilere belirli işletim sistemlerinde erişmeniz tercih edeceğiniz yönteme göre mümkün olmayabilir. Bu bakımdan cihazınızın dosya sistemini şekillendirmeden önce küçük bir planlama ileride sorun yaşamanızı engelleyecektir.

  • Şayet cihazınız ile güvenlik bakımından endişe duymadığınzı film, müzik gibi veriler taşımak niyetiniz var ve bu bölüme kötücül niyetle bir dosya koyulmasından endişe etmiyorsanız belki cihazınızı hiç şifrelememeniz daha kolay bir seçenek olabilir.

  • Şayet bir cihazda hem şifreli hem şifresiz veri taşımak istiyorsanız cihazın kurulumundan önce bunu sağlayacak seçenekleri değerlendirmelisiniz.

  • Şayet cihazın tamamını şifrelemek ve her türlü erişime engellemek niyetindeyseniz şifrelemeyi bütün alana uygulamak doğru tercih olacaktır.

Cihazın tamamını şifrelemek

Taşınabilir bellekleri şifrelemek için pek çok seçenek bulunmakta. Bu araçlardan hangisini seçeceğiniz; yazılımın özgürlüğüne, kullanım kolaylığına ve yaygınlığına, geçtiği güvenlik testlerine bağlıdır.

LUKS

Şifreleme araçları arasında pek azı LUKS kadar bir işletim sisteminde entegre ve sorunsuz çalışmaktadır. LUKS(Linux Unified Key Setup) her GNU/Linux işletim sistemi ile birleşik olarak gelen bir şifreleme aracıdır.

LUKS ile tüm bilgisayarınızın sabit sürücüsünü şifreleyebileceğiniz gibi harici depolama aygıtlarını da bilgisayarınızda kullanmak üzere şifreleyebilirsiniz. Bunun için hem grafik arayüz araçları hem de uçbirim araçlarını kullanabilirsiniz.

Gnome-Disks ile LUKS

Gnome-disk yazılımı bilgisayarınızda kurulu dağıtıma göre "Disks" veya "Diskler" adı altında bulunabilir. Her halukarda yazılımı başlatmak için bir uç birime aşağıdaki komutu yazabilirsiniz.

gnome-disk

Şayet sisteminizde kurulu değil ise aşağıdaki komutlarla gerekli paketleri kurabilirsiniz.

sudo apt-get install cryptsetup gnome-disk-utility

alt-text

Sol tarafta cihazınıza takılı olan depolama aygıtları listelenecektir. Bu listeden hangi cihazın şifrelemeye niyetlendiğiniz donanım olduğunu seçmelisiniz. Bunu donanım adının taktığınız cihazla aynı olmasından veya çıkardığınız zaman bu listeden eksilmesinden anlayabilirsiniz. Daha emin hareket etmek isterseniz bir uçbirimden aşağıdaki komutu çalıştırıp listeden gerekli bilgiyi alabilirsiniz.

lsblk

Uçbirim size aşağıdakine benzer bir tablo döndürecektir. /Boot, / swap ve benzeri bölümlerin bulunduğu cihaz sisteminizdeki hdd olacağından buna kesinlikle dokunmamanız önemli. Aşağıdaki tabloya göre sdb donanımı hem kapasitesi hem de ismi ile hedefimiz olan donanım olarak görünmekte.

sda                      8:0    0 223,6G  0 disk  
├─sda1                   8:1    0   512M  0 part  /boot/efi
├─sda2                   8:2    0     1K  0 part  
├─sda5                   8:5    0   731M  0 part  /boot
└─sda6                   8:6    0 222,4G  0 part  
  └─sda6_crypt         253:0    0 222,3G  0 crypt
    ├─vgxubuntu-root   253:1    0 221,4G  0 lvm   /
    └─vgxubuntu-swap_1 253:2    0   976M  0 lvm   [SWAP]
sdb                      8:16   1   7,3G  0 disk  
└─sdb1                   8:17   1   7,3G  0 part  

Şayet usb aygıtınızı daha önce kullandı iseniz, hem olası sistem arızalarını gidermek hem de aygıt üzerinde kalmış olabilecek verileri yok etmek adına cihazınızı formatlayıp/silmeniz gerekebilir. Bu işlem biraz vakit alacaktır.

**ÖNEMLİ NOT:**NAND hafıza içeren usb bellekler, SSD hafıza aygıtları bir ön işlemci içermekle birlikte silme emrine uymayabilmektedir. bu duruma karşı yapılabilecek en iyi silme yöntemi "0" yerine rastgele veri yazmaktır. Gerekli talimatlar için rehberin son bölümüne bakın.

Sağ üst köşeden menüyü açıp "diski biçimlendir" seçeneğini seçin.

alt-text

Karşınıza gelecek bölümden aşağıdaki ayarları seçip "biçimlendir" düğmesine basın.

alt-text

Gnome Disks size işlemi onaylamak isteyip istemediğinizi soracaktır. Bu noktada doğru aygıt ile işlem yaptığınızdan emin olun.

alt-text

Onayınız ardından anasayfaya dönülecek ve size bir ilerleme çubuğu gösterilecektir. Bu işlemin sonuçlanmasının ardından boş bir bellek elde edeceksiniz.

alt-text

Biçimlendirme işleminin bitmesinin ardından LUKS bölümünün kurulumuna geçilebilir. + simgeleri ile gösterilen düğmeyi tıkladıktan sonra bölüm oluşturma ekranı karşınıza gelecektir.

alt-text

Tüm alanı seçip "sonraki" düğmesi ile ilerleyin.

alt-text

Karşınıza gelen ekrandan yeni biriminize bir isim verip ekran görüntüsündeki gibi ayarları yaparak sonraki tuşu ile ilerleyin.

alt-text

Bu noktada Gnome Disks size parolanızı soracaktır. Bu parola doğrudan şifrelediğiniz verilerin güvenliği olduğundan kullandığınız parolanın güvenli olmasına özen göstermelisiniz. Yazılımın sunduğu güvenlik ölçer çok güvenilir değildir. Bir Zarola size güvenlik ve hatırlanabilirlik açısından en iyi sonucu verecektir.

"Oluştur" düğmesine tıklamanız ile Gnome Disks LUKS bölümünüz oluşturmaya başlayacaktır. İşlem bittiğinde anaekranda aşağıdaki görüntü ile karşılacaksınız. Bu noktadan sonra harici depolama aygıtınız kullanıma hazırdır!

alt-text

Şayet özellikle değiştirmedi iseniz GNU/Linux cihazınız bu belleği cihazınıza taktığınızda otomatik olarak LUKS bölümünü algılayacak ve açabilmek için size parola soracaktır. Parolayı girmeniz ile birlikte normal bir usb bellek gibi cihazınıza erişebilirsiniz.

Uçbirim ile LUKS

Gnome Disks kullanmak istemiyor veya kullanamıyor iseniz aynı işlemleri uçbirimden de yapmanız mümkündür. Bunun için aşağıdaki adımları takip edebilirsiniz.

Buraya katkı verebilirsiniz

Veracrypt ile Şifrelenmiş Dosya Konteyneri Oluşturma

Veracrypt, Truecrypt yazılımının devamı olan özgür bir şifreleme aracıdır. Truecrypt esrarlı ortadan kayboluşu ardından özgür bir yazılım olarak hayatına başlayan Veracrypt, tam disk şifreleme, dosya, dizin ve dosya sistemi şifrelemede ender olan bir özellik olarak inkar edilebilir şifreleme imkanı sunmakta.

Bununla birlikte, eğer Windows kullanıcısıysanız tam disk şifrelemek için mülk bir yazılım olan BitLocker yerine VeraCrypt kullanabilirsiniz. Tam disk şifreleme özelliği GNU/Linux ve macOS sistemlerde kullanılamamakta, ancak diğer özellikler tüm platformlarda rahatlıkla kullanılabilmektedir. İnkar edilebilir şifreleme özelliği ise kendi başına bir rehber gerektirmekte.

Bu rehberde VeraCrypt GUI ile Ubuntu 20.04 sistemde şifrelenmiş dosya oluşturma anlatılacak. Ancak hiçbir işletim sisteminde uygulayacağımız adımlar arasında bir fark yok. Bu adresten işletim sisteminize uygun olan dosyayı indirerek başlayabilirsiniz.

VeraCrypt Downloads sayfası

Sayfayı biraz aşağı kaydırarak diğer GNU/Linux dağıtımları için yer alan kurulum paketlerini görebilirsiniz. apt ve yum üzerinden çekilerek kurulan programlar bazen güncel sürüm olmadığı veya programların güncel sürümleri geç geldiği için güvenliğimizi riske atmamak adına en güncel sürümleri VeraCrypt'in web sitesinden takip edebiliriz. İndirme işlemini gerçekleştirdikten sonra kurulum paketinin bulunduğu dizinde Terminal açarak

sudo dpkg -i veracypt-1.24-Update7-Ubuntu-20.04-amd64.deb && sudo apt install -f

yazıp kurulumu gerçekleştirebilirsiniz. Eğer Terminal ekranına aşina değilseniz dosya yöneticiniz üzerinden, indirdiğiniz VeraCrypt paketine gelip çift tık yaparak Yazılım Kur programıyla kurulum işlemini gerçekleştirebilirsiniz.

Yazılım Kurulumu

Not: Lisans kısmında Sahipli/Proprietary yazmasının sebebi; TrueCrypt projesinin son sürümünün özgür olmayan bir açık kaynak lisansına sahip olması (TrueCrypt License 3.0) ve VeraCrypt ekibinin bu projenin üzerine geliştirme yapmasından kaynaklanıyor. Ancak VeraCrypt projesinin kaynak kodları; TrueCrypt License 3.0 ve özgür yazılım lisanslarından biri olan Apache License v2.0 ile karma lisanslanmıştır.

Kurulumun ardından programı başlattığınızda karşınıza şu ekran çıkacak:

Açılış Ekranı

İlk defa bir şifreleme yapacağımız için Create Volume butonuna tıklıyoruz. Ardından çıkan ekranda şifrelenmiş bir dosya konteyneri oluşturacağımız için Create an encrypted file container seçeneğini işaretliyoruz.

Şifrelenmiş Dosya Konteyneri Oluşturma

Sonraki ekrana geçtiğimizde Volume Type ekranında Standard VeraCrypt volume seçeneğini işaretliyoruz. Hidden VeraCrypt Volume için katkı verebilirsiniz.

Standart VeraCrypt Alanı

Ardından, şifrelenmiş konteyner oluşturmak istediğimiz dosyanın bulunduğu dizine gelmeniz gerekiyor. Sadece bu işlem için oluşturduğunuz veya gözden çıkardığınız herhangi bir dosya seçmelisiniz (.jpg, .deb, .png veya Terminal üzerinden touch ile oluşturduğunuz bir dosya olabilir). Bu kısımda; önceden indirmiş olduğum, Resimler dizinindeki gnu_love.png dosyasını kullandım. Dosyanın boyutunun şu an bir önemi yok. Daha sonra biçimlendirmeden önce boyutunu belirleyeceğiz. Bu dosyanın tek amacı, VeraCrypt aracılığıyla parola ve anahtar dosya (keyfile) kullandığınızda sisteminize USB gibi bağlanarak oluşturduğunuz dosya ve dizinleri bu alana aktarmaktır.

Seçmemiz Gereken Dosya 1

Seçmemiz Gereken Dosya 2

Kaydet/Save butonuna bastıktan sonra karşınıza şöyle bir ekran gelecek, Yerine Koy/Replace'e basıp devam edebilirsiniz, artık .png sadece uzantı isminden ibaret:

"Yerine Koy" uyarısı

Seçmemiz Gereken Dosya 3

Sonraki adımda şifrelemek için kullanmak istediğimiz algoritma ve özüt algoritma (Hash Algorithm) soruluyor. Bu adımda kullanmak istediğiniz şifreleme algoritmasıyla ilgili kısa bilgiler de görebilirsiniz. AES ve SHA-512 ihtiyaçlarımızı karşılamak için şu anda yeterli.

Şifreleme Metotlarını Belirleme

Sonrasında ihtiyaç duyduğumuz alan miktarını belirliyoruz. Sistem faaliyetlerini zora sokmayacak ve gerek duyulduğunda başka bir cihaza veya ortama daha rahat aktarabileceğimiz bir alan miktarı belirleyebiliriz. Cihazda 37.5 GiB (Gigabyte) boş alan varmış. Örnek amaçlı 5 MiB (Megabyte) bir alan ayırıyorum. Ancak sayı girdiğiniz bölgenin yanındaki butondan ihtiyacınıza göre MiB veya GiB seçebilirsiniz.

Alan Boyutu Belirleme

İhtiyaç duyduğumuz alan miktarını belirledikten sonra artık bu dosyayı kullanabilmek için parola belirlemeniz lazım. Kolay hatırlanabilir ve entropi değeri yüksek bir parola oluşturmak için Zarola/Diceware kullanabilirsiniz. Daha fazla güvenlik sağlamak isterseniz PIM ve keyfile/anahtardosya da belirleyebilirsiniz.

Parola Belirleme

Ve biçimlendirme adımına geçebiliriz. İhtiyaçlarınıza göre veya başka cihazlarda da kullanabilmeniz için biçimlendirme seçeneklerinden birini seçmelisiniz. Bu dosyayı GNU/Linux sistemlerde kullanmayı planladığım ve öncesinde az bir alan belirlediğim için FAT biçimlendirme metodu benim için en uygun seçenek olarak görünüyor. Ayrıca sizde Quick Format/Hızlı Biçimlendirme seçeneği açık görünüyorsa bunu seçmemeniz tavsiye edilir. Çünkü bu seçenek belirlediğimiz alanın tamamının şifrelenmesinin önüne geçiyor.

Biçimlendirme Metodu

Bu adımda artık biçimlendirmeden önceki son hazırlığımızı yapıyoruz. İmleci VeraCrypt penceresinin üzerinde rastgele yerlere götürerek mor renkli barı doldurmaya çalışmalıyız. Bu eylemin amacı ise - açıklamada da belirtildiği üzere - şifreleme anahtarlarının kriptografik gücünü artırmak.

Entropi Artırma

Bar dolduktan sonra, ilk aşamalarda seçmiş olduğumuz dosyanın (benim seçtiğim gnu_love.png dosyası) gerçekten başka bir şey için kullanmadığınızdan son kez emin olmanız lazım. Bunun için karşınıza son bir uyarı çıkacak. Artık her şeyin doğruluğundan eminseniz çıkan uyarıda Evet/Yes seçeneğine tıklayarak VeraCrypt alanınızı oluşturabilirsiniz.

Son Uyarı

Alan Oluşturma Başarılı 1

Başka bir işlem yapmak isteyip istemediğinizi soran son bir ekranın ardından artık bu pencereyi kapatabiliriz.

Alan Oluşturma Başarılı

Oluşturduğumuz dosyayı artık VeraCrypt aracılığıyla sistemimize bağlayabiliriz. Bunun için herhangi bir slotu seçili bırakıp Select File ile biçimlendirmiş olduğumuz dosyayı bulup seçmemiz gerekiyor. Ardından Mount ile sistemimize bağlayabiliriz.

Slot Seçme ve Konteyneri Sisteme Bağlama

Karşımıza çıkan ekranda parolamızı girip onayladıktan sonra (belirlediğimiz alanın büyüklüğüne ve seçtiğimiz şifreleme algoritmalarının yeteneklerine göre) bir süre bekliyoruz.

Konteyner Parolası

Ve artık sistemimize bağlanmış bir yeni dizin var.

Konteyner Bağlama Başarılı

Slotun üstüne çift tıklayıp veya dosya yöneticisinde Diğer Konumlar sekmesi üzerinden VeraCrypt tarafından bize atanan dizine (/media/veracrypt1) ulaşabiliriz. Artık korumak istediğimiz verileri ve dosyaları buraya taşıyabiliriz. Önceden hazırlamış olduğum gizlibilgi isimli metin dosyasını bu dizinin içine taşıyorum. Taşıdıktan sonra VeraCrypt üzerinden Unmount yapıyorum ve artık sistemde (/media/veracrypt1 dizininde) herhangi bir bağlı dizin görünmeyecektir.

VeraCrypt Üzerinden Erişim

"Diğer Konumlar" Üzerinden Erişim

UYARI: Erişim için kullandığınız dosya, artık sizin şifrelenmiş VeraCrypt dosya konteyneri alanınız. Bu yüzden, bu dosyanın silinmesi veya bozulması durumlarında kaydettiğiniz bilgileri hiçbir şekilde geri elde edemeyebilirsiniz.

Oluşturduğumuz alanı tekrar VeraCrypt üzerinden sisteme bağladığımızda karşımıza yine aynı dizin ve dosyalar çıkacaktır. Tekrar gizlibilgi metin dosyasına baktığımda karşılaştığım şey, taşımadan önce oluşturduğum şeklinden farksız.

Final

Artık oluşturduğunuz alanda istediğiniz gibi değişiklik yapabilir, erişim için kullandığınız dosyayı harici belleklere aktarabilir veya yedekleyebilirsiniz.

Buraya katkı verebilirsiniz

Cihazın bir bölümünü şifrelemek

USB belleğinizin tamamını şifrelemek çoğu zaman bu belleğe güvenli şekilde sadece kendi cihazlarınızdan erişebileceğiniz anlamına gelmekte. Şayet belleğinizi başka amaçlarla da kullanmak istiyorsanız bir tercihiniz cihazınızı kısmen şifreleyip bir kısmını erişilebilir tutmaktan geçebilir.

LUKS ile kısmi şifreleme

USB belleğinizi iki ayrı bölüme ayırarak bir kısmını LUKS ile şifreleyip bir kısmını açık bırakmak mümkündür. Bu belleğinizin bir kısmını olağan dosya aktarımları için kullanılabilir kılarken aynı aygıtı güvenli şekilde veri bulundurmak için de kullanabileceğiniz anlamına gelir.

**NOT:**Şifresiz bölümün birinci bölümde olması gereklidir. Aksi halde Microsoft Windows cihazlar aygıtı tanımayacaktır.

Tüm belleğin LUKS ile şifrelendiği şekilde cihazınızı biçimlendirdikten sonra. Bölüm oluşturma aşamasında, LUKS bölümü oluşturmadan önce cihazı iki bölüme bölmek gereklidir. Bunun için biçimsiz sürücüde bölüm oluşturmak için + simgesine basıp bölümlendirme menüsüne gelin.

Şifresiz önbölüm için tercih ettiğiniz miktarı belirleyip "ileri" tıklayın.

alt-text

Karşınıza gelen bölümden, şayet tüm cihazlarla uyumluluk istiyorsanız FAT, 4GB ve daha büyük dosyalar depolayacaksanız NTFS seçin.

alt-text

İşlemin tamamlanması sonunda önbölüm ve biçimlendirilmemiş "boş alan" olan iki bölüm oluşacaktır.

alt-text

Boş alanı seçip + simgesine basın ve bölüm oluşturma ekranına gelin.

alt-text

Tüm alanı seçip "sonraki" düğmesi ile ilerleyin.

alt-text

Karşınıza gelen ekrandan yeni biriminize bir isim verip ekran görüntüsündeki gibi ayarları yaparak sonraki tuşu ile ilerleyin.

alt-text

Bu noktada Gnome Disks size parolanızı soracaktır. Bu parola doğrudan şifrelediğiniz verilerin güvenliği olduğundan kullandığınız parolanın güvenli olmasına özen göstermelisiniz. Yazılımın sunduğu güvenlik ölçer çok güvenilir değildir. Bir Zarola size güvenlik ve hatırlanabilirlik açısından en iyi sonucu verecektir.

alt-text

"Oluştur" düğmesine tıklamanız ile Gnome Disks LUKS bölümünüz oluşturmaya başlayacaktır. İşlem bittiğinde anaekranda aşağıdaki görüntü ile karşılacaksınız. Bu noktadan sonra harici depolama aygıtınız kullanıma hazırdır!

alt-text

Şayet özellikle değiştirmedi iseniz GNU/Linux cihazınız bu belleği cihazınıza taktığınızda otomatik olarak LUKS bölümünü algılayacak ve açabilmek için size parola soracaktır. Parolayı girmeniz ile birlikte normal bir usb bellek gibi cihazınıza erişebilirsiniz.

Sirikali ile dizin şifreleme

Sirikali GNU/Linux işletim sistemleri için yazılmış çeşitli dosya sistemi şifreleme imkanlarını bir arada sunan bir önyüzdür. Bu araç ile uçbirim karmaşasına girmeden cryfs, gocryptfs, encfs gibi araçları kullanmak mümkün. Sirikali ve tüm şifreleme araçlarını kurmak için aşağıdaki komutu bir uçbirimde çalıştırabilirsiniz.

Debian tabanlı işletim sistemlerinde:

sudo apt-get install sirikali encfs cryfs gocryptfs

RPM tabanlı işletim sistemlerinde (Fedora, Redhat, Centos):

sudo yum install sirikali encfs cryfs gocrypt

Kurulumun ardından Sirikali'yi çalıştırdığınızda aşağıdaki gibi basit bir ekran sizi karşılayacaktır.

alt-text

Şifreli bir dosya dizini oluşturmak için "Create Volume" düğmesine tıklayıp çıkan şifreleme araçlarından birini seçmelisiniz. Şifreleme araçları farklı özellikler sunmakla tercihinizi aşağıdaki bilgilere göre yapabilirsiniz:

  • CryFS: Görece yeni bir yazılım olmakla birlikte sunduğu özellikler bakımında önem arz ediyor. CryFS dizinde bulunan dosyaları sabit bloklar şeklinde şifrelemekte ve bu sayede dosya düzeni ve üstveriye ilişkin bilgi sızdırmamakta. Bu özellik nedeni ile diğer tercihlere göre daha yavaş çalışması söz konusu.

  • gocryptfs: CryFS'nin aksine dizin yapısını ve dosyaları koruyarak şifrelemekte. Bu sayede şifrelenne dizinin birebir bir kopyası oluşturulmakta. Aynı zamanda reverse(ters) mod sahibi olduğu için belirli dizinlerin yedeklenmesinde faydalı olmakta. gocryptfs dosyaların boyutları, oluşturulma zamanları ve dizin hiyerarşisi hakkında üstveriyi korumamakta.

  • Encfs: Köklü bir geçmişi olmasına rağmen 2014'te fark edilen açıklarından dolayı kullanılması artık önerilmemekte.

Kullanmak istediğiniz yazılımı seçtikten sonra karşınıza gelen ekranda; şifreli dizinizin ismini, bulunmasını istediğiniz dizini (bu kapsamda usb belleğiniz), yetkilendirmek için kullanacağınız yöntemi (key: parola için) ve parolanızı belirledikten sonra "create" düğmesine basarak dizininizi oluşturabilirsiniz.

alt-text

alt-text

Bir süre sonra SiriKali ana ekranında aşağıdaki şekilde oluşturulmuş dizininizi ve şu anda yüklendiği alanı göreceksiniz.

alt-text

Bağlanan bölümü çıkarmak için satıda sağ tıklayıp "unmount" seçeneğini seçin. Listeden bölümünüz eksilecektir.

SiriKali otomatik olarak ev dizininizin altında. SiriKali isminde bir noktaya yeni bölümünüzü bağlamaktadır. Bu standart noktayı ayarlardan değiştirebilir veya bağlama sırasında başka bir dizin seçebilirsiniz.

USB belleğinizde kurulum sırasında verdiğiniz isimle yeni bir dizin oluştuğunu ve içinde saçma sapan dosyalar bulunduğunu görebilirsiniz. Bu sizin şifreli dosyalarınızın bulunduğu dizindir ve dosyalarınıza erişebilmek için SiriKali'ye bu dizini göstermeniz gerekecektir. Ana ekrandan "mount volume" seçeneğini seçerek işleme başlayın.

alt-text

Karşınıza çıkan ekrandan "mount path" bölümüne şifresi çözülecek dosyalarınızın nerede görünmesini istediğinizi belirtin ve parolanızı girerek "open" düğmesi ile bölümü açın.

alt-text

SiriKali'nin kriptografik işlemi yapması bir süre alabilir.

alt-text

İşlemin bitmesi ile bağlanan dizini açarak karşınıza çıkaracaktır. İşiniz bittiğinde bölümü Sirikali'den çıkarak verilerinizi tekrar şifreli alanın güvenliğine alabilirsiniz.

İşletim sistemi uyumluluğu

Şifreleme araçları, özellikle özgür ve güvenilir olanlar, ne yazık ki haklı olarak GNU/Linux işletim sistemlerinde bulunmakta ve sadece LUKS gibi çok ender yazılımlar her dağıtımda standart olarak gelmekte. Bu sebepten neredeyse her şifreleme yazılımının bir şekilde kullanılan bilgisayarlara haricen kurulması gerekmekte.

Buna istisna olarak Veracrypt ve Cryptomator verilebilecekse de çoğu zaman bu yazılımların bir mobil versiyonu usb bellek üzerinde bulundurulmak ve takılan cihazda çalıştırılarak deşifre işleminin gerçekleştirilmesi gerekmekte. Bu hem takılan cihazın yetkisine bağlı olarak işe yaramayabilir hem de bir ikili(binary) dosyayı USB bellekte sağdan sola taşıyarak güvenlik sorunu yaratılmasına neden olur.

Aynı zamanda güvenilir olmayan cihazlarda hem parolanızı girmek hem de şifreli dosyalarınızı açmak onların güvenliğini ciddi oranda zedeleyecektir. Bu neden ile USB belleğinizde bulunan şifreli dosyalarınızı güvenmediğiniz cihazlarda açmanız önerilmez.

SSD'ye rastgele veri yazmak

Bir şifreli alan yaratmadan önce bellek üzerine rastgele veri yazmak iki açıdan faydalıdır.

  1. Cihazda eskiden kalmış olabilecek verileri imha etmek ve ileride inceleme ile ortaya çıkmasına engel olmak için sadece 0 yazmaktan çok daha etkilidir.

  2. LUKS gibi tüm diski kaplayan şifreleme araçlarında şifreli alanın nerede başlayıp nerede bittiğini saklayarak olası bir saldırganın işini zorlaştırır.

Bu işlemi gerçekleştirmek için ne yazık ki uçbirim kullanmanız gerekmekte. Aşağıdaki komut ile uzun sürecek olsa da belleklerinize rastgele veri yazabilirsiniz.

ÖNEMLi NOT: Kullanılan aracın adı "dd" idir ve açılımı Disk Destroyer idir. Disk yokedicisi adındaki bir yazılımı kullanırken verilerinizi kalıcı olarak kaybedebileceğinizi öngörerek çok dikkatli davranmanız önerilir.

dd if=/dev/urandom of=/dev/(cihaz adı) bs=4096 status=progress

Sıkça Sorulan Sorular

  1. Bir marka çok güveli, üç harfli algoritmalı usb bellekler satıyor, bunlar güvenli mi?

Bu tip cihazlar her zaman cihaz üzerindeki bir donanıma bağlı olarak şifreleme yaparlar. Bu kimi tehdit modelleri için yeterli olsa bile bilmediğiniz bir donanıma ve muhtemelen zayıf bir parolanın güvenliğine kalırsınız. Şayet şifreleme sizin için küçük bir önlem ise ve usb belleğinize koşulsuz şartsız her cihazda ulaşmak istiyorsanız bu yolu kullanabilir çok önemli dosyalarınızı ayrıca şifreleyebilirsiniz.

  1. Parmak izi ile çalışan bellekler gördüm bunlara ne demeli?

Biyometrik veriler ile şifreleme güvenliği ne yazık ki kabul edilemez. Bu hem biyometrik verilerin düşük güvenlik seviyesinden kaynaklanır hem de bir saldırganın sizi kolaylıkla parmakiziniz için zorlaması veya kandırması mümkündür. Yukarıdaki önerimiz bu durum için de geçerlidir.

  1. Şifreleme USB belleğimi eskitir mi?

Hem evet hem hayır. Şifreli cihazın kurulumu sırasında silme, rastgele veri yazmak gibi işlemler özellikle SSD cihazlar üzerinde eskime yaratabilir. Bu işlemleri sıklıkla tekrar etmediğiniz sürece gözle görülebilir bir sorun yaşamamanız gerekir. Özellikle çağdaş kaliteli cihazların hatrı sayılır ilerlemesi ile belki de bunu hiç endişe olarak taşımamalısınız.

Optik Diskleri Şifrelemek

Optik diskler genellikle 8cm çapında lazer ile üzerine veri kaydedilen kayıt ortamlarıdır. Dünya tarihinde ilk yaygın kullanımı olan LaserDisk teknolojisinin format savaşlarını kaybetmesinin ardından Compact Disk veya kısa adı ile CD dünyadaki optik disk kullanımının gerçekten yaygınlaşmasına öncülük etmiştir. CD teknolojisini Digital Versatile Disk veya DVD izlemiş ve görsel sanat eserlerinin dağıtımında yaygınlık kazanmıştır.

Optik diskler üretildikleri tarihte bilgisayar kullanıcıları için sihirli sayılabilecek araçlardı. Yaygın olarak "disket" olarak bilinen Floppy Disk ile kıyaslanınca, bir CD-ROM neredeyse 500 kat kapasiteye sahiptir. Aynı zamanda optik disklerin 2000'lerin başlarında kullanıma giren flash belleklere nazaran çok daha ucuz olması uzun bir süre optik kayıt ortamlarının veri taşımanın ilk tercihi olmasına sebep olmuştur.

Bugün kimileri tarafından optik disklerin öldüğü iddia edilmekte ve genel olarak tüketiciye sunulan cihazlarda yer ve hafiflik endişeleri ile optik disk sürücüleri gözden çıkarılmakta ise de optik diskler günümüzde görece özel koşullarda tartışmasız avanajlar sunmaktadır. Bu özelliklerin kimileri sayısal güvenlik amacı ile eşsiz sayılabilir. Bu sebepten optik diskleri gözden çıkarmadan önce güvenlik adına kullanımlarının ve genel veri güvenliğinin optik diskler üzerinde nasıl sağlanabileceğinin gözönüne alınması gereklidir.

Optik disklerin güvenlik kullanımları

Optik diskler çoğu kayıt ortamı gibi fiziki ve sayısal kimi özellikler içermektedir. Bu özellikler günümüzün elektriksel kayıt sistemlerinden farklılıklar göstermekle özel durumlarda tercih edilebilir olmaktadır.

  • Optik diskler hafif ve incedir.

  • Optik diskler elektronik bir aksam içermediğinden çevresel ve mekanik etkilere dayanıklıdır.

  • Elektronik veya metal aksam içermediğinden x-ray veya manyetik dedektör gibi araçlarda daha az görünürlerdir.

  • Optik diskler gözden çıkarılabilecek kadar ucuzdur.

  • Optik diskler tekrar yazılabilir versiyonları hariç bir kere yazıldıktan sonra değiştirilemezler.

Yukarıda sayılan özelliklerden taşınan verinin güvenlik gereksinimlerine veya taşımanın gerektirdiği güvenlik koşullarına göre faydalanılabilir.

Optik disklerin saklama kullanımı

Optik disklerin mekanik parçalar içermemesi ve dış etmenlere olan dayanıklılığı çeşitli verilerin güvenli şekilde saklanması için değerli bir özellik oluşturmakta. Her ne kadar büyük kapasiteler sunmasa da önemli verilerin yedeklerinin oluşturulması ve bu yedeklerin güvenli konumlarda saklanmasına imkan sağlamaktadır. Bu bakımdan aşağıdaki örnek koşullarda optik diskler tecih konusu olabilir:

  • Kriptografik anahtar ve araçların yedeklerinin saklanması

  • Offline tutulması gereken hassas verilerin yedeklenmesi ve saklanması

Optik disklerin taşıma kullanımı

Optik disklerin en değerli kullanımlarından biri veri taşıma ihtiyacında ortaya çıkmaktadır. Optik disklerin ucuz olmaları ve ince yapıları sebebi ile gözden çıkarılabilir şekilde çeşitli aracılar veya riskli alanlardan taşınması mümkün olmaktadır.

  • Posta yolu ile anonim şekilde gönderilmeleri

  • Sınır güvenliği gibi riskli alanlardan fark ettirilmeden geçirilebilmeleri

  • El koyulması durumunda ekonomik bir endişeye yol açmaması

Optik disklerin teknik faydaları

Veri güvenliğinin operasyonel koşullarında bir verinin optik disk üzerinde tutulması veya işlenmesinin olası faydaları bulunmaktadır.

  • Optik diskler çok hızlı şekilde imha edilebilirler.

  • Optik diskler bir kere yazıldıktan sonra değiştirilemedikleri için üzerindeki verilerin bütünlüğünü korurlar.

  • Optik diskler kolayca depolanabilir ve fazla yer kaplamazlar. Hareketli parça içermediklerinden mekanik olarak görece dayanıklı sayılırlar.

Şifreli optik disk oluşturmak

Bir optik diskteki verileri şifrelemenin pek çok yolu bulunmakta. GPG kullanarak tüm dosyaları şifreleyip diske yazmak mümkün olduğu gibi uzak sunucudaki dosyaların şifrelendiği şekilde şifrelenen dizini olduğu gibi diske yazdımak da mümkün.

Bu rehber Luks ile bir optik diskin şifrelenmesini anlatacaktır. Bu yöntemin yukarıdaki seçeneklere göre birkaç faydası bulunmakta.

  • Tüm GNU/Linux sistemler Luks aygıtları otomatik olarak açabilmekte ve dosya sistemini gösterebilmekte. Bu sebepten diskin kullanımı çok kolaylaşmakta.

  • Crypfs ve GPG gibi ayrı bir yazılımın kullanımına gerek kalmadan deşifre işlemi yapılabilmekte.

  • Dosya dizinleri ve boyutları gibi üstverilerin ifşası engellenebilmekte.

Bu rehberi takip edebilmek için bir herhangi bir GNU/Linux dağıtımını kullanmanız, root erişimine ve bir disk yazıcıya sahip olmanız gerekmekte. Rehber DVD kapasitesini esas almakla birlikte boyutları dilediğiniz şekilde değiştirmeniz mümkündür.

Boş bir dosya yaratın

İçine verilerin yazılacağı boş bir dosyaya ihtiyaç duyulmakta. Bunu basitçe /dev/zero ile sıfır yazarak yaratabilecek olsak da şifreli verinin diskteki boşluk alanlardan ayırt edilememesi için aşağıdaki şekilde rastgele verilerden bir dosya oluşturun.

dd if=/dev/urandom of=disk.img bs=1M count=4400

Count değerini kullandığınız medyanın boyutuna göre ayarlayabilirsiniz. Yukarıdaki komut 4.4Gb boyutunda disk.img adlı bir dosya oluşturacaktır.

Luks dosyasını oluşturup dosyalarınızı ekleyin

Aşağıdaki komut sırası ile Luks imajını oluşturup dosyalarınızı yedekleyebilirsiniz. Dosyalarınızın konumunu ile belirtlen yere koymayı ihmal etmeyin.

sudo losetup /dev/loop1 disk.img && cryptsetup luksFormat /dev/loop1 && cryptsetup luksOpen /dev/loop1 yedekdisk && genisoimage -R -J -joliet-long -graft-points -V backup -o /dev/mapper/yedekdisk <yedeklenecek dizinin yolu>

Yukarıdaki çeşitli komutlar sıra ile çalışacak ve size sıra ile kullanmak istediğiniz parolayı iki kere soracak ve ardından gösterdiğiniz dizindeki dosyaları oluşturulan dosyaya şifreli olarak aktaracaktır.

Luks dosyasını kapatın

Dosyanın oluşturulması tamamlandıktan sonra aşağıdaki komut ile bilgisayarınızda bağlı bulunan aygıtları kaldırarak imaj dosyasının işleminin tamamlayın.

sudo cryptsetup luksClose /dev/mapper/yedekdisk && losetup -d /dev/loop1

disk.img dosyasını yazın

Tercihiniz olan bir yazdırma yazılımı ile disk.img dosyasını diskinize yazabilirsiniz. Yazma işleminin bitmesinin ardından diskinizi cihazınıza taktığınızda şayet otomatik başlatma ayarlı ise diskinizin parolası sorulacak ve doğru girmeniz durumunda dosya yöneticinizde disk içeriğini şifresiz olarak görebileceksiniz.

Uzak Sunucuda Dosya Şifreleme

Bulut yoktur, başkasının bilgisayarı vardır.

Bugün bulut olarak adlandırılan ama aslında kimi şirketlerin veri merkezlerinde bulundurdukları bilgisayarların depolama imkanları olan saklama hizmetleri temel bir mahremiyet ve güvenlik sorunu oluşturmakta.

Başkasının bilgisayarına verilerinizi gönderdiğinizde, taşıma sırasında şifreli olsalar da depolandıkları sabit sürücüde şifresiz şekilde kaydedilecektir. Bu bilgisayarın sahibi olan ile bu sistemlere yeterli yetki ile erişen herkesin de verilerinize dilerseler ulaşabilecekleri anlamına gelir.

Gerçek insanların bunu yaptıklarına dair bir verimiz olsa da mahremiyet zararlısı şirketlerin otomatize sistemler aracılığı ile tüm verilerinizi işlediği bilinen bir gerçek. Google yüklediğiniz dosyalar için sizden kullanım hakkı almakta, dosyalarınızı bilinen dosyalarların özgüt değerleri ile kıyaslayarak sansür uygulamakta.

Bu duruma en kolay çare başkalarının bilgisayarın kullanmamak olabilir. Bunun için evinizde veya güvendiğiniz bir yerde kendi sunucunuz üzerinde [Nextcloud]( çalıştırabilirsiniz. Lakin kimi kişiler için bu zahmetli, pahalı veya duruma göre imkansız olabilmekte. Bu durumda şifreleme yine yardımımıza yetişmekte.

Şayet gönderdiğiniz her veri, dosya sadece taşıma sırasında değil size ait bir anahtar ile şifrelenmiş olursa gönderdiğiniz sunucu tarafında bunların okunması neredeyse imkansız olur. Bu hala verinin silinmesi, şifresinin kırılmaya çalışılması veya rubber hose saldırılara engel olmayacak olsa da faydalı bir araç olarak gerektiği yerde değerlendirilebilir.

Planlama

Bu bölüme katkı verebilirsiniz

Bu bölüme katkı verebilirsiniz

SSH Erişiminde OTP Kullanımı

Nextcloud veya OpenVPN gibi hizmetleri kişisel kullanımınız için kendiniz barındırıyorsanız veya bir sebepten sunucu yönetimindeyseniz uzak sunucunuzun güvenliği tüm sisteminizin güvenliği anlamına gelmekte.

SSH güvenliği cihazınıza uzaktan sistem erişimine tek imkan olduğundan tüm güvenliğin de düğüm noktasını oluşturmakta. SSH kullanımına ilişkin genel tedbirleri aldıktan sonra yetkilendirme bakımından gereklilikleri bir adım daha ileri taşıyarak bir saldırganın sisteminize erişmek için sahip olması gereken kaynakları arttırabilirsiniz. Bu bakımdan SSH anahtarı ve parolanın yanında bir üçüncü faktör olarak OTP kullanmanız mümkün.

OTP gerekliliğini iki şekilde uygulamanız mümkün. Bu SSH kullanımınızı nasıl yönettiğinize bağlı olarak.

  1. SSH Anahtarı + parola --> PAM + OTP ile sudo/su yetkilendirmesi

  2. SSH Anahtarı + OTP

PAM + OTP ile sudo/su yetkilendirmesi için uzak sunucuda google-authenticator kurulumu yapıp dilediğiniz kullanıcıya PAM üzerinden OTP yetkilendirme zorunluluğu getirebilirsiniz. Yerel bir bilgisayardan farklı olmayan bu işlem için Google Authenticator ile PAM Rehberimizden yararlanabilirsiniz.

Buradaki ayarlarda hata yapmanız durumunda sunucuya erişiminizi kaybedebilirsiniz. Çok dikkatli olun

SSH girişinde OTP kullanımı

Bu rehberdeki kurulumu takip edebilmek için öncelikle uzak sunucunuzda SSH erişimine sahip olmanız gerekli. Bunun için SSH güvenliği rehberimizden yardım alabilirsiniz.

SSH ile sunucuya bağlandıktan sonra aşağıdaki komut ile gerekli paketleri kurun:

Debian: sudo apt-get install libpam-google-authenticator

RPM: sudo yum install libpam-google-authenticator

Google-authenticator'ü yapılandırmak için aşağıdaki komutu yetkilendirmede giriş yaptığınız kullanıcının hesabından çalıştırın:

google-authenticator

Ardından Karşınıza gelecek karekodu andOTP ile tarayıp kodu kullanılabilir hale getirin ve acil durum kodlarını güvenli şekilde saklamak üzere yazdırıp kaldırın.

alt-text

Kalan sorulara evet cevabını verip kurulumu tamamlayın.

SSH ayarlarının yapılması

SSH girişinde OTP yetkilendirmesi için öncelikle sshd pam modülüne gerekli ayarların girilmesi gerekli. Bunun için dilediğiz bir metin düzenleyci ile veya aşağıdaki şekilde nano ile ilgili dosyayı açın.

sudo nano /etc/pam.d/sshd

Ardından açılan dosyanın içinde aşağıdaki şekilde satırı düzenleyin:

# PAM configuration for the Secure Shell service

# Standard Un*x authentication.
@include common-auth

auth required pam_google_authenticator.so

Bunun ardından aşağıdaki komut ile sshd yapılandırmasına gerekli satırı ekleyin:

sudo echo ChallengeResponseAuthentication yes >> /etc/ssh/sshd_config

Son olarak ssh servisini aşağıdaki komut ile yeniden başlatın:

sudo service ssh restart

Yapılandırmanın test edilmesi

Yukarıdaki ayarlarda bir hata yapmış olmanız durumunda sunuya erişiminizi kaybedebilirsiniz

Bu sebepten ötürü hali hazırda açık olan ssh erişiminizi açık bırakarak bir başka uçbirimden sunucuya tekrar SSH bağlantısı kurarak OTP kurulumunuzun çalışıp çalışmadığını deneyebilirsiniz.

Yönlendirici Güvenliği

Evinizin köşesinde unuttuğunuz, telefon kablosuna bağlı ve sadece İnternet bağlantınız kesildiğinde hatırladığınız küçük siyah kutular güvenliğiniz için önemli bir rol üstlenmektedirler. Bu cihazlar sizi internet servis sağlayıcınıza, cihazlarınızı da bir yerel ağ altında birbirine bağlar.

Modem ile yönlendirici teknik olarak farklı şeylerdir. Modem (modulator demodulator kelimelerinin birleşimi) iki nokta arasında bağlantı kurularak veri aktarılmasını sağlayan bir cihazdır. Bir zamanların çevirmeli bağlantı için kullanılan 56k modemleri gibi ADSL ve VDSL teknolojileri de sizi internet servis sağlayıcınıza bağlar. Dünya'da kullanımı artık yok olmakta olsa da Türkiye hala fiberoptik altyapı eksikliği altında bu teknolojileri yaygın olarak kullanmaya devam etmektedir.

Yönlendirici (router) bir ağı alt ağlara bölmeye yarayan ve aralarındaki trafiği düzenleyen bir donanımdır. Özel olarak tasarlanmış minik bir bilgisayar olmakla birlikte cihazlarınıza kablosuz bağlantı sağlamak ve denetlemekle görevlidir.

Modem olarak satılan cihazlar aslında bir modem ve yönlendiricinin birleşiminden oluşur. Bu bakımdan modeminizin arkasına bir yönlendirici daha eklemenize engel olan bir şey olmadığı gibi modemi ayrı bir donanım olarak alıp bir yönlendiriciye bağlamanız da mümkündür.

Yönlendiricilerin İnternet bağlantınızda ve yerel ağınıza (cihazlarınızın birbirini görebildiği iç ağınız) hakim olması onları güvenliğinizin önemli bir parçası haline getirmekte. Yönlendiricinizin kontrolünde olan bir kişi aşağıdaki saldırılarla sınırlı olmamakla pek çok saldırıyı gerçekleştirebilir:

  • Yerel ağınıza bağlı olan cihazları takip edebilir kaydedebilir.

  • İnternet bağlantınızın gittiği yerleri ve şifresiz iletişimleri takip edebilir.

  • Sizi güvenliğinizi tehdit edecek şekilde sahte sitelere yönlendirebilir.

  • Ağınızdaki diğer cihazlara ulaşıp onların güvenliğini aşabilir.

  • Ağınızda bulunan depolama aygıtlarına erişebilir ve dosyalarınızı çalabilir.

Bu tehditler ve bunun gerçekleşme ihtimali düşük olasılıklar içermez. Dünya'da pek çok kere yönlendiriciler yüzünden risk altına girmiş kullanıcılar oldu. Bunun sebepleri arasında; yönlendirici üreticisinin kötü güvenlik uygulamaları, internet servis sağlayıcılarının dağıttığı yönlendiricilere güvensiz ve onaysız uzaktan erişim portları açması, güncellenmeyen veya güncellemesi artık olmayan cihazlardaki güvenlik açıkları sayılabilir.

Bu kadar önemli bir cihazın görece önemsiz görüntüsü nedeni ile ihmal ile karşılanması görece doğal karşılanabilir fakat çok basit tedbir ve değişikliklerle söz konusu cihazların güvenliği sağlanabilir.

Yönlendirici ve modem arayüz parolanızı değiştirin

Ağınızda bulunan her cihaz yönlendiricinizin ayarlarının yapıldığı arayüze bir web tarayıcısı aracılığı ile erişebilir. Bu durumda cihazınızın ayarlarının değiştirilmesi gibi istenmeyen sonuçlar ortaya çıkabilir. Pek çok yönlendirici standart "admin/admin" gibi parolalarla geldiklerinden bu ayarın kullanımın ilk anında değiştirilmesi gereklidir.

Yönlendiricilerde farklı olabilmekle birlikte çoğu yönlendirici 192.168.1.1 adresinden erişilebilir. Cihazınızdaki web tarayıcısına adresi girdiğinizde karşınıza giriş sayfası çıkacaktır. Buradan cihazınıza ait standart parola ile giriş yaptıktan sonra ayarlar içinden bu parolayı değiştirebilirsiniz.

Wifi parolalarınızı güvenli kılın

Wifi güvenliği neredeyse her köşede verilen bir tavsiye fakat pek çok insan için pratik gereklilikler altında ihmale uğramakta. Wifi ev ağınızı radyo dalgaları ile belki de yüzlerce metre uzaklara ulaştırmakta ve hiç göremediğiniz biri tarafından erişilebilmesine imkan verebilmekte.

Belki pek çok insan wifi güvenliğinin gerekliliğinin farkında ama misafirlerine güvenli bir parolayı aktarmanın zorluğuna katlanmamak için cep telefonu numaralarından "12345678" gibi bariz girdileri parola olarak kullanmakta.

Bu neden ile wifi parolalarınızı zarola veya rastgele 16-24 karakter uzunluğunda bir değer ile değiştirmeniz tavsiye edilir. Zarola ezberlemesi kolay olacağından misafirlerinizin veya ağa yeni eklemek istediğiniz cihazların kolaylıkla dahil edilmesine imkan verirken rastgele parola ise sıklıkla parola değiştirmenize imkan sağlayacaktır.

Kablosuz ağınızın kullandığı şifreleme algoritmasının da günümüz gerekliliklerine uygun olduğunu denetleyin. WEP artık güvenli sayılmayan ve aşılması çok kolay bir güvenlik tedbiri olarak kesinlikle tavsiye edilmemektedir. Bunun yerine modern WPA2 şifrelemeyi kullanmanız güvenli bir wifi ağı için gereklidir.

Ağınıza güvendiğiniz misafirler olsa bile bilinmeyen cihazları eklemeniz önerilmez. Bu bakımdan kimi yönlendiriciler yalıtılmış ve sadece İnternet bağlantısı sağlayan "misafir" ağları oluşturabilir. Cihazınız bu imkanı sağlıyor ise kullanmanız kesinlikle tavsiye edilir. Şayet parolanızı misafirlerinizle kolaylıkla paylaşmak isterseniz karekod yardımı ile cihazların kolayca tarayıp bağlantı sağlayabileceği karekodlar oluşturabilirsiniz.

Mümkün ise wifi kullanmayın

Wifi çok rahat bir kullanım sağlasa bile her halukarda cihazınızı erişiminiz olmayan dış dünyaya açarak bir saldırı imkanı doğurur. Tüm yazılımlar ve donanımlar gibi bilinmeyen güvenlik açıklarının var olduğu bir dünyada bu kimi zaman kabul edilemeyecek bir risk taşıyabilir.

Kablolu bağlantılar hem daha istikrarlı bağlantı sağlar hem de ağınız ile ilgili bilgilerin dışarıya radyo dalgaları ile sızmasını engeller. Bu neden ile şayet wifi ağına ihtiyacınız özellikle yok ise cihazlarınızı kablo ile bağlayıp wifi ağınızı tamamen kapatmanız faydalı olabilir. Bu aynı zamanda Google gibi mahremiyet düşmanı şirketlerin ağınızın konumunu kullanıp kaydetmesine de engel olacaktır.

Cihazlarınıza fiziki erişimi sınırlandırın

Tüm güvenliği kritik cihazlarınız gibi yönlendiricinizin de ortalık yerde durması uygun bir durum sayılmaz. Bu bakımdan cihazınızı gözden uzak mümkünse erişimi kolay olmayan bir alanda saklamanız önerilir. Bu cihazınıza doğrudan erişimi engelleyerek çeşitli müdahaleleri görece zor kılacağından güvenliğinize katkı sunacaktır.

Cihazınızı güncelleyin

Pek çok yönlendirici satın alındıkları tarihten itibaren üreticisi tarafından belirli süreler ile güncellemeler ile desteklenmektedir. Ne yazık ki görece ucuz ve önemsenmeyen ürünler olmakla hem üreticiler tarafından gerekli güvenlik güncellemeleri bir süre yapılmamakta ve kullanıcılar da gerekli güncellemeleri zamanında uygulamamakta. Bu tip açıklardan dolayı pek çok güvenlik açığı kablosuz bağlantı veya uzak erişim ile kullanıcılarının güvenliğini tehdit edebilmektedir.

Cihazınızın yönetim paneline girerek güncelleme seçeneklerine bakabilir veya üreticinin web sayfasından elinizdeki modelin sunulan en güncel yazılımına bakabilirsiniz. Şayet üreticiniz artık cihazınıza destek vermiyor ise özgür bir yazılım ile cihazınızı güncelleyebilir veya yeni bir modele geçerek destek alabilirsiniz.

Cihazınızı özgürleştirin

Her ne kadar yukarıdaki tavsiyeler genel olarak tüm yönlendiriciler için geçerli olsalar da üreticilerin pek de özen göstermedikleri ürünler olmakla son kullanıcı yönlendiricileri pek çok mülk yazılım içermekte ve potansiyel olarak incelenememiş güvenlik açıkları içerme ihtimali taşımakta. Bu duruma en iyi çözüm ise yazılım özgürlüğünden geçmekte. LibreCMC ve OpenWRT sayılması gereken en önemli projeler olmakla belirli donanımları güncel özgür sistemlerle güncelleyerek güvenliğinizi hatrısayılır miktarda arttırabilir ve cihazlarınızın kabiliyetini de geliştirebilirsiniz.

LibreCMC Kurulumu

Bu rehbere katkı verebilirsiniz.

OpenWRT Kurulumu

Bu rehbere katkı verebilirsiniz.

Yazışma Güvenliği

__Yazışma Güvenliği__Mesajların iletildiği hat üzerinde sunucu dahil kimsenin okuyamamasıdır. Bunun için gönderilecek mesajların cihazları terk etmeden şifrelenmesi gereklidir. ağ güvenliği ve cihaz güvenliği mesajların mahremiyetini ve güvenliğini bir noktaya kadar sağlasa da uçtan uca şifreleme aşağıdaki özellikleri iletişiminizin güvenliğine ekler:

  • Gizlilik: Mesajların şifrelenmesi, sadece gönderilmek istenen kişinin bu mesajları okuyabileceğinin garantisidir.
  • Doğrulama: Mesajların şifrelenmesi ve imzalanması yazışılan kişinin kimliğinden emin olmanın tek yoludur.

Şifreli yazışma yapmak bir miktar emek gerektirmektedir:

  • Bir cihaz sahibi olmalısınız: Mesaj şifrelemenin temeli, mesajlarınızın şifrelenmesi için bir başka kişiye güvenmemekte yatar. Bu sebeple tüm şifreleme işlemi sizin cihazınızda gerçekleştiğinden, bu işlemi yapmaya yeterli bir cihaz sahibi olmanız gereklidir.
  • Meşakatli öğrenme süreci: Şifreleme yazılımlarını doğru kullanabilmek için bir miktar deneyim gereklidir. Açık anahtar, özel anahtar, imzalama gibi kavramlara farkındalık sahibi olmanız süreci güvenli yürütebilmeniz için elzemdir.
  • Sınırlı kullanıcı sayısı: Ne yazık ki herkes şifreli yazışabileceğiniz kişiler bugünlerde görece yaz. Yazılımlardaki gelişme ve güvenlik endişeleri ile bu sayı giderek artsa bile çevrenizdeki insanlara konu hakkında bilgi verip yardım etmeniz gerekebilir.

Mesajlarınızın güvenliğinin cihazınızın güvenliğinden geçtiğini de unutmamalısınız. Dünyanın en ileri şifreleme teknolojileri şifrelemenin yapıldığı cihaz kadar güvenli olabilir. Bu sebepten cihaz güvenliği konusunda dikkat etmelisiniz.

Mesaj şifreleme hakkında

Bugün iletişim için kullanılan en yaygın şifreleme yöntemi açık anahtar şifrelemesi veya asimetrik şifrelemedir.

  • Özel anahtar: Şifreli iletişime taraf olacak herkes bir özel anahtar sahibidir. Bu anahtar isminden de anlaşılacağı üzere gizli kalmalıdır keza şifrelenmiş mesajların açılması ancak bu anahtarla mümkündür. Bu anahtar aynı zamanda kişilerin kimliklerini ve mesajlarının doğruluğunu kanıtlamak için yapacakları imzalama işlemini de sağlar.

  • Açık anahtar: Her özel anahtar bir açık anahtar içerir. Açık anahtar bir mesajın sadece şifrelenmesini sağlar fakat şifreyi çözemez. Açık anahtar ile şifrelenen bir veri ancak özel anahtar ile açılabilir. Bu tek yönlü ilişki sayesinde açık anahtar ile herkes özel anahtarın sahibine başkaca bir bilgiye gerek olmadan şifreleme yapabilir. Açık anahtar bu sebepten anahtar sunucularında, e-posta eklerinde yayınlanır.

Asimetrik şifreleme pek çok sistemde kullanılmakla en yaygın ve bilinen uygulaması GnuPG ile şifreli e-posta yazışmasıdır. GPG kendini kanıtlamış çok amaçlı bir yazılım olarak pek çok amaçla şifreleme yapmak için kullanılabilir.

GnuPG gibi yazılımlar kullanıcıların anahtarlarını yönetmesini gerektirse bile günümüzde pek çok yazılım bu gerekliliği ortadan kaldırmakta. Özellikle anlık yazışma yazılımları kullanıcılarına basit arayüzler aracılığı ile görece kolay şifreleme imkanları sunmaktadır. Arkaplanda çalışan kriptografi açık/özel anahtar ikilisine dayalı olsa da kullanıcıların bu anahtarlarla hiçbir ilgileri olmamaktadır. Bu durum kimi taraflarca güvenli yazışmayı kolaylaştırdığı için övülmekte kimileri tarafından ise kullanıcıları bilgiden yalıtarak özel sistemlere mahkum ettiği iddia edilmektedir.

Şifreli yazışmaya giriş yapmak için öneriler

Şifreleme teknolojileri çağdaş yaşamın en güvenli iletişim imkanlarını sağlayacak olsa da kimi zaman zorluklar ve anlaşılmazlıklar da getirebilmektedir. Şayet güvenliğinizi şifreleme teknolojileri ile sağlamaya hazırlanıyorsanız aşağıdaki önerilerimizi aklınızda tutmanızı dileriz:

  • Kendinizi adamaya hazır olun: Şifreleme teknolojileri, pek çok insan için hiç duyulmamış terimler ve becerileri de yanında getirmektedir. Şayet kullanıcısına kolaylık(!) sunan bir yazılım kullanmıyorsanız bu jargon ve becerileri de elde etmeniz gerekecektir. Hali ile okumaya ve öğrenmeye zaman ve emek ayırmaya hazır olmalısınız. Aynı zamanda edindiğiniz deneyimi çevrenizle paylaşıp başkaca insanların güvenlik süreçlerini kolaylaştırabilirsiniz.

  • Şifreli arkadaşlar edinin: Komik gelse de çoğu zaman şifreli iletişim yapmanın en zor tarafı konuşacak birini bulmaktır. Günümüzde şifreli iletişim teknolojileri yaygınlık kazansa da hala özür olmayan yazılımlar kullananlar çoğunlukta. Bu sebepten çevrenize yardım ederek sizinle ve başkaları ile güvenli yazışmalarını sağlamak zorunda kalabilirsiniz.

  • Hevesli insanlara takılın: Şifreleme ve güvenli iletişim konusunda zaman ve emek harcamış insanlar genel olarak deneyimlerini paylaşmak konusunda heveslidir. Şayet aklınıza takılan sorular var ise veya insanlara yardım etme isteği taşıyorsanız çevrenizde bu konuda çalışma yapmakta olan topluluk veya insanlarla temasa geçin. Size zevkle yardımcı olacaklardır.

Şifreli mesajlaşmanın sınırları

Şifreleme her ne kadar e-postalarınızın, mesajlarınızın içeriğini saklayabiliyor olsa da üstveri bu korumanın kapsamına girmez. Üstveri kimin kiminle yazıştığını, ne zaman yazıştığını ağ üzerindeki diğer kişilere açık edebilir. Bunu mektubunuzun üstüne adres yazmak zorunda olmanızla kıyaslayabilirsiniz. Bu sebepten şifrelemenin her soruna çözüm olmadığına dikkat etmelisiniz.

Kimin kiminle yazıştığının bilinmesinin neden önemli olduğunu merak edebilirsiniz. İnsanlar ve ilişkileri hakkında bilgi toplamak için her zaman mesajların içeriğine ulaşılması gerekmeyebilir. Bu bakımdan sadece kimin kiminle, ne sıklıkla yazıştığı hakkında toplanan veri herkesin sosyal çevresini ve kişilerin birbirine olan önemini ortaya koyacaktır. Buradan hareketleriniz, sosyal yaşantınızdaki değişiklikler gibi çokça önemli bilgi mesajlarınızın içeriği okunmadan dahi elde edilebilir. ABD istihbarat teşkilatının eski bir başkanı, insanları üstveriye bağlı olarak öldürdüklerine dair bir açıklama bile yapmıştır.

Bu bakımdan ilişkilerinizi gizli tutabilmek önemlidir. Bunun için size ve iletişiminizin mahremiyetine saygı gösteren hizmet sağlayıcılardan hizmet alabilir veya temel iletişim imkanlarınızı sağlayacak sunucuları kendiniz işletebilirsiniz. Rehberimizde konuya ilişkin pek çok yardımcı kaynak bulabilirsiniz.

Yazışma güvenliğine giriş yapın

GnuPG veya GPG Nedir?

GPG özgür bir kriptografik araçtır. GPG ile asimetrik ve simetrik araçları kullanarak şifreleme, imzalama, kimlik doğrulama ve güven ağı oluşturmak gibi işlemlerin yapılması mümkündür.

Günümüzde GPG GNU/Linux işletim sistemlerinin paket dağıtımlarının güvenliğini sağlamaktan, e-posta şifrelemeye ve yakın zamanın en önemli bilgilerinin ortaya çıkmasında kullanılmaktadır.

PGP'nin tarihi

Bugün özgür yazılımlar arasında bulunan ve çoğunlukla GPG olarak adlandırılan yazılım hayatına Phil Zimmermann'ın yazdığı Pretty Good Privacy (PGP) adıyla başladı. PGP muhtemelen özgür yazılım ve özgür bilgi alanındaki en ilham verici hikayelerden birine sahip.

PGP hayatında 1991'de ilk sürümünün o zamanların yaygın İnternet iletişim platformu olan Usenet'lere yüklenmesi ile başladı. Özellikle sonradan sorun olacak ABD yasaları 40 bit genişliğinin üzerindeki anahtarlarla çalışan yazılımların ithalatını yasaklamakta olduğundan Zimmermann'ın isteği üzerine çeşitli arkadaşları aracılığı ile kim zaman ankesörlü telefonlar ve akustik eşleyiciler aracılığı ile dağıtımı sağlanmıştır.

Yazılım özgür olmamakla birlikte Zimmerman ticari olmayan kullanımları için bir ücret talep etmemiş ve PGP'nin kaynak kodunu da yazılımla birlikte dağıtmıştır. Yazılımın dağıtılması beklendiği üzere ABD hükümetinin dikkatini çekmiş ve Zimmermann ABD askeri ihracat yasasına muhalefetten dava edilmiştir. Aynı zamanda PGP'nin kullandığı RSA algoritmasının lisans haklarına sahip şirket de konuya dahil olmuştur.

Zimmermann'ın PGP'nin yayılması ve insanlarca özgürce kullanılabilmesi için ortaya attığı fikir ise takdire değerdir. Her ne kadar kriptografik aracın ihracatı kanunun engeline takılıyor olsa da ABD anayasasının fikir özgürlüğü hükmü kişilerin yayınladıkları kitapları mutlak suretle korumaktadır. Bu kapsamda Zimmermann OCR uyumlu bir yazı tipi ile birlikte PGP'nin tüm kaynak kodunu MIT yayınevinden yayınlamıştır. Bu sayede kitap anayasal koruma altında dağıtılmış ve dileyenler kitabın cildini ayırarak tarama yardımı ile PGP'ye erişme imkanı sağlamıştır.

PGP'nin Zimmermann tarafından şirketleştirilmesi üzerine Özgür Yazılım Vakfı öncülüğünde GnuPG adı ile özgür bir yazılım olarak OpenPGP standardına uygun şekilde geliştirilmeye başlanmıştır.

GPG kullanmak

GPG genel olarak kullanılması zor görülen bir yazılımdır. Bu görüş yazılımın neredeyse 30 yıllık geçmişinde teknik çevrelerce kullanılmasından gelmekte ise de son yıllarda özellikle mahremiyet endişesinin yükselişte olduğu günümüzde son kullanıcı için fazlasıyla kullanışlı yazılımlar geliştirilmiştir. Bu bakımdan artık GPG sadece siyah beyaz uçbirimde çalışan bir yazılım olmaktan çıkmış ve her seviyeden bilgisayar kullanıcısının kolaylıkla kullanabileceği bir hal almıştır.

Elbette GPG kullanıcılarını küçük çocuklar gibi gören ve onların iyiliğini(!) onların adına ve çoğu zaman onlara rağmen düşünen diğer güvenlik vadeden yazılımlar gibi değildir. GPG kullanıcıların kendilerine ve çevrelerine olan güvenine dayanır. Bu bakımdan GPG gücü ve hali ile sorumluluğu koşulsuz şartsız kullanıcılara verir.

Bu rehber ile GPG kullanımını herkes için kolaylaştırmak ve anlaşılabilir kılmak amaçlanmıştır. Bunu yaparken GPG'nin kullanıcıya aktardığı güç korunmaya çalışılmıştır. Bu bakımdan kullanıcının güvenlik ve sorumluklarını sınırlandıran uygulamalara yer verilmemiştir.

Her seviyeden kullanıcı için kullanım tavsiye ve rehberlerimize göz atabilirsiniz:

Kolay GPG Anahtar üretimi

E-posta şifrelemeye başlamadan önce bir tane GPG anahtarı sahibi olmanız ve bunu güvenle saklamanız gerekli. GPG anahtarı üretimi kullandığınız donanıma ve işletim sistemine bağlı olarak değişmekte. Şayet tehdit modeliniz yüksek değil, sadece mahremiyetiniz için basitçe yazışmalarınızı şifrelemek istiyorsanız aşağıdaki yöntemleri kullanarak tüm cihazlarınızda hızlı ve görece güvenli şekilde GPG anahtarı oluşturabilirsiniz.

GNU/Linux - Windows - macOS

GNU/Linux dağıtımlar için çokça kullanışlı grafik arayüz sunan GnuPG istemcisi bulunmakta. Bu bakımsan KDE masaüstü ortamının anahtar yöneticisi Kleopatra hem platformlar arası olması hem de en geniş yönetim seçeneklerini sunması itibari ile tercih edilebilir.

  • Kleopatra'yı yüklemek için aşağıdaki komutları kullanabilir veya dağıtımınızın grafik yükleyicisini kullanabilirsiniz;

Debian/Ubuntu (APT): sudo apt-get install kleopatra

Red Hat/Fedora (RPM): sudo yum install kleopatra

Microsoft Windows : Gpg4win

  • Kurulum tamamlandıktan sonra Kleopatrayı dilediğiniz şekilde çalıştırın ve anahtarların listelendiği alan ile birlikte Kleopatra sizi karşılayacak.

alt-text

  • İlk anahtarınızı üretmek için "File/Dosya" menüsüne tıklayıp "New key pair/Yeni anahtar çifti" seçeneğine tıklayıp anahtar üretme işlemine başlayın. Açılan menüden "Kişisel OpenPGP anahtar çifti üret seçeneğini tıklayıp" devam edin.

alt-text

  • Kleopatra size isminizi ve e-posta adresinizi soracaktır. Burada doğru bilgiler vermek zorunda değilsiniz. Lakin GnuPG insanların kimliklerini oluşturmak ve buna güven duyulmasını sağlamak amacı ile kullanılmaktadır. Bu anahtar sizin kimliğinizi ve sizi tanıyan insanların size güvenmesi demek olacağından bu anahtarla yapacağınız işlemlerin size ait olduğunu kanıtlamanızı sağlar. Bu sebep ile gerçek bilgiler kullanmanızı öneririz. Her halükarda dilediğiniz bu bilgileri değiştirmenize engel olan bir durum yok.

alt-text

  • 'Gelişmiş Ayarlar' tıklandığında üretilecek anahtarınıza ilişkin birtakım teknik veriler karşınıza çıkacaktır. "Anahtar Malzemesi" olarak garipçe çevrilmiş bölümde kullanılacak anahtarın tipi ve boyutu girilmekte. RSA standart olmakla anahtar boyutunu en yüksek olan 4096 bit'e yükseltmeniz anahtarınızın geleceği için hararetle tavsiye edilir. Şayet anahtarınız ile SSH kullanma arzunuz varsa şu aşamada "Yetkilendirme/Authentication" kutusunu işaretleyerek devam edebilirsiniz. Geçerlilik süresi ise anahtarınızı kaybetmeniz durumunda belirli bir tarihten sonra anahtarınızın kendiliğinden kullanılmaz olmasını sağlar. O tarih geldiğinde anahtarınızı tekrar yenileyebilirsiniz. Tercihen 2-3 yıl seçmeniz önerilir.

alt-text

  • "Oluştur" düğmesine bastığınızda Kleopatra size parola soracaktır. Bu parola anahtarınızın şifrelenmesi için kullanılacak olup tüm anahtarınızın güvenliğinden sorumludur. Hali ile burada bir zarola kullanmanız hararetle tavsiye edilir.

  • Parolanızı girmenizin ertesinde, cihazınızın kapasitesine ve rastgelelik kaynağına bağlı olarak birkaç dakika alabilir. Bundan sonra anahtarınız hazırlanmış olacaktır.

alt-text

  • Bu aşamada anahtarınızın yedeğini alabilir ve anahtar yönetimi tavsiyelerimize göre anahtarınızın yedeğini alabilirsiniz.

  • Şayet anahtarınızı e-posta yazışması için kullanılmasını istiyorsanız, bu aşamada "Dizin Servisine Açık Anahtarı Yükle" seçeneğine tıklayarak anahtarınızı anahtar sunucularına gönderek herkes tarafından size şifreli e-posta atılabilmesini sağlayabilirsiniz.

ÖNEMLİ NOT: Anahtar sunucusuna yüklediğiniz anahtarlar SONSUZA kadar sunucularda kalacaktır. Bu bakımdan anahtarınızı kullanacağınızdan ve/veya anahtarı iptal etmek için gerekenlere sahip olduğunuzdan emin olmadan anahtarı sunuculara göndermeyin. Gizli anahtara ve parolasına veya bir iptal sertifikasına sahip değilseniz sunucudaki anahtarlar son kullanma tarihine kadar geçerli kalır.

Android

Android işletim sistemlerinde GnuPG kullanmak neredeyse diğer tüm imkanlardan daha kolay. OpenKeychain F-Droid üzerinden indirilebilen özgür bir yazılım olarak kullanışlı arayüzü ve kolay kullanımı ile GnuPG işlemlerinin kolaylıkla yapılabilmesine ve anahtar yönetimine imkan sağlıyor.

  • Android mobil işletim sistemleri için OpenKeychain yazılımını F-Droid reposundan veya özgür olmayan bir başka repodan indirerek telefonunuza kurun.

  • OpenKeychain sizi şirin asma kilit karakteri ile karşılayacak ve anahtar kullanımı için seçenekler sunacaktır. Buradan "Anahtarımı oluştur" seçeneğini seçerek ilerleyin.

alt-text

  • OpenKeychain size adınızı veya rumuzunuzu soracaktır. Burada doğru bilgiler vermek zorunda değilsiniz. Lakin GnuPG insanların kimliklerini oluşturmak ve buna güven duyulmasını sağlamak amacı ile kullanılmaktadır. Bu anahtar sizin kimliğinizi ve sizi tanıyan insanların size güvenmesi demek olacağından bu anahtarla yapacağınız işlemlerin size ait olduğunu kanıtlamanızı sağlar. Bu sebep ile gerçek bilgiler kullanmanızı öneririz. Her halükarda dilediğiniz bu bilgileri değiştirmenize engel olan bir durum yok.

alt-text

  • Bir sonraki aşamada OpenKeychain sizden e-posta adresinizi ve varsa başkaca e-posta adreslerinizi girmenize imkan verecektir. Buraya GnuPG anahtarınızı kullanmak istediğiniz e-posta adreslerini girin. Gerekirse ileride yenilerini ekleyebilir veya çıkartabilirsiniz.

alt-text

  • Anahtarınızı oluşturmadan önce, isminiz ve e-postanızın gösterildiği aşamada anahtarınızı "Anahtar sunucusuna gönder" (Publish on keyserver) seçeneği görülecektir. Şayet anahtarınızı e-posta yazışması için kullanılmasını istiyorsanız bu seçeneği işaretleyerek devam edebilirsiniz.

alt-text

ÖNEMLİ NOT: Anahtar sunucusuna yüklediğiniz anahtarlar SONSUZA kadar sunucularda kalacaktır. Bu bakımdan anahtarınızı kullanacağınızdan ve/veya anahtarı iptal etmek için gerekenlere sahip olduğunuzdan emin olmadan anahtarı sunuculara göndermeyin. Gizli anahtara ve parolasına veya bir iptal sertifikasına sahip değilseniz sunucudaki anahtarlar son kullanma tarihine kadar geçerli kalır.

  • Anahtarınızı üretmeye geçmeden, sağ üst köşede bulunan menüden "Anahtar yapılandırmasını değiştir" seçeneğini seçerek anahtarınızın bazı standart ayarlarını değiştirmek isteyebilirsiniz. Parola: OpenKeychain üretilen anahtarlara bir parola ile korumamaktadır. Bu sebepten bir zarola ile anahtarınızı şifrelemenizi öneririz. Alt Anahtarlar: OpenKeychain standart olarak en yüksek güvenlikteki anahtar boyutu olan 4096 bit kullanmamakta. Bunu şifreleme hızı için yapsa da uzun vadede kullanacağınız anahtarlarınızın boyutunun 4096 bit olması uzun vadede faydalı olabilir. Dilerseniz bu aşamada SSH gibi yetkilendirme sistemlerinde kullanılmak üzere başkaca bir alt anahtar daha ekleyebilirsiniz.

alt-text

  • Anahtar oluştur düğmesine tıklayarak anahtarınızı oluşturmaya başlayabilirsiniz. Cihazınız gerekli sihirli işlemleri yaptıktan sonra OpenKeychain'in ana sayfasında kişisel anahtarınız ile karşılaşacaksınız.

alt-text alt-text

Tebrikler artık kullanılabilir bir GnuPG anahtarınız var! Artık hem e-postalarınızı hem de dosyalarınızı şifreleyebileceğiniz dünyaca güvenilen bir yazılımı kullanabilir konumdasınız. Bu bilgiyi çevrenizle paylaşın ve onların da kendi anahtarlarını üretip sizinle iletişime geçebilmesine yardımcı olun.

İleri Anahtar Üretimi

GPG, RSA algoritmasına dayalı asimetrik şifreleme kullanmaktadır. RSA anahtar çiftinin uzun dönem kullanılması ve hali ile saklanması gereklidir. Bu bakımdan hem üretimi hem de saklanması bakımından dikkat gösterilmesi gereklidir. Özellikle şifreleme ihtiyacınız mahremiyet beklentisini aşıp güvenlik gerektiren durumlara yönelik ise anahtar üretimi gibi kritik bir aşamayı olabilecek en az etmen ve şüphe ile yürütmek gerekmektedir.

Güvenli ortam

Anahtarın üretimi sırasında kullanılan bilgisayar çok önemli bir girdinin kaynağıdır. Entropi, yani cihazınızda anahtar üretimi sırasında kullanılacak rastgeleliğin kalitesi bilgisayarınız ve işletim sisteminize bağlıdır. Aynı zamanda bilgisayarınızda kötücül bir yazılımın çalışmaması veya bilmediğiniz bir açığın söz konusu olması durumunu da göz önünde bulundurmanız faydalı olabilir. Sonuç olarak tehdit modeliniz bu tip sorunları kapsamıyor olsa bile bir kere üretip belki hayatınız boyunca kullanacağınız bir anahtarı çok kolay tedbirler altında üretmenin bir zararı da yoktur.

Şayet bu amaçla rastgele bir konumdan nakit ödeme ile bir bilgisayar alıp tüm ağ araçlarını söküp asla İnternet'e bağlamamayı gerektirecek bir tehdit modeliniz yok ise yapabileceğiniz en kolay ve etkili yöntem bir USB bellek üzerinden Tails başlatarak anahtarınızı bu işletim sistemi üzerinde üretmeniz olacaktır.

Tails rehberinin yazılmasına katkı verebilirsiniz

Bir diğer seçenek ise anahtarınızı bir güvenlik donanımı olan Gnupg akıllı kart veya Yubikey üzerinde üretmektir. Bu yöntemin faydası güvenlik donanımından başka bilgisayarın hiçbir sistemi anahtarla temas etmemiş olacaktır. Tüm kriptografik işlemler bu cihaz üzerinde güvenli olarak gerçekleşeceğinden birden fazla cihazda güvenli şekilde anahtarınızı kullanmak da kolaylaşmaktadır. Akıllı kart üzerinde anahtar oluşturmanın kötü tarafı ise yedekleme imkanınızın olmamasıdır. Şayet kartınızı kaybeder veya bir sebepten bozarsanız anahtarınız sonsuza kadar şifrelediğiniz verilerle birlikte kaybolacaktır. Akıllı kart kullanmak ama yedek de almak istiyorsanız anahtarınızı bilgisayarda üretip ardından akıllı karta yüklemeniz de mümkündür.

Akıllı kart ve Yubikey rehberi yazarak bu rehbere katkı verebilirsiniz

Anahtarı Planlamak

Anahtar işlevleri

Bir GPG anahtarı 4 temel işlev taşıyabilir. Bunlar; sertifika, şifreleme, imzalama, yetkilendirmedir.

  • Sertifika: Başka anahtarları imzalamak için gereken işlevdir.
  • Şifreleme: Anahtar ile şifreleme yapmak için gereken işlevdir.
  • İmzalama : Mesaj veya dosyaların bütünlüğünü ve aitliğini kanıtlamak için gereken imzanın atılabilmesi için gereken işlevdir.
  • Yetkilendirme: SSH ve benzeri sistemlerde kimlik kanıtlayarak yetkilendirme almak için gereken işlevdir.

GPG anahtarları bir tane ana anahtar ve çeşitli sayıdaki alt anahtardan oluşur. Sertifika yetkisi ana anahtara ait olmakla birlikte şifreleme, imzalama ve yetkilendirme yetkileri ana anahtara veya alt anahtarlara verilebilmektedir.

Sertifika yetkisinin önemi

Anahtar sayısı ve yetkilerini değerlendirirken sertifika yetkisi önemlidir. GPG bir şifreleme yazılımı olduğu kadar kimlik yönetimi de sağlamaktadır. Sertifika yetkisi GPG kullanıcısının diğer kullanıcıların anahtarlarını imzalayarak güven ağı oluşturulmasını sağlamakta ve alt anahtarlara duyulan güveni de getirmektedir. Bu bakımdan alt anahtarların ifşa olması gibi olumsuz bir durumda ana anahtarın korunabilmiş olması yeni alt anahtarların eski güven ağı kaybedilmeden tekrar oluşturulmasına imkan sağlamaktadır.

Günlük kullanımda sertifika yetkisi özellikle gerekli değildir. Keza alt anahtarlara ait olan şifreleme imzalama ve yetkilendirme işlevleri GPG'nin günlük kullanımı için yeterlidir. Ancak bir başka GPG anahtarının imzalanması, yeni bir alt anahtar oluşturulması veya tarihi geçen bir anahtarın yenilenmesi gibi sıklıkla gerekmeyen durumlarda ana anahtar gerekli olmaktadır. Bu bakımdan ana anahtarı güvenle saklanacağı bir ortama alıp, çalınma ve ifşa olma tehlikesi taşıyan cihazlarda sadece alt anahtarları bulundurarak belirli bir güvenlik elde etmek mümkündür. Bu uygulamanın kötü tarafı ise tüm anahtarlarınızın bir akıllı karta alamayacak olmanız ve her sertifika işlemi için anahtarınızı güvenli alandan çıkarmanın zahmetine katlanmaktır.

Anahtar boyutu

Anahtarınızın boyutu doğrudan sağlayacağı güvenlik ile ilişkilidir. GPG'nin kullandığı RSA algoritmasında 1024 ile 4096 bit arasında bir anahtar seçmeniz mümkündür. Bugün Türkiye'de kanuna bağlı olarak kullanılan e-imza sertifikaları RSA2048 bit idir. RSA1024 ise artık güvenli kabul edilmemektedir. Anahtarınızın büyüklüğü geleceğe dönük olarak güvenli sayılacağı ömrü de uzatacağından en büyük anahtar genişliğini seçmeniz kesinlikle tavsiye edilir. Anahtar boyutuna ilişkin temel endişe kriptografik işlemlerin işlemci gücü bakımından giderek zorlaşmasıdır. Günümüzde en kötü akıllı mobil cihazın bile işlemci gücü 4096 bit anahtar boyutları ile makul sürelerde işlem yapma imkanı sağladığından bu endişe güncelliğini temel kullanımlar açısından görece yitirmiş durumdadır.

Anahtar algoritması

GPG'nin güncel versiyonu olan 2.0.19 artık tarihi olarak kullanılan RSA algoritmasının yanında Elliptic-curve cryptography (ECC) de desteklemeye başlamıştır. ECC, RSA ile karşılaştırılabilir güvenlik seviyeleri için daha kısa anahtarlar oluşturulmasına imkan sağlamaktadır. Kuantum bilgisayarlar ve arkakapı endişeleri taşımakla birlikte pratik ve daha kolay yönetilebilir anahtarlara ihtiyaç duyulması durumunda en yüksek anahtar genişliğinde tercih edilmesi düşünülebilir.

Anahtar yapısı

Şayet GPG'den standart bir anahtar üretmesi istenir ise aşağıdaki gibi bir anahtar oluşturacaktır.

├─Ana anahtar (sertifika ve imzalama) └─Alt anahtar (şifreleme)

Bu anahtar ana anahtar ile imzalama işlemini yapacağından neredeyse her işlemde ana anahtarın da sistemde bulunması ve kullanılabiliyor olması gereklidir. GPG'nn böyle bir tercihte bulunmasının iki nedeni vardır. Öncelikle sertifika ve imza işlemleri temelde benzerdir ve ikisi de güven ilişkisi yaratır. Bu bakımdan iki benzer işlemi tek anahtarın görmesi anlamlıdır. İkinci olarak temel işlemleri yapmak için gereken en az anahtar miktarı bu şekilde elde edildiği için anahtar boyutu da küçük olmaktadır.

Fakat tehdit modelinize bağlı olarak daha güvenlik işlevi gösterebilecek bir düzen oluşturmak mümkündür. Sertifika yetkisinin anahtara sağladığı güven ilişkisini günlük kullanımdan yalıtarak alt anahtarların; vadesini, güvenini ve döngüsünü güvenli şekilde yönetmek mümkündür. Şöyle ki;

  • Şifreleme anahtarınız çalınan dizüstü bilgisayarınız ile birlikte açığa çıkarsa geçmişe dönük olarak tüm iletişim ve şifreli dosyalarınızın açılması mümkündür.

  • İmza anahtarınız benzer bir talihi paylaşırsa bir saldırgan bu anahtarı kullanarak sizi taklit edebilir; kullandığınız amaca bağlı olarak size ait görünen metin, dosya ve kod yaratabilir.

  • yetkilendirme anahtarınızın ortaya çıkması bu anahtara bağlı olarak giriş yaptığınız tüm sistemlerin ele geçirilmesi anlamına gelebilir.

Bu neden ile GPG'nin kalıcı anahtar modelini biraz kullanım pürüzü yaratacak da olsa elle geçici(ephemeral) anahtar modeline çevirebilirsiniz. Bu yöntem bir bakııma OTR ve OMEMO sistemlerinde kullanılan yönteme benzemekle fark olarak her mesajda değil sizin belirleyeceğiniz daha uzun aralıklarda değişim yapmanızı gerektirir.

Basitçe ifade etmek gerekirse;

  1. Ana anahtara sadece sertifika yetkisi verilir.
  2. 3 alt anahtara şifreleme, imzalama, yetkilendirme işlevleri verilir.
  3. Ana anahtara 3 yıl gibi uzun bir vade süresi verilir.
  4. Alt anahtarlara 3 ay gibi görece kısa bir vade süresi verilir.
  5. Ana anahtar anahtarlardan ayrılır ve offline olarak güvenli saklanır.
  6. Alt anahtarlar cihazlara aktarılır ve kullanılır. Gerekli görüldükçe veya belirlenen süreler ile değiştirilir. Değişim ana anahtarla yapılır ve imzalanarak güven ağına dahil edilir.

Bu çabaya katlanmak her kullanıcının kendi durumuna göre karar vermesi gereken bir tercih. Keza sizin güvenlik ihtiyaçlarınız için bu durum aşırı olabilir ve sürekli GPG ile uğraşmak canınızı sıkabilir. Geçmişe dönük olarak şifreli verilerinizi sürekli olarak yeniden şifrelemek veya yokoluşa terk etmek sorun yaratabilir. Sizinle iletişime geçen kişiler sürekli olarak anahtarınızın yeni versiyonunu edinmekten sıkılabilir.

Bu süreci işletebilmek için ne yazık ki anahtarınızı baştan buna uygun olarak üretmeniz gerekmektedir. Anahtarlara verilen işlevler daha sonra değiştirilememektedir. Bu rehberde yukarıdaki amacı gösterebilecek bir anahtarın üretim ve kullanım süreci işlenecektir.

Güvenli Anahtar Üretimi

Anahtar üretimi için güvenli ortamınızı elde ettikten sonra bir uçbirim açarak anahtar üretim sürecine başlayabilirsiniz.

GPG'nin uzman modunu çağırarak anahtar üretim sürecine başlayın.

gpg --full-gen-key --expert

Karşınıza aşağıdaki seçenekler çıkacaktır.

gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Lütfen istediğiniz anahtarı seçiniz:
   (1) RSA ve RSA (varsayılan)
   (2) DSA ve Elgamal
   (3) DSA (yalnız imzalamak için)
   (4) RSA (sadece imzalamak için)
   (7) DSA (yeteneklerini belirtin)
   (8) RSA (yeteneklerini belirtin)
   (9) ECC and ECC
  (10) ECC (sign only)
  (11) ECC (set your own capabilities)
  (13) Existing key
  (14) Existing key from card
Seçiminiz? 


Bu noktada RSA veya ECC algoritmaları arasındaki kararı vermiş olmanız gereklidir. Rehber RSA algoritmasını geçmişi ve kuantum endişeleri nedeni ile tercih edecektir. 8 tuşuna basıp "enter" ile devam edin.

bir RSA anahtarı için olası eylemler: İmzalama Onayla Şifrele Kimlik kanıtla 
Şimdilik mümkün eylemler: İmzalama Onayla Şifrele 

   (1) İmzalama yeteneğini açar/kapar
   (2) Şifreleme yeteneğini açar/kapar
   (3) Kimlik kanıtlama yeteneğini açar/kapar
   (0) Bitti

Seçiminiz? 

Bu aşamada ana anahtarınızı ürettiğiniz için amacımıza bağlı olarak sadece Onaylama (sertifika) yetkisinin mümkün eylemler arasında kalmasının sağlanması gerekli. Bunun için sırası ile 1-enter-2-enter tuşlayarak imzalama ve şifreleme yetkisini anahtardan ayırabilirsiniz. Bu aşamadan sonra aşağıdaki noktaya vardığınızda 0 tuşlayıp "enter" ile işlemi tamamlayabilirsiniz.

bir RSA anahtarı için olası eylemler: İmzalama Onayla Şifrele Kimlik kanıtla 
Şimdilik mümkün eylemler: Onayla 

   (1) İmzalama yeteneğini açar/kapar
   (2) Şifreleme yeteneğini açar/kapar
   (3) Kimlik kanıtlama yeteneğini açar/kapar
   (0) Bitti

Seçiminiz? 

GPG sizden anahtar boyutunuzu girmenizi isteyecektir. En yüksek güvenliği sağlayan anahtar genişliği olan 4096 sayısını girerek "enter" tuşlayın.

RSA anahtarları 1024 bit ile 4096 bit arasında olmalı.
İstediğiniz anahtar uzunluğu nedir? (3072) 4096

Bu aşamadan sonra anahtarınızın geçerlilik süresini belirlemeniz istenecektir. Bu süre tercihi size kalmış olmakla birlikte ana anahtarınızın geçerliliğini yıl düzeyinde yapmanız kolaylık sağlayacaktır. Süreyi belirlemek için istediğiniz miktarı ardından birimi belirten harf ile girip "enter" tuşlayın.

İstenen anahtar uzunluğu: 4096 bit
Lütfen anahtarın ne kadar süreyle geçerli olacağını belirtin.
         0 = anahtar süresiz geçerli
      <n>  = anahtar n gün geçerli
      <n>w = anahtar n hafta geçerli
      <n>m = anahtar n ay geçerli
      <n>y = anahtar n yıl geçerli
Anahtar ne kadar geçerli olacak? (0) 3y

GPG'nin süreyi doğrulamak için sorduğu soruya evet anlamında "y" veya "e" tuşlayarak devam edebilirsiniz.

Anahtarın geçerliliği Cum 25 Ağu 2023 09:45:04 +03 de bitecek.
Bu doğru mu? (e/H ya da y/N) y

Bu aşamadan sonra GPG size adınız ve e-posta adresinizi soracaktır. Doğal olarak burada doğru cevap vermek zorunda değilsiniz. Bir rumuz ve geçersiz bir e-posta adresi kullanabilirsiniz. Lakin bu durumda anahtarınız ile sosyal çevrenizde bir güven anahtarı oluşturmanızı zorlaştıracağı gibi size e-posta şifrelemek isteyen insanlara da bir külfet getirecektir. Kararı kullanım amacınıza göre belirleyebilirsiniz.

GnuPG anahtarınızı betimlemek için bir kullanıcı kimliği oluşturmaya ihtiyaç duyuyor.

Adınız ve Soyadınız: Claude Shannon
E-posta adresiniz: entropyrulez@bell.com
Önbilgi:

Karşınıza çıkacak doğrulamayı denetledikten sonra tamam anlamında "t" tuşlayarak devam edebilirsiniz.

Seçtiğiniz KULLANICI-KİMLİĞİ:
    "Claude Shannon <entropyrulez@bell.com>"

(A)dı ve Soyadı, (Y)orum, (E)posta alanlarını değiştir ya da (T)amam/Çı(k)? 

GPG size parolanızı soracaktır. Burada bir Zarola kullanmanız hararetle tavsiye edilir. Anahtarınızın güvenliği bu parolaya doğrudan bağlı olduğundan bu parolanın unutmayacağınız şekilde olması ve yeterince entropi içermesini sağlamanın en kolay yolu Zarola yönteminden geçmektedir.

Bu aşamadan sonra cihazınız anakartınızın köşelerinde kalmış entropi için çırpınıp size anahtarınızı üretecektir. Bu süreç /dev/random aygıtınızda kalan entropi miktarı ve yenilenme hızına bağlı olarak yavaş olabilir. Bilgisayarınız ile bir şeyler yaparak bu süreci hızlandırabilirsiniz. Anahtarınız hazır olduğunda GPG sizi aşağıdaki çıktı ile karşılayacaktır.

(A)dı ve Soyadı, (Y)orum, (E)posta alanlarını değiştir ya da (T)amam/Çı(k)? t
Bir miktar rasgele bayt üretilmesi gerekiyor. İlk üretim sırasında biraz
hareket (klavyeyi kullanmak, fareyi hareket ettirmek, disklerden yararlanmak)
iyi olacaktır; bu yeterli rasgele bayt kazanmak için rasgele sayı
üretecine yardımcı olur.
gpg: anahtar 6CD5E60735205895 son derece güvenli olarak imlendi.
gpg: revocation certificate stored as '/home/alper/.gnupg/openpgp-revocs.d/A09D0D53E6BEEF6A971F64036CD5E60735205895.rev'
genel ve gizli anahtar üretildi ve imzalandı.

pub   rsa4096 2020-08-25 [C] [son kullanma tarihi: 2023-08-25]
      A09D0D53E6BEEF6A971F64036CD5E60735205895
uid                      Claude Shannon <entropyrulez@bell.com>

Şayet gpg --list-secret-keys komutunu çağırırsanız yeni anahtarınızı ve detaylarını görecek olmalısınız.

sec   rsa4096 2020-08-25 [C] [son kullanma tarihi: 2023-08-25]
      A09D0D53E6BEEF6A971F64036CD5E60735205895
uid           [   son  derece   ] Claude Shannon <entropyrulez@bell.com>

Artık alt anahtarların üretimine geçmek ve kullanılabilir bir anahtar oluşturmaya başlamak mümkündür. Aşağıdaki komut ile anahtarınızı düzenlemeye başlayabilirsiniz.

gpg --edit-key --expert [key ID veya e-posta]

Komut sizi aşağıdaki gibi bir çıktı ile karşılayacak ve promt'ta bekleyecektir.

gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Gizli anahtar mevcut.

sec  rsa4096/6CD5E60735205895
     oluşturuldu: 2020-08-25  son kullanma tarihi: 2023-08-25  kullanımı: C   
     güvencesi: son derece    geçerliliği: son derece
[   son  derece   ] (1). Claude Shannon <entropyrulez@bell.com>

gpg> 

help yazarak bu aşamada yapabileceğiniz işlemler hakkında bilgi alabilirsiniz.

gpg> help
quit        bu menüden çık
save        kaydet ve çık
help        bunu gösterir
fpr         parmakizini gösterir
grip        show the keygrip
list        anahtarı ve kullanıcı kimliğini gösterir
uid         N kullanıcı kimliğini seçer
key         N yardımcı anahtarını
check       imzaları sınar
sign        seçilen kullanıcı kimliği imzalar [* ilgili komutlar için aşağıya bakın]
lsign       kullanıcı kimlikleri yerel olarak imzalar
tsign       seçili kullanıcı kimlikleri bir güvence imzasıyla imzalar
nrsign      seçili kullanıcı kimlikleri yürürlükten kaldırılamayan bir imzayla imzalar
adduid      bir kullanıcı kimliği ekler
addphoto    bir foto kimliği ekler
deluid      seçili kullanıcı kimlikleri siler
addkey      bir yardımcı anahtar ekler
addcardkey  bir akıllı karta bir anahtar ekler
keytocard   bir akıllı karttan bir anahtarı taşır
bkuptocard  bir akıllı karttan bir yedekleme anahtarını taşır
delkey      seçili yardımcı anahtarları siler
addrevoker  bir yürürlükten kaldırma anahtarı ekler
delsig      seçili kullanıcı kimliklerden imzaları siler
expire      anahtar için ya da seçili yardımcı anahtarlar için zamanaşımı tarihini değiştirir
primary     seçili kullanıcı kimliğini asıl olarak imler
pref        tercihleri listeler (uzman)
showpref    tercihleri listeler (ayrıntılı)
setpref     Seçili kullanıcı kimlikler için tercih listesini belirler
keyserver   seçili kullanıcı kimlikler için tercih edilen anahtar sunucu adresini belirler
notation    seçili kullanıcı kimlikleri için bir simgelem belirler
passwd      anahtar parolasını değiştirir
trust       sahibiningüvencesini değiştirir
revsig      Seçili tüm kullanıcı kimliklerdeki imzaları yürürlükten kaldırır
revuid      Seçili tüm kullanıcı kimlikleri yürürlükten kaldırır
revkey      anahtarı ya da seçili yardımcı anahtarları yürürlükten kaldırır
enable      anahtarı kullanıma sokar
disable     anahtarı iptal eder
showphoto   seçili foto kimlikleri gösterir
clean       kullanışsız kullanıcı kimlikleri sıkıştırır ve kullanışsız imzaları anahtardan kaldırır
minimize    kullanışsız kullanıcı kimlikleri sıkıştırır ve tüm imzaları anahtardan kaldırır

* The 'sign' command may be prefixed with an 'l' for local signatures (lsign),
  a 't' for trust signatures (tsign), an 'nr' for non-revocable signatures
  (nrsign), or any combination thereof (ltsign, tnrsign, etc.).

addkey komutu ile anahtara alt anahtarlar eklemeye başlayabilirsiniz. Alt anahtar ekleme süreci ana anahtarın üretimi ile tamamen aynıdır. Yukarıdaki adımları tekrar ederek son noktada bir ana anahtar ve 3 belirli işlevi taşıyan alt anahtar üretmiş olmanız gereklidir.

sec  rsa4096/6CD5E60735205895
     oluşturuldu: 2020-08-25  son kullanma tarihi: 2023-08-25  kullanımı: C   
     güvencesi: son derece    geçerliliği: son derece
ssb  rsa4096/9D0FFCD0DE126F3D
     oluşturuldu: 2020-08-25  son kullanma tarihi: 2021-08-25  kullanımı: E   
ssb  rsa4096/3F7DB977B818DDB4
     oluşturuldu: 2020-08-25  son kullanma tarihi: 2021-08-25  kullanımı: S   
ssb  rsa4096/841A8F682342D15B
     oluşturuldu: 2020-08-25  son kullanma tarihi: 2021-08-25  kullanımı: A   
[   son  derece   ] (1). Claude Shannon <entropyrulez@bell.com>

Yukarıdaki gibi veya arzu ettiğiniz sonucu elde ettikten sonra save komutu ile değişiklikleri kaydedip çıkabilirsiniz. Artık anahtarınızın aşağıdaki gibi görünüyor olması gereklidir.

sec   rsa4096 2020-08-25 [C] [son kullanma tarihi: 2023-08-25]
      A09D0D53E6BEEF6A971F64036CD5E60735205895
uid           [   son  derece   ] Claude Shannon <entropyrulez@bell.com>
ssb   rsa4096 2020-08-25 [E] [son kullanma tarihi: 2021-08-25]
ssb   rsa4096 2020-08-25 [S] [son kullanma tarihi: 2021-08-25]
ssb   rsa4096 2020-08-25 [A] [son kullanma tarihi: 2021-08-25]

ÇOK ÖNEMLİ NOT: Bu noktada anahtarınızın yedeğini güvenli şekilde almanız hayati öneme sahiptir. Bunun için rehberdeki Anahtar Yönetimi ve Paperbackup ile kağıt yedek rehberlerinden yardım alabilirsiniz.

Ana anahtarın ayrılması

Ana anahtarı alt anahtarlardan ayırmanın GPG'de belirgin bir yolu bulunmamakta. Bu amacı gerçekleştirmek için biraz dolambaçlı bir yol kullanmak gerekiyor.

ÖNEMLİ NOT: Bu bölümde anahtar üzerinde geri döndürülemez işlemler yapılacağından ve işlemlerin bir kısmı yedekten anahtar almayı gerekli kıldığından tüm anahtarınızın yedeğini aldığınızdan emin olun.

Öncelikle anahtarınızın alt anahtarlarını dışarı çıkartmanız gerekmekte. Bu aşamada anahtarın UID'sini belirtmeniz gerekmekte keza e-posta ile bu işlem gerçekleşmiyor.

gpg --armor --export-secret-subkeys [anahtar ID] > [kayıtdizini]

Bu işlemin ardından anahtarınızı silin.

gpg --delete-secret-keys [anahtar ID veya e-posta]

GPG israrla bu anahtarı silmek isteyip istemediğinizi sorgulayacaktır. Endişesi konusunda haklı olmakla birlikte kararlılığınızı gösterip tüm sorularına olumlu cevap verin.

gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


sec  rsa4096/6CD5E60735205895 2020-08-25 Claude Shannon <entropyrulez@bell.com>

Bu anahtar, anahtar zincirinden silinsin mi? (e/H ya da y/N) y
Bu bir gizli anahtar! - gerçekten silinecek mi? (e/H veya y/N) y

Bu aşamadan sonra anahtarlığınızda sadece "pub" ile işaretli umumi anahtarınız kalmış olacaktır.

pub   rsa4096 2020-08-25 [C] [son kullanma tarihi: 2023-08-25]
      A09D0D53E6BEEF6A971F64036CD5E60735205895
uid           [   son  derece   ] Claude Shannon <entropyrulez@bell.com>
sub   rsa4096 2020-08-25 [E] [son kullanma tarihi: 2021-08-25]
sub   rsa4096 2020-08-25 [S] [son kullanma tarihi: 2021-08-25]
sub   rsa4096 2020-08-25 [A] [son kullanma tarihi: 2021-08-25]

Artık yedeğini aldığınız alt anahtarları geri yükleyerek ana anahtarınızı içermeyen kullanım anahtarınızı tamamlayabilirsiniz.

gpg --import [yedek dizini]

GPG parolanızı soracak ve doğru girmeniz ardından alt anahtarları ekleyecektir.

gpg: anahtar 6CD5E60735205895: "Claude Shannon <entropyrulez@bell.com>" değişmedi
gpg: To migrate 'secring.gpg', with each smartcard, run: gpg --card-status
gpg: anahtar 6CD5E60735205895: gizli anahtar alındı
gpg: İşlenmiş toplam miktar: 1
gpg:              değişmedi: 1
gpg:       gizli anahtarlar okundu: 1
gpg:   gizli anahtarlar indirildi: 1

gpg --list-secret-keys ile gizli anahtarlarınızı listelerseniz aşağıdaki gibi ana anahtarınızın sec# şekline işaretli olduğundan eksik olduğunu görebilirsiniz.


sec#  rsa4096 2020-08-25 [C] [son kullanma tarihi: 2023-08-25]
      A09D0D53E6BEEF6A971F64036CD5E60735205895
uid           [   son  derece   ] Claude Shannon <entropyrulez@bell.com>
ssb   rsa4096 2020-08-25 [E] [son kullanma tarihi: 2021-08-25]
ssb   rsa4096 2020-08-25 [S] [son kullanma tarihi: 2021-08-25]
ssb   rsa4096 2020-08-25 [A] [son kullanma tarihi: 2021-08-25]

Artık cihazlarınızda kullanacağınız sıyrılmış alt anahtarlarınızı dışarı çıkarıp aktarabilirsiniz.

gpg --export-secret-keys --armor [anahtar ID veye e-posta]

Anahtarları akıllı karta aktarmak

Ürettiğiniz anahtarlarınızı daha güvenli kullanmak isterseniz bir Gnupg akıllı karta veya Yubikey gibi bir donanıma aktarabilirsiniz. Bu konuda yardıma ihtiyaç duyarsanız rehberlerimize danışabilirsiniz.

Yubikey rehberi yazarak katkıda bulunabilirsiniz

[GnuPG akıllı kart rehberi yazarak katkıda bulunabilirsiniz]

Kaynaklar

GPG Anahtarının Korunması

Anahtar Korunması GPG'nin en tehlikeli ve önemli parçasıdır. Öyle ki; GPG'nin tüm gücü şifreleme imkanını tamamen sizin elinize vermesidir. Elbette büyük güç büyük sorumlulukla gelmekte ve bu sorumluluk da kendi anahtarınızı kendinizin yönetmesi olmakta. Anahtarı kaybetmenizin bedeli şifrelediğiniz verileri sonsuza kadar kaybetmeniz olacağı gibi anahtarınızın kaybı tüm kimliğinizin ile birlikte anahtardan dolayı size duyulan güveninde yok olmasına sebep olacaktır.

Doğru bir anahtar yönetiminin birkaç unsuru bulunmakta:

  • Yedekleme GPG ile tüm şifreleme cihazınızda gerçekleştiğinden ve sorumluluğu da size ait olduğundan, anahtarınızı bir aksilik durumunda geri verecek bir otorite(!) bulunmaz. Gizli anahtarınızın yedeğini uygun şekilde almanız gereklidir.
  • Saklama GPG anahtarınızı yedeklediğiniz kayıt medyasının ve konumunun doğru ve ihtiyaçlarınıza uygun olarak seçilmiş olması gereklidir. Her kayıt medyasının bir tür saklama sorunu içerdiğini ve bu yedekleri kime teslim ettiğiniz veya nereye koyduğunuz gelecek için önemlidir.
  • Planlama GPG anahtarınızın başına gelebilecekleri düşünerek buna uygun planlama yapmanız gerekir. Aksi halde tedbirin sınırı olmayacağından gereğinden fazla çaba harcamanız mümkündür.

Planlama

Planlamanızı sağduyu ile yapın. Her tedbir planlaması gibi bir risk yönetimi yapmanız yerinde olacaktır. Bunun için kendinize aşağıdaki soruları sorun ve cevaplarına göre uygun tedbirleri alın.

  1. Anahtarımı kaybetmeme sebep olacak tehlikeler neler? Dizüstünüzü kaybetmeniz, sabit sürücünüzün bozulması, telefonunuzu kaybetmeniz, evinizi su basması vs..

  2. Anahtarımı kaybetmeme sebep olacak tehlikelerin gerçekleşme ihtimalleri nedir? Mesela sıklıkla seyahat ediyorsanız ve anahtarınızın tek kopyası dizüstünüzde ise kaybetme olasılığınız yüksek. Bir afete uğrama ihtimaliniz ise düşük.

  3. Anahtarımı kaybedersem ne kadar üzülürüm? Tüm e-postalarınızı, dosyalarınızı anahtarınız ile şifreliyorsanız kesinlikle günlerce ağlarsınız. Ara sıra gpg ile yazışıyor, anahtarınızı imzalatmıyor ve önemli görmüyorsanız yenisini üretip geçebilirsiniz.

  4. Ne kadar zaman ve kaynak ayırabilirim? 7 kıtada 3 farklı konumda titanyuma kazınmış yedekler alabiliyorsanız ne güzel... Bu işe ayırabilecek bir saatiniz var ise hızlıca elinizdekileri kullanabilirsiniz.

Yedekleme

Yedeklemek anlam bakımından elinizdeki bir verinin kötü bir ihtimale karşı bir kopyasının alınmasını ve saklanmasını ifade eder. GPG anahtarınızı kullanabilmek için muhtemelen bir cihazda tutuyor olacaksınız. İki veya daha fazla cihazınızda bu anahtarın olması kötü de olsa bir nevi yedekleme sayılabilir.

Şayet vaktiniz yoksa veya anahtarınız o kadar önemli değil ise basitçe anahtarınızı dilediğiniz bir kayıt medyasına kopyasını alıp evinizin bir köşesine kaldırabilirsiniz. Bu her halükarda offline bir yedeğinizin bildiğiniz bir yerde durmasının rahatlığını size verir.

Anahtarınıza önem veriyorsanız veya kaybetmenizin ciddiyeti her türlü önlemi almanızı gerektirecek düzeydeyse en az iki kopyanın mümkünse farklı kayıt ortamlarında (dvd vd usb bellek gibi) aynı tehlike modelini içermeyen farklı konumlarda (eviniz ve şehir dışındaki arkadaşınız gibi) bulundurulması gerekliliklerinizi karşılayabilir.

Anahtarınızın yedeğini almak

GNU/Linux

  • Şayet uçbirim (terminal) aşinalığınız varsa açacağınız bir uçbirim ekranında aşağıdaki komutu çalıştırın

gpg --export-secret-key --armour [anahtar id veya e-posta adresi] > [anahtarın kaydedileceği dizin]

kurulumunuza bağlı olarak size anahtarınızın parolasını soracaktır. Parolasını girmeniz üzerine anahtarınızın yedeğini verdiğiniz dizine kaydedecektir. Emin olmak için dosyanın içeriğini açıp bakmanızı ve "-----BEGIN SECRET KEY-----" ile başlayan satırları gözle bir kontrol etmeniz önerilir.

  • Şayet Kleopatra gibi GUI arayüz kullanıyor iseniz, arayüzde Export veya backup gibi ifade edilen seçeneği arayıp talimatları takip edin. Anahtarınızın yedeğini bir dosya olarak kaydettikten sonra dosyayı dilediğiniz gibi yedekleyebilirsiniz. Şayet arayüz size armour veya base64 gibi bir ifade ile seçenek sunuyor ise seçmenizi öneririz. Böylece yedeğinizi gerekirse kağıda basabilirsiniz.

Android

Android'de GPG istemcisi OpenKeychain kullanılmakta.

  • Ana ekranda size ait gizli anahtarlarınız ile tüm diğer açık anahtarlarınız listelenir.

  • Gizli anahtarınızın üstüne tıklayıp sağ üst köşeden menüyü açıp backup/yedekle seçeneğine tıklayın.

  • OpenKeychain yedek alacağınız anahtarınızı ayrıca AES256 ile şifreleyecektir. Bu sebeple size dörtlü şekilde ayrılmış dokuz numara verecektir. Bu numaraları aralarındaki - işaretleri de dahil şekilde bir kağıda yazın ve güvenli bir yerde tutun.

  • Bu noktadan sonra yedeğinizi share/paylaş seçeneği ile ağ üzerinden veya telefonunuzun dahili hafızasına kaydedip offline olarak bilgisayarınıza aktarabilirsiniz. Biz açıkça dertli olmayacaksa offline seçeneği tavsiye ederiz.

  • ÖNEMLİ NOT!: OpenKeychain ile aldığınız yedek dosyası ayrıca AES256 ile size verilen parola ile şifrelidir. Şayet bu şifreyi çözmeden dosyayı yedeklemeye karar verirseniz verilen parolayı da MUTLAKA güvenli şekilde saklamak zorundasınız. Bunun yerine bilgisayarınızda GPG ile şifreyi çözebilir ve elde ettiğiniz anahtarı bu şekilde OpenKeychain'in verdiği parolaya ihtiyaç duymadan da saklayabilirsiniz.

Saklama

Anahtarınızı çok çeşitli şekillerde saklamanız mümkündür;

  • Kayıt medyası: Yedeğinizi; sabit sürücü, usb bellek, flash kart, cd-rw, dvd-r/+r, kağıt çıktısı gibi ortamlarda saklamanız mümkündür. Anahtar dosyası en fazla 4kb civarında olduğundan yer sıkıntısı çekmeyeceksiniz.

  • Saklama yeri: Yedeğinizi saklayacağınız yeri iyi seçmeniz gereklidir. Şayet evinizin soyulmasından endişeleniyorsanız ve bilgisayarınız ile birlikte yedeklerinizi aldığınız pahalı görünümlü sabit sürücünüz de elinizden giderse yedeğinizin size bir faydası olmayacaktır. Bu sebeple konum olarak yedeğinizin yerini ihtiyaçlarınıza göre seçmenizi öneririz.

  • Saklama koşulları: Yedeğinizi kaydettiğiniz medyanın saklama koşullarına uymanız şiddetle önerilir. CD medyalar zamanla disk rot riski içerir. Bu yüzden optik disklerde DVD+R veya Blurday kullanmanız ve kutusunda dikine nemsiz ortamda saklamanız önerilir.

Sabit diskler, usb bellek ve flash kartlar zamanla veri bozulmasına uğrayabilir. Sabit diskler bu bakımdan hareketli parçaları sebebi ile çok daha risk altındadır. Bu ortamları kullanırken dikkatli olunması ve iyi bir değerlendirme yapılması önerilir.

Kağıt bu açıdan akıllara son gelen seçenek olsa da insanlık tarihinin en dayanıklı kayıt ortamı olarak hala tartışmasız bulunmaktadır. Bu sebeple anahtarınızın bir yedeğinin kağıda basılmış olarak bir yerde saklanması fiyat/kafa rahatlığında tartışmasızdır. Anahtarınızın --armour yani base64 encode halini bir kağıda dümdüz basıp bir kenara kaldırabileceğiniz gibi geri dönüşümü karekodlar aracılığı ile kolaylaştırmak için paperbackup gibi bir araçtan da faydalanabilirsiniz. Kağıt yedek rehberimiz size bu konuda yardımcı olabilir. Yedeklerinizi katlamadan su geçirmez bir şekilde paketleyip ışık görmeyen bir yerde saklamanız önerilir.

Kıyamet!

Şayet kıyamet koparsa diye GPG'nin iptal sertifikası isminde bir seçeneği bulunmakta. Bu araç ile gpg size kısa bir çıktı vermekte ve anahtarınızı geri dönmeyecek şekilde kaybetmeniz durumunda anahtar sunucularına bu anahtarı göndermeniz ile anahtarınız kullanılmaz duruma gelmektedir. Şayet anahtarınızı güven oluşturmak için kullanıyorsanız küçük bir adım olarak bunu yapmanız önerilir.

İptal sertifikasını oluşturmak için GNU/Linux'ta uçbirim aracılığı ile şu komutu kullanabilirsiniz.

  • gpg --generate-revocation [anahtar kimliği veya e-posta adresi] > [sertifikanın kaydedileceği dizin]

  • GPG'ye ciddiyetinizi belirttikten sonra iptal için bir gerekçe girip dilerseniz yazılı bir gerekçe ekleyip sertifikayı üretim için onaylayın.

  • Anahtara ait parolanızı girdiğinizde iptal sertifikanız kaydedilmiş olacaktır. Bu dosyayı sayısal olarak veya bir kağıda bastırıp güvenli bir yerde saklayın.

  • Şayet iptal sertifikasını kullanmanız gerekirse iptal sertifikasını anahtar gibi import/içe aktar seçeneği ile GPG'ye girip gpg --send-keys [iptal sertifikasının dizini] komutunu kullanarak sunuculardaki anahtarınızı iptal edebilirsiniz.

Önerimiz

Şayet durum değerlendirmesi yapmak istemiyorsanız aşağıdaki tavsiyemizi değerlendirip çokça tehlikeye karşı kolayca güvende kalabilirsiniz.

  • Anahtarınızın yedeğini alın.

  • Anahtarınızı bir 2 adet DVD-R'ye(DVD'yi anahtar dosyanızın kopyaları ile tamamen doldurabilirseniz muhteşem olur) bir adet SD Karta kopyalayın ve 3 kopya paperbackup ile kağıda basın.

  • Her kağıt yedeğin yanına bir tane sayısal yedeği ekleyip katlamadan kilitli poşet içinde 3 örnek hazırlayın.

  • Bir örneği kendiniz evinizde, bir örneğini güvendiğiniz bir arkadaşınızda bir örneğini de şehir dışında güvenli bir yerde saklayın. Bu bilgiyi kimse ile paylaşmayın, yedekleri posta/kargo ile göndermeyin.

Paperbackup ile Kağıda Anahtar Yedeği Basmak

GnuPG ve SSH gibi araçlar ile kullandığımız asimetrik RSA anahtarları bilişim sistemlerine erişimde çok önemli bir yer kaplamaktadır. Bu bakımdan kullanıcıların bu anahtarlar ile şifreledikleri veya erişim imkanına sahip oldukları cihazlara bağımlılıkları oranında anahtarların da değeri artmaktadır. Bir anahtarın kaybı, şifrelenmiş verilere erişimi neredeyse imkansız hale getirdiği gibi erişim imkanı kaybedilen uzak sunucuların yarattığı sorunlar da tatsız olabilmektedir. Bu bakımdan anahtarların yedeklerinin alınması ve güvende tutulması çok önemlidir. Bu bakımdan pek az düşünülse de kağıt bu amaç için çok ideal bir ortamdır.

Kağıdın avantajları

  • Uzun ömürlülük: Kağıt, taş dışında bugüne kadar veri taşımayı başarmış en eski ortamlardan bir tanesidir. Antik Mısır papirüsleri'nin tarihi M.Ö 3000 yılına kadar gitmektedir. İlginç bir şekilde papirüs, kitap gibi bir yığın halinde bulundurulduğunda yangına karşı da bir hayli dayanıklıdır. Bu sayede kitaplar, yangına uğramış pek çok yapıdan kısmi zararlarla kurtarılabilmiştir. Günümüzde suya dayanıklı kağıtlar ve baskı teknolojilerinin geliştirilmesi ile birlikte, asitsiz kağıtların üzerine tonerle yapılmış bir baskıyı ömür bakımından yenebilecek pek az kayıt imkanı bulunmaktadır.

  • Maliyet: Kağıt, MB başına en ucuz kayıt medyası olmasa da şifreleme anahtarları gibi küçük verileri kaydetmek için çok ekonomik bir tercihtir. Bir yazıcı ve 5-20 sayfa arası kağıt ile bir GnuPG anahtarı rahatlıkla yedeklenebilmektedir. Baskı maliyetinin 0,05 TL civarında olduğunu varsayarsak, 1 liranın altında bir maliyetle yedekler almak mümkündür. Aynı zamanda evinize giren bir hırsız hard diskinize veya hard diskinizin takılı olduğu makineye göz dikebilir, fakat kimsenin bir deste kağıdı alma arzusu taşıyacağı düşünülmez.

  • Saklama kolaylığı: Kağıt yedekleri saklamak için çok özel şartlara ihtiyacınız yoktur. Sabit sürücü ve benzeri dijital kayıt ortamlarını nem, sıcaklık, sarsıntı gibi öğelerden korumak zorunda olduğunuz gibi, kimi zaman en iyi koşullarda saklanmalarına rağmen bozulmaları mümkündür. Buna karşın, bir poşete konmuş kağıtlar siz onları unutsanız dahi olduğu yerde sağlam kalmaya devam edecek ve gerekirse gözünüzle okunmanıza da imkan verecektir.

Kağıdın dezavantajları

  • Oluşturma: Dijital verilerin kağıt yedeklerini oluşturmak görece zor bir işlemdir. Dijital veriyi başka bir dijital ortama aktarmak günümüzde çocuk oyuncağı kıvamındadır, fakat kağıt gibi analog bir sisteme bunu güvenle ve emin bir şekilde aktarmak can sıkıcı olabilmektedir. Aynı zamanda dijital verilerin bastırılabilir şekilde kodlanmasının (encode) ve büyük boyutlu verilerin bastırılmasının çok fazla zaman ve kaynak harcaması bu durumu zorlaştırmaktadır.

  • Kurtarma: Eğer yedekten kurtarma yapılamıyorsa, yapılan şeye yedek demek pek mümkün değildir. Kağıdın bu konudaki avantajı, aynı zamanda bir dezavantajdır. Bastırdığınız kağıt üzerindeki dijital veriyi tekrar bilgisayara geçirmek için karekodlar, datamatrix veya OCR gibi teknikleri kullanmanız gerekmektedir. Bunun için bir tarayıcı vasıtasıyla kağıdı taramanız gerekecektir. En son çare olarak veriyi tek tek elle girme imkanınız da bulunmaktadır, fakat bu gerçekten son çare olacak kadar zahmetli bir süreçtir.

Paperbackup

Paperbackup, ASCII olarak kodlanmış dijital verilerin kağıt yedeklerinin kolayca çıkartılmasını sağlayan bir yazılımdır. Python ile geliştirilmiştir.

Her Python kodu gibi paperbackup da birtakım bağımlılıklara sahiptir. Aşağıdaki komutu çalıştırarak gereken bağımlılıkları sisteminize indirip kurabilirsiniz.

RPM kullanan dağıtımlar için (Red Hat, Fedora, CentOS vb.):

sudo yum install PyX enscript qrencode hashlib zbar
python3 -m pip install hashlib Pillow

APT kullanan dağıtımlar için (Debian, Ubuntu, Mint vb.):

sudo apt-get update && sudo apt-get install python3-pyx enscript python3-qrencode python3-zbar
python3 -m pip install hashlib Pillow

Anahtar veya veri yedeğini oluşturma

Öncelikle yedeğini alacağımız verinin ASCII olmasına veya dosya normalde binary ise base64 ile kodlanmış (encode) haline ihtiyacımız var.

GnuPG anahtarınızın yedeklemeye uygun halini çıkartmak için şu komutu çalıştırabilirsiniz:

gpg --export-secret-key --armour [anahtar ID] > anahtar_sec.asc

Alınan çıktı, bir metin editörüyle açıldığında şu şekilde görünmelidir:

-----BEGIN RSA PRIVATE KEY-----

MVp4OTNhQXNrSXNibzB2K1F0bEU3SzJ5MVhVSDdXc2F1eVZ5L0JidjREcjAKNU1xMzVMTnl0TDZp
ZDdpeXhKVlNoR3B5R0xCNU0zSkZ3Tk40SndrODM4a1hQSkQreW55SWdwS2ttRGdYNFNNQgpqSmxZ
MVc2TDk0NGc5MFRBRUJGUXZHMFdnQ1JzWXJtWjRuUHAvcmhLdzBGSUxzdzZSeXlBN0RpazQ2R0ND
a0VvClduYS9WZTcxejhsL1Fkako0bzdDNUhlb2pUWU4vaHROL2ZFejJKQSsyOGNoM05KcXZGUEtB
R2UzZmROdC9DTW4KSm5wR1lEWm1YMi8vWG4rdGlOMnpwWTZnc255Wm45RGcwVzVlK2k4WWRmdS9K
NjJnKzQvUlRtaVNTcmNuVjgzWgp0ZGlhdDJrWGhwbi8xS1pJRCtMWXZwNFE2cmJvVnBmMFhhTHJI
cEFRYnFFdndrVW5rVkc1K2c4T2prZzZTYlduCld1ZzUvaWh3a0RJWEZtOVhsRlpuby83RTY1V2Yr
aFVYZmJ0TkxwbHpJMlV4TS9remxWQUNQRXQ1UWpYVldhK0gKOWRSRzY0MXFHNERzaW9Oci8wQkIr
RHZFSTZaS1JIdTNnbzlpbmlkLzU0WUNPSldIVTUyRnl0YVdKdUw0QkpiOQpWcUd1V3NjYTZXejEw
UStXaDhvNkt1V0JCc2VPSnNxMEhiWVdsRHdEeTZVdm9LM1RKaE8wYzFQcmlvWFk3N0dpCjd5UXZs
WWtEb1hqVGFxbXRUbHBWaG13OG9DdG5teDZCeVdldEhhcmV4WXNIM21oTnc2OHZkNU9NV0V2ak1m
REEKeVNuUFdvbEV5WFVWR3FwdXkrS25XNnpjYlo4UStxTUxqOVdLZ0UrWTJtUy9jNHhrOHlmZzRx
Sk9rM1ZnWXl2cApDa3NOK2hrVnVQMnV5Nis2bGVmMmVUNHV1RjhJcmQxbnAycU1lOVpUSmY0Zndp
QUhtbjczcFZsbnpaL2RYSFpuCkVHNEl5NG15ZjByZUFTVTk3U0NZbW9sbWl6WTJjVDhhaFFOVWU4
VXk1cGlGcjRWb01OVktzVWl1REJaMVlDUEkKcXI5cGk3eWN0ZlRscUxWRitscHpZRE5ZRjZtK0JH
Vkx3aGQ2SmVyMWJKcllIbjJmc0FqblFqeDNNdFM3MXFMSApBUT09Cj1IUTlJCi0tLS0tRU5EIFBH

-----END RSA PRIVATE KEY-----

Eğer yedeğini almak istediğiniz veri başka bir şey ise, aşağıdaki komut aracılığıyla base64 ile kodlayarak yedeklemeye hazır hale getirebilirsiniz. Yedekleyeceğiniz veriden yaklaşık %25 daha büyük bir sonuç elde edeceğinizi unutmayın.

base64 -w 65 [yedeklenecek verinin yolu] > [kaydedilecek dosyanın yolu]

Yedeklenecek anahtarı veya veriyi hazır ettikten sonra, paperbackupı kurun.

Kağıt yedeği hazırlama

Öncelikle Paperbackup git deposuna gidin ve sağdaki yeşil renkli "İndir" düğmesini kullanarak paperbackupı indirin. Ayrıca aşağıdaki komut ile git deposunu bilgisayarınıza klonlayabilirsiniz.

git clone https://github.com/intra2net/paperbackup

İndirdiğiniz dosyayı bir yere çıkartın ve aşağıdaki komut ile paperbackupın olduğu dizine gidin.

cd [paperbackup dizini]

Daha sonra kağıt yedeğinizi PDF formatında hazırlamak için aşağıdaki komutu kullanabilirsiniz.

python3 paperbackup.py [yedek dosyasının dizini]

Betik işini yaptıktan sonra, çalıştırdığınız dizinde şu şekilde bir PDF dosyası sizi karşılayacak.

alt-text alt-text

Yedeği bastırma

Yedeğinizi bastırmak konusunda karar size kalmış durumda. Temel olarak dikkat etmeniz gereken unsurlardan biri eğer güvenlik gerektiren bir yedeği şifresiz olarak yedeklediyseniz baskı aracınıza ve ona ulaşmak için kullandığınız bağlantıya (ör. Yerel ağ yazıcısı) güvenip güvenmediğiniz sorusudur. Bu bakımdan en güvenilir yöntem PDF dosyasını bir USB belleğe alarak doğrudan yazıcıdan bastırmak veya bilgisayarınıza yazıcıyı USB ile bağlamaktır.

Kağıt ve yazdırma yöntemi size kalmış. Her türlü baskı beklentilerinizi fazlasıyla karşılayacak kadar uzun ömürlü olacaktır. Lakin asitsiz kağıda toner baskı en iyi sonucu size sağlayacaktır hem baskı kalitesi hem de ömür bakımından.

Yedeklernizi bastırdıktan sonra katlamayın ve bir zarf içinde veya daha iyisi su geçirmez bir poşet içinde saklamayı ihmal etmeyin. Yedeğinizi tarihlerseniz ileride bu bilgi işinize yarayabilir veya başka ileri tarihli yedekler almanız durumunda karışmasını engelleyebilir.

Kurtarma

Öncelikle kağıt yedeğinizi mümkün olan en yüksek çözünürlükte tarayın. Taramanızın sonucu olan PDF dosyasını paperbackup dizinine taşıdıktan sonra aşağıdaki komut ile kurtarabilirsiniz.

./paperrestore.sh [kurtarılacak PDF dizini] > kurtarma

Paperbackup ona verdiğiniz isimle dosyayı bulunduğu dizine kaydedecektir.

Okuma listesi ve benzer projeler

Kleopatra ile GPG İşlemleri

Kleopatra tüm işletim sistemleri ile kullanılabilir bir GPG önyüzüdür. Kolay GPG anahtar üretimi rehberinde kullanılan bu yazılım aynı zamanda GPG ile yapılabilen kimi kriptografik işlemleri de kullanıcılarına sunmaktadır.

Kleopatra'yı yüklemek için aşağıdaki komutları kullanabilir veya dağıtımınızın grafik yükleyicisini kullanabilirsiniz;

Debian/Ubuntu (APT): sudo apt-get install kleopatra

Red Hat/Fedora (RPM): sudo yum install kleopatra

Microsoft Windows : Gpg4win

alt-text

Şifreleme ve İmzalama

Kleopatranın ana ekranından İmzala/Şifrele ve/veya Doğrula düğmesi veya Dosya/İmzala/şifrele ve/veya Doğrula sekmesi üzerinden şifreleme ve/veya imzalama işlemine başlayabilirsiniz. Kleopatra size öncelikli olarak hangi dosyaya işlem yapmak istediğinizi soracaktır ve ardından size seçenekleri gösterecektir.

alt-text

Bu bölüm üç temel bölüme ayrılmıştır:

  • İmzalama

  • Dosyayı imzalamak için ilk bölümdeki kutunun seçilmesi ve sahip olunan özel anahtarlardan birinin yanda bulunan menüden seçilmesi gereklidir. Önünüzdeki pencereden sadece imzalama seçeneği seçili olur ise şifreleme yapılmadan sadece dosyaya ilişkin bir imza dosyası oluşturulacak ve aynı dizine .sig uzantısı ile kaydedilecektir.

  • Şifreleme

  • Dosyayı asimetrik şifrelemek için "Başkası içn şifrele" seçeneği seçilerek buraya umumi anahtarlar arasında bulunan bir anahtarın ismi veya e-posta adresi girilmeldir. Şayet bu aşamada "Benim için şifrele" seçeneğini seçer iseniz şifrelenen dosyayı daha sonra tekrar açmanız mümkün olur. Aksi takdirde şifrelenen dosya bir daha sadece şifrelenen kişi tarafından açılabilecekir.

  • Şayet şifrelemeyi bir parola ile simetrik olarak yapmak isterseniz "Parola ile şifreleme" kutusunu seçerek ilerlemeniz mümkündür. Şayet hem üst bölümde asimetrik şifrelemeyi hemde parola ile şifrelemeyi seçerseniz dosya her iki türlü de açılabilecektir.

  • Çıktı (Dosya/Dizin seçimi)

  • Çıktı Kleopatranın size ilk aşamada sorduğu dosyadır.

Anahtar yönetimi

Kleopatra ana ekranında cihazda bulunan tüm GPG anahtarlarını listeler. Bu listenin kapsamını arama barının sağ tarafındaki menüden değiştirebilirsiniz.

Anahtar yönetimine ilişkin ayarlara erişmek için ilgili anahtara çift tıklayın veya sağ tıklayıp menün en altındaki "ayrıntılar" sekmesini seçin.

alt-text

Anahtar imzalama

Anahtarı, kendinize ait bir anahtar ile imzalamak için görülen e-posta adresine sağ tıklayıp "onayla" seçeneğini seçin. Alternatif olarak bu işlemi ana menüde yine ilgili anahtarın üstüne sağ tıklayıp "onayla" seçeneğini seçerek de gerçekleştirebilirsiniz. Seçiminizi yaptıktan sonra karşınıza imza sayfası çıkacaktır.

alt-text

İmza sayfasından "next" düğmesi ile devam edip imza seçeneklerinin listeleneceği bölüme geçebilirsiniz.

alt-text

Bu bölümde iki tercihiniz bulunmakta:

  • Sadece benim için onayla: Cihazınızın yerel güven veri tabanına bu anahtarın güvenlilir olduğunu kaydedecektir. Bu güven ilişkisi bu anahtara sahip olan başkaları tarafından görülmeyecektir.

  • Görebilen herkes için onayla: Bu seçenek anahtarı kriptografik olarak imzalayacak ve anahtarın sizdeki kopyasını elde eden herkes tarafından doğrulanabilecektir. Şayet "sunucuya gönder" seçeneğini seçer iseniz imzalanmış anahtarı sunucuya yükleyerek bu güven ilişkisini tüm dünya ile paylaşabilirsiniz.

**ÖNEMLİ NOT:**Sunucuya gönderilen bilgiler daha sonra silinemez sadece geri alınabilir. İmzanızı sunucu ile paylaşırsanız duyduğunuz güveni ve ilişkiyi herkes ile paylaşmış olursunuz. Bu imzayı daha sonra geri alabilirsiniz ama imzanın bir zamanlar var olduğu her zaman sunucuda kayıtlı kalır.

E-posta adresi ekleme

Her yeni e-posta ile yeni bir anahtar oluşturmanız gerekmemekte. Bu sebeple yeni edindiğiniz bir e-posta adresinin bu anahtar ile kullanılabileceğini belirtmek için anahtarınızın kimlikleri arasında yeni bir e-posta adresi ekleyebilirsiniz. Bunun için "E-posta adresi ekle" düğmesine tıklayın. Karşınıza gelen sayfaya e-posta adresini girip ekleme işlemini tamamlayabilirsiniz.

alt-text

Tercihen bir yorum veya farklı bir isim girmek için "gelişmiş" seçenekleri açıp ekleme işlemini bu şekilde de yapabilirsiniz.

alt-text

Parola değiştirme

Anahtarınızın parolasını kötü bir çeviri ile "Parola metnini değiştir" düğmesi aracılığı ile değiştirebilirsiniz. Bu düğmeyi tıklamanız üzere Kleopatra size şu anda kullandığınız parolayı soracak ve ardından yenisini girmenizi isteyecektir.

alt-text

İptal sertifikası oluşturma

Anahtarınızın kontorlünü bir gün parolasını unutmanız veya anahtar dosyasını kaybetmeniz gibi bir sebeple yitirmeniz durumuna karşı bir iptal sertifikası oluşturabilirsiniz. İptal sertifikası bir anahtar gibi sunucuya yüklendiğinde ilgili olduğu anahtarı kullanılmaz olarak işaretlemeye yarar. Kısa bir anahtara benzeyen bu dosyayı kötü günlere karşı üretip bir kenara koymanız önerilir. Bunun için kağıt yedek rehberindeki yöntem önerilir.

Anahtarınıza ilişkin iptal sertifikasını "iptal sertifikası oluştur" düğmesine tıklayıp kaydedilmesini istediğiniz ismi açılan pencerede belirleyerek oluşturabilirsiniz.

alt-text

Anahtarın vadesini değiştirmek

GPG anahtarları belirli bir süre sonra kullanılmaz olarak işaretlenebilirler. Bu anahtarın kontrolünü kaybetmeniz durumunda yenileme işlemini yapamamanız sonucunda gerçekleşir. Bu süreyi dilediğiniz gibi ayarlayabilirsiniz. Bir veya iki yıl uygun bir süre olarak öngörülebilir.

Ayarı yapmak için "bitiş tarihi" sütünunun yanındaki düğmeyi kullanarak açılan takvimden yeni tarih belirleyebilirsiniz.

alt-text

alt-text

İmzaları incelemek

GPG anahtarları başka kullanıcıların anahtarları imzalanarak güven ağı oluşturulur. Bu imzaları görerek anahtara imza atan diğer anahtarları incelemek için "Certification" düğmesini tıklayarak ilgili bölümü açmanız mümkündür.

alt-text

Umumi anahtarı dışa çıkartmak

Kleopatra ana menüsünde bir anahtarın üzerine sağ tıklayı "Dışa aktar" seçeneğini seçerek umumi anahtarı bir dosyaya kaydetmek mümkündür. Bu sayede anahtar şifreleme yapmak üzere dağıtılabilir ve e-posta gibi iletişim araçları ile paylaşılabilir.

alt-text

Özel anahtarı dışarı çıkartmak

Umumi anahtar gibi özel anahtar da aynı menüden "Gizli anahtarı dışa aktar" seçeneği ile bir dosyaya kaydedilebilir. Kleopatra sizden bu işlemi gerçekleştirmek için anahtarın parolasını talep edecektir.

alt-text

ÖNEMLİ NOT: Özel anahtar güvenliğiniz için çok önemlidir. Bu anahtarı ele geçiren bir kişi sizi taklit edebilir ve şifrelediğiniz dosyaları açabilir. Bu sebeple bu anahtarı kimse ile paylaşmamalı ve anahtar dosyalarını çok dikkatli saklamalısınız.

Sunucuya anahtar göndermek

Hem kendi umumi anahtarınızı hem de diğer umumi anahtarları, anahtar sunucularına göndermeniz mümkündür. Bunu bir anahtarı imzaladığınızda veya anahtarınızda değişiklik yaptığınızda değişikliklerinizi ilan etmek için yapmalısınız. Bir anahtarın üstüne sağ tıkladıktan sonra açılan menüden "sunucuya gönder" seçeneği ile işlemi gerçekleştirebilirsiniz.

Kleopatra haklı olarak aşağıdaki uyarıyı karşınıza çıkaracaktır. Uyarıyı dikkate alarak hareket etmeniz tavsiye edilir.

alt-text alt-text

Sunucuda anahtar aramak

Kleopatra ile bir e-postaya ait anahtarı anahtar sunucularında arayabilirsiniz. Bunun için Kleopatra'da Dosya menüsünden "sunucuda ara" seçeneğini seçip karşınıza gelen ekrande isim veya e-posta adresi ile arama yapıp dilediğiniz anahtarı "içeri aktar" düğmesi ile indirebilirsiniz.

alt-text

Kleopatra herkese açık sunuculardan indireceğiniz bir anahtarın ismi yazan kişiye veya e-postaya ait olmadığına dair haklı bir uyarıyı size gösterecektir. Bu uyarıya uygun olarak anahtarlarınızı belirtilen şekillerde doğrulamanız veya imza kontrolü yapmanız önerilir.

alt-text

GPG ile Komut Satırında işlemler

GPG temel olarak komut satırında çalışan bir yazılımdır. Bu bakımdan grafik arayüzler tarafından sunulmayan pek çok faydalı özelliği uçbirim aracılığı ile kullanmak ve kimi zaman grafik arayüzlerin sunduğu işlevleri daha kolay yerine getirmek mümkündür. Pek çok kullanıcı için uçbirim korkutucu olabilmektedir. Lakin her Gnu/Linux cihazda bir uçbirim ve GPG kurulu olduğu düşünüldüğünde GPG'nin evrensel kullanımı uçbirimde toplanmaktadır.

GPG'nin man sayfası çok kalabalıktır. Bu rehberde son kullanıcıya lazım olabilecek temel ve orta seviyedeki işlevler ipuçları ile birlikte sunulacaktır. Şayet GPG ile ilgili daha çok şey öğrenmek istenirse aşağıdaki komut ile man sayfasının okunması veya pratik olarak yardım sayfasının çağrılması mümkündür.

man gpg ve gpg --help

Şifreleme ve İmzalama

Uçbirim aracılığı ile e-posta şifreleme, imzalama ve deşifre rehberine bu başlıktaki detaylar için başvurulabilir.

Simetrik şifreleme

GPG sadece RSA ve ECC gibi asimetrik şifreleme algoritmalarını değil aynı zamanda AES gibi simetrik şifreleme imkanlarını da sunmaktadır. Bu şifreleme yönteminde bir parola hem şifreleme hem deşifre için kullanıldığından özel bir anahtar yönetimine ihtiyaç duyulmaz ve kimi zaman kullanımı tercih edilebilir.

Bir mesajı veya dosyayı simetrik olarak şifrelemek için aşağıdaki komutları kullanabilirsiniz:

gpg --symmetric --armor veya gpg -ca

Bir dosyayı şifrelemek isterseniz aşağıdaki komutu girebilirsiniz. GPG şifrelenmiş dosyayı .asc uzantısı ile aynı yere kaydedecektir:

gpg --symmetric --armor [dosya dizini]

Şifrelediğiniz veriyi aynı zamanda bir anahtarınız var ise imzalayarak sizden geldiğine ve bütünlüğüne kanıt oluşturabilirsiniz.

gpg --symmetric --sign --armor veya gpg -csa

İmzalama

GPG birden fazla şekilde imzalama yapabilmektedir. Her imzalama tipi iletim ve gereken karakter bakımından farklılık arz ettiğinden kullanıcının beklentisine göre tercih yapması mümkündür.

Clear-sign

Clear-sign veya açık imza imzalanan içeriğin okunabilmesine imkan sağlamaktadır. Bu sayede mesajınız gözle okunabilirken dileyen biri altında bulunan imza bloğu ile birlikte mesajınızın doğruluğunu denetleyebilmektedir. Bu şekilde bir mesaja imza atmak isterseniz aşağıdaki komutu girip mesajınızı yazın ve ctrl + D komutu ile sonlandırın.

gpg --clear-sign

Embeded-sign

Embeded veya gömülü imza, mesaj ve imza bloğunun tek bir base64 bloğunda kodlanması ile ortaya çıkar. Bu mesaj şifreli olmamakla birlikte okunabilmesi için yine de çözülmesi gereklidir. Bu şekilde bir imza elde etmek için aşağıdaki komutu girip mesajınızı yazın ve ctrl + D komutu ile sonlandırın.

gpg --sign --armor

Detached-sign

Detached veya ayrık imza, imzalanan veri ile imza bloğunun ayrı dosyalar olması anlamına gelmektedir. Çoğunlukla dijital verilerin doğruluğunu göstermek için kullanır. Dosyanın yanında aynı isimde .sig uzantılı imza dosyası da gelir. Bu tip bir imza oluşturmak için aşağıdaki komutu kullanabilirsiniz. GPG imza dosyasını imzalanan dosyanın yanına .sig uzantısı ile ekleyecektir.

gpg --detached-sign [dosya dizini]

Şayet imzayı metin olarak aktarmayı düşünüyorsanız --armor parameteresini ekleyerek base64 kodlama ile aynı işlemi gerçekleştirebilirsiniz.

gpg --detached-sign --armor [dosya dizini]

İmza denetleme

GPG ile imzalanmış bir metni doğrulamak için aşağıdaki komutu kullanıp mesajı yapıştırdıktan sonra ctrl + D komutu ile işlemi tamamlayabilirsiniz.

gpg --verify

Şayet bir dosyaya ait .sig uzantlı imzayı denetleyecekseniz ve dosya ile imza dosyasının adı aynı ise aşağıdaki komutu kullanabilirsiniz.

gpg --verify [imza dosyası.sig]

Umumi anahtarları listeleme

GPG kullanımı iletişime geçeceğiniz kişilerin umumi anahtarlarını da bulundurmanızı gerektirmekte. Bu anahtarlar bir fihrist gibi cihazınızda tutulmaktadır. Bunları listelemek için aşağıdaki komutu kullanabilirsiniz.

gpg --list-keys

Anahtarlığınızdaki belirli bir anahtarı arıyor iseniz aşağıdaki şekilde arama yapabilirsiniz.

gpg --list-keys [anahtar ID veya e-posta]

Özel anahtarları listeleme

Şayet size ait özel anahtarlarınızı listelemek isterseniz aşağıdaki komutu kullanabilirsiniz.

gpg --list-secret-keys

İmzaları listeleme

Anahtar imzalarını kontrol etme

Umumi anahtar dışa çıkartma

Sunucuda anahtar arama

Sunucuya anahtar gönderme

Anahtarları güncelleme

Anahtar içe aktarma

Anahtar düzenleme

Anahtar imzalama

GPG Anahtarları ile Güven Ağı Oluşturmak

Güven ağı en basit anlamı ile bir kimlik yönetimi şeklidir. Günlük hayatımızda kimin kim olduğunu söyleyenin bir çeşit otorite olması durumunun aksine güven ağında her kişi kimliğinin ve topluluğun güveninin kaynağıdır.

Basitçe güven ağı, tanıdıklarınızın tanıdıklarına güvenmenizdir. Aynı şekilde sizi tanıyan insanlara güvenenler de sizin söylediğiniz kişi olduğunuza güvenir.

GPG neden güven ağına ihtiyaç duyar

GnuPG sadece bir şifreleme aracı değil aynı zamanda bir kimlik aracıdır. Bu kriptografik imza yöntemi ile anahtarın sahibinin bir bilginin kendisine ait olduğunu kanıtlaması gibi kendisinin söylediği kişi olduğunu da kanıtlamasını sağlar. Bu neden ile GPG inkar edilebilir şifreleme sunmaz ve bu neden ile çoğu GPG kullanıcı anahtarlarında gerçek adlarını ve e-posta adreslerini bulundurur. Çünkü amaç kişinin kendini kanıtlamasıdır.

Pek çok devlet ve şirket kaynaklı kimlik yönetim sisteminin aksine GPG merkezi bir otoriteye dayanmaz. Bu neden ile herhangi bir kişi istediği isimle veya bilgiyle bir anahtar oluşturabilir ve bunu hiçbir sorunun sorulmadığı anahtar sunucularına yükleyebilir. Bu sebepten tanınmış kişilerin ismine pek çok sahte anahtar bulunmakta, gerçek insanların anahtarlarında da belki binlerce sahte imza bulunmakta. Bu vahşi batı düzenine çözüm olarak kısmen daha merkezi sistemler ve başkaca güven kaynakları ile desteklenmiş çözümler önerilmekte ise de güven ağı hala bireyin en güçlü olduğu, en özgürlükçü sistemdir.

Güven ağı nasıl kurulur

Bir GPG anaharı sahibi iseniz çevrenizde tanıdığınız GPG kullanıcılarının anahtarlarını imzalayarak kendi güven ağınızı oluşturabilirsiniz. Bunun için Kleopatranın grafik arayüzünden veya doğrudan uçbirim aracılığı ile imzalama işlemlerini yapabilirsiniz.

Bir anaharı imzalamak için sırası ile aşağıdaki işlemleri yapmanız gereklidir.

  1. İmzalanacak umumi anahtarı bulup indirmek
  2. Anahtarı imzalamak
  3. Anahtarın sahibine imzalı anahtarı dışa akarıp göndermek veya bir anahtar sunucusuna yüklemek.

İmzalama işlemini yaptıktan sonra şayet imzaladığınız anahtarın güven değerine bakarsanız en yüksek değerde olduğunu göreceksiniz.

gpg --gpg --list-keys [anahtar ID veya e-posta]

pub   rsa4096 2013-07-20 [SC]
      67819B343B2AB70DED9320872C6464AF2A8E4C02
uid           [  full  ] Richard Stallman <rms@gnu.org>
sig!3        2C6464AF2A8E4C02 2013-07-20  Richard Stallman <rms@gnu.org>
sig!3        170AF0E2954295DF 2017-06-21  Ian Andrew Kelling <ian@iankelling.org>
sig!         42272957268B3FCA 2020-03-18  Alper Atmaca <alper@oyd.org.tr>
sub   rsa4096 2013-07-20 [E]
sig!         2C6464AF2A8E4C02 2013-07-20  Richard Stallman <rms@gnu.org>

gpg: 4 good signatures
gpg: 202 signatures not checked due to missing keys

Bu noktadan sonra sizi tanıyan ve anahtarınıza güvenen kişiler imzaladığınız anahtarın da belirtilen kişiye ait olduğuna güvenecekler. Elbette tek imza tam anlamı ile yeterli olmamakta ve GPG belirli bir güvenilir imza isteyecektir. Bu bakımdan bir güven ağı ne kadar sık dokunduysa o derecede güvenilir olacaktır.

Kendi güven ağınızı oluşturduktan sonra yapmanız gereken tek şey bu ağı tüm dünyadaki güven ağına bağlamaktır. Bunun için grubunuzdan bir kişinin güvenilen, anahtarında çokça geçerli tanınmış insanların imzası olan bir kişiye ulaşması ve anahtarını imzalatması gereklidir. Bu olduğunda sizin küçük güven ağınız tüm dünyadaki GPG güven ağının bir parçası olur.

Güven ağının temelleri

Şayet herkes koşulsuz şartsız herkesin anahtarını imzalıyor olsaydı bir "güven" ilişkisinden söz etmemiz mümkün olmazdı. Bu bakımdan bir kişinin anahtarını imzalamak size güvenen herkesin güvenine karşı bir sorumluluk taşıdığından bu eylemi dikkatli bir şekilde gerçekleştirmeniz gerekmektedir.

Neredeyse 30 yıldır hayatta olan güven ağı dünyada kabul edilmiş kimi kurallara göre işler. Bu kurallara bağlı olarak güven ağınızı oluşturmak hem sizin hem de tüm GPG kullanıcıları için çok ama çok önemlidir.

  1. Yüz yüze tanışmadığınız kimsenin anahtarını imzalamayın
  2. Tanıştığınız kişilerin söyledikleri kişiler olduğunu mümkün ise birden fazla fotoğraflı resmi kimlik ile doğrulayın
  3. Anahtar parmakizlerinin tamamını kontrol edin ve anahtardaki bilgilerin kimliklerindeki bilgiler ile eşleştiğinden emin olun.

Yukarıdaki kurallar olmazsa olmaz detaylar olmakla birlikte hem kendi anahtarınızdaki gereksiz imzaları azaltmak hem de boş yere imza atmamak için aşağıdaki kuralları da kendi rızanıza göre getirebilirsiniz. Bu özellikle anahtarınıza olan güven büyük ise daha da önem kazanır.

  • İmzalayacağınız anahtarda bulunan e-postaların gerçekten o kişi tarafından kullanıldığını doğrulamak yerinde olabilir. Her ne kadar o kişi dediği kişi olsa da e-postaların gerçek sahibi olmayabilir. Bunu gerçekleştirmenin en kolay yolu kişiden o anahtar ile imzalı bir e-posta talep etmektir.

  • Kişi GPG anahtarına hala sahip mi? Pek çok insan bir GPG anahtarı oluşturup ya anahtar dosyasını ya da parolasını kaybederek erişimlerini yitiriyorlar. Bu hayalet anahtarlar sonsuza kadar anahtar sunucularında kaldığından siz de boş yere imza atmış ve ihtimalen güvensiz bir anahtara güven oluşturmuş oluyorsunuz Bu bakımdan yine imzalı bir e-posta bu durumun da kanıtı olabilir.

  • Kişi söz konusu anahtara ne kadar süredir sahip olduğu bilgisi kişinin ciddi bir GPG kullanıcısı olup olmadığının da belirtisi olabilir. Şayet anahtarını yeni oluşturmuş ve bir deney olarak bulunduran bir kişiye güven teslim etmek anahtarı kaybetmesi durumunda yukarıdaki durumu yaratabileceğinden belki bir süre anahtara sahip olması üzerine anahtarını imzalamanız yerinde olabilir.

  • Kişinin anahtarını ait olduğu alanlarda ilan etmesi anahtarına olan hakimiyetinin de göstergesi olabilir. Pek çok kişi anahtarının parmak izini ait oldukları sosyal medya kanallarında görünür kılmaktadır. Bu durumun imzalama yapılmadan incelenmesi güven ilişkisini pekiştirebilir.

  • Kişi anahtar imzalamanın ve güven ağına dahil olmanın sorumluluklarının farkında olmalıdır. Bu bakımdan imzalanacak anahtarın sahibi ile kısa bir GPG muhabbeti kişinin sizin ona vereceğiniz güveni koruyup koruyamayacağına dair çok şey söyleyebilir.

  • Anahtarın genişliği 2048 bit'ten fazla değil ise çok geçmeden eskiyecek ve güvenli kabul edilmeyecek bir anahtar söz konusudur. Şayet bu anahtarı kullanan kişinin özellikle daha düşük boyutta bir anahtar kullanmak için özel bir gerekçesi yok ise anahtarı imzalamayı bir kere daha düşünebilirsiniz.

Yalnız mısınız

Pek çok yeni GPG kullanıcısı için bu bir gerçeklik olabilir. Keza GPG kullanıcısı sayısı fazla olmamakla birlikte bu kişileri tanımak da genellikle bilişim ve özgür yazılım camialarından olmayan insanlar için zor olabilmektedir. Bu durumun sizi yıldırmasına izin vermemelisiniz. Öncelikle bir GPG anahtarı sahibi olmak kendi başına çok kullanışlı ve genel bilişim güvenliğinize çok fazla katkı sunacak bir ayrıcalıktır. İkincisi tüm dünyada sizi sıcak karşılayacak ve güven ağlarına dahil edecek topluluklar bulunmaktadır.

Türkiye'de bu toplulukların başında, bu rehberin de yaratıcısı olan Özgür Yazılım Derneği ve Hackerspace İstanbul gelmekte ve Türkiye'deki uluslararası bağlantıya sahip en önemli güven ağının da merkezinde bulunmaktadır. İki topluluk da belirli aralıklarla İstanbul'da ve mümkün olursa başka illerde uluslararası bir etkinlik olan Cryptoparty düzenlemektedir. Cryptoparty'ler katılımcıların birbirlerine yardım ederek güvenli iletişim araçlarını kullanmayı kolaylaştırmak ve GPG anahtarlarını imzalayarak yerel güven ağları oluşturmak üzere gerçekleştirilir. Türkiye'de gerçekleştirilen etkinlikleri Cryptoparty İstanbul adresinden veya Özgür Yazılım Derneği'nin iletişim kanallarından takip edebilirsiniz.

Ek okuma listesi

Web Key Directory ile GPG Anahtarı Paylaşımı

GPG ile e-posta şifrelemenin bugüne kadar en dertli görülen ve eleştirilen yönü yazışılan kişilerin anahtarlarının güvenli şekilde bulunması ve kullanılması olmuştur. Keza güven ağı(WOT); kullanıcıların bilinçli olarak birbirlerinin anahtarlarını imzalamalarını ve sunuculara yüklemesini, bu ağa dahil olmayan birinin de anahtarı bilinçli bir çaba ile kimi zaman karmaşık süreçlerden geçerek bulması, indirmesi ve kullanmasını gerektirmekte. Hala bu güven ağı sistemi kullanıcıya en fazla özerkliği veren en dağıtık güven sistemi olmakla birlikte anahtar keşfinin zorluğu kimi zaman e-postaların şifreli olması ile olmaması arasındaki farkı belirlemekte.

Web Key Directory(WKD) yeni bir anahtar keşif yöntemi olarak GPG kullanımını çok kolay ve otomatize bir hale getirmeyi hedeflemektedir. WKD basit bir mantığa dayanır: her e-posta adresinin bir alan adı vardır; örneğin, "@oyd.org.tr". Bu alan adını tarafından işaret edilen sunucuda belirli bir dizinin altında GPG anahtarının bulunması durumunda WKD destekleyen e-posta istemcileri ve hizmet sağlayıcıları bir e-posta adresine ait anahtarı otomatik olarak elde edebilmekte. Bu sayede kullanıcıya sadece e-posta adresini yazmak ve "şifrele" demek kalmakta.

WKD Kurulumu

Openpgp.org aracılığı ile

Eğer alan adınıza ait bir sunucunuz yok ise bir alan adı kaydı girerek keys.openpgp.org sunucularının anahtarınızı talep edenlere sunmasını sağlayabilirsiniz. Bunun için öncelikle anahtarınızı openpgp.org sunucularına yüklemelisiniz.

NOT: keys.openpgp.org anahtar sunucuları klasik güven ağının temeli olan sunucu federasyonuna kapalıdır. Bu güvenilirlik, kötüye kullanımı engellemek ve mahremiyet gerekçeleri ile temellendirilmektedir. Bu sebepten Openpgp.org sunucularındaki anahtarlar diğer sunucularla eşitlenmez.

NOT2: Aynı zamanda bu anahtar sunucusu anahtar talepleri üzerinden yazışma trafiğinizin üstverisine erişebilir. Bu sebepten bir mahremiyet endişesi doğmaktadır.

Alan adınızın ayarlarından aşağıdaki şekilde bir CNAME kaydı girmelisiniz:

openpgpkey.(alanadınız) CNAME wkd.keys.openpgp.org

DNS ayarlarında CNAME kaydını "tip" olarak adlandırılan bölüme girmelisiniz. "Name" yani isim bölümüne "openpgpkey(alanadı)" şeklinde (ör:openpgpkey.oyd.org.tr) giriş yapmalısınız. "Target" yani hedef olarak adlandırılan alana da "wkd.keys.openpgp.org" girişi yapılmalı.

Bu ayarı gerçekleştirdikten sonra DNS yöneticinizin yenileme süresine bağlı olarak DNS yönlendirmeniz yapılacaktır. Bunu denetlemek için aşağıdaki komutu uçbirimde çalıştırabilirsiniz.

drill openpgpkey.(alanadınız)

Şayet "ok" cevabı alırsanız DNS kaydınız sorunsuz şekilde çalışmaktadır.

DNS kaydının ardından openpgp.org sunucusuna anahtarınızı yüklemeniz gereklidir. Bunun için öncelikle umumi anahtar dosyanızı çıkartmanız gereklidir. Bu konuda yardım almak için Uçbirimde GPG işlemleri ve Kleopatra GUI ile GPG işlemleri rehberlerinden yardım alabilirsiniz.

Anahtarınızı yüklemek için sunucunun web sayfasındaki upload(yükle) bağlantısına tıklayıp anahtarınızı yükleyebilirsiniz.

alt-text

alt-text

Anahtarınızı yüklemenizin ardından openpgp.org sizden anahtarınızda bulunan e-posta adreslerine bir doğrulama e-postası atarak sizden doğrulama talep edecektir.

alt-text

Bu işlemleri gerçekleştirmeniz ardından anahtarınız sunucuda listelenmeye başlayacaktır. Tek yapmanız gereken açılış ekranındaki arama barından tam e-posta adresi ile arama yapmak.

Kendinize ait sunucunuzda

Buraya katkı verebilirsiniz

WKD destekleyen e-posta sağlayıcılar

Giderek yaygınlık kazanmakta olan WKD kimi e-posta sağlayıcılar tarafından otomatik olarak desteklenmeye başlamıştır. Aşağıdaki e-posta sağlayıcıların gnupg.org listesinde WKD desteklediği belirtilmiştir.

Posteo

Protonmail

netzguerilla

GnuPG ile Git kullanımı

GnuPG'nin en önemli özelliklerinden biri, imzalama yoluyla bütünlük ve kimlik doğrulaması yapılabiliyor olmasıdır. Bu özelliğinden yararlanmak için GnuPG, Git ile entegre edilebilmekte ve Git commit'leri GnuPG anahtarıyla imzalanabilmektedir. Pek çok Git önyüzü dahili olarak GnuPG destekler.

Git commit'leri GnuPG ile imzalandığında ilgili kodu yazan kişinin gerçekten istenen kişi olduğu doğrulanmış olur ve böylece projeye istenmeyen kodların sokulması veya olası bir giriş bilgilerinin çalınması durumunda projenin sabote edilmesi engellenir.

GitHub'a GnuPG anahtarının eklenmesi

GitHub üzerinde GnuPG ile imzalanmış commit'lerin gözükmesi için öncelikle GitHub hesabınıza GnuPG anahtarınızı eklemeniz gerekir. Bunun için hesabınıza giriş yaptıktan sonra, sağ üst köşedeki profil fotoğrafınıza tıklayıp, "Settings"e basın.

GitHub ana sayfa

Ardından açılan ayarlar sayfasında sağdaki menüde bulunan "SSH and GPG Keys" sayfasına gidin.

GitHub ayarlar

Bu sayfada yer alan "New GPG Key" butonuna basın ve çıkan kutuya GnuPG açık anahtarınızı (public key) yapıştırın. Açık anahtarınızı anahtar sunucularından kolayca kopya-yapıştır yapabilir ya da gpg --export --armor <key-id> | xclip komutunu çalıştırdıktan sonra orta fare tuşuyla yapıştırabilirsiniz. Ardından "Add GPG Key" butonuna tıklayın.

GitHub GPG key ekleme

Parolanızı girdikten sonra anahtarınız GitHub hesabınıza eklenecektir.

GitHub anahtar

Bu noktadan itibaren artık depolara attığınız commitler aşağıdaki gibi doğrulanmış olarak gözükecektir.

GitHub verified

GitLab'a GnuPG anahtarının eklenmesi

GitLab'a giriş yaptıktan sonra sağ üst köşedeki profil fotoğrafınıza tıklayıp "Preferences" seçeneğini seçin.

GitLab giriş

Ardından açılan ayarlar sayfasında sağ tarafta bulunan "GPG Anahtarları" bağlantısına tıklayın.

GitLab GPG Bağlantı

Gelen sayfada bulunan kutuya GnuPG açık anahtarınızı (public key) yapıştırın ve "Anahtar ekle" butonuna basın.

GitLab anahtar ekleme

Parolanızı girdikten sonra eklenmiş anahtarı görebilirsiniz.

GitLab anahtar

Bu noktadan itibaren artık commitleriniz aşağıdaki gibi doğrulanmış olarak görünecektir:

GitLab verified

Gitea'ya GnuPG anahtarının eklenmesi

Gitea'ya giriş yaptıktan sonra sağ üst köşedeki profil fotoğrafınıza tıklayın ve açılan menüde "Ayarlar" butonuna basın.

Gitea giriş

Ardından açılan ayarlar sayfasında yukarıdaki barda yer alan "SSH/GPG Anahtarları" bağlantısına tıklayın.

Gitea ayarlar

Açılan sayfada "GPG Anahtarlarını Yönet" kısmından "Anahtar ekle" butonuna basın, aşağıda çıkan kutuya açık anahtarınızı (public key) yapıştırın.

Gitea anahtar ekleme

Parolanızı girdiğinizde anahtarınız eklenmiş olacaktır.

Gitea anahtar

Bu noktadan itibaren imzalanmış commitleriniz aşağıdaki gibi görünecektir:

Gitea verified

Git ile commitlerin imzalanması

Git commitlerinizi GnuPG ile imzalamak için öncelikle Git yapılandırmasına imzalama yapacağınız anahtarın ID'sini vermeniz gerekir. GnuPG anahtarınızın ID'sini öğrenmek için aşağıdaki komutu çalıştırabilirsiniz:

gpg --list-secret-keys --keyid-format LONG

Şu şekilde bir çıktı almanız gerekir:

sec>  rsa4096/2D33E2BD3D975818 2017-11-21 [SCA] [son kullanma tarihi: 2022-11-20]
      D854D9D85CB4910704BD9C5B2D33E2BD3D975818
      Kart seri no. = 0006 09717516
uid                 [   son  derece   ] Özgür Yazılım Derneği <bilgi@oyd.org.tr>
ssb>  rsa4096/C05499B96147B6F0 2017-11-21 [E] [son kullanma tarihi: 2022-11-20]

Burada yer alan 2D33E2BD3D975818 anahtar ID'nizdir.

Aşağıdaki komutu çalıştırarak GnuPG anahtarınızı Git yapılandırmasına ekleyebilirsiniz:

git config --global user.signingkey 2D33E2BD3D975818 (kendi anahtar ID'nizle değiştirmeyi unutmayın)

GnuPG anahtarınız Git yapılandırmanıza eklenmiş oldu. Bu noktadan itibaren, commit atarken -S parametresi verdiğinizde commitiniz imzalanacaktır. Örneğin:

git commit -S -m "Fix #41"

Eğer tüm commitlerinizin varsayılan olarak imzalanmasını istiyorsanız aşağıdaki komutu çalıştırabilirsiniz:

git config --global commit.gpgsign true

Eğer imzalama yapmaya çalıştığınızda GnuPG hata veriyorsa, gpg yerine gpg2 kullanıyor olma ihtimaliniz vardır. Bunu çözmek için aşağıdaki komutu kullanabilirsiniz:

git config --global gpg.program gpg2

Şifreli E-Posta

E-posta nedir?

Günümüzde e-posta kullanmayan neredeyse kimsenin kalmadığı düşünüldüğünde bu soru anlamsız gelebilir lakin e-postanın güvenliğinden bahsedilmeden önce güvenli kılınmaya çalışılan şeyin tanınması gereklidir.

E-posta İnternet'in ilk yazışma sistemidir. Bugünlerde sayısız yeni iletişim sistemi, yazılımı geliştirilmiş olsa da e-posta hala önemini korumaktadır. E-postayı bu bakımdan değerli kılan özelliklerin başında sistemin federatif olması ve kullanıcıların bir web tarayıcısından başka bir araca ihtiyaç duymaması gerelebilir.

E-posta federatif olmasının bir özelliği olarak kullanılan hizmet sağlayıcı/sunucu ve yazışılan diğer kişilerin kullandığı sistemler gibi pek çok üçüncü kişiye güven gerektirmektedir. Bu durum sistemi güvenli kılmayı da görece zorlaştırmaktadır. TLS tüm İnternet ile birlikte e-posta güvenliğini de arttırmıştır. Lakin TLS'in yaygınlaşmasından önce Edward Snowden kamu ile paylaştığı bilgiler ışığında ABD'nin tüm dünyanın e-posta iletişimini takip edip analiz ettiği ortaya çıkmıştır.

TLS ile genel olarak e-posta sunucunuz ile aranızdaki iletişim şifreli olsa da posta kutunuzda duran e-postalar hala okunabilir durumdadır. Gözetim kapitalizmi bu e-postalarınızı okuyarak size bir şeyler satmaya çalışabilir veya kanuni olsun olmasın devletler e-postalarınıza sunucuları ele geçirerek erişebilir. Bu durumu engellemenin gerçekten tek yolu e-postalarınızı şifrelemektir!

E-posta nasıl şifrelenir?

GnuPG e-posta şifrelemenin en yaygın ve güvenilir aracıdır. GNU Privacy Guard veya kısaca GPG olarak bilinen yazılım bugün sadece e-postalarınızı şifrelemenin dışında pek çok kriptografik işlem için kullanılabilecek çok amaçlı bir yazılımdır.

"Pretty Good Privacy" ismi ile Phil Zimmerman tarafından 80'lerde ABD'de yazılan PGP, ülkedeki gelmesi beklenen şifreleme yasaklarına karşı geliştirilip dünya ile paylaşılmıştır. ABD ve RSA şirketinin açtığı dava üzerine yazılımın kaynak kodu, anayasal korumadan faydalanmak adına kitap olarak basılıp yayınlanmıştır. Zimmerman'ın PGP'yi satması ile bugün özgür bir yazılım olarak GnuPG ismi ile hayatına devam etmektedir.

GnuPG ile e-postalarınızı ve eklerini şifreleyebilir, size ulaşan e-postanın değiştirilmediğini bilebilir veya gönderen kişinin kimliğini doğrulayabilirsiniz. GnuPG, merkezi bir otoriteye dayanmadan insanların arasında bir güven ilişkisi kurulmasına imkan verir. Bu bakımdan GPG günümüzdeki en özgürleştirici şifreleme yazılımıdır.

GnuPG anahtar üretimi için rehberimize danışabilirsiniz.

Webmail kullanarak e-posta şifrelenebilir mi?

Açıkçası, şifreli e-posta göndermenin en iyi yolu Thunderbird gibi bir istemci ile Enigmail benzeri bir eklenti kullanmaktır. Böylece şifreleme işlemi tamamen bilgisayarınızda güvenli şekilde gerçekleşir. Bu yöntemin kurulumu için GnuPG ile e-posta şifreleme rehberimize bakabilirsiniz.

Şayet kullandığınız e-posta hizmeti istemci üzerinden bağlanmanıza imkan vermiyor veya başka bir sebepten istemci kullanmak istemiyorsanız bir tarayıcı eklentisi ile e-postalarınız şifrelemeniz mümkün. Mailvelope veya FireGnuPG gibi eklentiler tarayıcınızda şifreleme işlemini gerçekleştirebilir.

Şifreli e-posta imkanını webmail olarak sunan hizmet sağlayıcılar da bulunmaktadır. Söz konusu şirketlerin sayısı günümüzde giderek artmakta olsa da farklı teknolojilerle farklı çözümler sunan bir tanesini seçmek için şifreli e-posta hizmetleri rehberimize başvurabilirsiniz.

Şifrelenmiş e-posta neyi korumaz?

E-posta gibi asimetrik bir iletişim yöntemini şifrelemeye çalışmanın bazı eksiklikleri ve dikkat edilmesi gereken noktaları vardır.

  • GnuPG, kullandığınız yönteme göre e-postalarınızın başlığını şifrelemeyebilir. Çoğunlukla e-postanın başlığı e-postanızın içeriği hakkında çok şey söyleyebileceği için bu hususa dikkat edilmelidir. Başlıkları şifrelemek de posta kutusunda e-posta aramayı çok zor kılmaktadır. Bu bakımdan tercihin bilinçli yapılması önemlidir.

  • GnuPG ile şifrelemiş olsanız dahi e-postalarınızın iletilebilmesi için birtakım bilgilerin açık olarak aktarılması gereklidir. Bunu üzerine adres ve isim yazmadığınız bir postanın iletilememesi ile kıyaslayabilirsiniz. Bu durumdan dolayı kullandığınız sunucuyu veya ağ iletişiminizi gözleyebilen biri kimlerle ilişki içinde olduğunuzu üstveri (metadata) aracılığıyla öğrenebilir.

  • GnuPG anahtarları uzun vadeli ve sizinle ilişkilendirilmiş anahtarlar kullanır. Bu bakımdan imzalanmış bir e-postanın kimden geldiğini inkar etmek mümkün olmadığı gibi kullanılan anahtarların bir şekilde ortaya çıkması durumunda, eski iletişimler de okunabilir hale gelecektir. Şifreli e-postaları ileride bir zaman açabilme ümidi ile saklayan bir kurum (bkz. NSA) bir gün anahtarınızın ifşa olması durumunda e-postalarınızı geriye dönük olarak okuyabilir. Bu elbette e-postaları şifrelememek için bir bahane değildir ama bazı durumlarda dikkate alınması gereken bir risktir.

Peki anahtarların aitliğini kim doğrular?

Bu sorunun cevabı basittir; herkes ve hiç kimse!

Bir GnuPG anahtarına olan güven tamamen o anahtarı kullanan kişinin o kişi olduğunu bilmenize dayanır. Bu o kişiyi gerçekten tanımanız, güvenli bir kanal veya yüz yüze anahtarın parmak izini doğrulamanızı gerektirebileceği gibi kriptografik olarak kullanılan anahtarı imzalayan kişilerden birini ve anahtarını tanımanız da olabilir.

Güven ağı (web of trust) GnuPG'nin güven ilişkisinin temelidir. GnuPG kullanıcıları tanıdıkları ve güvendikleri kişilerin anahtarlarını imzalarlar. Bu imzalar bir süre sonra tanıdıkların tanıdıkları şekilde bir ağa dönüşür ve iki kişi birbirini tanımasa dahi bir seviyeye kadar birbirlerinin anahtarına güven duyabilirler.

Bu sistem elbette mükemmel değildir. Bugün anahtar sunucuları, özellikle tanınan kişilerin, sahte anahtarları ile doludur. Bu sahte anahtarlarda pek çok sahte imza bulmak da mümkündür. Bu sebeple WKS gibi sistemler görece güvenli ve kolay anahtar dağıtımı yöntemleri geliştirilmektedir. Lakin hiçbir sistem sorunsuz değildir ve anahtar güvenliğine sağduyu ile yaklaşılmalıdır.

Şifreli e-posta hakkında tavsiyeler nelerdir?

  • Gizli anahtarlarınızı şifreli bir ortamda çevrimdışı olarak saklayın. Bu anahtarınızın, cihazınız çalınır, kaybolur veya el koyulursa ele geçmesini engeller. Bunun için kağıt bir yedek almayı düşünebilirsiniz.
  • ASLA ama asla gizli anahtarınızı kimse ile paylaşmayın, umumi bir cihaza kaydetmeyin ve uzak sunucuya yüklemeyin.
  • ZAROLA KULLANIN!. Çünkü anahtarınızın güvenliği anahtar parolanızın güvenliğine bağlıdır.
  • Çevrenizde bir CryptoParty yapın ve bu sayede arkadaşlarınıza da GnuPG kullanmayı öğretip anahtarlarınızı imzalayarak kendi güven ağınızı oluşturun. Özgür Yazılım Derneği ve Hackerspace Istanbul düzenli aralıklarla CryptoParty'ler düzenlemektedir.
  • İçeriğinin gizliliğinden bağımsız olarak şifreli e-postalar gönderin. Bu gerçekten hem sizin hem tüm toplum için önemlidir. Şayet sadece gerektiğinde şifreleme yaparsanız analiz edilmesi gereken iletişim miktarı hatrı sayılır miktarda azalacaktır ve bir örüntü ortaya çıkacaktır. Havadan sudan bile şifreli yazışın!

GnuPG ile e-posta şifreleme

Bu rehber, Thunderbird 78'in GnuPG desteği kararlı hale geldiğinde tekrardan yazılacaktır.

Kmail ile GPG Şifreli E-posta

Kmail GNU/Linux dağıtımlarında yaygın olarak kullanılan KDE masaüstü ortamının e-posta istemcisidir. KDE'nin diğer e-posta istemcilerine göre avantajı herhangi bir eklenti veya ayar gerektirmeden GPG desteği vermesi. Bu bakımdan GPG şifreli imzalamaya bilgisayar üzerinden giriş yapmanın en kolay yolu sayılabilir.

Kmail kurulumu

Kmail'i bilgisayarnıza işletim sisteminizin paket yöneticisinden kolaylıkla kurabilirsiniz. Şayet KDE masaüstü ortamını kullanmıyorsanız KDE'ye özel birtakım bağımlılıkları da indirmeniz ve kurmanız gerekeceğinden kurulum boyutunuz bir miktar büyüyebilir.

Bilgisayarınıza Kmail kurulumu yapmak için:

Debian tabanlı dağıtımlarda

sudo apt-get install kmail

RPM tabanlı dağıtımlarda (fedora, centos)

sudo yum install kmail

Kurulum tamamlandıktan sonra Kmail cihazınızda çalışmaya hazır olacaktır.

Kmail Sihirbazı

Kmail ilk açılışta kurulum sihirbazı başlatacaktır. Bu sihirbaz ile yeni bir e-posta hesabı ekler iken bu hesaba ilişkin bir GPG kurulumu da yapılacaktır. Kuruluma e-posta hesabınızın bilgilerini girmek ile başlayabilirsiniz. Şayet e-posta sağlayıcınız Mozilla veri tabanında bulunursa otomatik olarak ayarları yapılacaktır.

alt-text

Şayet işletim sisteminizde hali hazırda girdiğiniz e-posta adresine ait bir GPG anahtarı var ise Kmail otomatik olarak bunu bulacak ve size ilişkilendirilmek üzere gösterecektir.

alt-text

Bir GPG anahtarınız yok ise Kmail size bir anahtar oluşturmayı veya var olan bir anahtarı içe aktarmayı önerecektir.

alt-text alt-text

Bir parola belirleyip anahtar kurulumunuzu "next" tuşu ile ilerleyerek başlatabilirsiniz. GPG anahtarınızın güvenliği bu parolaya bağlı olacağı ve e-postalarınızı okumak için bu parolayı belirli aralıklarla girmeniz gerekeceğinden hem güvenli hem de hatırlanabilir bir parolaya ihtiyacınız bulunmakta. Kmail bu noktada bir parola gücü ölçeri bulunduruyor olsa da bu parolanızın güvenliği konusunda çok kısıtlı bir görev görebilir. GPG parolası olarak Zarola kullanmanız hararetle tavsiye edilir.

ÖNEMLİ NOT: Şayet bu anahtarı kullanmaya ve saklamaya hazır değilseniz veya sadece bir deneme yapıyorsanız paroladan sonra gelen "publish this key on public key server" tıkını kaldırmanız önerilir. Keza sunucuya yüklenen GPG anahtarları bir daha silinemez sadece iptal edilebilir. Bu konuda detaylı bilgi almak için GPG rehberine danışabilirsiniz.

Ayarlarınızı tamamladıktan ve anahtarınızı belirledikten sonra Kmail sunucu ayarlarınızın bulunamamış olması durumunda yapmanız için aşağıdak seçenekler sunacaktır. Buradan Generic IMAP veya POP3 tercih edilebilir.

alt-text

Sunucu adresleri girildikten sonra "next" düğmesi ile devam edebilirsiniz.

alt-text

Her şey yolunda giderse kurulumunuz başarılı olarak tamamlanacak ve Kmail'in anasayfasına dönebileceksiniz.

alt-text

Kmail ile şifreli e-posta atmak

Kmail kurulumu tamamlandıktan sonra GPG ile e-posta atmaya ve almaya hazırsınız demektir. Bunun için yeni bir eposta açın.

alt-text

alt-text

Karşınıza gelecek yeni mesaj ekranında şifreleme hali hazırda açık olacaktır. Şayet GPG anahtarlığınızda ilişkilendirilmiş bir e-posta adresini alıcı olarak girerseniz otomatik olarak Kmail e-postayı şifreleme seçeneğini de açacaktır.

alt-text

Şayet GPG anahtarı yönetimi konusunda yardım ihtiyacınız var ise yine bir KDE yazılımı olan Kleopatra ile GPG işlemleri rehberinden yardım alabilirsiniz.

Gönder demeniz ile birlikte e-postanız şifrelenip imzalanarak karşı tarafa gönderilecektir.

Şifreli e-postayı açmak

Kmail şifreli gelen e-postaları otomatik olarak deşifre etmeyi önerecektir. "Decrypt" seçeneğini seçmeniz üzerine Kmail parolanızı size soracak ve ardından e-postayı deşifre edecektir.

alt-text

Mailvelope ile Webmail Üzerinde Şifreleme

Mailvelope özgür bir tarayıcı eklentisi olarak webmail olarak tarayıcı üzerinde kullanılan e-posta hizmetleri ile GPG şifreli e-postalaşmaya imkan sağlar. Mailvelope kullanarak e-posta kullanım alışkanlıklarınızda fazla değişikliğe gitmeden güvenli yazışma yapmaya kolaylıkla başlayabilirsiniz.

Her halukarda şifreli e-posta kullanmanın görece en güvensiz yolunun bir tarayıcı eklentisi kullanmak olduğunu belirtmek gereklidir. Bu yöntem ile sizin ile iletişiminiz arasında fazlasıyla yazılıma güven duymanız gerekmektedir. Tarayıcınız, eklenti ve kullandığı diğer sistemler diğer şifreleme yöntemlerine göre daha geniş bir saldırı alanına sahiptir. Bu bakımdan basitçe mahremiyetinizi korumaktan fazlasına ihtiyacınız var ama görece sorunsuz bir şifreleme istiyorsanız Thunderbird ve Enigmail ile şifrelemeyi tercih edebilirsiniz.

Mailvelope kurulumu

Başlangıç olarak Mailvelope'u tarayıcınıza bir eklenti olarak kurmalısınız. Bunun için tarayıcınızın sağladığı eklenti yöneticisinden arama yaparak ilgili bağlantı aracılığı ile kurulumu kolaylıkla gerçekleştirebilirsiniz.

alt-text

Kurulumun ardından Mailvelope sizi şifreleme için gerekli kurulumu tamamlamak üzere menüsüne yönlendirecek sayfayı açacaktır. "Let's start" düğmesi ile ayarları yapmaya başlayabilirsiniz.

alt-text

Açılan ilk sayfa sizi anahtar üretmek veya var olan anahtarınızı içe aktarmak için gerekli iki temel ayarı içermektedir. Şayet bir anahtarınız yok ise burada hızlıca üretebilir veya Kolay GPG anahtarı üretimi ile daha gelişmiş seçeneklerle İleri GPG anahtarı üretimi rehberlerimizden faydalanıp ürettiğiniz anahtarı daha sonra Mailvelope'a aktarabilirsiniz.

Bir GPG anahtarınız olduğu varsayımı ile bu anahtarı içe aktarmak için Import Key düğmesine tıklayarak anahtar yönetimine gidin.

alt-text

Açılan anahtar yönetimi sayfasında hem umumi hem özel anahtarların yüklenmesi mümkündür. Bu aşamada kendi özel anahtarımızı yükleyeceğimiz için Add file seçeneğini seçip anahtar dosyasını bulunduğu dizinden seçin. Gelen başlıktan doğru anahtarı yüklediğinize emin olup "confirm" düğmesine tıklayarak onaylayın.

alt-text

Anahtarın başarılı şekilde içe aktarılması durumunda Mailvelope sizi bir başlıkla bilgilendirecektir.

alt-text

Bu noktadan sonra Mailvelop'da bir özel anahtarınız bulunmakla size gelen şifreli e-postaları açmaya hazırsınız.

E-posta alan adının yetkilendirilmesi

Mailvelope hangi alan adlarında çalışacağına dair izin istemektedir. Şayet önceden e-posta hizmet sağlayıcı olarak Mailvelope tarafından tanınan e-postalardan birini kullanmıyorsanız (ör: Riseup) e-postanıza tarayıcınızdan gidiğinizde Mailvelope'ı bu alan adına yetkilendirmeniz gereklidir.

Bunu yapmanın en kolay yolu e-postanıza girip Mailvelope eklenti simgesine tıklayıp "Authorize this domain" tuşu ile alan adını yetkilendirmektir.

alt-text

alt-text

Gelen şifreli e-postayı açmak

Size gelen şifreli e-postaları Mailvelope bu aşamadan sonra otomatik olarak algılayacaktır. Gelen bir e-postayı açtığınızda Mailvelope şifreli veriyi görecek ve size bu mesajı görmek isteyip istemediğinizi soracaktır. "Show message" düğmesi ile mesajı görüntülemeyi seçin ve ardından gerekiyor ise anahtarınızın parolasını girin.

alt-text

alt-text

Şifreli e-posta göndermek

Yazışılacak kişinin umumi anahtarını bulmak

İlk e-postanızı aldıktan sonra sıra şifreli olarak cevap vermekte. Bunu yapmadan önce yazışmak istediğiniz kişiye ait umumi anahtarı Mailvelope'a göstermeniz gereklidir. Mailvelope otomatik anahtar tanıma seçeneklerine sahip olmadığından bunu her kişi için en az bir kere tekrar etmeniz gerekli.

Mailvelope eklenti sembolünden "keyring(anahtarlık)" simgesine tıklandığında anahtar yönetimine ulaşılır. Buradan "import" seçeneğine tıklayarak bir anahtar eklemek mümkündür.

alt-text

alt-text

Şayet kişi size anahtar dosyasını e-posta ekinde gönderdi veya siz bu anahtarı başka yollardan elde ettiyseniz ilgili dosyayı bu aşamada gösterip eklemeniz mümkündür. Aksi halde bir anahtar sunucusunda arama yaparak anahtarı bulabilirsiniz. Bunun için "search" sekmesine gelip arama bölümüne girin.

alt-text

Arama tuşuna basmanızla Mailvelope standart Ubuntu anahtar sunucusunda aramaya yaparak sonuçlar size gösterecektir. Anahtar sunucularındaki anahtarların doğruluğunu belirleyen bir otorite olmadığından buradaki anahtarların doğruluğuna şüphe ile yaklaşmalısınız. Bir kişinin adı e-posta adresi ile herkes bir anahtar oluşturup sunuculara yükleme imkanına sahiptir. Bu neden ile anahtarı ilgili kişiden doğrulamalı veya güven ağı ile bu doğrulamayı sağlamalısınız.

alt-text

İlgili anahtarı bulduktan sonra anahtarın ID'si üzerine tıklayarak anahtarı görüntüleyebilirsiniz. Mailvelope otomatik olarak anahtarı algılayacak ve eklemeniz için size simge gösterecektir.

alt-text

E-posta şifrelemek ve göndermek

Yazışacağınız kişinin e-postasına ait umumi anahtarını bulup ekledikten sonra o kişiye şifreli ve imzalı bir e-posta atmaya hazırsınız demektir. Bunun için normalde e-posta yazmak için ne yapıyorsanız onu yapın ve düzenleme sayfasına gelin. Bu aşamada yeni bir simgeyi fark etmeniz gereklidir. Bu simge ile Mailvelope size şifreli e-posta atma imkanı sağlamaktadır.

alt-text

Simgeye tıklamanız üzerine Mailvelope yeni bir sayfa açarak size e-postanızı yazma imkanı tanıyacaktır.

alt-text

Mesajınızı ve göndermek istediğiniz kişinin e-posta adresini girdikten sonra "Encrypt" düğmesine basmanız üzerine Mailvelope mesajınızı şifreleyip imzalayacaktır. Bunun işlemi gerçekleştirmek için sizden parola istemesi muhtemeldir. Ardından mesaj alanına geri döndüğünüze şifreli mesajınızı göreceksiniz.

alt-text

alt-text

Artık e-postanızı güven içinde gönderebilirsiniz.

Mailvelope ayarları

Mailvelope güvenlik ve mahremiyetiniz açısından önemli olabilecek bir grup basit ayar sunmaktadır. Mailvelope'u uzun vadeli kullanmaya hazırlanmadan önce bu ayarları gözden geçirip değerlendirmeniz önerilir.

Genel ayarlar altında "would you like to sign all emails?" ile giden tüm e-postalarınızı şifreleme seçeneğini açmanız önerilir. Bu sayede hem sizin GPG kullandığını bilmediğiniz biri size şifreli mesaj atabilir hem de e-postanın bütünlüğünü garanti altına alabilirsiniz.

alt-text

Güvenlik ayarları birkaç temel güvenlik seçeneği içermekte.

  • Bunların arasında anahtarınızın parolasının hatırlanması ve hatırlanacak sürenin girileceği alan bulunmaktadır. Bu süreyi görece kısa tutmanız veya hiç kullanmamanız önerilir. Kullanım alışkanlıklarınıza göre bu süreyi dilediğiniz gibi ayarlayabilirsiniz.

  • En altta bulunan "OpenPGP settings" altındaki seçenek gönderilen iletilerde şifreleme için Mailvelope kullanıldığının belirtilmesine ilişkindir. Alıcınız veya diğer üçüncü kişi için bu bilginin bir önemi olmadığından ve sizin hakkınızda gereksiz bir bilgiyi üçüncü kişilere aktardığından bu seçeneğin işaretlenerek mahremiyetinizi koruyabilirsiniz.

alt-text

Uçbirim ile E-posta Şifrelemek

Şayet oldschool yöntemi benimsemek isterseniz e-posta şifrelemek adına, bu işlemi terminalden yapmaktan daha iyi bir yol bulamazsınız! GPG ilk ortaya çıktığında kullanımı terminalden bir mesajı şifrelemek göndermek üzere e-posta istemcisine yapıştırmak ve tekrar aynı yoldan deşifre etmekten geçiyordu. Günümüzde Thunderbirg/Enigmail gibi yazışmayı çok kolaylaştıran arayüzler geliştirilmiş olsa da terminalden bu işlemi gerçekleştirebilmek hala temel düzeyde faydalı olabilmektedir.

E-postanızı yazın

Öncelikle e-postanızı daha rahat ettiğiniz bir yerde yazmak isteyebilirsiniz. Bunun için tercihiniz olan bir metin editörünü seçebilir veya bir kelime istemci de kullanabilirsiniz. GPG sadece salt metin olarak çalışacağından formatlama detaylarının mesajınıza aktarılmayacağını hatırlatmalıyız.

Bir uçbirim açın

Kullandığınız Gnu/Linux dağıtımında bulunan bir uçbirim penceresini, GPG anahtarınızın sahibi olan kullanıcı olarak açın. Bunun için grafik arayüzden faydalanabilir veya aşağıdaki tuş kombinasyonunu kullanabilirsiniz.

ctrl + alt + t

GPG ile mesajınızı şifreleyin ve imzalayın

Aşağıdaki komut ile GPG'yi mesaj şifreleme aşamasına geçirin.

gpg --encrypt --armour veya gpg -ea

Tercihen mesajınızı imzalamayı da seçebilirsiniz. Bu hem alıcınızın mesajın sizden geldiği konusunda emin olmasını sağlar hem de mesajın bütünlüğünü garanti eder.

gpg --encrypt --sign --armour veya gpg -esa

Mesajınızı sadece imzalayarak sizden geldiğini de kanıtlamak isteyebilirsiniz. Bu imkan GPG anahtarı olmayan birinin dahi mesajın size ait olduğunu doğrulamasına imkan sağlar.

gpg --clear-sign

Şayet sisteminizde varsayılan olan bir anahtar var ise GPG imzalama için kendiliğinden bu anahtarı kullanacaktır. Şayet sisteminizde olan başka bir anahtarı kullanmak isterseniz aşağıdaki ek komut ile anahtarınızı belirtin.

gpg --clear-sign -u (anahtar ID veya e-posta)

Dilediğiniz komutu çalıştırdığınızda aşağıdaki şekilde GPG sizden alıcının e-posta adresini veya kullanılacak anahtarın ID'sini isteyecektir.

gpg: using "xxxxxxxxxxxxxxxx" as default secret key for signing
You did not specify a user ID. (you may use "-r")

Current recipients:

Enter the user ID.  End with an empty line: 

Alıcınızın kullandığı anahtarda belirttiği e-posta adresini girip "enter" tuşuna basın ve başka bir alıcı yok ise tekrar gelen ekranda bir adres girmeden "enter" tuşlayın.

Terminal sizi yanıp sönen imleci ile karşılayacaktır. Buraya mesajınızı yazın veya kopyalayın. Her şeyin yerinde göründüğünü düşündüğünüzde aşağıdaki tuş kombinasyonu ile işlemi tamamlayın.

ctrl + D

GPG size mesajınızın şifreli çıktısını verecektir.

-----BEGIN PGP MESSAGE-----

hQIMA2YZNFxt9JB3AQ/7BW72H19P3yYliDyn5DOjxrTaQ0DZGLI3iRMXIb11JWEC
rCRvN8pokKeSa/8jcWFodWmsbj1hz5apFQho54HUuTRu3Q91QNgKOEXphiHGeEG8
Io1EYV/xzeH0v/NzJsQprqeEcr1hdbN3IfDkVV6jE2XZckZ6plOFM+Ubxe2UhXiE
EFx8x6p6mO8tNESy/TBGlIk/6hhrXISMqSz1JKdsbiyUTYGzmcM0lz7UzidMtjhJ
npb8b0nRSfBNufavqFRNhqedkYc9+dDvILs8VH2KVSPJjtSrUOPuKgcBWcLDMFl7
y94MaZwh3aIPOlEyVId8iCLO1XyzYRN8MWyyvsK7Z5O+Fs8sfmGTSBiKfzKP+7aU
Ine1cUjPXvh3DDHm9qPbSRGr/nr5W+Pt5TvEzNs2hiS4LuM9kQW2+FZYCMJgJXaE
DeRyx8RrPUJG8LnazZ4yFVNfQq8CBxcR+xjKDbtPtgiI9u2Cvoo/H1rQzOS+1/nQ
kq4xmdjrYTHLr0VXWWU+Zjy/qXNHYAvkwKXNwqJ58W+eQBQwc2GeYW79fo+cc2DV
7zv078sbodikV1uda7jQvHuDnSUa8nJPpoSjTWb+Fv/YAesQjgJlDjsqm/K3ElUq
UvcJOSf31P2PytfUxH8saI/sRe0ciX2PFSvhLBKygLtxzBOOkzFqh6UO9JzVv1rS
6QFIjHJTZebjytaMF/iGJnL99F7kaLUzdBJh7zpkT3Blj3Bldk2zo7lZOoJxHTGI
kfIJRWYPkP1qStTqu6EKr8NaJkbtM2SZ7uZgqXIxX+ncX4bLXsTj63y3jytVO/Q8
yiMJva+8nK6mwu1dqN8zsPHwaaggH16JXlBwcwtdB9mze7OAmRfwirMWwnHtsc8S
zuRUHPdlXbjRuPzBJA8tChl4LvSdqivjlGq7XK+hcfmjmevc7DnaJznSR++Q52O/
E16lKbQCmf/9c1l19f2HuNWHscxppLaeGqM7+5EFgj13riN08wKiMODBtJyH/vbP
nt3XamHevon7H0rsXse/0TY8BomEaaVlpn85MgGNVA0Zb3UxaZm++bWwBW/Kvpu3
1LWPWZx4WmJwT+EA4nSF2HwxUWyy6FeQf2z+mfyEnbhxueFnig6f5hfm6OvIR4PJ
5LwHDXgcKCzvNUGFLLFf5ZR/6lLJZ7wFvlNvqdvNNTrkhqU5/qw5uJuA1F5jUYf7
Rl5WGSLBJN0FWryW30SuFlNcQgU0xxyKwPSnrPRg3mPMumQ1LaOPO8SCzogklQM6
jdktewFEJb5A4LR+Fh/MpwP5AiPwpl+CAMe3jZSiOhJzBjun/UJS2M8s1hIVTzSd
gLa/ewTVc6jkyGDmUpQMOQTumm7IIyX0HBhZBYtDBxq9lPStrCpNkgmPIblHLwtX
95krDh2WORbuYxlzlE8/R6KfhqCxPMMn4+eS401zeSv3Z/u+3ImHXZTAz/qf+rcl
vn7ufVp6IyzMHmQ742l1tpaX3PRq0V+AprSbupodAACzf+zrkJqiC08O6Bz7cX0c
WtrjYbxxnjdYPsuV3HGS380HSrdlp8LhMAHDpha5gT7Ge7FHdCk=
=ezWd
-----END PGP MESSAGE-----

Bu noktadan sonra soz konusu çıktıyı alıp dilerseniz e-posta ile dilerseniz mektup ile mesajın şifrelendiği kişiye gönderebilirsiniz.

BONUS: Şayet mesajınızı metin olarak yazdıysanız pro şekilde aşağıdaki komutla da doğrudan şifreleyebilirsiniz:

cat [metin yolu] | gpg -esa

Şayet mesajınızı Libreoffice ile yazdıysanız daha ilginç şekilde aşağıdaki komut ile doğrudan mesajınızı metin olarak şifreleyebilirsiniz:

soffice --cat [belge yolu] | gpg -esa

Mesajınızı deşifre edin

Yukarıdaki gibi bir mesajın alıcısı iseniz Terminalden bu mesajı deşifre etmeniz çok kolay. Tek yapmanız gereken aşağıdaki komutu girip ardından mesajı yapıştırmak.

gpg --decrypt veya gpg -d

Mesajı yapıştırdıktan sonra ctrl + D ile işlemi sonlandırabilirsiniz. GPG size parolanızı soracak ve ardından mesajınızı gösterecektir.

gpg: encrypted with 4096-bit RSA key, ID 6619345C6DF49077, created 2016-10-26
      "Alper Atmaca <xxxxxxxxxxxxxxxxxxxx>"
entropi ne süpergpg: Signature made Pzt 24 Ağu 2020 22:41:49 +03
gpg:                using RSA key 8F2E9434DDFF4613F6829D8B471A839AB4DD8E6D
gpg: Good signature from "Alper Atmaca <xxxxxxxxxxxxxxxx>" [ultimate]
gpg:                 aka "Alper Atmaca <xxxxx@riseup.net>" [ultimate]
gpg:                 aka "Alper Atmaca <xxxxxx@gmail.com>" [ultimate]
gpg:                 aka "Alper Atmaca <xxxxx@oyd.org.tr>" [ultimate]
gpg:                 aka "Alper Atmaca (alperatmaca@gmail.com) <alperatmaca@gmail.com>" [ultimate]

Şifreli E-posta Hizmetleri

Edward Snowden'in kamuya açıkladığı gerçeklerden sonra şifreli e-posta hizmetleri fazlasıyla tartışılmış ve konuşulmuştur. Özellikle Lavabit'in muhtemelen FBI baskısı sebebi ile kapatılmasından sonra benzer şifreli e-posta hizmetlerine ilişkin merak ve tartışma daha da arttı. Şifreli e-posta hizmetlerini bir ihtiyaç olarak görüldüğünden günümüzde giderek daha fazla şifreli e-posta'yı bir web arayüzü üzerinden hizmet olarak sunan şirketlerin sayısı artmaktadır. Her güvenlik aracı gibi bu hizmetlerin de bir kullanım alanı ve sınırları bulunmaktadır.

Şifreli e-posta hizmeti nedir?

Öncelikle "şifreli" veya "güvenli" e-postanın ne olmadığından söz etmek gerekir. Herhangi bir yazışmanın "mahrem" veya "güvenli" sayılabilmesi için şifrelemenin uçtan uca(end-to-end) olması gereklidir. Bu koşulun gerçekten oluşmasının tek imkanı tarafların şifreleme anahtarlarını kendi cihazlarında üretmeleri ve sadece kendi ellerinde bulundurmalarıdır. Aracı olarak hizmet sunan şifreli e-posta hizmet sağlayıcısının şifreleme işlemine müdahil olduğu her durumda güvenin bir kısmı hizmet sağlayıcıya aktarılmış olur.

Kabaca şifreli e-posta hizmetleri uygulama bakımından ikiye ayrılabilir; taraflar arasındaki iletişimin uçtan uca şifrelenebildiği cins ile sadece gelen e-postaların gelen kutusunda kullanıcıya ait bir anahtar ile şifreli saklandığı cins olarak.

Şifreli Gelen Kutusu

Pek çok mahremiyet yanlısı e-posta sağlayıcısı, arayüzleri aracılığı ile gelen e-postaların şifrelenerek gelen kutusuna kaydedilmesine imkan vermektedir. Söz konusu şifreleme genellikle kendi sunucularında kullanıcı adına üretilen bir GPG anahtarı ile yapmaktadırlar. Bu yöntemin iki adet faydası bulunmaktadır;

  • Bir sebepten e-postalar veya e-posta hesabı kaybedilirse, e-postaların şifreli oluşlarından dolayı içeriklreinin ifşa olmaları mümkün olmayacaktır.

  • E-posta hizmet sağlayıcısı bir devlet tarafından kullanıcıları hakkında bilgi vermeye zorlanırsa şirket şifrelenmiş veriden ve tutuyor ise üstveriden başka teslim edebileceği bir şey olmayacaktır.

Üç de iyi değerlendirilmesi gereken zararı bulunmaktadır;

  • Doğal olarak gelen e-postalar vardıklarında sunucu tarafından okunabildiklerinden ne hizmet sağlayıcısının ne de kendisinden bilgi talep eden devletlerin söz konusu e-postaların kaydedilip şifrelenmeden önce okumasına engel olan bir durum yoktur.

  • E-postalarınız şifreli saklanacağından, cihazlarınızda yerel olarak GPG kurulu ve hizmet sağlayıcınızın ürettiği gizli anahtar elinizde değil ise postalarınızı okumak için size sunulan webmail arayüzüne mahkum kalırsınız.

  • Kullanılan anahtarı kendiniz sağlamıyor ve hizmet sağlayıcınızın ürettiği anahtarı kullanıyorsanız bu anahtarın güvenliği konusunda da güveni hizmet sağlayıcınıza vermiş olursunuz.

Tüm anlatılanlar bir yana bu şekilde yapılan şifrelemeden belirtilen kapsam dışında güvenlik veya mahremiyet beklememek yerinde olacaktır.

Söz konusu imkanı sağlayan pek çok e-posta sağlayıcısı olmakla birlikte aşağıda sayılanlar günümüzde en çok tanınanları sayılabilir:

Mailbox Posteo Fastmail

Uçtan Uca Şifreli E-posta

Uçtan uca şifreli e-posta hizmeti veren şirketler her kullanıcısı için üyelik sırasında bir anahtar oluşturmakta ve bu anahtar aracılığı ile çoğunlukla sadece kendi üyeleri arasındaki yazışmaları şifreleyebilmektedir. Hizmet sağlayıcının dışındaki e-posta kullanıcılarına bir parola ile şifrelenmiş e-posta atabilmek mümkün olsa da bu standart olarak sağlanmamakta ve olağan kullanım için kimi zaman zahmetli olmaktadır. Bu hizmetler ile;

  • Aynı hizmet sağlayıcıyı kullanan yazışmalar veya parola ile şifrelenerek diğer e-posta kullanıcılarına yapılan yazışmalar hizmet sağlayıcı tarafından da okunamadığı iddia edilmektedir.

  • Devletlerden gelen taleplere şirketlerin sağlayabileceği sadece üstveri, anahtarın şifreli hali ve şifreli yazışmalar olmaktadır.

Her ne kadar anahtarın üretimi ve hizmetin kullanımı için gereken yazılımlar "özgür" ve tarayıcıda yerel olarak çalışsa da her giriş yaptığınızda tarayıcınıza yüklenen javascript kodunun doğruluğunu denetleme imkanının olmayışı ve her halükarda şifreli de olsa gizli anahtarınızın şirketin sunucusuna yüklenmesi ile kaba kuvvet(bruteforce) saldırılarına imkan vermesi tatsız sonuçlardır. Sayılan sebepler ile belirli bir güvenin hizmet sağlayana aktarıldığı ve bu güvenin haksız çıkması ihtimalinin değerlendirilmesi önemlidir.

Uçtan uca şifreli e-posta hizmeti veren en tanınmış iki isim Tutanota ve Protonmail idir. Benzer hizmetler vermelerine rağmen bu amaçla kullandıkları teknolojiler ve yaklaşımlar bir hayli farklıdır.

Tutanota vs Protonmail

Ücretsiz Üyelik

Protonmail de Tutanota da giriş seviyesi temel güvenlik özelliklerinin sunulduğu bedava hesaplar vermekte. Bu bakımdan şayet ihtiyaçlarınız sınırlı ve bütçeniz dar ise iki hizmet sağlayıcıdan da bedava hizmet almanız mümkün.

Anonim Üyelik ve Ödeme

Teoride her iki şirket de anonim üyelik veriyor ve cryptoparalar ile ödeme kabul ediyor fakat Protonmail pratik olarak anonim üyeliği daha zor kılıyor. Muhtemelen boşuna açılan bedava hesapları azaltmak adına bir çaba olsa da güvenlik ihtiyacının bir parçası olabilecek anonimliği bozan bu çabanın iyi olmadığı kesin.

Fiyat

Protonmail'in gün itibari ile en ucuz ücretli üyeliği 4 Avro/aylık olmakla ayda 1 Avro'ya hizmet veren Tutanotaya göre 4 kat daha pahalı durumda. Protonmail bunu nükleer sığınaklarının maliyetine ve İsviçre'de bulunmalarına bağlamakta. Tutanota ise Almanya'da çeşitli veri merkezlerinde sunucularını çalıştırmakta. Fiyatlandırma konusundaki inandırıcılık kullanıcıya kalmış durumda.

Platform Yaygınlığı

Her iki hizmet de GNU/Linux dahil olmak üzere tüm platformlarda istemci bulunduruyor. Lakin Protonmail SMTP protokolü ile yerel e-posta istemcilerinin kullanılabilmesi için bir köprü yazılımı da geliştirmiş ve bunu ücret ödeyen kullanıcılarına sunuyor durumda. Böylece isteyenler Thunderbird gibi kendi e-posta istemcileri ile Protonmail'i kullanabilmekte. Tutanota ise sadece webmail ve kendi istemcileri ile kullanıma imkan veriyor.

Yazılım Özgürlüğü

Protonmail ile Tutanota'nın en büyük ayrılıklarından biri burada ortaya çıkıyor. Protonmail yazılım özgürlüğü konusunda verdiği sözleri zamanında tutamamakta. Şu anda sadece webmail ve köprü yazılımı özgür olmakla, diğer tüm platformlar için olan yazılımları mülk konumunda bulunuyor. Tutanota ise tam tersine tüm yazılımlarını özgür geliştirmekte ve Android istemcisi F-droid'den bile indirilebiliyor. Hatta Tutanota özgür yazılıma özgür yazılım diyen nadir şirketlerden biri

Şifreleme Teknolojileri

Protonmail ile Tutanota arasındaki en önemli farklardan bir tanesi kullandıkları şifreleme teknolojilerinden gelmekte. Protonmail uzun zamandır e-posta şifreleme için kullanılan GnuPG yazılımı üzerine kurulu bir sistem. Tutanota ise simetrik şifreleme algoritması olan AES128 ile asimetrik RSA2048 algoritmasının bir birleşimini kullanmakta. Algoritmaların geçmişi ve güvenliği bakımından gözle görülecek bir fark bulunmamakla birlikte, bu durum hizmetin özgürlüğü açısından çok önemli pratik bir fark ortaya koymakta. Keza Protonmail diğer GPG istemcileri ile şifreli iletişim kurabilirken Tutanota bu imkandan yararlanamamakta.

Hizmet Özgürlüğü

Muhtemelen Tutanota ve Protonmail arasındaki en önemli fark hizmetlerinin özgürlüğü. Tutanota şifreleme imkanını doğal olarak sadece kendi kullanıcıları arasında sağlayabilmekte ve federatif e-posta sisteminde ayrı bir walled garden olarak bulunmakta. Dışarıdan bir kullanıcının şifreli olarak Tutanota kullanıcısına e-posta atması şu an itibari ile mümkün değil fakat GPG uyumluluğu üzerine çalışacaklarına dair bir açıklamaları bulunmakta.

Protonmail ise GPG ile çalışmakta ve yakın zamanda kendi kullanıcılarının GPG anahtarlarının indirilebileceği anahtar sunucularını devreye almış durumdalar. Hala Android ve IOS istemcilerinden hizmet sağlayıcılar arası şifreleme konusunda sorun çekilse de webmail üzerinden yapılan yazışmalarda gelen e-posta GPG ile şifreli veya imzalı ise Protonmail doğrudan anahtarı indirip cevapları şifreli olarak gönderebiliyor. Bu bakımdan Protonmail dışı kişilerle şifreli yazışmak gün itibari ile mümkün ve görece kolay.

Aynı zamanda SMTP ve POP3 gibi federatif e-posta protokolleri iki hizmet tarafından da doğrudan desteklenmemekte. Sadece Protonmail kendi köprü yazılımları ile buna imkan vermekte.

Sonuç

Şifreli e-postayı bir hizmet olarak almak tercih sayılabilir. Kendi e-posta sunucunuzu işletmek ve GPG kullanmak hiç bugün olduğu kadar kolay olmamıştı. Hali ile şifreli yazışmak, bunu güvenli şekilde yapmak ve anahtarınızı kendi elinizde tutmanın güvenini hissetmek için hala en iyi seçenek GPG'yi kendi yerel cihazınızda tercih ettiğiniz güvenilir bir e-posta hizmet sağlayıcı ile kullanmaktır.

GPG anahtarı oluşturmak ve kullanmak için rehberimizden yararlanabilirsiniz.

Protonmail ile GnuPG Kullanımı

Protonmail nedir?

Protonmail şifreli bir e-posta hizmetidir. Güvenlik rehberinin detaylıca incelediği şifreli e-posta hizmet sağlayıcıları arasında Protonmail'i ayıran özellik GnuPG şifrelemenin hizmetin temelinde olmasıdır. Bu Protonmail kullanıcılarının Protonmail dışındaki diğer e-posta adreslerine GnuPG şifreli e-posta atabilmelerini ve diğer e-posta adreslerinden GnuPG şifreli e-posta alıp tarayıcıdan okuyabilmelerine imkan veriyor. Bu bakımdan Protonmail kullanıcıları uçtan uca şifrelemeye sadece Protonmail kullanıcıları arasında değil tüm GnuPG kullanıcıları arasında sahip oluyorlar.

Protonmail kullanmak elde edebileceğiniz en güvenli GnuPG kurulumu değildir. Protonmail'e her girdiğinizde tarayıcınıza gelen javascript kodunu doğrulamanız mümkün değildir. Protonmail'in istemcileri de ne yazık ki hala özgür değil. Bunun tek istisnası smtp ile Protonmail hesabınıza bağlanmanızı sağlayan köprü(bridge) yazılımı. Her ne kadar Protonmail size yukarıdaki gerekçeler ile en iyi sonucu vermeyecek de olsa, pek çok Protonmail kullanıcısı ile çokça tehdit modeline yeterli güvenli yazışma yapmak ve gerekirse diğer GnuPG kullanıcıları ile yazışmanız çok kolay. Karar size kalmış.

Protonmail'e GnuPG ile E-posta Atmak

GnuPG şifrelemesi yapmak için ilk gereken şey yazışacağınız Protonmail adresine ait anahtarı elde etmek. Bunun için;

  • Yazıştığınız kişiden anahtarını e-posta ekine koymasını isteyebilirsiniz. Bu durumda gelen anahtarı içeri aktarıp hiç sorun çekmeden kullanmaya başlayabilirsiniz.

  • E-posta şifreli ise arkanıza yaslanıp şifreli cevap verebilirsiniz. Keza Enigmail otomatik olarak şifreli gelen e-postanın anahtarını bulacaktır.

  • Protonmail anahtar sunucusundan ilgili anahtarı çekebilirsiniz.

Protonmail Anahtar Sunucusundan Anahtar Çekmek

Anahtar sunucuları GnuPG kullanımının temel araçlarından biri. Bir fihrist olan bu sunuculardan Protonmail'de sadece kendi anahtarlarını içerecek şekilde bir tane bulunduruyor. Protonmail'in sunucusu diğer sunucularla eşitlenmediğinden sadece bu sunucuya tam Protonmail adresi ile istek atarak cevap almanız mümkün.

Uçbirimde:

gpg --search --keyserver hkps://api.protonmail.ch [aradığınız adres]

şeklinde arama yapabilirsiniz. Adresi doğru girdi iseniz bir tane anahtar size önerilecektir. 1'e basıp ilgili anahtarı indirebilirsiniz.

Şayet Thunderbird/Enigmail ikilisini kullanacaksanız birden fazla imkanınız bulunuyor. Bunlardan ilki, özellikle Protonmail adresleri ile sıkça yazışacaksanız, Protonmail anahtarsunucusunu Enigmail'in ayarlarından anahtar sunucuları listesine eklemektir. Bunu yapmanın güzel tarafı Enigmail şayet anahtarını bilmediği bir Protonmail adresi görür ise bunun anahtarını otomatik olarak indirip şifreleme seçeneğini açacaktır.

alt-text

Şayet e-posta yazma ekranında hızlıca bunu yapmaya karar verirseniz, Enigmail sekmesinden anahtar yönetimi (key management) kısmına tıklayıp anahtar sunucusu (keyserver) kısmına Protonmail'in sunucu adresini girip doğrudan arama yapma seçeneğini seçebilirsiniz.

alt-text

Şayet e-postanızı göndermeden önce şifreleme seçeneğini açarsanız, Enigmail anahtarı olmayan Protonmail adresinin anahtarını göstermenizi sizden isteyecektir. Bu noktada eksik anahtarları indir (download missing keys) seçeneğini tıklayıp anahtar yönetimi sayfasından bir üstteki adımı takip ederek işleminizi bitirebilirsiniz.

alt-text

Tebrikler, bir Protonmail kullanıcısına tek seçeneklerinin Protonmail olmadığını göstermiş oldunuz. Protonmail'e atacağınız e-postaların ekine açık anahtarınızı eklemeniz veya e-postayı şifreli atmanız durumunda Protonmail sadece web istemcisinden otomatik olarak şifreli yanıt atacaktır. Android ve OS istemcilerde sorun çıktığı görülmüştür. Hali ile yazıştığınız kişiyi bu konuda bilgilendirmeniz önerilir. Sizin açık anahtarınızı Protonmail hesaplarında sizin adınıza eklemeleri gereklidir sorunsuz bir iletişim için.

Protonmail'den Diğer Adreslere GnuPG Şifreli E-posta Atmak

Protonmail'den GnuPG kullanan bir başka adrese şifreli e-posta atmak için öncelikli olarak ilgili e-postanın açık anahtarını yazışmak istediğiniz kişinin adına rehberinize eklemeniz gerekli.

Şayet GnuPG kullanan kişi size ilk mesajı imzalı ve açık anahtarı ekli attıysa "Bu ileti, henüz güvenilmeyen bir genel anahtar tarafından imzalanmıştır." ibaresi çıkacak ve yanında güven anahtarı düğmesi olacaktır. Bu özetle kişinin anahtarını kendi anahtarınızla imzalamanız ve otomatik olarak kişinin açık anahtarının adına eklenmesi ile gelecek yazışmaları otomatik olarak GnuPG şifreli yapacaktır.

Şayet gelen e-posta şifreli veya imzalı değilse ya da siz ilk şifreli e-postayı atacaksanız öncelikle rehberinizden şifreleme yapmak istediğiniz kişinin paneline gelin ve küçük dişli şekliyle ifade edilen gelişmiş ayarları açın.

alt-text

Daha sonra açılan ayarlardan anahtar yükle seçeneğini seçerek ilgili kişinin anahtar dosyasını yükleyin ve şifrele ve imzala düğmesini aktif hale getirin.

alt-txt

Bundan sonra kişiye atacağınız e-postalar kişinin GnuPG anahtarı ile şifrelenecek ve imzalanacaktır.

Gelişmiş Seçenekler

Protonmail çeşitli GnuPG işlemlerini yapmak için kullanıcılarına seçenekler sunmaktadır. Bunlar arasında:

  • Gönderiye açık anahtar eklemek
  • Gönderiyi imzalamak
  • Her gönderiye açık anahtar eklemek

Gönderiye Açık Anahtar Eklemek ve İmzalamak

Protonmail'den bir dış adrese yazışma yaparken yeni ileti ekranının konu başlığından sonraki satırında sağ taraftaki ok işaretinden açılan menü aracılığı ile ilgili iletiyi imzalayabilir ve açık anahtarınızı iletiye ekleyebilirsiniz. Bu yazdığınız kişi GnuPG kullanıyor ise sizden gelen e-postanın değiştirilmediğini bilebilir ve size atacağı cevabı kolaylıkla şifreleyebilir.

Her Gönderiye Açık Anahtar eklemek ve İmzalamak

Bunun için Protonmail hesabınızın ayarlarına girip güvenlik sekmesinin altında bulunan "Harici PGP ayarları" bölümünden imzalama ve açık anahtar ekleme seçeneklerini etkinleştirin. Aynı bölümde "Adres Doğrulama" seçeneğini de göreceksiniz. Bu ayar ile iletişimde olduğunuz GnuPG kullanıcılarının anahtarlarını imzalama seçeneğine kavuşursunuz. Bu hem protonmail'in doğru anahtarı size sunduğuna güven duymadan anahtar doğrulaması yapmanızı sağlar hem de konuştuğunuz harici GnuPG kullanıcıları ile güven ilişkinizi sağlar.

Tutanota ile Şifreli Yazışma

Tutanota nedir?

Tutanota şifreli e-posta hizmeti almak için tercih edebileceğiniz servislerden birisi. Tutanota kullanıcıları kendi aralarında varsayılan olarak e-postaları şifrelenerek iletişim kurabilirler. Tutanota kullanmayan birisine şifreli e-posta atmak istediğinizde ise sizin belirleyeceğiniz bir parola ile karşı tarafa e-postanız şifrelenerek gönderilir. Tutanotanın henüz GnuPG desteği bulunmamakta bu neden ile GnuPG ile şifrelenmiş eposta gönderemez veya alamazsınız.

Tutanota kendi geliştirdikleri istemcileri ile birlikte kullanılabiliyor. Şifreli e-posta hizmeti veren diğer yerlere göre en önemli avantajı web ve mobil istemcilerinin özgür yazılım olması, bu sayede tutanota mobil istemcisini f-droid üzerinden de indirebiliyorsunuz. Aynı zamanda istemcileri mahremiyet karşıtı bildirim ve captcha hizmetlerini kullanmaz. Geliştirmiş oldukları bildirim ve captcha altyapılarını kullanarak mahremiyeti ne kadar önemsediklerini aktarıyorlar. Ne yazık ki Tutanota Thunderbird gibi diğer e-posta istemcilerini desteklemiyor ama bunun hakkında çalıştıklarını söylüyorlar.

Tutanota aynı zamanda şifreli adres defteri ve takvim özellikleride sunmakta. E-posta gönderdiğiniz kişiler doğrudan adres defterinize eklenir bu şekilde kolayca hatırlayabilirsiniz. Ayrıca dışarıdan birisine e-posta gönderirken belirlediğiniz parolalarda buraya kayıt edilir. İleride kimin için hangi parolayı kullandığınızı unutmamış oluyorsunuz.

Tutanota ile şifreli E-posta gönderimi

Tutanota kullanan bir başka kişiye e-posta atmak istediğinizde e-postanız varsayılan olarak şifrelenir. E-postanızı alacak tutanota kullanıcısıda doğrudan e-postanızı görüntüleyebilecek.

sifreli_eposta

Tutanota ile diğer adreslere şifreli e-posta gönderimi

sifreli_eposta_gonder

Tutanota'nın GnuPG desteği bulunmadığından diğer adreslere şifreli olarak ancak sizin belirleyeceğiniz bir parola ile e-posta gönderim sağlanabiliyor. Dışarıdan bir kişiye şifreli e-posta atarken dikkat etmeniz gereken kısım gönderi ekranındayken kilit ikonunun seçili olması gerekmekte. İkon seçili iken sizden bu e-posta adresi için bir parola belirlemeniz istenecek sonraki gönderileriniz içinde bu parola adres defterinize kayıt edilmekte. Bu özelliğin dezavantajı ise alıcı kişi için belirlemiş olduğunuz parolayı karşı tarafa farklı yollardan iletmeniz gerekmekte.

sifreli_eposta_al

Farklı bir adrese şifreli e-posta gönderdiğiniz zaman tutanota konu alanınıda şifrelemekte bu sayede karşı tarafın sunucuları e-postanızın üst verisi dışında başka bir veriye erişemez. Göndermiş olduğunuz e-posta karşı tarafın gelen kutusunda yukarıdaki gibi görünecek. Alıcının gönderinizi okuyabilmesi için öncelikle e-posta içerisinde yer alan bağlantıya tıklaması yada web tarayıcısında adres çubuğuna bağlantıyı yapıştırması gerekmekte.

sifreli_eposta_ac

Alıcı e-posta içerisinde yer alan bağlantıyı açtıktan sonra sizin ona iletmiş yada iletecek olduğunuz parolayı ilgili alana girerek e-postanızı görüntüleyebilir. Alıcı dilerse dilerse sizin ona vermiş olduğunuz parolayı sonraki okumalar ve yanıtlamalar için kayıt edebilir. Siz parolayı değiştirmediğiniz sürece iletişiminiz aynı parola ile şifrelenecektir. Parolanın güvenliği tamamen kişinin sorumluluğundadır.

sifreli_eposta_goruntule

Alıcı almış olduğu parolayı doğru şekilde girdikten sonra e-postayı okuyabilir.

sifreli_eposta_yanitla

Alıcı dilerse e-postanızı yanıtlayarak iletişimi şifreli bir şekilde devam ettirebilir. Siz yada karşı taraf gönderilen e-posta akışını silene kadar akış devam edebilir. E-posta akışı silindikten sonra karşı taraf parolayı bilse dahi içeriğe erişemez.

sifreli_eposta_yanitlanan_oku

Karşı taraf e-postanızı yanıtladığında sizin gelen kutunuzda bu şekilde görüntülenecek. Gönderilen yada alınan bir e-postanın tutanota üzerinde şifrelenmiş yada şifrelenmemiş olduğunu küçük kilit ikonu sayesinde anlayabilirsiniz.

Anlık Yazışma

Anlık Yazışma Nedir?

Bir zamanlar İnternet üzerinden yapılan iletişimin küçük bir kısmı olan "chat" taşınabilir cihazların, özellikle mobil İnternet bağlantısının gelişmesi ile tüm günlük iletişimin en temel özelliği haline gelmiş durumda. Özellikle klasik GSM hizmeti olan SMS ve MMS'in dudak uçuklatan fiyatlarının yanında neredeyse hiçbir maliyet olmadan her türlü veriyi sorunsuzca aktarabilme gücü iletişimin yönünü anlık yazışma yönünde değiştirmiştir. Süreç, SMS fiyatlarının da maliyetiyle arasındaki farkın azalmasını beraberinde getirmiştir.

Keza anlık yazışma yaygınlaşana kadar İnternet'te kullanılan en yaygın iletişim aracı e-posta, uzunca düşünülmüş bir mektup gibi anlık iletişim ihtiyaçlarını karşılamadığından, günlük iletişimin anlık yazışma yazılımlarına akması doğaldır. Aynı zamanda grup yazışmaları ve hiyerarşik sıralama pek çok topluluk için de örgütlenme açısından çok faydalı sonuçlar verebilmektedir.

Anlık yazışma dünyası ne yazık ki özgür olmayan para hırsı ile ilerleyen start-up yazılımları üzerine kurularak başladı. Whatsapp tüm berbat geçmişi, Facebook gibi zararlı bir şirketin malı olmakla birlikte hala dünyada en çok kullanılan anlık yazışma uygulaması.

Bu durumun değişmesi gerekiyor! Hem Facebook'un elinde kullanıcılarının verileri dünyanın kötülüğüne kullanılıyor hem de özgür olmayan yazılımı ile tüm kullanıcılarını kendine esir ediyor. Son 10 yıldaki yükselişe karşı özgür yazılım dünyasından da gelen desteklerle bugün çokça, özgür olmayan alternatiflerinden çok daha başarılı, kullanılabilir, özellik dolu anlık yazışma yazılımı bulunmakta. Tek yapmanız gereken aralarından ihtiyacınıza uygun olanı seçip kullanmak.

Anlık Yazışma Yazılımından Ne Beklenir?

  • Özgürlük: Her yazılımınız gibi iletişim için kullandığınız temel yazılımlar da özgür olmalıdır. Bu hem özgür yazılımların kamuya mal edilmiş olmasından dolayı yazılımın geleceği ve sürdürülebilirliği için önemlidir, hem de mahremiyet sözlerinin tutulduğunun ve güvenlik açıklarının görülebilmesinin garantisidir.

  • Güvenlik: Yazılımın özgür olması kendiliğinden güvenlik sağlayan bir unsur değildir. Yazlımın güncel kriptografik araçları kullanması, bunları doğru şekilde uygulaması, aynı zamanda da tasarım olarak güvenliği öncelikli görmesi gereklidir.

  • Kolaylık: Ne yazık ki; günümüz kullanıcı çevresinde bir yazılımın özellikle mobil cihazlarda "kullanılabilir" olması her özelliğin önüne geçmiş durumda. Bu durumu yaratan silikon vadisi değerlerini bir kenara bırakırsak kullanılabilirlik pratik olarak güvenli bir iletişim çevresi yaratmak için çevrenize yapacağınız propagandada çok faydalı olacaktır.

  • Federasyon: Federasyon, tek bir sunucu ile, onun sahibi olan şirketin tüm iletişim altyapısı üzerinde söz sahibi olamamasını sağlar. Bu düzende her bağımsız sunucuda bulunan kullanıcılar tüm diğer sunuculardaki kişilerle iletişim kurabilirler. Buna en iyi örnek e-posta sistemdir. Bugün kim hangi e-posta sağlayıcısından hizmet alırsa alsın dilediği kimseye sorunsuzca e-posta atabilir. Bu özelliğin olmaması bugün değilse bile gelecekte, özgür de olsa yazılımın sunucu tarafını çalıştıran kişi/şirkete mahkumiyet demektir.

  • Çoklu Platform: Bugün bilgisayarınızda kabaca 3 işletim sistemi, mobil cihazlarda 2 ayrı işletim sistemi bulunabilmekte. Elbette gönül herkesin özgür GNU/Linux ve AOSP Android dağıtımlarını kullanmasını istese de, çevrenizde çokça insanı özgür olmayan işletim sistemleri ile bulacaksınız. Çoklu platform desteği bulunmadığı durumda o kişilerle iletişememeniz ve nihayetinde özgürlük düşmanı iletişim yöntemlerine geri dönmeniz söz konusu olabilir.

YazılımTemel Özellikleriİyi yönleri
OTRPerfect forward secrecy (mutlak gizlilik), inkar edilebilirlik, federatifXMPP(Jabber) üzerinden her platform üzerinde kullanılabilir. 2004'ten beri kullanılmaktadır.
OMEMOPerfect forward secrecy (mutlak gizlilik), inkar edilebilirlik, federatifOTR'nin çoklu cihaz desteği getirilmiş modern versiyonu.
SignalModern kriptografi, kullanıcı dostu arayüz, grup desteği, yaygın kullanımSıkça tavsiye edilen modern görünümlü bir mobil temelli yazılım. Kullanıcı sayısı giderek artmakta fakat federasyon düşmanı.
SilenceGSM ve SMS üzerinden çalışmaktadırİnternet olmadan kullanılır

OTR (Off-The-Record Messaging)

OTR’ye Giriş

Off-the-Record Mesajlaşma (OTR) mesajlaşmanın uçtan uca(end-to-end) şifrelenmesini sağlar. Pek çok özelliği vardır:

  • Şifreleme Bütün şifreleme cihazınızda gerçekleşir. Sohbet güvenli olmayan ağlar ve hizmet sağlayıcılar üzerinden yapılsa bile başkaları tarafından okunması engellenir.
  • Doğrulama Konuştuğunuz kişilerin iddia ettikleri kişiler olup olmadığını doğrulayabilirsiniz.
  • Perfect forward secrecy (mutlak gizlilik) Eğer özel anahtarlarınızın kontrolünü kaybederseniz önceki herhangi bir sohbetiniz ifşa olmaz.
  • İnkar Edilebilirlik Gönderdiğiniz mesajlar sizin tarafınızdan gönderildiğine ilişkin üçüncü kişilerce anlaşılabilecek bir emare taşımaz. Herhangi biri sohbetin bitimi ertesinde mesajları sizden gelmiş gibi gösterebilir. Bununla birlikte, sohbet sırasında sizin iletişimde olduğunuz kişi gördüğü mesajların doğrulanmış ve değiştirilmemiş olduğundan emindir.

OTR'yi Yükleme

GNU/Linux

  1. bir terminal çalıştırın: gnome-terminal
  2. Yeni uçbirim penceresine aşağıdaki satırı kopyalayın ve Enter’a basın: sudo apt-get install pidgin-otr
  3. Pidgin’i çalıştırmak için Alt+F2’ye basın ve yazın: pidgin

Android

F-droid veya bir başka kaynaktan Conversations Legacy veya aTalk indirin. aTalk f-droid deposunda, OTR destekleyen tek uygulamadır.

Windows

https://pidgin.im/download adresini ziyaret edin.

Mac

Pidgin Mac’te çalıştırılabilir fakat onun yerine Adium kullanmak çok daha kolay. Adium Pidgin’in Mac OS uyumlu hali. Adium'u indir.

Hesabınıza giriş yapın veya yeni hesap oluşturun

Şayet bir sunucuda XMPP(Jabber) hesabınız var ise kullanıcı adı ve parolasını girerek bağlantı sağlayabilirsiniz. Şayet bir XMPP hesabınız yok ise bu aşamada kayıt imkanı veren bir sunucuda hesap açabilirsiniz. Tek yapmanız gereken kendinize bir sunucu seçmek.

Aşağıdaki sunucuları tercihinizde değerlendirebilirsiniz;

Calyx Institute - Çok geniş XMPP kullanıcı kitlesine hizmet veren bir Dernek. Sayısal haklar alanında çalışmalar sürdüren derneğin XMPP sunucusu anonim kayıt kabul ediyor. Kayıt için (kullanıcı adı)@jabber.calyxinstitute.org alan adı kullanılabilir.

Conversations - Conversations yazılımının kendi sunucusu. Şayet özgür yazılıma destek olunmak istiyorsanız ücretli bu hizmeti tercih edebilirsiniz. İlk altı ay ücretsiz kullanım imkanı vermekte.

Riseup - Riseup teknoloji kolektifinin ücretsiz hizmetlerinden biri de XMPP. Doğrudan kayıt imkanı vermediği için bir Riseup hesabı sahibi olmanızı gerektiriyor.

OTR kurulumu

Şimdi hem Pidgin hem OTR kurulu olduğuna göre

  • Ana pencereden Tools > Plugins’i seçin

  • Off-The-Record Messaging eklentisini etkinleştirin ve Configure’a basın

  • Listeden XMPP hesabınızı seçin ve Generate’e basın

  • ÖNEMLİ NOT!: "Default OTR Settings" altında hem Require private messaging hem de Don’t log OTR conversations seçeneklerini işaretleyin. Bu seçenekler yalnızca şifrelenmiş sohbetler yapmanızı ve sohbetlerin kaydının tutulmamasını temin eder. Fakat aklınızda olsun ki konuştuğunuz kişinin sohbetin kaydını tutma ihtimali her zaman vardır. Karşınızdaki kişiye sohbetinizin kaydını tutup tutmadığını sormak iyi bir fikirdir.

Rehbere Arkadaş Ekleme

  • Arkadaş eklemek için, ana Pidgin penceresinden Buddies > Add Buddy’i seçin.

  • Kendi hesabınızı seçtiğinizden ve doldururken arkadaşınızın kullanıcı adını doğru yazdığınızdan emin olun. Arkadaşlarınızı kategorize etmek üzere grup oluşturma seçeneğiniz bulunmakta.

  • Add’e tıklayın.

  • Arkadaşlarınız eklendiğinde sohbet etmeye uygun bir şekilde ana Pidgin penceresinde görünecekler. Sohbeti başlatmak için listeden arkadaşınızın kullanıcı adına çift tıklayabilirsiniz.

Arkadaşları Doğrulama

Start private conversation’a tıklayın ve gizli sohbetiniz için birbinizi doğrulamak adına talimatları izleyin. Birini doğrulamanın en kolay yolu kişiye sadece onun cevaplayabileceği bir soru sorduğunuz Soru Cevap yöntemidir. Bu, konuştuğunuz kişinin konuştuğunuzu sandığınız kişi olduğunu onaylama adına önemli bir güvenlik adımıdır. Kabul edilebilir sorulara örnekler:

S: Dün gece Hilmi’lerde seninle ne hakkında konuştuk? (küçük harf, iki kelime)

C: kaynak makinesi

Yukarıdaki konuşmada bahsedilen anda yalnızca iki kişinin bulunması sorulan soruyu güvenli kılıyor.

S: Yatak odamın duvarındaki afişi kim tasarladı? (küçük harf, üç kelime)

C: arı kovanı kolektifi

Bu da yatak odanıza aldığınız kişilere güvendiğinizi farzeden güvenli bir soru.

"Saçımın rengi ne?" veya "Köpeğimin adı ne?" gibi sorular güvenli sayılmaz çünkü herhangi biri bu soruların cevaplarını kolaylıkla tahmin edebilir.

OMEMO

OMEMO’ya Giriş

OMEMO mesajlaşmanın baştan sona(end-to-end) şifrelenmesini sağlar. OTR ile pratik olarak ayrılan modern ihtiyaçlara yönelik özellikleri mevcuttur.

  • Şifreleme Bütün şifreleme cihazınızda gerçekleşir. Sohbet güvenli olmayan ağlar ve hizmet sağlayıcılar üzerinden yapılsa bile başkaları tarafından okunması engellenir.
  • Doğrulama Konuştuğunuz kişilerin cihazlarının aynı cihaz olduğunu doğrulama.
  • Perfect forward secrecy (mutlak gizlilik) Eğer özel anahtarlarınızın kontrolünü kaybederseniz önceki herhangi bir sohbetiniz ifşa olmaz.
  • İnkar Edilebilirlik Gönderdiğiniz mesajlar sizin tarafınızdan gönderildiğine ilişkin üçüncü kişilerce anlaşılabilecek bir emare taşımaz. Herhangi biri sohbetin bitimi ertesinde mesajları sizden gelmiş gibi gösterebilir. Bununla birlikte, sohbet sırasında sizin iletişimde olduğunuz kişi gördüğü mesajların doğrulanmış ve değiştirilmemiş olduğundan emindir.

OTR ile OMEMO'nun farkı

OTR ile OMEMO'yu ayıran iki önemli fark vardır.

  • OTR herkesin şanslı iseler bir bilgisayarı bulunduğu ve "online" olmanın istisna olduğu bir zamanda tasarlanmış bir yazılım. Bu sebeple anlık olarak iki cihaz arasında, oturum sırasında iletişim kurmaya imkan vermekte. Hali ile bugün alışılan grup yazışmalarının yapılması mümkün değil. OMEMO ise grup yazışmalarına imkan tanımakta.

  • OTR iki cihazın da oturum başlangıcında İnternet'e bağlı olmalarını gerektirmekte. Bu sebepten offline olarak atılan mesajların alıcısına ulaşması mümkün olmamakta. OMEMO ise çift anahtarlama imkanı ile offline olarak atılan mesajların sunucuda belirli bir süre saklanarak daha sonra bağlanan alıcısına gönderilmesine imkan veriyor.

  • OTR insana dayalı bir güven sistemine sahip. İnsanların kişisel olmayan cihazları kullanmalarının çok yaygın olduğu dönemde iletişimde bulundukları kişilerin gerçekten iddia ettikleri kişi olduklarını doğrulanması elzem görülmüş. Bugün ise herkes kişisel cihaz sahibi ve cihazları kriptografik anahtarlar aracılığı ile doğrulamak çok daha kolay bir yöntem olduğundan OMEMO tarafından cihaza güven prensibi kabul edilmiştir.

OMEMO'yu Yükleme

GNU/Linux

Şu anda GNU/Linux sistemlerde tam işlevsellikle çalışan en iyi yazılım Gajim Pidgin için geliştirilen OMEMO eklentisi hala geliştirme aşamasında bulunduğundan sağlıklı olarak kullanılması pek mümkün değil gün itibari ile.

Bir uçbirim açın veya Alt+F2’ye basın ve çalıştırın:

Debian ve Ubuntu (APT): sudo apt-get insall gajim gajim-omemo Red Hat ve Fedora (RPM): sudo dnf insall gajim sudo dnf copr enable philfry/gajim dnf install python3-axolotl python3-axolotl-curve25519 python3-qrcode

Bu aşamadan sonra Gajim'i sisteminizde OMEMO eklentisi ile çalıştırabiliyor olacaksınız.

alt-text

OMEMO eklentisini etkinleştirmek için Gajim menüsünden plugins (eklentiler) kısmına girin.

alt-text

Ertesinde available (indirme) sekmesinden OMEMO eklentisini indirip kurabilir ve yüklenenler sekmesinden etkinleştirebilirsiniz.

alt-text

Android

F-Droid veya bir başka kaynaktan Conversations indirin. Conversations'nın Pix-Art gibi başka forkları da olmasına rağmen özellikle onları tercih etmenizi gerektirecek bir sebep olmadıkça Conversations en iyi tercih olacaktır.

Mac

Pidgin isimli yazılımı yükleyip, Pidgin için OMEMO eklentisi olan lurch'u üzerine kurarak OMEMO'yu kullanabilirsiniz. Ayrıca Gajim'in rehberini takip edebilirsiniz. (lurch hala geliştirilme aşamasında olan deneysel bir eklentidir.)

Hesabınıza giriş yapın veya yeni hesap oluşturun

Şayet bir sunucuda XMPP hesabınız var ise kullanıcı adı ve parolasını girerek bağlantı sağlayabilirsiniz. Şayet bir XMPP hesabınız yok ise XMPP istemcileri hesap eklerken "bu sunucuda hesap aç" anlamında bir seçeneği işaretleyerek girdiğiniz bilgilerle, bu özelliği kullanan sunucularda kullanıcı oluşturma imkanı vermekte.

Aşağıdaki sunucuları tercihinizde değerlendirebilirsiniz;

Calyx Institute - Çok geniş bir XMPP kullanıcı kitlesine hizmet veren bir dernektir. Dijital haklar alanında çalışmalar sürdüren derneğin XMPP sunucusu anonim kayıt kabul ediyor. Kayıt için (kullanıcı adı)@jabber.calyxinstitute.org alan adı kullanılabilir.

Conversations - Conversations yazılımının kendi sunucusu. Şayet özgür yazılıma destek olunmak istiyorsanız ücretli bu hizmeti tercih edebilirsiniz. İlk altı ay ücretsiz kullanım imkanı vermekte.

Riseup - Riseup teknoloji kolektifinin ücretsiz hizmetlerinden biri de XMPP. Doğrudan kayıt imkanı vermediği için bir Riseup hesabı sahibi olmanızı gerektiriyor. Riseup'ın amacı dünyada mücadele gösteren topluluklara ve kişilere teknolojik destek vermek olduğundan ve sadece bağış ile ayakta kaldıklarından ya bağış yapmak ya da kaynaklarını kullanmak konusunda dikkatli olmak gereklidir.

Rehbere Arkadaş Ekleme

  • Arkadaş eklemek için, ana Gajim penceresinden Accounts (Hesaplar) > Add Contact (kişi ekle) seçin.

  • Kendi hesabınızı seçtiğinizden ve doldururken arkadaşınızın kullanıcı adını doğru yazdığınızdan emin olun. Arkadaşlarınızı kategorize etmek üzere grup oluşturma seçeneğiniz bulunmakta.

  • Add (Ekle) ’e tıklayın.

  • Arkadaşlarınız eklendiğinde sohbet etmeye uygun bir şekilde ana Pidgin penceresinde görünecekler. Sohbeti başlatmak için listeden arkadaşınızın kullanıcı adına çift tıklayabilirsiniz.

Arkadaşları Doğrulama

OMEMO ile yazışmaya başlamak için öncelikle konuşma penceresinde mesaj kutusunun yanındaki asma kilit sembolünden OMEMO'yu seçmekle başlayın.

alt-text alt-text

Daha sonra ilk mesajınız ile karşı tarafın OMEMO anahtarı sunucudan çekilecek ve size güvenip güvenmediğiniz sorulacak. Bu ekranda size ait tüm cihazların anahtarları ile karşı tarafın kullandığı tüm anahtarlar listelenecektir.

alt-text

Sertifika simgesine tıklayarak tüm anahtarlara olan güveninizi işaretleyebilir anahtarları silebilirsiniz. Anahtarları doğrulamak için konuştuğunuz kişi ile ikinci farklı bir kanaldan tercihen sesli iletişim ile karşılaştırma yapabilir veya yan yana geleceğiniz bir anı bekleyebilirsiniz. Mümkün olduğu sürece anahtarlara asla körlemesine güvenerek yazışma yapmayın.

Signal

Signal App Android, GNU/Linux, iOS ve Windows cihazlarda çalışan, OTR'nin takipçisi olan OMEMO protokolüne benzer bir yapı ile çalışan bir anlık yazışma yazılımıdır. Open Whishper Systems tarafından geliştirilen yazılım pek çok güvenlik uzmanı tarafından başarılı bulunmaktadır.

Avantajları

  • Şifreleme Signal, tüm yazışma ve görüşmeleri cihazınızda konuştuğunuz kişiye özel ürettiği anahtar ile şifreler. Bu sayede yazışmanın gönderildiği aşamada ne ağı takip edenler ne de Signal'in kendi sunucuları yazışmalarınızın içeriğine ulaşamaz.
  • Bütünlük Signal kullanırken eğer konuştuğunuz kişiler ile güvenlik numaranızı bir karekodu taratarak veya parmak izini karşılaştırarak doğrularsanız iletişimizde araya kimsenin girmediğine emin olabilirsiniz. Signal bu numaranın bir sebeple değiştiği durumlarda belirgin şekilde kullanıcılarını uyararak güvenliğin eksildiğini bildirir.
  • Perfect forward secrecy (mutlak gizlilik) Eğer özel anahtarlarınızın kontrolünü kaybederseniz önceki herhangi bir sohbetiniz ifşa olmaz.

Dezavantajları

  • Cihaza güven Signal protokolü OMEMO gibi cihaza güven taşıdığı için o cihazı kullanan bir başkası ise o kişiyi doğrulamanın OTR gibi bir imkanı yoktur.
  • Federasyon eksikliği Signal'in arkasında bulunduğu Whisper Systems ve Moxie Merlinspike Signal sunucularını federasyona açmayacağına dair kesin bir duruş sergilemektedir. Bu bakımdan ileride Whisper Systems ortadan kalkar veya hizmetlerini vermek konusunda kısıtlamalara giderse Signal kullanıcıları çaresiz kalacaktır.
  • Anonim olmaması Signal anonim olarak kullanılabilecek bir yazılım değildir. Kurulumu sırasında kullanıcılarından SMS alabilecek bir telefon numarası talep etmekte ve kullanıcının arkadaşlarını rehberinde bulunan telefon numaraları aracılığı ile bulmaktadır. Her ne kadar signal telefon numaralarını doğrudan sunucusuna yüklemese de bir kullanıcı kimliğini veya telefon numarasını koruyarak bir başka Signal kullanıcısı ile görüşemez. Kimi basın çalışanlarının yaşadığı gibi bu durum kimi zaman tehlike yaratabilir.

Signal nasıl kurulur?

Mobil Platformlar

Android veya IOS çalıştıran cihazlarda Signal kullanmak, herhangi bir yazılımı kurmak kadar kolaydır. Playstore veya Appstore'dan arama yapıp Signal'i kurabilirsiniz.

Bu şekilde kurulum yaptığınız durumda Signal'in Google'ın bildirim ve harita hizmetlerine ait bağımlılıklarını içeren versiyonunu kuracağınızı aklınızda bulundurmalısınız. Ne yazık ki Signal bu bağımlılıkları kullanmakta ısrar ettiği ve belirli yazılım özgürlüklerini göz ardı ettiğinden F-droid depolarında yer bulmamakta. Bu yüzden Android versiyonunun APK kurulum dosyasını indirmelisiniz. MUTLAKA indirdiğiniz dosyanın parmak izi doğrulamasını yapın. Bunun için bir GNU/Linux bilgisayarda uç birimde aşağıdaki komutu çalıştırarak Signal'in indirme sayfasında verdiği parmak izi karşılaştırılabilir;

keytool -list -printcert -jarfile [apk'nın yolu]

Kurulum bir kere güvenli şekilde tamamlandıktan sonra Signal kendisini düzenli olarak güncelleyecektir.

GNU/Linux

Signal kendi web sayfasında Debian tabanlı dağıtımlar için kurulum dosyasını sunmaktadır.

Flatpak kullananlar dağıtımlarından bağımsız olarak Signal masaüstü istemcisini sistemlerine Flatpak repolarından kolaylıkla kurabilirler.

İpuçları ve Öneriler

  • Signal mahremiyet vadeden bir platform değildir. Tüm kullanıcılarını, kimliklerine sıkı sıkıya bağlı ve anonimlikten uzak cep telefonu numarası ile tanımlar. Telefon numarası anonimliğin güvenlik için gerektiği durumlarda ciddi tehlikeli bir veridir. Bu bakımdan Signal'den beklentiniz anonimlik olmamalıdır.

  • Signal'i kullandığınız kişiler ile anahtarlarınızı doğrulamazsanız şifrelemenin güvenliğini ciddi miktarda zayıflatmış olursunuz. Bu tip saldırılar hem devletler tarafından hem de kötücül amaçlı bireyler tarafından gerçekleştirilebilmekte. Konuşma penceresinde kişi ismine tıkladıktan sonra açılan menünün en altında "Güvenlik numarasını görüntüle" bölümündeki numaraları SIGNAL HARİCİ bir kanaldan doğrulayabilir. Yan yana iken gösterilen karekodu taratarak doğrulama yapabilirsiniz.

alt-text alt-text

  • Sesli aramalarınızı da Signal aracılığı ile yapabilirsiniz. Bu size olağan aramalara göre çok daha yüksek mahremiyet sağlayacaktır. Çevreniz ile kullanmanız önerilir. Bazı kullanıcılar VPN ile signal kullanırken ses bağlantı sorunları yaşayabilmektedir.

  • Signal ve geliştiriciliğini yapan Open Whisper Systems pek özgürlük taraftarı değildir. Moxie Merlinspike, özgür olan signal'in Google servisleri içermeyen LibreSignal forkunu yasal tehditler ile ortadan kaldırmıştır. Hali ile Signal bir gün kullanıcılarına sırtını dönerse Signal'i kendi sunucunuz ile kullanmak için çokça çaba harcamanız ve bağlantılarınızı kaybetmeniz olasıdır.

Silence ile SMS Şifreleme

SMS'ler neden şifrelenmelidir?

SMS veya kısa mesaj servisi cep telefonlarına gelen ilk yazılı iletişim sistemidir. Bu amaçla günümüzde artık kişiler arasındaki iletişim için pek kullanılmasa da GSM sistemleri tarafından hala desteklenmekte ve 2FA için sıklıkla kullanılmaktadır.

SMS'ler operatörlerin elinde bulunan anahtarlarla telefon ile baz istasyonu arasında şifrelenmektedir. Lakin anahtar kullanıcının kontrolünde olmadığından uçtan uca şifrelemenin sağlayacağı güvenliği veya operatör ile uyması gereken kanunlara karşı mahremiyeti sunamayacaktır. Aynı zamanda GSM ağındaki SMS şifrelemenin dayanıklılığı da şüphelidir.

SMS şifreleme gerekli midir?

Çoğu günümüz kullanıcısının SMS'i unuttuğu düşünüldüğünde SMS'in gerekliliği veya zaten kullanılmayan bir şeyin şifrelenmesi sorgulanabilir. SMS'i mobil cihazlarla iletişimimiz yönünden önemli kılan bir özelliği vardır: İnternet gerektirmemesi. Mobil İnternet iletişiminin veya genel olarak İnternet erişiminin kesildiği, engellendiği veya bulunulan alan dolayısı ile mümkün olmadığı durumlarda SMS kullanılabilir tek yazılı iletişim sistemidir. Aynı zamanda sesli aramaya göre çok daha az bant genişliği kullandığından afetlerde veya baz istasyonu kapasitesinin dar olduğu bölgelerde başarılı şekilde kullanılabilmektedir.

Bu sebepte ötürü SMS ile şifreli yazışma yapabilmek kimi olasılıklarda yapılabilecek tek şifreli iletişim olabilir. Bu sebepten SMS şifrelemeye bugünden başlanması ve hazır tutulması sadece günlük mahremiyetinizi ve güvenliğinizi arttırmaz aynı zamanda olası bir durumda iletişiminizi güvenli tutmaya imkan sağlar.

SMS nasıl şifrelenir?

SMS temelde mesaj başına 160 karakter metin aktarımı sağlar. Bu bakımdan haricen şifrelenmiş bir veriyi mesaj olarak göndermenizde bir engel yoktur. Dilerseniz GPG ile bir mesajı şifreleyip SMS ile uzun da olsa göndermeniz mümkündür. Bu yöntem kesinlikle pratik olmamakla birlikte gerektiğinde kullanılabilir.

Silence özgür bir Android yazılımı olarak SMS şifrelemeyi neredeyse sorunsuz şekilde gerçekleştirmektedir. F-droid üzerinden indirebileceğiniz yazılım cihazınızın standart SMS yazılımının yerine geçer ve hem şifreli hem şifresiz SMS'lerinizi Silence aracılığı ile kullanabilirsiniz. Silence ile diğer SMS yazılımları arasındaki farkı anlamak neredeyse mümkün değildir.

Silence ile SMS şifreleme

Silence'i kurup ilk çalıştırdığınızda sizi bir kurulum sihirbazı ile karşılayacaktır. Devam (continue) diyerek devam edin.

alt-text

Açılış ekranı geldiğinde üst çubukta telefonunuzda daha önce bulunan SMS'leri kendi bünyesine eklemek isteyip istemediğinizi soracaktır. Evet demeniz durumunda SMS'lerinize erişmek için yetki isteyecek ve olumlu cevaplamanız üzerine var olan mesajlarınızı indirecektir.

alt-text alt-text

Sonrasında size gelen mesajlara iletildi raporu gönderip gördermemek konusunda izninizi isteyecektir. Bu karar mahremiyet beklentinize göre cevaplamalısınız. İletim raporları mesaj atanlara cihazınızın açık ve mesajın iletildiğini bildireceğinden sosyal/güvenlik sorunları yaratabilir.

alt-text

Ardından Silence sizi ana ekranı ile baş başa bırakacaktır. Bu noktadan sonra kimi ayarlara müdahale edebilir ve yazılımı tanımaya başlayabilirsiniz. Ana ekrande 3 adet düğme bulunur.

alt-text

Menüye tıkladığınızda sizi aşağıdaki seçenekler karşılar.

alt-text

İçe ve dışa aktarım ayarları (import/export) Silence'ın kullanımında önemlidir. Bu ayarlardan Silence'da bulunan SMS'lerinizi yedekleyebilir ve yedeklerinizi daha sonra geri alabilirsiniz. Yedeklerinizi şifreli almanız güvenliğiniz için önerilir veya şifresiz yedeklerinizi alıp daha sonra şifreleyebilirsiniz. Cihazınıza olan güveniniz bu kararınızda etkili olacaktır.

alt-text

Mahremiyet (privacy) ayarları da Silence'ın kullanımına ilişkin önemli ayarları içerir. Bu menüde yapabileceğiniz en önemli ayar bir parola ile Silence'ın anahtar ve SMS'lerinin bulunduğu veri tabanını şifrelemektir. Bunun için parolayı etkinleştir (enable passphrase) seçeneğine tıkladıktan sonra gelen bölüme bir parola yöneticisinden aldığınız rastgele parolayı veya bir Zarola girerek kurulumu sonlandırabilirsiniz.

alt-text

alt-text

Menü de "kimlik anahtarınız" (Your Identity Key) menüsünde, Silence'ın SMS'lerinizi şifrelemekte kullandığı anahtarın parmak izini bulabilirsiniz. Bu parmak izi sizi tanımlamakta ve Silence ile şifreli yazıştığınız kişiler bu anahtara güvenmektedirler. Bu kimlik bilgisini web sitenizde yayınlayabilir, çevrenize çeşitli kanallardan duyurabilirsiniz. Böylece size ilk defa şifreli SMS atacaklar yazışmanın güvenli olduğunu doğrulayabilir. Bu anahtar telefonunuzu değiştirmeniz, yeniden kurmanız veya Silence'ı yedeklemeden kaldırmanız durumunda kaybolacaktır. Bu neden ile şifreli bir yedeği dışa aktarıp güvenli şekilde saklayarak anahtarınızı koruyabilirsiniz.

alt-text

Şifreli yazışma yapmak için ana ekrandan yeni mesaj düğmesine basıp gelen listeden Silence kullandığını bildiğiniz birini seçin ve yeni bir yazışma başlatın.

alt-text

Karşınıza gelen ekranda kişinin isminin yanında bulunan açık konumdaki asma kilit sembolüne tıklayın ve ardından "Güvenli oturum başlat" (start secure session) düğmesine tıklayın.

alt-text alt-text

Gelen soruyu "evet" olarak cevaplamanız durumunda Silence karşı tarafa anahtar değişimi için bir SMS gönderecektir. Konuşmak istediğiniz kişi Silence kullanıyor ise kendisine sizin onun ile güvenli oturum başlatmak istediğinize dair bir bildirim düşecektir. Kişinin bu bildirimi olumlu cevaplaması ile size anahtar değişimini tamamlayacak bir SMS gelecek ve kişinin isminin yanındaki asma kilit sembolü kapalı konuma geçecektir.

alt-text

Anahtarların doğrulanması

Her uçtan uca şifreleme aracında olduğu gibi Silence kullanırken de konuştuğunuz kişiler ile anahtarlarınızı mutlaka doğrulamalısınız. Aksi halde iletişimizin arasına giren kötü niyetli bir kişinin iletişiminizi takip edebilir veya dilediği gibi değiştirebilir. Bunu engellemek için konuştuğunuz kişinin bölümüne gelip asma kilit simgesine tıklayıp "verify identity" (kimlik doğrula) bölümünü açıp ilgili alandaki size ve karşı tarafa ait anahtarların doğru olduğunu kontrol etmelisiniz.

alt-text

alt-text

Bunu doğrulamayı tercihen sesli bir iletişim kanalı üzerinden yapabilirsiniz. GSM araması yerine signal veya Jitsi araması yaparak daha güvenli bir doğrulama gerçekleştirebilirsiniz. Her halükarda en iyisi bu karşılaştırmayı yüz yüze yapmaktır. Bu durumda anahtarların göründüğü ekranın sağ üst köşesindeki karekod okutma imkanı çok kolaylık sağlayacaktır. Açılan menüden kendi anahtarınızı karekod olarak göstermeyi veya karşı tarafın karekodunu taramayı seçebilirsiniz.

alt-text alt-text

Bu noktadan sonra Silence anahtar değişimi yaptığınız kişi ile şifreli olarak SMS alıp gönderecektir. Siz ise bu durumu asma kilit sembolünden başka hiçbir noktada fark etmeyecek ve rahatlık içinde iletişiminizi sürdürebileceksiniz.

Ağ Güvenliği

Ağ güvenliğinizi iyileştirin

İnternet vahşi bir yer. Ağ üzerinde yaptığınız neredeyse her işlem bir şekilde kaydediliyor, arşivleniyor ve inceleniyor. Bu hem devletlerin amaçları için hem de şirketlerce size reklam satmak için yapılıyor. Herhangi bir bilgisayarı İnternet'e bağladığınız anda güvenliğinizin eksilmesi işten bile değil.

Peki İnternet'in paydaşları olarak bizler neler yapabiliriz? Ağ güvenliği bilgisayarınızı ve iletişiminizi ağ üzerinde nasıl koruyabileceğinize dair tavsiyeler içermektedir.

Güvenli Web Gezintisi

Web tarayıcınızı seçin

Her gün, muhtemelen en sık kullandığınız yazılım web tarayıcınızdır. Bu sebepten dolayı, web tarayıcınızın güvenli ve özgür olması çok kritiktir. Mozilla Firefox kullanın!

Firefox'u buraya tıklayarak indirebilirsiniz.

Firefox'ta ayarlarınızı yapın

Üçüncü taraf çerezleri devre dışı bırakın

Üçüncü parti çerezler, siz İnternet'te gezinirken davranışlarınızı izlemek için reklam ağları tarafından kullanılan tanımlayıcılardır.

  1. Sandviç menüden Tercihler'e girin. Gizlilik ayarlarını yapmak için Gizlilik ve Güvenlik'e tıklayın. Gelişmiş izleme koruması başlığı altındaki Üçüncü sırada olan "Özel" seçeneğini seçin.

2.En yüksek düzeyde güvenlik için sırasıyla Çerezler, Takip amaçlı içerikler, Kripto madencileri, Parmak izi toplayıcılar seçeneklerinin hepsini işaretleyerek engellenmelerini sağlayın.

  1. Çerezler'in yanındaki menüden "Tüm üçüncü taraf çerezleri"ni seçin. Hemen altındaki menüden "Tüm pencerelerde" seçeneğini seçin.

alt-text

  1. Aşağı inince göreceğiniz "Web sitelerine Do Not Track (İzlemeyin) sinyali gönder" ibaresinin altında "Her zaman" seçeneğini tıklayın.

alt-text

  1. Çerezler ve site verilerinin altında "Firefox kapatıldığında çerezleri ve site verilerini sil" seçeneğini işaretleyin.

  2. Gezinme geçmişinizin temizlendiğinden emin olmak için; Geçmiş ayarlarının olduğu yerdeki menüden "Firefox geçmiş için özel ayarlar kullansın" seçeneğini işaretleyin. Altındaki kutucuklardan "Firefox kapatılınca geçmişi temizle"yi tıklayın.

alt-text

  1. İzinler başlığının altında "Açılır pencereleri engelle" ve "Siteler eklenti yüklemeye çalıştığında beni uyar" seçeneklerini seçin.

alt-text

  1. Firefox veri toplama ve kullanma izinleri başlığının altındaki hiçbir kutucuğu işaretlememenizi öneririz.

  2. Aldatıcı içerik ve tehlikeli yazılım koruması başlığının altındaki kutucukların hepsini işaretleyin.

  3. Sertifikalar başlığının altında "Her seferinde bana sor" ve "Sertifikaların geçerliliğini doğrulamak için OCSP otomatik yanıt sunucularını sorgula" seçeneklerini işaretleyin.

alt-text

Varsayılan arama motorunuzu değiştirin

Yine tercihlerden "Arama" kısmına gelin. Varsayılan arama motoru olarak duckduckgo.com'u seçin. Riseup arama motoru olarak DuckDuckGo'yu öneriyor. Masaüstü veya mobil tarayıcılar için kurulum talimatlarını inceleyin.

Tarayıcı eklentileri

Eklentiler aksi belirtilmedikçe Firefox ve Chrome (mülk yazılım!) ile uyumludur.

Başlıca eklentiler

Aşağıdaki eklentiler, herkesin sürekli olarak kullanmasını önerdiğimiz başlıca eklentilerdir. Stabil ve açık kaynak olan bu eklentiler, web sitelerinin bozulmasına çok nadir sebep olurlar.

uBlock OriginuBlock Origin (Chrome, Firefox) reklam ve takipçi ağların çoğunu engeller. Adblock Plus veya Disconnect'e benzerdir ama daha iyi ve daha hızlı çalışır.
HTTPS EverywhereHTTPS Everywhere, destekleyen web sitelerinde otomatik olarak güvenli TLS bağlantılarına geçiş yapar. Gezinti içeriğinizin gözetilmesine karşı korunmanıza yardımcı olur. Hangi siteleri ziyaret ettiğinizi gizlemez (ayriyeten Tor veya VPN kullanmıyorsanız).
Privacy BadgerPrivacy Badger sizi izleme eğiliminde olan takipçileri dinamik olarak tespit eder ve engeller. Privacy Badger reklam engelleyici olmadığı için uBlock alternatifi değildir, ancak uBlock'un varsayılan modda sahip olmadığı güvenlik özelliklerine sahiptir.

Kullanım notları;

  • IP adres sızıntıları; Tüm tarayıcılar sesli ve görüntülü konferanslar sırasında gerçek IP adresinizi sızdırır. Eğer VPN veya Tor ile birlikte sesli veya görüntülü konuşma gerçekleştiriyorsanız, uBlock ayarlarında WebRTC IP sızıntılarını engelleyen ayarı aktif etmelisiniz.
  • uBlock gelişmiş mod; Eğer uBlock'u gelişmiş modda kullanıyorsanız, ayriyeten Privacy Badger kullanmanız gerek yoktur.

Gelişmiş Eklentiler

Bu eklentiler kullanımları zor olduğundan veya web sitelerinde bozulmalara yol açabileceğinden için ileri düzey kullanıcılar içindir.

Bu eklentiler web tarayıcılarının çalışma şekillerinden kaynaklanan temel mahremiyet kusurlarının üzerinden gelmeye çalışır. Ancak, pek çok web sitesi basit işlevler için bu kusurlardan faydalanır, bu yüzden bu kusurları gidermek zaman zaman web sitelerinin çalışmamasına sebep olabilir.

Bahsedilen kusurların bazıları şunlardır;

  • HTTP Referrer: Bir linke tıkladığınızda, tarayıcınız bulunduğunuz sitenin konumunu yeni siteye gönderir. Hassas ve kişiyi tanımlayan bilgiler site URLinde bulunabileceğinden, HTTP Referer kapatılmalıdır. Bunu sadece bir eklenti kullanarak gerçekleştirebilirsiniz.
  • HTTP User-Agent: Tarayıcınız ziyaret ettiğiniz her web sitesine, tarayıcınıza özel bir "User-Agent" bilgisi gönderir. Bu bilgi çevrimiçi etkinliğinizi belirlemek için diğer veriler ile birlikte kullanılabilecek pek çok benzersiz veri içerir. Tor Tarayıcı'da kullanılanlar gibi daha genel bir değer kullanmak daha iyidir.
  • HTML5 Canvas: Pek çok site tarayıcınızın benzersiz bir parmakizini almak ve sizi izlemek için HTML5 Canvas kullanmaya başladı. Şu anda bu özelliği devre dışı bırakmak için bir yol olmasa da, bazı eklentiler ile önüne geçilebilir.
  • JavaScript: JavaScript günümüzde pek çok web sitesi için temel bir bağımlılıktır, ama zaman zaman devre dışı bırakmak isteyebilirsiniz. JavaScript aktifken, web sitelerinin tarayıcı parmakizinizi oluşturması ve sizi izlemesi çok daha kolaydır. Ayrıca tarayıcı güvenlik kusurlarının pek çoğu JavaScript kaynaklıdır.

Firefox için:

  • µMatrix seçici olarak JavaScript'i, eklentileri veya diğer kaynakları engellemenize ve üçüncü-taraf kaynakları kontrol etmenizi sağlar. Bunun yanında mahremiyetinizi korumak için user-agent maskeleme, referer engelleme gibi ek özellikler sunar. NoScript ve RequestPolicy yerine kullanılabilir.
  • Canvas Blocker HTML5 canvas desteğini belirli siteler için devre dışı bırakmanızı sağlar.

Chrome için:

  • µMatrix seçici olarak JavaScript'i, eklentileri veya diğer kaynakları engellemenize ve üçüncü-taraf kaynakları kontrol etmenizi sağlar. Bunun yanında mahremiyetinizi korumak için user-agent maskeleme, referer engelleme gibi ek özellikler sunar. NoScript ve RequestPolicy yerine kullanılabilir.
  • CanvasFingerPrintBlock HTML5 canvas desteğini belirli siteler için devre dışı bırakmanızı sağlar (eklenti kaynak kodu kapalıdır).

Zararlı veya önerilmeyen eklentiler

Popüler olmalarına rağmen, bu eklentileri kullanmaktan kaçınmanızı öneriyoruz.

  • Adblock Plus reklam ve takipçileri engellemek için en iyi eklentilerden biriydi. Ancak, şu an reklamverenlerin kendi filtrelerini atlamaları için bir rüşvet programı yürütüyorlar. Ayrıca, uBlock kullandığı teknoloji açısından daha iyidir.
  • Disconnect uBlock gibi çalışır ve kaynağı açıktır. uBlock kullanıyorsanız, uBlock'ta olmayan bazı görselleştirmeler sunmasına rağmen Disconnect gereksizdir.
  • Ghostery uBlock gibi çalışır, ancak varsayılan olarak pek çok takipçiye izin verir ve kaynak kodu özel mülktür.

Firefox'un Ayarlarını Güçlendirmek

Firefox ne yazık ki tam anlamı ile kullanıcı güvenliğini ve mahremiyetini koruyacak ayarlarla gelmemekte. Mozilla Vakfı genellikle kullanıcıların kolaylık beklentileri ile en yüksek güvenlik ve mahremiyet standartları arasında bir ortayol arama çabasında bulunmakta. Bu ortayol çabasını kendi güvenliğiniz lehine çevirmek için Firefox'un kimi gizli ayarlarını düzeltmeniz gerekli. Bunun için sırası ile aşağıdaki işlemleri uygulayabilirsiniz:

Öncelikle Firefox'u çalıştırıp adres çubuğuna aşağıdaki satırı yazıp giriş yapın:

about:config

Sizi satırlar dolusu bir tablo ve bir arama çubuğu karşılayacak. Aşağıdaki ayarlardan düzenlemek istediklerinizi arama çubuğuna yazıp belirtilen değişikliği yapabilisiniz.

WebRTC günümüzde Jitsi gibi pek çok tarayıcı üzerinden çalışan yazılımın kullandığı bir teknoloji. Lakin aynı zamanda tasarım itibari ile tarayıcınızın cihazınıza ait gerçek IP adresini sızdırmasına da sebep olmakta. Bu sebeple özellikle VPN ve TOR kullandığınız bir kurulumda WebRTC'nin devre dışı bırakılması önem arzediyor. Kimi web yazılımlarını bu sebepten dolayı çalışmayabilir.

media.peerconnection.enabled

Bu satıra çift tıklayarak false yazmasını sağlayın

Fingerprint veya parmakizi tarayıcıların cihaza özel yapılandırmalardan kullanıcıları takip etmeye yarayan bir yöntem. Firefox bunu varsayılan olarak engellemek üzerine ayarlı. Lakin yine de kontrol etmek isteyebilirsini.

privacy.resistfingerprinting "true" olmalıdır.

Firefox'un doldurduğunuz formların içeriklerini hatırlayıp kaydetmesini mahremiyetiniz için tercih etmeyebilirsiniz. Keza bu bilgiler cihazınızda duracağından sizin için bir risk oluşturabilir. Bu özelliği kapatmak için aşağıdaki ayarı değiştirebilirsiniz.

browser.formfill.enable "false" olmalıdır.

Web'de gezindiğiniz sayfaların cihazınızın konumuna erişmesi sizin için bir mahremiyet riski olabilir. Firefox'un bu talepleri kendiliğinden berteraf etmesi için aşağıdaki ayarı değiştirebilirsiniz.

geo.enabled "false" olmalıdır.

Telemetri tarayıcınızın kimi eylemlerini bildirmesine sebep olabilir. Bu girdiğiniz sitelerin sizin hakkınızda bilgi edinmesine ve sizi takip etmelerini sağlayabilir. Bu telemetrileri kapatmanız tavsiye edilir. Aşağıdaki satırları bulup "false" olarak işaretleyebilirsiniz.

toolkit.telemetry.archive.enabled
toolkit.telemetry.bhrping.enabled
toolkit.telemetry.firstshutdownping.enabled
toolkit.telemetry.newprofileping.enabled
toolkit.telemetry.unified
toolkit.telemetry.updateping.enabled
toolkit.telemetry.shutdownpingsender.enabled
toolkit.telemetry.shutdownpingsender.enabledFirstSession
toolkit.telemetry.pioneer-new-studies-available

Firefox tarama deneyiminizi iyileştirmek için çeşitli içerikleri siz açıkça talep etmeseniz de yüklemeye çalışabilir veya tarama geçmişinizi girdiğiniz sitelere iletebilir. Bu hareketlerinizi ifşa ettiğinden mahremiyetiniz için bir sakınca oluşturabilir. Bu ayarları değiştirerek Firefox'un sadece talep ettiğiniz içeriklere erişmesini sağlayabilirsiniz.

network.dns.disableprefetch "true" olmalıdır.

network.prefetch-next "false" olmalıdır.

dom.webnotifications.enabled "false olmalıdır.

network.http.sendRefererHeader "0" olmalıdır.

security.ssl.disable_session_identifiers arama çubuğuna yazdıktan sonra "bolean" seçeneğini seçip + simgesine tıklayın ve değerin "true" olduğunu kontrol edin.

İnternetin ve Web'in temel şifreleme teknolojisi olan TLS pek çok geçmişten kalan ve artık güvenli sayılmayan bağlantı standardını hala yaşatmaktadır. Eski sistemlerin desteklenmesi için süren bu uygulama sizin için bir güvenlik riski teşkil edebilir. Bu ayarları değiştirdiğinizde pek çok büyük şirketin ve kimi devlet kurumlarının sitelerinin çalışmaması sonucu ile karşılaşabilirsiniz. Güvenli bağlantı kurmayan bu sitelere erişmek için bu ayarları geçici olarak kaldırmanız gerekebilir.

security.ssl3.rsa_des_ede3_sha "false" olmalıdır.

security.ssl.require_safe_negotiation "true olmalıdır.

security.tls.version.min "3" değerinde olmalıdır.

security.tls.enable_0rtt_data "false" olmalıdır. Bu değer ile her şifreli bağlantı ile yeni bir anahtar oluşturulur.

WebGL Web yazılımlarının cihazınızın grafik işlemcisine erişebilmesini sağlayan bir teknoloji. Bu çeşitli güvenlik sorunlarını da birlikte getirdiğinden bu ayarı kapatmanız güvenliğinizi arttırabilir.

webgl.disabled "true" olmalıdır.

Tarayıcınızın bilgisayarınızın batarya durumunu ziyaret ettiğiniz web sitelerine iletmesinin bir anlamı var mı gerçekten?

dom.battery.enabled "false" olmalıdır.

Pi Hole ile Ev Ağını Güvene Almak

Pi Hole

Pi Hole nedir?

Pi Hole, ev ağları gibi özel ağlarda kullanmak için geliştirilmiş, ağ seviyesinde reklam ve takipçileri engellemenize yarayan özgür bir yazılımdır. Pi Hole sayesinde ağınıza bağlanan tüm cihazların DNS istekleri Pi Hole üzerinden geçerek filtrelenir ve reklam/takip amaçlı istekler engellenmiş olur. Tarayıcılar gibi geniş spektrumlu engelleyicilerin kullanılamadığı uygulamaları veya PlayStation gibi eklenti desteği bulunmayan cihazları da reklam ve takip amaçlı isteklere karşı koruyabilirsiniz.

Ön gereksinimler

  • Bir adet tek kart bilgisayar (Raspberry Pi, Orange Pi vs.)
  • Raspbian, Ubuntu 16.04+ ya da Debian 9+
  • 512 MB RAM
  • Ethernet kablosu
  • Cihaza atanmış statik IP (DHCP tarafından)

Eğer halihazırda bu işe özgüleyebileceğiniz bir tek kart bilgisayarınız yoksa, fiyat açısından Orange Pi Zero kullanmanız tavsiye edilmektedir. Yaklaşık 180 TL civarında Türkiye'den tek başına, 160 TL bandında ise AliExpress'ten kutusu ve ek kartıyla birlikte temin edebilirsiniz. (Son fiyat güncellemesi: 24 Şubat 2021)

Kurulum

Orange Pi Zero

Tek kart bilgisayarınızı Ethernet kablosu ile ağa bağladıktan sonra, kullandığınız yönlendiricinin paneline giriş yapıp hangi IP adresini aldığını kontrol edin. Yönlendirici paneliniz genellikle 192.168.1.1 adresinde (bulunduğunuz subnetin ilk IP adresi) bulunur, eğer erişemezseniz yönlendiricinizin modelini web'de arayarak ayrıntılı bilgi edinebilirsiniz.

Cihazın IP adresi

Eğer bu yöntemi kullanmak istemezseniz, GNU/Linux üzerinde kullanabileceğiniz netdiscover yazılımı da işinizi görecektir. sudo netdiscover komutunu çalıştırdıktan sonra aşağıdaki gibi Pi Hole kuracağınız cihazın IP adresini öğrenebilirsiniz:

Netdiscover

Sonrasında cihazınıza bir adet statik IP adresi atamanız gerekecek, yönlendiricinizin modeline göre farklı bir arayüzle karşılaşabilirsiniz. Bu sebepten gerektiğinde web'de arama yaparak ilerlemenizi öneririz.

Statik IP atama

Yukarıda görüldüğü gibi 192.168.1.254 adresi Pi Hole kuracağımız cihaza atanmış oldu. Ancak bu değişiklik cihazı yeniden başlattığınızda geçerli olacak, dolayısıyla ilk bağlantıda hala bir önceki menüde gördüğünüz IP adresini kullanmanız gerekiyor.

Bir uçbirim (terminal) açıp SSH ile cihazınıza bağlanın:

ssh root@192.168.1.194

Buradaki örnekte cihaz olarak Orange Pi Zero kullanıldığı için kullanıcı adı root olarak alınmıştır. Eğer Raspberry Pi kullanacaksanız, varsayılan kullanıcı adı pi, varsayılan parola ise raspberry'dir.

Eğer Windows kullanıyorsanız, SSH için PuTTY kullanabilirsiniz.

Eğer cihazınıza ilk defa bağlanıyorsanız, sorulan soruya yes cevabını verin. Aşağıdaki gibi bir prompt görüyorsanız cihazınıza başarıyla bağlanmış olacaksınız:

root@OrangePI:~ # 

# ya da Raspberry Pi için

pi@raspberry:~ $

Aşağıdaki komutu çalıştırarak kuruluma başlayabilirsiniz:

curl -sSL https://install.pi-hole.net | bash

Bu komutu çalıştırdığınızda şöyle bir görüntü sizi karşılayacak ve ardından bir süre gerekli paketler kurulacak. https://it-explain.com/linux-random-mac-address-on-boards-orangepi-nanopi/

Kurulum

Bir süre sonra karşınıza bir ncurses menü gelecek ve bağış yapmanızı hatırlatan veya statik IP'ye ihtiyaç duyduğunuzu söyleyen çeşitli uyarılarda bulunacak. Bunlara OK cevabını verip devam edin. Sonrasında şöyle bir soruyla karşılaşacaksınız:

Arayüz

Bu noktada eğer kablolu bağlantı üzerinden iletişim kurmak istiyorsanız (şiddetle tavsiye edilir) eth0 seçeneğini seçip devam edin.

DNS sağlayıcı

Bir sonraki adımda yukarıdaki DNS sağlayıcı seçimi ile karşılaşacaksınız. Arzu ettiğiniz bir DNS sağlayıcıyı seçebilirsiniz, ancak mahremiyetiniz ve daha iyi bir deneyim için OpenNIC üzerinden hizmet almanız şiddetle tavsiye edilir. OpenNIC kullanmak için "Custom" seçeneğini seçin ve tarayıcınızdan OpenNIC'in web sitesi olan https://opennic.org adresine girin. OpenNIC ana sayfasında size en yakın DNS sunucularını sıralayacaktır.

OpenNIC

Buradan aldığınız DNS sunucu bilgilerini aşağıdaki gibi girebilirsiniz.

OpenNIC Pi Hole

Daha sonrasında çıkan liste ayarını olduğu gibi bırakın ve devam edin.

IPv4 ve IPv6

Yukarıdaki menüde varsayılan olarak hem IPv4 hem de IPv6 üzerinden gelecek istekler engellenecektir. IPv6 Türkiye'de kullanılamadığından, arzu ederseniz kaldırabilirsiniz; ancak AirVPN gibi VPN servis sağlayıcıları veya Freifunk gibi ağlar IPv6 adreslemesi yapmaktadır.

Bir sonraki adımda statik IP'nizi onaylayın ve devam edin, ardından çıkan uyarıyı da onaylayın. Web yönetim arayüzünün yüklenip yüklenmeyeceği sorusuna "Evet" cevabını verin ve devam edin. Ardından sorulan tüm sorulara varsayılan cevaplarını verin ve kurulumu bitirin.

Her şey kurulduğunda aşağıdaki gibi bir uyarıyla karşılaşacaksınız:

Kurulum sonu

MAC adresi sabitleme

Bazı durumlarda, özellikle Orange Pi cihazlarda her açılışta MAC adresi rastgele seçilebilmektedir. Bunun için cihazınızın MAC adresini sabitlemeniz gerekir, bu işlemi aşağıdaki komutu çalıştırıp dosyayı düzenleyerek yapabilirsiniz:

nano /etc/network/interfaces.d/eth0

Açtığınız dosyaya mevcut MAC adresinizi aşağıdaki gibi ekleyin:

auto eth0
iface eth0 inet dhcp
    hwaddr 02:42:61:cd:c5:a2

Ctrl+O ve Ctrl+X kısayollarıyla kaydedip çıkın.

Yönlendirici ayarları

Şimdi yönlendiricinizdeki DNS ayarlarını Pi Hole'a yönlendirmeniz gerekiyor. Bunun için yine yönlendiricinizin yönetim paneline girin ve DNS yapılandırmasını bulun:

DNS yapılandırması

Daha sonra Pi Hole'un kurulu olduğu cihazın IP adresini ekleyin:

DNS ekleme

Kaydedip çıkın. İşlem tamamlandığında http://pi.hole adresine tarayıcınızdan erişebilmeniz gerekir. Eğer erişemiyorsanız yönlendiricinizi yeniden başlatın.

Web arayüzü

Tarayıcınızı açıp adres çubuğuna Pi Hole cihazınıza atadığınız IP adresini yazdığınızda veya http://pi.hole adresine girdiğinizde aşağıdaki gibi bir ekranla karşılaşacaksınız:

Web arayüzü açılış

Daha sonrasında "Did you mean to go to the admin panel?" bağlantısına tıkladığınızda yönetim paneli karşınıza çıkacak:

Yönetim paneli

Buradan "Login" seçeneğini seçip kurulumda size verilen parolayı girin. Eğer parolayı hatırlamıyorsanız, Pi Hole cihazınıza erişip pihole -a -p komutunu çalıştırırsanız yeniden parola oluşturabilirsiniz.

Giriş

Giriş yaptıktan sonra şöyle bir panel sizi karşılayacak:

Panel

Buradan bazı alan adlarına izin verebilir, yeni alan adlarını kara listenize ekleyebilirsiniz. Bunun haricinde yerel DNS kayıtları oluşturabilir, örneğin masaustu.lan alan adının masaüstü bilgisayarınıza yönlenmesini sağlayabilirsiniz.

Bilinen sorunlar ve çözümler

Pi Hole kendi kendine çalışmayı durduruyor

Pi Hole'un bazı durumlarda kendi kendine çalışmayı durdurup isteklere yanıt vermemesi durumu oluşabilmektedir. Bu durum, sistem saatinizin ayarlı olmamasından kaynaklanmaktadır. Sorunu aşağıdaki komutu kullanarak ntp servisini kurup, sistem saatinizi zaman sunucularıyla senkronize ederek çözebilirsiniz.

sudo apt-get install ntp

Sonuç

Artık Pi Hole sayesinde daha güvenli bir ağa sahip oldunuz, ancak Pi Hole'un yetenekleri bununla sınırlı değil elbette. Resmi web sitesinde yer alan belgelerde, tüm trafiği Tor üzerinden yönlendirmekten Pi Hole üzerinde basit bir web sunucusu çalıştırmaya kadar pek çok ek özelliği nasıl kullanabileceğiniz anlatılıyor. Keyifli okumalar dileriz.


Pi Hole web sitesi: https://pi-hole.net

Tor logo

Tor

Tor, trafiğini gönüllüler tarafından oluşturulan ağ noktaları (Tor relay) üzerinden şifrelenmiş bir biçimde yönlendirerek kullanıcılarına İnternet üzerinde belirli ölçüde anonimlik sağlayan özgür bir ağ projesidir.

Tor ağı nasıl çalışır?

Tor ağının başlıca amacı; kullanıcılarının internet üzerindeki kimliklerini ve aktivitelerini ağ trafiğini rastgele bağlantı noktaları üzerinden sektirerek her türlü otorite gözetiminden korumaktır.

alt-text

Her bağlantı noktasını bir kaldırım taşı olarak düşünürseniz, Tor ağı sizin ve bağlanmak istediğiniz hedefin arasında rastgele kaldırım taşlarından oluşturulmuş bir yol yaratır. Böylelikle sizden çıkan trafiğin nereye gittiği veya karşıdan gelen bilginin kime geldiğini sadece giriş ve çıkış noktaları bilebilir. (Bu aynı zamanda Tor ağının bir zayıflığıdır ve ileriki başlıklarda değinilecektir.)

Buraya kadar genel işleyişi anlayıp benimsediyseniz yavaş yavaş tarayıcı kurulumuna geçebiliriz.

Tor Browser

Öncelikle şunu asla unutmayın, Tor Browser bilgisayarınızın tüm trafiğini Tor ağı üzerinden geçirmez.
Örneğin, Tor Browser ile gezinirken, arkaplanda "X" bir mesajlaşma programı kullanıyorsanız, "X" programı üzerinden giden trafik Tor'dan geçmeyecek, dolayısıyla anonim olmayacaktır.

Tor Browser, Mozilla Firefox'un bir çatallamasıdır (fork).

Ülkemizde Tor ağının bilinen düğümleri engellenmiş durumda olduğundan Tor ağına köprüleri (bridges) kullanarak bağlanabiliyoruz.

Türkiye'de Tor yasaklı DEĞİLDİR, çünkü "Tor'u yasaklamak" diye bir şey YOKTUR.

Gönüllü olarak işletilen Tor düğümlerinin IP adresleri İnternet'te açık bir şekilde listelenmektedir. Böylelikle otoriteler (kurumlar, kuruluşlar veya devletler) bu IP adreslerini bloklayarak Tor ağına erişim engellemeye çalışmaktadır. Ancak bu durum Tor'u tamamen erişilemez hale getiremez. Tor'un engellenmeye çalışıldığı ülkelerde Tor'a erişim, köprüler aracılığıyla gerçekleşir. Bu köprüler, Tor Project'in web sitesinde bahsedildiği üzere, ana Tor dizininde bulunmazlar. Halka açık olarak yayınlanan bir liste bulunmadığından otoritelerin bütün bu IP adreslerini bulup engellemesi neredeyse imkansızdır.

Köprü kullanarak Tor ağına girmeye çalıştığınızda, öncelikle her zamanki gibi halka açık bir Tor düğümüne değil, bir köprüye bağlanırsınız. Daha sonra bağlandığınız köprü sizi şifreli bir bağlantı ile halka açık bir Tor ağ noktasına bağlar ve böylelikle Tor ağına girişiniz gerçekleşmiş olur.

Tor Browser'ı, Tor'un kendi web sitesi Türkiye'de erişime engelli olduğu için EFF Tor yansısından indirebilirsiniz.

Alternatif linkler:

Bunların hiçbirine erişemiyorsanız, gettor@torproject.org adresine, işletim sisteminizi ve istediğiniz dili içeren aşağıdaki gibi bir e-posta atarsanız, indirme linkiniz attığınız e-postaya cevap olarak gelecektir. Cevabın gelmesi bazen 1 saati bulabilmektedir.

windows tr

Bu noktadan itibaren işletim sisteminize göre:

GNU/Linux

Türkçe (tr) 64-bit

tor-browser-linux64-9.5.3_tr.tar.xz

dosyasını indirin.

Ardından indirilen dosyanın bulunduğu dizine gidip sıkıştırılmış dosyayı çıkartın.

Uçbirim kullanıyorsanız bunu

tar -xJvf tor-browser-linux64-9.5.3_tr.tar.xz

komutuyla yapabilirsiniz.

Oluşturulan dizin içinde "Tor Browser Setup" veya "start-tor-browser.desktop" isimli bir dosya ve "Browser" isimli bir dizin olmalı. "Tor Browser Setup"a çift tıklayarak Tor tarayıcısını başlatabilirsiniz.

Not: "Tor Browser Setup" isimli dosyaya çift tıkladığınızda "Güvenilmeyen uygulama" konulu bir uyarı alabilirsiniz. "Güven ve başlat" butonuna tıklayıp kurulumu başlatıyoruz.

Karşınıza şöyle bir ekranın gelmesi gerekiyor. Tor ilk ekran

"Yapılandır" butonuna basarak devam ediniz.

Tor yapılandırma

Karşınıza gelen ayarlardan, "Bulunduğum ülkede Tor engelleniyor" seçeneğini işaretleyin ve ardından çıkan seçeneklerden "Bir hazır köprü seçin"e tıklayıp türünü "obfs4" olarak değiştirin.

Her şeyi doğru yaptığınıza eminseniz nihayetinde "Bağlan" tuşuna basarak Tor bağlantınızı başlatabilirsiniz.

Tor yükleme ekranı

Tarayıcınız açılır açılmaz aşağıdaki gibi bir uyarı alacaksınız. Dil ayarınızı İngilizce yapmak anonimliğinizi artıracaktır, çünkü dünyadaki İnternet kullanıcılarının dörtte üçü İnternet'i İngilizce kullanmaktadır. Tercihinize göre "Evet" diyip devam edin.

Tor İngilizce sorusu

Kurulum ve güncelleştirmemiz bittiğine göre artık tarayıcıyı kullanabilirsiniz. Ufak bir test yapmak isterseniz, Özgür Yazılım Derneği'nin Tor adresine girebilirsiniz:

http://oyd647g3rtaqoqf4ejv43zdjmhmfhhx6f474bonalquwezfjda4ybyyd.onion/

alt-text

Yapmanız gereken birkaç ayar daha var. Sağ üst köşedeki kalkan düğmesine basıp, "Gelişmiş güvenlik düzeyi ayarları" menüsüne girin. Daha sonra burada, "Güvenlik Düzeyi"ni "Daha Güvenli" olarak seçin. Burada istiyorsanız "En Güvenli" seçeneğini de seçebilirsiniz, ancak JavaScript'lerin engelleneceğini, fontlar veya görseller gibi pek çok site bileşeninin doğru görüntülenemeyebileceğini unutmayın.

Tor hardening

Tor hardening

Bu sayfayı en yukarıya kaydırdığınızda, yani "Gizlilik ve Güvenlik" menüsünün en üstünde, "Onion Hizmetleri" başlığını göreceksiniz. Bu ayarı da "Her zaman" olarak değiştirin. Bu ayarı aktive ettiğinizde, eğer bir web sitesinin .onion uzantılı Tor servisi varsa, Tor tarayıcısı otomatik olarak .onion'lu servise bağlanacaktır. Bu özelliğin kullanılabilmesini sağlayan şey, "Onion-Location" HTTP başlığıdır, ayrıntılı bilgi için burayı ziyaret edebilirsiniz.

Tor hardening

Bu ayarı açmadığınızda da, girdiğiniz sitenin .onion servisi varsa tarayıcınızın çubuğunda şöyle bir düğme çıkar:

Tor hardening

Bunu denemek için, Özgür Yazılım Derneği'nin sitesini kullanabilirsiniz. https://oyd.org.tr'ye gittiğinizde Tor tarayıcı ".onion available" uyarısı verecektir.

UNUTMAYIN: Sadece Tor Tarayıcı üzerinden yaptığınız trafik Tor ağından geçecektir!!!

Uyarılar:

  1. Tor Browser'ı tam ekran kullanmayın.

  2. Tor Browser'ı kendi dilinizde kullanmayın. Eğer biliyorsanız İngilizce veya başka dillerde kullanabilirsiniz.

  3. Herhangi bir web sitesinin sizden alabileceği teknik bilgilere http://ipleak.com/full-report/ adresine girerek bakabilirsiniz.

  4. HİÇBİR ARAÇ SİZİ TAMAMEN ANONİM YAPMAZ.

Uygulamaları Tor üzerinden kullanmak (Tor proxy)

Telegram gibi uygulamaları Tor üzerinden kullanabilmeniz için öncelikle sisteminize tor paketini kurmanız gerekmektedir. Bunun için, bir Uçbirim açıp aşağıdaki komutları sırasıyla yazabilirsiniz:

sudo apt-get update
sudo apt-get -y install tor obfs4proxy

Daha sonra, sudo systemctl stop tor yazarak Tor servisini durdurun. Çünkü bağlanabilmek için köprülere ihtiyaç duyacaksınız.

Daha önceden indirmiş olduğunuz "Tor Browser" ile https://bridges.torproject.org/ adresine bağlanıp "Get Bridges" maddesine tıklayın.

alt-text

Açılan pencereden "Pluggable transport" seçeneğini "obfs4" olarak seçin ve "Get Bridges" butonuna basın.

alt-text

Karşınıza karışık bir CAPTCHA gelecek. Çözene kadar bırakmamanızı tavsiye ediyoruz. Biraz zor olabilir :)

Nihayetinde çözdüğünüzde karşınıza gelecek ekran aşağıdaki gibi olacaktır.

alt-text

obfs4 Bridge_IPadresi:PORT FINGERPRINT sertifika

gibi bir format ile 3 adet köprünüz olacak.

Daha sonra, Uçbirim'de aşağıdaki komutu çalıştırın:

sudo nano /etc/tor/torrc

Şöyle bir ekran karşınıza gelecektir:

alt-text

Uygun bulduğunuz bir yere, aldığınız köprüleri aşağıdaki formatla yerleştirin:

UseBridges 1

Bridge obfs4 <kendi bridge adresleriniz>

ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy

Sırasıyla Ctrl+O ve Ctrl+X yaparak çıkın.

Tor proxy'nizin çalışıp çalışmadığını Uçbirim'e tor yazıp deneyebilirsiniz.

Tor has successfully opened a circuit. Looks like client functionality is working.

bootstrapped %100

Yukarıdaki yazıyı görüyorsanız proxy çalışıyor demektir. Daha sonra aşağıdaki komutla Tor servisini başlatın:

sudo systemctl start tor

Artık 9050 numaralı portu kullanarak uygulamaları Tor'a bağlayabilirsiniz.

Telegram'ı Tor üzerinden kullanmak

Telegram'ı Tor üzerinden kullanabilmek için, Telegram'ın sol üst köşesindeki sandviç menüye basıp, ayarlar menüsüne gelin.

Telegram over Tor

Daha sonra açılan menüden, "Gelişmiş" seçeneğine tıklayın.

Telegram over Tor

En üstte yer alan "Ağ ve vekil sunucusu" bölümündeki "Bağlantı türü"ne tıklayın.

Telegram over Tor

Açılan menüden, "Özel vekil sunucusu kullan" seçeneğine basın ve yapılandırmayı aşağıdaki gibi oluşturun:

Telegram over Tor

Sonuç olarak, eklediğiniz vekil sunucusu "çevrimiçi" olarak görünmelidir.

Telegram over Tor

Tebrikler, Telegram'ı artık Tor üzerinden kullanıyorsunuz. Tor üzerinden yapılan sesli aramalar çok sık kesilmektedir, o yüzden "Aramalarda vekil sunucu kullan" seçeneğinin işaretini kaldırmanız arama kalitenizi artıracak, ancak trafiğinizin açıktan geçmesine sebebiyet verecektir.

Android

Android üzerinde Tor kullanmak için, öncelikle özgür uygulama mağazası F-Droid'i indirmeniz gerekmektedir. Bunun için cep telefonunuzdan https://f-droid.org'u ziyaret edebilir ya da aşağıdaki QR kodunu tarayabilirsiniz.

QR F-Droid

F-Droid'in sitesine girdiğinizde, "F-Droid'i indir" butonuna basın.

F-Droid

Sonrasında çok yüksek ihtimalle, tarayıcınızın uygulama kurma yetkisi olmadığına dair bir hata alacaksınız. "Ayarlar" butonuna basıp "Bu kaynaktan izin ver" seçeneğini aktif edin.

F-Droid F-Droid

Daha sonra, F-Droid kurulacaktır. F-Droid'i ilk açtığınızda depoları güncelleyecektir, bunu apt update gibi düşünebilirsiniz. Daha sonrasında aşağıdaki gibi bir ekran bizi karşılayacak:

F-Droid

Tor Browser ve Orbot gibi araçlar, F-Droid'in orijinal deposunda değil, The Guardian Project'in deposunda bulunur. Bunun için bu depoyu aktive etmemiz gerekir. Aşağıdaki adımları izleyerek bu depoyu aktive edebilirsiniz. Ayarlar sekmesinden "Depolar" seçeneğine basıp, Guardian Project seçeneğini aktive edin.

F-Droid F-Droid

Daha sonra ekranı aşağı kaydırmaya çalışarak depoları güncelleyin ve aramaya "Tor Browser" yazın. "Yükle" butonuna basarak uygulamayı kurun. Bir önceki adımdaki izi süreci tekrar karşınıza çıkacaktır.

F-Droid

Tor Browser'ı başlatın. Sizi şöyle bir ekran karşılayacak:

F-Droid

Sağ üstteki dişliye tıklayın ve aşağıdaki adımları izleyin:

F-Droid F-Droid

Daha sonra geri dönün ve "Bağlan" butonuna basın. Eğer aşağıdaki gibi bir ekranla karşılaştıysanız Tor bağlantısını kurdunuz.

F-Droid

Orbot ile uygulamaları Tor ile kullanmak

Twitter ve Telegram gibi uygulamaları Tor üzerinden kullanabilmek için, Orbot isminde bir uygulamayı kurmanız gerekmektedir. Bu uygulamayı F-Droid üzerinden indirip kurabilirsiniz. Yukarıdaki Tor Browser yönergesinde F-Droid'i nasıl kurabileceğiniz anlatılmıştır.

Orbot'u F-Droid üzerinden kurun.

Orbot

Orbot'u açtığınızda aşağıdaki gibi bir ekran ile karşılaşacaksınız:

Orbot

Alt tarafta bulunan "Köprüleri kullan" seçeneğini aktif hale getirin ve seçenekleri yukarıda "Tor bağlantısı sağlanıyor" yazana kadar deneyin (bunun biraz farazi olduğunun farkındayız ancak maalesef ki köprüler bazen çalışmayabiliyor):

Orbot

En nihayetinde Tor ağına bağlanmış olacaksınız:

Orbot

Bu noktada, SOCKS proxy destekleyen uygulamalar için port numarası 9050, HTTP proxy destekleyen uygulamalar için ise 8118'dir.

Telegram'ın yapılandırılması

Telegram uygulamasını açın ve soldaki sandviç menüden "Ayarlar" seçeneğine basın:

Orbot

Daha sonra açılan ayarlardan, "Veri ve Depolama" seçeneğine girin:

Orbot

Daha sonra en altta bulunan "Vekil sunucu" ayarlarına girin ve bilgileri aşağıdaki gibi doldurun:

Orbot

Eklediğiniz vekil sunucunun yanında "Bağlandı" yazıyorsa yapılandırmanız çalışıyordur. Ana ekrana döndüğünüzde, üst tarafta aşağıdaki gibi bir ikon görüyorsanız, Telegram artık Tor ağı üzerinden çalışıyor demektir:

Orbot

Twitter'ın yapılandırılması

Twitter uygulamasına girdiğinizde, sol tarafı çekerek "Ayarlar" menüsüne girin.

Twitter over Tor

Proxy seçeneğine tıklayın ve bilgileri aşağıdaki gibi ayarlayıp kaydedin.

Twitter over Tor

Eğer tweetleri yenileyebiliyorsanız artık Twitter'ı Tor üzerinden kullanıyorsunuz demektir.

Tor Ağının Zayıf Noktaları

Genel olarak Tor ağı güvenli sayılsa da %100 güvenlik SAĞLAMAYACAKTIR. İlk bağlandığınız Tor düğümü sizin IP adresinizi bilebilir, İnternet'e çıktığınız son Tor düğümü ise nereye bağlandığınızı bilecektir.

Exit node, yani bağlandığınız en son Tor düğümü olan bir kişi veya otorite, Tor devrenizi haritalayıp gerçek IP adresinize ve dolayısı ile kimliğinize ulaşabilir.

Bütün bunlar bir yanda dursun;

Ağ dinleme (zehirleme) saldırıları olarak bilinen MITM saldırıları ile Tor ağında giden parolalarınız gibi gizli kalması gereken bilgileriniz, güvenli sandığınız o yolda başkaları tarafından rahatlıkla ele geçirilebilir. Burada toplum yararına yapılan her projedeki gibi sistemin işlemesi için en büyük etkenin güven olduğunu görüyoruz.

Bu riskleri olabildiğince minimuma indirgemek için; "Tor over VPN" olarak tanımlanan VPN üzerinden Tor ağına girmek gibi yöntemler kullanılmaktadır. Tabii ki bu durumda da herhangi bir VPN otoritesi IP adresinizi açık olarak görebilir. Fakat Tor ağındaki riskleri minimuma indirgemiş olursunuz. Bu konuda da tamamıyla kullanmış olduğunuz VPN otoritesinin bilgilerinizi saklayıp satmadığından bir şekilde emin olmanız gerekmektedir.

Farklı bir seçenek ise kendi sunucunuzu kiralayıp, üzerine bir OpenVPN servisi kurarak kendi VPN'inizi oluşturup onun üzerinden Tor ağına çıkmanız olabilir. Bu konuda Özgür Yazılım Derneği'nin bir projesi olan Kendi Bağlantım'ı inceleyebilirsiniz.

Tor kullanarak açığa çıkan vakalar

Harvard Üniversitesi'nde okuyan bir öğrenci, çalışmadığı vizelerini erteletebilmek amacıyla okuluna Tor ağı üzerinden bomba ihbarında bulunur, fakat yakalanır.

Bunun nedeni ise aslında çok basit. Servis sağlayıcılarınız veya İnternet'e bağlandığınız kafe, üniversite vb. gibi ortak ağlarda, hangi saatte kimin Tor ağına bağlandığı rahatlıkla görülebilir, fakat Tor ağında neler yapıldığı görülemez. Söz konusu öğrenci Tor ağına okulunun ortak ağı üzerinden bağlandığı ve gelen bomba tehdidi de Tor ağından geldiği için; mesajın atıldığı tarihte ve saatte okuldan sadece 1 (bir) bilgisayardan Tor ağına bağlanıldığı fark edilir. Yapılan incelemelerde, mesajın hangi bilgisayardan atıldığı tespit edilir, daha sonrasında kamera görüntülerinden tarih ve saat baz alınarak kimin tarafından kullanıldığı öğrenilir ve ilgili öğrenci yakalanır.

OnionShare ile Tor üzerinden dosya paylaşımı

OnionShare

OnionShare, Tor üzerinden dosya paylaşımı yapabilmenizi, web sitesi servis edebilmenizi ve mesajlaşabilmenizi sağlayan bir özgür yazılımdır. Tor'un yapısı sayesinde tüm paylaşımlarınız ve mesajlarınız arada merkezi bir sunucu olmaksızın P2P (Peer to Peer) olarak iletilir.

Kurulum

GNU/Linux

OnionShare, GNU/Linux için Snap ya da Flatpak paketleri halinde dağıtılmaktadır. Bu örnekte snap kullanılacaktır. Eğer sisteminizde snap yoksa, buraya tıklayarak nasıl kuracağınızı öğrenebilirsiniz.

Eğer sisteminizde "Snap Store" kuruluysa, OnionShare'ı buraya tıklayarak Snap Store üzerinden indirebilirsiniz.

Bir uçbirim (terminal) penceresi açıp aşağıdaki komutu çalıştırın:

sudo snap install onionshare

Bu komutun ardından snap OnionShare'ı kuracaktır.

Mac OS

Bu bölüme katkı verebilirsiniz

Windows

Bu bölüme katkı verebilirsiniz

Tor'a bağlanma

OnionShare açıldıktan sonra öncelikle Tor ağına bağlanmaya çalışacaktır. Eğer bağlanamazsa sağ alttaki dişliye tıklayın. Aşağıdaki gibi bir pencere açılacaktır:

Tor ayarları

Buradaki "Tor köprü desteği" kısmındaki ayarı "Yerleşik obfs4 değiştirilebilir taşıyıcıları kullan" seçeneğiyle değiştirin ve "Tor bağlantısını test et" butonuna basın. OnionShare Tor'a bağlanmayı deneyecek ve eğer başarılı olursa aşağıdaki gibi bir pencere çıkacaktır:

Tor başarılı

Dosya gönderme

OnionShare ile Tor üzerinden dosya paylaşmaya başlamak için, ana menüden "Dosya paylaşın" seçeneğine tıklayın:

Ana menü

Ardından açılan pencereye paylaşmak istediğiniz dosyaları sürükleyin ya da sağ alttaki "Ekle" butonuna basın:

Dosya paylaşımı

Dosyalarınızı ekledikten sonra "Paylaşmaya başla" düğmesine basın. Eğer dosyalarınızı birden fazla kişi indirecekse veya tek tek indirilmesine izin vermek istiyorsanız, "Dosyalar gönderildikten sonra paylaşmayı durdur" seçeneğini kaldırın.

Paylaş

Eğer isterseniz, dosyalarınızın paylaşılacağı bir zaman aralığı da belirleyebilirsiniz. Bunun için "Gelişmiş ayarları göster" bağlantısına tıklayıp aşağıdaki gibi saatleri ayarlayabilirsiniz:

Zaman aralığı

Paylaşım başladığında, aşağıdaki gibi bir bağlantı gösterilecektir. Bu bağlantıyı dosyayı almasını istediğiniz kişilere gönderdiğinizde, paylaştığınız kişiler bağlantıyı Tor tarayıcısına yapıştırıp dosyayı indirebilirler.

Dosya bağlantısı

Gönderdiğiniz bağlantıya Tor tarayıcısı aracılığıyla giren kişiler aşağıdaki gibi bir sayfayla karşılaşır ve buradan dosyalarınızı indirebilir:

OnionShare link

Dosyalarınızın indirilme durumunu sağ taraftaki yukarı ok butonuna basarak görebilirsiniz:

Paylaşım durumu

Dosya alma

OnionShare ile başkalarına dosya gönderebileceğiniz gibi, başka birisinin size dosya göndermesini de sağlayabilirsiniz. Bunun için ana menüden "Dosya alın" seçeneğine tıklayın. Daha sonra dosyaların kaydedileceği yeri seçin ve "Alma modunu başlat" butonuna basın:

Dosya alma

Ardından çıkan bağlantıyı dosya gönderecek kişilerle paylaşın.

Bağlantı

Bu bağlantıya Tor tarayıcısı ile erişenler, aşağıdaki gibi bir ekranla karşılaşacaklar:

Tor tarayıcısı dosya gönder

Buraya dosya yüklendiğinde, gönderilen dosya bir önceki adımda belirttiğiniz dizine kaydedilecektir.

Web sitesi servis etme

OnionShare'ın bir web sitesi barındırma özelliği de mevcuttur. Bu yöntemle servis ettiğiniz web sitelerine, aynı diğer ".onion" web siteleri gibi Tor tarayıcısı üzerinden erişilebilir. Ancak sürekli canlıda olmasını istediğiniz bir web siteniz varsa, OnionShare yerine kuracağınız bir sunucu üzerinden bunu yapmanız daha sağlıklı olacaktır.

Web sitesi servis etmek için ana menüden "Web sitesi barındırın" seçeneğini seçin. Çıkan sayfaya servis etmek istediğiniz web sitesinin dosyalarını sürükleyin ya da "Ekle" butonundan tek tek ekleyin:

Web sitesi

Dosyalarınızı ekledikten sonra, sitenizin erişilebilirliğini artırmak için "Parola kullanma" seçeneğini seçin. Eğer web siteniz dış kaynaklardan veri çekiyorsa (ör. Google fontları, JS CDN vb.) "İçerik Politikası Başlığı gönderme" seçeneğini de seçin. Ayarları tamamladıktan sonra "Paylaşmaya başla" butonuna basın:

Web sitesi

OnionShare'ın size verdiği bağlantıya giren herkes web sitenize erişebilir:

URL
URL

Mesajlaşma

OnionShare üzerinden mesajlaşma da mümkündür, ancak mesajlarınız herhangi bir şekilde şifrelenmediği için (Tor'un kendi şifreleme sistemi hariç) kullanmanız tavsiye edilmemektedir.

Mesajlaşma odası açmak için ana menüden "Anonim olarak sohbet edin" seçeneğini seçin ve açılan sayfada "Sohbet sunucusunu başlat" butonuna basın:

Mesajlaşma

Daha sonrasında sohbet odasına insanları davet etmek için çıkan bağlantıyı paylaşın:

Sohbet odası bağlantısı

Daha sonra Tor tarayıcısı üzerinden odaya girin. Sol taraftaki kutudan takma adınızı değiştirebilirsiniz, sohbete giren kullanıcılar o kutunun altında görünecektir:

Sohbet odası

VPN (Virtual Private Network)

VPN

VPN temel olarak; iki cihazın, yerel ağlarının güvensiz İnternet bağlantısı üzerinden birbirine güvenli şekilde bağlanabilmesi için geliştirilmiş bir teknolojidir. İki bilgisayarın birbirine şifrelenmiş bir kanal üzerinden bağlanmasını sağlar. Temel olarak şirketlerin ağ altyapılarına uzaktan güvenli erişim için tasarlanmış olan VPN'in günümüzde en yaygın kullanımı, kullanıcılarının tehlikeli ağlardan güvenli şekilde İnternet'e erişmesini sağlamaktır.

VPN ne işe yarar?

VPN temel olarak size şunları sağlar;

  • İletişiminizi cihazınız ile VPN sağlayıcınız arasında şifreleyerek gözetime, engele veya değiştirilmeye uğramasına engel olur.

  • VPN'e bağlı olduğunuz sürece VPN sağlayıcınızın sunucusundan çıkış yapacağınız için girdiğiniz web siteleri veya kullandığınız hizmetler VPN IP adresinizi göreceğinden, kim olduğunuzu siz belirtmediğiniz sürece bilmeleri zorlaşacaktır.

  • VPN kimi koşullar için yeterince anonimlik sağlamamakla beraber, eğer ortak bir VPN sunucusu kullanıyorsanız, bağlı olduğunuz VPN sunucusundaki herkes ile aynı IP adresini paylaştığınızdan kalabalığın içine karışmış olursunuz.

Neden VPN kullanmalıyım?

VPN kullanmak için çok çeşitli sebepleriniz olabilir;

  • Bulunduğunuz ülkeden veya kullandığınız ağdan erişim kısıtlaması olan hizmetlere erişmek istiyorsunuzdur.

  • Ağ üzerinden iletişiminizi denetleyen, takip eden, kaydeden kişilere karşı mahremiyetinizi korumak istiyorsunuzdur.

  • Bağlı olduğunuz yerel ağ üzerinden size yöneltilebilecek saldırılara karşı korumaya ihtiyacınız vardır.

Ücretsiz VPN olur mu?

Türkiye'de ve dünyada yaşanan her engelleme ve sansür girişiminde akla ilk gelen çözüm VPN'dir. Neredeyse her tavsiye ise bedava VPN hizmetleri üzerinden yürür. Doğal olarak sansür durumunda VPN kullanan çoğu insanın, tek amacı sansürü aşarak ihtiyaç duyduğu bilgiye veya hizmete erişmek ve VPN teknolojisi hakkındaki bilgisi kısıtlı olduğundan, olası tehlikelerin üzerine düşünmediği söylenebilir. Bir VPN hizmet sağlayıcısı, sunucusuna bağlı olduğunuz sürece;

  • Sizin IP adresinizi ve buna bağlı olarak konumunuzu bilebilir.

  • Ziyaret ettiğiniz web sitelerini ve kullandığınız hizmetleri, içeriğini bilemese bile kaydedebilir.

  • Şayet VPN istemcisi bir tarayıcı eklentisi şeklinde kurulduysa, kötücül bir eklenti tüm tarama verisine erişebilir.

  • Dikkatli olunmazsa kötücül bir VPN sunucusu iletişimizin arasına girip verilerinizi çalabilir, size istenmeyen reklamlar sunabilir veya cihazınıza zarar vermeye çalışabilir.

Bu sebeplerden ötürü VPN kullanmak hizmet sağlayıcıya bir biçimde güven gerektirir. Daha doğru bir ifade ile VPN; İnternet servis sağlayıcınıza olan güveninizi VPN sağlayıcınıza aktarır. Nasıl ki evinizin anahtarını rastgele birine vermiyorsanız İnternet bağlantınızı da rastgele birinin eline vermemeniz gerekir. Bu sebepten ötürü İnternet hizmetlerine ilişkin para vermiyorsanız ürün sizsiniz sözüne dayanarak VPN'i satın almanız veya kendi sunucunuzu kurarak kullanmanız gerekir.

Bu duruma istisna sayılabilecek birkaç örnek bulunmakta. Bu istisnalar, dünyada mahremiyet ve dijital hak mücadelesi içinde olan toplulukların ücretsiz hizmetleri ve kimi güvenilir adledilen şirketin giriş seviyesi bedava verdikleri hizmetlerdir. Aşağıdaki liste dahilinde ücretsiz VPN sunan ve genel olarak güvenli görülen kurumları bulabilirsiniz.

Riseup

Calyx Institute

ProtonVPN

VPN hizmeti seçerken nelere dikkat etmeliyim?

  • Özgür yazılım kullanmayan hiç bir VPN sağlayıcıya güvenmeyin. VPN ile tüm ağ trafiğinizi teslim ettiğiniz bir şirketin kullandığı yazılımların sizin özgürlüğünüze karşı olması hiç güven telkin eden bir unsur değildir.

  • Kayıt tutmama politikası pek çok VPN servisinin iddiasıdır. Bu, sunucularına yapılan bağlantılara ilişkin kayıtların hiç tutulmadığını ifade eder. Elbette geçmişte bunun sadece bir iddia olduğu ve doğrulanamayacağını gösteren sözünü tutmamış VPN şirketleri vardır. Bazı hizmet sağlayıcılar sunucularında sabit sürücü bile bulundurmadıklarını ifade etmektedir. Bu konuda diğer konularda olduğu gibi VPN sağlayıcının sözüne güvenmek zorunluluğu olduğundan daha önce devletlere bilgi sağlayıp sağlamadığına bakılması önemli olabilir. PureVPN vakası bu konuda incelenmeye değer bir örnek. Daha sonra VPN sağlayıcının geçmişini, kaç yıldır hizmette olduğunu ve birinci elden, bağımsız kullanıcı deneyim ve yorumlarını okumak faydalıdır.

  • VPN sağlayıcınızın özgür yazılım olan OpenVpn desteklediğinden ve yapılandırma (config) dosyalarını sizinle paylaştığından emin olun. Bu sayede GNU/Linux ve Android işletim sistemine sahip cihazlarınızda kolaylıkla yerleşik VPN istemcilerini kullanabilirsiniz. Bu imkan aynı zamanda VPN sağlayıcının yazılımına mahkum kalmamanızı da garanti eder.

  • ABD, Birleşik Krallık ve Almanya gibi ülkelerin Internet kullanıcılarını gözetlemek ve profillemek için çokça çabaya giriştiği ve yasal(!) imkanları kullanarak pek çok şirketten zorla veri aldığı bilinmektedir. Bu bakımdan VPN sağlayıcınızın bu konuda kötü bir geçmişi olmayan ve hukuki güvenlik bakımından iyi sayılan ülkelerden seçmeniz kesinlikle tavsiye edilir. Hollanda veri merkezlerinin hızından dolayı, İsviçre'de AB hukuk sisteminin dışında ve mahremiyet yanlısı sağlam hukuk sisteminden dolayı tercih edilmektedir.

  • VPN sağlayıcınızın mutlaka bağlantı için farklı protokollere izin verdiğinden emin olun. Çoğu VPN engellemesi standart portlar ve protokollere yönelir. Şayet elinizde geniş bir bağlantı imkanı olursa bu tip yasakları aşmanız kolaylaşacaktır. Bunlar arasında en önemlileri SSL tünelleme, SSH tünelleme yer almaktadır.

  • Herhangi bir bağlantı kısıtlaması özgürlüğünüze karşı bir harekettir. Bu bakımdan bir VPN sağlayıcı sizin torrent kullanmanıza veya indirme hızınıza karışıyorsa hem bir çeşit kayıt tutuyordur hem de bağlantı özgürlüğünüzü sınırlıyordur.

  • Bir VPN sağlayıcı sizden kayıt için hiç bir kişisel veri talep etmemelidir. Buna ödeme imkanları arasında kriptoparalar ve posta yolu ile nakit gönderimi gibi anonim seçenekler bulundurmak da dahildir. Nihayetinde VPN sağlayıcınıza güveniyor olacaksınız kimliğiniz için fakat şirkete güvenseniz bile devletler ve kötücül saldırıların ihtimali hala asgari veriyi teslim etmeniz için geçerli gerekçelerdir.

VPN Kurulumu

VPN Kullanım Stratejisi

VPN kullanmaya başlamadan önce ihtiyacınız, kullandığınız cihazların durumu ve seçtiğiniz VPN sağlayıcının imkanlarını değerlendirmeniz gereklidir. Her VPN sağlayıcı sınırlı sayıda cihazın anlık bağlantısına izin vermektedir. Bu bakımdan; ne yazık ki basitçe cihazınıza sağlayıcınızın istemcisini kurup kullanmak her ne kadar en kolay seçenek olsa da ihtiyaçlarınızı karşılayamayabilir. Bu bakımdan elinizdekilere bakıp bir değerlendirme yapmalısınız.

Elinizdeki cihazların sayısını ve konumlarını değerlendirin. Mobil cihazları bulundukları ağdan bağımsız olarak VPN'e bağlı kalmalarını isteyeceğinizden bu cihazların doğrudan bağlanmaları için kurulum yapmanız gerekecektir. Şayet ev ve işyeri gibi sabit bir alanda duran cihazları bağlamak veya ağ bağlantınızdaki tüm cihazları korumak istiyorsanız bir yönlendiriciye kurulum yapmanız faydalı olabilir. Bir yönlendiriciyi LibreCMC, OpenWRT veya DD-WRT yükleyerek özgür kılabilir ve üzerinde OpenVPN ile tüm ağınızı kapsayacak şekilde VPN çalıştırabilirsiniz.

Eğer cihazlarınız sınırlı ve belirli bir ağa bağlı değil ise doğrudan VPN sağlayıcınızın sağladığı yazılımları cihazlarınızda çalıştırarak bağlantı kurmak en kolay yol olacaktır.

Bu kurulumun avantajları;

  • Cihazınızdaki gerekli ayarlar otomatik olarak yapılabilecektir.
  • VPN sağlayıcınızın sunduğu tüm protokol ve sunuculara tek elden kolayca ulaşabilirsiniz.

Dezavantajları ise;

  • Fazladan bir yazılımı cihazlarınıza kurma ve çalıştırma zorunluluğu.
  • Yazılımın cihaz kaynağınızı kullanması bu sebeple kimi eski donanımlarda çalışmama ihtimali.
  • Desteklenmeyen işletim sistemlerine kurulamayacak olması.
  • Sistem ayarlarının yapılabilmesi için yazılımın yönetici yetkisi ile çalışmasının gerekmesi.

Diğer seçeneğiniz ise işletim sisteminiz tarafından desteklendiği durumlarda dahili OpenVPN istemcisi ile kurulum yapmaktır. Bu kullanım sistem kaynağınızı daha az kullanacak ve daha birleşik bir deneyim sunacaktır. Lakin ayarların bir kısmını kendiniz yapmak zorunda kalacağınızdan vakit ve emek harcamaya hazır olmanız gereklidir. Bunu VPN sisteminin arkaplanını öğrenmek ve hatalarınızı görmek için bir fırsat olarak düşünebilirsiniz.

OpenVPN Sunucusu Kurulumu

OpenVPN sunucusu kurulumu için github.com/Nyr deposunda bulunan ve aktif olarak güncellenen bir bash betiğini kullanabilirsiniz. Bu betik Ubuntu, Debian, Centos veya Fedora dağıtımları üzerinde gerekli yüklemeleri ve ayarları yapıp kullanıma hazır bir OpenVPN sunucusu çalıştırıyor. wget https://git.io/vpn -O openvpn-install.sh komutu ile betik çalışma dizinine kaydedilebilir ve bash openvpn-install.sh komutu ile çalıştırılabilir. Komutu gerekli paket yüklemelerini yapabilmesi ve ayar dosyalarını oluşturabilmesi için root yetkileriyle çalıştırmamız gerekmekte.

  1. Betik ilk olarak sunucunun ip adresslerini listeleyip, OpenVPN sunucusunun kullanması istenen ip adresinin seçilmesini istiyor.
Which IPv4 address should be used?
     1) 198.51.100.202
     2) 10.0.10.1
IPv4 address [1]:

Kullanılmak istenen adres sıra numarasıyla seçilebilir.

  1. Ardından OpenVPN'in kullanması istenen protokol soruluyor;
Which protocol should OpenVPN use?
   1) UDP (recommended)
   2) TCP
Protocol [1]:

Yine sadece enter ile önerilen seçeneği onaylayıp UDP kullanılabilir.

  1. OpenVPN'in kullanacağı port soruluyor ve ön tanımlı olarak 1194 seçili.
What port should OpenVPN listen to?
Port [1194]:443

Bu aşamada hareket halindeyken istemcilerin dahil olacağı açık ağlarda 1194 portu engellenmiş olabileceğinden https portu olan 443'ü seçmek yerinde bir tercih olabilir.

  1. OpenVPN'e bağlanacak istemciler için bir DNS sunucusu seçilmesi istendiğinde öntanımlı olarak sistemin halihazırdaki ayarlarını kullanması yanında kullanımı yaygın olan bazı DNS sunucuları listeleniyor:
Select a DNS server for the clients:
   1) Current system resolvers
   2) Google
   3) 1.1.1.1
   4) OpenDNS
   5) Quad9
   6) AdGuard
DNS server [1]:
  1. Son olarak ilk istemci için bir isim girilmesi isteniyor.
Enter a name for the first client:
Name [client]:

Kurulum tamamlandıktan sonra başka istemciler eklemek için betik yeniden çalıştırılabilir.

Gerekli yüklemeler yapıldıktan sonra çalışmakta olan OpenVPN sunucusuna bağlanmak üzere istemci cihaza yüklenmesi gereken ayar dosyasının konumu bildiriliyor /root/<istemciadı>.ovpn. Bu dosyayı istemci cihaza kaydedip, istemci programa tanıtmak gerekiyor.

  1. Kurulumun ardından betik tekrar çalıştırılırsa yeni bir istemci ekleme, bir istemciyi kaldırma, OpenVPN sunucusunu kaldırma seçenekleri sunuluyor.
Select an option:
   1) Add a new client
   2) Revoke an existing client
   3) Remove OpenVPN
   4) Exit
Option:

İstemci Kurulumu

GNU/Linux - Masaüstü

GNU/Linux dağıtımları Linux çekirdeğinde, doğrudan OpenVPN'i ve artık, daha yeni bir teknoloji olan Wireguard'ı desteklemektedir. Masaüstü ortamları da Openvpn istemcisine doğrudan destek vermektedir. GNU/Linux dünyasında çokça masaüstü ortamı olmasından dolayı, rehberimiz en yaygın kullanılan Gnome 3 ile hazırlandı lakin pek çok kullanıcı ayarların kendi cihazlarında da benzer olduklarını görecektir.

  1. Öncelikle VPN sağlayıcınızdan ".ovpn" uzantısı ile OpenVPN config dosyasını indirin. Ovpn dosyaları bir metindir ve sunucu ayarları ile bağlanmanız için gereken anahtarı ve sertifikaları içerir. Şayet VPN sağlayıcınız bağlantı için bir kullanıcı adı ve parola gerektiriyor ise bunu da bir kenara not alın.

alt-text

  1. Gnome'un ağ ayarlarına isterseniz sağ üst köşeden açılan menüde ağ ayarlarına girerek veya etkinlikler köşesine tıklayarak menüden ayarlara girerek ulaşabilirsiniz.

  2. Sağda yer alan "+" düğmesine tıklayın.

alt-text

  1. Karşınıza çeşitli seçeneklerin sunulduğu "VPN Ekle" penceresi çıkacak. Burada en alttaki "Dosyadan aktar" seçeneğini seçin. .ovpn uzantılı VPN dosyasını bulun ve aktarın.

alt-text

  1. Eklediğiniz VPN'in yanındaki düğmeye tıklayarak kullanılabilir hale getirebilirsiniz.

alt-text

GNU/Linux - Uçbirim

  1. Kullandığınız GNU/Linux dağıtımının depolsundan OpenVPN'i dağıtımınızın paket yöneticisiyle yükleyebilirsiniz.
  • apt paket yöneticisi kullanan dağıtımlarda (Debian, Trisquel, Linux/Mint, Ubuntu...); sudo apt-get install openvpn
  • rpm paket yöneticisi kullanan dağıtımlarda (CentOS, Fedora...) ise; sudo dnf install openvpn komutu ile OpenVPN'i sisteminize kurabilirsiniz.

OpenVPN'i yüklediğinizde aşağıdaki dizinler oluşur:

/lib/systemd/system/openvpn-client@.service (servis dosyası)

/etc/openvpn/client ve /etc/openvpn/server (ayar dosyaları)

  1. VPN sağlayıcınızdan veya OpenVPN sunucunuzdan edindiğiniz .ovpn ayar dosyasının uzantısını aşağıdaki komut ile .ovpn'den .conf'a değiştirin:

mv <istemciAyarlari>.ovpn <istemciAyarlari>.conf

  1. Daha sonra değiştirdiğiniz dosyayı ilgili dizine taşıyın:

sudo mv <istemciAyarlari>.conf /etc/openvpn/client/<istemciAyarlari>.conf

OpenVPN'in bu aşamadan sonra VPN sağlayıcınızın ayarlarını tanıyacaktır.

  1. OpenVPN'i çalıştırmak için aşağıdaki komutu kullanabilirsiniz;

openvpn --config <istemciAyarlari>.conf

Servis olarak başlatmak ve durdurmak için;

systemctl {start,stop} openvpn-client@<istemciAyarlari>.conf

Sistem açılışında çalışması için de;

systemctl enable openvpn-client@<istemciayarlari>.conf

komutları kullanılabilir.

Android

Android işletim sistemi 7. sürüm ve sonrasında VPN desteğini işletim seviyesinde sunmaya başlamıştır. Ne yazık ki OpenVPN hala bu seçenekler arasında olmamakla birlikte özgür bir OpenVPN istemcisini Android ayarlarında VPN sağlayıcısı olarak belirlediğinizde sistemle gayet uyumlu çalışmaktadır.

  1. OpenVPN for Android uygulamasını F-Droid özgür yazılım deposundan indirin ve cihazınıza kurun.

  2. OpenVPN for Android yazılımını çalıştırın ve açılan ekranda sağ üst köşedeki + simgesine tıklayarak ekleme arayüzünü açın.

alt-text

  1. Karşınıza gelen ekrandan içe aktar veya import düğmesine tıklayarak config dosyasını seçme aşamasına gelin.

alt-text

  1. Açılan dosya yöneticisinden VPN sağlayıcınızdan indirdiğiniz .ovpn dosyasını bulun ve tıklayın.

alt-text

  1. Ertesinde çıkan ekranda config dosyanızın detayları görülecektir. tik işaretine tıklayarak kurulumu tamamlayın.

alt-text

  1. Artık OpenVPN for Android VPN bağlantınızı kurmaya hazır.

Android ayarlarını yaparak sisteminizin VPN bağlantısını korumasını ve kesilmesi durumunda iletişimin de durmasını sağlamanız mümkün. Bunun için:

  1. Cihazınızın ayarlarına gidin ve ağ ve internet veya network and internet ayarlarına girin.

alt-text

  1. VPN ayarlarını muhtemelen en altta bulacaksınız.

alt-text

  1. Karşınıza OpenVPN for Android seçeneği çıkmış olacaktır. Yanındaki dişli simgesine tıklayarak kurulum sayfasını açın.

alt-text

  1. Çıkan ayarlardan Always-on VPN veya sürekli bağlı VPN ile Block connections without VPN veya VPN kesilince bağlantıları engelle seçeneklerini etkinleştirin.

alt-text

OpenWRT Yönlendirici

Bir OpenWRT yönlendiriciyi OpenVPN istemcisi olarak ayarlamak için ssh ile komut satırı ya da bir Web tarayıcısı ile LuCi arayüzü kullanılabilir.

OpenWRT - Uçbirim

OpenWRT yönlendiriciyi OpenVPN istemcisi haline getirmek için ssh ile bağlandıktan sonra aşağıdaki işlemler uygulanmalı.

  1. Gerekli paket yüklenir;
opkg update
opkg install openvpn-openssl
  1. Firewall ayarları;
    UCI(unifiedConfigurationInterface) kullanılarak ayar dosyasını el ile düzenlemeye gerek duymadan yapılabilir;
uci rename firewall.@zone[0]="lan"
uci rename firewall.@zone[1]="wan"
uci rename firewall.@forwarding=[0]="lan_wan"
uci del_list firewall.wan.device="tun0"
uci add_list firewall.wan.device="tun0"
uci commit firewall
/etc/init.d/firewall restart
  1. VPN ayarları;
    VPN sunucusundan edinilen .ovpn uzantılı istemci ayarlar dosyasını, openvpn servisinin ön tanımlı ayarlarıyla okuması için uzantısını .conf'a dönüştürerek /etc/openvpn dizinine yerleştirmek gerekir.
mkdir -p /etc/openvpn
cp <istemci>.ovpn /etc/openvpn/<istemci>.conf
  • VPN servisinin gereğinden fazla yetkiyle çalışmaması için çalışacağı kullanıcı ve grup tanımı, 2. adımda yapılan firewall ayarlarıyla uyumlu olması için de aygıt tanımı aşağıdaki üç satırın <istemci>.conf'a eklenmesiyle yapılır. Dosyada önceden tanımlanmış user, group ve dev ile başlayan satırlar varsa satırbaşlarına '#' eklenerek geçersiz kılınmalı veya silinmeliler.
user nobody
group nogroup
dev tun0
  • VPN sunucusuna bağlanmak için kullanıcı adı ve parola kullanılması gerekiyorsa bunları, üstte kullanıcı adı altta parola olarak iki satır halinde <istemci>.auth dosyasına kaydedilmeli ve <istemci>.conf'ta bu dosya tanıtılmalı.
cat <<EOL|tee /etc/openvpn/<istemci>.auth
KULLANICI_ADI
PAROLA
EOL
cat <<EOL|tee -a /etc/openvpn/<istemci>.conf
auth-user-pass <istemci>.auth
EOL
  • İlgili dosya izinlerini sadece root kullanıcısının okuyup yazabileceği hale getirmek yararlı bir pratiktir.
    chmod -R 600 /etc/openvpn
  1. openvpn servisi yeniden başlatıldığında bağlantı diğer cihazlar için de hazır olacak.
    /etc/init.d/openvpn restart
  • VPN bağlantısı kontrol etmek için internette görünen IP adresi komut satırında
    dig +short myip.opendns.com @resolver2.opendns.com komutuyla veya bir web tarayıcısında https://ipleak.net adresinin ziyaret edilmesiyle öğrenilebilir.

Kaynak: https://openwrt.org/docs/guide-user/services/vpn/openvpn/client

OpenWRT - LuCi
  1. Gerekli iki paket yüklenir: openvpn-openssl luci-app-openvpn
    System>Software sayfasında Actions: Update lists... ile paket listesi güncellendikten sonra Filter kutusu ile arama yapılabilir.
    owrtLuci_1.1 owrtLuci_1.2 owrtLuci_1.3 owrtLuci_1.4 owrtLuci_1.5
    luci-app-openvpn paketi yüklendikten sonra yönlendiriciye yeniden bağlanıldığında üst menüye VPN başlığı eklenmiş olacaktır.
    owrtLuci_1.6

  2. OpenVPN ayarları:
    VPN>OpenVPN sayfasında OVPN configuration file upload: Browse ile .ovpn uzantılı dosya seçilip bağlantıya bir isim verildikten sonra Upload butonu ile dosya yüklenir. Aynı sayfadaki listeye eklenmiş olduğu görülecektir.
    owrtLuci_2.1

    • OpenVPN sunucusuna kullanıcı adı ve parola ile bağlanılması gerekiyorsa listede bağlantının yanındaki Edit butonuna tıklanarak açılan sayfada alttaki kutuya, parola alt satırda olacak sekilde iki satır halinde yazılır ve üstteki kutuya auth-user-pass /etc/openvpn/<BAĞLANTI_ADI>.auth satırı eklenir.
      owrtLuci_2.2
  3. OpenVPN istemcisini başlatma:
    Start butonu ile servis başlamazsa önce solundaki Enable kutusunu işaretleyip Save & Apply butonun ile kaydetmek sorunu çözecektir. OpenVPN istemcisinin yönlendirici çalıştırıldığında başlaması ve hep açık kalması için Enable kutusu işaretli olmalıdır.

  • Bu aşamada OpenVPN çalıştığında yönlendirici VPN'e bağlı ve ona bağlı diğer aygıtların internet bağlantıları kesilmiş olacak.
  1. LAN (Yerel ağ) aygıtlarının VPN'e yönlendirilmesi:
    Bu işlem için Network>Interfaces veya Network>Firewall sayfalarından biri kullanılılır;

    4.a. Network>Firewall sayfasıyla: kırmızı ile belirginleştirilmiş wan bölgesinin ayarları Edit butonuyla açılır. Pencerede Advanced Settings sekmesindeki Covered devices aygıt listesinden tun0 aygıtı işaretlenir ve kaydedilir.
    owrtLuci8 owrtLuci8 owrtLuci8
    4.b. Network>Interfaces sayfasıyla: Add new Interface butonu ile VPN bağlantısı yeni bir arayüz olarak tanımlanır, açılan pencerede "name = tun0", "Protocol = Unmanaged", "Interface = tun0" olarak doldurulup Create Interface butonuna tıklanır, General Settings sekmesinde Bring up on boot işareti kaldırılır. Firewall Settings sekmesinde Create / Assign Firewall-zone açılır listesinden wan seçilir ve kaydedilir.
    owrtLuci owrtLuci owrtLuci owrtLuci owrtLuci

Kaynak: https://openwrt.org/docs/guide-user/services/vpn/openvpn/client-luci

VPN Bağlantısının Kesilmesi Sorunsalı

VPN bağlantısı genellikle sorunsuz şekilde kurulu kalır. Fakat ağ sorunları, İnternet kesintisi veya mobil cihazlarda bağlantı kayıpları VPN bağlantısının kimi zaman düşmesine sebep olur. Bu durumda cihazınızda özellikle bir ayar yapmadıysanız tüm bağlantınız hiç kesintiye uğramadan yerel İnternet bağlantınız üzerinden sürecektir. Bu mahremiyetiniz ve güvenliğiniz için bir sorun oluşturabilir.

GNU/Linux

GNU/Linux işletim sisteminde firewall kuralları ile cihazınızın İnternet bağlantısını VPN bağlantısına sınırlandırmanız gereklidir. Bunun için sisteminizde kurulu olan dağıtıma bağlı olarak çeşitli imkanlar mümkündür.

UFW

Uncomplicated Firewall GNU/Linux dağıtımlarda firewall ayarlarını yapılandırmak için kullanılan grafik arayüzü de bulunan bir firewall yazılımı. VPN bağlantınızın bilgisayarınızdan dışarı tek bağlantı olması için aşağıdaki yönergeyi takip edebilirsiniz.

IPv6 kullanımı kapatın

IPv6 kullanımını kapatmanız VPN ayarlarınız açısından tek bir yöne odaklanmanız açısından kolaylık sağlar. Bunun için UFW'nin ayar dosyasında aşağıdaki değişikliği yapın:

sudo nano /etc/default/ufw Komutu ile editörde ayar dosyasını açın

IPV6=yes parametresini IPV6=no şeklinde değiştirip, CTRL-X ile kaydederek çıkın.

UFW'yi devredışı bırakın

Ayarlarını yapacağımız UFW'yi devredışı bırakmak için aşağıdaki komutu çalıştırın:

sudo ufw disable

Yerel ağ trafiğine izin verin

Yerel ağ trafiği cihazınızın bağlı olduğu yerel ağ dahilindeki cihazlarla iletişiminiz için gereklidir. Şayet böyle bir ihtiyacınız olmadığını düşünüyorsanız bu aşamayı atlaybilirsiniz lakin neredeyse her bilgisayar kullanımı bu iletişime ihtiyaç duyduğundan aşağıdaki şekilde yerel ağ bağlantılarına izin vermek faydalı olacaktır.

sudo ufw allow in to 10.0.2.0/24

sudo ufw allow in to 192.168.0.0/16

sudo ufw allow out to 10.0.2.0/24

sudo ufw allow out to 192.168.0.0/16

Tüm bağlantıları reddedin

Firewall ayarının temelinde her bağlantıyı baştan reddetmek ve sadece özellikle belirtilmiş bağlantıları kabul etmek bulunuyor. UFW'nin her türlü bağlantıyı reddetmesi için aşağıdaki komutu çalıştırın:

sudo ufw default deny outgoing

sudo ufw default deny incoming

VPN sunucunuza izin verin

Bu noktada bilgisayarınız yerel ağ dışında hiç bir İnternet bağlantısına izin vermeyecek durumda olmalıdır. VPN sunucunuza bağlanmak için sunucunun giriş adresine UFW'de istisna tanımanız gerekli. Bunun için VPN sunucunuzun IP adresini öğrenmelisiniz. Bu bilgiye Openvpn ayar dosyasını açarak ulaşabilirsiniz. IP adresini öğrendikten sonra aşağıdaki komut ile gerekli istisnayı tanıyın:

sudo ufw allow out to [sunucu IP adresi]

Tüm trafiği VPN'e yönlendirin

Aşağıdaki komut ile cihazınızdaki tüm bağlantıları VPN'e yönlendirebilirsiniz:

sudo ufw allow out on tun0 from any to any

Gerekli ise İnternet'ten size ulaşılmasına izin verin

Eğer İnternet üzerinden cihazınıza ulaşılması gerekli ise VPN bağlantısı üzerinden gelen bu taleplere aşağıdaki komut ile izin verebilirsiniz:

sudo ufw allow in on tun0 from any to any

UFW'yi çalıştırın

sudo ufw enable

Android

Eğer Android sürümünüz sistem çapında VPN ayarları desteklemiyor ise OpenVPN for Android'in bağlantısı kesildiği durumda cihazınızın bağlantısını kontrol etmek için AfWall yazılımını kullanabilirsiniz. Bu yazılımı çalıştırmak için cihazınızın rootlu olması gerekmektedir. Afwall kullanmanın bir diğer avantajı da cihazınızdaki hangi yazılımın İnternete erişip erişmeyeceğini ve erişecekse hangi kanal üzerinden olacağını belirtebiliyor olmanız.

Şayet Android sürümünüz işletim sistemi seviyesinde VPN istemcisi kontrolü imkanı sağlıyor ise rehberin Android kurulum başlığındaki önergeler yeterli işlev gösterecektir.


Kaynaklar;

Shadowsocks nedir?

Shadowsocks, socks5 protokolünü temel alan bir proxy uygulamasıdır. 2012’de Çin Halk Cumhuriyeti’nin ünlü güvenlik duvarını aşabilmek için Python dilinde geliştirilmiştir. İlerleyen zamanlarda farklı dil ve platformlarda sunucu ve istemcileri de yazılmıştır. En popülerleri; shadowsocks-rust, shadowsocks-libev ve go-shadowsocks2 yazılımlarıdır. GNU/Linux, BSD türevleri ile MacOS ve Windows işletim sistemleri için Qt5 grafik arayüz içeren shadowsocks-qt5 adında bir istemcisi vardır. Ayrıca Android, iOS ve Windows için özel yazılmış istemcileri de bulunmaktadır. Orjinal python sunucu/istemcisi PIP paket yöneticisi ile kurulabilmektedir.

Shadowsocks, akan veriyi şifrelemek için AES ve ChaCha algoritmalarını kullanmaktadır. Ayrıca bu algoritmaların üzerine AEAD(Authenticated Encryption with Associated Data) yani "İlişkili Verilerle Kimlik Doğrulamalı Şifreleme" yapmaktadır. Bu sayede veri hem şifreli hem de doğrulanmış şekilde iletilmektedir.

Shadowsocks’u diğer proxy yöntemlerinden ayrıştıran bir nokta da TCP’nin yanında UDP trafiğini de taşıyabilmesidir. Ek olarak bir eklenti sistemi de bulunmaktadır ve v2ray bu eklentilerden en popüleridir. v2ray'ın kullanım amacı akan verinin şeklini gizlemektir. Bu eklenti sayesinde akan trafik HTTP, HTTPS veya QUIC protokolleri gibi bir ağda doğal olarak beklenen trafiği taklit edebilir.

Basit bir sunucu istemci kurulumu

Sunucu tarafında

Tercihinize bağlı olarak sunucunuzda bir shadowsocks yazılımını seçip çalıştırmanız gerekmektedir. Bu rehber shadowsocks-rust kurulumunu takip edecektir fakat json ayar dosyası neredeys tüm istemciler için benzer olacaktır.

github/shadowsocks-rust adresinden en güncel yayınlanmış sürümü seçip detaylarına göz gezdirin. Bu rehberin yazıldığı tarihteki en güncel sürüm v1.8.12'dir. Platformunuza göre yayınlanan bir kurulum dosyasını seçmeniz gerekmekte. Rehber GNU/Linux üzerinden ilerleyeceği için Gnu/Linux dağıtımları için derlenmiş olan dosya kullanılacaktır.

Karşınıza iki seçenek çıkacaktır: Glibc ve MUSL. Tercihimiz Glibc olacak lakin bir GNU/Linux değil Busybox/Linux dağıtımı kullanıyorsanız MUSL için derlenmiş halini seçmeniz gerekecektir.

"shadowsocks-v1.8.12.x86_64-unknown-linux-gnu.tar.xz" dosyasını indirdikten sonra sunucuda dosyayı açıp içindeki dört çalıştırılabilir dosyayı, komut dizinlerinden birine koyun. /usr/local/sbin/ dizinini tercih edilebilir çünkü bu dizinin amacı root yetkisi ile çalıştırılacak ama paket yöneticisi vasıtasıyla kurulmamış uygulamaları barındırmaktır.

shadowsocksı debian, archlinux ve fedora depolarından, sırasıyla; apt install shadowsocks, pacman -S shadowsocks ve dnf install python3-shadowsocks komutlarıyla da sisteminize kurabilirsiniz.

Daha sonrasında /etc/ dizini altında shadowsocks-config.json adında bir dosya oluşturup içine aşağıdakileri yazın;

{
"server":"<sunucunuzun ip adresi>",
"server_port": 8388,
"password":"<güvenli bir parola>",
"timeout":300,
"method":"aes-256-cfb"
}
  • server kalemi shadowsocks’un dinleyeceği, sunucunuzun IP adresini seçmenizi sağlar. Tek ağ kontrolcüsü olan cihazlarda tek bir IP olacağından işiniz kolay olacaktır. Eğer birden fazla ağ kontrolcünüz varsa hangisinde çalışmasını istediğinize siz karar vermelisiniz, yahut 0.0.0.0 yazarak bütün ip adreslerinizi dinlemesini sağlayabilirsiniz.

  • server_port kalemi yazılımın kullanacağı IP adreslerinde dinlemesini istediğiniz portu belirttiğiniz yerdir, standart 8388 kullanılır. Örnek sunucumuzda önceki bölümde bahsedilen v2ray pluginini kullanıldığından 443 HTTPS portunu kullanılmakta. Böylece trafik HTTPS portuna akmak ile veri HTTPS trafiği gibi gözükmekte, dolayısıyla DPI (derin paket incelemesi) yapan güvenlik duvarları tarafından shadowsocks takip edilememektedir.

  • password parolanızı belirttiğiniz yer, basit bir şekilde çalıştığından ötürü güvenli bir parola kullanmanız şart. Bunun için Zarola kullanmanızı hararetle öneririz.

  • timeout bağlantı zaman aşımının belirlendiği ayar kalemi, 300 saniye makul bir süre.

  • method şifreleme algoritmanız bu bölümde belirlenir, tercihimiz aes-256-cfb. Bu algoritma 256 bitlik bir anahtar kullanarak simetrik blok şifreleme yapan bir algoritma. Genel ihtiyaçlara yetecek kadar hızlı ve şu an desteklenen en güçlü algoritma.

Bu dosyayı kaydettikten sonra servis yöneticinize bir servis yazmanız gerekmekte. Örneğin, kullanımı yaygın olan systemd için, aşağıdaki satırları /usr/lib/systemd/system/shadowsocks.service adında bir dosyaya kaydederek bu servisi oluşturabilirsiniz:

[Unit]
After=network.target
[Service]
Type=simple
User=nobody
Group=nobody
ExecStart=/usr/local/sbin/ssserver -c /etc/shadowsocks-config.json
[Install]
WantedBy=multi-user.target

shadowsocks.service dosyasını oluşturduktan sonra kullanabileceğiniz aşagıdaki üç satır, shadowsocks sunucunuz için, systemd'ye sırasıyla baslat/durdur/yenidenBaşlat/etkinleştir/devreDışıBırak komutlarını verir:

systemctl start shadowsocks.service
systemctl stop shadowsocks.service
systemctl restart shadowsocks.service
systemctl enable shadowsocks.service
systemctl disable shadowsocks.service

Bir servisi etkinleştimek sistem başladığında servisin de otomatik olarak başlamasını sağlar. Bu ayarı kapatmak için de servisi _devreDışıBirak_ırız

İstemci Tarafında

Teknik olarak sunucu tarafındaki ayarların aynısı istemci için de geçerli fakat ayar dosyasınun şu şekilde değiştirilmesi gerekli:

{
"server":"<sunucunuzun ip adresi>",
"server_port": 8388,
"local_address":"<istemcinizin ip adresi>",
"local_port": 1080,
"password":"<güvenli bir parola>",
"timeout":300,
"method":"aes-256-cfb"
}
  • local_address kalemi istemciniz üzerinde, sslocal'ın (shadowsocks istemcinizin) dinleyecegi, programlarinizi yönlendireceginiz yerel adresin seçildiği yer.

  • local_port kalemi, istemci olarak kullandığınız bilgisayarda, localhost’ta hangi port üzerinden socks5 yayını yapacağınının seçildiği yer. Bazı istemciler bu ayarı kullanmamakta (android istemcisi, android’in kendi VPN altyapısını kullandığından yerel bir socks5 bağlantısı yerine tüm trafiği yönetebilmekte) lakin shadowsocks-rust istemcisi ve diğer bir çok istemci bu ayarı kullanıyor.

Son olarak da systemd servis dosyasını (/lib/systemd/system/shadowsocks-client.service) şu sekilde düzenleyebilirsiniz:

[Unit]
After=network.target
[Service]
Type=simple
User=nobody
Group=nobody
ExecStart=/usr/local/sbin/sslocal -c /etc/shadowsocks-config.json
[Install]
WantedBy=multi-user.target

systemctl [<start>|<stop>|<restart>|<enable>|<disable>] shadowsocks.service Komutlarını istemci tarafında da kullanabilirsiniz.

Ve hepsi bu kadar! Artık socks5 destekleyen yazılımlarınızı shadowsocks proxy’si üzerinden internete, farklı bir noktadan çıkartabilirsiniz. Örnek olarak Firefox, Thunderbird ve Telegram uygulamaları üzerinde bu proxy’i kullanabilirsiniz.

Eğer bütün trafiğinizi shadowsocks üzerinden yönlendirmek isterseniz iptables ve redsocks uygulamaları ile bunu sağlayabilirsiniz.

iptables ve redsocks ile yönlendirme yapılmasını anlatarak bu rehbere katkı verebilirsiniz.

Android temelli cihazlar üzerinde de shadowsocks kullanılabilir. Android VPN ayarlarından "Sürekli VPN modu" etkinleştirilerek bağlantının sürekliliği sağlanabilir.Bu sayede cihazdan geçen bütün trafik sunucunuz üzerinden internete çıkar, güvenli olmayan ağlarda iletişiminiz takip edilemez ve bütün trafik tek bir IP adresine doğru gözükür.

Shadowsocks belki Çin Halk Cumhuriyeti devleti tarafından erişimi engellenmeye çalışılan, önlem geliştirilen ve kısıtlanan bir yazılım olabilir ancak aktif geliştirici kitlesi, eklentileri ve genel basitliği ile sadece Çin vatandaşları tarafından değil aynı zamanda diğer bütün dünya vatandaşları tarafından da tercih edilesi bir noktaya gelmiştir.

Güncelliğini farklı dil ve platformlarda koruyan ciddi bir geliştirici kitlesi bulunmakta ve aktif kullanıcı sayısı ile güçlü bir proxy yazılımı olan Shadowsocks kitlesel gözetime karşı etkili bir araçtır.

Let's Encrypt

Let's Encrypt
Let's Encrypt, kar amacı gütmeyen bir sertifika otoritesidir. Let's Encrypt sayesinde ücretsiz olarak SSL/TLS sertifikası edinebilirsiniz.

SSL/TLS sertifikaları, normalde ortak olarak kabul edilmiş bilinen sertifika otoriteleri tarafından belirli bir ücret karşılığında edinilebilirdi. Let's Encrypt, SSL/TLS sertifikalarını herkes için erişilebilir hale getirmiştir. 2020 Şubat ayı itibarıyla, Let's Encrypt 1 milyar sertifika dağıtmıştır. Firefox istatistiklerine göre, Let's Encrypt'ten önce erişilen web sitelerinin yalnızca %26'sı SSL/TLS sertifikasına sahipken, bugün bu oran %85'e ulaşmıştır. 1

Let's Encrypt ile SSL/TLS sertifikası almak

Let's Encrypt ile sertifika edinmek için, EFF tarafından geliştirilen CertBot aracını kullanabilirsiniz.

CertBot, sertifikanızı otomatik olarak oluşturup gereken web sunucunuza kuracaktır.

Öncelikle https://certbot.eff.org adresine girip, alt kısımda bulunan menüden web sunucunuzu ve kullandığınız işletim sistemini/dağıtımı seçin.

Not: Bu noktadan itibaren, Ubuntu üzerinde Nginx kullandığınız varsayılacaktır.

CertBot menü

Daha sonra gelen sayfadaki yönergeleri takip edebilirsiniz.

Sunucunuza SSH ile bağlandıktan sonra, sırasıyla aşağıdaki komutları çalıştırın:

sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository universe
sudo apt-get update
sudo apt-get install certbot python3-certbot-nginx

Certbot sisteminize kurulacaktır. Nginx üzerindeki web sitenizin yapılandırmasında, server_name'inizin doğru ayarlandığına emin olun. Ayrıca, alan adınızın A kaydının Certbot'u çalıştırdığınız sunucuya yönlenmiş olduğuna emin olun.

Daha sonra aşağıdaki komut ile Certbot'u çalıştırın:

sudo certbot --nginx

Certbot, size bir e-posta adresi soracaktır. Bu e-posta adresine, yenilenemeyen sertifikalarınızla ilgili bilgilendirmeler gönderilecektir. E-postanızı yazdıktan sonra, EFF bültenini almak isteyip istemediğiniz sorulacaktır, tercihinize göre cevaplayıp devam ettiğinizde Nginx yapılandırma dosyalarınızda bulunan alan adlarınız listelenecektir.

Bir sertifikaya, birden fazla alan adı tanımlanabilmektedir. Ama bu noktada, alan adlarınızdan herhangi birisi eğer düşerse, sertifikanızın yenilenmeyeceğini unutmayın. Dolayısıyla sadece alt alan adlarını tek sertifikada toplamanız tavsiye edilmektedir.

Çıkan listedeki alan adlarının numaralarını virgülle ayırarak yazın, sertifikanız oluşturulacaktır.

Bu noktada, alan adınızın varsayılan olarak HTTPS'e yönlendirmek isteyip istemediğinizi soracaktır. Özel bir sebebiniz yoksa, 2 yazarak yönlendirme yapmanız şiddetle tavsiye edilir.

Tüm bu adımları tamamladığınızda, SSL/TLS sertifikanız oluşturulmuş olacak. Web tarayıcınıza https://alanadiniz.tld girerek sertifikanızın çalışıp çalışmadığını doğrulayabilirsiniz.

Sertifikanız 90 gün süreyle verilir ve Certbot tarafından otomatik olarak yenilenir. Tebrik ederiz!

1

https://letsencrypt.org/stats/

Katkıda Bulunanlar ve Lisans

Katkıda bulunanlar

  • Filiz Akın
  • Uğur Arıcı
  • Alper Atmaca
  • Tan Aytekin
  • Murat Emir Cabaroğlu
  • Onur Çelik
  • Cemre Demircioğlu
  • Mert Gör
  • Hamdi Gümüş
  • Derya Karaarslan
  • Umut Karcı
  • Özcan Oğuz
  • Furkan Senan
  • Osman Orçun Serçe
  • Zeynep Topsakal
  • Neslihan Turan
  • Yasin İsa Yıldırım
  • Mustafa Yontar

Lisans

© 2019-2020 Özgür Yazılım Derneği ve katkıda bulunanlar

Creative Commons Lisansı
Bu eser Creative Commons Atıf-AynıLisanslaPaylaş 4.0 Uluslararası Lisansı ile lisanslanmıştır.

Ek kaynaklar