Go to file
kernc 0861ec3838 Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release.
git-svn-id: https://logkeys.googlecode.com/svn/trunk@43 c501e62c-e7d1-11de-a198-37193048d1ed
2010-05-31 21:31:50 +00:00
man Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
scripts Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
src Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
COPYING Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
ChangeLog Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
INSTALL Major code refactoring and various fixes - all as of yet untested\! 2010-04-22 02:06:49 +00:00
Makefile.am Replaced lkl and lklk scripts with llk and llkk setuid0 programs that run logkeys-start.sh and logkeys-kill.sh. 2010-04-22 19:36:22 +00:00
Makefile.in Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
README Replaced lkl and lklk scripts with llk and llkk setuid0 programs that run logkeys-start.sh and logkeys-kill.sh. 2010-04-22 19:36:22 +00:00
TODO Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
aclocal.m4 Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
config.h.in Piped commands now use absolute program paths (e.g. /bin/grep instead of just grep) to avoid potential attacks (issue 18) 2010-04-22 15:59:58 +00:00
configure Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
configure.ac Implemented HTTP log POSTing and IRC posting, which is undocumented as it doesn't work. This is also a 0.1.1a release. 2010-05-31 21:31:50 +00:00
depcomp Initial v0.1.0 public commit. Everything works. :) 2009-12-13 10:56:57 +00:00
install-sh Initial v0.1.0 public commit. Everything works. :) 2009-12-13 10:56:57 +00:00
missing Initial v0.1.0 public commit. Everything works. :) 2009-12-13 10:56:57 +00:00

README

===============================================================================
 logkeys - a GNU/Linux keylogger that works!
===============================================================================

  0. Licence
  1. Description
  2. Installation
  3. Usage how-to
  4. Further information

===============================================================================


+------------------------------------------------
 0. Licence
===============================================================================
logkeys is dual licensed under the terms of either GNU GPLv3 or later, or 
WTFPLv2 or later. It is entirely your choice! See COPYING for further 
information about licensing.


+------------------------------------------------
 1. Description
===============================================================================
logkeys is a linux keylogger. It is no more advanced than other available linux
keyloggers, notably lkl and uberkey, but is a bit newer, more up to date, it
doesn't unreliably repeat keys and it shouldn't crash your X. All in all, it
just seems to work. It relies on event interface of the Linux input subsystem. 
Once completely set, it logs all common character and function keys, while also
being fully aware of Shift and AltGr key modifiers.


+------------------------------------------------
 2. Installation
===============================================================================
Provided your GNU/Linux distribution doesn't include logkeys package in its
repositories, manual installation of logkeys from source is as easy as:

 $ tar xvzf logkeys-0.1.0.tar.gz      # to extract the logkeys archive
 
 $ cd logkeys-0.1.0/build     # move to build directory to build there
 $ ../configure               # invoke configure from parent directory
 $ make                       # make compiles what it needs to compile
 ( become super↙user now )    # you need root to install in system dir
 # make install               # installs binaries, manuals and scripts

That's it.

To ever uninstall logkeys, remove accompanying scripts and manuals, issue

 # make uninstall    # in the same logkeys-0.1.0/build dir from before

A copy of these instructions is in the accompanying INSTALL file.


+------------------------------------------------
 3. Usage how-to
===============================================================================

logkeys is simple. You can either invoke it directly, by typing full command 
line, or use the provided scripts. There are two helper programs in this 
package:

 bin/llk  , which is intended to start the logkeys daemon, and
 bin/llkk , which is intended to kill it.
 
bin/llk runs etc/logkeys-start.sh, and bin/llkk rund etc/logkeys-kill.sh.

You can use these two setuid root programs for starting and stopping the 
keylogger quickly and covertly. You can modify the .sh scripts as you like.
As the programs are installed setuid, the root password need not be provided 
at runtime.

Default log file is /var/log/logkeys.log and is not readable by others.

I suggest you first test the program manually with

 $ touch test.log
 $ logkeys --start --output test.log

and in the other terminal follow it with

 $ tail --follow test.log

and see if the pressed keys match to those noted. If you use a US keyboard
layout, use -u switch. Make sure your terminal character locale is set to UTF-8

 $ locale
 LANG=xx_YY.UTF-8
 LC_CTYPE="xx_YY.UTF-8"
 ...

or alternatively, you need en_US.UTF-8 locale available on your system

 $ locale -a
 ...
 en_US.UTF-8
 ...

otherwise you will only see odd characters (like ꑶ) when pressing character
keys.

It is very likely that you will see only some characters recognized, without
any hope for Shift and AltGr working even slightly correct, especially when
starting logkeys in X. In that case it is better to switch to virtual terminal, 
e.g. tty4 (Ctrl+Alt+F4), and there execute:

 $ logkeys --export-keymap my_lang.keymap

Then open my_lang.keymap in UTF-8 enabled text editor and manually repair any
missing or incorrectly determined mappings. From then on, execute logkeys by

 $ logkeys --start --keymap my_lang.keymap

Again, see if it now works correctly (character keys appear correct when you
are viewing the log file in editor), and opt to modify bin/llk starter script.

logkeys acts as a daemon, and you stop the running logger process with

 $ logkeys --kill

(or bin/llkk provided script).

For more information about logkeys log file format, logkeys keymap format, and
command line arguments, read the application manual,

 $ man logkeys

or see the wiki at project website: http://code.google.com/p/logkeys/

If you create full and completely valid keymap for your particular language,
please upload it to website or send it to me by e-mail. Thanks.

Abuse the output of this software wisely.


+------------------------------------------------
 4. Further information
===============================================================================

Read the man page.

Refer to troubleshooting and FAQ sections on the project website,

 http://code.google.com/p/logkeys/ ,

for currently known issues, ways to resolve them, and any other information.

Report any bugs and request reasonable features on the issues list page

 http://code.google.com/p/logkeys/issues .

When opening new issues, always provide descriptively keyworded summary and
description.

You are more than welcome to implement unreasonable features yourself, as well
as hack the program to your liking.

If you are a pr0, please answer the few questions I commented in the source.
Thanks.

~