拓扑园

  • O&M
    • Universal部署
    • PHP+VUE+Laravel相关
  • Oracle性能优化
  • Oracle项目案例
    • Oracle近期项目案例(目录)
    • Oracle实战问题解析(目录)
    • Oracle数据库名变更流程(2种方式)
    • Oracle数据库目录更换流程(使用Oracle的clone工具)
    • Oracle数据库迁移方案(目录)
    • 标准化文档系列
  • Oracle基础知识
    • LLL的Oracle培训(分类)
    • LLL的docker培训(分类)
    • 标准化文档系列--(分类)
    • Oracle核心经典分析(分类)
    • 图灵小队----(分类并包含以下文章)
    • --MySQL8.0/Oracle/Memcached/Redis等安装配置于RHEL/OL6/7/8.X系列-运行环境最优配置
    • --PG安装配置于RHEL/9X系列-运行环境最优配置
    • --自动维护任务详解-开启、关闭信息统计收集(统计信息)
    • --图灵小队—Oracle/PostgreSQL下创建一个用户测试表(自行定义数据行)
    • --图灵小队-Oracle存储过程导出表的明细_UTL_FILE(文章)
    • --图灵小队-Oracle数据库删除/卸载操作指南(文章)
    • --图灵小队-Oracle常用性能查询SQL语句(文章)
    • --图灵小队-Oracle数据库上线前检查(文章)
    • --图灵小队-Oracle常用SQL语句(文章)
    • --图灵小队—Linux/Oracle脚本/MySQL合集(持续更新)
    • --图灵小队-Oracle技巧记录(文章)
    • ADG
    • RAC
    • ASM
    • OGG
    • RMAN
    • EXPDP/IMPDP
    • 工厂数据导入导出系列
  • MySQL
    • MySQL数据库规范
    • MySQL项目案例
    • MySQL安装配置
    • MYSQL集群项目
    • MySQL常见处理
    • MySQL-Sysbench专题
    • MySQL-Percona Toolkit专题
  • Linux
    • Shell编程
    • kubernetes
    • docker
    • Linux
    • PHP
    • Nginx
    • haproxy
    • mail
    • 网站
    • 域名
    • 网址收藏
  • 数据中心
    • 新框架系统集合
    • 工作文档
    • EBS数据文件扩容
    • VMware虚拟化
    • EBS系列
    • 大数据
    • SVN
    • zabbix
    • SAP
    • 备份相关
    • FC交换机
    • SVN
  • K-Studing
    • D8-Python学习
    • Oracle/MySQl等面试题
    • LG-MySQL
    • LG-Docker/K8S
    • LG-PostgreSQL
    • LG-ORACLE_BBED
    • LG-ORACLE
    • LG-Elasticsearch(ES)+ELK
    • Oracle-19C-OCP
    • WERN_ORACLE培训
    • redis数据库
    • Nginx培训学习系列
  • 其他
    • 外研英语4年级下册-听力
    • 影视系列
    • 如何使用iTunes软件通过抓包下载旧版本的ios的app
天高任鸟飞
Oracle/MySQL数据库恢复/数据迁移/生产规范报告技术交流:TEL:18562510581(微信同号);加微信入群
  1. 首页
  2. Linux
  3. 正文

OPENVPN 参数文件vars,server.conf,client.conf详细介绍

2020年9月1日 3731点热度 1人点赞 0条评论

目录

  • 一、vars配置文件
  • 二、server.conf服务器端配置文件
  • 三、client.conf客户端配置文件

openvpn的配置文件主要有三个:vars、server.conf、client.conf,下面我们对这三个配置文件进行一一的详解。

一、vars配置文件

vars配置文件的主要内容如下:

cat vars |grep -vE “^#|^$”

clip_image001

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

clip_image002

;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

clip_image003

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

设置日志记录冗长级别。

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2020年9月1日

admin

这个人很懒,什么都没留下

打赏 点赞
< 上一篇
下一篇 >

文章评论

您需要 登录 之后才可以评论

COPYRIGHT © 2022 拓扑园. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

鲁ICP备2021020523号

鲁ICP备2021020523号