İçeriğe atla

OpenLDAP

OpenLDAP
Geliştirici(ler)The OpenLDAP Project
İşletim sistemiÇoklu
TürLDAP uygulaması
LisansOpenLDAP Public Licance
Resmî sitesiwww.openldap.org
Kod deposu Bunu Vikiveri'de düzenleyin

OpenLDAP, LDAP (Lightweight Directory Access Protocol) ‘ın OpenLDAP Project tarafından geliştirilmiş bir uygulamasıdır. OpenLDAP Kamu Lisansı olarak bilinen BSD-türevi bir lisans kullanmaktadır. Platform bağımsız bir protokoldür. Kullanımda olan birçok Linux dağıtımı, LDAP desteği için OpenLDAP yazılımını barındırır. OpenLDAP, BSD dışında, AIX, HP-UX, Mac OS X, Solaris, Microsoft Windows ve z/OS gibi sistemlerde de çalışabilir.

Proje Gelişimi ve Çekirdek Kadro

OpenLDAP projesi, Kurt Zeilenga tarafından 1998 yılında başlatıldı. Proje, University Of Michigan ‘ın yayınladığı LDAP referans kaynağını kullanılarak başladı. Proje geliştikçe, LDAP protokolünün gelişimi ve evrimine de katkısı oldu. 2006 Nisan ‘ında çekirdek takımı 3 kişiden oluşuyordu;

  • Howard Chu (Chief Architect)
  • Pierangelo Masarati
  • and Kurt Zeilenga

Daha sonra, Luke Howard, Hallvard Furuseth, Quanah Gibson-Mount, and Gavin Henry gibi birçok geliştirici ve gönüllü projeye katıldı.

OpenLDAP Bileşenleri

Openldap 3 ana bileşene sahiptir;

  • slapd
  • LDAP kütüphaneleri
  • İstemci yazılımı: ldapsearch, ldapadd, ldapdelete vb...

Ek olarak birçok yardımcı projeye sahiptir.

  • JLDAP – LDAP : Java için sınıf kütüphaneleri
  • JDBC-LDAP - Java JDBC - LDAP köprü sürücüsü
  • ldapc++ - LDAP C++ sınıf kütüphaneleri

Arka plan

Genel kavram

Tarihsel olarak OpenLDAP server mimarisi ikiye ayrılır. Ağ erişimi ve protokolün işlenmesinden oluşan bir “önplan” ve tam anlamıyla bir veri depolama ile ilgilenen “arka plan”. Bu mimari, modülerlik, değişik arka planlar ve arayüz hazırlamaya imkân tanır.

Kullanılabilir Arka planlar

Openldap ta standart olarak 16 farklı arka plan sağlanmıştır. Ve bağımsız olarak geliştirilen üçüncü parti arka planlar olduğu bilinmektedir. Kategorilenmiş olarak aşağıdaki gibidir.

Veri deoplama arka planları;

  • back-bdb: Berkeley üniversitesi tarafından geliştirilmiş ilk arka plandır.
  • back-hdb: subtree renames desteği getirilmiş halidir.
  • back-ldif: LDIF dosyaları üstüne inşa edilmiştir.
  • back-ndb: MYSQL'in NDB cluster engine üstüne yapılmıştır.

Proxy arka planları;

  • back-ldap: diğer LDAP sunucular için temel proxy
  • back-meta: meta-directory özellikli proxy
  • back-passwd: Unix sistemlerinin passwd ve grup verileri için kullanılan proxy
  • back-relay: diğer slapd arka planlarına yönlendirme
  • back-sql: SQL veritabanları için

Dinamik arka planlar;

  • back-config: LDAP üzerinden slapd düzeni
  • back-dnssrv: DNS üzerinde LDAP sunucuları yerleştirme
  • back-monitor: LDAP üzerinden slapd iştatistikleri
  • back-null: Unix /dev/null analizi
  • back-perl: LDAP isteklerinde peel başvurusu
  • back-shell: LDAP isteklerine Shell betikleri başvurusu
  • back-sock: LDAP isteklerin IPC 'ye yönlendirme

back-perl, back-tcl, back-ldbm gibi bazı arka planlar şu anda kullanımda olmayan openldap versyonlarındada çalışabilmektedir. Pratikte -perl, -shell, and –sock gibi arka planlar, kabiliyete bağlı olarak diğer programlama dillerine arayüz sağlayabilir.

Yerleşim

Yerleşim Anlayışı

Normalde bir LDAP isteği önplandan alınır ve çözümlenir. Ardından işleme için arka plana iletilir. Arka planda istek tamamlandığında sonuç önplana veya istemciye iletilir. Önplan ile arka plan arasına bir takım kodlar sıkıştırılmıştır. Bu da kesmelere ve tetiklemelere cevap vermeye olanak tanır.

Kullanılabilir Yerleşimler

Openldap ‘ta öntanımlı olarak 20 tane yerleşim vardır. Ayrıca katkıcıların geliştirdiği 10 tane daha katkı yerleşimi vardır. Çekirdeğe eklenmiş öntanımlı yerleşimler:

  • accesslog: LDAP veritabanındaki log sunucusu aktivitesi
  • auditlog: flat metin dosyası üstündeki log sunucusu aktivitesi
  • chain: belirsizliği zincirleyip önleme
  • collect: X.500 gerçekleştirimi
  • constraint: değer kısıtlama
  • dds: dinamik veri servisi
  • deref: girdiler hakkında bilgi
  • dyngroup: basit dinamik grup desteği
  • dynlist: daha karışık dinamik grup desteği
  • memberof: aynı özellikliler grubu desteği
  • pcache: önbelleğe alınmış sorgu sonuçları
  • ppolicy: LDAP parola kuralları
  • refint: başvursal bütünlük
  • retcode: önceden belirlenmiş çeşitli görevler tanımlama
  • rwm: LDAP verileri için yeni yazım
  • seqmod: girdiler için serileştirme
  • syncprov: Syncrepl sağlayıcı
  • translucent: yarı transparan veri arttırımı
  • unique: verileri benzersizleştirme
  • valsort: özellikler için sıralama

Katkıcılardan gelen yerleşimler:

  • addpartial: istek ekleme ve ayarlama
  • allop: tüm özellikleri geri döndürme
  • autogroup: sabit grupları dinamik yönetme
  • denyop: ayarlanmış isteklerin iptali
  • lastmod: en son ayarlanmış duruma alma
  • nops: gereksiz ayarları filtreleme
  • nssov: slapd ‘den direkt olarak NSS isteklerine cevap verme
  • proxyOld: kesin kodlama desteği
  • smbk5pwd: Samba ve Kerberos parola korunumu
  • trace: Tüm LDAP istek ve tepkilerini kayıtlama

Openldap, aynı zamanda Sun and Netscape/Fedora/RedHat mimarisini kullanan SLAPI ‘ yi de desteklemektedir.

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Java</span> açık kaynak kodlu, nesneye yönelik, zeminden bağımsız, yüksek verimli, çok işlevli, yüksek seviye, adım adım işletilen bir programlama dili

Java, Sun Microsystems mühendislerinden James Gosling tarafından geliştirilmeye başlanmış açık kaynak kodlu, nesneye yönelik, platform bağımsız, yüksek verimli, çok işlevli, yüksek seviye, hem yorumlanan hem de derlenen bir dildir.

<span class="mw-page-title-main">DHCP</span>

DHCP, ağda bulunan her bir bilgisayarın IP adresi, alt ağ maskesi, varsayılan ağ geçidi ve DNS sunucuları gibi ağ bağlantısı ayarlarının otomatik olarak atamasını sağlar. Bu sayede ağ yöneticileri, ağdaki her bir bilgisayarın IP adresi ve diğer ağ bağlantısı ayarlarını elle girerek zaman kaybetmek yerine, DHCP sunucusu üzerinden bu bilgileri otomatik olarak atayarak daha verimli ve güvenilir bir ağ yönetimi yapabilirler. Bu sayede sistem yönetim işlemi de kolaylaşmış olur. Ayrıca UDP, TCP'ye dayalı herhangi bir iletişim protokolünün ve DNS, NTP gibi ağ hizmetlerinin kullanımına olanak sağlar.

<span class="mw-page-title-main">Transport Layer Security</span> Internet Şifreleme Protokolü

Taşıma Katmanı Güvenliği (TLS) ve onun öncülü/selefi olan Güvenli Soket Katmanı (SSL), bilgisayar ağı üzerinden güvenli haberleşmeyi sağlamak için tasarlanmış kriptolama protokolleridir. X.509 sertifikalarını kullanırlar ve bundan dolayı karşı tarafla iletişime geçeceklerin kimlik doğrulaması asimetrik şifreleme ile yapılır ve bir simetrik anahtar üzerinde anlaşılır. Bu oturum anahtarı daha sonra taraflar arasındaki veri akışını şifrelemek için kullanılır. Bu, mesaj/veri gizliliğine ve mesaj kimlik doğrulama kodları için mesaj bütünlüğüne izin verir. Protokollerin birçok versiyonu ağ tarama, elektronik mail, İnternet üzerinden faks, anlık mesajlaşma ve İnternet üzerinden sesli iletişim gibi uygulamalarda yaygın olarak kullanılmaktadır. Bu durumda/içerikte/bağlamda en önemli özellik iletme gizliliğidir. Bundan dolayı kısa süreli oturum anahtarı, uzun süreli gizli simetrik anahtardan türetilememelidir.

<span class="mw-page-title-main">Enlightenment</span>

Enlightenment, basit, hızlı, sade ve kullanışlı bir masaüstü ortamı yaratmak için başlatılan bir projedir. EFL adı verilen pek çok parçadan oluşmuş bir grup kütüphane üzerine inşa edilmiştir.

OpenDNS, ücretsiz Alan Adı Sistemi servisidir. Kullanıcılar otomatik DNS adresi bölümüne OpenDNS'in kendi DNS adreslerini yazarak, kimi yasaklı sitelere girmeye ya da istenilmeyen türden sitelere erişimi engellemeye olanak sağlar.

<span class="mw-page-title-main">Yük dengeleme</span>

Yük dengeleme; işi, iki ya da daha fazla bilgisayar, işlemci, sabit disk ya da diğer kaynaklar arasında paylaştırma teknolojisidir. Bu teknolojiyi kullanarak en iyi kaynak kullanımı, en yüksek işlem hacmi, en düşük cevap süresi sağlanabilir; oluşabilecek aşırı yüklemeden (overload) kurtulunabilir.

Bilgisayar ağları konusunda geçen Önyükleme Protokolü veya BOOTP, bir yapılandırma sunucusundan bir IP adresi almak için bir ağ istemcisi tarafından kullanılan bir ağ protokolüdür. BOOTP protokolü ilk olarak RFC 951 içerisinde tanımlanmıştı.

DHCPv6 IPv6 için Dinamik İstemci Ayarlama Protokolü dür. IPv6 durum bilgisi olmayan adres yapılandırmada IPv6 erişim kazanmak için kullanabilse de, DHCPv6 IPv4 için DHCP ile bugün yapıldığı gibi adresleri, adsunucusu ve diğer yapılandırma bilgilerini atamak için daha uygun bir çözüm olabilir. Bir önemli durum da, bunun için diğer mekanizmalar Komşu Saptama İletişim Kuralı mevcut olsa da, bir ağ üzerinde kullanılan Domain Name System sunucularıdır. Yazma sırasında, Microsoft Windows örneğin, sadece durum bilgisi olmayan adres yapılandırma ile RDNSS değil DHCPv6 kullanılan yönteme destek uygular.

TRT (Transport Relay Translator) geçiş yöntemi, OSI referans modeli taşıma (transport) katmanında çalışan bir çeviri yöntemidir. IPv6 desteği verilememiş IPv4 cihazlara (örneğin IPv4 web sunucuları) IPv6 protokolünü kullanarak erişmek için kullanılması planlanmıştır. [1]

HTTP tünelleme, kapsüllenmiş http protokolünü kullanan çeşitli ağ protokollerini çalıştırarak bağlantı gerçekleştiren bir tekniktir. Ağ protokolleri genelde TCP/IP ailesine ait olan protokollerdir. HTTP protokolü dolayısıyla, ağ protokolü tünnellenmiş olan kanal için kılıf (wrapper) olarak davranır.

<span class="mw-page-title-main">Nginx</span>

Nginx ; yüksek eş zamanlı çalışma kabiliyeti, yüksek performans ve düşük hafıza kullanımına odaklanılarak tasarlanmış bir Web sunucusudur. Aynı zamanda ters vekil sunucusu, yük dengeleyici ve HTTP ön belleği olarak da kullanılabilir.

cURL, çeşitli protokoller kullanarak, veri aktarımı sağlamak için kütüphane ve komut satırı aracı sunan bir bilgisayar yazılımı projesidir. cURL projesi, libcurl ve cURL olarak ikiye ayrılır. İlk olarak 1997 yılında yayınlanmıştır. İsminde bulunan "c" İngilizcedeki client (istemci) kelimesinden gelmektedir.

<span class="mw-page-title-main">Windows Server 2016</span>

Windows Server 2016, Windows 10 ile eş zamanlı olarak geliştirilen, Windows NT işletim sistemleri ailesinin bir parçası olarak Microsoft tarafından geliştirilen bir sunucu işletim sistemidir. İlk erken önizleme sürümü, Microsoft Servers ilk teknik önizleme ile birlikte 1 Ekim 2014 tarihinde mevcut oldu. İstemci işletim sistemi ile eş zamanlı olarak yayımlanmış olan önceki Windows Server sürümlerinin aksine, Windows Server 2016 Ekim 2016 için planlanan genel durumu ile Microsoft Ignite toplantısında 26 Eylül 2016 tarihinde serbest bırakıldı.

<span class="mw-page-title-main">MacOS Server</span>

macOS Server, Apple tarafından üretilen ve ayrı piyasaya çıkarılan add-on bir işletim ve sunucu sistemidir, macOS işletim sistemi için ek sunucu programları, idaresi ve yönetimi araçları sağlar. Mac OS X Server İngilizce, Japonca, Fransızca, Almanca, Basitleştirilmiş Çince, Hollandaca, İtalyanca, Almanca, İspanyolca ve Geleneksel Çince mevcuttur.

Kotlin, Java sanal makinesi (JVM) üzerinde çalışan ayrıca JavaScript kaynak koduna veya LLVM ile makine koduna derlenebilen, statik tipli bir programlama dilidir. İlk geliştirme Sankt-Peterburg, Rusya merkezli JetBrains programcıları tarafından yapılmıştır. İsmi Kotlin Adası'ndan gelmektedir. Java ile uyumlu sözdizimi olmasa da, Kotlin Java kodu ile birlikte çalışmak üzere tasarlanmıştır. Kotlin, Apple'ın Swift diline benzemektedir.

Güvenli kabuk,, ağ hizmetlerinin güvenli olmayan bir ağ üzerinde güvenli şekilde çalıştırılması için kullanılan bir kriptografik ağ protokolüdür. En iyi bilinen örnek uygulaması bilgisayar sistemlerine uzaktan oturum açmak için olandır.

Cocoa, masaüstü işletim sistemi macOS için Apple'ın yerel nesne yönelimli programlama ve uygulama programlama arayüzüdür (API).

Bir ICMP tüneli, ICMP yankı istekleri ve yanıt paketlerini kullanarak iki uzak bilgisayar arasında gizli bir bağlantı kurar. Bu tekniğin bir örneği ping istekleri ve yanıtları üzerinden tüm TCP trafiğini tünellemektir.

Microsoft Windows uygulama programlamasında, OLE Otomasyonu, Microsoft tarafından oluşturulan süreçler arası bir iletişim mekanizmasıdır. Başlangıçta Visual Basic olan komut dosyası dilleri tarafından kullanılması amaçlanan Bileşen Nesne Modeli'nin (COM) bir alt kümesine dayanmaktadır, ancak şimdi Windows'ta birkaç dil tarafından kullanılmaktadır. IDispatch arabirimini uygulamak için tüm otomasyon nesneleri gereklidir. Otomasyon denetleyicileri adı verilen uygulamaların, diğer uygulamalar tarafından dışa aktarılan paylaşılan otomasyon nesnelerine erişebildiği ve bunları değiştirebildiği bir altyapı sağlamaktadır. Uygulamaların birbirini kontrol etmesi için daha eski bir mekanizma olan Dinamik Veri Değişimi'nin (DDE) yerini almaktadır. DDE'de olduğu gibi, OLE Otomasyonunda otomasyon denetleyicisi "istemci"dir ve otomasyon nesnelerini dışa aktaran uygulama "sunucu"dur.

<span class="mw-page-title-main">Web şablon sistemi</span>

Web yayıncılığı'ndaki web şablon sistemi, web tasarımcılarının ve geliştiricilerin, bir aramanın sonuçları gibi özel web sayfa'larını otomatik oluşturmak için web şablonları ile çalışmasına olanak tanır. Bu, dinamik öğeleri web isteği parametrelerine dayalı olarak tanımlarken statik web sayfası öğelerini yeniden kullanır. Web şablonları statik içeriği destekleyerek temel yapı ve görünüm sağlar. Geliştiriciler içerik yönetim sistemlerinden, Web uygulama iskeletlerinden ve HTML düzenleyicilerinden şablonları kullanabilir.