centos部署openvpn

centos部署openvpn

openvpn服务端

安装依赖组件

sh 复制代码
yum -y install epel-release openvpn easy-rsa net-tools bridge-utils

配置服务端证书

创建ca和证书,使用免密模式

sh 复制代码
cd /usr/share/easy-rsa/3
./easyrsa init-pki
./easyrsa build-ca
./easyrsa build-server-full server1 nopass
./easyrsa build-client-full client1 nopass
./easyrsa gen-dh
openvpn --genkey --secret ./pki/ta.key

复制证书到运行目录下

sh 复制代码
cp -pR /usr/share/easy-rsa/3/pki/{issued,private,ca.crt,dh.pem,ta.key} /etc/openvpn/server/

配置路由转发

修改内核参数

复制代码
vi /etc/sysctl.d/99-sysctl.conf
配置net.ipv4.ip_forward = 1
sysctl --system 

服务端配置说明

配置文件里的路径相对server.conf所在目录

sh 复制代码
cp /usr/share/doc/openvpn-x/sample/sample-config-files/server.conf /etc/openvpn/server/
vi /etc/openvpn/server/server.conf
txt 复制代码
## 为客户端分配的ip段
server 10.8.0.0 255.255.255.0
## 服务端内网网段例172.16.30.0则配置如下
push "route 172.16.30.0 255.255.255.0"
## 允许多客户端使用同一个证书连接
duplicate-cn
## 证书目录
ca ca.crt
cert issued/server1.crt
key private/server1.key
dh dh.pem
## 日志输出目录
status /var/log/openvpn/openvpn-status.log
log    /var/log/openvpn/openvpn.log
## 使用tcp时注释掉以下配置
;explicit-exit-notify 1

服务端启动

sh 复制代码
systemctl start openvpn-server@server
systemctl enable openvpn-server@server
systemctl status openvpn-server@server

配置允许访问同一网段

不配置则客户端只能访问vpn服务器所在ip。需添加路由表配置转发,例10.8.0.0/16是服务端server.conf为客户端分配的网段

sh 复制代码
iptables -t nat -A POSTROUTING -s 10.8.0.0/16 -j MASQUERADE

查看服务端日志

详见服务端server.conf里配置的日志目录

查看已接入的客户端

sh 复制代码
cat /etc/openvpn/server/ipp.txt

客户端使用

客户端证书

拷贝服务端生成的证书文件放到客户端config目录下

复制代码
/etc/openvpn/server/ca.crt
/etc/openvpn/server/ta.key
/etc/openvpn/server/issued/client1.crt
/etc/openvpn/server/private/client1.key  

windows客户端配置

从服务端拷贝sample.ovpn配置编辑,也放在config目录下

复制代码
/usr/share/doc/openvpn-x/sample/sample-windows/sample.ovpn

客户端配置说明

复制代码
## vpn服务端所在公网ip和vpn服务端口
remote x.x.x.x 1194
## 客户端证书
ca ca.crt
cert client1.crt
key client1.key 
tls-auth ta.key 1
## 设备类型和服务端配置一致
dev tun
## 协议要和服务端配置一致
proto tcp
相关推荐
其实防守也摸鱼27 分钟前
推荐一个自动化教育SRC漏洞挖掘系统--AutoHunter
运维·开发语言·人工智能·学习·安全·web安全·自动化
九硕智慧建筑一体化厂家42 分钟前
智慧建筑高效管控!楼宇自控系统赋能新能源园区智能运维
运维·人工智能·笔记·智慧城市
咯哦哦哦哦2 小时前
linux so库(arm)对比分析
linux·运维·arm开发
lengjingzju7 小时前
编译与调试完全指南—第10章 网络分析工具
linux
星野川崎2068 小时前
电商多店运维:云机24小时挂机频繁掉线、账号无故风控深度原因分析及解决方案
大数据·运维·服务器·云计算·电商
ltl8 小时前
新硬件对存储的影响:ZNS、CXL 与计算存储
linux
RisunJan8 小时前
Linux命令-xauth(X11 认证授权管理)
linux·服务器·microsoft
不灭的程序员阿澄10 小时前
在飞牛 NAS 上用 Docker 运行 DeepSeek Harness
运维·docker·容器
Elastic 中国社区官方博客10 小时前
让大模型思考,让小模型执行:在 Elastic Workflows 中拆分 LLM 成本
大数据·运维·数据库·人工智能·elasticsearch·ai
艾伦_耶格宇11 小时前
【AI】-4 OpenCode Go 接入 Obsidian 完整指南
运维·开发语言·人工智能·agent·opencode