[SOLVED] Program do monitorowania komend użytkownika

Dyskusje o wszystkim co służy ochronie systemu i danych przed nieautoryzowanym dostępem.
civi
Sędziwy Jeż
Sędziwy Jeż
Posty: 38
Rejestracja: 24 sie 2005, 19:24
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86_64
Lokalizacja: Lublin
Kontakt:

[SOLVED] Program do monitorowania komend użytkownika

Post autor: civi »

Witam
Mam taki problem. Mam serwer z linuxem i uruchomione ssh. Dostęp do tego serwera mają również inne osoby. Zdażyło się już tak, że przez jakąś głupią komende coś nie działało, dlatego szukam programu, który będzie informować mnie jakie komendy zostały wykonane przez użytkownika. Dzięki takiej historii mógłbym działać "wstecz" i naprawiać serwer. Znalazłem parę programów, ale nie każdy spełnia moje założenia.
Psacct - wyświetla nawet fajnie co użytkownik robił, aczkolwiek na danym serwerze, a ja potrzebowały bym aby to było przesyłane na inny serwer.
Snoppy Logger - loguje do sysloga, ale nie loguje potrzebnych mi rzeczy
Whowatch - loguje tylko w czasie rzeczywistym
Logwatch - nie loguje tego co chcę.
Szukałem również coś do zabbixa ale niestety nie znalazłem.
Może ktoś wie jakim progrmem można zrobić taką funkcjonalność. Jak by miało to gui to by było ekstra.
Ostatnio zmieniony 13 maja 2014, 10:29 przez civi, łącznie zmieniany 1 raz.
Awatar użytkownika
perzan
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 135
Rejestracja: 03 sie 2007, 23:03
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86_64
Lokalizacja: /dev/urandom
Kontakt:

Re: Program do monitorowania komend użytkownika

Post autor: perzan »

W katalogu domowym użytkownika jest plik

Kod: Zaznacz cały

 .bash_history 
, do którego zapisywane są komendy wpisywane w terminalu. Nie wiem czy dokładnie o to Ci chodzi, ale umożliwia podgląd "wstecz" o którym mówisz. Co prawda są one (chyba) zapisywane dopiero po zamknięciu okna terminala.
Eat, sleep, play hockey.
http://www.marcinperzanowski.wordpress.com
Ubuntu 12.04 Gnome Shell
Debian 7.4 KDE
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Program do monitorowania komend użytkownika

Post autor: ethanak »

a ja odpalę mc/ash/cokolwiek i tyle w bash_history zobaczysz że odpaliłem...
Кто жопой родился, чижиком не помрёт
Awatar użytkownika
perzan
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 135
Rejestracja: 03 sie 2007, 23:03
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86_64
Lokalizacja: /dev/urandom
Kontakt:

Re: Program do monitorowania komend użytkownika

Post autor: perzan »

Jest jeszcze polecenie

Kod: Zaznacz cały

 history 
A co do MC to można podejrzeć odpowiedni plik

Kod: Zaznacz cały

 less ~/.local/share/mc/history 
Podejrzewam, bo nie mam pewności, że inne terminale/programy mają zapisywaną historię w podobny sposób.
Eat, sleep, play hockey.
http://www.marcinperzanowski.wordpress.com
Ubuntu 12.04 Gnome Shell
Debian 7.4 KDE
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Program do monitorowania komend użytkownika

Post autor: ethanak »

hm...

Kod: Zaznacz cały

$ python
>>> import os
>>> os.system('niechceszwiedzieccorobie')
Кто жопой родился, чижиком не помрёт
Awatar użytkownika
perzan
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 135
Rejestracja: 03 sie 2007, 23:03
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86_64
Lokalizacja: /dev/urandom
Kontakt:

Re: Program do monitorowania komend użytkownika

Post autor: perzan »

:D
hmmm...

Kod: Zaznacz cały

#! /bin/bash
cd jakis_katalog
rm jakis_bardzo_wazny_plik
I też nie ma śladu w history. Poza wpisem, że skrypt został odpalony.

Ja Cię nie podpuszczam, ale paczki przez dpkg używając pythona nie zainstalujesz ;) (No dobra - pewnie zainstalujesz. Tylko po co do tego pythona zaciągać?)
Skojarzył mi się wpis z bash.org.pl
(...)
<bbirdy> zeby w ogole tu sie pytac, musze korzystac z lynxa
<szatkus> Nie podpuszczam Cię, ale nie napiszesz posta wgetem.
Ale to chyba zły i nikczemny pracownik jest, który pythona odpala tylko po to by system popsuć. Względnie skrypt na złość adminowi pisze ;)
I tutaj pytanie do Autora wątku - o szukanie jakich komend "psujących system" chodzi? Bo jak widać na miecz się i tarcza znajdzie vide "dla chcącego..."
Eat, sleep, play hockey.
http://www.marcinperzanowski.wordpress.com
Ubuntu 12.04 Gnome Shell
Debian 7.4 KDE
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Program do monitorowania komend użytkownika

Post autor: ethanak »

a widziałeś ubuntu bez pythona? albo pythona bez os?
na mój gust kolega wątkotwórca zbyt mocno uszczęśliwia swoich userów (tzn. rób co chcesz a ja to naprawię).
a prostszą sprawą byłoby założenie wątku w stylu "jak maksymalnie ograniczyć prawa użyszkodnika na ssh" (podejrzewam, że kolega @jacekalex ze trzy strony na ten temat by napisał) - a poza tym wprowadzić regułę typu "rozrabianie skutkuje passwd -l a pretensje rozpatruję każdego 30 lutego".
ale to nie mój serwer i zasady korzystania koleś sobie sam ustala.

-- 07 maja 2014 14:12 --

lekko ot - wgetem da się napisać posta ;)
Кто жопой родился, чижиком не помрёт
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4679
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: Program do monitorowania komend użytkownika

Post autor: jacekalex »

ethanak pisze:a widziałeś ubuntu bez pythona? albo pythona bez os?
na mój gust kolega wątkotwórca zbyt mocno uszczęśliwia swoich userów (tzn. rób co chcesz a ja to naprawię).
a prostszą sprawą byłoby założenie wątku w stylu "jak maksymalnie ograniczyć prawa użyszkodnika na ssh" (podejrzewam, że kolega @jacekalex ze trzy strony na ten temat by napisał) - a poza tym wprowadzić regułę typu "rozrabianie skutkuje passwd -l a pretensje rozpatruję każdego 30 lutego".
ale to nie mój serwer i zasady korzystania koleś sobie sam ustala.

-- 07 maja 2014 14:12 --

lekko ot - wgetem da się napisać posta ;)
Przesada, jeden post starczy.
Dla Hakerów jest Grsec-ACL, Apparmor albo Selinux, dla Administratorów jakaś restrykcyjna powłoka (jest ich jak mrówków) np IBSH, do tego Chrooty, Jaile, i diabli wiedzą, co jeszcze.

Jak ktoś chce, to może też napisać własną powłokę, wystarczy średnia znajomość języka C/C++.
Dowód rzeczowy. :twisted:

Pozdro
:craz:
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
Awatar użytkownika
enedil
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1352
Rejestracja: 08 wrz 2012, 16:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: i3
Architektura: x86_64
Kontakt:

Re: Program do monitorowania komend użytkownika

Post autor: enedil »

@jacekalex zainspirowałeś mnie i napisałem własną powłokę ;)

Kod: Zaznacz cały

#include <iostream>
#include <cstdlib>
#include <string>
#include <unistd.h>

int main(int argc, char * argv[])
{
    std::string buffer;
    char *username = getlogin();
    char prompt;
    if (getuid())
        prompt = '$';
    else
        prompt = '#';
    do
    {
        std::cout << username << ":" << get_current_dir_name() << prompt << ' ';
        std::getline(std::cin, buffer);
        system(buffer.c_str());
        buffer.clear();
    }
    while (buffer != "exit");
    return 0;
}
EDIT: Widzę, że jednak nie działa :/ nie obsługuje zmiany katalogu.
Dobrze jest, psiakrew, a kto powie, że nie, to go w mordę!

~moderatorzy
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4679
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: Program do monitorowania komend użytkownika

Post autor: jacekalex »

Tu coś o logowaniu poleceń basha:
http://askubuntu.com/questions/93566/ho ... n-a-server
U mnie działa.

http://blog.rootshell.be/2009/02/28/bas ... to-syslog/
Ten też działa, nawet lepiej. :twisted:
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
Ubek308
Zakręcona Traszka
Zakręcona Traszka
Posty: 574
Rejestracja: 25 maja 2011, 10:17
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Program do monitorowania komend użytkownika

Post autor: Ubek308 »

civi pisze:Zdażyło się już tak, że przez jakąś głupią komende coś nie działało, dlatego szukam programu, który będzie informować mnie jakie komendy zostały wykonane przez użytkownika..
A ja zaczne od elementaŻa:
User nie moze rozwalic systemu.
Jesli rozwali jakis program czy dane - znaczy ze ma do nich dostep.
Pytanie czy nie ma za duzo dostepu.
Do tego wymyslono opcje read-only.
civi
Sędziwy Jeż
Sędziwy Jeż
Posty: 38
Rejestracja: 24 sie 2005, 19:24
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86_64
Lokalizacja: Lublin
Kontakt:

Re: Program do monitorowania komend użytkownika

Post autor: civi »

Dobra znalazłem rozwiazanie.
Wszystko loguję programem script. Jest on dostępny out-of-box. W /etc/profile mam następujace linie

Kod: Zaznacz cały

# Record terminal sessions.
if [ "x$SESSION_RECORD" = "x" ]
then
timestamp=`date "+%d_%m_%Y_%H:%M_%N"`
touch /sciezka/session.$USER.$timestamp
output=/sciezka/session.$USER.$timestamp
SESSION_RECORD=started
export SESSION_RECORD
script -t -f -q 2>${output}.timing $output
exit
exit
fi
Jedyny problem jest taki, że nie mogę się połaczyć przez WinScp do serwera.
Ubek308
Zakręcona Traszka
Zakręcona Traszka
Posty: 574
Rejestracja: 25 maja 2011, 10:17
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: [SOLVED] Program do monitorowania komend użytkownika

Post autor: Ubek308 »

Nie chce mi sie analizowac ale to w/w rejestruje chyba tylko to co sie dzieje pod X-ami a user moze w kazej chwili przerzucic sie na tty1, odpalic emacsa i spod niego robic rozne rzeczy podobnie jak z mc, emacs ma mozliwosc wyskoku do shella, polaczenia sie po ftp i umie jeszcze pare innych rzeczy o jakich dzis w szkolach nie ucza.
Wszystko zalezy od szczegolow rzecz jasna.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [SOLVED] Program do monitorowania komend użytkownika

Post autor: ethanak »

bo to nie jest "program do monitorowania użytkowników" tylko "program do poprawiania nastroju pseudoadmina".
równie dobrze zadziała skrypt

Kod: Zaznacz cały

#!/bin/bash
echo wszystko w porządku możesz iść spać
ale jeśli komuś wystarczy...
Кто жопой родился, чижиком не помрёт
ODPOWIEDZ

Wróć do „Bezpieczeństwo Ubuntu”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 57 gości