利用PROMPT_COMMAND记录每个用户执行命令的时间ip等信息。
PROMPT_COMMAND:这个变量的内容会在现实bash提示符前执行。
所以我们可以利用这个变量来纪律每个用户执行的命令
具体脚本如下:
export PROMPT_COMMAND='{ date "+[ %Y%m%d %H:%M:%S `whoami` ] `history 1 | { read x cmd; echo "$cmd from ip:$SSH_CLIENT $SSH_TTY"; }`"; }>> /home/pu/login.log'
这个脚本来自Linux系统架构运维的 广州{宅男} 在群里提供,我记录下来,希望对需要的人有用。
解释:
这条命令会把上条命令(history 1)的时间(date )、用户(whoami)、命令字($cmd)、客户端ip($SSH_CLIENT)、tty($SSH_TTY)写入/home/pu/login.log文件。
Bash Prompt HOWTO
http://tldp.org/HOWTO/Bash-Prompt-HOWTO/index.html
转载于:https://blog.51cto.com/chenchao40322/411855
利用PROMPT_COMMAND记录每个用户执行命令的时间ip等信息。相关推荐
- linux记录用户命令的日志是,用日志记录Linux用户执行的每一条命令
用日志记录Linux用户执行的每一条命令 用日志记录Linux用户执行的每一条命令 工作中,需要把用户执行的每一个命令都记录下来,并发送到日志服务器的需求,为此我做了一个简单的解决方案.这个方案会在每 ...
- 开关机自动执行脚本方法[以及切换用户执行命令方法]
[开关机自动执行脚本方法] 摸索了两天,终于找找们到了: 首先要明确的一点是:unix(含linux)的OS有若干个运行级别: 参见1:http://xiaoli.itpub.net/post/398 ...
- [sh]rm -rf*的防护和普通用户执行命令
尽量用普通用户执行,因为普通用户无法删除root的文件,避免误删除 rm -rf 不可取, 尽量find+rm -rf 尽量cd && rm -rf * 加上逻辑 cd /tmp/re ...
- php利用wsh突破函数禁用执行命令(安全模式同理)
php利用wsh突破函数禁用执行命令(安全模式同理) 很多时候有些windows的服务器是支持wsh组建的,但是却执行不了命令,asp下执行被拒绝,php下执行报错,此时你可以借鉴以下的方法尝试. p ...
- 通过bginfo小工具让用户自己查看用户名与IP地址信息
通过bginfo小工具让用户自己查看用户名与IP地址信息 https://blog.51cto.com/wangzhaowei/1337848 王兆伟1390人评论3390人阅读2013-12-07 ...
- 如何以nobody用户执行命令?
最近在logstash中使用nobody用户启动logstash,一想,nobody用户的shell不是/sbin/nologin吗? 不能登录执行命令呀? 于是看了一下它的启动脚本,是使用其他方式进 ...
- “泰迪杯”挑战赛 -利用收视记录定义用户画像(基于爬虫数据分析)
目录 一. 引言 1.1 背景 1.2 研究内容 1.3 研究思路 二.数据预处理 2.1 附件 1:用户收视信息 2.1.1 用户收视信息 2.1.2 用户回看信息 2.1.3 用户点播信息 2.1 ...
- java jsch 切换用户_如何在java中使用Jsch切换到root用户执行命令?
我正在尝试通过使用私钥建立的ssh连接执行一组命令.为此我在java中使用了JSCh和Session类. 以下是代码: java.util.Properties config = new java.u ...
- linux命令哲学,Linux哲学思想、history实现执行命令的时间、Linux命令格式
1.Linux哲学思想 (1)一切皆是文件(包括硬件),所有都以文件形式显示. (2)小型,单一用途的程序 (3)链接程序,共同完成复杂的任务 (4)命令提示符为主 (5)配置数据存储在文本中 2.临 ...
- Linux上用户执行命令记录
HFILE=`who -m | awk '{print $1}'` readonly HISTFILE=/var/history/$HFILE-$USER-$UID.log readonly HIST ...
最新文章
- Android DialogFragment 遇到 java.lang.IllegalStateException: Fragment already added: 的解决方法
- 脑电植入:治疗抑郁症的新方法?重磅!UCSF研究人员成功治疗一例重度抑郁症患者...
- 全球四大农业贸易数字化-丰收节贸易会:谋定粮食区块链
- Brave devil
- 【操作系统】多道程序的理解
- Leetcode每日一题:226.invert-binary-tree(翻转二叉树)
- 推荐系统思维导图——第二章
- 移动**21*设置无法接通_手机通话质量不好?你可能只差一步设置!
- 数据分析五板斧与里面的屠龙刀(下)
- 【技术分享】select下拉框option默认选中(php模板渲染)
- Android AMS 与 APP 进程通信
- CentOS7.6腾讯云中域名的备案详细流程
- 一文看懂AutoML
- 什么叫智能服务器sn,一篇文章告诉你何为服务器端车牌智能识别
- 荣耀8X0安卓系统切换鸿蒙系统,华为大改安卓Q,EMUI 10将启用全新UI,花粉沸腾:静候鸿蒙...
- 将北京时间转换为世界协调时
- OpenGL 亮度调节
- 吐血分享:QQ群霸屏技术教程2017(维护篇)
- 这几天来的第一篇日志
- HTML+css+javascript面试题
热门文章
- 神经网络入门--学习资源
- UJAM Beatmaker VICE for Mac(80年代风格鼓机插件)
- macOS Recovery中修复磁盘的具体操作方法
- 怎么用EasyRecovery恢复硬盘内被误删的数据
- Sklearn流水线交叉验证以及超参数网格交叉评估基础案例实战-大数据ML样本集案例实战...
- webpack+vue动态加载组件尝试
- 删除putty的session 以及 putty的颜色设置值
- js里写网页结构, 传函数参数
- Zimbra的zmcontral服务无法起来,提示ldap有问题。
- 本周小结!(回溯算法系列三)