"The Onion Routing" kelimelerinin baş harflerinden türetilmiş bir kısaltma kullanan tor ağı, 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 internet üzerinde belirli konularda anonimlik sağlayan özgür bir ağ projesidir.
<https://www.metrics.torproject.org> adresinden Tor ağ noktalarnı araştırabilir, en performanslı çalışanlarını inceleyebilirsiniz. (Muhtemelen yazının henüz bu aşamasındayken verdiğimiz linke giremeyeceksiniz. Çünkü ülkemizde Tor ağı ve Tor ağını tanıtan proje sitesi <https://www.torproject.org> yaklaşık olarak 19 Aralık 2016 tarihinden beridir yasaklı.)
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](how-tor-works.png "Tor Ağı Nasıl Çalışır ?")
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 bir Tor ağı 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.
Öncelikle ehemmiyetle belirtmeliyiz ki Tor Browser bilgisayarınızın tüm trafiğini Tor ağı üzerinden yollamaz.
Örnekle açıklamak gerekirse; Tor Browser üzerinden bağlanıp, arkaplanda "X" bir mesajlaşma programı kullanıyorsanız. Üzgünüz ki "X" programı üzerinden giden trafikte anonim değilsiniz.
![alt-text](Tor-browser-disinda.png "Tor browser ile anonimlik")
Tor browser, Mozilla Firefox'un modifikasyona uğratılmış bir halidir.
Daha sonradan kurulumu yarıda kesip bilgi vermemek adına şimdiden açıklama gereği hissediyoruz. Ülkemizde Tor ağı engellenmiş durumda olduğundan "Bridges"(köprüler) üzerinden bağlanılabiliyor.
Bütün gönüllü Tor ağ noktalarının IP adresleri internette açık bir şekilde listelenmektedir. Böylelikle otoriteler(kurumlar, kuruluşlar veya devletler) bu IP adreslerini blokladıklarında tor ağına giriş yapamazsınız. Tabiki bağlanmak imkansız değil. 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ü kullandığınızda temel olarak öncelikle her zamanki gibi halka açık bir Tor ağ noktasına 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.
Öncelikle Tor Browser'ı indirmek için [EFF Tor](https://tor.eff.org/download/languages/) sayfasında bağlanalım.
Size uygun olan dosyayı indiriniz. Şu anda biz, Debian x86_64 kullandığımız için:
Oluşturulan klasör içinde "start-tor-browser.desktop" isimli bir dosya ve "Browser" isimli bir dizin olmalı.
*start-tor-browser.desktop* 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.
![alt-text](Browser-kurulum1.png "Kurulum 1")
"Yapılandır" butonuna basarak devam ediniz.
![alt-text](Browser-kurulum2.png "Kurulum 2")
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.
Tarayıcınız açılır açılmaz güncel olmadığı ile alakalı bir uyarı alabilirsiniz. Endişelenmeyin, sol üstte bulunan Tor butonundan "Tor Browser Güncelleme Denetimi" seçeneğini işaretleyerek en güncel sürüme yükseltebilirsiniz.
Daha sonra **obfsproxy** kurulumu gerekecek. **apt-get install obfs4proxy** yazarak aynı şekilde kurabilirsiniz.
![alt-text](obfs4aptget.png "Obfsproxy kurulumu")
Şimdi **"/etc/tor/torrc"** dosya yolundaki konfigurasyon dosyasını düzenleyeceğiz. Ama öncesinde ülkemizde Tor ağı yasaklanmış olduğundan bağlanabilmek için **"Bridge"** almamız gerekecek.
Daha önceden indirmiş olduğumuz "Tor Browser" ile <https://bridges.torproject.org/> adresine bağlanıp **"Get Bridges"** maddesine tıklıyoruz.
Açılan pencereden **"Pluggable transport"** seçeneğini **"obfs4"** olarak seçiyoruz ve "Get Bridges" butonuna basıyoruz.
![alt-text](obfs4GetBridges.png "Get Bridges")
Karşınıza karışık bir **CAPTCHA** gelecek. Çözene kadar bırakmamanızı tavsiye ediyoruz. Biraz zordur kendisi...
Nihayetinde çözdüğünüzde karşınıza gelecek ekran aşağıdaki gibi olacaktır.
![alt-text](obfs4Bridges.png "Obfs4 Bridges")
obfs4 Bridge_IPadresi:PORT FINGERPRINT sertifika
gibi bir kalıpta Tor Project tarafından size 3 adet bridge verilecek. Bu aldığınız bridge adresleri ile Tor'un konfigürasyon dosyasını düzenleyeceğiz.
Boş bir terminal açıp **"nano /etc/tor/torrc"** yazıyoruz. Bu küçük komut bize Tor'un konfigürasyon dosyası olan torrc yi nano editöründe açma imkanı verecek.
Açıldığında karşınıza yığınla yazı geldiğini göreceksiniz. Klavyenizin aşağı ok tuşu ile sayfada gezinip kendinize uygun bir yer bulduktan sonra (biz şahsen ilk bloğun sonunu seviyoruz) konfigürasyon dosyasını şu hale gelecek şekilde değiştiriniz.
Şimdi artık bilgisayarınızda **9050**.porttan tor bağlantısı yapabiliyorsunuz. Fakat halen tam olarak hazır değilsiniz. Tüm bilgisayarınızın bağlantısını bu port üzerinden yönlendirmeniz gerekecek.
Tek tek bunları kurduktan sonra indirdiğimiz anonymous.sh dosyasını **/usr/sbin** dizinin altına kopyalayınız. Eğer Super User yetkisi isterse Supe User yetkisi olan bir terminalden **nautilus** komutu ile Super User yetkisi olan bir dosya yöneticisi açabilirsiniz.
Artık herhangi bir terminalden ve dizinden anonymous.sh dosyasını çağırabileceğiz.
Terminalimizi açıyoruz. Önce tor servisini başlatıyoruz.
Bu başlıkta kurduğumuz ve içinde bulunduğumuz Tor ağını daha derin olarak gözlemleyebilmenizi ve biraz daha kurcalayabilmenizi sağlayacak basit bir komut satırı programı olan "**Nyx**" i işleyeceğiz.
**Nyx**, eski adı "**ARM**" olan bir "Tor Ağı Gözlemleme(Monitoring)" programıdır. Gerçek zamanlı olarak bağlı olduğunuz Tor ağ noktalarını listeleyerek, trafiğinizi(upload ve download kullanımı), loglarınızı, konfigürasyon ayarlarınızı, Tor ağında sık sık kimlik değiştirebilmenizi ve daha Tor ağı ile ilgili bir çok şeyi tek bir yerden yönetebilmenize imkan verir.
Öncelikle kurulumuna başlayıp, kurduktan sonra biraz kurcalayacağız.
![alt-text](installNyx.png "Nyx kurulumu")
kurulumunu tamamladıktan sonra;
**anonymous.sh start** komutu ile tüm trafiği tor üzerinden yönlendirip temiz bir terminal açarak **nyx** yazıyoruz.
Karşınıza ilk olarak böyle bir ekran geldiyse herşeyi doğru yapmışsınızdır.
![alt-text](nyx_down_up.png "Nyx Açılış")
Bu gördüğümüz ekranda gerçek zamanlı olarak tor ağındaki Download ve Uploadlarınızı gözlemleyebilirsiniz. Ayrıca nyx ve tor ağının size teknik olarak çıkaracağı uyarılar ve hatalar da bu ekranda görüntülenir.
Karşınıza çıkan ekranda hangi ağ noktaları üzerinden tor ağına bağlandığınızı detaylı olarak inceleyebilirsiniz.
Tekrar sağ veya sol ok tuşları ile ekranlar arası geçir yaparsanız aşağıdaki gibi bir ekrana denk geleceksiniz.
![alt-text](nyx_torconfig.png "Nyx Açılış")
Bu kısım tor config dosyanızın nispeten biraz daha görselleştirilmiş halidir. Madde madde inceleyebilir, değişiklik yapabilirsiniz.
**NYX**'in herhangi bir ekranındaki iken "**m**" tuşuna basarak menüyü açabilirsiniz. Tor ağı yavaşladığında veya bağlı olduğunuz circuitleri değiştirmek istediğinizde **Menu>Actions>New identity** yolunu izleyebilirsiniz.
![alt-text](nyx_menu.png "Nyx Menu")
## Tor Ağının Zayıf Noktaları
Genel olarak Tor ağı güvenli sayılsa da tek başına %100 olarak güvenliği sağlamakta yetersizdir. Söz gelimi ilk bağlandığınız Tor ağ noktası sizin açık ip adresinizi biliyordur ve internete çıktığınız son Tor ağ noktası ise internette nasıl bir işlem yaptığınızı biliyordur.
**Exit node** yani bağlandığınız en son Tor ağ noktası olan bir kişi veya otorite, ip adreslerinden tek tek geri giderek 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 vb. gizli kalması gereken bilgileriniz gittiği güvenli sandığınız o yolda başkaları tarafından rahatlıkla ele geçirilebilir. Burada toplum yararına olarak yapılan her projedeki gibi sistemin işlemesi için en büyük etkenin **güven** olduğunu görüyoruz. (siz yine de tor ağından kişisel hesaplarınıza girmeyiniz.)
Bu riskleri olabildiğince minimuma indirgemek için; "**Tor over VPN**" olarak tanımlanan VPN üzerinden Tor ağına girmek gibi yöntemler kullanılmıştır. Tabiki bu sefer de herhangi bir VPN otoritesi IP adresinizi açık olarak görebilir. Fakat Tor ağındaki riskleri minimuma indirgemiş olursunuz. Bu konuda da tamamiyle kullanmış olduğunuz VPN otoritesinin bilgilerinizi saklayıp satmadığından bir şekilde emin olmanız gerekmektedir.
Veya daha da güvenlisi kendi sunucunuzu kiralayıp, üzerine bir OpenVPN servisi kurarak kendi VPN'inizi oluşturup onun üzerinden Tor ağına çıkabilirsiniz.
Harvard üniversitesinde okuyan bir genç, vizelerine çalışmadığı için erteletmek amacıyla okuluna tor ağı üzerinden bomba tehdidi içeren bir mesaj yollar. Fakat yakalanır.
Bunun nedeni ise aslında çok basit. Servis sağlayıcılarınız veya internete bağlandığınız kafe, üniversite vb ortamlarda hangi saatte tor ağına bağlanıldığını rahatlıkla görebilir. Fakat tor ağında neler yapıldığını göremez. Söz konusu olan genç, tor ağına okulunun wifi erişiminden bağlandığı ve gelen bomba tehdidi de tor ağından geldiği için mesajın atıldığı tarihte ve saatte okuldan sadece "1" bilgisayardan tor ağına bağlanıldığı fark edilir. Yapılan incelemelerde mesajın söz konusu bilgisayardan atıldığı tespit edilir ve kamera görüntülerinden tarih ve saat baz alınarak kimin tarafından kullanıldığı öğrenilir ve genç, cezaya çarptırılır.