电脑装配网

vpn怎么弄(VPN搭建详细教程)

 人阅读 | 作者奔跑的小羊 | 时间:2022-12-10 18:12

之前聊过暴露服务器到外网,比如有公网IP通过NAT或DMZ方式暴露机器到公网,那还多余搭建VPN干啥, 从某些角度看确实有相同的地方,比如都可以从外网访问到内网机器,但是VPN更像是把外网的机器虚拟的放到内网中,这样就可以访问内网中的任何设备了.

如果服务端部署在公司机器上,那么有疫情就可以居家办公了.

如果服务端部署在家庭网中树莓派或闲置机器,也可以随时访问家中的设备了.如远程养鱼等.

 

今天使用的是Docker来搭建,需要基本的Docker使用知识,以下操作基于Debian的树莓派,CentOS系统基本一样,操作步骤超级简单:

0.前提

需要在服务端提前安装好Docker,如果不会操作也可以留言.

 

1.搭建VPN服务器

拉取镜像

docker pull hwdsl2/ipsec-vpn-server:debian

启动一个容器实例

docker run \

--name ipsec-vpn-server \

--env-file /usr/local/etc/ipsecVpn.env \

--restart=always \

-p 500:500/udp \

-p 4500:4500/udp \

-d --privileged \

hwdsl2/ipsec-vpn-server:debian

参数说明:

每行后边的\不要去掉,它表示一条命令没结束,在下一行继续

--name 表示启动后实例的名称

--env-file 表示配置文件的位置,可配置用户名密码,密钥等,参考如下, VPN_IPSEC_PSK的长度至少20位

VPN_IPSEC_PSK=abcx1x2x3x4x5xx67890x

VPN_USER=test

VPN_PASSWORD=testvpn123

--restart 表示每次启动docker服务后自动启动这个实例

-p 表示把容器中的端口映射到主机的对应端口上

启动后验证是否启动成功,可以用docker ps 命令, 也可以用netstat查看端口是否在监听

 

更深入的操作参考
https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/README-zh.md

 

2.防火墙开端口

执行如下两行命令

ufw allow 500/udp comment 'docker的VPN使用'

ufw allow 4500/udp comment 'docker的VPN使用'

如果是CenterOs系列,则用Firewall-cmd开端口

 

3.客户连连接

可以是Mac,Windows,Linux,鸿蒙,Android,iOS等.


文章标签:

本文链接:『转载请注明出处』