• frp内网穿透


    原理

    在这里插入图片描述
    1、在公网中转服务器上面搭建FRP服务器。同时,在内网服务器上面安装FRP客户端。
    2、按照UP的FRP客户端配置文件进行说明。7000端口是FRP服务端开放的端口用来使得FRP客户端任意随机端口x1和FRP服务端建立连接和保持连接用的。而其中的remote_port=6000,local_port=22,意思是当FRP客户端在跟FRP服务端建立连接之后,客户端会一直告诉服务器端,请你在中转服务器的FRP服务中把6000端口打开,使得外网的电脑它的随机端口x2端口可以跟中转服务器的6000端口建立连接并传输数据所用。同时,FRP服务器会开启一个随机端口x3和FRP客户端的22端口相连,目的是为了从6000端口收到的数据从x3端口全部转给FRP内网客户端22端口。
    3、说的可能有些绕,总共三根线。
    第一根:FRP客户端X1端口连FRP服务端7000端口。作用建立跟保持连接。
    第二根:外网电脑X2端口连FRP服务端6000端口。作用连接并传输外网到内网的数据。
    第三根:FRP服务端X3端口连FRP客户端22端口。作用将6000收到的数据,转到自己身上的X3端口,再传给FRP客户端的22端口。
    总的来说开启22端口是为了SSH连接,那么同理要是内网服务器开启HTTP服务的话,那么FRP也可以进行代理的,只需要开启相应的端口就行。

    如果没有配置ssh,需要先配置ssh

    在这里插入图片描述
    ssh -V
    ssh安装成功
    在这里插入图片描述
    都改成自动
    在这里插入图片描述
    Get-Service -Name *ssh*
    在这里插入图片描述
    查看ssh是否默认监听22号端口
    netstat -an | findstr :22
    在这里插入图片描述
    ipconfig
    查看电脑的ip地址
    在这里插入图片描述
    局域网测试
    ssh "微软账号"@内网ip地址

    免密登录到pc

    在这里插入图片描述
    在本地创建公钥和私钥一路enter
    ssh-keygen
    在这里插入图片描述
    将本地公钥打开并复制
    在这里插入图片描述
    内网服务器在.ssh中创建authorized_keys.txt,粘贴到这里再将后缀去掉即可。
    如果是linux的本地想免密访问也是得先创建公钥私钥ssh-keygen,然后ls ~/.ssh查看公钥私钥,再vim .ssh位置的公钥复制粘贴到内网服务器的authorized_keys.txt,具体见如下操作。
    这里我有两个本地服务器,公钥都粘贴到这里了。
    在这里插入图片描述
    把后缀txt去掉
    在这里插入图片描述
    更改内网服务器的sshd_config配置
    在这里插入图片描述在这里插入图片描述
    重启sshd服务
    在这里插入图片描述
    然后测试免密登录即可
    ssh -p 6000 "微软登录邮箱"@公网ip

    内网穿透流程

    首先确定中转服务器开启6000和7000端口号
    在这里插入图片描述
    首先运行windows上的内网服务器frpc
    在这里插入图片描述
    填写中转服务器的公网ip地址
    在这里插入图片描述
    运行frp客户端
    frpc.exe -c ./frpc.ini
    在这里插入图片描述
    再运行linux的中转服务器frps服务端
    ./frps -c frps.ini
    在这里插入图片描述
    连接ssh
    ssh -p 6000 "微软登录邮箱"@公网ip
    输入密码后既可登录成功-》远程连接成功
    在这里插入图片描述

    frp自启动

    frps自启动

    增加自启动配置
    vim /lib/systemd/system/frps.service

    [Unit]
    Description=Frp Server Service
    After=network.target
    [Service]
    Type=simple
    User=root
    Restart=on-failure
    RestartSec=5s
    ExecStart=/root/frp_0.45.0_linux_amd64/frps -c /root/frp_0.45.0_linux_amd64/frps.ini
    LimitNOFILE=1048576
    [Install]
    WantedBy=multi-user.target
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    需要更改的位置,一个是你的linux服务器用户名,另外就是你的frps路径
    在这里插入图片描述
    systemctl daemon-reload
    systemctl enable frps
    systemctl start frps
    查看frps是否自启动成功
    systemctl status frpservice
    中转服务器frps自启动成功
    在这里插入图片描述

    frpc自启动

    新建frpc_autostart.bat
    在这里插入图片描述
    复制下面粘贴到新建的txt中,再去掉txt后缀
    不能自己退出

    @echo off
    if not defined TAG (
     set TAG=1
     start wt -p "cmd" %0
     exit
    )
    :home
    frpc -c frpc.ini
    goto home
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    能自己退出

    @echo off
    if not defined TAG (
     set TAG=1
     start wt -p "cmd" %0
     exit
    )
    @REM :home
    frpc -c frpc.ini
    @REM goto home
    exit
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    点击frpc_autostart.bat
    frpc自启动成功
    在这里插入图片描述
    测试连接
    ssh -p 6000 "微软登录邮箱"@公网ip

  • 相关阅读:
    【无标题】
    HALCON-从入门到入门-阈值分割定位算子综合运用
    经典进程同步问题
    SQL面试题练习 —— 用户行为路径分析
    Vue的生命周期跟我们一样,你知道吗?
    PMP®|项目经理如何应对项目需求变更?
    bf16 和fp16 ,fp32的区别以及相互转换逻辑
    如何在OrangePi AIpro智能小车上实现安全强化学习算法
    私域流量的变现方式,你知道多少?
    [12] 使用 CUDA 进行图像处理
  • 原文地址:https://blog.csdn.net/Jiaodaqiaobiluo/article/details/127971320