How to access user activity on Linux
Finger command
A handy command to track user activity is the finger . This command allows you to see who is logged in or just focused on a user's activity information, see when was last logged in, where to log in from, etc.In this example, we will track activity action of user name nemo.
$ finger nemo Login: nemo Name: Nemo Demo Directory: /home/nemo Shell: /bin/bash On since Fri Jun 19 12:58 (EDT) on pts/1 from 192.168.0.6 7 minutes 47 seconds idle New mail received Wed Jun 17 18:31 2020 (EDT) Unread since Sat Jun 13 18:03 2020 (EDT) No Plan.
We can see the full name, main directory, and shell of nemo. We can also see nemo's most recent login and email activity. Offices, office phones, and home phones appear only if they are specified in the / etc / passwd file with the full name field. For example:
nemo:x:1001:1001:Nemo Demo,11,540-222-2222,540-333-3333:/home/nemo:/bin/bash).
The output above also indicates that nemo has no "plan" at all, but this just means that this user did not create a .plan file and put some text into it; Nothing out of the ordinary.
Without an argument, the finger command will display a list of current logins in the format shown below. You can see when they log in, the IP address they used, the terminal they were using (for example, pts / 1)
$ finger Login Name Tty Idle Login Time Office Office Phone nemo Nemo Demo pts/1 1:24 Jun 19 12:58 (192.168.0.6) shs Sandra Henry-Stocker pts/0 Jun 19 12:57 (192.168.0.60
W command
The w command also provides a nicely formatted list of currently active users including free time and which command they last ran. It also displays the time the system has been operating in the top line and provides a load average to know the level of system activity. In this case (0.00 until the end of minutes 1, 5 and 15), the system will largely be zero.
$ w 14:23:19 up 1 day, 20:24, 2 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT shs pts/0 192.168.0.6 12:57 0.00s 0.14s 0.01s w nemo pts/1 192.168.0.6 12:58 1:24m 0.03s 0.03s -bash
Command id
With the id command , you can view the user ID number and group ID (ID of each member of the group). This information is taken from / etc / passwd and / etc / group files . There are no arguments, the id command reports information for your account.
$ id uid=1000(shs) gid=1000(shs) groups=1000(shs),4(adm),11(admin),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare),500(devops) $ id nemo uid=1001(nemo) gid=1001(nemo) groups=1001(nemo),16(fish)
The auth.log command
You can get information from the file /var/log/auth.log with commands like grep . To display the most recent login activity using the auth.log data , issue the following command:
$ grep "New session" /var/log/auth.log | awk '{print $1,$2,$3,$11}' | tail -5 Jun 17 17:22:38 shs. Jun 17 17:58:43 gdm. Jun 17 18:09:58 shs. Jun 19 12:57:36 shs.
Last command
The last command is the best method to view recent logins of all users or an individual. Remember that the most recent activity will be displayed first because this is the information most admins are most interested in.
$ last | head -5 nemo pts/1 192.168.0.6 Fri Jun 19 12:58 still logged in shs pts/0 192.168.0.6 Fri Jun 19 12:57 still logged in shs pts/0 192.168.0.6 Wed Jun 17 18:10 - 18:42 (00:32) reboot system boot 5.4.0-37-generic Wed Jun 17 17:58 still running shs pts/2 192.168.0.6 Wed Jun 17 17:22 - 17:57 (00:34) $ last nemo | head -5 nemo pts/1 192.168.0.6 Fri Jun 19 12:58 - 16:21 (03:22) nemo pts/2 192.168.0.6 Sat Jun 13 17:49 - 19:05 (01:16) nemo pts/1 192.168.0.6 Thu Jun 4 17:33 - 17:44 (00:10) nemo pts/1 192.168.0.19 Mon May 11 19:04 - 19:57 (00:52) nemo pts/1 192.168.0.19 Tue May 5 12:46 - 17:49 (05:02)
Du command
The du command will report how much space each user's home directory is using if running each of the / home directories like this:
$ sudo du -sk /home/* 289 /home/dorothy 116 /home/dory 88 /home/eel 28 /home/gino 28 /home/jadep 12764 /home/nemo 732 /home/shark 418046 /home/shs 108 /home/tadpole
By default, sizes are reported in 1024 bytes units.
Ps command and history
For users currently logged in, you can always use commands like ps -ef | grep ^ nemo to see which commands and processes the user is currently running. To view the commands that were previously run, you can try viewing the user's history files (e.g. .bash_history), but note that the user can set up his account so that certain commands do not appear. in the history file and they can also edit these files if desired.
Count the login number
If you want to see the number of times each of your users has logged in since the / var / log / wtmp file was last run, use a command like this:
$ for USER in `ls /home` > do > cnt=`last $USER | grep ^$USER | wc -l` # count logins > echo $USER: $cnt # show login count > done
The output will look like this:
dorothy: 0 dory: 0 eel: 8 gino: 0 jadep: 102 nemo: 39 shark: 50 shs: 105 tadpole: 0
If you want more details, you can order a more complex script, possibly adding some additional information such as login details and formatting.
#!/bin/bash sepline="====================" for USER in `ls /home` do len=`echo $USER | awk '{print length($0)}'` # get length of username echo $USER sep="${sepline:1:$len}" # set separator echo $sep # print separator cnt=`last $USER | grep ^$USER | wc -l` # count logins echo logins: $cnt # show login count last $USER | grep ^$USER | head -5 # show most recent logins echo
The above script is limiting the data displayed in the last five logins, but can easily change that if desired. Here's how the data for a user will be formatted:
shs === logins: 105 shs pts/0 192.168.0.6 Fri Jun 19 12:57 still logged in shs pts/0 192.168.0.6 Wed Jun 17 18:10 - 18:42 (00:32) shs pts/2 192.168.0.6 Wed Jun 17 17:22 - 17:57 (00:34) shs pts/0 192.168.0.25 Wed Jun 17 17:20 - 17:57 (00:36) shs pts/1 192.168.0.6 Wed Jun 17 15:19 - 17:57 (02:38)
You should read it
- 10 things to keep in mind when switching to Linux mobile operating system
- 10 reasons to switch to Linux right in 2012
- Why are Linux computers still important?
- The new threat in Linux operating system can have 'incalculable' consequences.
- Why does Linux have so many distributions?
- How to install Solus Linux
- Is Linux the operating system or the kernel?
- 8 best Linux distros for pentest
May be interested
- How to limit access to su command in Linuxif you have added linux to your data center or are just using a single linux machine for your business, you need to make sure it is as secure as possible.
- How to install and use Procmon on Linux, an open source tool just released by Microsoftprocmon is a system utility that helps users easily track system calls (system calls), access the registry and file activity related to processes running in the operating system.
- How to set and change a user password in Linuxboth linux and unix operating systems use the passwd command to change the user password. the password used to update the user's authentication token (password) is stored in the / etc / shadow file.
- Learn about Activity Monitor on Macthe activity monitor displays a variety of resources used on the system in real time, including processes, disk activity, memory usage and more.
- Instructions for deleting Microsoft Copilot activity historyto delete copilot activity history, users cannot do it through the control panel but need to delete it in the microsoft account management section.
- How to manage user passwords from Terminal in Linuxlike many things on linux, passwords are easily managed directly from the command line. the passwd utility is designed to allow you to quickly and easily access all password-related commands on the system. you can use it to change and manage your password and other user passwords on the system
- Distribute file access with chmod commandunix and linux operating systems decentralize access to files and directories using three access parameters, read (read), write (write) and execute (run) to delegate permissions to three groups of objects, including: system owners, administrative groups and users.
- How to check Facebook user information and activitiesquickly view the facebook activity of any user very simply, you can check any public activity.
- How to access Linux Ext4 partition from Windowsif you dual boot windows and linux, you will find it helpful to be able to access the files on your linux system's ext4 partition while you're using windows. there are several ways that users can access ext4 partitions from windows.
- 8 best Linux distros for pentestlinux users have a lot of free operating systems to choose from when it comes to pentests. if you're a linux user, it's time to check out some of these cybersecurity-related linux distributions.