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文件内容如下:    
 #! /bin/sh  

 mkdir -p /var/log/jump/$(whoami)

 echo $ | grep @ &>/dev/null && IP=$(echo $ | awk -F '@' '{print $2}') || IP=$

 LOGNAME=${IP}_$(date +"%F_%T")

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

ssh 跳板机部署的更多相关文章

  1. 封装带SSH跳板机的MYSQL

    一.封装带SSH跳板机的MYSQL 二.配置settting import pymysql from sshtunnel import SSHTunnelForwarder class MyDb(ob ...

  2. Jmeter JDBC请求-----数据库读取数据进行参数化 通过SSH跳板机连接数据库

    前期准备: jdbc驱动:mysql-connector-java-5.1.7-bin.jar Jmeter 要链接MySQL数据库,首选需要下载mysql jdbc驱动包(注:驱动包的版本一定要与你 ...

  3. mysql ssh 跳板机(堡垒机???)连接服务器

    跳板机(Jump Server),也称堡垒机,是一类可作为跳板批量操作远程设备的网络设备,是系统管理员或运维人员常用的操作平台之一. 正常的登录流程 使用ssh命令登录跳板机: 登录跳板机成功后,在跳 ...

  4. 13、ssh跳板机

    13.1.前提条件: 1.跳板机服务器和其它服务器建立了ssh秘钥登录: 2.目前的环境: (1)各服务器上都建立了lc用户,并给于sudo (lc ALL= NOPASSWD:ALL )权限,lc就 ...

  5. 封装带SSH跳板机的REDIS

    一.封装ssh的redis 二.setting的配置 三.应用示例 import redis from sshtunnel import SSHTunnelForwarder from conf.se ...

  6. 使用pycharm、跳板机连接内网服务器

    使用pycharm.跳板机连接内网服务器 接手实验室服务器后,大部分同学在GPU集群上跑程序都是直接在ssh界面上跑,这里想着通过pycharm通过跳板机来连接服务器. 总体就是实验室服务器仅限内网访 ...

  7. 【自动部署】Ansible 怎么通过堡垒机/跳板机 访问目标机器

    Ansible机器的 /root/.ssh/config 配置如下即可:Host 目标机器IP User root IdentityFile=/root/.ssh/xxx_id_rsa ProxyCo ...

  8. navicat使用跳板机连接数据库-ssh

    1. 目标数据库的域名/IP,端口,用户名,密码:如图1 2. 这时候不要点OK!选择SSH这个tab 3. 选中User SSH Tunnel:填写跳板机域名/IP,用户名,密码(注意:端口22不要 ...

  9. jmeter连接配置带跳板机(SSH)的mysql服务器

    jmeter连接配置mysql服务器时,如果数据库服务器没有通过ssh连接,则只需要配置相应的jdbc参数就可以了,即请求域名或ip地址:3306,如果数据库服务器是通过SSH连接的,那需要通过中间远 ...

随机推荐

  1. Github Desktop 克隆新项目 Authentication failed. You may not have permission to access the repository or the repository may ha

    原来:ssh://git@github.com/xxx.git 改成:https://git@github.com/xxx.git

  2. 关于 atcoder 页面美化的 css

    使用方式 把下面代码加入 ESI Stylish 即可. 这是一个 chrome 的插件,可以翻\(~\)墙(或者不需要)去下载. 这是本人瞎魔改的... 代码 Update on 12-17 \(a ...

  3. Luogu P5290 / LOJ3052 【[十二省联考2019]春节十二响】

    联考Day2T2...多亏有这题...让我水了85精准翻盘进了A队... 题目大意: 挺简单的就不说了吧...(这怎么简述啊) 题目思路: 看到题的时候想了半天,不知道怎么搞.把样例画到演草纸上之后又 ...

  4. python中无法被转化为set的list[list组成的list]

    arr = [[a],[b]] set(arr) output: Traceback (most recent call last): File "<stdin>", ...

  5. 源码分析-AutoCloseable

    AutoCloseable 该接口用于try-with-resources语法糖提供支持,用于自动关闭资源作用 类型:接口 方法:close(); 详解: close():用于自动关闭资源的时候需要进 ...

  6. JavaWeb基础之Servlet简单实现用户登陆

    学习javaweb遇到了一些坑,一些问题总结下来,记个笔记. 学习servlet遇到的一些坑: servlet实现用户登陆遇到的坑解决办法: https://www.cnblogs.com/swxj/ ...

  7. Electron一学习资源收集和练习demo

    1.近日为了做项目查资料学习electron,简直头都要炸了,就官方的electron-quick-start的例子进行了基本的练习之后,不断的查资料终于发现一些有用的demo来看源代码学习,一遍看代 ...

  8. Python中Scrapy框架元素选择器XPath的简单实例

    原文标题:<Python网络爬虫-Scrapy的选择器Xpath> 对原文有所修改和演绎 优势 XPath相较于CSS选择器,可以更方便的选取 没有id class name属性的标签 属 ...

  9. Django 子程序

    在Web应用中,通常有一些业务功能模块是在不同的项目中都可以复用的,故在开发中通常将工程项目拆分为不同的子功能模块,各功能模块间可以保持相对的独立,在其他工程项目中需要用到某个特定功能模块时,可以将该 ...

  10. YSLOW(一款实用的网站性能检测工具)

     概述 YSlow是Yahoo发布的一款基于FireFox的插件,这个插件可以分析网站的页面,并告诉你为了提高网站性能,如何基于某些规则而进行优化.  安装  官网:http://yslow.org/ ...