Diğerlerinin burada söylediği gibi, yalnızca gnome terminali veya başka bir terminal gibi bir programı anahtar günlüğünden korumak mümkün değildir, yalnızca standart kullanıcıların herhangi bir tuş kaydediciyi yürütmesini kısıtlarsanız veya herhangi bir tuş kaydedici işlemini durdurur / duraklatırsanız.
Daha sonra xinputkomut durumunda bunları nasıl yapabileceğinizi göstereceğim , ancak aynı yöntemler diğer herhangi bir tuş kaydedici için kullanılabilir. Bir tuş kaydedici xinputkomut kullanıyorsa , yöntemi uyguladığınız sürece uygulamanız gerekmez xinput.
1. Standart kullanıcıları xinputkomut kullanacak şekilde kısıtlayın
Aşağıdaki komutları kullanarak standart kullanıcıları xinputkomut kullanacak şekilde kısıtlayabilirsiniz :
sudo chmod go-x /usr/bin/xinput
2. Standart kullanıcıları argümanla xinputkomut kullanacak şekilde kısıtlayıntest-xi2
Bu kullanıcı içinxinputtest-xi2 bir sarmalayıcı yazarak standart kullanıcıların komutu bağımsız değişkenle kullanmalarını kısıtlayabilirsiniz . Bunu yapmak için terminale gidin ve aşağıdaki talimatları izleyin:
Kök ayrıcalıklarına sahip olun:
sudo -i
xinputHerhangi bir kullanıcının PATH'sinde olmayan başka bir dizindeki dosyayı taşı (örneğin /opt):
mv /usr/bin/xinput /new/path/to/xinput
xinputKomut için sarmalayıcıyı oluşturun /usr/bin:
gedit /usr/bin/xinput
İçine aşağıdaki komut dosyasını ekleyin:
#!/bin/bash
if [ "$@" != "${@/test-xi2/}" -a "$(whoami)" != "root" ]; then
echo "`basename $0` $@: Permission denied"
else
/new/path/to/xinput $@
fi
Dosyayı kaydedin ve kapatın.
Yeni sarmalayıcıyı yürütülebilir yapın:
chmod +x /usr/bin/xinput
İlk yöntem güvenlik olmakla birlikte ikinci yöntemi kullanarak, kullanıcı xinputyeni konumunu biliyorsanız orijinali doğrudan çağırarak yine de atlatabilir .
3. Herhangi bir xinputişlemi durdurun / duraklatın
xinputParola girilmesini veya günlüğe kaydedilmesini istemediğiniz herhangi bir şeyi girmeden önce herhangi bir işlemi durdurabilir veya duraklatabilirsiniz . Bunu yapmak için, ~/.bashrcdosyanızın sonuna aşağıdaki bash işlevini ekleyin :
processof () {
xinput_pids=" $(pidof $1) "
if [ "$xinput_pids" = " " ]; then
echo "Nothing to stop/pause/continue. $1: no such process!"
return
fi
for pid in $xinput_pids; do
case $2 in
"stop")
kill $pid
echo "$1: stopped"
;;
"pause")
kill -stop $pid
echo "$1: paused"
;;
"continue")
kill -cont $pid
echo "$1: continue"
;;
*)
echo "$1 is runnig"
;;
esac
done
}
Şimdi, terminalinizi yeniden açtıktan sonra, istediğiniz zaman bu işlevi kullanarak şunları yapabilirsiniz:
tüm xinputsüreçleri durdur / öldür :
processof xinput stop
tüm xinputişlemleri duraklat :
processof xinput pause
tüm xinputsüreçlere devam et :
processof xinput continue
Aslında, bu işlevle bir şey yapmadan önce istediğiniz herhangi bir işlemi durdurabilir / duraklatabilirsiniz (şifre girme gibi):
processof [process_name] [stop|pause|continue]
Sisteminizde etkin bir keylogger'ı nasıl algılayacağınızı nasıl bileceğinizi bilmiyorsanız, bkz:
Bu yöntemler belki de en iyi çözümler değildir, ancak size neler yapabileceğiniz hakkında bir fikir vermeyi umuyoruz ...