Устанавливаем и настраиваем кейлоггер xneur в Ubuntu

Данная программа является автоматическим переключателем клавиатуры. Т.е. при наборе текста, если он набирается на неверном языке, xneur автоматически (или по запросу) переключит язык на нужный. Принцип работы у программы аналогичен Punto Switcher. А так как Punto Switcher можно использовать как кейлоггер, то и этого зверя попробуем заточить под что нам надо.

Сайт проекта: xneur.ru

Установка xneur

sudo apt-get install xneur

Данный пакет включен в официальный репозитории (http://ru.archive.ubuntu.com), и можете сразу устанавливать из него. Но тогда вы будете лишены последних версий.

Подключаем PPA от разработчика с последней стабильной версией:

sudo add-apt-repository ppa:andrew-crew-kuznetsov/xneur-stable

Есть ещё не стабильная («ночная сборка») , но её использовать не советую.

sudo add-apt-repository ppa:andrew-crew-kuznetsov/xneur-unstable

Если при установке возникает ошибка с ключами, решение тут : Ошибка GPG: http://ppa.launchpad.net lucid Release

Или добавьте в список подключенных репозиториев одну из следующих строчек, в зависимости от используемого дистрибутива

# Ubuntu 10.04
deb http://gq.net.ru/ubuntu lucid xneur
# Ubuntu 9.10
deb http://gq.net.ru/ubuntu karmic xneur
# Ubuntu 9.04
deb http://gq.net.ru/ubuntu jaunty xneur
# Ubuntu 8.10
deb http://gq.net.ru/ubuntu intrepid xneur
# Ubuntu 8.04
deb http://gq.net.ru/ubuntu hardy xneur

Узнаём дистрибутив

cat /etc/*release

У нас «lucid», ставим

echo "deb http://gq.net.ru/ubuntu lucid xneur">/etc/apt/sources.list.d/xneur.list

Если и в этом варианте возникает ошибка с ключами:

cd ~
wget http://gq.net.ru/debian/pool/main/g/gq-keyring/gq-keyring_2009.05.18_all.deb
sudo dpkg -i gq-keyring_2009.05.18_all.deb
sudo apt-get update

Настраиваем xneur

Содержимое конфига ~/.xneur/xneurrc

Version 0.15.0
ManualMode Yes
LogLevel Error
DefaultXkbGroup 0
AddBind ChangeWord
AddBind TranslitWord
AddBind ChangecaseWord
AddBind PreviewChangeWord
AddBind ChangeString
AddBind ChangeMode
AddBind ChangeSelected
AddBind TranslitSelected
AddBind ChangecaseSelected
AddBind PreviewChangeSelected
AddBind ChangeClipboard
AddBind TranslitClipboard
AddBind ChangecaseClipboard
AddBind PreviewChangeClipboard
AddBind EnableLayout1
AddBind EnableLayout2
AddBind EnableLayout3
AddBind EnableLayout4
AddBind RotateLayout
AddBind RotateLayoutBack
AddBind ReplaceAbbreviation
AddBind AutocompletionConfirmation
AddBind BlockKeyboardAndMouseEvents
AddBind InsertDate
ReplaceAbbreviationIgnoreLayout No
PlaySounds No
SoundVolumePercent 15
AddSound XneurStart
AddSound XneurReload
AddSound XneurStop
AddSound PressKeyLayout1
AddSound PressKeyLayout2
AddSound PressKeyLayout3
AddSound PressKeyLayout4
AddSound EnableLayout1
AddSound EnableLayout2
AddSound EnableLayout3
AddSound EnableLayout4
AddSound AutomaticChangeWord
AddSound ManualChangeWord
AddSound ManualTranslitWord
AddSound ManualChangecaseWord
AddSound ManualPreviewChangeWord
AddSound ChangeString
AddSound ChangeSelected
AddSound TranslitSelected
AddSound ChangecaseSelected
AddSound PreviewChangeSelected
AddSound ChangeClipboard
AddSound TranslitClipboard
AddSound ChangecaseClipboard
AddSound PreviewChangeClipboard
AddSound ReplaceAbbreviation
AddSound CorrectIncidentalCaps
AddSound CorrectTwoCapitalLetter
AddSound CorrectTwoSpaceWithCommaAndSpace
AddSound CorrectTwoMinusWithDash
AddSound CorrectCWithCopyright
AddSound CorrectTMWithTrademark
AddSound CorrectRWithRegistered
AddSound ExecuteUserAction
AddSound BlockKeyboardAndMouseEvents
AddSound UnblockKeyboardAndMouseEvents
EducationMode No
LayoutRememberMode No
SaveSelectionMode No
RotateLayoutAfterChangeSelectedMode No
SendDelay 0
LogSave Yes
LogSize 1048576
LogMail
LogHostIP
LogPort 25
CorrectIncidentalCaps No
CorrectTwoCapitalLetter No
CorrectCapitalLetterAfterDot No
CorrectTwoSpaceWithCommaAndSpace No
CorrectTwoMinusWithDash No
CorrectCWithCopyright No
CorrectTMWithTrademark No
CorrectRWithRegistered No
FlushBufferWhenPressEscape No
FlushBufferWhenPressEnter No
DontProcessWhenPressEnter No
ShowOSD No
FontOSD -*-*-*-*-*-*-32-*-*-*-*-*-*-u
AddOSD XneurStart
AddOSD XneurReload
AddOSD XneurStop
AddOSD PressKeyLayout1
AddOSD PressKeyLayout2
AddOSD PressKeyLayout3
AddOSD PressKeyLayout4
AddOSD EnableLayout1
AddOSD EnableLayout2
AddOSD EnableLayout3
AddOSD EnableLayout4
AddOSD AutomaticChangeWord
AddOSD ManualChangeWord
AddOSD ManualTranslitWord
AddOSD ManualChangecaseWord
AddOSD ManualPreviewChangeWord
AddOSD ChangeString
AddOSD ChangeSelected
AddOSD TranslitSelected
AddOSD ChangecaseSelected
AddOSD PreviewChangeSelected
AddOSD ChangeClipboard
AddOSD TranslitClipboard
AddOSD ChangecaseClipboard
AddOSD PreviewChangeClipboard
AddOSD ReplaceAbbreviation
AddOSD CorrectIncidentalCaps
AddOSD CorrectTwoCapitalLetter
AddOSD CorrectTwoSpaceWithCommaAndSpace
AddOSD CorrectTwoMinusWithDash
AddOSD CorrectCWithCopyright
AddOSD CorrectTMWithTrademark
AddOSD CorrectRWithRegistered
AddOSD ExecuteUserAction
AddOSD BlockKeyboardAndMouseEvents
AddOSD UnblockKeyboardAndMouseEvents
ShowPopup No
PopupExpireTimeout 1000
AddPopup XneurStart
AddPopup XneurReload
AddPopup XneurStop
AddPopup PressKeyLayout1
AddPopup PressKeyLayout2
AddPopup PressKeyLayout3
AddPopup PressKeyLayout4
AddPopup EnableLayout1
AddPopup EnableLayout2
AddPopup EnableLayout3
AddPopup EnableLayout4
AddPopup AutomaticChangeWord
AddPopup ManualChangeWord
AddPopup ManualTranslitWord
AddPopup ManualChangecaseWord
AddPopup ManualPreviewChangeWord
AddPopup ChangeString
AddPopup ChangeSelected
AddPopup TranslitSelected
AddPopup ChangecaseSelected
AddPopup PreviewChangeSelected
AddPopup ChangeClipboard
AddPopup TranslitClipboard
AddPopup ChangecaseClipboard
AddPopup PreviewChangeClipboard
AddPopup ReplaceAbbreviation
AddPopup CorrectIncidentalCaps
AddPopup CorrectTwoCapitalLetter
AddPopup CorrectTwoSpaceWithCommaAndSpace
AddPopup CorrectTwoMinusWithDash
AddPopup CorrectCWithCopyright
AddPopup CorrectTMWithTrademark
AddPopup CorrectRWithRegistered
AddPopup ExecuteUserAction
AddPopup BlockKeyboardAndMouseEvents
AddPopup UnblockKeyboardAndMouseEvents
CheckOnProcess No
DisableCapsLock No
CorrectSpaceWithPunctuation No
Autocompletion No
AddSpaceAfterAutocompletion No
TroubleshootBackspace No
TroubleshootLeftArrow No
TroubleshootRightArrow No
TroubleshootUpArrow No
TroubleshootDownArrow No
TroubleshootDelete No
TroubleshootSwitch No
TroubleshootFullScreen No
CompatibilityWithCompletion No
TrackingInput Yes
TrackingMouse No
DontSendKeyRelease No

Описание параметров конфига xneur

Описание параметров взято с постов автора программы

Version 0.15.0 — Описывает текущую версию программы. По большей части, вообще ни на что не влияет.

ManualMode No — Опция ручного режима. Если установлено в значение Yes, то автоматическое переключение будет отключено везде, кроме приложений указанных в соответствующей настройке.

LogLevel Trace — Уровень сообщений, которыми xneur будет сыпать в консоль.

  • Errorэто только ошибки.
  • Warningпредыдущее, плюс предупреждения о неполадках, не влияющих на работу программы.
  • Logпредыдущее, плюс чуть больше.
  • Debugпредыдущее, плюс отладочные сообщения программы.
  • Traceпредыдущее, плюс вообще все, что в xneur происходит.

ExcludeLanguage de — Опция позволяет множественное применение и служит для указания раскладки с которой и на которую переключение осуществляться не будет.

DefaultXkbGroup 0 — Определяет раскладку по умолчанию для вновь запущенных приложений.

ExcludeApp rdesktop — С помощью этой опции вы можете целиком исключить приложение из обработки. Допускается множественное использование.

SetAutoApp Gedit — Эта опция определяет приложения, в которых будет принудительно включен автоматический режим переключения вне зависимости от опции ManualMode.

SetManualApp Anjuta — Эта опция определяет приложения, в которых будет принудительно включен ручной режим переключения вне зависимости от опции ManualMode.

AddBind Action Key — Определяет клавишу для того или иного действия по переключению раскладки или прочего. Список Action имеется в вашем конфигурационном файле.

AddAction Control Alt f Firefox Browser firefox — Определяет клавишу для выполнения пользовательского действия.

ReplaceAbbreviation ini Андрей Crew Кузнецов — Определяет список аббревиатур для замены сокращений.

ReplaceAbbreviationIgnoreLayout Yes — Определяет учитывать ли текущую раскладку при замене сокращений. Если установлена в значение Yes, то программа заменит сокращение «йц» и «qw» на «йцукен».

PlaySounds No — Включает или выключает звуковое сопровождение.

SoundVolumePercent 15 — Определяет уровень громкости звуков программы а процентах от системного уровня громкости.

AddSound AutomaticChangeWord Enable /usr/share/xneur/sounds/itemback.wav — Эта опция указывает для какого действия и какой звук использовать. Список действий, на которые можно повесить уведомление, имеется в вашем конфигурационном файле.

EducationMode Yes — Тут просто. Включить или нет самообучение программы вашему лексикону.

LayoutRememberMode Yes — Запоминать раскладку для каждого окна или одна раскладка для всех окон? Решать вам.

LayoutRememberModeForApp Wine — Эта опция заставит xneur принудительно использовать одну раскладку для всех окон приложения. У меня везде в Wine стоит общая раскладка.

SaveSelectionMode Yes — Вы выделили и изменили текст с помощью xneur. Если опция включена, то выделение сохранится после изменения, сделав возможным дальнейшее переключение.

RotateLayoutAfterChangeSelectedMode No — Определяем, переключить ли системную раскладку, если исправлен выделенный текст.

SendDelay 0 — Задержка перед отправкой перехваченного нажатия клавиши обратно приложению.

LogSave Yes — Включаем кейлоггер, т.е. сохраняем набранный текст в файл.

LogSize 10000000 — Определяем размер файла с логами (в байтах).

LogMail admin@xaxatyxa.ru — Если опция определена, то именно на этот емайл будет отсылаться лог набранного текста.

LogHostIP 127.0.0.1 Хост, который предоставляет услуги емайл (почтовый сервер для отправки, не требующий логина и пароля). Возможно указание не ip, а имени.

LogPort 25 — Порт почтового сервера.

CorrectIncidentalCaps Yes — Опция для исправления сЛУЧАЙНОГО капса.

CorrectTwoCapitalLetter Yes— Опция для исправления ДВух прописных букв.

CorrectCapitalLetterAfterDot Yes — Исправляет строчную букву на прописную после точки или восклицательного знака.

CorrectTwoSpaceWithCommaAndSpace Yes — Исправляет двойной пробел на запятую.

CorrectTwoMinusWithDash Yes — Исправляет двойной минус на тире.

CorrectCWithCopyright Yes — Исправляет (c) на ©

CorrectTMWithTrademark Yes — Исправляет ™ на ™.

CorrectRWithRegistered Yes — Исправляет (R) на ®.

FlushBufferWhenPressEscape Yes — Если опция включена, то при нажатии Escape внутренний буфер переключений будет сброшен.

FlushBufferWhenPressEnter No — Если опция включена, то при нажатии Enter внутренний буфер переключений будет сброшен.

DontProcessWhenPressEnter No — Слово не будет обрабатываться, если нажат Enter, что удобно в мессенджерах.

ShowOSD No — Показывать экранные сообщения. Устарело.

FontOSD -*-*-*-*-*-*-32-*-*-*-*-*-*-u — Выбор шрифта для экранных сообщений. Устарело.

AddOSD XneurStart Enable X Neural Switcher запущен — Эта опция указывает для какого действия и какое экранное сообщение использовать. Список действий, на которые можно повесить уведомление, имеется в вашем конфигурационном файле.

ShowPopup Yes — Показывать всплывающие сообщения.

PopupExpireTimeout 1500 — Интервал показа всплывающих сообщений. В данной реализации библиотеки показа не работает.

AddPopup XneurStart Enable X Neural Switcher запущен — Эта опция указывает для какого действия и какое всплывающее сообщение использовать. Список действий, на которые можно повесить уведомление, имеется в вашем конфигурационном файле.

CheckOnProcess Yes — Проверять слово на лету или после нажатия Entrer. Я предпочитаю на лету.

DisableCapsLock Yes — Отключить Капс совсем.

CorrectSpaceWithPunctuation No — Удаление пробелов перед знаками пунктуации.

Autocompletion Yes — Включение автодополнения слов.

AddSpaceAfterAutocompletion No — Добавление пробела после автодополнения.

AutocompletionExcludeApp Gnome-terminal — В этих приложениях автодополнение будет отключено.

TroubleshootBackspace No — Отключит автопереключение, если нажат Backspace.

TroubleshootLeftArrow Yes — Отключит автопереключение, если нажата стрелка влево.

TroubleshootRightArrow Yes — Отключит автопереключение, если нажата стрелка вправо.

TroubleshootUpArrow Yes — Отключит автопереключение, если нажата стрелка вверх.

TroubleshootDownArrow Yes Отключит автопереключение, если нажата стрелка вниз.

TroubleshootDelete No — Отключит автопереключение, если нажат Delete.

TroubleshootSwitch Yes — Отключит автопереключение, если вы переключили раскладку.

TroubleshootFullScreen Yes — Отключит автопереключение, если приложение в полноэкранном режиме.

CompatibilityWithCompletion Yes — Костыль для совместимости с автодополнением в других приложениях.

TrackingInput Yes — Отключение этой опции приведет к полному отказу программы от перехвата клавиатуры.

TrackingMouse Yes — Отключение этой опции приведет к полному отказу программы от перехвата мыши.

DontSendKeyRelease No — Не отправлять событие клавиатуры KeyRelease. Очень специфичная штука, лучше не менять значение опции.

Расположение файлов и конфигов xneur
~/.xneur/xneurrc — конфигурационный файл пользователя программы
~/.xneur/xneurlog.html — файл журнала 
~/.xneur/ — место архивов журнала, имеют вид «xneurlog.html 26.07.2012 15:07:46.gz»

Принтскрин файла журнала xneur

Тонкости xneur

Запись в журнал происходит в момент сброса внутреннего буфера программы, обычно при смене активного окна. Если вы собираете программу из исходников самостоятельно, вы можете совсем отключить функционал кейлоггера, использовав опцию конфигуратора сборки —without-keylogger.

Share

You may also like...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *