
.onion uzantılı TOR adres oluşturmak
TOR (The Onion Router) hakkında genel bir bilgi vermeye gerek duymadan sadece TOR network üzerinden ulaşılabilen .onion uzantılı alanadı oluşturmayı yazacağım.
Sadece TOR üzerinden yayın yapan sitelerin yanı sıra pek çok mecra sansüre uğramamak, anonimlik gibi nedenlerle .onion adresleriyle de yayın yapmaya başladı. Son olarak DW .onion yansısını açtı. Belli başlı onion siteleri ProtonMail, DuckDuckGo, BBC, The Pirate Bay, Facebook, SecureDrop.
TOR'la normal internetten bağlandığımız sitelerde herşeyin sonlandığı Exit Relay adresini bırakırken, .onion sitelerde böyle bir iz bırakmıyoruz, bağlantılarımız 127.0.0.1 şeklinde görülecek.
Terminalden sunucumuza bağlandıktan sonra TOR'la ilgili paketleri yükleyeceğiz.
apt-get install tor tor-geoipdb torsocks
/etc/tor/torrc dosyasında TOR yapılandırmalar parametreler ile doldurulmuş ancak çalışır durumda değil.
Önce service tor stop
ile TOR servisini durduracağız. onion adresimizi oluşturmak için nano /etc/tor/torrc
ile aşağıdaki parametreyi düzenleyeceğiz.
HiddenServiceDir /var/lib/tor/hasan_service/
HiddenServicePort 80 127.0.0.1:80

service tor start
ile TOR servisini yeniden başlattığımızda /var/lib/tor/hasan_service/ dizini ve onun altında hostname (.onion adresimiz) ve private_key (adresimizin özel anahtarı) dosyaları oluşturuluyor. cat /var/lib/tor/hasan_service/hostname
ile domainimizi görüntüleyebiliriz. Burada oluşan adres 16 V2 adres. Adresimizin V3 olması için ayrıca "HiddenServiceVersion 3" parametresini eklememiz gerekiyor. V3 adresler 0.3.2 ile başladı. Daha erken bir versiyon var ise bu adresten güncel paketi kurabilirsiniz.
HiddenServiceDir /var/lib/tor/hasan_service/
HiddenServicePort 80 127.0.0.1:80
HiddenServiceVersion 3

TOR Browserda adresimiz yazıyoruz. Web servisinden görüntülemek istediğimiz alanı ayarlıyoruz.

Adresimizi özelleştirmek istersek Shallot kullanabiliriz.
Shallot kurulumu
Debain-Ubuntu'da farklı bağımlılıklar olabiliyor. libssl-dev, libssl1.0-dev gibi bağımlılıklar olabiliyor.
git clone https://github.com/katmagic/Shallot.git && cd Shallot
./configure && make

./shallot ^hasan
ile istediğimiz harflerle başlayan domainimizi ve özel anahtarımızı oluşturuyoruz.

Oluşturduğumuz domain ve özel anahtarı ağa bağlamak için otomatik oluşturduğumuz /var/lib/tor/hasan_service/ dizinindeki hostname ve private_key dosyalarını nano /var/lib/tor/hasan_service/hostname
ve nano /var/lib/tor/hasan_service/private_key
ile değiştirebiliriz. (torrc dosyasını düzenlemek ve izinleri ayarlamakla uğraşmamak için)

Sunucuda iptables gibi bir firewall var ise TCP 9150 portunu tüm IP adresleri için açmak gerekiyor. Bir diğer önemli nokta da .onion adrese ait subdomainleri de ana domaine alias olarak atamak da fayda var.
ServerName hasanmg6qiws37t6.onion
ServerAlias *.hasanmg6qiws37t6.onion