~Rami ₪ MANUALS
רמי
SUBJECT: MCabber: Консольный Jabber/XMPP-клиент
AUTHOR: Rami Rosenfeld
DATE: 02/04/24
TIME: 00.00
LANG: ru, en
LICENSE: GNU FDL 1.3
TAGS: gnu, gnome, software, opensource, linux, system, man, manual, bash, privacy, security, rhel, centos, mate, xfce, lxde, spin, de, systemd, systemctl, terminal, console, xmpp, jabber, mcabber
MCabber: Консольный Jabber/XMPP-клиент
INTRO
MCabber - консольный Jabber-клиент, созданный под лицензией GNU GPL, включающий в себя общеупотребимые функции мессенджеров подобного типа, в том числе - MUC (Multi-User Chat) и шифрование сообщений при помощи OTR и GNUPG. Mcabber поддерживает SSL (порт 5223), так и TLS (5222; по умолчанию).
NOTE
- Установка и предварительная настройка
dnf install mcabber
Создание структуры файлов и директорий MCabber в каталоге текущего пользователя (выполняется самостоятельно, до первого запуска MCabber):
~/.mcabber
+ подкаталоги:
~/.mcabber/otr
~/.mcabber/histo
~/.mcabber/eventcmd
~/.mcabber/event_files
+ файлы:
~/.mcabber/mcabberrc (файл конфигурации)
~/.mcabber/mcabber.state (лог непрочитанных собщений)
~/.mcabber/mcabber.log (лог работы)
Примечание: После установки и настройки в целях исключения доступа к каталогу и файлам обязательно исполните команду:
chmod 700 -R ~/.mcabber
- Пример файла конфигурации mcabberrc
Примечания:
1) по сути, пользователю необходимо изменить в mcabberrc лишь три строки, а именно: JID, имя сервера, пароль;
2) если пароль не указан, он будет запрошен интерактивно; если пароль содержит пробелы, следует заключить его в кавычки;
3) если не указан порт, будет использоваться порт по умолчанию (TLS 5222); об активации SSL см. далее;
4) если доменное имя в JID отличается от названия сервера, укажите полный JID в параметре username и отдельно - имя сервера;
set jid = your_name@server.name set password = MYPASSWORD set server = server.name set port = 5222 set tls = 1 set autoaway = 300 set message_autoaway = Auto-away (idle): Временно отсутствую set otr = 1 otrpolicy default opportunistic set otr_dir = "~/.mcabber/otr/" set resource = unknown set disable_random_resource = 1 set priority = 10 set priority_away = 5 set beep_on_message = 1 set roster_show_unread_count = 1 set roster_hide_domain = 1 set roster_width=32 set roster_win_on_right = 1 set log_win_height = 8 set log_win_on_top = 1 set logging = 0 set load_logs = 0 set disable_chatstates = 1 set spell_enable = 1 set spell_lang = en_US ru_RU set spell_encoding = UTF-8 set iq_version_hide_os = 1 set iq_version_hide_version = 1 set iq_time_hide = 1
- Описание настроек
set jid = your_name@server.name # укажите свой JID
set password = MYPASSWORD # укажите пароль
set server = server.name # укажите имя сервера
set port = 5222 # порт сервера (не меняйте! или вначале сверьтесь с данными на сайте провайдера XMPP!)
set tls = 1 # активация TLS
set autoaway = 300 # переход в режим неактивности через ...(секунд)
set message_autoaway = Auto-away (idle): Временно отсутствую # сообщение при отсутствии активности
set otr = 1 # активация OTR
otrpolicy default opportunistic # указание политики использования OTR (наберите команду /help otr для получения справки; опция "opportunistic" будет автостартовать шифрование сообщений при наличии OTR в клиенте собеседника)
set otr_dir = "~/.mcabber/otr/" # каталог для хранения данных OTR (исключите посторонний доступ к его содержимому!)
set resource = unknown # указание ресурса (произвольное имя; необходимо только в том случае, если у вас запущены два разных мессенджера с одним и тем же JID)
set disable_random_resource = 1 # удаляет произвольные символы ".nnn" после имени "mcabber" в информационных сообщения)
set priority = 10 # приоритет мессенджера в режимах "online", "free for chat"
set priority_away = 5 # приоритет в режиме "away"
set beep_on_message = 1 # активирование системного звукового сигнала о событиях
set roster_show_unread_count = 1 # демонстрация в ростере (списке контактов) количества непрочитанных сообщений
set roster_hide_domain = 1 # сокрытие имени сервера после имен пользователей в ростере (будут отображаться только имена)
set roster_width=32 # ширина ростера (по умолчанию - 24)
set roster_win_on_right = 1 # перенос ростера вправо
set log_win_height = 8 # высота окна (буфера) логов и прочих информационных сообщений (по умолчанию - 5, но иногда этого значения не хватает, особенно если необходимо отследить ошибку при запуске или прочитать объемную справку по командам)
set log_win_on_top = 1 # перенос окна с логами вверх (удобно для постоянного контроля за состоянием и поведением мессенджера)
set logging = 0 # безопасность: отключение ведения/сохранения логов
set load_logs = 0 # безопасность: отключение подгрузки предыдущих логов бесед (чатов)
set disable_chatstates = 1 # не записывать в логи сообщения о состоянии чата ("онлайн", "отошел" и т.п.)
set spell_enable = 1 # активация проверки орфографии (если в ОС имеется ее общесистемная поддержка, например hunspell)
set spell_lang = en_US ru_RU # указание языков проверки орфографии
set spell_encoding = UTF-8 # указание кодировки, используемой при проверке орфографии
set iq_version_hide_os = 1 # безопасность: отключение показа собеседникам информации об ОС, в которой запущен мессенджер)
set iq_version_hide_version = 1 # безопасность: отключение показа собеседникам информации о версии мессенджера; будет указано только "mcabber"
set iq_time_hide = 1 # безопасность: отключение показа собеседникам информации о локальном времени (часовом поясе пользователя)
- Другие доступные настройки
Перенесите их в mcabberrc, если это необходимо. Следите, чтобы они не вступили в конфликт с уже имеющимися!
set block_unsubscribed = 1 # блокировать всех собеседников, не указанных в ростере (списке контактов)
Примечание: Настройки, указанные ниже, требуют активации опций "set logging = 1" и "set load_logs = 1"!
set logging_dir = ~/.mcabber/histo/ # каталог для сохранения логов
set cmdhistory_lines = 5 # количество строк старых сообщений, подгружаемых в окно чата при новом запуске мессенджера
set statefile = ~/.mcabber/mcabber.state # файл для хранения непрочитанных сообщений
Примечание: Настройки, указанные ниже, являются опциональными. Используйте их, только если вы понимаете, что делаете!
set proxy_host = 127.0.0.1 # (пример)
set proxy_port = 8118 # (пример)
set proxy_user = # (эту строку можно закомментировать или оставить пустой)
set proxy_pass = # (эту строку можно закомментировать или оставить пустой)
- Дополнение (SSL)
Если сервер использует устаревшее SSL-соединение (редко, но встречается):
set port = 5223 (ВАЖНО: переведите параметр "set port" со значения "5222" в состояние "5223"!)
set ssl = 1 (ВАЖНО: переведите ранее использованный параметр "set tls" в состояние "0" - см. выше)
set ssl_ca = ~/.mcabber/trusted_cert.pem # принудительное указание доверенного сертификата или пути к ним
set ssl_ciphers = ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384 # выполните "openssl ciphers" для просмотра доступных вариантов
Дополнительно см. раздел "SSL/TLS options" в mcabberrc.example.
- Состояние статусов
Все статусы (отображение в ростере):
o - онлайн;
f - свободен для беседы;
a - отошел;
n - недоступен;
d - не беспокоить;
i - "невидимка";
? - "неизвестный", обычно применим для неавторизованных собеседников;
x - conference room, в которой пользователь не принимает участие;
C - conference room, в которой пользователь принимает участие.
Пример ростера:
"Buds"
Группа "Buds". В ней находятся:
#[o] John
John в состоянии "онлайн", он может видеть ваш статус и слать вам сообщения
{?} Sally
Вы с Sally не авторизовали друг друга и не можете видеть чужие статусы
{a} Jane
Jane отошла; к тому же, она не может видеть ваш статус
#[C] x@y.c
Вы являетесь участником conference room с названием "x@y.c" и в ней нет непрочитанных сообщений
- Основные команды работы с MCabber
Запуск в консоли: mcabber
ВАЖНО: Все управляющие команды начинаются с косой черты "/" и могут дополняться опциями.
Примечание: используйте [TAB] для быстрого дополнения команд и JID контактов.
Вызов справки / Вызов справки для команды: /help и /help command_name
Выход: /quit
Перемещение вверх-вниз по ростеру: PgUp / PgDown
Перемещение по истории: Up / Down
Перемещение по сообщениям (в режиме чата): [Ctrl][p] / [Ctrl][n]
Подключение / отключение от джаббер-сервера: /connect и /disconnect
Установка состояния собственного статуса /status online|avail|free|dnd|notavail|away
Пример: /status dnd или /status free
Добавление пользователя в ростер, посылка ему запроса авторизации, назначение никнейма: /add user_name@server.name Nickname
Получение информации о пользователей или ресурсе: /info user_name@server.name
Начало чата: в ростере установить фокус (выделение) на нужном JID и нажать "ОК". См.: PgUp, PgDown.
Удаление выделенного пользователя: /del user_name@server.name
Переименование выделенного пользователя: /rename user_name@server.name NewNickname
Авторизация пользователя: /authorization allow|cancel|request|request_unsubscribe user_name@server.name
Запрос дополнительной информации: /request last|ping|time|vcard|version user_name@server.name
Переименование / создание группы в ростере: /move Groupname
- Команды управления OTR:
Примечание: Если вы находитесь в режиме чата с контактом, его JID, т.е. user_name@server.name вводить НЕ надо.
/otr key # выводит отпечаток приватного ключа в буфер;
/otr start user_name@server.name # начать шифрованную сессию (канал) OTR;
/otr stop user_name@server.name # завершить шифрованную сессию OTR;
/otr info user_name@server.name # получить информацию о статусе OTR у контакта;
/otr fingerprint user_name@server.name # показать активный отпечаток текущей сессии OTR.
/otrpolicy (default|user_name@server.name) (plain|manual|opportunistic|always)
ВАЖНО: В целях верификации и безопасности не забывайте сверить отпечатки или ответы на секретный вопрос!
ВАЖНО: Держите в секрете файлы из каталога ~/.mcabber/otr
your_name@server.name.fpr
your_name@server.name.key
your_name@server.name.tag
Дополнительную информацию см.: /help otr (далее выберите интересующую вас субкоманду/опцию из списка, предложенного в буфере)
- Краткий обзор команд PGP / GnuPG:
/pgp setkey [jid [key]]
/pgp disable|enable|force|info user_name@server.name
Дополнительную информацию см.: /help pgp (далее выберите интересующую вас субкоманду/опцию из списка, предложенного в буфере)
Дополнительно см.:
man mcabber
🄯 Rami Rosenfeld, 2024. GNU FDL 1.3.