url image

IRC

Статья давно не обновлялась, поэтому информация могла устареть.

Содержание

Введение

Пояснение

Данный раздел призван предоставить всевозможную информацию об общей концепции IRC, о существующем ПО, позволяющем организовать IRC-чат, о его настройке, и, возможно, немного обсуждения о будущем IRC (последнее маловероятно, обсуждение уже ведется на самой Википедии)

Что такое IRC

IRC (англ. Internet Relay Chat) — протокол для обмена сообщениями в режиме реального времени.

Основная информация

[IRCD: IRC-серверы]

Что такое IRCd

IRCd (расшифровывается как IRC daemon) - это, собственно, сам IRC-сервер, позволяющий использовать возможности IRC-чата. Со времени своего написания, оригинальный код первого IRCd претерпел множество изменений, развились десятки побочных IRC-проектов (ircd-hybrid, Unreal, Nefarious, UltimateIRCd и т. д.). Данная глава призвана упомянуть и описать наиболее популярные из них, а так же, общие советы и рекомендации по установке IRCd.

Популярные IRCd

UnrealIRCd (ByNets)

InspIRCd

IRCd-Hybrid (-RU)

Bahamut(ircd-RU)

Примечание: в скобочках указана русская подержка IRCd, например, сеть ByNets оказывает русскую поддержку UnrealIRCd, WeNet - поддержку ircd-RU, базирующемся на Bahamut и т. д.

Сравнение IRCd

Оригинальный материал на EN.Wikipedia, выполненный в виде таблицы, позволит вам наглядно сравнить различные IRCd и их возможности.

Установка UnrealIRCd+Anope на Windows

Ниже будет описана установка UnrealIRCd 4.0.5 и сервисов Anope 2.0.4 Это самые последние версии описываемых программных продуктов на момент написания статьи (1 августа 2016) Итак, сервер. Сам сервер: Скачать Запускаем скачанный файл, устанавливаем сервер в любую директорию. Будет лучше если путь до сервера не будет содержать пробелов. С установкой вроде бы всё, теперь конфигурирование.

Заходим в корневую папку сервера (там где лежит UnrealIRCd.exe), переходим в папку conf/examples и копируем оттуда файл example в корневую папку сервера.

Скопировали. Переименовываем его в unrealircd ! Это и будет наш конфигурационный файл сервера (далее конфиг).

Открываем любым текстовым редактором, чтобы директивы шли в столбик, а не в строчку! (так удобнее). У меня, например, в роли текстового редактора выступал обычный блокнот.

Доходим до директивы me

В поле name вписываем my.irc.loc В поле инфо - всё, что угодно. В поле sid - цифру 001.

Идём дальше

Находим директиву oper Вместо bobsmith напишите свой ник (ник будущего ИРК оператора) password - пароль будущего ИРК оператора.

Теперь к секции listen. Убираем (стираем) это: listen { ip *; port 6667; }; Меняем звёздочку и 6667 на IP адрес и порт вашего ИРК

Находим директиву set Присваиваем значения опциям:

set {
	network-name 		"my.IRC";
	default-server 		"my.irc.loc";
	services-server 	"services.irc.loc";
	stats-server 		"stats.irc.loc";
	help-channel 		"#main";
	hiddenhost-prefix	"loc";
};

Теперь вернёмся ближе к началу конфига и найдём секцию опций link. Стираем то что там и вставляем:

link            services.irc.loc
{
	username	*;
	hostname 	127.0.0.1;
	bind-ip 	*;
	port 		1234;
	hub             *;
	password-connect "passlink";
	password-receive "passlink";
	class           servers;
		options {
			autoconnect;
		};
};

Ну и дело за малым

Найдём ближе к концу слова /* Server specific configuration */ и под ними директива set. В поле "kline-address" впишем произвольный email адрес.


Всё! Сервер готов к работе! Можете запустить его (UnrealIRCd.exe) и коннектиться (/server localhost:6667), но друзей звать рановато! Впереди процедура установки сервисов! Если UnrealIRCd не запустился, можно посмотреть логи в файле service


Сервисы: Скачать В корне Anope создаём файл services.conf, его содержимое можно взять тут. Найдите строку, которая начинается с "RemoteServer". Если UnrealIRCd работает на этом же сервере, то оставляем 127.0.0.1 нетронутыми. Указываем пароль который вы прописали в UnrealIRCd в директиве "password-receive".

ServerName - имя IRC сети

В строках UserKey1, UserKey2 и UserKey3 для каждого прописываем семизначные числа. Эти числа не должны начинаться с нуля. Изменение "TestIRC" в строке NSEnforcerUser к имени вашей сети. В строке ServicesRoot добавьте свой ник. Это позволит вам добавлять и удалять других администраторов сервисов.

Всё! Сохраняем изменения! И запускаем bin/anope.exe! Ваша IRC сеть готова! Зовите друзей!

[Services: IRC-сервисы]

Что такое IRC-сервисы

Сам по себе IRCd обладает минимальным рядом возможностей, описанным в RFC протокола, и дополнительным рядом возможностей, расширенных только в рамках отдельного проекта. Случаи, когда IRC-проект включает в себя не только IRCd, но и сервисы - очень редки (на вскидку: PTlink). Поэтому, такие возможности, как регистрация ников и каналов, осуществляются с помощью стороннего ПО, называемого IRC-сервисы

Популярные IRC-сервисы

Anope

Atheme

IRC-Services

Сравнение IRC-сервисов

Оригинальный материал на EN.Wikipedia, выполненный в виде таблицы, позволит вам наглядно сравнить различные IRC-сервисы и их возможности.

[Bots: IRC-боты]

Что такое IRC-боты

Так же как машины теперь всюду заменяют человека, также и бот может заменить живого irc- пользователя. IRC-bot - это программа, изображающая из себя одновременно и irc- client и человека, в нем работающего. Бота можно научить вести себя вполне социально, так, что сложно будет сразу догадаться, что вы общаетесь не с живым собеседником, а с роботом. Бот может выполнять любые функции, например административные (управление каналом, учет и контроль пользователей, ведение статистики, защита от вандалов), развлекательные (пение частушек, пляски с бубном, поддержка интересного диалога), полезные (поиск по вебу, лексический анализ грамотности ;), калькулятор, прогноз погоды и т.д, и т.п.). Вот в общих чертах то, что делает безвредный бот. Разумеется хорошо зная (а порой и не очень хорошо) какой либо язык программирования или скриптов, можно создать вредного бота, мешающего окружающим или даже создающего помехи в работе сети. Если вы - доктор ЗЛО, и вам очень хочется создать агрессивного бота, то прежде установите себе отдельный IRC-server, чтобы экспериментировать в-одиночку. Уверяю вас, что никто в сети не обрадуется вашим программистским победам, и Вам быстро вручат PA-Kill (Перманентный запрет доступа в IRC сеть).

Популярные IRC-боты

Eggdrop (Документация к Eggdrop на русском языке)

WinBot

Energymech

BotNix

Infobot

Дополнительная информация

Данный раздел призван предоставить дополнительную информацию по тем вопросам, которые не рассматривались в основном разделе, например, информацию о существующих IRC-клиентах и т. д.

IRC-клиенты

IRC-клиент выпускается в виде расширения для Mozilla Firefox , который работает в трех популярных операционных системах. Кроме того, существуют сборки Chatzilla как независимого приложения для Windows. Chatzilla также входит в состав пакетов Mozilla Suite и SeaMonkey . IRC-клиент обладает весьма скромными сервисными возможностями и требует некоторых знаний синтаксиса команд IRC, однако в знак благодарности отвечает очень красивым дизайном окна сообщений, который можно менять с помощью тем оформления, основанных на CSS. Все посещенные вами сети и каналы запоминаются в настройках программы, и вы можете в дальнейшем включать автоматическую загрузку тех или иных пунктов. Пароль на NickServ приходится вводить вручную и оформлять в виде отдельной строки в списке команд, выполняющихся при подключении к сети. Если вы потеряли связь c каналом, то Chatzilla автоматически попытается восстановить связь. По умолчанию это делается 5 раз. Возможности программы можно расширить с помощью дополнительных модулей, которые имеют структуру, отличную от других программ семейства Mozilla. Самые распостраненные IRC клиенты это: KVIrc 2.1.4, Mirc 6.17, Miranda 0.4.0.3, XChat 2.6.3, Klient 2.1.4

BNC-команды на русском

  • BWHO - Показывает список пользователей на бнц
  • PASSWORD - Меняет ваш пароль (Админ может изменять чужие пароли)
  • BVHOST - Задаёт вхост, через который вы будете присоеденяться
  • PROXY - Задаёт прокси, через который вы будете присоеденяться
  • SETUSERNAME - Меняет ваше 'Реальное имя'
  • SETAWAY - Ваш текст away-сообщения при уходе
  • SETLEAVEMSG - Ваш текст сообщения выхода
  • LEAVEQUIT - Если включено (1), то выходит со всех каналов при выходе
  • SETAWAYNICK - Меняет ваш ник в эвэее
  • JUMP - Прыгает на следующий сервер в списке
  • BQUIT - Завершает ваше текущее соеденение с сервером
  • BCONNECT - Начинает ваше соеденение с сервером
  • AIDLE - Включает/выключает анти-idle
  • AUTOREJOIN - Включает/выключает автовзаход
  • ADDSERVER - Добавляет сервер в список
  • DELSERVER - Удаляет сервер из списка
  • LISTSERVERS - Список серверов
  • ADDNETWORK - Добавить сеть с вашего клиента
  • DELNETWORK - Удалить сеть с вашего клиента
  • SWITCHNET - Переключиться на другую сеть
  • ADDOP - Добавить опа
  • DELOP - Удалить опа
  • LISTOPS - Список опов
  • ADDAUTOOP - Добавить аопа
  • DELAUTOOP - Удалить аопа
  • LISTAUTOOPS - Список аопов
  • ADDBAN - Добавить бан (глобальный или канальный)
  • DELBAN - Удаляет бан
  • LISTBANS - Список банов
  • ADDASK - Добавляет хост/бота для опанья вас
  • DELASK - Удаляет хост/бота для опанья вас
  • LISTASK - Список хостов/бота для опанья вас
  • ADDIGNORE - Добавляет хост в игнор
  • DELIGNORE - Удаляет хост из игнора
  • LISTIGNORES - Список игноров
  • ADDDCC - Добавить DCC-соеденение с ботом
  • LISTDCC - Список всех DCC
  • DELDCC - Удалить DCC по номеру
  • DCCCHAT - DCC-соеденение с пользователем
  • DCCANSWER - Ответ на DCC-запрос
  • DCCENABLE - Вкл/выкл DCC ч/з бнц
  • DCCSEND - Послать файл пользователю
  • DCCGET - Получить файл от пользователя
  • DCCSENDME - Послать файл пользователю бнц
  • AUTOGETDCC - Всегда принимать предложенные файлы
  • DCCCANCEL - Отменяет DCC-чат/прием
  • PLAYPRIVATELOG - Выводит ваши сообщения
  • ERASEPRIVATELOG - Удаляет ваши сообщения
  • ADDLOG - Добавить источник лога/фильтр
  • DELLOG - Удалить источник лога по номеру
  • LISTLOGS - Список всех источников логов/фильтров
  • PLAYTRAFFICLOG - Показывает траффик-лог
  • ERASETRAFFICLOG - Удаляет траффик-лог
  • ENCRYPT - Расшифровывает разговор указанному каналу/пользователю
  • DELENCRYPT - Удаляет расшифровку по номеру
  • LISTENCRYPT - Список всех расшифровок
  • TRANSLATE - Добавляет переводчик в/из канала/пользователя
  • DELTRANSLATE - Удаляет переводчик по номеру
  • LISTTRANSLATE - Показывает список переводчиков
  • BREHASH - Перезагружает прокси и сбрасывает все соединения
  • MADMIN - Дает пользователю флаг админа
  • UNADMIN - Убирает с пользователя флаг админа
  • BKILL - Убивает пользователя с прокси
  • SOCKSTAT - Показывает/записывает текущие соединения
  • ADDUSER - Добавить нового пользователя
  • DELUSER - Удалить пользователя
  • NAMEBOUNCER - Называет ваш баунсер (нужно для линковки)
  • LINKTO - Линкует хост/порт
  • LINKFROM - Линкуется от вашего баунсера
  • RELAYLINK - Включает/выключает relayable линк
  • DELLINK - Удаляет линк с баунсера
  • LISTLINKS - Показывает все линки баунсера
  • RELINK - Сброс линка по номеру
  • PLAYMAINLOG - Показывает лог соединения
  • ERASEMAINLOG - Удаляет лог соединения
  • ADDALLOW - Добавляет хост в список возможных соединений
  • DELALLOW - Удаляет хост из списка возможных
  • LISTALLOW - Показывает список возможных соединений
  • SRELOAD - Перезагружает скрипты
  • LISTTASKS - Показывает текущие запущенные задачи
  • SETLANG - Ставит язык (глобальный)
  • BHELP - Помощь

Флаги для ника

  • B - Пометка пользователя как бота
  • c - Просмотр подключений\отключений пользователей от локального сервера (только для IRC операторов)
  • d - Запрет на получение всех сообщений со всех каналов
  • D – Устанавливает запрет на получение всех приватных сообщений и нотисов
  • e - Возможность просмотра служебных сообщений сервера (только для IRC операторов)
  • f - Возможность читать уведомления о флуде (только для IRC операторов)
  • F - Просмотр подключений\отключений пользователей от серверов во всей сети (только для IRC операторов)
  • g - Возможность читать\отправлять LocOps и GlobOps сообщения
  • G - Цензура (нецензурные слова в приватных сообщениях будут заменяться на )
  • H - Скрытие статуса IRC оператора (только для IRC операторов)
  • i - Невидимость (пользователь не виден при использовании команды /who)
  • I - Невидимый вход\выход на каналы (только для IRC операторов)
  • j - Получение различной дополнительной информации в т.ч. о смене ников (только для IRC операторов)
  • k - Возможность видеть выполняемые отключения (команда /kill)
  • L - Позволяет вам использовать ModeWalk без использования "/INVITE" (только для IRC операторов)
  • m - Предохраняет от получения сообщений типа "/me" (действий)
  • М - Предохраняет от получения DCC
  • p - Скрывает все каналы в "/whois" и "/who" (только для IRC операторов)
  • r - Ник зарегистрирован и идентифицирован
  • R - Позволяет вам получать сообщения только от зарегистрированных пользователей (+r)
  • s - Возможность читать сообщения сервера
  • t - Пользователь использует виртуальный хост
  • T - Предохраняет от получения CTCPs
  • q - Только сервисы (U:Lines) могут кикнуть (только для администраторов сервисов)
  • v - Уведомления о запрещенных DCC передачах файлов
  • V – Помечает клиента как WebTV пользователя
  • w - Возможность читать WallOps сообщения
  • W - Пользователь может видеть кто делает на него команду /whois (только для IRC операторов)
  • x - Хост пользователя скрыт
  • z - Пользователь использует защищенное (SSL) соединение
  • Флаги, определяющие статус ника:
  • h - Пользователь может оказать помощь (хелпер)
  • O - Локальный IRC оператор
  • o - Глобальный IRC оператор
  • C - СоАдминистратор сервера
  • A - Администратор сервера
  • a - Администратор сервисов
  • N - Администратор сети
  • S - Сервис сети

Флаги для канала

  • A - Только IRC администраторы могут заходить на канал (устанавливается IRC администраторами)
  • с - Нельзя отправлять сообщения с цветами, выделениями, подчеркиваниями [o]
  • C - Запрещена отправка CTCP на канал [o]
  • f [*]<Строки>:<Секунды> - Защита от флуда на канале. Если указать символ *, то сервер будет банить за флуд (иначе только кикать). [o]
  • G - Цензура (слова с ругательствами будут заменяться на ) [o]
  • i - Вход только по приглашениям (команда /invite) [h]
  • k <Ключ> - Для входа на канал требуется указать ключ [h]
  • K - Нельзя использовать команду /knock на канал [o]
  • l <Лимит> - Лимит на количество посетителей канала [o]
  • L <Канал> - Переадресация на другой канал, если канал заполнен (+l) [q]
  • m - Модерируемый канал (только пользователи с флагами +vhoq могут говорить на канале) [h]
  • M - Только пользователи с зарегистрированными никами могут говорить на канале [o]
  • n - Только находящиеся на канале пользователи могут писать на канале [h]
  • N - На канале запрещена смена ников [o]
  • O - Только IRC операторы могут заходить на канал (устанавливается IRC операторами)
  • p - Приватный канал (не отображается по команде /whois) [o]
  • P – Убирает на канале quit и part сообщения [o]
  • Q - Запрет киков на канале [o]
  • r - Канал зарегистрирован на сервисах
  • R - Только пользователи с зарегистрированными никами могут войти на канал [o]
  • s - Скрытый канал (не отображается по командам /list и /whois) [o]
  • S - Удаление всех цветов из сообщений [o]
  • t - Только операторы (+o) и полуоператоры (+h) могут менять тему (topic) канала [h]
  • T - Запрет нотисов на канале [o]
  • u - В списке посетителей канала показываются только операторы [q]
  • V - Нельзя использовать команду /invite на канал [o]
  • z - Только пользователи с защищенным (SSL) соединением могут зайти на канал [o]
  • Флаги, определяющие статус пользователя\адреса на канале:
  • b <Ник!Идент@Хост> - Запрет на посещение канала (бан) [h]
  • e <Ник!Идент@Хост> - Исключение из запрета на посещение (возможность зайти, даже если адрес забанен) [h]
  • v <Ник> - Статус голоса на канале (может говорить на модерируемых каналах (+m)) [h]
  • h <Ник> - Статус полуоператора канала [o]
  • o <Ник> - Статус оператора канала [o]
  • a <Ник> - Защита (нельзя кикнуть и деопнуть) [q]
  • q <Ник> - Владелец канала [q]
  • [h] - минимум требуются права halfop, [o] - минимум требуются права chanop, [q] - требуются права владельца

Флаги сервера

  • Старый Новый Описание
  • флаг флаг
  • o local Локальный оператор
  • O global Глобальный оператор
  • C coadmin Помощник администратора сервера
  • A admin Администратор сервера
  • a services-admin Администратор сервисов
  • N netadmin Администратор сети
  • r can_rehash Оператор может использовать /rehash
  • D can_die Оператор может использовать /die
  • R can_restart Оператор может использовать /restart
  • h helpop Оператор получает режим пользователя +h (оператор помощи (helpop))
  • w can_wallops Оператор может посылать /wallops
  • g can_globops Оператор может посылать /globops
  • c can_localroute Может соединять сервера локально
  • L can_globalroute Может соединять сервера глобально
  • k can_localkill Может использовать команду /kill на локальных пользователей
  • K can_globalkill Может использовать /kill на всех пользователей
  • b can_kline Может использовать /kline
  • B can_unkline Может использовать /kline -u@h
  • n can_localnotice Может посылать уведомления по локальному серверу
  • G can_globalnotice Может посылать уведомления по всем серверам
  • z can_zline Может использовать /zline
  • t can_gkline Может использовать /gline, /shun и /spamfilter
  • Z can_gzline Может использовать /gzline
  • W get_umodew Устанавливает режим +W, когда вы оператор
  • H get_host Устанавливает ваш хост в оперхост
  • v can_override Может использовать operoverride
  • q can_setq Может устанавливать режим пользователя +q
  • X can_addline Может использовать /addline
  • d can_dccdeny Может использовать /dccdeny и /undccdeny

 

Безопасность в IRC

Чтобы в IRC сетях вы не потеряли пароль от ника или от канала остерегайтесь незнакомых людей или знакомых :). Бывают mIRC вирусы которые после ввода юзера(цель) вирус начинает свою работу и высасывает пароли ваши. в IRC сетях есть сервисы: ChanServ,NickServ,MemoServ,BotServ,OperServ. Если вам дадут команду типа /msg Ник-вируса getpass ваш-пароль. Взломщики могут сами переименовывать ирк вирусов например: КаналServ,НикServ,ChahServ,NikkServ,ChanCerv,NickCerv. Если вы такое увидите сразу говорите IRC операторам сети. Или зайдите на канал #help или #abuse. На канале #help вам помогут по IRC командам. Ha #abuse Это Канал жалоб сети.

Системные требования

Under construction. Information to come.

IRCd и Windows

Under construction. Information to come.

Доступность IRC

Наконец сделали поддержку IRC чата в Opera(Интернет Браузер). Щелкните по вкладке "сервис" > "общение"

Этот материал был полезен?

Скидка 25% новым клиентам!
Закажи сервер сегодня и получи скидку на первый месяц аренды!