• 配置frp实现内网穿透并注册服务实现开机自启。


    十分钟教你配置frp实现内网穿透

    一、frp的作用

    利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。
    对于 http, https 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口。
    利用处于内网或防火墙后的机器,对外网环境提供 tcp 和 udp 服务,例如在家里通过 ssh 访问处于公司内网环境内的主机。

    二、配置说明

    1、实现功能

    (1)外网通过ssh访问内网机器

    (2)自定义绑定域名访问内网web服务

    2、配置前准备

    (1)公网服务器1台

    (2)内网服务器1台(我这里演示的是linux环境,win10上面vmware安装的centos7)

    (3)公网服务器绑定域名1个(实现二1中(1)功能不需要公网服务器绑定域名,二1中(2)功能必须需要公网服务器绑定域名)

    (4)内网服务器部署一个web服务,可以用tomcat模拟,这里就不演示了

    三、安装frp

    1、公网服务器与内网服务器都需要下载frp进行安装,公网服务器(服务端)配置关注步骤6,内网服务器(客户端)关注步骤7

    2、下载地址是 https://github.com/fatedier/frp/releases,下载linux版本frp_0.13.0_linux_amd64.tar.gz,

    wget https://github.com/fatedier/frp/releases/download/v0.13.0/frp_0.13.0_linux_amd64.tar.gz

    3、新建目录mkdir -p /opt/frp/,上传frp_0.13.0_linux_amd64.tar.gz至linux服务器该目录下

    4、解压tar -zxvf  frp_0.13.0_linux_amd64.tar.gz

    5、进入解压目录cd frp_0.13.0_linux_amd64,这里主要关注4个文件,分别是frpc、frpc.ini和frps、frps.ini,前者两个文件是客户端所关注文件,后者两个文件是服务端所关注两个文件。

    6、配置服务端(公网服务器),首先删掉frpc、frpc.ini两个文件,然后再进行配置,vi ./frps.ini,

    1. [common]
    2. bind_port = 7000 #与客户端绑定的进行通信的端口
    3. vhost_http_port = 6081 #访问客户端web服务自定义的端口号

    7、配置客户端(内网服务器),首先删掉frps、frps.ini两个文件,然后再进行配置,vi ./frpc.ini

    1. [common]
    2. server_addr = 120.56.37.48 #公网服务器ip
    3. server_port = 7000 #与服务端bind_port一致
    4. #公网通过ssh访问内部服务器
    5. [ssh]
    6. type = tcp #连接协议
    7. local_ip = 192.168.3.48 #内网服务器ip
    8. local_port = 22 #ssh默认端口号
    9. remote_port = 6000 #自定义的访问内部ssh端口号
    10. #公网访问内部web服务器以http方式
    11. [web]
    12. type = http #访问协议
    13. local_port = 8081 #内网web服务的端口号
    14. custom_domains = repo.iwi.com #所绑定的公网服务器域名,一级、二级域名都可以

    保存然后执行./frpc -c ./frpc.ini启动,这是前台启动,后台启动命令为nohup ./frpc -c ./frpc.ini &

     四:注册成服务

    1. [root@prd_web1 ~]# vim /usr/lib/systemd/system/frp.service
    2. [root@prd_web1 ~]# cat /usr/lib/systemd/system/frp.service
    3. [Unit]
    4. Description=frpc daemon
    5. After=syslog.target network.target
    6. Wants=network.target
    7. [Service]
    8. Type=simple
    9. ExecStart=/opt/frp/frp_0.19.0_linux_386/frpc -c /opt/frp/frp_0.19.0_linux_386/frpc.ini
    10. Restart= always
    11. RestartSec=30
    12. ExecStop=/usr/bin/killall frpc
    13. [Install]
    14. WantedBy=multi-user.target

    五:设置开机自启动

    1. systemctl daemon-reload
    2. systemctl enable frp

    六:启动

    1. systemctl start frp
    2. ps aux |grep frp

  • 相关阅读:
    Saas.弹性架构设计思考
    【c++设计模式之中介者模式】分析及示例
    记录一个出现多次的小BUG:用串口读的数据,只能有一次赋值
    Vim实用技巧_8.替换(substitute)和global命令
    矩阵类问题处理技巧
    Python中的Paramiko与FTP文件夹及文件检测技巧
    SpringBoot初级开发--服务请求(GET/POST)所有参数的记录管理(8)
    【c语言】推箱子
    交叉熵函数和KL散度函数
    AD2021软件原理图方面介绍,一些参数设置和使用
  • 原文地址:https://blog.csdn.net/m0_54434140/article/details/128202595