A maioria dos sistemas operacionais já faz isso - a funcionalidade de log para logons / logoffs é bastante padrão.
No Windows, o log de eventos armazena essas informações. Confira o link para obter informações mais detalhadas.
No Linux, você procuraria em / var / log / adm
Ambos podem ser facilmente usados para rastrear logon / logoffs se você quiser medir o tempo / presença