zoukankan      html  css  js  c++  java
  • SSH端口转发

    SSH端口转发

    参考文档

    精美图片来自B站 | IBM上的完整实践 以及对他的整理 | 使用MOBAXTERM的实践

    概述

    1. 远程端口转发,使用-R参数,内网穿透

    2. 动态端口转发,使用-D参数,用作代理上网

    3. 本地端口转发,使用-L参数,是动态端口转发的阉割版本,只能转发指定的端口,用(wireshark?)监听?

    4. 其他参数,注意-g参数,加了这个参数局域网电脑可以访问配置过的电脑达到转发

      -f    要求 ssh在执行命令前退至后台.它用于当ssh准备询问口令或密语,但是用户希望它在后台进行.该选项隐含了-n选项.在远端机器上启动
      -N    不执行远程命令.用于转发端口.
      -C    要求进行数据压缩 (包括stdin, stdout, stderr以及转发X11和TCP/IP连接 的数据).压缩算法和gzip(1)的一样,协议第一版中,压缩级别 “level” 用CompressionLevel选项控制.压缩技术在modem线路或其他慢速连接上很有用,但是在高速网络上反而 可能降低速度.可以在配置文件中对每个主机单独设定这个参数.
      -g    允许远端主机连接本地转发的端口  
      -q    安静模式.消除所有的警告和诊断信息
      -T    禁止分配伪终端
      -n    把 stdin重定向到/dev/null (实际上防止从stdin读取数据).  ssh在后台运行时一定会用到这个选项.它的常用技巧是远程运行X11程序.
      

    中转ssh(server)的设置

    vi /etc/ssh/sshd_config
    
    AllowAgentForwarding yes		
    #AllowTcpForwarding yes
    GatewayPorts yes
    
    重启服务 service sshd restart
    

    远程端口转发(内网穿透)

    网络情况如下,我们可以使用这种形式访问到右边私网的8080,具体的设置可以看mobax的图更好

    ssh -R 12310:127.0.0.1:5500 root@xxx.com  # 在私网电脑运行,把5500端口映射为公网的12310端口
    

    本地端口转发

    访问我们本地机器A的a1端口相当于访问远程机器C的c1端口,中间由B机器转发

    动态转发

    这个好理解,就是代理上网

    保持持久的SSH链接的两种方法

    1. 在客户端配置

      vi /etc/ssh/ssh_config(注意不是/etc/ssh/sshd_config文件),后面添加
      Host *
      ServerAliveInterval 30
      

      这表示要让所有的ssh连接自动加上此属性;如果要指定服务端,如下:使用-o的参数ServerAliveInterval来设置一个防止超时的时间

      ssh -o ServerAliveInterval=30 IP地址 
      
      1. 编辑服务器 /etc/ssh/sshd_config,最后增加 ClientAliveInterval 60 ClientAliveCountMax 1 这 样,SSH Server 每 60 秒就会自动发送一个信号给 Client,而等待 Client 回应

    名词理解

    本地端口转发: 
    访问本地的端口比如 localhost:10000 相当于访问远端的端口 xx.xx.xx.xx:22
    远程端口转发: 内网穿透
    访问远程的端口xx.xx.xx.xx:33389 相当于访问远程端口相连的一个机器的某个端口比如3389  ssh建立方式是从相连机器发起到远程的云主机的
    动态端口转发: 代理上网 这里可以做tcp抓包应该
    访问本地的端口的数据,都是相当于使用远程云主机去访问
    Ssh 链接是本地到云主机
    
    Local port forwarding – connections from an SSH client are forwarded, 
    							via the SSH server, to a destination server;
    Remote port forwarding – connections from an SSH server are forwarded, 
    							via the SSH client, to a destination server;
    Dynamic port forwarding – connections from various programs are forwarded, 
    							via the SSH client to an SSH server, 
    							and finally to several destination servers;
    
    
  • 相关阅读:
    poj 3528 (三维几何求凸包+凸包表面积)
    dijkstra模板(好像是斐波那契额堆优化,但我为什么看起来像优先队列优化,和spfa一样)
    最大空凸包模板
    ICPC 2017–2018, NEERC, Northern Subregional Contest St Petersburg, November 4, 2017 I题
    hdu 5248 序列变换
    hdu 2063(二分图模板测试)
    组合数
    85. Maximal Rectangle 由1拼出的最大矩形
    750. Number Of Corner Rectangles四周是点的矩形个数
    801. Minimum Swaps To Make Sequences Increasing 为使两个数组严格递增,所需要的最小交换次数
  • 原文地址:https://www.cnblogs.com/zongzi10010/p/12539785.html
Copyright © 2011-2022 走看看