Unix系统用户登录及操作命令日志配置的方法
Unix操作系统有很多值得学习的地方,Unix系统用户登录、操作命令日志配置方法你了解多少呢?下面是相关的知识,欢迎阅读。
在SOC、审计、4A等项目中,经常需要解析 Unix系统的登录日志,以此进行分析用户登录行为,特别是在4A项目中,需要判定绕过堡垒主机的登录行为及操作。对于Unix系统来说,默认的 syslog配置并不会记录用户的操作过程,只有一个结果的日志。比如以下在Linux系统上添加用户:
[root@RHEL2 ~]# useradd -m bashuser1
在系统日志里会有如下,显示了以上命令的一个结果,但是对于命令本身是没有日志记录在syslog中的。
Feb 19 11:21:39 RHEL2 useradd[3534]: new group: name=bashuser1, GID=503
Feb 19 11:21:39 RHEL2 useradd[3534]: new user: name=bashuser1, UID=502, GID=503, home=/home/bashuser1, shell=/bin/bash
对于登录日志,其中Linux本身提供的'SSH、telnet日志,其中包含源IP、登录帐户等信息。但是HP-UX、Solaris、AIX提供的telnet日志是基于inetd的,日志信息中不包含登录帐户信息。如以下是Linux系统上telnet登录日志:
Feb 19 11:11:17 RHEL2 login: pam_unix(remote:session): session opened for user root by (uid=0)
Feb 19 11:11:17 RHEL2 login: ROOT LOGIN ON pts/4 FROM
其中日志信息包含了登录用户,登录IP,作为一个登录事件解析,变量是足够的。但是对于HP-UX、Solaris、AIX提供的telnet日志,只是一个session的建立日志,只有登录IP,没有登录用户,作为登录事件解析就缺少了关键的用户信息:
Feb 19 11:11:13 RHEL2 xinetd[2354]: START: telnet pid=3414 from=
因此,本文提出一种方法,统一所有Unix系统(Linux、HP-UX、Solaris、AIX、SuSe)的登录(ssh、telnet、rlogin)日志、操作命令日志,可以作为系统日志的有效补充。以下为配置好后的登录日志内容:
<13>bashuser: class="HOST_LOGIN" type="2" time="2011-06-29 10:44:03" src_ip="" dst_ip="" primary_user="" secondary_user="bashuser" operation="" content="login successful" authen_status="Success" log_level="1" sessionid="12182"
<13>bashuser: class="HOST_COMMAND" type="3" time="2011-06-29 10:44:03" src_ip="" dst_ip="" primary_user="" secondary_user="bashuser" operation="uname -a" content="command" authen_status="" log_level="1" sessionid="12182"
日志格式说明:
class:HOST_LOGIN,表示主机登录;HOST_COMMAND,表示主机操作命令;
time:用户登录主机时间;
src_ip:登录源IP地址;
dst_ip:主机地址;
primary_user:主账号,这个变量是引用堡垒主机的概念加的,在这里会永远为空值;
secondary_user:从账号,也就是主机上的账号,也是引用堡垒主机的概念加的;
operation:针对HOST_COMMAND类,是实际的操作命令内容;
content:表示结果,如登录成功或者命令;
session_id:这里引用的变量是$$变量值;
可以根据实际需要增加删除修改变量内容。
在讲实际配置前,我们大概需要了解各个UnixLinux以下方面的知识:
——各Unix系统服务启停、各Unix系统syslog配置;
——各Unix系统shell及shell启动文件;
——Login Shells, Interactive Shells;
——交互式shell和非交互式shell;
——Shell Setup Files — Which, Where, and Why
——In Unix, what startup and termination files do the various shells use?
——各Unix系统下的Shell编程、变量及引用、函数用法等
-
Win8.1专业版、核心板和企业版有什么区别
导语:win8.1的用户都有一个问题比较疑惑,Win8.1专业版、核心板和企业版有什么区别?小编给大家讲讲!Win8.1核心版(一般就称之为Windows8.1)+Win8.1专业版(称之为Windows8.1Pro),根据用户输入的序列号(就是Win8密钥)来区分安装。Win8.1企业版(称之为Windows8.1Enter...
-
计算机操作系统课程培训学习体会
xxxx年11月20-22日,我们有幸参加了教育部全国高校教师操作系统培训中心对国家精品课程《计算机操作系统课程》的课程培训,聆听了xxxx、xxxx两位教授的讲座,颇受启发,收获很多。回顾三天来的学习活动,深有感触;回顾反省自己以往的教学生活,感慨良多。可以说本次培训活...
-
Windows10系统删除Windows凭据实现方法
导语:Win10系统下的.凭据管理器是用来管理Web凭据以及Windows凭据的一个系统组件,进行维护工作时有时我们需要删除Windows凭据,那么如何进行操作实现呢?下面是小编给大家提供的Windows10系统删除Windows凭据实现方法,大家可以参考阅读,更多详情请关注应届毕业生考试...
-
linux正确重启MySQL的教程
由于是从源码包安装的Mysql,所以系统中是没有红帽常用的servciemysqldrestart这个脚本只好手工重启有人建议Killallmysql。这种野蛮的方法其实是不行的,强制终止的话,如果造成表损坏,损失是巨大的。这里推荐安全的重启方法$mysql_dir/bin/mysqladmin-uroot-pshutdo...