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-adiKomut 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 rehashBazı 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-adiEn 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-adiKaldı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