编译bash通过Rsyslog记录执行命令日志,并将日志发送到Elastic Stack,实现history审计

此前考虑通过PROMPT_COMMAND环境变量实现history审计,后来发现存在各种问题,就如使用su切换用户时,前后执行的命令不能被准确记录。

看了许多文章,最终找到一种相对完善的处理方法,就是通过编译bash,由Rsyslog记录执行命令日志。之后配置实时将日志数据输出到Elastic Stack,在Kibana上可以监控终端上执行的每一条命令,或对日志数据作分析和审计。

继续阅读“编译bash通过Rsyslog记录执行命令日志,并将日志发送到Elastic Stack,实现history审计”

代码块尾部多出空白行的解决过程

如上图所示,代码块的尾部莫名多出一行空白行。其实这个问题已经有好几个月了,此前偶然用IE打开网站,发现了这个问题。由于在 Chrome 中并没有此问题,一直也就没有深究。

昨天下午突然收到 Email,被告知 WordPress 程序已自动升级,What?! WordPress 居然还会自动升级!用 Chrome 打开网站检查页面,发现 Chrome 中也出现了空白行问题。也不知道是 WordPress 版本升级的问题,还是新版本 Chrome 的问题,反正这个问题是必须解决了。

继续阅读“代码块尾部多出空白行的解决过程”

使用pip查找指定python程序包的所有可安装版本

系统版本:

[root@centos76d77 14:56 ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 
[root@centos76d77 14:56 ~]# uname -r
3.10.0-957.el7.x86_64

 

[root@centos76d77 14:56 ~]# python3.4
Python 3.4.10 (default, Apr  8 2019, 02:17:36) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

[root@centos76d77 17:59 ~]# pip3.4 search ipython
....
ipython (7.5.0) - IPython: Productive Interactive Computing

本机使用的python版本较老(3.4),最高仅能支持ipython 6.x,而pip中默认提供的ipython版本为7.5.0

继续阅读“使用pip查找指定python程序包的所有可安装版本”

Vim的全局命令g

全局命令:g在Vim中有着意想不到强大的功能。当想要在整个文件中对于匹配的行或者非匹配行进行一些操作时,应该第一时间想到这个:g命令

:[range]global[!]/{pattern}/{command}

可以简写为

:[range]g/pattern/command
  • [range]指定文本范围,默认为整个文档
  • pattern在范围range内的行如果匹配pattern,则执行command
  • !表示取反,也就是不匹配的行,也可以使用vglobal
  • command默认是打印文本

继续阅读“Vim的全局命令g”