Yunohost İle Self Host Kavramına Giriş

Yunohost İle Self Host Kavramına Giriş

Merhaba dostlar!
Sizlerle birlikte son zamanlarda popülerlik kazanan "Self Host" kavramına odaklanacağız.

Genel tabiriyle "Self Host", verilerimizin yerel bir sunucuda ya da kiralanmış bir VDS/VPS üzerinde barındırılması anlamına gelir. Şimdi gelin, bu kavramın artılarına ve eksilerine birlikte göz atalım.


Artıları

"Self Host" sistemlerinin bazı önemli avantajları bulunuyor:

1 - Tam Kontrol Sende
Kullanılacak işletim sistemi, yazılımlar, güvenlik politikaları ve yazılım sürümlerine kadar tüm servisleri sen yönetirsin. Her şeyi ihtiyaçlarına göre şekillendirebilir, sistem üzerinde tam hâkimiyet kurabilirsin.

2 - Yüksek Düzeyde Özelleştirilebilirlik
Bu ne demek? Sunucu kaynaklarını (RAM, işlemci, disk alanı vb.) ihtiyacına göre ayarlayabilir, özel yazılımlar kurabilirsin. Ayrıca istediğin programlama dillerini ve veritabanı sistemlerini sorunsuz bir şekilde kullanabilirsin.

3 - Güvenlik (Belki de En Can Alıcı Kısım)
Bu konuda farklı görüşler olsa da, kabul etmek gerekir ki verilerinin üçüncü parti uygulamalarla paylaşılmadan tamamen sende kalması güvenlik açısından "Self Host" çözümlerini bir adım öne çıkarıyor. Tamamen senin kontrolünde olan bir sistem, birçok kişi için en güvenli seçenek anlamına geliyor.

4 - Veri Gizliliği ve Mahremiyet
Sunucu üzerinde barındırılan her türlü hassas veri tamamen senin kontrolünde olacağı için güvenlik konusunda da için rahat olacaktır. Herhangi bir şekilde üçüncü taraf ile veri paylaşma zorunluluğu veya kabul edilmesi gereken sayfalarca politika bulunmaz.

5 - Uzun Vadede Maliyet
İlk sunucu satın alımı sırasında maliyetler biraz fazla olsa da, hosting gibi kavramlar üzerinden bakıldığında kaynakların tamamen yönetilebilir olması ve gizlilik gibi kavramların da içine girmesi ile beraber uzun vadede mantıklı bir yatırım aracına dönüşmektedir.

6 - Öğrenme ve Gelişim
Self-host hali hazırda zaten bireysel ve lokal olarak bir sunucu kurmak ve veri gizliliği sağlamakken, üstüne bir de sunucu kurulumu, konfigürasyonu gibi olayların içine girilmesi ile beraber tamamen öğrenmeye dayalı bir sistem sunuyor.

Self-Hosting'in Dezavantajları

Bu kadar övgüden sonra elbette dezavantajlarına değinmeden konuyu bir kenara bırakmayacağız. :)

1 - Teknik Bilgi ve Tecrübe
Belki de self-host kavramının en can alıcı ama benim nezdimde bir (+) olarak gördüğüm duruma değineceğiz. Teknik bilgi ve tecrübe ihtiyacı, her ne kadar tüm veriler kontrol altında olsa da, nihayetinde sunucu kurulumu, ağ yapılandırmaları, güvenliğin sağlanması gibi birçok teknik konunun sizlerin kontrolünde olması demek. Bu da ister istemez ileri seviye olmasa da teknik bilgi gerektirmekte.

2 - Sorumluluk
Sunucunun bakımı, güncellenmesi, yedeklenmesi, güvenliğinin sağlanması gibi tüm sorumluluklar sana aittir. Bir sorun yaşandığında (örneğin sunucu çökmesi, güvenlik ihlali), çözümü bulmak ve uygulamak senin görevin.

Bu konuların haricinde "Kısa Vadede Maliyet", "Zaman ve Emek" gibi başlıklar da olsa da, bunları tarafımca bir eksi değil; bir öğrenme ve gelişim süreci olarak gördüğüm için bu kısma ekleme ihtiyacı duymadım.


Self-Host Barındırma Seçenekleri

Emre şimdi biz karar verdik ve kuracağız ama bunu nerede ve nasıl yapacağız?
İşte şimdi o konuya değiniyoruz dostlar.

VDS/VPS Çözümleri
Nedir bu VDS/VPS? Fiziksel olarak veri merkezlerinde barındırılan sunucuların, sanallaştırma teknolojileri ile birden fazla ve bağımsız sunuculara bölünmesine verilen isim diyebiliriz kısaca. Sunucu kaynakları tek bir makinaya ait olsa da, her bölünmüş sunucu için özel olarak ayrılır ve fiziksel sunucu barındırma (Dedicated) çözümlerine göre daha az maliyetlidir.

Ben bu konuda VDS/VPS önermekteyim, o yüzden bulut tabanlı olan seçenekleri şimdilik eliyorum.

Ayrıca başka bir yazımızda, bunu kendimize ait bir bilgisayar içerisinde kurup dünyaya açmayı da gösteriyor olacağım. Bu kısımda Cloudflare kullanacağız. :)


YunoHost Kurulumu

Yine sizleri düşünerek en basit yolu tercih ettim diyebiliriz.
Peki nedir bu YunoHost?
Linux tabanlı olan bu işletim sistemi, daha az zaman ve emekle; basit bir web arayüzü ve içerisinde barındırdığı birçok uygulama ile kolay ve herkes tarafından kullanılabilir bir self-host deneyimi sunuyor.

Kurulum adımları çok basit olmasına rağmen, ben yine de sizler için kurulum adımlarını aşağıya bıraktım.

1. Adım

Install YunoHost | Yunohost Documentation adresi üzerinden YunoHost’un resmi kurulum sayfasına gidiyoruz.
Bizlere gerekli olan: Debian 12 kurulu bir sunucu. (Bunu genellikle sunucu aldığınız firma üzerinden tek tıkla kurabilirsiniz.)


Sunucu satın aldıktan sonra genellikle bu şekilde bir ekran sizleri karşılıyor olacak ve buradan DEBIAN 12 kurulumu yapmanız gerekmektedir.

Ayrıca YunoHost’un istemiş olduğu kaynak miktarı o kadar az ki, buraya kaynak ihtiyaçlarını ekleme gereği duymadığımı belirtmek isterim. Fakat isterseniz, kurulum sayfasında ilgili detaylar yer alıyor.

VMware üzerinden sunucu kurulumu ve local üzerinde işlemler yapmanız için bir sonraki yazımızda bu konuya değineceğim.

Ek olarak, YunoHost’un resmi kurulum sayfasında local üzerinde kurulum yapmanız için .iso dosyası da bulunmakta. Fakat ben şimdilik hali hazırda bulunan bir sunucu üzerinden kurulum adımlarına devam edeceğim.

1 - Kuruluma başlamadan önce aşağıdaki komutu çalıştıralım ve sunucumuzu güncelleyelim. Karşımıza çıkan [Y/N kısımlarına Y yazarak devam edebiliriz.]Sonrasında reboot atacağız.

Fakat unutmadan önce apt-get install curl komutunuda gerekli güncellemeler bittikten sonra kurmayı ihmal etmeyelim.

apt-get update && apt-get upgrade

2 - İlgili güncellemeler sonrasında "curl https://install.yunohost.org | bash" kodunu çalıştırabiliriz.
Kurulum sırasında sizlerden 2 defa ayrı onay isteyecek tümüne "y" diyerek geçebiliriz.


Unutmadan sunucu kurulumu sonrasında kurulum sonunda oluşturacağımız kullanıcı ile giriş yapacağız yani ssh root@ip yerine ssh k.adi@ip şeklinde bağlantı sağlayıp "sudo su" veya "su" ile root yetkisi alacağız.


Kurulum 5 farklı adımdan oluşuyor gerekli onayları verdikten sonra herhangi bir işlem yapmanıza gerek yok yalnızca işlemin bitmesini beklemeniz gerekiyor.

Kurulum sonrasında

"https://ipadresi/yunohost/admin/#/postinstall" adresinden panele giriş yapabilirsiniz. Sayfa güvenli değil uyarısı olacaktır "daha fazla" diyerek devam edebilirsiniz.

3 - Giriş yaptıktan sonra aşağıdaki gibi bir sayfa sizi karşılıyor olacak

Burada I agree seçeneğini seçerek devam edeceğiz. Fakat unutmadan bu servisi kullanmak için bir alan adına ihtiyacınız var. Teknik olarak ip adresi üzerinden de kullanım sağlanabilir fakat daha verimli ve efektif olması için alan adı ile kullanmanızı tavsiye ederim.

Ben kurulum için emreyildiz.org alan adını kullanacağım.

Yukarıdaki şekilde ayarlamalarınızı yapabilir ve devam edebilirsiniz bir sonraki adımda kullanıcı oluşturma işlemi yapacağız.

4 - Kullanıcı oluşturma ekranında güçlü bir kullanıcı adı ve şifre tercih edebilirsiniz kullanıcı adınızın bile karışık olmasını tavsiye etmemin sebebi sonuçta içeride barındıracağımız veriler üçüncü taraf ile paylaşmak istemediğimiz veriler olduğu için ekstra güvenlik eklemek fena olmaz.

Kullanıcı oluşturma işlemi sonrasında

İlgili alandan oluşturulan kullanıcı ile giriş yapabilirsiniz.

Yukarıdaki sekmeler üzerinden kullanıcı, domain ve uygulama işlemlerini rahatlıkla yapabilirsiniz.

Hafta içi yayınlanacak olan bir diğer makalemizde sizlere yuna host üzerinden mail servisi, nexcloud ve uptime kuma gibi açık kaynak ve işe yarar servislerin kurulumu ve ayarlanması için bir makale yayınlayacağım... Sevgiyle kalın.