运维管理
MrDoc 速记插件
Docker 安装 mrdoc (开源版)
Docker-compose 安装 mrdoc
Linux之smartctl命令磁盘检测运维
Nginx配置服务并开机启动
yum安装与卸载软件常见命令「建议收藏」
yum 命令使用讲解
Nginx 映射本地静态文件
CentOS7.9 Docker部署Leanote
Nginx配置中的log_format
修改或者隐藏Nginx的版本号
centos编译安装方式升级snmpwalk命令到5.9.1从而支持SHA-512鉴权协议测试
PVE的local和local-lvm
markdown之群晖自建图床
Wireshark介绍及抓包分析
自定义数据推送到pushgateway及推送数据的注意事项
Prometheus监控实战系列十四:Pushgateway
使用 PushGateway 进行数据上报采集
RHEL6.0 yum安装报warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY错误-CSDN博客
烂泥:openvpn配置文件详解-烂泥行天下
RHEL系统以FTP服务器搭建yum源_rhel9 安装 ftp yum
详解用Navicat工具将Excel中的数据导入Mysql中 - Steven* - 博客园
Linux禁止ping以及开启ping的方法 - chenshoubiao - 博客园
MobaXterm设置无密码登录丨Pro Linux 基础篇
CentOS 安装 MySQL8,超详细!
percona-xtrabackup备份及恢复mysql操作
教你玩转MySQL8物理备份利器Xtrabackup
PVE浏览器中文设置
2024年PVE8最新安装使用指南|新手入门|安装|优化|Proxmox VE 8.1__什么值得买
sendmail发邮件注意事项
如何使用sqlite将db文件转成txt文件
一文让你学会,开源WAF雷池SafeLine
iptables按照指定国家屏蔽(GEOIP模块的安装与使用)
py3 容器适配conda24.3.0
CentOS7 配置 nginx 和 php 方案
Sakura Panel搭建教程-搭建属于自己的FRP管理面板
markdown之群晖自建图床
Debian12安装教程(保姆级)
CentOS 6.9密码修改
CentOS7如果忘记密码,密码重置详细步骤,保姆级教程。
利用CertBot实现免费SSL证书的自动签发与续签
证书3月一换很麻烦?一行命令让你解放双手
阿里云域名自动签发泛域名证书配置(最新篇)
Certimate证书自动续签
Auto-SSL
ubuntu忘记密码问题解决
Ubantu启动失败,提示“Started GNOME Display Manager”
kali网络配置(及配置ssh远程连接)
SSL证书--Let’s Encrypt和TrustAsia哪个好
PVE安装ikuai、openwrt以及lxc容器安装docker
Fail2Ban安全配置与应用
本文档使用 MrDoc 发布
-
+
首页
烂泥:openvpn配置文件详解-烂泥行天下
- [一、vars配置文件](https://www.ilanni.com/?p=9847#%E4%B8%80%E3%80%81vars%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6 "一、vars配置文件") - [二、server.conf服务器端配置文件](https://www.ilanni.com/?p=9847#%E4%BA%8C%E3%80%81server.conf%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%AB%AF%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6 "二、server.conf服务器端配置文件") - [三、client.conf客户端配置文件](https://www.ilanni.com/?p=9847#%E4%B8%89%E3%80%81client.conf%E5%AE%A2%E6%88%B7%E7%AB%AF%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6 "三、client.conf客户端配置文件") **本文由**[**秀依林枫**](http://xiuylf.taobao.com/)**提供友情赞助,首发于**[**烂泥行天下**](http://www.ilanni.com/) 在上一篇文章《[烂泥:ubuntu 14.04搭建OpenVPN服务器](http://www.ilanni.com/?p=9837)》中,我们主要讲解了openvpn的搭建与使用,这篇文章我们来详细介绍下有关openvpn的相关配置文件。 openvpn的配置文件主要有三个:vars、server.conf、client.conf,下面我们对这三个配置文件进行一一的详解。 # **一、vars配置文件** vars配置文件的主要内容如下: cat vars |grep -vE “^#|^$” [](https://www.ilanni.com/wp-content/uploads/2015/08/clip_image001.png) KEY\_DIR定义key生成的目录。 KEY\_SIZE定义生成私钥的大小,一般为1024或2048,默认为2048位。这个就是我们在执行build-dh命令生成dh2048文件的依据。 CA\_EXPIRE定义CA证书的有效期,默认是3650天,即10年。 KEY\_EXPIRE定义密钥的有效期,默认是3650天,即10年。 KEY\_COUNTRY定义所在的国家。 KEY\_PROVINCE定义所在的省份。 KEY\_CITY定义所在的城市。 KEY\_ORG定义所在的组织。 KEY\_EMAIL定义邮箱地址。 KEY\_OU定义所在的单位。 KEY\_NAME定义openvpn服务器的名称。 以上就是vars配置文件的全部内容,有关vars配置文件的使用,我们也可以系统的默认配置。 # **二、server.conf服务器端配置文件** 服务器端配置文件server.conf,是这三个配置文件中最重要的一个,也是所有对openvpn客户端推送的信息,都是通过这个文件进行配置的。 grep -vE “^#|^$” server.conf [](https://www.ilanni.com/wp-content/uploads/2015/08/clip_image002.png) ;local a.b.c.d 定义openvpn监听的IP地址,如果是服务器单网卡的也可以不注明,但是服务器是多网卡的建议注明。 port 1194 定义openvpn监听的的端口,默认为1194端口。 proto tcp ;proto udp 定义openvpn使用的协议,默认使用UDP。如果是生产环境的话,建议使用TCP协议。 dev tun ;dev tap 定义openvpn运行时使用哪一种模式,openvpn有两种运行模式一种是tap模式,一种是tun模式。 tap模式也就是桥接模式,通过软件在系统中模拟出一个tap设备,该设备是一个二层设备,同时支持链路层协议。 tun模式也就是路由模式,通过软件在系统中模拟出一个tun路由,tun是ip层的点对点协议。 具体使用哪一种模式,需要根据自己的业务进行定义。 ca ca.crt 定义openvpn使用的CA证书文件,该文件通过build-ca命令生成,CA证书主要用于验证客户证书的合法性。 cert vpnilanni.crt 定义openvpn服务器端使用的证书文件。 key vpnilanni.key 定义openvpn服务器端使用的秘钥文件,**该文件必须严格控制其安全性**。 dh dh2048.pem 定义Diffie hellman文件。 server 10.8.0.0 255.255.255.0 定义openvpn在使用tun路由模式时,分配给client端分配的IP地址段。 ifconfig-pool-persist ipp.txt 定义客户端和虚拟ip地址之间的关系。特别是在openvpn重启时,再次连接的客户端将依然被分配和断开之前的IP地址。 ;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100 定义openvpn在使用tap桥接模式时,分配给客户端的IP地址段。 ;push “route 192.168.10.0 255.255.255.0” 向客户端推送的路由信息,假如客户端的IP地址为10.8.0.2,要访问192.168.10.0网段的话,使用这条命令就可以了。 ;client-config-dir ccd 这条命令可以指定客户端IP地址。 使用方法是在/etc/openvpn/创建ccd目录,然后创建在ccd目录下创建以客户端命名的文件。比如要设置客户端 ilanni为10.8.0.100这个IP地址,只要在 /etc/openvpn/ccd/ilanni文件中包含如下行即可: ifconfig-push 10.8.0.200 255.255.255.0 push “redirect-gateway def1 bypass-dhcp” 这条命令可以重定向客户端的网关,在进行翻墙时会使用到。 ;push “dhcp-option DNS 208.67.222.222” 向客户端推送的DNS信息。 假如客户端的IP地址为10.8.0.2,要访问192.168.10.0网段的话,使用这条命令就可以了。如果有网段的话,可以多次出现push route关键字。同时还要配合iptables一起使用。 client-to-client 这条命令可以使客户端之间能相互访问,默认设置下客户端间是不能相互访问的。 duplicate-cn 定义openvpn一个证书在同一时刻是否允许多个客户端接入,默认没有启用。 keepalive 10 120 定义活动连接保时期限 comp-lzo 启用允许数据压缩,客户端配置文件也需要有这项。 ;max-clients 100 定义最大客户端并发连接数量 ;user nobody ;group nogroup 定义openvpn运行时使用的用户及用户组。 persist-key 通过keepalive检测超时后,重新启动VPN,不重新读取keys,保留第一次使用的keys。 persist-tun 通过keepalive检测超时后,重新启动VPN,一直保持tun或者tap设备是linkup的。否则网络连接,会先linkdown然后再linkup。 status openvpn-status.log 把openvpn的一些状态信息写到文件中,比如客户端获得的IP地址。 log openvpn.log 记录日志,每次重新启动openvpn后删除原有的log信息。也可以自定义log的位置。默认是在/etc/openvpn/目录下。 ;log-append openvpn.log 记录日志,每次重新启动openvpn后追加原有的log信息。 verb 3 设置日志记录冗长级别。 ;mute 20 重复日志记录限额 以上就是openvpn服务器端server.conf配置文件的内容。 # **三、client.conf客户端配置文件** openvpn客户端的配置文件client.conf比较简单,如下: grep -vE “^#|^;|^$” client.ovpn [](https://www.ilanni.com/wp-content/uploads/2015/08/clip_image003.png) client 定义这是一个client,配置从server端pull拉取过来,如IP地址,路由信息之类,Server使用push指令推送过来。 dev tun 定义openvpn运行的模式,这个地方需要严格和Server端保持一致。 proto tcp 定义openvpn使用的协议,这个地方需要严格和Server端保持一致。 remote 192.168.1.8 1194 设置Server的IP地址和端口,这个地方需要严格和Server端保持一致。 如果有多台机器做负载均衡,可以多次出现remote关键字。 ;remote-random 随机选择一个Server连接,否则按照顺序从上到下依次连接。该选项默认不启用。 resolv-retry infinite 始终重新解析Server的IP地址(如果remote后面跟的是域名),保证Server IP地址是动态的使用DDNS动态更新DNS后,Client在自动重新连接时重新解析Server的IP地址。这样无需人为重新启动,即可重新接入VPN。 nobind 定义在本机不邦定任何端口监听incoming数据。 persist-key persist-tun ca ca.crt 定义CA证书的文件名,用于验证Server CA证书合法性,该文件一定要与服务器端ca.crt是同一个文件。 cert laptop.crt 定义客户端的证书文件。 key laptop.key 定义客户端的密钥文件。 ns-cert-type server Server使用build-key-server脚本生成的,在x509 v3扩展中加入了ns-cert-type选项。防止client使用他们的keys + DNS hack欺骗vpn client连接他们假冒的VPN Server,因为他们的CA里没有这个扩展。 comp-lzo 启用允许数据压缩,这个地方需要严格和Server端保持一致。 verb 3 设置日志记录冗长级别。 未经允许不得转载:[烂泥行天下](https://www.ilanni.com/) » [烂泥:openvpn配置文件详解](https://www.ilanni.com/?p=9847)- [一、vars配置文件](https://www.ilanni.com/?p=9847#%E4%B8%80%E3%80%81vars%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6 "一、vars配置文件") - [二、server.conf服务器端配置文件](https://www.ilanni.com/?p=9847#%E4%BA%8C%E3%80%81server.conf%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%AB%AF%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6 "二、server.conf服务器端配置文件") - [三、client.conf客户端配置文件](https://www.ilanni.com/?p=9847#%E4%B8%89%E3%80%81client.conf%E5%AE%A2%E6%88%B7%E7%AB%AF%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6 "三、client.conf客户端配置文件") **本文由**[**秀依林枫**](http://xiuylf.taobao.com/)**提供友情赞助,首发于**[**烂泥行天下**](http://www.ilanni.com/) 在上一篇文章《[烂泥:ubuntu 14.04搭建OpenVPN服务器](http://www.ilanni.com/?p=9837)》中,我们主要讲解了openvpn的搭建与使用,这篇文章我们来详细介绍下有关openvpn的相关配置文件。 openvpn的配置文件主要有三个:vars、server.conf、client.conf,下面我们对这三个配置文件进行一一的详解。
adouk
2024年9月23日 21:00
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码