Merhaba bugün sizlere Raspberry Pi kartını kullanarak internet üzerinde herhangi bir static ip veya port yönlendirme olmadan websitesi yayınlamayı anlatacağım. Fakat bu yazı web sitesi oluşturma ve yayınlama konusuna değinmeyecektir. Daha önceden yerel ağda bir websitesinin yayınladığınızı varsayarak anlatacağım. Herhangi bir static ip’ye sahip olmadan Raspberry Pi kartımız üzerinde yayınladığımız siteyi internet üzerinde yayınlamak için Cloudflare Tunnel kullanacağız. Bu yazımda size Raspberry Pi ve Cloudflare Tunnel hakkında kısa bir bilgi vereceğim. Daha sonra ise kurulum ve kullanımı anlatacağım. Eğer yazımı beğendiyseniz bana bir kahve ısmarlayarak destek olabilirsiniz.

İçindekiler

Raspberry Pi Nedir?

Raspberry Pi, düşük maliyetli, tek kartlı bir bilgisayar platformudur. İlk kez 2012 yılında Birleşik Krallık’taki Raspberry Pi Vakfı tarafından geliştirilen bu platform, özellikle eğitim, hobi projeleri, prototip oluşturma ve geliştirici toplulukları için tasarlanmıştır. Raspberry Pi, oldukça küçük bir boyuta sahiptir (genellikle kredi kartı büyüklüğünde), enerji verimliliği ile dikkat çeker ve çeşitli giriş/çıkış (I/O) seçenekleri sunar.

Cloudflare Tunnel Nedir?

Cloudflared, Cloudflare tarafından geliştirilen ve sunulan açık kaynaklı bir yazılımdır. Bu yazılım, bilgisayarınızı veya sunucunuzu Cloudflare’nin güvenlik, hızlandırma ve içerik dağıtım hizmetleri ile entegre etmek için kullanılır. Cloudflared, ayrıca özel ağlara veya cihazlara güvenli ve şifreli bir şekilde erişim sağlamak için kullanılan Argo Tunnel adı verilen bir özelliği içerir.

Cloudflared’in başlıca kullanım alanları şunlar olabilir:

  1. Web Güvenliği ve Performansı İyileştirme: Cloudflare, web sitelerini daha hızlı hale getirmek ve DDoS saldırılarına karşı koruma sağlamak için bir dizi hizmet sunar. Cloudflared, web sitenizi Cloudflare hizmetlerine yönlendirmenize ve bu hizmetlerden faydalanmanıza olanak tanır.

  2. Argo Tunnel: Cloudflared, kullanıcıların özel ağları veya cihazları güvenli bir şekilde Cloudflare’nin ağına bağlamalarını sağlar. Bu, özellikle uzaktan çalışma veya özel ağlara güvenli uzaktan erişim gerektiren durumlarda kullanışlıdır.

  3. DNS over HTTPS (DoH): Cloudflared, DNS trafiğinizi şifreleyerek daha güvenli bir şekilde iletebilmenizi sağlar. Bu, internet trafiğinizin gizliliğini artırabilir ve DNS üzerinden yapılan saldırılara karşı koruma sağlayabilir.

  4. Cloudflared, çeşitli işletim sistemleri için kullanılabilir ve komut satırı aracılığıyla kullanılır. Bu yazılım, Cloudflare’in hizmetlerini daha kolay ve güvenli bir şekilde entegre etmek isteyen kullanıcılar için güçlü bir araçtır. Ayrıca, Cloudflared’in açık kaynaklı olması, kullanıcıların kodu inceleyip özelleştirmesine ve katkıda bulunmasına olanak tanır.

Gerekli Olanlar

Kurulum

  1. İlk olarak cloudflare’e alan adınızı ekleyiniz. Bu alan adı sağlayıcılarına göre değişiklik göstermektedir. Ben GoDaddy üzerinden alan adı satın aldım. GoDaddy üzerinden alan adınızı satın aldıysanız bu adresten nasıl ekleyeceğinizi öğrenebilirsiniz.

  2. Daha sonra Raspberry üzerine gerekli işletim sistemini kurmanız gerekmektedir. Bunun için Raspberry Pi Imager programını kullanabilirsiniz. Bu program ile hafıza kartına işletim sistemini yazarken ssh ve wifi ayarlarını yapılandırabilirsiniz. Bunun için alt kısımda (1) işletim sistemini seçebilirsiniz. Lite versiyon seçmeniz web sunucunuz için performans yönünde baya yüksek seviye de kazanç sağlayacaktır. Gerekli ayarları yapmak için 2 numaralı alana tıklayınız. Eğer bu kısım gözükmüyor ise CTRL + SHIFT + X tuş kombinasyonu ile ayarlar sayfasını açabilirsiniz.

Raspberry Pi Imager Ana Ekran

Ayar ekranına girdikten sonra;

  • 1 numaran yerel .local adresinizi ayarlayabilirsiniz. Bu ayarın çalışması için modeminizin bunu desteklemesi gereklidir. Eğer modeminiz tarafından destekleniyorsa Raspbery cihazına bu adres üzerinden bağlanabilirsiniz.
  • 2 numaradan SSH kullanımını aktif edebilirsiniz.
  • 3 numaradan bağlantı sırasında hangi güvenlik methodunu kullanacağımızı seçiyoruz.
  • 4 numaradan kullanıcı adı ve şifresini belirliyoruz. Bu kullanıcı adı ve şifresi ile Raspberry cihazına bağlanacağız.
  • 5 ve 6 numaradan wifi ayarlarımızı yazıyoruz.
  • 7 numaradan yerel yapılandırma ayarlarını aktif ediyoruz.
  • 8 numaradan SAVE diyerek ayarları kaydediyoruz.
  • 9 Yaz diyerek yazılımı hafıza kartına yazıyoruz.

Raspberry Pi Imager Ana Ekran

  1. Raspberry cihazınızı açtıktan sonra ssh ile cihaza bağlanıyoruz. Bunun için putty veya mobaxterm gibi programları kullanabilirsiniz. Eğer putty kullanacaksanız XXXX.local adresine bağlanabilirsiniz. Gerekli bilgileri girdikten sonra login oluyoruz.

Eğer terminal üzerinden bağlanacaksanız ssh [email protected] şeklinde yazarak bağlanabilirsiniz.

  1. Raspberry cihazına bağlandıktan sonra cloudflared kurulumunu yapmamız gerekmektedir. Bunun için alt kısımda buluan komutu çalıştırıyoruz.

sudo apt install cloudflared

  1. Bu komut kurulumu gerçekleştirirken Cloudflare tarafını yapılandıralım.

Raspberry Pi Imager Ana Ekran

İlk olarak eklediğimiz alan adını seçelim.

Raspberry Pi Imager Ana Ekran

Daha sonrasında Launch Zero Trust seçeneğini seçelim.

Raspberry Pi Imager Ana Ekran

Create a Tunnel seçeneğini seçelim.

Raspberry Pi Imager Ana Ekran

Tünele bir isim verelim. Herhangi bir şey olabilir. Özgürce seçebilirsiniz. Daha sonra Save tunnel diyerek kaydedelim.

Raspberry Pi Imager Ana Ekran

Back to Tunnel diyerek geri dönelim.

Raspberry Pi Imager Ana Ekran

Eklediğimi tüneli seçelim. 3 nokta diyerek edit diyelim.

Raspberry Pi Imager Ana Ekran

Add a public hostname diyerek public hostname ekleyelim.

Raspberry Pi Imager Ana Ekran

Bu hostname alan adınızın alt alan adı olmalıdır. Örneğin raspberry.aattk.net gibi. Daha sonra Save diyerek kaydedelim. Ayrıca hangi portu ve yerel ip adresini kullanacağımızı da seçeceğiz. Daha sonra Save Hostname diyerek kaydedelim.

Raspberry Pi Imager Ana Ekran

Bütün bunları yaptıktan sonra yine tünel ekranından Overview diyerek gerekli olan yapılandırma dosyasını alalım. Raspberry üzerinde bu kodu çalıştıralım. Bir süre sonra tünel aktif olacaktır. İyi kullanımlar dilerim.

Bu basit örnek dışında bir çok kullanım alanı bulunmaktadır. Bunları buradan inceleyebilirsiniz.