İletişim
UnrealIRCd

UnrealIRCd JSON-RPC ve Web Paneli: Ağınızı Tarayıcıdan Yönetin

· 5 dk okuma

İçindekiler
  1. JSON-RPC Nedir?
  2. 1. RPC Modüllerini Etkinleştirmek
  3. 2. RPC İçin listen Bloğu
  4. 3. RPC Kullanıcısı Tanımlamak
  5. 4. Web Panelini Kurmak
  6. Web Panelinde Neler Yapılabilir?
  7. Güvenlik: Paneli Korumak
  8. Kendi Otomasyonlarınız
  9. Sorun Giderme
  10. Panel Kullanımını Ekip İçinde Düzenlemek
  11. Paneli Yedeklemek
  12. Sonuç

UnrealIRCd'yi yönetmek uzun yıllar boyunca iki araçla yapıldı: yapılandırma dosyası ve IRC istemcisindeki oper komutları. UnrealIRCd 6 ile birlikte üçüncü bir yol açıldı: JSON-RPC arayüzü ve bunun üzerine kurulu resmî bir UnrealIRCd webpanel. Bu araçlar sayesinde ağınızdaki kullanıcıları, kanalları, sunucuları ve yasakları bir web tarayıcısından izleyebilir ve yönetebilirsiniz.

JSON-RPC Nedir?

JSON-RPC, programların birbirleriyle JSON biçiminde mesajlar göndererek iletişim kurmasını sağlayan basit bir protokoldür. UnrealIRCd bu protokolü destekleyen bir arayüz sunar; böylece web paneli, izleme sistemleri veya kendi yazdığınız betikler sunucuya "Şu anda bağlı kullanıcıları listele", "Bu IP'ye G-Line ekle" veya "Sunucu istatistiklerini gönder" gibi istekler gönderebilir.

Bu arayüz, IRC'ye bağlanmadan sunucuyla güvenli bir şekilde konuşmanın modern yoludur. Web paneli bu arayüzü kullanan en bilinen uygulamadır; ama aynı arayüzü kendi otomasyonlarınız için de kullanabilirsiniz.

1. RPC Modüllerini Etkinleştirmek

Örnek yapılandırmada RPC için hazırlanmış bir include dosyası bulunur. Ana yapılandırmanıza ekleyin:

include "rpc.modules.default.conf";

2. RPC İçin listen Bloğu

RPC isteklerini dinleyecek bir port tanımlayın. Güvenlik açısından en iyi yöntem bu portu yalnızca yerel adreste dinletmektir:

listen {
	ip 127.0.0.1;
	port 8600;
	options { rpc; }
}

Web paneli aynı makinede çalışacaksa bu ayar yeterlidir ve RPC portu internete hiç açılmaz. Panel farklı bir makinedeyse portu yalnızca o makinenin IP'sine açın ve güvenlik duvarıyla diğer bütün erişimleri engelleyin.

3. RPC Kullanıcısı Tanımlamak

RPC arayüzüne kimlerin erişebileceğini rpc-user blokları belirler:

rpc-user webpanel {
	match { ip 127.0.0.1; }
	password "UzunVeRastgeleBirParola";
}

Değişikliklerden sonra yapılandırmayı test edip rehash yapın. Ayrıntılar için unrealircd.conf temel yapısı yazımıza bakabilirsiniz.

4. Web Panelini Kurmak

Resmî web paneli ayrı bir projedir ve PHP ile yazılmıştır. Kurulum için genel olarak şunlar gerekir:

  1. Bir web sunucusu (Apache veya Nginx),
  2. Uygun bir PHP sürümü ve gerekli eklentiler,
  3. Panelin dosyalarının web sunucusunun erişebileceği bir dizine indirilmesi,
  4. Tarayıcıdan panelin kurulum sihirbazının çalıştırılması.

Kurulum sihirbazı size RPC adresini, portunu, kullanıcı adını ve parolasını sorar. Ardından panelin kendi yönetici hesabını oluşturursunuz. Bu hesap, panele giriş için kullanılır ve RPC kullanıcısından ayrıdır.

Panelin güncel kurulum adımları ve gereksinimleri zaman içinde değişebileceği için kurulum sırasında projenin kendi belgelerini takip etmenizi öneririz.

Web Panelinde Neler Yapılabilir?

BölümÖrnek işlemler
Genel bakışKullanıcı ve kanal sayıları, sunucu durumu
KullanıcılarBağlı kullanıcıları listeleme, ayrıntılarını görme, ağdan atma
KanallarKanalları, modlarını ve üyelerini görme
SunucularAğdaki sunucuları ve bağlantılarını görme
YasaklarG-Line, Z-Line ve diğer TKL kayıtlarını ekleme ve kaldırma
SpamfilterSpamfilter kurallarını görüntüleme ve yönetme
LoglarCanlı sunucu olaylarını izleme

Özellikle yasak yönetimi panelde çok daha rahattır: Bütün G-Line kayıtlarını bir tabloda görmek, süresi dolmak üzere olanları fark etmek ve gereksizleri temizlemek IRC komut satırına göre çok daha kolaydır. Yasak türleri için G-Line, K-Line ve Z-Line yazımıza bakın.

Güvenlik: Paneli Korumak

Web paneli ağınızı yönetme yetkisine sahip olduğu için onu korumak, oper hesaplarını korumak kadar önemlidir:

Kendi Otomasyonlarınız

JSON-RPC arayüzü yalnızca web paneli için değildir. Kendi betiklerinizle de kullanabilirsiniz:

Bu tür otomasyonlar için her betiğe ayrı bir rpc-user tanımlamak ve yalnızca ihtiyaç duyduğu adresle sınırlamak, olası bir sızıntının etkisini en aza indirir.

Sorun Giderme

SorunOlası neden
Panel RPC'ye bağlanamıyorlisten bloğunda rpc seçeneği eksik veya yanlış port
"Authentication failed"rpc-user parolası veya match ayarı yanlış
Panel boş görünüyorrpc.modules.default.conf dahil edilmemiş
Bazı işlemler yapılamıyorPanel kullanıcısının yetkisi yetersiz

Sorunları teşhis etmek için hem UnrealIRCd log'larına hem de web sunucusunun hata log'larına bakın. Log ayarları için log ayarları yazımıza göz atabilirsiniz.

Panel Kullanımını Ekip İçinde Düzenlemek

Web paneli, IRC komutlarına alışkın olmayan ekip üyeleri için yönetimi kolaylaştırır; ama kolaylık beraberinde dikkatsizliği de getirebilir. Panelde bir tıklamayla geniş bir IP aralığını yasaklamak, komut satırında bunu yazmaktan çok daha hızlıdır. Bu yüzden panel kullanıcılarına yetki verirken onlara ağın yasak politikasını da hatırlatın. Panelde yapılan işlemler log'lara kaydedildiği için kimin hangi işlemi yaptığını takip etmek mümkündür; bu kayıtları düzenli olarak gözden geçirmek, hem hataları erken fark etmenizi hem de ekip içinde şeffaflık sağlamanızı kolaylaştırır.

Paneli Yedeklemek

Web panelinin kendi ayar dosyası ve kullanıcı veritabanı vardır. UnrealIRCd yedeklerinizin yanında bu dosyaları da yedeklemeyi unutmayın; aksi hâlde sunucu taşıma veya yeniden kurulum sırasında panel kullanıcılarını ve yetkilerini baştan tanımlamak zorunda kalırsınız. Yedekleri, panelin parolalarını ve RPC bilgilerini içerdiği için en az yapılandırma dosyaları kadar güvenli bir yerde saklayın.

Sonuç

JSON-RPC ve web paneli, UnrealIRCd yönetimini modern bir deneyime dönüştürür. Ağınızı tarayıcıdan izleyebilir, yasakları tablolar üzerinden yönetebilir ve kendi otomasyonlarınızı yazabilirsiniz. Tek şart, bu güçlü erişim noktasını en az oper hesaplarınız kadar iyi korumaktır. Sunucunuzda olup biteni kaydetmek için sıradaki rehberimiz log ayarları.

IRC sorunun mu var? Kanalda birlikte çözelim.

💬 Kanala Bağlan

Sıkça Sorulan Sorular

Web paneli zorunlu mu?

Hayır. Web paneli isteğe bağlı bir yönetim aracıdır; ağ onsuz da tamamen çalışır.

JSON-RPC portunu internete açmalı mıyım?

Mümkünse hayır. RPC portunu yalnızca yerel adreste veya güvenli bir ağda dinletip web panelini aynı makinede çalıştırmak en güvenli yoldur.

Web paneli hangi teknolojiyle çalışır?

Resmî web paneli PHP ile yazılmıştır ve bir web sunucusu üzerinde çalışır; UnrealIRCd ile JSON-RPC aracılığıyla konuşur.