Repolode
ergochat

ergochat/ergo

Современный IRC-сервер на Go, объединяющий ircd, фреймворк сервисов и bouncer в одном демоне.

Звёзды
3,357
Форки
249
Открытые issues
213
Последний коммит
6 дней назад

Что это?

Ergo — IRC-сервер (ircd), написанный на Go. Он включает управление аккаунтами через NickServ и ChanServ, сохраняет историю сообщений и воспроизводит её, а также позволяет нескольким клиентам использовать один никнейм. Поэтому Ergo может работать и как чат-сервер, и как bouncer. Сервер поддерживает широкий набор возможностей IRCv3 и задуман в том числе как эталонная реализация IRCv3.

Настроить сервер просто: скопируйте конфигурацию YAML по умолчанию, сгенерируйте TLS-сертификаты встроенной командой и запустите бинарный файл. Конфигурацию можно перезагружать на ходу (rehashing), в том числе TLS-сертификаты. Пароли хранятся с использованием bcrypt; сервер также поддерживает SASL, клиентские сертификаты, сокрытие IP-адресов и работу в качестве скрытого сервиса Tor.

Доступны релизные бинарные файлы и Docker-образы; также проект можно собрать из исходного кода с vendored-зависимостями.

Ключевые возможности

  • 01Встроенные NickServ, ChanServ и HostServ для управления аккаунтами, регистрации каналов и vanity-хостов
  • 02Сохранение и воспроизведение истории сообщений, а также возможность использовать один никнейм с нескольких клиентов
  • 03Встроенная поддержка TLS, включая аутентификацию по клиентским сертификатам
  • 04Широкая поддержка IRCv3 и аутентификация SASL
  • 05Перезагрузка конфигурации YAML и TLS-сертификатов на ходу
  • 06Опциональная интеграция с LDAP и единая система банов (UBAN)

Сценарии использования

  • Запуск частной IRC-сети или сообщества с зарегистрированными аккаунтами и каналами
  • Развёртывание IRC-сервера с сохранением истории, чтобы пользователи могли переподключаться и не терять сообщения
  • Использование в качестве эталонного сервера для тестирования возможностей IRCv3-клиентов
  • Запуск IRC-сети, доступной через Tor

Быстрый старт

  1. 1

    Скачайте последнюю версию со страницы релизов

  2. 2

    Скопируйте конфигурацию по умолчанию в ircd.yaml

    cp default.yaml ircd.yaml
  3. 3

    Создайте сертификаты TLS

    ./ergo mkcerts
  4. 4

    Запустите сервер

    ./ergo run

Что важно знать

  • Для быстрого старта нужно скачать релиз, поэтому перед запуском конфигурацию придется отредактировать вручную.
  • Как указано в README, для использования в production потребуются дополнительные действия, например настройка действительных сертификатов TLS и systemd.

В подборках

Темы

#irc#ircd#ircv3#chat-server#go#self-hosted#sasl#bouncer#daemon#irc-daemon

Частые вопросы

Что такое ergo?
Современный IRC-сервер на Go, объединяющий ircd, фреймворк сервисов и bouncer в одном демоне. Ergo — IRC-сервер (ircd), написанный на Go. Он включает управление аккаунтами через NickServ и ChanServ, сохраняет историю сообщений и воспроизводит её, а также позволяет нескольким клиентам использовать один никнейм. Поэтому Ergo может работать и как чат-сервер, и как bouncer. Сервер поддерживает широкий набор возможностей IRCv3 и задуман в том числе как эталонная реализация IRCv3.
ergo можно использовать бесплатно? Какая у него лицензия?
ergo распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
ergo всё ещё поддерживается?
Активно поддерживается. Последний коммит в ergo — 1 нояб. 2026 г..
Для чего можно использовать ergo?
Запуск частной IRC-сети или сообщества с зарегистрированными аккаунтами и каналами Развёртывание IRC-сервера с сохранением истории, чтобы пользователи могли переподключаться и не терять сообщения Использование в качестве эталонного сервера для тестирования возможностей IRCv3-клиентов Запуск IRC-сети, доступной через Tor
Как установить ergo?
Скачайте последнюю версию со страницы релизов Скопируйте конфигурацию по умолчанию в ircd.yaml: cp default.yaml ircd.yaml Создайте сертификаты TLS: ./ergo mkcerts Запустите сервер: ./ergo run
Где скачать ergo?
Исходный код и инструкции по установке — на GitHub: https://github.com/ergochat/ergo

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Открытый IRC-сервер (ircd) с полной поддержкой IRCv3, TLS, маскировкой хостов и защитой от флуда и спама; работает на Linux, macOS и Windows.

528+1 за неделю157CGPL-2.0Активно поддерживаетсяОбновлён 3 дня назад

Высокопроизводительный IRCv3-сервер для UNIX-подобных систем и Windows, написанный на C++.

1,4 тыс.+4 за неделю281C++Без лицензииАктивно поддерживаетсяОбновлён 7 дней назад