> ## Documentation Index
> Fetch the complete documentation index at: https://destek.leaderos.com.tr/llms.txt
> Use this file to discover all available pages before exploring further.

# LeaderOS Auth

> Veritabanı bağlantısı olmadan LeaderOS API ile oyun içinden giriş/kayıt işlemleri sağlar.

## İndir

[https://www.spigotmc.org/resources/leaderos-auth.127863/](https://www.spigotmc.org/resources/leaderos-auth.127863/)

## Kaynak Kodu

[https://github.com/leaderos-net/minecraft-leaderos-auth](https://github.com/leaderos-net/minecraft-leaderos-auth)

## Özellikler

* LeaderOS API ile oyun içinden giriş/kayıt işlemleri sağlar.
* Veritabanı bağlantısı olmadan çalışır. Eğer veritabanı ile bağlantı sorunları yaşıyorsanız bu eklenti tam size göre!
* LeaderOS API ile entegre çalışır.
* Velocity, Bungeecord ve Spigot/Paper ile uyumludur.
* Güvenli ve stabil doğrulama sağlar.
* AuthMe ve LimboAuth alternatifidir.

## Kurulum Özeti

**Velocity kullanıyorsanız sadece velocity jarını kurun.**

* config.yml dosyasındaki `url` ve `api-key` alanlarını doldurun.

**Bungeecord kullanıyorsanız hem bungeecord jarını hem de spigot/paper jarını kurun.**

* Spigot/Paper jarını çakmalobiye kurun.
* Bungeecord config.yml dosyasındaki `auth-server` alanını doldurun.
* Spigot/Paper config.yml dosyasındaki `url` ve `api-key` alanlarını doldurun.

**Herhangi bir proxy sistemi kullanmıyorsanız sadece spigot/paper jarını kurun.**

* config.yml dosyasındaki `url` ve `api-key` alanlarını doldurun.

**config.yml'deki önemli alanlar:**

* `lang` değerini `tr` yaparak Türkçe dil desteğini aktif edebilirsiniz.
* `url` değeri sitenizin URL'si olmalıdır. Örneğin: `https://benimsunucu.com`
* `api-key` değeri ise LeaderOS Yönetim Paneli > Ayarlar > API sayfasından alabileceğiniz API anahtarıdır.

<Warning>
  Cloudflare kullanıyorsanız şu işlemi de yapınız: [Cloudflare kullanan siteler için engel kaldırma](/plugins/minecraft/leaderos-auth#cloudflare-kullanan-siteler-için-engel-kaldırma)
</Warning>

## Velocity ile Kullanım

Velocity versiyonu ile herhangi bir çakmalobiye ihtiyaç duymadan kurulum yapabilirsiniz. Kullanıcı sunucuya giriş yaptığında giriş/kayıt için oluşturumuş boş limbo sunucusuna oyuncu yönlendirilir ve giriş/kayıt işlemi yapması istenir. İşlemi başarılı olan oyuncu sunucuya yönlendirilir.

### Velocity gereksinimleri

* Velocity 3.4 b520 ve üzeri bir sürüm gereklidir.
* LimboAPI 1.1.27 sürümü gereklidir.

### Velocity için Kurulum

1. Eklentiyi indirin ve velocity için olan jar'ı velocity sunucunuzun `plugins` klasörüne yükleyin.
2. Velocity sunucusunu yeniden başlatın.
3. Sunucu yeniden başladığında `plugins/leaderosauth/config.yml` dosyasını açın. Bu dosyadaki `url` ve `api-key` alanlarını doldurun:
   * `url`: Sitenizin URL'sini girmelisiniz. Örneğin: `https://benimsunucu.com`
   * `api-key`: Sitenizin API anahtarını girin. Bu anahtarı Yönetim Paneli > Ayarlar > API sayfasından alabilirsiniz.
4. Velocity sunucusunu tekrar yeniden başlatın ve kurulumu tamamlayın.

Velocity ile kurulumda spigot/paper sunucusuna kurmanıza gerek yoktur. Sadece velocity versiyonunu kurmanız yeterlidir.

### Video Anlatım

<iframe src="https://www.youtube.com/embed/m9NTXG95sV4" width="100%" height="400px" frameBorder="0" allowFullScreen={true} />

### Oyuniçi Görünüm

<iframe src="https://www.youtube.com/embed/gpj9i9V_d0U" width="100%" height="400px" frameBorder="0" allowFullScreen={true} />

## Bungeecord ile Kullanım

Bungeecord versiyonu güvenlik sağlamak için yapılmıştır. Bungeecord ile birlikte giriş/kayıt yapılacak bir spigot/paper sunucusuna ihtiyaç vardır. Yani sadece Bungeecord'a kuraraak çalışmaz. Bu versiyonun amacı kullanıcıların giriş sunucusunda admin hesabı ile oyuna bağlanarak giriş yapmadan /server gibi komutların kullanımını engellemektir.

<Warning>
  Eğer Bungeecord kullanıyorsanız kesinlikle bu eklentiyi kullanmalısınız. Aksi takdirde kötü niyetli kullanıcılar giriş sunucusunda admin hesabı ile oyuna katılarak /server gibi komutları giriş yapmadan kullanabilir ve sunucunuza zarar verebilir.
</Warning>

<Note>
  Eklentimizin sadece Bungeecord jarını kullanmak yeterli olmaz. Ek olarak bir spigot/paper sunucusuna da kurulum yapmanız gerekmektedir.
</Note>

### Bungeecord için Kurulum

1. Eklentiyi indirin ve bungeecord için olan jar'ı bungeecord sunucunuzun `plugins` klasörüne yükleyin.
2. Bungeecord sunucusunu yeniden başlatın.
3. Sunucu yeniden başladığında `plugins/LeaderOS-Auth/config.yml` dosyasını açın ve `auth-server` alanına giriş/kayıt işlemlerinin yapılacağı spigot/paper sunucusunun ismini yazın. Örneğin: `auth_lobby`
4. Bungeecord sunucusunu tekrar yeniden başlatın ve kurulumu tamamlayın.
5. Giriş/Kayıt işlemlerinin yapılacağı Spigot/Paper sunucusuna da eklentinin Spigot/Paper versiyonunu kurun. Bu kurulum hakkında aşağıdaki bölümlerde detaylı bilgi bulabilirsiniz.

### Video Anlatım

<iframe src="https://www.youtube.com/embed/JKfbo_BzKNA" width="100%" height="400px" frameBorder="0" allowFullScreen={true} />

### Oyuniçi Görünüm

<iframe src="https://www.youtube.com/embed/3BSfl3XI1_I" width="100%" height="400px" frameBorder="0" allowFullScreen={true} />

## Spigot/Paper ile Kullanım

Bu versiyonu giriş yapılacak sunucuya kurmanız gerekmektedir. Eğer Bungeecord kullanıyorsanız hem bu versiyonu hem de Bungeecord versiyonunu kurmanız gerekmektedir.

### Spigot/Paper için Kurulum

1. Eklentiyi indirin ve spigot/paper için olan jar'ı sunucunuza yükleyin.
2. Sunucunuzu yeniden başlatın.
3. Sunucu yeniden başladığında `plugins/LeaderOS-Auth/config.yml` dosyasını açın. Bu dosyadaki `url` ve `api-key` alanlarını doldurun:
   * `url`: Sitenizin URL'sini girmelisiniz. Örneğin: `https://benimsunucu.com`
   * `api-key`: Sitenizin API anahtarını girin. Bu anahtarı Yönetim Paneli > Ayarlar > API sayfasından alabilirsiniz.
   * `send-after-auth`: Eğer giriş/kayıt işlemi sonrası oyuncuyu farklı bir sunucuya yönlendirmek istiyorsanız bu alanı `true` yapın ve `server` alanını doldurun. Örneğin: `lobby`

### Video Anlatım

<iframe src="https://www.youtube.com/embed/JKfbo_BzKNA" width="100%" height="400px" frameBorder="0" allowFullScreen={true} />

## config.yml

### Velocity

```yaml theme={null}
# Main settings
settings:
  # Eklentinin dili
  lang: tr
  # Websitenizin URL'si
  url: https://benimsunucu.com
  # API anahtarını Yönetim Paneli > Ayarlar > API sayfasından alabilirsiniz
  api-key: TR_123456789abcdef
  # Debug modu
  # Available modes:
  # DISABLED: Debug mesajlarını kapatır
  # ENABLED: Tüm debug mesajlarını gösterir
  # ONLY_ERRORS: Sadece hataları gösterir
  debug-mode: ONLY_ERRORS
  # Should session system be enabled?
  # Session aktif edilirse oyuncu daha önce giriş yaptığı IP adresi ile katılırsa şifre istemeden oto giriş yapar. Kapalı kalması önerilir.
  session: false
  # Eğer oyuncu kayıtlı değilse giriş yapamaz. Sadece siteden kayıt istiyorsanız aktif edebilirsiniz.
  kick-non-registered: false
  # Oyuncu yanlış şifre girerse kicklenir.
  kick-on-wrong-password: true
  # Oyuncu oyuna katıldıktan sonra giriş yapmadıysa 60 saniye sonra otomatik olarak kicklenir.
  auth-timeout: 60
  # /login /register gibi komutları kaç saniyede bir kullanabilir?
  command-cooldown: 3
  # Minimum şifre uzunluğu en az 4 yapabilirsiniz.
  min-password-length: 5
  # List of commands that will be used to log in
  login-commands:
  - login
  - log
  - l
  - giris
  - giriş
  # List of commands that will be used to register
  register-commands:
  - register
  - reg
  - kayit
  - kayıt
  # Kullanıma izin verilmeyen şifreler. Basit ve kırılması kolay şifreler bu listeye eklenmelidir.
  unsafe-passwords:
  - '123456'
  - password
  - qwerty
  - '123456789'
  - help
  - sifre
  - '12345'
  - asd123
  - qwe123

```

### Bungeecord

```yaml theme={null}
# Main settings
settings:
  # Debug modu
  # Available modes:
  # DISABLED: Debug mesajlarını kapatır
  # ENABLED: Tüm debug mesajlarını gösterir
  # ONLY_ERRORS: Sadece hataları gösterir
  debug-mode: ONLY_ERRORS
  # Oyuncunun giriş/kayıt işlemlerini yapacağı sunucunun adını giriniz.
  auth-server: auth_lobby
  # Giriş/kayıt işlemi sırasında hangi komutları kullanabilir?
  allowed-commands:
  - login
  - log
  - l
  - giris
  - giriş
  - register
  - reg
  - kaydol
  - kayit
  - kayıt
```

### Spigot/Paper

```yaml theme={null}
# Main settings
settings:
  # Eklentinin dili
  lang: tr
  # Websitenizin URL'si
  url: https://benimsunucu.com
  # API anahtarını Yönetim Paneli > Ayarlar > API sayfasından alabilirsiniz
  api-key: TR_123456789abcdef
  # Debug modu
  # Available modes:
  # DISABLED: Debug mesajlarını kapatır
  # ENABLED: Tüm debug mesajlarını gösterir
  # ONLY_ERRORS: Sadece hataları gösterir
  debug-mode: ONLY_ERRORS
  # Session aktif edilirse oyuncu daha önce giriş yaptığı IP adresi ile katılırsa şifre istemeden oto giriş yapar. Kapalı kalması önerilir.
  session: false
  # Oyuncu oyuna girdiğinde survival moda geçiş yaptırılır
  force-survival-mode: true
  # Eğer oyuncu kayıtlı değilse giriş yapamaz. Sadece siteden kayıt istiyorsanız aktif edebilirsiniz.
  kick-non-registered: false
  # Oyuncu yanlış şifre girerse kicklenir.
  kick-on-wrong-password: true
  # Oyuncu oyuna katıldıktan sonra giriş yapmadıysa 60 saniye sonra otomatik olarak kicklenir.
  auth-timeout: 60
  # /login /register gibi komutları kaç saniyede bir kullanabilir?
  command-cooldown: 3
  # Minimum şifre uzunluğu en az 4 yapabilirsiniz.
  min-password-length: 5
  # Aktif edilirse oyuncu başarılı bir şekilde giriş/kayıt yaptıktan sonra sunucuya yönlendirilir.
  send-after-auth:
    # Aktif etmek için true yapabilirsiniz.
    enabled: true
    # Eğer enabled: true yaptıysanız oyuncu giriş/kayıt işlemi sonrası bu sunucuya yönlendirilir.
    server: lobby
  # Giriş/kayıt işlemi sırasında hangi komutları kullanabilir?
  allowed-commands:
  - login
  - log
  - l
  - giris
  - giriş
  - register
  - reg
  - kaydol
  - kayit
  - kayıt
  # Kullanıma izin verilmeyen şifreler. Basit ve kırılması kolay şifreler bu listeye eklenmelidir.
  unsafe-passwords:
  - '123456'
  - password
  - qwerty
  - '123456789'
  - help
  - sifre
  - '12345'
  - asd123
  - qwe123
```

## Cloudflare kullanan siteler için engel kaldırma

Cloudflare kullanıyorsanız API sisteminizi engelleyebilir ve oyuncu girişlerini kapatabilir. Bu durumda aşağıdaki adımları takip ederek API sisteminize Cloudflare tarafında izin verebilirsiniz:

1. Cloudflare panelinize giriş yapın.
2. **Cloudflare > Security > Security Rules > Create Rule > Custom Roles** sayfasına gidiniz. ve aşağıdaki görselin aynısı bir kayıt oluşturun.
   <img src="https://mintcdn.com/leaderostrkiye/ZMinDA-XdXubuxpN/images/plugins/cloudflare-api-whitelist.png?fit=max&auto=format&n=ZMinDA-XdXubuxpN&q=85&s=365afdea849c89f1734816831d01cedc" alt="Cloudflare Custom Role" width="1960" height="1948" data-path="images/plugins/cloudflare-api-whitelist.png" />
