KeycyteYardım MerkeziKeycyte PAM
PDF indirGeri bildirim gönder

Keycyte PAM 3.2 · Kurulum Kılavuzu

Kurulum Betiğini Çalıştırma

install.sh kurulum betiği, Keycyte PAM’i hazırlanan kurulum paketinden sunucuya kurar. Betik bir bash betiğidir ve paket klasöründen sudo ile çalıştırılmalıdır.

Başlamadan Önce

  • Kurulum paketini Kurulum Paketini Hazırlama konusunda anlatıldığı gibi hazırlayın.
  • Kapsayıcıların (container) kullanacağı birincil DNS sunucusunun ve isteğe bağlı olarak ikincil DNS sunucusunun IP adresini belirleyin.

Kurulum Betiği Seçenekleri

SeçenekAçıklama
--dns <ip>Birincil DNS sunucusunu ayarlar ve DNS sorularını atlar. İkincil DNS sunucusu aynı adrese ayarlanır. --dns=<ip> biçimi de kabul edilir.
--skip-loadİmajların keycyte-pam.tar.gz dosyasından yüklenmesini atlar. Kurulum betiğini yeniden çalıştırdığınızda ve imajlar zaten yüklü olduğunda kullanın.
-h, --helpKullanım metnini gösterir.

Kurulum Betiğinin Yaptıkları

Kurulum betiği aşağıdaki adımları çalıştırır:

  1. Ön koşullar. Docker’ın kurulu olduğunu, Docker hizmetinin (daemon) çalıştığını ve erişilebilir olduğunu, Docker Compose’un kullanılabildiğini denetler. keycyte-pam.tar.gz, docker-compose.yml ve .env dosyalarının paket klasöründe bulunduğunu denetler.
  2. İmajlar. keycyte-pam.tar.gz arşivini açar ve içindeki her imajı docker load ile yükler. Ardından keycyte-pam:latest, keycyte-ssh-proxy:latest, keycyte-password-manager:latest, keycyte-radius-server:latest ve guacamole/guacd:latest imajlarının bulunduğunu denetler. Bu denetim --skip-load ile de çalışır.
  3. DNS. Birincil ve ikincil DNS sunucularını sorar ve .env dosyasına yazar (PRIMARY_DNS, SECONDARY_DNS).
  4. Docker grubu. PAM sunucusunun Docker soketini okuyabilmesi için sunucudaki docker grubunun kimliğini bulur ve .env dosyasına yazar (DOCKER_GID).
  5. Ana makine dizinleri. sudo komutunu çalıştıran kullanıcının ana dizininde ~/keycyte, ~/drive ve ~/record dizinlerini oluşturur, bu kullanıcıyı dizinlerin sahibi yapar ve yolları ile kullanıcı ve grup kimliklerini .env dosyasına yazar (KEYCYTE_BASE, KEYCYTE_DRIVE, KEYCYTE_RECORD, RUN_UID, RUN_GID). Kapsayıcılar bu kullanıcı ve grup kimliğiyle çalışır.
  6. Sertifikalar. localhost.p12, cacerts.pem ve keycyte-ca.crt dosyalarından mevcut olanları ~/keycyte dizinine kopyalar. localhost.p12 ya da cacerts.pem eksikse uyarı verir.
  7. Veritabanı denetimi. .env harici bir veritabanı sunucusunu IP adresiyle gösteriyorsa bu sunucunun portuna erişilebildiğini denetler.
  8. Başlatma. Tüm kapsayıcıları docker compose up -d ile başlatır, birkaç saniye bekler, kapsayıcıların durumunu ve çalışmayan kapsayıcıların son günlük satırlarını gösterir.
  9. Master hesabı. PostgreSQL hazır olana ve PAM sunucusu veritabanı şemasını oluşturana kadar bekler, ardından master hesabını oluşturmak için initdb/10-master-user.sql betiğini çalıştırır. Hesap zaten varsa değiştirilmez.

Kurulum Betiğini Çalıştırma

Kurulum betiğini çalıştırmak için:

  1. Sunucuda bir kabuk açın ve kurulum paketi klasörüne gidin.

  2. Kurulum betiğini çalıştırın:

    sudo ./install.sh

    DNS sunucusunu soru sorulmadan ayarlamak için:

    sudo ./install.sh --dns 10.0.0.53
  3. İstendiğinde birincil DNS sunucusunun IP adresini girin ve Enter tuşuna basın.

    İstem, .env dosyasındaki geçerli değeri köşeli parantez içinde gösterir. Bu değeri korumak için bir şey yazmadan Enter tuşuna basın. Kurulum betiği yalnızca IPv4 adresi kabul eder; değer geçerli değilse yeniden sorar.

  4. İstendiğinde ikincil DNS sunucusunun IP adresini girin ya da atlamak için Enter tuşuna basın.

    Atlarsanız ikincil DNS sunucusu birincil sunucuya ayarlanır.

  5. Kurulum betiğinin tamamlanmasını bekleyin.

    Kurulum betiği her kapsayıcının durumunu yazdırır. Tüm kapsayıcılar çalışıyorsa kurulumun tamamlandığını ve tüm hizmetlerin çalıştığını bildiren bir ileti yazdırır. Ardından master hesabı betiğini uygular ve günlükleri görüntüleme ile hizmetleri durdurma komutlarını yazdırır.

Keycyte PAM kurulmuştur. İlk Kez Oturum Açma ile devam edin.

Kurulumu Denetleme

Kurulumdan sonra kapsayıcıları denetlemek için paket klasöründe aşağıdaki komutu çalıştırın:

sudo docker compose --env-file .env -f docker-compose.yml ps

Tüm kapsayıcılar (pam, ssh-proxy, guacd, password-manager, radius, postgres-db) running durumunda olmalıdır.

PAM sunucusu günlüğünü izlemek için:

sudo docker compose --env-file .env -f docker-compose.yml logs -f pam

Master Hesabı Oluşturulmadıysa

PostgreSQL ya da veritabanı şeması zamanında hazır olmazsa kurulum betiği master hesabı betiğini atlar ve çalıştırılacak komutla birlikte bir uyarı yazdırır. Bu durumda PAM sunucusunun başlamasını bekleyin, ardından betiği paket klasöründe elle çalıştırın:

sudo docker exec -i postgres-db psql -U <db-user> -d <db-name> < initdb/10-master-user.sql

.env dosyasındaki veritabanı kullanıcısını ve veritabanı adını (DB_USER, DB_NAME) kullanın. Kurulum betiği komutu bu değerler doldurulmuş olarak yazdırır.

Kurulum Betiğini Yeniden Çalıştırma

Kurulum betiğini yeniden çalıştırabilirsiniz; örneğin eksik bir sertifika dosyasını ekledikten sonra. Kurulum betiği .env dosyasında yönettiği değerleri günceller; mevcut dizinleri ve mevcut master hesabını değiştirmez. İmajlar zaten yüklüyse --skip-load seçeneğini kullanın.

Not

Zorunlu bir sertifika dosyası eksikse dosyayı ~/keycyte dizinine kopyalayıp PAM sunucusunu yeniden başlatabilirsiniz:

sudo docker compose --env-file .env -f docker-compose.yml restart pam

Hizmetleri Durdurma

Kapsayıcıları durdurmak ve kaldırmak için paket klasöründe şu komutu çalıştırın:

sudo docker compose --env-file .env -f docker-compose.yml down

Veritabanı birimi ve ana makine dizinleri korunur. Hizmetleri yeniden başlatmak için sudo docker compose --env-file .env -f docker-compose.yml up -d komutunu çalıştırın.

Sayfa güncellendi: 1 Kasım 2026 Geri bildirim gönder
Ara