Docker内网穿透frp部署实现过程解析

1.创建配置文件目录

cd /home目录

mkdir frp

最后的目录结构:

2.创建服务端配置文件

vi frps.ini

[common]
bind_port = 17000
token = myToken
vhost_http_port = 10080
vhost_https_port = 10443

dashboard_port = 17500
dashboard_user = admin
dashboard_pwd = admin

tcp_mux = true
max_pool_count = 10

3.创建服务端yml文件

vi frps-docker-compose.yml

version: '3'
services:

  frps:
    image: snowdreamtech/frps
    ports:
      - "17000:17000"
      - "27500:17500"
      - "10022:10022" #用于ssh连接
      - "10080:10080" #用于开放给外网访问
      # 更多端口根据实际需求增加
    volumes:
      - ./frps.ini:/etc/frp/frps.ini container_name: frps

4.启动服务端

docker-compose -f frps-docker-compose.yml up 注意:开启后台运行-d

5.创建客户端配置文件

vifrpc.ini

[common]
#服务器ip
server_addr = x.x.x.x
server_port = 17000
token = myToken

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 10022
use_encryption = true
use_compression = true

[pi.mydomain.com]
type = http
local_port = 80
custom_domains = pi.mydomain.com

6.创建客户端yml文件

vi frpc-docker-compose.yml

version: '3'
services:
  frpc:
    image: cloverzrg/frpc-docker
    volumes:
      - ./frpc.ini:/conf/frpc.ini
    container_name: frpc
    network_mode: host

8.启动客户端

docker-compose -f frpc-docker-compose.yml up -d

  • 访问域名http://pi.mydomain.com:10080,可以正常访问网页(前提是客户端所在机器启动http服务器,并监听80端口);,注意先将 pi.mydomain.com的域名 A 记录解析到 IP x.x.x.x,如果服务器已经有对应的域名,也可以将 CNAME 记录解析到服务器原先的域名。
  • 通过ssh -p 10022 用户名@x.x.x.x远程连接;
  • 访问http:x.x.x.x:27500,可以看到仪表盘,里面显示了各个客户端的连接情况.

参考:https://liyangweb.com/service/358.html

frp中文文档:https://www.cnblogs.com/yanglang/p/12035934.html

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • docker for windows 容器内网通过独立IP直接访问的方法

    Docker官方推荐我们通过端口映射的方式把Docker容器的服务提供给宿主机或者局域网其他容器使用.一般过程是: 1.Docker进程通过监听宿主机的某个端口,将该端口的数据包发送给Docker容器 2.宿主机可以打开防火墙让局域网其他设备通过访问宿主机的端口进而访问docker的端口 但在实际使用中并不是很方便. 以下在win10环境中队DockerDocker容器通过独立IP暴露给局域网的方法进行记录. Docker的默认启动方式中,会产生一块虚拟网卡,然后容器内自行分配单独的网卡和IP.

  • 搭建docker内网私服的方法(docker-registry with nginx&ssl on centos)

    本文介绍了搭建docker内网私服的方法,分享给大家.具体如下: 主要思路: 1. Docker Registry 说明 关于如何创建和使用本地仓库,其实已经有很多文章介绍了.因为docker技术正处于发展和完善阶段,所以有些文章要么内容已经过时,要么给出了错误的配置,导致无法正常创建仓库.本文记录的是个人完整的搭建过程,docker version为1.1.2. 官方提供了Docker Hub网站来作为一个公开的集中仓库.然而,本地访问Docker Hub速度往往很慢,并且很多时候我们需要一个

  • Docker容器之内网独立IP访问的方法

    实验介绍 今天在学习Docker容器的时候,在虚拟机中创建并开启了一个nginx的container,然后通过端口映射的方法,即将container的80端口映射到虚拟机的80端口,然后在宿主机上通过访问虚拟机的IP从而访问到Docker容器的Nginx服务. 然后开始思考,能否通过分配给container一个独立的IP,然后在宿主机上访问这个独立IP从而访问Nginx服务.通过各种探索,百度,最终实现,下面开始实验,这里用的是虚拟机的NAT模式. 实验图解 实验实施 安装docker服务 [r

  • Docker镜像的制作,上传,拉取和部署操作(利用阿里云)

    由于学习过程中发现push镜像的时候一直超时,所以直接把阿里云的Docker仓库申请一个(管理中心–>创建镜像仓库–>我的是华东2绑定github账户即可),搞定!以后push就用这个仓库,pull的时候使用加速器,注意切换根据使用场景进行切换,dockerhub丢弃--记录了一下操作流程: 1.创建命名空间hhu(以当前学校为单位,只能小写,每个账号只能创建5个),创建菜鸟Docker镜像仓库docker1(绑定github中某个仓库,个人可以随意,这个仓库镜像就像是一个app,可以不断的更

  • docker内网搭建dns使用域名访问替代ip:port的操作

    比如我内网有个jenkins,我如果要访问它我得牢牢记住它的ip和端口,一个服务我还能记住,多个的话我可能需要一个方便记忆的域名记录一些内网服务 第1步: 准备好docker环境 第2步:下载好镜像 docker pull andyshinn/dnsmasq:2.75 第3步:运行dnsmasq #后台启动 docker run -d -p 53:53/tcp -p 53:53/udp --cap-add=NET_ADMIN --name dns-server andyshinn/dnsmasq

  • Docker容器上用DockerFile部署多个tomcat服务的步骤

    1. [admin@JD ~]$ cd opt #进入根目录下的opt 里 2. [admin@JD opt]$ mkdir web #创建Web 文件夹 3. [admin@JD web]$ cd web/ #进入web文件夹 4. [admin@JD web]$ touch Dockerfile #创建一个Dockerfile文件夹 名字不能错必须是这个名字否者检测不到 5. 利用三方工具将 tomcat 和 jdk的 上传到Web文件夹 6. [admin@JD web]$ vim Doc

  • 详解基于docker搭建lanproxy内网穿透服务

    文档更新说明 2018年04月06日 v1.0 内网穿透相信是后端开发者经常遇到的需求,可是怎么实现呢?其实有现成的服务:花生壳.ngrok等,但是,最近花生壳宣布,免费版的内网穿透将不支持80端口映射了,而免费版的ngrok也不够稳定,于是乎,我就开始需找新的解决方案了 本文使用了docker.nginx,要全部搞懂的话需要一定的后端基础(当然,基本上入个门就可以了),个人认为还是有一定阅读门槛的,但是你如果只是想把服务搭建起来,按照步骤来做是不难的 1.概述 内网穿透其实就是用服务器做一个中

  • docker容器内网络请求缓慢问题解决

    在使用docker的过程中发现了几个问题,在docker里进行的网络请求经常会失败,比如npm install以及bundle install等操作,或者是作为中间层在应用中去获取api数据的过程经常会出现timeout等情况,所以开始探究docker的网络机制,以解决网络请求太慢的问题. 一.docker的网络模式 1.none 当配置为none时,docker容器网络无法输入输出,与世隔绝. 2.bridge 默认为bridge模式,docker有自己的虚拟网卡,通过桥接的方式从主机获得网络

  • Docker内网穿透frp部署实现过程解析

    1.创建配置文件目录 cd /home目录 mkdir frp 最后的目录结构: 2.创建服务端配置文件 vi frps.ini [common] bind_port = 17000 token = myToken vhost_http_port = 10080 vhost_https_port = 10443 dashboard_port = 17500 dashboard_user = admin dashboard_pwd = admin tcp_mux = true max_pool_c

  • 高性能的内网穿透工具frp使用场景

    目录 什么是 frp 为什么使用 frp 安装 使用 使用场景 统一的服务端配置 SSH 连接内网服务器 暴露内网 HTTP 服务 TCP 类型 HTTP 类型 静态文件下载服务 本文将分享一个很好用的内网穿透工具 frp,以及一些具体的使用场景. 什么是 frp frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP.UDP.HTTP.HTTPS 等多种协议.可以将内网服务以安全.便捷的方式通过具有公网 IP 节点的中转暴露到公网. 为什么使用 frp 通过在具有公网 IP 的节点上

  • 公网使用SSH远程登录macOS服务器的过程(内网穿透)

    目录 前言 1. macOS打开远程登录 2. 局域网内测试ssh远程 3. 公网ssh远程连接macOS 3.1 macOS安装配置cpolar 3.2 获取ssh隧道公网地址 3.3 测试公网ssh远程连接macOS 4. 配置公网固定TCP地址 4.1 保留一个固定TCP端口地址 4.2 配置固定TCP端口地址 5. 使用固定TCP端口地址ssh远程 前言 macOS系统自带有Secure Shell 客户端,它可让您登录到侦听传入SSH连接的远程服务器和台式机.我们可以用ssh user

  • 使用Python+Flask开发博客项目并实现内网穿透

    目录 前言 1.个人的注册与登录模块 2.首页文章展示模块 3.文章详情展示模块 4.文章发布模块 5.文章添加分类模块 6.文章分类管理模块 7.文章管理模块 8.用户个人信息注销模块 9.信息管理模块 10.程序启动模块 11.内网穿透模块 12.总结 前言 Flask是一个使用python编写的轻量级Web框架,对比其他相同类型的框架而言,这个框架更加的灵活轻便.并且具有很强的定制性,用户可以根据自己的需求添加功能,有强大的插件库,这也是为什么这个框架在python领域一直火热的原因.这篇

  • 使用PLSQL远程连接Oracle数据库的方法(内网穿透)

    目录 1.前言 2.Oracle数据库的安装 2.1 Oracle下载安装 2.2 Oracle连接测试 2.3 Cpolar下载安装 3.Cpolar端口设置 3.1 Cpolar云端设置 3.2.Cpolar本地设置 4.公网访问测试 5.结语 1.前言 数据库作为十分重要的资料管理和存储库,一致都受到各软件大厂关注:而为了更好的管理和组织越来越庞大的数据库里的数据,又衍生出不同派系的数据模型(如关系和非关系.层次和网状模型.面向对象和半结构化等等),令人眼花缭乱.随着数据库在现代社会中的作

  • Nodejs实现内网穿透服务

    也许你很难从网上找到一篇从代码层面讲解内网穿透的文章,我曾搜过,未果,遂成此文. 1. 局域网内代理 我们先来回顾上篇,如何实现一个局域网内的服务代理?因为这个非常简单,所以,直接上代码. const net = require('net') const proxy = net.createServer(socket => { const localServe = new net.Socket() localServe.connect(5502, '192.168.31.130') // 局域网

  • 从web到内网渗透的一次过程详解

    目录 记一次从web到内网的渗透 拓扑图 环境介绍 渗透过程 target1 target2 taget3 记一次从web到内网的渗透 拓扑图 环境介绍 现在有三台机器,分别为target1,target2,target3,里面分别有三个flag,每个flag的分值不同,需要通过拿下一个已知IP(target1)进而向内网里面进行渗透,最终要成功获得三台主机权限 渗透过程 target1 使用nmap进行扫描 可以看到开启了80端口 浏览器访问目标靶机80端口 可以看到就是apache的默认页面

随机推荐