找回密码
 立即注册

快捷登录

查看: 498|回复: 0

OPENVPN手把手搭建服务器端与本地端使用方法

[复制链接]

1051

主题

0

回帖

3855

积分

管理员

积分
3855
发表于 2025-2-16 13:27:32 | 显示全部楼层 |阅读模式
OpenVPN是什么?答:OpenVPN 是一个基于 OpenSSL 库的应用层 VPN 实现。和传统 VPN 相比,它的优点是简单易用,相比传统的VPN更加安全。
VPN又是什么?答:vpn又叫虚拟专用网络,利用可用公用网络上架设一个虚拟专用网络进行加密通信,其中VPN网关通过对数据包的加密和数据包目标地址的转换实现远程访问实现对网关中各个网络设备进行加密通信。
OpenVPN搭建使用场景?(当然这是原话)远程办公:公司员工可以使用OpenVPN连接到公司的网络,从而访问公司的资源和应用程序,实现远程办公。网络安全:OpenVPN可以加密数据传输,保护用户的隐私和安全,在公共Wi-Fi网络或不安全的网络环境中使用。跨地域连接:OpenVPN可以连接不同地域的网络,实现跨地域的数据传输和资源共享。云计算和虚拟机:OpenVPN可以连接到云计算平台或虚拟机,实现安全的数据传输和访问。家庭网络:OpenVPN可以连接家庭网络中的多个设备,实现家庭网络的安全和共享。游戏和娱乐:OpenVPN可以连接游戏服务器,实现游戏的安全和快速连接。企业ybrid网络:OpenVPN可以连接企业的混合网络,实现不同网络之间的安全和数据共享。网络桥接:OpenVPN可以桥接不同网络之间的连接,实现网络之间的安全和数据共享。安全浏览:OpenVPN可以连接到安全的浏览代理服务器,实现安全的浏览和访问。科研和教育:OpenVPN可以连接到科研和教育机构的网络,实现安全的数据传输和资源共享。
准备工作需求:搭建一个虚拟网络去实现公司对内部网络访问办公。
这里我准备一台阿里云服务器配置不高宽带也不是特别高主要是价格便宜优惠一年才100元。阿里云服务器centos7系统:安装openvpn 阿里云地址:ttps://account.aliyun.com/login/个人笔记本windows系统:安装openvpn GUL 下载地址:OpenVPN 64 bit 2.6.12 [url]https://www.npackd.org/p/openvpn64/2.6.12[/url]
安装openvpn1.用ssh登录阿里云:2.先更新:yum -y update
3.安装依赖:yum install -y lrzsz gcc-c++ openssl openssl-devel net-tools lzo lzo-devel pam pam-devel vim wget
4.下载openvpn:本来是想下载版本高一点(2.6.12)的想到大家网络环境不是很好。
wget [url]https://swupdate.openvpn.org/community/releases/openvpn-2.5.6.tar.gz[/url]
5.解压tar -zxvf openvpn-2.5.6.tar.gz
6.安装编译cd openvpn-2.5.6/
./configure --prefix=/data/openvpn/
#编译make
make install
##配置环境echo -e “PATH=$PATH:/data/openvpn/sbin” >/etc/profile.d/openvpn256.sh
#加载环境变量source /etc/profile
##检测是否安装完成openvpn --version
创建CA机构与服务器证书1.下载EasyRSAwget [url]https://github.com/OpenVPN/easy-rsa/releases/download/v3.0.8/EasyRSA-3.0.8.tgz[/url]
2.解压tar -zxvf EasyRSA-3.0.8.tgz
3.签发证书的默认变量文件cd EasyRSA-3.0.8/egrep -v “$|#” vars.example >vars
##配置环境文件echo -e “set_var EASYRSA_CA_EXPIRE 36500\nset_var EASYRSA_CERT_EXPIRE 3650” > vars
4.创建CA机构与服务器证书#生成pki目录bash easyrsa init-pki
5.创建CA文件./easyrsa build-ca nopass
##随便创建一个名称即可demo
##CA证书创建成功##ca证书文件“/root/EasyRSA-3.0.8/pki/ca.crt##CA密钥文件 ”/root/EasyRSA-3.0.8/pki/private/ca.key
6.创建服务端证书##openvpn_server./easyrsa gen-req openvpn_server nopass##为了方便我去名 server_vpn
Keypair and certificate request completed. Your files are:
#服务端请求文件”/root/EasyRSA-3.0.8/pki/reqs/openvpn_server.req“
#服务端私钥文件”/root/EasyRSA-3.0.8/pki/private/openvpn_server.key“
7.签发服务端证书./easyrsa sign server openvpn_server#输入yes
#服务端证书文件“/root/EasyRSA-3.0.8/pki/issued/openvpn_server.crt”
8.创建交互秘钥./easyrsa gen-dh
#交换秘钥文件“/root/EasyRSA-3.0.8/pki/dh.pem”
#启用安全增强配置openvpn --genkey tls-auth ta.key #我用这个指令失败了,就换了下面这一条openvpn --genkey --secret ta.key #这条指令执行成功了#安全增强文件“/root/EasyRSA-3.0.8/ta.key”
OpenVPN服务端配置1.创建日志文件mkdir logs
2.创建用户##创建用户组groupadd openvpn
##创建用户名并加入组和用户目录useradd -M -s /sbin/nologin -g openvpn openvpn
3.创建服务端配置文件configvim server.conf##按键盘i进入插入模式#添加内容#端口port 1194#port 51820#协议proto tcpdev tun#ca证书文件ca  /root/EasyRSA-3.0.8/pki/ca.crt#服务端证书文件cert /homerootEasyRSA-3.0.8/pki/issued/openvpn_server.crt#服务端私钥文件key /root/EasyRSA-3.0.8/pki/private/openvpn_server.key#交换秘钥文件dh /root/EasyRSA-3.0.8/pki/dh.pem#安全增强文件,0是服务端,1是客户端tls-auth /root/EasyRSA-3.0.8/ta.key 0#分配客户端IP的网段,不能和服务器一个网段,不能冲突server 10.8.0.0 255.255.255.0#运行通讯的内网路由,可以多条push "route 192.168.0.0 255.255.255.0"#会话检测,每十秒测试一下,超过120秒没回应就认为对方downkeepalive 10 120#加密算法cipher AES-256-CBC#压缩算法compress lz4-v2#推送客户端使用lz4-v2算法push "compress lz4-v2"#最大客户端数max-clients 100#运行openvpn的用户和用户组user openvpngroup openvpn#状态日志status  /logs/openvpn-status.loglog-append /logs/openvpn.log#日志级别verb 3mute 20
##添加完成按”esc“案件在输入” :wq “保持推出即可启动项OpenVPN1.创建开机启动文件vim /etc/systemd/system/openvpn.service##添加如下内容[Unit]Description=OpenVPN ServerAfter=network.targetAfter=syslog.target[Install]WantedBy=multi-user.target[Service]#ExecStart=/data/openvpn/sbin/openvpn --config /root/openvpn-2.5.6/server.confExecStart=/usr/sbin/openvpn --config /root/openvpn-2.5.6/server.conf
和原来的教程相比,#ExecStart=/data/openvpn/sbin/openvpn --config /root/openvpn-2.5.6/server.conf 执行失败了所以改成了文中现在使用的这一句、

#加载系统服务systemctl daemon-reload#开机启动systemctl enable openvpn.service#启动服务systemctl start openvpn.service#查看服务运行状态systemctl status openvpn.service
启动成功:客户端文件配置
1.客户端证书##创建一个新目录用于生成客户端证书cd ~ mkdir openvpn_client##复制EasyRSA-3.0.8文件到cp -r EasyRSA-3.0.8/ openvpn_client/
##进入openvpn_client/cd /root/openvpn_client/EasyRSA-3.0.8
./easyrsa init-pki##输入”yes“即可
./easyrsa gen-req client_demo nopass##下一步直接回车###客服端请求文件"/root/openvpn_client/EasyRSA-3.0.8/pki/reqs/client_demo.req"##客服端私钥证书/root/openvpn_client/EasyRSA-3.0.8/pki/private/client_demo.key"
##回到服务端目录cd /root/EasyRSA-3.0.8
##将客户端复制到CA工作目录 ./easyrsa import-req /root/openvpn_client/EasyRSA-3.0.8/pki/reqs/client_demo.req client_demo
#签发证书./easyrsa sign client client_demo#输入yes
2.准备客户端配置文件##回到openvpn目录cd /root/openvpn-2.5.6
##创建文件mkdir -p client/client_demo
##复制 cp /root/openvpn_client/EasyRSA-3.0.8/pki/private/client_demo.key /root/openvpn-2.5.6/client/client_demo cp /root/EasyRSA-3.0.8/pki/issued/client_demo.crt /root/openvpn-2.5.6/client/client_demo cp /root/openvpn_client/EasyRSA-3.0.8/ta.key /root/openvpn-2.5.6/client/client_demo cp /root/EasyRSA-3.0.8/pki/issued/openvpn_server.crt /root/openvpn-2.5.6/client/client_demo cp /root/openvpn_client/EasyRSA-3.0.8/pki/ca.crt /root/openvpn-2.5.6/client/client_demo
vim /root/openvpn-2.5.6/client/client_demo/client.ovpn
clientdev tunproto tcpremote 阿里云IP 1194resolv-retry infinitenobindca ca.crtcert client_demo.crtkey client_demo.keyremote-cert-tls servertls-auth ta.key 1cipher AES-256-CBCverb 3compress lz4-v2
3.打包下载客户端文件tar -zcvf client_demo.tar.gz /root/openvpn-2.5.6/client
##下载scp root@你服务器ip:/root/openvpn-2.5.6/client/client_demo.tar.gz D:/
##防火墙firewall-cmd --add-port=1194/tcp --add-port=1194/udp --permanentfirewall-cmd --reload
##还有阿里云自带防火墙
测试1.window安装好是这个样子
2.下载客户端文件解压3.导入打上面文件放入”C:\Program Files\OpenVPN\config“
4.导入导入完成后如果其他相关证书没有一并自动到拷贝到config下 就收到拷贝过来。客户端启动连接

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|瑞社区 ( 滇ICP备2020010258号-3 )

滇公网安备 53082802000012号

GMT+8, 2025-4-6 04:53 , Processed in 0.229615 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表