linux 登入用户记录,linux记录所有用户登陆及执行过的命令脚本
第一个窗口
[root@hdss7-4 ~]# echo "
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` ## 获取ip 并且存到变量中
fi
if [ ! -d /var/log/history ]; then
mkdir /var/log/history ## 判断该目录下 是否有此目录如果没有则新建且开启 777权限
chmod 777 /var/log/history
fi
if [ ! -d /var/log/history/${LOGNAME} ]; then
mkdir /var/log/history/${LOGNAME} ## 判断 /var/log/history目录下有没有 当前登录的用户文件夹,如果没有则创建且设置 300 权限 LOGNAME: 是当前登录的用户名 例如 ubuntu或root
chmod 300 /var/log/history/${LOGNAME}
fi
## 最后更改全局的HISTFILE变量
export HISTSIZE=4096 ##更改HISTFILE 大小
DT=`date +"%Y%m%d_%H:%M:%S"`
export HISTFILE="/var/log/history/${LOGNAME}/${USER}@${USER_IP}_$DT"
## 全局更改 HISTFILE的日志存放目录 默认 每个用户下面都有自己的bash.history 这样做是为了集中管理记录这些命令日志,
##修改了全局变量 HISTFILE 就等于修改了 全部用户的HISTFILE设置。
##所以 最终呈现的效果就是 在用户退出远程连接时 才会记录到日志中。
## 此操作 其实 就是 更改了各个用户的history存储目录且日志文件名字有所变化其他的都跟原来一样。
chmod 600 /var/log/history/${LOGNAME}/history 2>/dev/null
">>/etc/profile
[root@hdss7-4 ~]# source /etc/profile
[root@hdss7-4 ~]# useradd zhangsan
[root@hdss7-4 ~]# echo "aaaaaa" | passwd --stdin zhangsan
新开一个窗口(就是第二个窗口)
rambo@rambo:~$ ssh zhangsan@172.16.186.23
任意执行进行测试
回到第一个窗口进行查看
标签:脚本,log,HISTFILE,##,用户,USER,linux,var,history
来源: https://www.cnblogs.com/smlile-you-me/p/14429457.html
linux 登入用户记录,linux记录所有用户登陆及执行过的命令脚本相关推荐
- Linux登入Oracle数据库修改密码
Linux登入Oracle数据库修改密码 1) ssh到对应服务器ssh root@IP --> password:password 2)切换到Oracle用户下,su - 使用root的环境变 ...
- linux登出系统,讲解Linux操作系统进入与退出系统方法
随着Linux操作系统崛起,导致很多人在自己的电脑中舍弃了微软,都选择了Linux操作系统.于是很多人开始学习Linux操作系统,如果你是个初学者,这里你介绍Linux操作系统的一些知识,比如说进入与 ...
- 如何用linux登入数据库,Linux中MySQL数据库的使用①-----登录、数据库操作、表结构操作...
启动mysql服务 systemctl start mysqld 登录mysql mysql -u root -p # 登录本机 mysql -u root -hlocalhost -P3306 -p ...
- linux登入系统失败20次添加黑名单
lastb | awk '{print $3}' | sort | uniq -c | sort -nr | awk '$1>20{print $0}'| awk '{print "s ...
- 【错误记录】Flutter 环境安装相关问题 ( 执行 flutter doctor 命令后续错误处理 )
文章目录 一. 缺少平台报错信息 ( Android SDK file not found ) 二. 解决方案 ( 推荐安装完整的开发环境 ) 三.许可未接受问题 ( Some Android lic ...
- php 模拟阿里妈妈登入,请问php通过curl如何模拟登陆阿里妈妈呢?
登陆的时候提示:超人,您提交的页面已过期,请重新输入提交 以下是我写的模拟登陆代码,技术比较菜,勿笑,请问有什么问题呢? public function curl(){ $url='https://w ...
- Linux 中多终端同步 history 记录
很多文章都是第一时间在语雀进行了更新和发布,公众号的文章只是在语雀平台的基础上进行同步的,而且更新频率也会比语雀要慢.最近弃坑简书,入驻语雀,欢迎阅读原文来语雀一起交流学习. 基本认识 Linux 默 ...
- linux以root账号登陆gnome,CentOS 7 - 以root身份登入Gnome
新版的7.0很多资料没有,为了安全,linux是禁止root登录到桌面,但为了方便又想用root登录到桌面,在网上找了找,基本上都是这这一篇: http://shaoguangleo.blog.163 ...
- linux中如何授权限,Linux系统下,为普通用户授权。
Linux系统下,如何为普通用户授权 编辑sudoers vi /etc/sudoers(visudo) 添加如下内容 fly ALL=(ALL) ALL (为普通用户fly赋予root权限) 第一 ...
最新文章
- Django 流式响应中文csv样例
- Java虚拟机详解(五)------JVM参数(持续更新)
- 苹果截屏快捷键_新手小白用苹果电脑搞科研,学会这些才不至于尴尬!
- mysql log table_mysqlbinlog功能扩展--table参数
- linux ls不显示total,Linux中使用ls指令时total的意思
- 8年web前端开发老程序员告诉你如何零基础学习web前端
- POJ1182 食物链---(经典种类并查集)
- Reg Exp正则表达式
- 毫秒和秒的换算工具_使用后戒不掉的文档搜索工具:Everything
- 通过ToStringBuilder实现toString方法
- OLS回归模型-斯皮尔曼相关系数-数值模拟-多目标规划-养老服务床位需求预测与运营模式研究-之数学建模
- 第八章:项目质量管理 - (8.0 项目质量管理是什么)
- php打印出来乱码_PHP输出中文乱码怎么解决?
- Vue网易云播放器开发
- CEX的梅克尔树储备证明是什么?
- 视频聊天网站的研究、发展以及趋势
- RestTemplate post提交方式的一些总结
- 注册宝网络验证系统,安全免费的网络验证系统
- 64位Windows 7 中最好的杀毒软件!
- VC++6.0安装教程
热门文章
- strictmath_Java StrictMath nextAfter()方法与示例
- MySQL 面试,必须掌握的 8 大核心点
- Linux(CentOS 7)安装docker
- php新建文件在指定目录下,PHP在获取指定目录下的目录,在获取的目录下面再创建文件,多平台...
- oracle截取字符串替换,oracle字符串操作:拼接、替换、截取、查找
- where is null mysql_SQL中WHERE变量IS NULL条件导致全表扫描问题的解决方法
- java @valid 密码不一致_一个成熟的Java项目如何优雅地处理异常
- 时分秒 java_JAVA 时分秒累加
- java 对象流传输socket_Java Socket(二)使用TCP传输对象
- win7系统更改密码策略的设置方法