ubuntu docker openvpn

16:41 2023/8/15

docker run [options] [image_name]:创建并启动一个容器。

docker ps:列出当前正在运行的容器。

docker stop [container_name/container_id]:停止一个容器。

docker rm [container_name/container_id]:删除一个容器。

docker logs [container_name/container_id]:查看容器的日志。

docker exec [options] [container_name/container_id] [command]:在容器中运行一个命令。

docker commit [container_name/container_id] [new_image_name]:将一个容器保存为一个新的镜像。

docker save [image_name] > [path/to/save]:将一个镜像保存到本地。

docker load < [path/to/image]:将一个镜像加载到Docker中。

docker search ubuntu

!!!

docker pull ubuntu

docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest

docker exec -it container_name /bin/bash

docker load -i /path/to/destination/file.tar.gz

-p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口

docker run --name nginx-test -p 8080:80 -d nginx

!!!

docker run -itd --name ubuntu-test -p 1194:1194 ubuntu

!!!

docker exec -it ubuntu-test /bin/bash

docker exec -it openvpn /bin/bash

docker exec -it openvpn-ubuntu /bin/bash

!!!

docker rmi hello-world

test

docker run --volumes-from ovpn-data --rm -p 1194:1194/udp --cap-add=NET_ADMIN kylemanna/openvpn

!!!拷贝文件

tar -xzvf openvpn-server-bak.tar.gz -C /

docker cp /etc/openvpn/ 5a37e395d597:/etc/

根据image修改名称和tag

docker tag 5a37e395d597 ubuntu:v1

docker commit [容器id] [起一个镜像名]

docker commit openvpn-ubuntu u:v4

docker save [镜像id] > [文件名.tar]

docker save -o [文件名.tar] [镜像id]

docker load < 文件名.tar

docker自动启动!!!!!!!!!!!!!!!!

docker update --restart=always nginx-test

okokok!!!

docker run -itd -p 1194:1194 --cap-add=NET_ADMIN --name openvpn-ubuntu u:v4 "/etc/iptables/ss.sh"

docker exec -it openvpn-ubuntu /bin/bash

docker内的启动脚本

vi /etc/iptables/ss.sh

#!/bin/bash

mkdir -p /dev/net

mknod /dev/net/tun c 10 200

chmod 600 /dev/net/tun

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

cd /etc/openvpn

/usr/sbin/openvpn --config /etc/openvpn/server.conf

!!!!

apt-get install iputils-ping

!!!!!

mkdir -p /dev/net

mknod /dev/net/tun c 10 200

chmod 600 /dev/net/tun

请试试这个 Dockerfile:

FROM ubuntu:16.04

RUN apt-get update && \

apt-get clean && apt-get -y update && apt-get install -y locales curl && \

apt-get install -y php apache2 curl openvpn zip unzip bridge-utils && \

apt-get install nano && \

mkdir -p /dev/net && \

mknod /dev/net/tun c 10 200 && \

chmod 600 /dev/net/tun

COPY tcp /etc/openvpn

EXPOSE 8888

CMD openvpn --config /etc/openvpn/Belgium.Brussels.TCP.ovpn

路由防火墙

docker iptables详解_风神修罗使的博客-CSDN博客 https://blog.csdn.net/WuLex/article/details/130193920

基于Docker搭建OpenVPN服务器 | 魔のkyo的BLOG http://www.kyo86.com/2022/10/08/openvpn/

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

docker部署openvpn - 码农教程 http://www.manongjc.com/detail/64-rvungbvqhbiyqdz.html

docker部署openvpn

时间:2022-11-07

本文章向大家介绍docker部署openvpn,主要内容包括拉取openvpn镜像、创建目录、生成配置文件、生成密钥文件、生成客户端证书、导出客户端配置、启动openvpn、openvpn用户管理、删除用户脚本、添加用户、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

拉取openvpn镜像

docker pull chenji1506/openvpn:2.4.8

创建目录

mkdir -pv /data/openvpn/conf

生成配置文件

1.1.1.1是本机的公网IP,按需改成自己的IP

docker run -v /data/openvpn:/etc/openvpn --rm chenji1506/openvpn:2.4.8 ovpn_genconfig -u udp://1.1.1.1

生成密钥文件

要求输入私钥密码

docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 ovpn_initpki

Enter PEM pass phrase: 123456 # 输入私钥密码

Verifying - Enter PEM pass phrase: 123456 # 重新输入一次密码

Common Name (eg: your user,host,or server name) [Easy-RSA CA]: # 输入一个CA名称。可以不用输入,直接回车

Enter pass phrase for /etc/openvpn/pki/private/ca.key: 123456 # 输入刚才设置的私钥密码,完成后在输入一次

生成客户端证书

chenji改成其他名字

docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa build-client-full chenji nopass

Enter pass phrase for /etc/openvpn/pki/private/ca.key: 123456 # 输入刚才设置的密码

导出客户端配置

docker run -v /data/openvpn:/etc/openvpn --rm chenji1506/openvpn:2.4.8 ovpn_getclient chenji > /data/openvpn/conf/chenji.ovpn

启动openvpn

docker run --name openvpn -v /data/openvpn:/etc/openvpn -d -p 1194:1194/udp --cap-add=NET_ADMIN chenji1506/openvpn:2.4.8

openvpn用户管理

添加用户脚本

vim add_user.sh

#!/bin/bash

read -p "please your username: " NAME

docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa build-client-full $NAME nopass

docker run -v /data/openvpn:/etc/openvpn --rm chenji1506/openvpn:2.4.8 ovpn_getclient NAME \> /data/openvpn/conf/"NAME".ovpn

docker restart openvpn

删除用户脚本

vim del_user.sh

#!/bin/bash

read -p "Delete username: " DNAME

docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa revoke $DNAME

docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 easyrsa gen-crl

docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 rm -f /etc/openvpn/pki/reqs/"DNAME".req

docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 rm -f /etc/openvpn/pki/private/"DNAME".key

docker run -v /data/openvpn:/etc/openvpn --rm -it chenji1506/openvpn:2.4.8 rm -f /etc/openvpn/pki/issued/"DNAME".crt

docker restart openvpn

添加用户

./add_user.sh # 输入要添加的用户名,回车后输入刚才创建的私钥密码

创建的证书在/data/openvpn/conf/目录下

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

相关推荐
东风微鸣1 小时前
AI 赋能的故障排除:技术趋势与实践
docker·云原生·kubernetes·可观察性
KubeSphere 云原生1 小时前
云原生周刊:2025年的服务网格
云原生
Etual1 小时前
云原生联调利器:Telepresence实战
云原生
FJW02081415 小时前
负载均衡集群HAproxy
linux·服务器·云原生·负载均衡
杰克逊的日记16 小时前
k8s的csi对接GPFS
云原生·容器·kubernetes·存储·gpfs
cici1587419 小时前
Docker搭建Hadoop集群
hadoop·docker·eureka
容器魔方20 小时前
「中科类脑」正式加入 Karmada 用户组!携手社区共建多集群生态
云原生·容器·云计算
小醉你真好20 小时前
7、Docker 常用命令大全
docker·容器·eureka
null不是我干的1 天前
基于黑马教程——微服务架构解析(二)
微服务·云原生·架构
阿里云云原生1 天前
蔚来汽车携手通义灵码入选 2025 世界人工智能大会标杆案例
云原生·通义灵码