/etc/profile 记录用户登录IP
2018-01-24 18:18
274 查看
云服务器 ECS Linux 如果要保存用户登录操作记录,则可以通过在 /etc/profile 进行相关配置来实现。在 /etc/profile 最下方添加以下信息,唯一修改的地方就是 LOG_DIR 对应的目录位置,默认或根据需要保存的目录进行相应修改即可。添加后需要执行 source /etc/profile 使其生效。
说明:此日志需要重新登录后才可以看到。
/var/log/history 就是日志保存目录,此目录下的 root 目录保存的是 root 用户的操作记录。
文件名称 123.118.247.191-20150928_213321 代表登录 IP 为 123.118.247.191 登录日期为 2015年09月28日21点33分21秒,里面记录的就是登录后执行的操作命令。
日志输出示例:
=================================================================================
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`if [ "$USER_IP" = "" ]thenUSER_IP=`hostname`fiif [ ! -d /tmp/history ]thenmkdir /tmp/historychmod 777 /tmp/historyfiif [ ! -d /tmp/history/${LOGNAME} ]thenmkdir /tmp/history/${LOGNAME}chmod 300 /tmp/history/${LOGNAME}fiif [ ! -d /tmp/history/${LOGNAME}/${USER_IP} ]thenmkdir -p /tmp/history/${LOGNAME}/${USER_IP}fiexport HISTSIZE=4096DT=`date +"%Y%m%d_%H%M%S"`export HISTFILE="/tmp/history/${LOGNAME}/${USER_IP}-history.$DT"chmod 600 /tmp/history/${LOGNAME}/*history* 2>/dev/null[ -f /tmp/history/${LOGNAME}/${USER_IP}-history* ] && mv /tmp/history/${LOGNAME}/${USER_IP}-history* /tmp/history/${LOGNAME}/${USER_IP}/
添加以上到/etc/profile
pkill -kill -t pts/3cat /etc/hosts.denysshd:ALLcat /etc/hosts.allowsshd:172.x.x.:allowsshd:10.200.:allow
非法ip通过ssh成功登录,自动结束会话在root用户下添加编辑 ~/.bashrc
userlogin=`echo $SSH_CONNECTION | awk '{print $1}'` #获取登录用户的ip地址
nodenyuser=192.168.10.111 #允许登录的ip地址
nodenyuser1=192.168.10.123
if [ $userlogin != $nodenyuser ] ; then #判断是否为禁止的ip地址
if [ $userlogin != $nodenyuser1 ] ; then
echo "deny"
userclient=`w | grep -v grep | grep $userlogin | awk '{print $2}'`
echo $userclient
ps -ef | grep $userclient | grep -v grep | grep sshd | awk '{print $2}' | xargs -I {} kill -9 {} # 如果是禁止的ip地址直接结束会话
fi
fi
LOGIP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'` LOG_DIR=/var/log/historyif [ -z $LOGIP ]thenLOGIP=`hostname`fiif [ ! -d $LOG_DIR ]thenmkdir -P $LOG_DIRchmod 777 $LOG_DIRfiif [ ! -d $LOG_DIR/${LOGNAME} ]thenmkdir -P $LOG_DIR/${LOGNAME}chmod 300 $LOG_DIR/${LOGNAME}fiexport HISTSIZE=4096 LOGTM=`date +"%Y%m%d_%H%M%S"`export HISTFILE="$LOG_DIR/${LOGNAME}/${LOGIP}-$LOGTM"chmod 600 $LOG_DIR/${LOGNAME}/*-* 2>/dev/null修改示例:
说明:此日志需要重新登录后才可以看到。
/var/log/history 就是日志保存目录,此目录下的 root 目录保存的是 root 用户的操作记录。
文件名称 123.118.247.191-20150928_213321 代表登录 IP 为 123.118.247.191 登录日期为 2015年09月28日21点33分21秒,里面记录的就是登录后执行的操作命令。
日志输出示例:
=================================================================================
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`if [ "$USER_IP" = "" ]thenUSER_IP=`hostname`fiif [ ! -d /tmp/history ]thenmkdir /tmp/historychmod 777 /tmp/historyfiif [ ! -d /tmp/history/${LOGNAME} ]thenmkdir /tmp/history/${LOGNAME}chmod 300 /tmp/history/${LOGNAME}fiif [ ! -d /tmp/history/${LOGNAME}/${USER_IP} ]thenmkdir -p /tmp/history/${LOGNAME}/${USER_IP}fiexport HISTSIZE=4096DT=`date +"%Y%m%d_%H%M%S"`export HISTFILE="/tmp/history/${LOGNAME}/${USER_IP}-history.$DT"chmod 600 /tmp/history/${LOGNAME}/*history* 2>/dev/null[ -f /tmp/history/${LOGNAME}/${USER_IP}-history* ] && mv /tmp/history/${LOGNAME}/${USER_IP}-history* /tmp/history/${LOGNAME}/${USER_IP}/
添加以上到/etc/profile
pkill -kill -t pts/3cat /etc/hosts.denysshd:ALLcat /etc/hosts.allowsshd:172.x.x.:allowsshd:10.200.:allow
非法ip通过ssh成功登录,自动结束会话在root用户下添加编辑 ~/.bashrc
userlogin=`echo $SSH_CONNECTION | awk '{print $1}'` #获取登录用户的ip地址
nodenyuser=192.168.10.111 #允许登录的ip地址
nodenyuser1=192.168.10.123
if [ $userlogin != $nodenyuser ] ; then #判断是否为禁止的ip地址
if [ $userlogin != $nodenyuser1 ] ; then
echo "deny"
userclient=`w | grep -v grep | grep $userlogin | awk '{print $2}'`
echo $userclient
ps -ef | grep $userclient | grep -v grep | grep sshd | awk '{print $2}' | xargs -I {} kill -9 {} # 如果是禁止的ip地址直接结束会话
fi
fi
相关文章推荐
- /etc/profile 记录登录IP
- 通过登陆IP记录Linux所有用户登录所操作日志的方法
- 按时按登录IP记录Linux所有用户操作日志的方法(附脚本)
- 通过登陆IP记录Linux所有用户登录所操作的日志
- 在linux中每个用户登录都会执行脚本/etc/profile
- 实现“记录用户登录时间和退出时间,同时记录用户IP,并且要记录用户IP对应的省和城市地址”
- 通过登陆IP记录Linux所有用户登录所操作的日志
- widows 创建哪些用户曾经远程登录我的服务器的IP记录的脚本
- shell脚本自动记录登录用户ip和历史命令
- 通过登入IP记录Linux所有用户登录所操作的日志
- Linux下文件 ~/.bashrc 和 ~/.bash_profile 和 /etc/bashrc 和 /etc/profile 的区别 | 用户登录后加载配置文件的顺序
- linux history 记录 时间 ip 登录用户
- 按时按登录IP记录Linux所有用户操作日志的方法(附脚本)
- Linux下文件 ~/.bashrc 和 ~/.bash_profile 和 /etc/bashrc 和 /etc/profile 的区别 | 用户登录后加载配置文件的顺序
- Linux--记录每个用户登录后的IP信息,还有其它的操作信息
- 通过登入IP记录Linux所有用户登录所操作的日志
- 通过登陆IP记录Linux所有用户登录所操作的日志
- 通过登入IP记录Linux所有用户登录所操作的日志
- 按时按登录IP记录Linux所有用户操作日志的方法(附脚本)
- 通过登陆IP记录Linux所有用户登录所操作的日志