Kubernetes/网络/内网穿透/Docker+IPSEC+FRP实现内网穿透.md
offends 7a2f41e7d6
All checks were successful
continuous-integration/drone Build is passing
synchronization
2024-08-07 18:54:39 +08:00

3.0 KiB

本文作者:丁辉

Docker+IPSEC+FRP实现内网穿透

服务器名称 IP
公网服务器 192.168.1.10
内网服务器 192.168.1.20

部署IPSEC

IPSEC官方文档

高级参数配置

  1. 配置用户密码以及密钥

    mkdir -p /opt/vpn
    
    cat > /opt/vpn/vpn.env << EOF
    VPN_IPSEC_PSK=demo
    VPN_USER=demo
    VPN_PASSWORD=demo
    EOF
    

    将 demo 替换成自己的 KEY、USER、PSSWORD

  2. 创建网络

    docker network create vpn
    
  3. 启动容器

    docker run \
      --network=vpn \
      --name ipsec-vpn-server \
      --restart=always \
      -v "/opt/vpn/vpn.env:/opt/src/env/vpn.env:ro" \
      -v /lib/modules:/lib/modules:ro \
      -d --privileged \
      hwdsl2/ipsec-vpn-server
    

    国内镜像地址

    registry.cn-hangzhou.aliyuncs.com/offends/frp:ipsec-vpn-server
    

部署FRP

本地客户端配置 Frpc

  1. 编写配置文件

    cat > /opt/vpn/frpc.ini << EOF
    [common]
    server_addr = 192.168.1.10 #填写frps的IP
    server_port = 7000 #填写frps的port
    
    [ipsec-500]
    type = udp
    local_ip = ipsec-vpn-server
    local_port = 500
    remote_port = 500
    
    [ipsec-4500]
    type = udp
    local_ip = ipsec-vpn-server
    local_port = 4500
    remote_port = 4500
    EOF
    
  2. 启动容器

    docker run --name frpc --restart=always \
      --net=vpn \
      -v "/opt/vpn/frpc.ini:/frp/frpc.ini:ro" \
      -d registry.cn-hangzhou.aliyuncs.com/offends/frp:frpc
    

公网服务端配置 Frps Server

  1. 编辑配置文件

    mkdir /opt/vpn
    
    cat > /opt/vpn/frps.ini << EOF
    [common]
    bind_port = 7000
    EOF
    
  2. 启动容器

    docker run --name frps --restart=always \
        -p 7000:7000 \
        -p 500:500/udp \
        -p 4500:4500/udp \
        -v "/opt/vpn/frps.ini:/frp/frps.ini:ro" \
        -d registry.cn-hangzhou.aliyuncs.com/offends/frp:frps
    

卸载清理

  1. 本地客户端清理

    docker rm -f frpc
    docker rm -f ipsec-vpn-server
    docker network rm vpn
    rm -rf /opt/vpn
    
  2. 公网服务端清理

    docker rm -f frps
    rm -rf /opt/vpn
    

电脑连接

  • MAC电脑配

    • 置打开 VPN 配置,添加使用 L2TP/IPSec 协议

    • 要记得勾选通过VPN连接发送所有流量

  • Windows电脑配置

    • 打开设置,添加 VPN 连接,使用 L2TP/IPSec 协议