Giriş
Keycloak, kullanıcı kimlik doğrulama ve yetkilendirmesini yönetmenizi sağlayan açık kaynaklı bir kimlik ve erişim yönetimi çözümüdür. Keycloak’u Virtual Private Server (VPS) üzerinde kendiniz barındırmak, kimlik doğrulama süreciniz üzerinde tam kontrol sağlar ve bu da geliştiriciler ve ev laboratuvar meraklıları arasında popüler bir seçim haline gelir. Bu kılavuzda, özellikle dağıtımı kolaylaştırmak için Docker kullanarak VPS üzerinde Keycloak’u nasıl kuracağınızı adım adım anlatacağız.
Doğru VPS Sağlayıcısını Seçmek
Keycloak’u kendiniz barındırmak için VPS seçerken performans, fiyatlandırma ve kaynaklar açısından dikkate alınmalıdır. İşte Keycloak dağıtımınız için değerlendirebileceğiniz bazı en iyi VPS sağlayıcılarının karşılaştırması:
| Sağlayıcı | Aylık Fiyat | RAM | CPU Çekirdeği | Depolama |
|---|---|---|---|---|
| Contabo VPS | 5.99 EUR | 4 GB | 2 | 300 GB SSD |
| Hetzner Cloud | 4.15 EUR | 2 GB | 1 | 20 GB SSD |
| DigitalOcean | 6 USD | 1 GB | 1 | 25 GB SSD |
| Vultr | 6 USD | 1 GB | 1 | 25 GB SSD |
| Linode (Akamai) | 5 USD | 2 GB | 1 | 50 GB SSD |
Daha detaylı bilgiler için tam VPS karşılaştırması bağlantısını inceleyebilirsiniz.
Gereksinimler
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
- Yeterli kaynaklara sahip bir VPS (en az 2 GB RAM önerilir).
- VPS IP adresinize yönlendirilmiş bir alan adı (opsiyonel ancak önerilir).
- Linux komut satırı ve SSH hakkında temel bilgi.
VPS Üzerinde Keycloak Kurulumu
Adım 1: VPS’inize Erişin
VPS’nize SSH ile bağlanın. your-user ve your-ip yerine kendi kullanıcı adınızı ve VPS IP adresinizi yazın.
ssh your-user@your-ip
Adım 2: Docker’ı Yükleyin
Docker kullanarak Keycloak kurulumu, kurulum ve yönetim sürecini kolaylaştırır. İşte Ubuntu sunucusunda Docker’ı kurmanın yolu:
sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install -y docker-ce
Kurulumu doğrulamak için:
docker --version
Adım 3: Docker Kullanarak Keycloak’u Başlatın
Keycloak’u Docker container olarak çalıştırmak için aşağıdaki komutları kullanın:
sudo docker pull jboss/keycloak
sudo docker run -d -p 8080:8080 --name keycloak \
-e KEYCLOAK_USER=admin \
-e KEYCLOAK_PASSWORD=password \
jboss/keycloak
Bu komutta, KEYCLOAK_USER ve KEYCLOAK_PASSWORD alanları ile bir yönetici kullanıcı oluşturulur. Güvenlik için bunları güçlü kimlik bilgileriyle değiştirin.
Adım 4: Keycloak’a Erişin
Container başlatıldıktan sonra, Keycloak’a ulaşmak için web tarayıcınızda http://your-vps-ip:8080/auth adresine gidin. Belirlediğiniz kimlik bilgileriyle giriş yapın.
Adım 5: Keycloak’u Yapılandırın
İlk girişinizde, realm’larınızı, istemcilerinizi ve kullanıcılarınızı yapılandırmaya başlayabilirsiniz. Keycloak bu konfigürasyonlar için geniş dokümantasyon sunmaktadır.
Kendiniz Barındırmak İçin En İyi Uygulamalar
- VPS’inizi Güvence altına alın: Sistemlerinizi düzenli güncelleyin ve erişimi sınırlandırmak için bir güvenlik duvarı kullanın.
- HTTPS Aktifleştirin: Let’s Encrypt kullanarak ücretsiz bir SSL sertifikası alın ve Keycloak’u HTTPS üzerinden çalışacak şekilde yapılandırın.
- Veri Yedekleme: Keycloak veritabanınızı ve container ayarlarınızı düzenli olarak yedekleyin.
SSS (Sıkça Sorulan Sorular)
1. Keycloak’u Docker olmadan da çalıştırabilir miyim?
Evet, Keycloak’u Docker olmadan da kurabilirsiniz. Keycloak websitesinden bağımsız sunucu sürümünü indirip, işletim sisteminiz için sunulan kurulum adımlarını izleyebilirsiniz. Ancak, Docker kullanmak dağıtımı ve yönetimi kolaylaştırır, bağımlılık çatışmalarını azaltır.
2. VPS üzerinde Keycloak’u nasıl ölçeklendirebilirim?
VPS üzerinde Keycloak’u ölçeklendirmek için, birden fazla Keycloak örneğini yükleyip bunları bir yük dengeleyici arkasında çalıştırabilirsiniz. Docker Compose veya Kubernetes kullanarak container’ları orkestre edebilirsiniz. Her örnek, aynı veritabanını paylaşmalı ve oturum tutarlılığı sağlanmalıdır. VPS’inizin ek yükü kaldıracak kadar kaynaklara sahip olduğundan emin olun.
3. Keycloak hangi veritabanlarını kullanabilir?
Keycloak, PostgreSQL, MySQL, MariaDB ve geliştirme amaçlı H2 gibi çeşitli veritabanlarını destekler. Üretim ortamları için PostgreSQL veya MySQL tercih edilmelidir çünkü bunlar dayanıklılık ve ölçeklenebilirlik sunar. Veritabanı bağlantısını standalone.xml dosyasına veya Docker’da ortam değişkenleri aracılığıyla yapılandırabilirsiniz.
Bu talimatları takip ederek, VPS üzerinde Keycloak’u başarıyla kendiniz barındırabilir ve kimlik ile erişim yönetiminizi kontrol altına alabilirsiniz. Kendiniz barındırılan uygulamalar hakkında daha fazla bilgi edinmek için r/selfhosted topluluğunu veya awesome-selfhosted depolarını inceleyerek ek kaynaklar ve rehberlik bulabilirsiniz. --- END ---