Linux记录每个用户不同会话登录后的所有操作

为记录每个用户对应的操作,利于事后查询 .



修改/etc/profile,添加如下代码

vim /etc/profile

history
USER=`whoami`
USER_IP=`who -u am i 2>/dev/null| awk ‘{print $NF}‘|sed -e ‘s/[()]//g‘`
if [ "$USER_IP" = "" ]; then
USER_IP=`hostname`
fi
if [ ! -d /var/log/history ]; then
mkdir /var/log/history
chmod 777 /var/log/history
fi
if [ ! -d /var/log/history/${LOGNAME} ]; then
mkdir /var/log/history/${LOGNAME}
chmod 300 /var/log/history/${LOGNAME}
fi
export HISTSIZE=40960
DT=`date +"%Y%m%d_%H:%M:%S"`
export HISTFILE="/var/log/history/${LOGNAME}/${USER}@${USER_IP}_$DT"
chmod 600 /var/log/history/${LOGNAME}/*history* 2>/dev/null

原文地址:https://blog.51cto.com/8026776/2487408

时间: 04-14

Linux记录每个用户不同会话登录后的所有操作的相关文章

【Hadoop系列】linux下 root用户免密码登录远程主机 ssh

操作环境: CentOS 6.5 操作对象: 用户A主机和远程主机B 正文部分:斜体加粗代表linux指令. linux下 非root用户免密码登录远程主机 ssh请转至此链接:XXXXXXXXXXXXXXXX(暂未写好) 一.远程主机B和用户A都安装openssh 首先我们检查远程主机是否安装openshh和rsync rpm -qa|grep opensshrpm -qa|grep rsync 如果没有返回相关信息代表并未安装,我们用yum指令安装. yum install openssh

Linux 记录所有用户登录和操作的详细日志

1.起因 最近linux服务器上一些文件呗篡改,想追查已经查不到记录了,所以得想个办法记录下所有用户的操作记录. 一般大家通常会采用history来记录,但是history有个缺陷就是默认是1000行,当然你也可以vim /etc/profile将1000修改成1000000行,但是这只是比较笼统的做法,看不到详细的用户来源已经操作记录,比如来源ip地址.操作时间.操作用户等. 所以我们不得不自己写代码来实现这样的功能. 2.自动记录脚本 编写脚本如下: history USER=`whoami

Linux 记录所有用户的操作记录

随着时代的发展,我们生活中了解计算机的越来越多,黑客也越来越多:为了安全起见,我们需要记录所用户的登录及操作日志:我们需要清楚服务器上每个用户登录后都做了哪些操作,我们需要记录下每个用户的操作命令. 下面的内容设置可以实现在Linux下所有用户,不管是远程还是本地登陆,在本机的所有操作都会记录下来,并生成包含"用户/IP/时间/操作指令"的文件存放在指定位置. 1.添加以下信息到/etc/profile文件里 ################## 记录信息开始 ############

Linux记录-配置sudoers无密登录和环境变量

su root vim /etc/sudoers.d/sfapp sfapp ALL=(ALL) ALLsfapp ALL=(ALL) NOPASSWD: ALL Defaults !env_reset :wq! 原文地址:https://www.cnblogs.com/xinfang520/p/10298248.html

linux下创建用户

linux下创建用户(一) Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也可以帮助用户组织文件,并为用户提供安全性保护.每个用户账号都拥有一个惟一的用户名和各自的口令.用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录. 实现用户账号的管理,要完成的工作主要有如下几个方面: · 用户账

linux下添加用户并赋予root权限(转)

转自:http://blog.csdn.net/stormbjm/article/details/9086163 1.添加用户,首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户#passwd tommy   //修改密码 Changing password for user tommy.New UNIX password:     //在这里输入新密码Retype new UNIX password:  //再次输入新密码pas

linux下创建用户 费元星站长

linux下创建用户(一) Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也可以帮助用户组织文件,并为用户提供安全性保护.每个用户账号都拥有一个惟一的用户名和各自的口令.用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录. 实现用户账号的管理,要完成的工作主要有如下几个方面:· 用户账号

Linux系统管理之用户管理

Linux是个多用户多任务的分时操作系统,所有要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也能帮助用户组织文件,并为用户提供安全性保护.每个用户账号都拥有一个惟一的用户名和用户口令.用户在登录时键入正确的用户名和口令后,才能进入系统和自己的主目录.实现用户账号的管理,要完成的工作主要有如下几个方面: 用户管理,包括用户的添加.删除.修改 用户组的管理,包括用户组的

Linux系统的用户和用户组管理

一.用户(user)和用户组(group)概念 1.用户(user)的概念 Linux 是典型的多用户操作系统,我们可以建若干用户(user),用于系统服务的运行和权限管理,不同的用户登陆系统,按照设定的权限去操作系统,提高了安全性.在Linux系统中有一些用户是用来完成特定任务的,比如nobody和ftp 等:有的是为了权限安全,比如限制root直接登陆系统,创建一个sshusr用户,登陆sshusr后,再su到root下.可以通过查看/etc/passwd了解Linux系统有哪些帐号. 2.

thinkphp实现登录后返回原界面

主要思路还是用session记录原地址,在登录后再跳转回原界面 先保存请求login方法界面的url public function savelogin(){ session('returnUrl',$_SERVER['HTTP_REFERER']); } 在登录方法最后跳转时控制 if($returnUrl = session('returnUrl')) { session('returnUrl',null); $this->success('登录成功',$returnUrl,0); }els