docker 搭建
|
|
vpn.env
|
|
查看docker启动log
docker logs ipsec-vpn-server
一些client 连接可能遇到的问题
setup-ipsec-vpn/docs/clients.md at master · hwdsl2/setup-ipsec-vpn
连接ipsec/l2tp 可能遇到的问题
Windows error 809
Error 809: The network connection between your computer and the VPN server could not be established because the remote server is not responding. This could be because one of the network devices (e.g, firewalls, NAT, routers, etc) between your computer and the remote server is not configured to allow VPN connections. Please contact your Administrator or your service provider to determine which device may be causing the problem.
|
|
配置Ikev2
可参考docker-ipsec-vpn-server/README-zh.md at master · hwdsl2/docker-ipsec-vpn-server
docker logs ipsec-vpn-server查看IKEv2 相关配置信息
|
|
首次启动时,可能使用的是默认配置,需要手动更改
进入dockerdocker exec -it ipsec-vpn-server /bin/sh
|
|
执行ikev2addr.sh去手动更改vpnserver address
配置IKEv2 client(windows)
|
|
在创建IKEv2连接之前,需要在windows 客户端 导入证书
|
|
可能遇到的问题
-
IKE authentication credentials are unacceptable
可能是IKEv2 vpn server中 server address配置不对,可以尝试更改VPN server address
-
Policy match error
1REG ADD HKLM\SYSTEM\CurrentControlSet\Services\RasMan\Parameters /v NegotiateDH2048_AES256 /t REG_DWORD /d 0x1 /f
在windows server 上搭建vpn server
可参考Windows Server 2012 R2 安装SSTP/L2TP/PPTP – Noname
在windows 上安装并使用openvpn
参考链接
安装openvpn
https://github.com/OpenVPN/openvpn
https://openvpn.net/community-downloads/
- openvpn软件服务端和客户端都是同一个安装包
- 安装服务端的时候要选择Customize,勾选openvpn service和EasyRSA3 安装,用于服务端配置和证书生成使用。
- 安装客户端时可直接点击Install Now进行安装
证书生成
安装服务端的时候已经安装了证书生成工具**EasyRSA3,**使用此工具即可生成所需证书
-
进入EasyRSA shell 环境dos窗口
进入
C:\Program Files\OpenVPN\easy-rsa目录,双击EasyRSA-Start.bat进入EasyRSA shell环境dos窗口中 -
初始化证书生成程序
弹出的dos窗口中输入
./easyrsa init-pki初始化证书生成程序,初始化成功后会在C:\Program Files\OpenVPN\easy-rsa目录下新建文件夹kpi -
生成ca证书
在dos窗口中输入
./easyrsa build-ca nopass生成无密码CA证书,生成过程中会要求输入证书名称,随意输入即可,生成结束后会打印出证书所在目录easy-rsa\pki\ca.crt -
生成服务端证书
输入
./easyrsa build-server-full server nopass生成无密码服务端证书,生成后证书文件在C:\Program Files\OpenVPN\easy-rsa\pki\issued文件夹 -
生成客户端证书
输入
./easyrsa build-client-full client nopass生成无密码客户端证书,生成后证书在C:\Program Files\OpenVPN\easy-rsa\pki\issued文件夹 -
生成DH密钥交换协议
输入
./easyrsa gen-dh生成DH密钥交换协议文件,生成文件在C:\Program Files\OpenVPN\easy-rsa\pki目录下 -
目录
C:\Program Files\OpenVPN\easy-rsa\pki\private下为证书key -
openvpn --genkey tls-auth ta.keyto help block DoS attacks and UDP port flooding.
配置文件
服务端配置文件模板为server.ovpn,客户端配置文件client.ovpn,在 C:\Program Files\OpenVPN\sample-config目录下有。在服务端或客户端的windows主机上复制对应配置文件模板到C:\Program Files\OpenVPN\config目录下
配置文件中 ; # 都可以用作注释,但是不支持在配置指令的同一行后面添加注释
例如
cipher AES-256-CBC #选择加密算法这样写是错误的,解析时会将cipher 后的AES-256-CBC #选择加密算法整个字符串当成参数值,从而导致错误
-
服务端server.ovpn 修改
- 端口:(公网需要对应开通此端口)port udp 1194
- 协议文件名:dh dh2048.pem修改为dh dh.pem
- 运行多用户使用同一客户端证书:;duplicate-cn取消注释(前面;号删除)修改为duplicate-cn
-
客户端client.ovpn修改
- 修改连接服务器地址: remote my-server-1 1194修改为remote 服务器公网ip 1194
- 取消注释掉此行: ;tls-auth ta.key 1修改为 tls-auth ta.key 1(前面;号删除)
证书复制
配置文件server.ovpn client.ovpn 中的证书 和 key 都是只有文件名 ,没有规定具体路径
需要将其copy 到C:\Program Files\OpenVPN\config 下
-
将服务端证书,服务端key,ca证书,dh文件, ta.key复制到文件夹C:\Program Files\OpenVPN\config下
-
将客户端证书,客户端key,ca证书 , ta.key复制到目录C:\Program Files\OpenVPN\config下
连接
右键点击任务栏带锁小电脑图标,点击连接,连接成功后系统分配ip,小电脑变绿
其它
- tls-auth ta.key 配置为防御 DoS,UDP 淹没等恶意攻击行为的选项,如配置需要生成ta.key证书,生成方式:跳转到openvpn软件的bin目录下,在dos窗口中输入:
openvpn.exe --genkey --secret ta.key,便在bin目录下生成ta.key证书了,复制到配置文件目录即可。 - 证书时间等参数可以在vars文件中设置,设置后重新启动EasyRSA-Start即可加载新配置。
- ;client-to-client为客户端之间是否能直接访问的配置,去掉注释后生效。
- ;push “redirect-gateway def1 bypass-dhcp” 配置开启后客户端所有流量将路由至服务器,需要在访问端服务器上配置路由转发后才可以访问公网。
- 开启第4步后,可在客户端配置文件中增加
route 192.168.1.0 255.255.255.0 net_gateway配置,使该网段不通过openvpn路由