Устанавливаем и настраиваем кейлоггер 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Исправляет © на ©

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

CorrectRWithRegistered YesИсправляет ® на ®.

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.

Остались или есть ещё вопросы? Задавайте!
(не забудьте указать ссылку на этот пост)




Оставить комментарий

Установка, настройка, мониторинг и администрирование linux, unix, windows систем