UnrealIRCd 6, üçüncü parti modülleri komut satırından kurup güncellemenizi sağlayan bir modül yöneticisi (module manager) ile gelir. Bu rehber, modül yöneticisinin nasıl çalıştığını, modüllerin güvenli biçimde nasıl kurulup güncelleneceğini ve sürüm yükseltmelerinde modül kaynaklı arızaların nasıl önleneceğini anlatır.

Modül yöneticisi nedir?

UnrealIRCd 6'da modüller iki gruba ayrılır. Çekirdekle birlikte gelen resmî modüller modules/ altında bulunur ve modules.default.conf ile otomatik yüklenir. Üçüncü parti modüller ise unrealircd-contrib deposundan gelir ve third/ ön ekiyle anılır.

Modül yöneticisi yalnızca *NIX sistemlerde çalışır; Windows sürümünde bulunmaz. Kaynaktan derlenmiş bir kurulumda modül yöneticisi modülü indirir, yerel kaynak ağacınızda derler ve kurar. Bu nedenle sunucuda derleme araçlarının (gcc, make) ve kaynak dizininin korunmuş olması gerekir.

Mevcut modülleri listeleme ve arama

CODE TERMINAL
cd /home/ircd/unrealircd
./unrealircd module list
./unrealircd module search antispam
./unrealircd module info third/modul-adi


Çevrimiçi katalog için modules.unrealircd.org adresine de bakabilirsiniz. Kurulumdan önce modülün hangi UnrealIRCd sürümleriyle uyumlu olduğunu ve en son ne zaman güncellendiğini mutlaka kontrol edin.

Modül kurma

CODE TERMINAL
./unrealircd module install third/modul-adi


Komut modülün kaynağını indirir, bütünlük doğrulamasını yapar ve derler. Kurulum bittikten sonra modülü yapılandırmanıza eklemeniz gerekir:

CODE TERMINAL
# unrealircd.conf icinde
loadmodule "third/modul-adi";


Ardından yapılandırmayı sınayıp yeniden yükleyin:

CODE TERMINAL
./unrealircd configtest
./unrealircd rehash


Bazı modüller yalnızca tam yeniden başlatmayla devreye girer; rehash sonrası modül listesinde görünmüyorsa ./unrealircd restart gerekir.

Güvenlik: üçüncü parti modül bir güven kararıdır

Üçüncü parti modüller UnrealIRCd ekibi tarafından yazılmaz ve test edilmez. Modül, IRCd sürecinin içinde, onun ayrıcalıklarıyla çalışan derlenmiş C kodudur. Yani kötü niyetli veya hatalı bir modül sunucunuzun tamamını ele geçirebilir ya da çökertebilir.


  • Kurmadan önce modülün kaynak kodunu okuyun; özellikle dosya işlemleri, dış komut çağrıları ve ağ bağlantılarına bakın.
  • Yalnızca resmî unrealircd-contrib deposundaki modülleri tercih edin; rastgele forumlardan indirilen .c dosyalarını kurmayın.
  • Modül yöneticisinin indirme doğrulamasını atlamak için HTTPS dışı kaynak veya elle kopyalama kullanmayın.
  • Üretim sunucusuna kurmadan önce ayrı bir test sunucusunda deneyin.
  • Modülün eklediği yeni komutları ve yapılandırma bloklarını, mevcut oper yetki modelinizle birlikte gözden geçirin.
  • Kaynak dizininin ve modules/third/ klasörünün yazma izinlerini yalnızca ircd kullanıcısına verin.



Güncelleme ve sürüm yükseltmeleri

Kurulu modülleri kontrol etmek ve güncellemek için:

CODE TERMINAL
./unrealircd module list
./unrealircd module upgrade
./unrealircd module upgrade third/modul-adi


En sık yaşanan arıza, UnrealIRCd'yi yeni bir sürüme yükselttikten sonra üçüncü parti modüllerin yüklenememesidir. Modüller belirli bir API sürümüne karşı derlendiği için, çekirdek sürüm değiştiğinde yeniden derlenmeleri gerekir.


  • Yükseltmeden önce hangi third/ modüllerini kullandığınızı yazılı olarak kaydedin.
  • Yükseltmeden sonra ./unrealircd module upgrade komutunu çalıştırın.
  • Bir modül yeni sürümü desteklemiyorsa, geçici olarak loadmodule satırını yorum satırına alın ve sunucuyu ayakta tutun.
  • Yükseltme penceresinde yapılandırmanın ve kaynak dizininin yedeğini alın.



Modül kaldırma ve sorun giderme

CODE TERMINAL
./unrealircd module uninstall third/modul-adi


Kaldırmadan önce unrealircd.conf içindeki loadmodule satırını silmeyi unutmayın; aksi hâlde sunucu başlatılamaz. Sunucu açılmıyorsa hata mesajını ./unrealircd configtest ile görebilir, modül kaynaklı çökmeleri logs/ altındaki kayıtlardan izleyebilirsiniz.

Şüpheli bir modülü hızlıca devre dışı bırakmanın en güvenli yolu, loadmodule satırını yorumlayıp yeniden başlatmaktır; dosyaları elle silmek kurulum durumunu bozar.

Sonuç

Modül yöneticisi, UnrealIRCd 6'da üçüncü parti işlevsellik eklemenin desteklenen ve en güvenli yoludur: indirmeyi, doğrulamayı, derlemeyi ve güncellemeyi tek bir arayüzde toplar. Ancak aracın kolaylığı, kurduğunuz kodun sorumluluğunu ortadan kaldırmaz. Modül seçimini bir tedarik zinciri kararı gibi ele alın, kurulu modül listenizi belgeleyin ve her çekirdek yükseltmesinde modülleri yeniden derlemeyi standart adımınız hâline getirin.
TR Siber Ekibi Yazar · TRSiber
Kaynak bağlantısı ← Ana sayfaya dön