Linux Üzerinde Docker ile Authentik Kurulumu: Adım Adım Kılavuz (SSO Portalı Oluşturma)

Bu makale, Linux sistemlerde Docker kullanarak Authentik'i nasıl kuracağınızı ve merkezi bir Tek Oturum Açma (SSO) kimlik doğrulama portalını nasıl yapılandıracağınızı adım adım açıklar. OpenID, SAML ve LDAP entegrasyonları için temel oluşturur.

I
IT-RD
25 görüntülenme
Linux Üzerinde Docker ile Authentik Kurulumu: Adım Adım Kılavuz (SSO Portalı Oluşturma)

Giriş

Authentik, modern uygulamalar için güçlü ve esnek bir kimlik ve erişim yönetimi (IAM) çözümüdür. Bu kılavuz, Linux ortamında Docker konteynerleri aracılığıyla Authentik'i dağıtarak, kuruluşunuzdaki farklı uygulamalar için merkezi bir Tek Oturum Açma (SSO) portalı oluşturmanıza yardımcı olacaktır. Authentik, OpenID Connect (OIDC), SAML ve LDAP gibi çeşitli protokolleri destekleyerek merkezi kimlik doğrulama ihtiyacınızı karşılar.

Zorluk Seviyesi

Bu kurulum, temel Linux komut satırı bilgisi ve Docker bilgisi gerektirdiğinden Intermediate (Orta Seviye) olarak sınıflandırılmıştır.

Ön Gereksinimler

Başlamadan önce aşağıdaki bileşenlerin sisteminizde kurulu olduğundan emin olun:

  1. Linux İşletim Sistemi (Örn: Ubuntu, CentOS).
  2. Docker ve Docker Compose kurulu olmalıdır.
Not: Docker ve Docker Compose kurulumu bu kılavuzun kapsamı dışındadır. Eğer kurulu değilse, resmi dokümantasyonları takip ederek kurulum yapmanız önerilir.

Adım 1: Docker Compose Dosyasını Hazırlama

Authentik'i çalıştırmak için kalıcı depolama ve ağ ayarlarını tanımlayan bir docker-compose.yml dosyasına ihtiyacımız var. Ayrıca, Authentik'in veritabanı olarak kullanacağı PostgreSQL'i de aynı dosyada tanımlayacağız.

Proje dizininizi oluşturun ve içine gidin:

mkdir authentik-docker
cd authentik-docker

Aşağıdaki içeriği docker-compose.yml dosyasına kaydedin:

version: '3.8'

services:
  postgres:
    image: postgres:15-alpine
    restart: always
    environment:
      POSTGRES_USER: authentik_user
      POSTGRES_PASSWORD: <GIZLI_VERITABANI_SIFRESINI_BURAYA_GIRIN>
      POSTGRES_DB: authentik_db
    volumes:
      - ./postgres_data:/var/lib/postgresql/data

  authentik:
    image: authentik/authentik:latest
    restart: always
    command: server
    env_file: .env
    ports:
      - "8080:80"
    volumes:
      - ./media:/media
      - ./static:/static
    depends_on:
      - postgres

volumes:
  postgres_data:
  media:
  static:

Adım 2: Ortam Değişkenlerini Yapılandırma (.env Dosyası)

Güvenlik ve yapılandırma ayarları için bir .env dosyası oluşturmalıyız. Bu dosya, veritabanı bağlantı bilgilerini ve Authentik'in gizli anahtarını (secret key) içerecektir.

.env dosyasını oluşturun:

touch .env

Aşağıdaki içeriği ekleyin. SECRET_KEY için güçlü ve rastgele bir değer üretmeniz kritik öneme sahiptir:

# Veritabanı Bağlantı Ayarları
POSTGRES_HOST=postgres
POSTGRES_PORT=5432
POSTGRES_USER=authentik_user
POSTGRES_PASSWORD=<GIZLI_VERITABANI_SIFRESINI_BURAYA_GIRIN>
POSTGRES_DB=authentik_db

# Authentik Ayarları
AUTHENTIK_SECRET_KEY=<GUCLU_VE_RASTGELE_BIR_ANAHTAR_OLUSTURUN>
AUTHENTIK_DEBUG=False
AUTHENTIK_DEFAULT_REDIRECT_URL=http://localhost:8080/
Önemli Güvenlik Uyarısı: AUTHENTIK_SECRET_KEY'i asla varsayılan olarak bırakmayın. Yüksek entropili, rastgele bir dize kullanın (örneğin, Linux'ta openssl rand -base64 32 komutu ile oluşturabilirsiniz).

Adım 3: Authentik'i Başlatma

Tüm dosyalar hazır olduğunda, Docker Compose kullanarak hizmetleri başlatabilirsiniz. Bu işlem, veritabanını ve Authentik konteynerini oluşturacak ve başlatacaktır.

Aşağıdaki komutu çalıştırın:

docker compose up -d

-d bayrağı, konteynerlerin arka planda (detached mode) çalışmasını sağlar. İlk çalıştırmada gerekli tüm bağımlılıklar indirileceği için biraz zaman alabilir.

Adım 4: İlk Yönetici Kullanıcısını Oluşturma ve Yapılandırma

Konteynerler çalıştıktan sonra, Authentik arayüzüne erişim sağlamak için ilk yönetici hesabını oluşturmanız gerekir. Varsayılan olarak Authentik, 8080 portunda yayın yapar.

  1. Web tarayıcınızı açın ve http://<Sunucu_IP_Adresiniz>:8080 adresine gidin.
  2. Authentik kurulum sihirbazı sizi karşılayacaktır. 'Start Setup' butonuna tıklayın.
  3. Sihirbaz, ilk yönetici hesabını oluşturmanızı isteyecektir. Kullanıcı adı, e-posta ve güçlü bir şifre belirleyin.
  4. Kurulum tamamlandığında, artık Authentik yönetim panelinize giriş yapabilirsiniz.

Adım 5: SSO ve Uygulama Entegrasyonuna Hazırlık

Yönetim paneline girdikten sonra, SSO sağlamak için uygulamalarınızı (Providers) ve kimlik sağlayıcılarınızı (Identity Providers) yapılandırmaya başlayabilirsiniz. Authentik, OIDC, SAML veya LDAP gibi protokoller aracılığıyla mevcut uygulamalarınızı merkezi olarak yönetmenize olanak tanır.

İpucu: Üretim ortamına geçmeden önce, Authentik'i bir ters proxy (Nginx veya Traefik) arkasına alarak HTTPS üzerinden erişimi sağlamanız ve port 8080'i gizlemeniz şiddetle tavsiye edilir.

Kaynak

IT-RD