Linux System : Free Employee Monitoring with Automatic Screenshots

Introduction :
Automatic screen-shots of Linux system directly import on your web server with Linux samba server service and Scrot command.
Configuration in Web Server
- Setup web panel UI on your web server :
Get web panel PHP/HTML code from Github URL: https://github.com/raj412/Employee-Monitoring-for-Linux-System
It’s work in Linux server LAMP environment(no need database for this configuration )
Default login username password is admin/1234. You can change username/password from login.php file in line number #6
Login Page :

Dashboard :

Screenshot Page :

2. Samba server configuration on web server :
I. Install Samba on your server where you setup Linux screenshot log system web panel.
sudo apt-get update
sudo apt-get install samba
II. Set a password for your user in Samba
sudo smbpasswd -a <user_name>
III. Share gallery-images folder from you web panel.
This is my web panel gallery-images path /var/www/html/linuxscreenshot/gallery-images
IV. Edit the file “/etc/samba/smb.conf”
[<folder_name>]
path = /var/www/html/linuxscreenshot/gallery-images.
valid users = <user_name>
read only = no
V. Restart the samba service
sudo service smbd restart
Configuration on Linux System (Employee System)
- Install cifs-utils in employees Linux system :
CIFS-UTILS use for mount network shared folder in system.
Run this command for install cifs service in Linux system.
sudo apt-get install cifs-utils
2. Install scrot in employees Linux system:
Scrot use for tacking screenshot of current display of Linux system.
Run this command for install scrot service in Linux system.
sudo apt-get install scrot
You check with run scrot [image-name].png
3. Add Linux script in employees Linux system:
Employee system username is user1
linux system mount point is /var/opt/img/ (You can use mount point as you like)
Network shared location : //serverhost/gallery-images/user1/
Samba username/password : smabauser/sambapw
> Linux script like this.
— — — — — — — — — — — — — — — — — — — — — — — — — — — — — —
#!/bin/sh
LOCATION=”$(date +/var/opt/img/%Y/%m/%d)”
if mountpoint -q /var/opt/img
then
mkdir -p $LOCATION
cd $LOCATION
DISPLAY=:0 scrot ‘%Y-%m-%d-%H%M.jpg’ -q 20
else
sudo mount -t cifs //serverhost/gallery-images/user1/ /var/opt/img/ -o user=smabauser,password=sambapw,iocharset=utf8,uid=user1
mkdir -p $LOCATION
cd $LOCATION
DISPLAY=:0 scrot ‘%Y-%m-%d-%H%M.jpg’ -q 20
fi
— — — — — — — — — — — — — — — — — — — — — — — — —
Save this file as auto.sh
4. Set corn job for auto.sh in employee system:
Add corn job for run auto.sh file every 5 mints
Open corn with run command
crontab -e
Add this line
*/5 * * * * sh /path/of/shfile/auto.sh
This auto.sh file automatically run every 5 mints and script take screenshot with scrot command and upload on mounted network shared drive.
Thanks for being here.
Facebook Page : https://www.facebook.com/linuxtipsntutorials/
Instagram : https://www.instagram.com/linux_tips_tutorials/