1、首先创建存放日志的文件夹并开放读写权限
mkdir /var/log/jump/
chmod -R 777 /var/log/jump/
2、将原有ssh程序修改为另外一个名字,然后创建一个执行脚本,脚本中调用原来的ssh程序,只是在调用的时候添加了之前说的tee命令
mv /usr/bin/ssh /usr/bin/ori
vi /usr/bin/ssh
新建ssh文件内容如下:
1 #! /bin/sh
2
3 mkdir -p /var/log/jump/$(whoami)
4
5 echo $1 | grep @ &>/dev/null && IP=$(echo $1 | awk -F '@' '{print $2}') || IP=$1
6
7 LOGNAME=${IP}_$(date +"%F_%T")
8
9 ori $1 | tee -a /var/log/jump/$(whoami)/${LOGNAME}.log
脚本中首先将访问IP提取出来,然后根据IP和当前时间戳决定日志文件名称,最后调用原有ssh程序(添加tee命令功能)
3、添加执行权限
chmod a+x /usr/bin/ssh
ps: /usr/bin/ssh 必须重命名为一个三个字符的名字,要不然会影响scp使用,同时需要将scp命令中所有ssh替换成ori
[root@Jump-server jump]# ls -l /var/log/jump/
total 32
drwxrwxr-x. 2 xxx01 xxx01 4096 Jan 15 09:47 xxx01
drwxr-xr-x. 2 root root 4096 Jan 15 11:04 root
drwxrwxr-x. 2 xxx02 xxx02 4096 Jan 14 17:24 xxx02
drwxrwxr-x. 2 xxx03 xxx03 20480 Jan 14 20:39 xxx03
[root@Jump-server jump]#
[root@Jump-server jump]# ls -l /var/log/jump/xxx01/
total 52
-rw-rw-r--. 1 xxx01 xxx01 0 Jan 14 14:01 127.0.0.1_2019-01-14_14:01:50.log
-rw-rw-r--. 1 xxx01 xxx01 0 Jan 14 14:43 172.17.0.11_2019-01-14_14:43:52.log
-rw-rw-r--. 1 xxx01 xxx01 0 Jan 14 14:44 172.17.0.11_2019-01-14_14:44:18.log
-rw-rw-r--. 1 xxx01 xxx01 43624 Jan 14 17:25 172.17.0.11_2019-01-14_14:48:08.log
-rw-rw-r--. 1 xxx01 xxx01 679 Jan 15 09:47 172.19.1.43_2019-01-15_09:47:14.log
[root@Jump-server jump]# cat /var/log/jump/xxx01/172.19.1.43_2019-01-15_09\:47\:14.log
Last login: Mon Jan 14 19:59:45 2019 from 172.19.1.251
[root@HK-arrow-monitor01 ~]# ll
total 68
-rw-r--r--. 1 root root 364 Jan 14 19:59 11.sh
-rw-r--r--. 1 root root 724 Jan 14 19:59 1.sh
drwxr-xr-x. 25 root root 4096 Jan 14 12:28 AgentShell
-rw-------. 1 root root 4066 Jan 3 16:08 anaconda-ks.cfg
-rw-r--r--. 1 root root 29631 Jan 3 16:08 install.log
-rw-r--r--. 1 root root 7572 Jan 3 16:06 install.log.syslog
drwxr-xr-x. 8 root root 4096 Jan 10 09:17 install_produce
-rw-r--r--. 1 root root 301 Jan 14 17:04 sh.sh
[root@HK-arrow-monitor01 ~]# [root@Jump-server jump]#
来源:oschina
链接:https://my.oschina.net/u/4350001/blog/3675965