server服务端配置文件详解
https://www.cnblogs.com/EasonJim/p/8449495.html
easy-rsa3.0秘钥配置
https://blog.rj-bai.com/post/136.html
密码证书双认证
https://www.jianshu.com/p/e8bea912adcd
openvpn配置文件可以使用自带模板修改为适合自己环境的,也可以自己创建个新的配置文件
# cp /usr/share/doc/openvpn-2.4.3/sample/sample-config-files/server.conf /etc/openvpn/ # vim /etc/openvpn/server.conf port xxxxx #定义openvpn使用端口 proto udp4 #定义openvpn使用协议,也可以使用tcp协议,我在这里遇到坑改成tcp就报错(此坑已经知道是哪里的问题了)。 dev tun #定义openvpn运行模式,openvpn有两种运行模式一种是tap模式,一种是tun模式。 ca /etc/openvpn/easy-rsa/keys/ca.crt #openvpn使用的CA证书文件,CA证书主要用于验证客户证书的合法性。 cert /etc/openvpn/easy-rsa/keys/server.crt #openvpn服务器端使用的证书文件 dh /etc/openvpn/easy-rsa/keys/dh2048.pem #Diffie hellman文件 server 10.8.0.0 255.255.255.0 #openvpn在使用tun路由模式时,分配给client端分配的IP地址段 push "route 172.17.48.0 255.255.240.0" #向客户端推送的路由信息,假如客户端的IP地址为10.8.0.2,要访问172.17.48.0网段的话,使用这条命令就可以了。 push "redirect-gateway def1 bypass-dhcp" #这条命令可以重定向客户端的网关,在进行FQ时会使用,开启此选项客户端出口ip会成为openvpn服务器IP push "dhcp-option DNS 8.8.8.8" #向客户端推送的DNS信息。 push "dhcp-option DNS 114.114.114.114" #向客户端推送的DNS信息。 keepalive 10 120 #活动连接保时期限 cipher AES-256-CBC # comp-lzo #启用允许数据压缩,客户端配置文件也需要有这项。 user nobody #openvpn运行时使用的用户及用户组。 group nobody #openvpn运行时使用的用户及用户组。 persist-key #通过keepalive检测超时后,重新启动VPN,不重新读取keys,保留第一次使用的keys。 persist-tun #通过keepalive检测超时后,重新启动VPN,一直保持tun或者tap设备是linkup的。否则网络连接,会先linkdown然后再linkup。 status /var/log/openvpn/openvpn-status.log log /var/log/openvpn/openvpn.log log-append /var/log/openvpn/openvpnappend.log verb 3 #设置日志记录冗长级别 explicit-exit-notify 1 #此选项开启只能使用udp协议。Options error: --explicit-exit-notify can only be used with --proto udp
修改var文件
# vim /etc/openvpn/easy-rsa/vars export KEY_COUNTRY="CN" export KEY_PROVINCE="BJ" export KEY_CITY="BeiJing" export KEY_ORG="xxxx" export KEY_EMAIL="[email protected]" export KEY_OU="xxxx" export KEY_NAME="xxxx"
var文件一些说明
export KEY_DIR="$EASY_RSA/keys" #定义key的生成目录 export KEY_SIZE=2048 #定义生成私钥的大小,一般为1024或2048,默认为2048位。这个就是我们在执行build-dh命令生成dh2048文件的依据。 export CA_EXPIRE=3650 #ca证书有效期,默认为3650天,即十年 export KEY_EXPIRE=3650 #定义秘钥的有效期,默认为3650天,即十年 export KEY_COUNTRY="CN" #定义所在的国家 export KEY_PROVINCE="BJ" #定义所在的省 export KEY_CITY="BeiJing" #定义所在的城市 export KEY_ORG="xxxx" #定义所在的组织 export KEY_EMAIL="[email protected]" #定义邮箱 export KEY_OU="xxxx" #定义所在单位 export KEY_NAME="xxxx" #定义服务器名称