Strona 1 z 1

bash, sprawdzanie numeru ip użytkownika

: 14 lutego 2008, 12:41
autor: hen
Nie jestem pewny, czy problem dotyczy bash'a, ale od niego się zaczyna.

Mam problem przy pisaniu skryptu. Chcę stworzyć loga, do którego będę zapisywał logujących się userów wraz z ich IP i datą logowania. Mam problem z IP. Co do samego wykonania, to (jako że w skryptowaniu basha jestem prawie zielony) pierwsze, łopatologoczne rozwiązanie, jakie mi przyszło do głowy to było grepowanie ifconfig. Postanowiłem poszukać czegoś innego i znalazłem coś takiego:

Kod: Zaznacz cały

adres=`echo -n $SSH_CLIENT |cut -f1 -d" "`
Problem w tym, że u mnie takie echo zwraca pustkę.
Sprawdziłem last'em /var/log/wtmp i tam, gdzie powinno być IP logującego znalazłem "0.0" dla root'a, a dla pozostałych userów pustkę.
To mnie skłania do wniosku, że problem w konfiguracji mojego debiana, a nie w skrypcie.
Proszę o sugestie.

: 14 lutego 2008, 14:24
autor: ponton
Może nie musisz pisać takiego skryptu, wystarczy użyć programu "last"?

: 14 lutego 2008, 18:09
autor: thalcave
hen, bo ta zmienna pojawia się w momencie zalogowania przez ssh, w przypadku zalogowania lokalnego zmienna SSH_CLIENT jest pusta

: 14 lutego 2008, 19:35
autor: hen
To wszystko wyjaśniło. Dalej poszło z górki.
Dzięki thalcave.