Bu rehber siteniz için Onion Hizmetini nasıl kuracağınızı gösterecek.
Onion Hizmeti iletişim kuralının nasıl çalıştığı ile ilgili teknik bilgiler için Onion Hizmeti iletişim kuralı sayfamıza bakabilirsiniz.
0. adım: Çalışan bir Tor edinin
Bu rehberin bir parçası olarak, aygıtınızda çalışan bir Tor bulunduğunu varsayacağız.
Tor kurmak için, Tor kurulum rehberi belgesini izleyin.
Bu rehberin kullanılabilmesi için düzgün çalışan bir Tor gereklidir.
Ayrıca Tor yapılandırma dosyalarının nerede olduğunu bilmeniz gerekir.
1. adım: Çalışan bir site sunucusu edinin
İlk adım olarak, Nginx, Apache ya da beğendiğiniz başka bir yerel site sunucusu kurmalısınız.
Bir site sunucusu kurmak karmaşık bir iş olabilir.
Bir yerde takılırsanız ya da daha fazla şey yapmak istiyorsanız, size yardımcı olabilecek bir arkadaş buun veya diğer işletmecilerle yazışmak için tor-onions e-posta listesine katılın.
Örnek olarak, Debian üzerinde Nginx ve Apache ile bir Onion Sitesinin nasıl kurulacağını ele alacağız.
Onion Hizmetiniz için yeni ve ayrı bir site sunucusu kurmanızı öneririz. Zaten kurulu bir site sunucunuz olsa bile, onu normal bir site için kullanıyor olabilirsiniz (veya daha sonra kullanmak isteyebilirsiniz).
Gösterilen site sunucusu yönetimi komutları Debian benzeri işletim sistemleri için olduğundan, diğer sistemlerden farklı olabilir.
Site sunucunuzun ve işletim sisteminizin belgelerini gözden geçirin.
Apache
Apache, birçok Linux ve * BSD dağıtımının ana deposunda bulunur.
apache2
paketini kurmak için:
$ sudo apt install apache2
Nginx
Nginx, birçok Linux ve * BSD dağıtımının ana deposunda bulunur.
nginx
paketini kurmak için:
$ sudo apt install nginx
Varsayılan olarak, kurulum tamamlandığında site sunucusu localhost:80
üzerinde çalışacaktır.
Bir sorun çıktığı hakkında bir hata iletisi görürseniz, sorunun ne olduğunu anlayana kadar sonraki adıma geçemezsiniz.
Kurulum tamamlandığında, site sunucunuzun çalıştığından emin olun: Tarayıcınızı açın ve http://localhost/ adresine gidin.
Ardından ana HTML dizinine bir dosya koymayı deneyin ve siteye eriştiğinizde göründüğünden emin olun.
2. adım: Tor Onion Hizmetinizi yapılandırın
Bir sonraki adımda, Tor (torrc) yapılandırma dosyasını açıp ve bir Onion Hizmeti kurmak için gerekli ayarları yapmalısınız.
İşletim sisteminize ve kurulumunuza bağlı olarak, Tor yapılandırma dosyanız farklı bir konumda olabilir veya farklı görünebilir.
torrc
dosyanıza şu iki satırı eklemelisiniz:
HiddenServiceDir /var/lib/tor/my_website/
HiddenServicePort 80 127.0.0.1:80
HiddenServiceDir
satırında bilgilerin bulunduğu klasör ve Onion Hizmetinizin şifreleme anahtarları bulunur.
HiddenServiceDir
satırını değiştirmek isteyebilirsiniz. Böylece Tor çalıştıran kullanıcı tarafından okunabilen ve yazılabilen bir klasör ayarlanabilir.
HiddenServicePort
satırında bir sanal bağlantı noktası (Onion Hizmetinizi ziyaret eden kişilerin kullanacağı bağlantı noktası) ayarlanır. Yukarıdaki durumda, Onion Hizmetinizin 80 numaralı bağlantı noktasına gelen herhangi bir trafiğin 127.0.0.1:80
adresine yönlendirilmesi gerektiğini belirtir (1. adımdaki site sunucusunun dinlediği bağlantı noktasıdır).
İpucu: Bir Onion Hizmetinin yerel bir ağa sızmasını önlemek için yapılabilecek iyi bir uygulama, Onion Hizmetini TCP soketi yerine Unix soketleri üzerinde çalıştırmaktır.
torrc
dosyanıza şu iki satırı eklemelisiniz:
HiddenServiceDir /var/lib/tor/my-website/
HiddenServicePort 80 unix:/var/run/tor/my-website.sock
3. adım: Tor uygulamasını yeniden başlatın ve çalıştığını denetleyin
torrc
dosyanızı kaydedip Tor uygulamasını yeniden başlatın.
$ sudo systemctl restart tor
Tor yeniden başlarsa tamamdır. Yoksa bir şeyler yanlıştır. Ne olduğunu anlamak için öncelikle günlük dosyalarına bakın.
Günlük kayıtlarında neyin yanlış olduğu hakkında fikir verebilecek bazı uyarı ve hata iletileri görebilirsiniz.
Genellikle sorun torrc
dosyasındaki yazım hatalarından ya da hatalı klasör izinlerinden kaynaklanır (Günlük dosyanızı bulamıyorsanız ya da nasıl etkinleştireceğinizi bilmiyorsanız Günlük Kayıtları SSS bölümüne bakabilirsiniz.)
Tor başlatıldığında otomatik olarak belirttiğiniz HiddenServiceDir
klasörü oluşturulur (gerekiyorsa).
Durumun bu olduğundan emin olun.
4. adım: Onion Hizmeti çalışıyor mu emin olun
Onion Hizmeti adresinizi almak için HiddenServiceDir
klasörüne gidin ve hostname
adındaki dosyayı bulun.
Onion Hizmeti yapılandırma klasöründeki hostname
dosyasında yeni onion v3 hizmetinizin sunucu adı bulunur.
Diğer dosyalar Onion Hizmeti anahtarlarınızdır. Bunları gizli tutmanız çok önemlidir.
Anahtarlarınız başkalarının eline geçerse, başkaları Onion Hizmetinizin kimliğine bürünebilir. Hizmetinizin tehlikeye girdiği varsayılarak, yararsız olduğu ve ziyaret etmenin tehlikeli olduğu düşünülebilir.
Artık Tor Browser'ı kullanarak Onion Hizmetinize bağlanabilir ve Adım 1'de ayarladığınız HTML sayfasını alabilirsiniz.
Çalışmıyorsa, fikir verebilecek ipuçları için günlük kayıtlarına bakın ve çalışana kadar oynamayı sürdürün.
Bu şekilde yapılandırılmış bir Onion Hizmetinin, adresi bilen veya keşfeden herkes tarafından erişilebilir olacağını unutmayın.
Onion Hizmeti erişimi için kimlik doğrulaması isteyebilirsiniz. Böylece yalnızca kişisel anahtarı olan kullanıcılar hizmete erişebilir.
Ayrıntılı bilgi almak için istemci kimliği doğrulaması bölümüne bakabilirsiniz.
(İsteğe bağlı) 5. adım: Birkaç Onion Hizmeti işletmek
Tek bir Onion Hizmeti için birden çok sanal bağlantı noktasının kullanılmasını istiyorsanız, daha fazla HiddenServicePort
satırı eklemeniz yeterlidir.
Aynı Tor istemcisinde birden fazla Onion Hizmeti çalıştırmak istiyorsanız, başka bir HiddenServiceDir
satırı eklemeniz yeterlidir.
Aşağıdaki tüm HiddenServicePort
satırları, başka bir HiddenServiceDir
satırı ekleyene kadar bu HiddenServiceDir
satırı için geçerlidir:
HiddenServiceDir /var/lib/tor/onion_service/
HiddenServicePort 80 127.0.0.1:80
HiddenServiceDir /var/lib/tor/other_onion_service/
HiddenServicePort 6667 127.0.0.1:6667
HiddenServicePort 22 127.0.0.1:22
Aynı site sunucusunda birden çok OnionSitesi işletiyorsanız, site sunucusu sanal sunucu dosyasını düzenleyerek her site için bir onion adresi eklemeyi unutmayın.
Örneğin, Nginx ile Unix soketleriyle Tor kullanıldığında, yapılandırma şu şekilde olur:
server {
listen unix:/var/run/tor/my-website.sock;
server_name <your-onion-address>.onion;
access_log /var/log/nginx/my-website.log;
index index.html;
root /path/to/htdocs;
}
Or in Apache with Tor service listening on port 80:
<VirtualHost *:80>
ServerName <your-onion-address.onion>
DocumentRoot /path/to/htdocs
ErrorLog ${APACHE_LOG_DIR}/my-website.log
</VirtualHost>
6. adım: güvenlik önerileri ve diğer ipuçları
Onion hizmetlerinin varsayılan sürümü sürüm 3'tür ve adresi http://
ve .onion
kısımları olmadan 56 karakter uzunluğundadır.
Onion hizmeti sürüm 2 kullanımdan kaldırılmıştır ve 2021'deki 0.4.6.1-alpha Tor sürümünden bu yana artık desteklenmemektedir.
Ayrıntılı bilgi almak için Onion hizmeti sürümlerinin kullanımdan kaldırılma zamanlaması günlük yazısına bakabilirsiniz.
Bazı OnionSitesi işletmecileri, Onion Hizmeti konumlarını açıklamak istemeyebilir.
Bu durumda, site sunucunuzu kendiniz, bilgisayarınız ve konumunuz hakkında herhangi bir bilgi vermeyecek şekilde yapılandırmanız gerekir.
Bu pek kolay bir iş değildir ve bu kaynaklar bunu yapmanıza yardımcı olur:
Son olarak, hizmetinizi uzun süre kullanılabilir tutmayı planlıyorsanız, private_key
dosyasını başka bir yere yedeklemeniz iyi olur.
Artık çalışan bir OnionSitesi kurduğunuza göre, Onion-Location özelliğini etkinleştirmek veya Onion Hizmeti yönetimini otomatikleştirmek için Docker, Heroku, Terraform, Ansible veya stem gibi araçları kullanmak isteyebilirsiniz.
Durağan bir siteniz varsa, ancak Nginx ya da Apache sunucularını hiç kurmadıysanız, oldukça kolay şekilde bir OnionSitesi hazırlanabilecek OnionShare projesini deneyebilirsiniz. Görsel bir arayüz ile yönlendirileceğiniz kolay bir yapılandırma ile kullanabilirsiniz.