【问题标题】:K3S OpenVPN install (Raspberry Pi)K3S OpenVPN 安装(树莓派)
【发布时间】:2021-09-30 20:35:45
【问题描述】:

我开始使用 K3S,所以我绝对是菜鸟。现在我想知道如何自己创建 .yaml 文件或使用 docker 映像。 (找不到详细信息)

我想要一个 OpenVPN 或任何其他建议的 VPN 服务器运行,这样我就可以从任何地方访问我的家庭设备。如果有人能对我这么好,帮我一点忙,那会省很多麻烦和时间。

以前,我运行过一个 OpenVPN 服务器,当时我只有 1 个 Raspi。但看起来从安装到配置的一切都随着我的 k3s Kubernetes 集群而改变了。

我如何使用 Rancher 制作我的 k3s 集群:https://youtu.be/X9fSMGkjtug

尝试了 3 小时才弄明白,没有找到适合初学者的真正分步指南...

我已经运行了一个 Cloudflare ddns 脚本来使用正确的 IP 更新我的域。

非常感谢!

【问题讨论】:

    标签: kubernetes vpn openvpn k3s


    【解决方案1】:

    这里是 Open VPN 客户端 YAML 的示例

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: openvpn-client
    spec:
      selector:
        matchLabels:
          app: openvpn-client
          vpn: vpn-id
      replicas: 1
      template:
        metadata:
          labels:
            app: openvpn-client
            vpn: vpn-id
        spec:
          volumes:
            - name: vpn-config
              secret:
                secretName: vpn-config
                items:
                    - key: client.ovpn
                      path: client.ovpn
            - name: vpn-auth
              secret:
                secretName: vpn-auth
                items:
                    - key: auth.txt
                      path: auth.txt
            - name: route-script
              configMap:
                name: route-script
                items:
                  - key: route-override.sh
                    path: route-override.sh
            - name: tmp
              emptyDir: {}
          initContainers:
          - name: vpn-route-init
            image: busybox
            command: ['/bin/sh', '-c', 'cp /vpn/route-override.sh /tmp/route/route-override.sh; chown root:root /tmp/route/route-override.sh; chmod o+x /tmp/route/route-override.sh;']
            volumeMounts:
              - name: tmp
                mountPath: /tmp/route
              - name: route-script
                mountPath: /vpn/route-override.sh
                subPath: route-override.sh
          containers:
            - name: vpn
              image: dperson/openvpn-client
              command: ["/bin/sh","-c"]
              args: ["openvpn --config 'vpn/client.ovpn' --auth-user-pass 'vpn/auth.txt' --script-security 3 --route-up /tmp/route/route-override.sh;"]
              stdin: true
              tty: true
              securityContext:
                privileged: true
                capabilities:
                  add:
                    - NET_ADMIN
              env:
                - name: TZ
                  value: "Turkey"
              volumeMounts:
                - name: vpn-config
                  mountPath: /vpn/client.ovpn
                  subPath: client.ovpn
                - name: vpn-auth
                  mountPath: /vpn/auth.txt
                  subPath: auth.txt
                - name: tmp
                  mountPath: /tmp/route
            - name: app1
              image: python:3.6-stretch
              command:
                - sleep
                - "100000"
              tty: true
          dnsConfig:
            nameservers:
              - 8.8.8.8
              - 8.8.4.4
    

    您还可以阅读有关部署的更多信息:https://bugraoz93.medium.com/openvpn-client-in-a-pod-kubernetes-d3345c66b014

    您也可以使用 HELM Chart 进行相同的操作,这将通过 pre-madeKubernetes 上轻松设置任何内容/strong> YAML 脚本:https://itnext.io/use-helm-to-deploy-openvpn-in-kubernetes-to-access-pods-and-services-217dec344f13

    Docker Open VPN : https://github.com/dperson/openvpn-client

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-18
      • 2017-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-24
      相关资源
      最近更新 更多