搭建自己的vpn服务

唐丁 程序员唐丁 2023-05-10 21:25 Posted on 江苏
虚拟专用网络(VPN)的功能是:在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN网关通过对数据包的加密和数据包目标地址的转换实现远程访问。VPN可通过服务器、硬件、软件等多种方式实现,以上为百度解释.唐丁从实际使用的角度讲,就是搭建一个从公网进入内网的通道.相信工作的小伙伴有不少人居家办公或者出差都是通过vpn进入公司内网的.今天我们就带大家从零搭建一个自己的vpn服务.

首先介绍今天的主角:OpenVPN,一个vpn软件.今天我们就用容器的方式在内网的服务器上部署这个软件服务.废话不多说,下面直接贴流程:

  1. 拉取镜像

    docker pull kylemanna/openvpn
  2. 创建存放vpn数据目录

    OVPN_DATA="ovpn-data-example"
  3. 初始化数据

    docker volume create --name $OVPN_DATAdocker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://VPN.SERVERNAME.COMdocker run -v $OVPN_DATA:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki
  4. 启动vpn服务器,此处记得打开1194端口,映射端口可以自定义

    docker run --name=openvpn -v $OVPN_DATA:/etc/openvpn -d -p 1194:1194/udp --cap-add=NET_ADMIN kylemanna/openvpn
  5. 生成证书

    docker run -v $OVPN_DATA:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full CLIENTNAME nopass
  6. 生成自己的vpn账号

docker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient CLIENTNAME > CLIENTNAME.ovpn

今天就说这么多吧,从今天开始唐丁将不定时更新更好的文章给各位,也欢迎各位大佬指教!

Scan to Follow