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]#