IRC Nedir? IRCd yazılım, Eggdrop, Bnc hakkında herşey..

yesim434

Hırçın Karadeniz Kızı Biricik Yeşim
AdminE
Bu Ayın Lideri
Irc, İnternet Realy Chat ( İnternet AktarmaLı Sohbet ) kelimelerinin baş harflerinin kısaltılmış halidir.
Dünya üzerindeki değişik kullanıcıların internete bağlı oldukları ve de aynı sunucuyu yada birbirine bağli sunucuların network'ünü seçtikleri durumunda birbirleri ile iletişim kurmalarını sağlayan bir ortamdır.

IRC aracığılı ile dünya üzerinde herhangi birisi ile konuşabilmek, değişik odalarda sohbet etmek, dosya alışverişi yapmak, hoşça zaman geçirmek mümkündür.
IRC'nin yapısını; bir sunucu, sunucuya bağlı kullanıcılar (userlar), kullanıcıların oluşturduğu odalar, ve de kullanıcılar arasındaki özel mesajlaşmalar oluşturu.

IRC'de Kullanılan Terimler

1. Nickname (Kullanıcı Adı)
Türkçe karşılığı Kullancı Adı olan Nickname kelimesi (Nick olarak ta kullanılır), RUMUZ mahiyetindeki herkişiye özel bir isim anlamına gelir.. Nick olarak kendi adınızı kullanabileceğiniz gibi, diğer hoşunuza giden takma isimleri de kullanabilirsiniz. Bocuk, Kedicik gibi. Burada dikkat edilmesi gereken önemli husus, aynı anda, aynı ortamda bir nickten iki tane olamaması gerektiğidir.Böyle bir durumda server sizi uyaracak ve de başka bir nick almanızı söyleyecektir. Gene nick seçiminde önemli bir nokta sizin gerçek hayattaki kimliğinizi yansıtmaması.

2. Server (Sunucu)
IRC sunucusu; insanların aynı ortamda birbirlerini bulabilmeleri için temel çatı.

3. Kanal (Channel)
# ön takısını alan, IRC SERVER üzerindeki bir yada daha fazla user'in oluşturdukları, genelde belli bir konu üzerinde konuştukları, yazılan herşeyin diğer kullanıcılara da paralel bir şekilde iletildiği ortam.

4. Private (MSG, QUERY, WHISPER)
Özel olarak da adlandırılan, iki kullanıcı arasında diğer kişilerin göremeyeceği sadece iki kişinin konuşmasını sağlayan ortam.

5. OP ne demektir?
Operatörün kısaltması olan bu deyim, kanaldaki (channel) yöneticilerine (mkd: yoneticilere) verilen isimdir. Nickname'lerinin başında @ işareti bulunmaktadır. Bu kişiler kanaldaki güvenlikten sorumludur ve de kanal kuruculari tarafından görevlendirilirler.

6. IRCOP'lar kimlerdir?
IRC SERVER'lardaki güvenlik görevlisi. Size küfreden, rahatsızlık verenlere gerekli uygulamayı yapan, bulunduğunuz serverin diğer ayarlarını halleden kişi. Kanal operatorlerinden farklı olarak IRCop'lar kanallardan değil server'in genelinden sorumludurlar. Bu nedenle kanal sorunlarınızı öncelikle o kanalda bulunan operatorlere iletmeniz yararlı olacaktir.

7. Bot
Robot kelimesinin kısaltmasından gelen BOT, bir kullanıcı gibi sunucuya bağlanarak belli durumlarda belli şekilde tepki vermek üzere programlanabilen yazılımlardır. Programlanmasına ve gelişmişliğine bağlı olarak yöneticilerinden gelen komutlarla kanallarda ve/veya özellerde konuşmak gibi normal kullanıcı komutlarını da kullanabilirler.

8. Kick
IRC'de bir kanal operatorunun bir kişiyi kanaldan atmasına kick denir. Kullanıcılar bu şekilde kanaldan uzaklaştırılırken atılma nedeninin yazılacagı bir "KICK REASON" faydalı olacaktır. Kick'lendikten sonra kanala yeniden girebilirsiniz.

9. Ban
Bir kullanıcıyı kanaldan geri gelemeyecek şekilde atmak anlamına gelir. BAN açılana veya BAN'i oluşturan şartlar (atılan kişinin nick/ip/ident'inden biri veya birkaçı) degişmedikce o kişi kanala giremez. Bu komutu da kick gibi sadece kanal operatörleri kullanabilir.

10. Invite
Kanaldaki kullanıcılardan herhangi biri dışardan birisini bu komut ile kanala çağırabilir. Örneğin kanal (+i) durumundayken kanala girilebilmesi icin gereklidir.

Sıkça Sorulan Sorular

Kanalımı nasıl kaydedebilirim ?
Kanalımda başka birisine nasıl kalıcı opluk veririm?
Nickime ya da kanalıma ne oldu ?
Şifremi unuttum, ne yapmalıyım ?
Kullanmak istediğim bir nick var fakat kullanamayacağım söyleniyor?
Operatörü (yada kurucusu) olduğum kanala giremiyorum

Kanalımı nasıl kaydedebilirim ?
Bir kanalı kaydedebilmeniz için öncelikle o kanalda OP statunuzun olması gerekmektedir. Kayıtlı olmayan bir kanala ilk giren kişi iseniz, o kanalın operatorü statüsünde olursunuz ve nickinizin önünde @ takısı olur.

/msg ChanServ register # <şifre>

Bu komuttaki yerine kaydetmek istediğiniz kanalın ismi, <şifre> yerine kanal için kullanacağınız şifre , yerine ise kanalınızın bir tanımlamasını yapbilirsiniz. Tabi bu komutun geçerli olması için de nickinizin kayıtlı bir nick olması gerekmekte.

Bu işlemlerden sonra kanalınız kaydedilip kaydedilmediğini öğrenmek için aşağıdaki komutu yazabilirsiniz.

/msg ChanServ info #
Kanal şifrenizi asla unutmayınız. Bir kenara not alınız. ASLA kimseye söylemeyiniz ve de internet cafe gibi yerlerde şifrenizi yazarken kimsenin size bakmadığından emin olunuz.

Eğer şifrenizi kaydederken bir problem yaşıyorsanız ChanServ sayfalarımıza yada /join #help yazarak #help kanalımızdan detaylı bilgi alabilirsiniz.

Kanalımda başka birisine nasıl kalıcı opluk veririm?
Kanallarda erişim seviyeleri vardır. Bir kanal kurucusu (Founder) diğer nicklere 1-9999 arası erişim (access) verebilir. Kayıt edilmiş bir kanalda standart olarak 5 leveli olan nick kalıcı operatör olur. 10 level ve üstü kanalda AutoKick yetkisine sahip olur. Ayrıca bir nick kendisinin bir alt leveli kadar başka bir nicke kanalda access verebilir. Örneğin, 8 levelli bir kullanıcı 7 level'den başka bir nicke access verebilir.

Level eklenmesi ya da bir kullanıcının levelini değiştirmek için aşağıdaki komutu kullanabilirsiniz.

/msg ChanServ access # add

kişinin access listesine ekleneceği kanalın ismi,
eklenecek kişinin nicki. Tabi bu nickin de kayıtlı olması gerekmektedir.
kanaldaki erişim seviyesi. Kalıcı opluk için en az 5 en fazla 9999
10 ve 10'un üzerinde level eklerken, eklediğiniz kişiye gerçekten güvendiğiniz kişilerden olmasına dikkat ediniz.

Kanaldan kalıcı bir op'un operatorlüğünü silmek için ise öncelikle levelinizin ondan yüksek olması gerekmektedir. Eğer kanal sizin ise zaten en yüksek seviyedesinizdir. Bunun için aşağıdaki komutu kullanabilirsiniz.

/msg ChanServ access # del

Kanaldaki operatorler ve seviyelerini görmek için olan komut ise aşağıdaki gibidir.

/msg ChanServ access # list

kısmını boş bırakırsanız tüm access listesini görebilirsiniz.

Nick'ime ya da kanalıma ne oldu ?
21gün boyunca identify edilmeyen (şifresini tanımlamayan) nicklerin kayıtları silinir.
Kanallar için durum biraz daha değişiktir. Kanallarda 14 gün boyunca Access Listesinde bulunanlar içinden kimse girmemiş ise kanal düşer (Kayıtları silinir)


Dikkat:
Nick bilgilerinizde Bir email adresi bulunması gerekmektedir. Eğer nick bilgilerinize email adresinizi eklememiş iseniz aşağıdaki komutla email..

/msg nickserv set email

Email bilgilerinizi sık sık kontrol ediniz. Email değişimlerinde tekrar bu komutla yeni email'inizi Nick bilgilerinize işleyebilirsiniz.

Kullanmak istediğim bir nick var fakat kullanamayacağım söyleniyor?

Info komutunu kullanarak nickin en son ne zaman kullanıldığını öğreniniz. 15 gün boyunca kullanılmayan nickler düşer. (Servislerin Veritabanı'ndan silinir)

Operatörü (yada kurucusu) olduğum kanala giremiyorum
Öncelikle banlı olup olmadığınızı kontrol ediniz. Girmeye çalıştığınızda size gelen hata mesajını kontrol ediniz.

Mesaj: You are banned from #kanal şeklinde ise aşağıdaki komutu kullanıp tekrar /join # şeklinde girmeyi deneyiniz:

/msg chanserv unban #

Mesaj: You can't join #kanal (It's invite only) şeklinde ise aşağıdaki komutu kullanıp tekrar /join # komutunu kullanınız

/msg chanserv invite #

Mesaj: You can't join #kanal (Requires the correct key) şeklinde ise:
Eğer kanal kurucusu iseniz:

/msg chanserv clear # modes

komutu ile eğer kanalda +k gibi bir anahtar kelime , +i (sadece davet ile girebilme modu) var ise bu modları temizleyebilirsiniz. İdeal kanal modları +tn-iklps'dir. Bunun için aşağıdaki komutu kullanınız

/msg chanserv set # mlock +tn-ilkps

Böylelikle eğer bir kanal operatörü, kanal modlarını +i (invite only) ya da +k (anahtar kelime ile girilebilen) olarak değiştirirse ChanServ otomatik olarak eski haline getirecektir.

Eğer kanalda access'iniz varsa (kalıcı operatör iseniz) ve de founder yok ise bir IRCop'a başvurunuz. Bu tür durumlarda #ircops kanalına bakınız. IRCop'ları aşağıdaki komut yardımı ile bulabilirsiniz

/who 0 o

Diğer IRC Komutları ;

PASSWORD: /ns set passwod yeni.sifre
. Kanal sifresini degistirmeye yarar.

URL: /ns set url
. Nick infosuna bir web adresi eklemeye yarar.

NOMEMO: /ns set nomemo on/off.
. Memo almamanizi saglar.

NOOP: /ns set noop on/off.
. Biri sizi kanal uop/vop/aop/sop listesine eklemek istediginde onayinizi almasini gerektirir.

EMAIL: /ns set email newemail.
. Nick bilgisindeki eposta adresini degistirmeye yarar.

SHOWEMAIL: /ns set showemail on/off.
. Nickname bilgisinde email adresinin herkes tarafindan görülmesini saglar

PROTECT: /ns set protect on/off.
. Bu komut nicki korumaya yarar. Eger 60 sn içinde nick sifresi girilmezse nicki kullanmaya çalisan kisinin nicki guestXXXXX 'e çevrilir.

[ ChanServ ]
INFO: /ns info #kanal
. Kanalin kurucusunun (founder) kim oldugunu, kuruldugu tarihi... gösterir.
. Not: Yeni servislerde sadece NickServ tarafindan kaydedilmis (register) nickler kanal uop/vop/aop/sop listelerine eklenebilirler.

REGISTER: /cs register #kanal sifre tanitim
. Bu komut bir kanali kayit etmeye yarar.
. Tanitim kismina kanalin neyle alakali oldugu yazilir. Genel sohbet,yetiskin,hobiler gibi...

IDENTIFY: /cs identify #kanal sifre
. Bu komut kanalin sifresini girerek kanalin size ait oldugunu göstermeye yarar.
 

yesim434

Hırçın Karadeniz Kızı Biricik Yeşim
AdminE
Bu Ayın Lideri
Spamfilter Kullanımı

--------------------------------------------------------------------------------

/helpop ?spamfilter



Kod:
***** Spamfilter *****
-
This command adds/removes global spam filters.
Spamfilters can be used to get rid of spam, advertising, bots, etc.
-
Use: /spamfilter [add|del|remove|+|-] [type] [action] [tkltime] [reason] [regex]
[type] specifies the target type, you can specify multiple targets:
'c' channel msg, 'p' private msg, 'n' private notice,
'N' channel notice, 'P' part msg, 'q' quit msg, 'd' dcc,
'a' away, 't' topic, 'u' user (nick!user@host:realname ban)
[action] specifies the action to be taken (only 1 action can be specified):
'kill', 'tempshun' (only shun current session), 'shun',
'kline', 'gline', 'zline', 'gzline', 'block' (blocks the msg),
'dccblock' (unable to send any dccs), 'viruschan' (part all channels
and join the virus help chan).
[regex] this is the actual regex where we should block on
[tkltime] the duration of the *LINEs placed by action (use '-' to use the default
set::spamfilter::ban-time, this value is ignored for block/tempshun');
[reason] the reason for the *LINE or blockmsg, CANNOT CONTAIN SPACES,
'_' will be translated to spaces. Again, if you use '-' for this
the default (set::spamfilter::ban-reason) is used.
-
Type;

c: Kanala gönderilen msjlar.
p: Özel msjlar.
n: Kişiye gönderilen notice'ler.
N: Kanala gönderilen notice'ler.
P: Part msjı.
q: Quit msjı.
d: ddc.
a: Away msjı.
t: Topic'i.
u: Kullanıcıyı

ifade eder.

Action;
Kill
Tempshun
Shun
Kline
Gline
Zline
Gzline
Block
Dccblock
Seçenekleri mevcuttur, dikkat etmeniz gereken husus; bunlardan sadece bir tanesini tercih edebilmenizdir. Yani hem kill hemde gzline yazamazsınız.

tkltime;
Bu zamani ifade eder; 2d, 3d(2day yani iki gün d:Day ) gibi kafaniza göre düzenlemesini yaparsiniz.

regex ;

Yazi kaliplarini ifade etmek icin kullanilan ozel bir bicim ozel bir bicim olmakla beraber tam karsiligi duzenli ifadelerdir.

. : bosluklar icin

+kelime+ : Direk bu kelimeyi yasaklar.

| : Veya anlaminda kullanilir diyebiliriz. Örnek olarak;

/spamfilter add a gzline 2d Spam/Away [net|com|org]

Yani burada diyor ki; away olan kullanıcının away msjında www. 'den sonra com, net, org gibi bir uzantisi varsa bu kisiye iki günlük gzline at.

Spamfilter Kullanımı :

/spamfilter [add|del|remove|+|-] [type] [action] [tkltime] [reason] [regex]
 

yesim434

Hırçın Karadeniz Kızı Biricik Yeşim
AdminE
Bu Ayın Lideri
Describe modunu kapatmak

--------------------------------------------------------------------------------

cd Unreal3.2
cd src
cd modules
pico m_message.c




Kod:
if (parc < 3 || *parv[2] == '\0')
{
sendto_one(sptr, err_str(ERR_NOTEXTTOSEND), me.name, parv[0]);
return -1;
}

yukarıdaki satırı hemen altına,



Kod:
if (strstr(parv[2],"\1ACTION")) {
sendto_one(sptr, ":%s %d %s :ame/me/decribe komutlari kapatilmistir.", me.name, RPL_INFO, sptr->name);
return 0;
}


ekliyoruz ve make ediyoruz. ircd'imizi restart ediyoruz
 

yesim434

Hırçın Karadeniz Kızı Biricik Yeşim
AdminE
Bu Ayın Lideri
Oper Flagları

--------------------------------------------------------------------------------

Kod:

----------------------------------------------
oper NiCk {
from {
userhost *@*;
};
password "pass";
flags OoawkKbBnCGAreDRhgcLZtGNzvWHe^";
class clients;
swhois "is a Network Administrator";
};

NetAdmin : OoawkKbBnCGAreDRhgcLZtGNzvWHe^
TechAdmin : OowckKbBnCGWH^
MasterAdmin : OowckKbBnCGWHaA^
ServicesAdmin : OowckKbBnGWHA^
GlobalOperator: OHW

Confumuza ekledikden sonra /rehash cekin. İşlem tamamlanmıştır.
Litmus Trojan Koruması

--------------------------------------------------------------------------------

ident ve nick aynı olanları otomatik atmak istiyorsanız....

FTP ile account'a bağlanıyoruz. Unreal3.2 klasöründen, src klasorüne giriyoruz. s_user.c dosyasını bilgisayarımıza alıyoruz.

Ortalara doğru,


Kod:
ConfigItem_tld *tlds;
cptr->last = TStime();
parv[0] = sptr->name;
parv[1] = parv[2] = NULL;
nick = sptr->name; /* <- The data is always the same, but the pointer is sometimes not,
* I need this for one of my modules, so do not remove! Wink -- Syzop */
Şu kodları göreceksiniz. (Kolayca bulmak için notepad'in arama bölümüden I need this for one of my modules, so do not remove! olarak aratabilirsiniz...)

Bu kodun hemen altına

Kod:
/* Sky-Dancer */
if (strcmp(nick,username)==0) {
return place_host_ban(sptr, BAN_ACT_GZLINE, "Guvenlik: Ident ve nickiniz ayni olamaz. 100sn sonra ban açılacaktır.", 100);
}
kodunu ekliyoruz. En sondaki "100" sayısı glineın süresidir. İstediğiniz gibi ayarlarsınız. Tavsiyem 100 olarak kalsın, çünkü arada bir ident&nicki aynı olan kişi geliyor. 100 saniye ban yeterlidir.

Örnek oluşturulmuş bir kod aşağıdır:

Kod:
ConfigItem_tld *tlds;
cptr->last = TStime();
parv[0] = sptr->name;
parv[1] = parv[2] = NULL;
nick = sptr->name; /* <- The data is always the same, but the pointer is sometimes not,
* I need this for one of my modules, so do not remove! Wink -- Syzop */
/* Sky-Dancer */
if (strcmp(nick,username)==0) {
return place_host_ban(sptr, BAN_ACT_GZLINE, "Guvenlik: Ident ve nickiniz ayni olamaz. 100sn sonra ban açılacaktır.", 100);
}
if (MyConnect(sptr))
{
if ((i = check_client(sptr, username))) {
/* This had return i; before -McSkaf */
 

Top