高考考试网
当前位置: 首页 高考资讯

使用树莓派安装OpenVPN(使用树莓派安装OpenVPN)

时间:2023-08-07 作者: 小编 阅读量: 7 栏目名: 高考资讯

一般可以通过路由器端口映射的方式进行,通过动态公网IP和映射的指定端口,来访问家庭内部网络环境中的一些网络服务。在把家庭网络环境中的服务直接暴露在公网环境下,可能会对家庭内部网络造成安全隐患。内部系统可能会存在一些漏洞未能及时修复,造成网络安全问题。这些漏洞为黑客们提供了各种机会,绝大多数非法入侵、木马、病毒都是通过漏洞来突破网络安全防线的。

简介

OpenVPN 是一个功能齐全的 SSL VPN,它使用行业标准 SSL/TLS 协议实现 OSI 第 2 层或第 3 层安全网络扩展,支持基于证书、智能卡和/或用户名/密码凭据的灵活客户端身份验证方法,并允许用户或使用应用于 VPN 虚拟接口的防火墙规则的特定于组的访问控制策略。

应用场景

在家庭网络中有动态公网IP的前提下,当我们在外部,想要访问家庭内部网络。一般可以通过路由器端口映射的方式进行,通过动态公网IP和映射的指定端口,来访问家庭内部网络环境中的一些网络服务。在把家庭网络环境中的服务直接暴露在公网环境下,可能会对家庭内部网络造成安全隐患。

内部系统可能会存在一些漏洞未能及时修复,造成网络安全问题。这些漏洞为黑客们提供了各种机会,绝大多数非法入侵、木马、病毒都是通过漏洞来突破网络安全防线的。

因此我们在考虑网络安全因素下,家庭网络环境对外访问只通过 VPN 服务进行访问,对外暴露服务只暴露VPN服务即可。从而保证有效提高了我们家庭内部网络环境的安全性。

硬件环境

树莓派3B

CPU主频

1.4 GHz

核心数量

4 核

线程数量

4 线程

核心架构

BCM

树莓派3B 所用的BCM2835是基于ARMv7 32位架构的4核心ARMv7 Processor rev 4(v7l)处理器

虽然树莓派3B 的硬件支持64位的系统,但是官方的系统还是32位的,主要应该是为了兼容之前的硬件

安装openvpn和easy-rsa

sudo apt-get install -y easy-rsasudo apt-get install -y openvpn

  • easy-rsa包 提供证书生成脚本、模板配置文件等创建相关目录
  • openvpn就是我们今天要安装的包了
升级easy-rsa为v3.0.8版本

树莓派中的easy-rsa源安装的版本为v2.x.x,要把版本升级到v3.0.8。由于树莓派系统是基于Debian创建“新的”分支系统,我们可以使用debian系统版本中的deb安装包,来安装easy-rsa v3.0.8

使用https://pkgs.org下载deb安装包,树莓派是ARM架构

点击easy-rsa_3.0.8-1_all.deb打开下载页面

复制下载地址,使用wget下载文件

wget http://ftp.de.debian.org/debian/pool/main/e/easy-rsa/easy-rsa_3.0.8-1_all.deb

安装 easy-rsa_3.0.8-1_all.deb文件

dpkg -i easy-rsa_3.0.8-1_all.deb

配置证书密钥复制easy-rsa配置信息

# sudo cp -rf /usr/share/easy-rsa/3.0.8 /etc/openvpn/server/easy-rsasudo cp -rf /usr/share/easy-rsa /etc/openvpn/server/easy-rsacd /etc/openvpn/server/easy-rsa

编辑vars文件

vim vars# 国家set_var EASYRSA_REQ_COUNTRY "CN"# 地区set_var EASYRSA_REQ_PROVINCE "Shandong"# 城市set_var EASYRSA_REQ_CITY "Jinan"# 组织set_var EASYRSA_REQ_ORG "Nilorg CA"# 邮箱set_var EASYRSA_REQ_EMAIL "xudeyi1998@.qq.com"# 拥有者set_var EASYRSA_REQ_OU"Home"

使变量生效

source ./vars

生成 CA 根证书

cd /etc/openvpn/server/easy-rsasudo ./easyrsa init-pkisudo ./easyrsa build-ca nopass

init-pki:初始化,创建pki文件夹,用来存放即将生成的证书

生成 OpenVPN 服务器/客户端证书和密钥

# 生成服务端证书, nopass 参数设定证书无密码sudo ./easyrsa build-server-full server nopass# 生成客户端证书, nopass 参数设定证书无密码sudo ./easyrsa build-client-full client1 nopass# 创建Diffie-Hellmansudo ./easyrsa gen-dh# 生成ta.keyopenvpn --genkey --secret ta.key

  • build-server-full : 生成服务端/客户端证书
  • Diffie-Hellman,迪菲·赫尔曼密钥交换 是一种安全协议。它可以让双方在完全没有对方任何预先信息的条件下通过不安全信道创建起一个密钥。这个密钥可以在后续的通讯中作为对称密钥来加密通讯内容。
  • ta.key用于防御DoS、UDP淹没等恶意攻击。
配置 OpenVPN 服务端复制配置文件

# server.conf 如果server.conf不存在,需要对目录下的cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/

复制证书及密钥文件

然后将CA的证书, VPN Server的证书和密钥, 以及Diffie-Hellman参数文件复制到 /etc/openvpn/server 目录下

cp /etc/openvpn/server/easy-rsa/pki/ca.crt /etc/openvpn/servercp /etc/openvpn/server/easy-rsa/pki/issued/server.crt /etc/openvpn/servercp /etc/openvpn/server/easy-rsa/pki/private/server.key /etc/openvpn/servercp /etc/openvpn/server/easy-rsa/pki/dh.pem /etc/openvpn/server/

编辑配置文件

编辑server.conf配置,去除无用配置项

local 0.0.0.0port 1194proto tcp# dev tapdev tunca /etc/openvpn/server/easy-rsa/pki/ca.crtcert /etc/openvpn/server/easy-rsa/pki/issued/server.crtkey /etc/openvpn/server/easy-rsa/pki/private/server.keydh /etc/openvpn/server/easy-rsa/dh.pemserver 10.8.0.0 255.255.255.0ifconfig-pool-persist /etc/openvpn/server/ipp.txtpush "route 192.168.0.0 255.255.255.0"# If enabled, this directive will configure# all clients to redirect their default# network gateway through the VPN, causing# all IP traffic such as web browsing and# and DNS lookups to go through the VPN# (The OpenVPN server machine may need to NAT# or bridge the TUN/TAP interface to the internet# in order for this to work properly).# push "redirect-gateway def1 bypass-dhcp"# push "dhcp-option DNS 208.67.222.222"# push "dhcp-option DNS 208.67.220.220"client-to-clientkeepalive 10 120# For extra security beyond that provided# by SSL/TLS, create an "HMAC firewall"# to help block DoS attacks and UDP port flooding.## Generate with:#openvpn --genkey --secret ta.key## The server and each client must have# a copy of this key.# The second parameter should be '0'# on the server and '1' on the clients.tls-auth /etc/openvpn/server/ta.key 0 # This file is secret# Select a cryptographic cipher.# This config item must be copied to# the client config file as well.# Note that 2.4 client/server will automatically# negotiate AES-256-GCM in TLS mode.# See also the ncp-cipher option in the manpagecipher AES-256-CBCcomp-lzomax-clients 100persist-keypersist-tunstatus /var/log/openvpn/status.loglog/var/log/openvpn/openvpn.loglog-append/var/log/openvpn/openvpn.logverb 3mute 20

配置iptables

配置iptables设置nat规则和打开路由转发

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADEiptables -vnL -t nat# 打开路由转发vim /etc/sysctl.conf# 修改net.ipv4.ip_forwardnet.ipv4.ip_forward = 1sysctl -p

验证服务

systemctl status openvpn@server.servicesystemctl restart openvpn@server.service

配置OpenVPN客户端复制配置文件

# 创建客户端配置文件mkdir -p ~/openvpn/client1# client.conf 如果client.conf不存在,需要对目录下的cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/openvpn/client1/client1.ovpn

复制证书及密钥文件

然后将CA的证书、客户端的证书和密钥,以及Diffie-Hellman参数文件复制到 ~/openvpn/client1 目录下

cp /etc/openvpn/server/easy-rsa/pki/ca.crt ~/openvpn/client1/ca.crtcp /etc/openvpn/server/easy-rsa/ta.key ~/openvpn/client1/ta.keycp /etc/openvpn/server/easy-rsa/pki/private/client1.key ~/openvpn/client1/client1.keycp /etc/openvpn/server/easy-rsa/pki/issued/client1.crt ~/openvpn/client1/client1.crt

编辑配置文件

编辑client1.ovpn配置,去除无用配置项

clientdev tunproto tcp# remote <服务器端IP> <服务器端端口>remote 192.168.xx.xx 1194resolv-retry infinite# Most clients don't need to bind to# a specific local port number.nobindpersist-keypersist-tunca ca.crtcert client1.crtkey client1.keyremote-cert-tls servertls-auth ta.key 1comp-lzoverb 5# 不拉取服务端路由配置,可选可不选。route-nopull# 指定访问哪些网段走vpn隧道route 192.168.0.0 255.255.0.0 vpn_gateway

打包客户端配置文件

cd ~/openvpntar -zcvf client1.tar.gz ./client1

使用OpenVPN Connect客户端

使用OpenVPN Connect客户端连接服务

    推荐阅读
  • 清蒸海鱼的做法(清蒸海鱼怎么做)

    以下内容希望对你有帮助!清蒸海鱼的做法海鱼洗干净之后在外表涂上少许盐以及胡椒粉再放些姜与葱入鱼肚子里。锅里烧开水后把盛鱼的盘子放入大火隔水蒸。约五分钟后熄火焖片刻再打开锅盖。烧热锅倒入稍多些橄榄油后,放入姜与葱爆出香味。倒入适量生抽调入少许白糖以及香菜即可熄火。快速将油淋到蒸好的鱼上,再撒上点胡椒粉即可食用。

  • 焖罐肉正宗做法(四步告诉你)

    以下内容大家不妨参考一二希望能帮到您!焖罐肉正宗做法步骤1:先把带皮的五花肉切成两指宽的肉条,然后洗净。(如果在冬天,就不用焯水了!!翻炒,加盐,我加了四勺,这个时候咸是没关系的。最后倒适量的酱油,翻炒两下就可以出锅了。步骤3:砂罐洗干净之后就把肉倒进罐里,加水,喜欢吃辣的朋友就当点辣椒干。步骤4:大火把砂罐煮开后持续7.8分钟的样子就把切好的的笋子块放进去。

  • 济宁电动车挂牌地点(最新) 济宁电动车挂牌咨询电话

    自9月1日起,济宁市未悬挂号牌的电动自行车不得上道路行驶,那么新购买的电动车去哪里挂牌呢?根据山东省电动自行车登记管理规定(试行):《电动自行车安全技术规范》实施后,符合新国标、获得产品强制性认证证书并且在《山东省电动自行车生产、销售产品目录》内的电动自行车方可登记,发放全省统一样式的电动自行车号牌。济宁市办理新国标电动自行车登记挂牌网点

  • 头脑最厉害的星座(双子座头脑最厉害)

    我们一起去了解并探讨一下这个问题吧!头脑最厉害的星座双子头脑聪明,反应灵敏,接触新事物上手也是很快的,他们擅长与人打交道,擅长沟通,能够清楚地表达自己,让别人理解自己的意思。他们文理双全,获得诺贝尔奖最多的星座恐怕也就是双子了,双子有这么多的优点可能是因为他们是双子有两个人的思考能力和思维水平吧。

  • 正宗莜麦面怎么做(正宗莜麦面做法)

    下面更多详细答案一起来看看吧!正宗莜麦面怎么做从市场上买回来莜麦面。莜麦面用开水烫一下,然后用手将面揉匀,并搓成面条状。将搓好的面均匀摆放在锅壁上,等水开了以后放入锅里蒸约5-7分钟(注意蒸锅壁上一定要抹油,以免粘锅。)蒸好后拿出,分成一根根。放入葱段,蒜沫,香菜,香油,味精,醋,酱油等作料拌匀就大功告成啦。

  • 2022金湾区公办幼儿园第二轮招生报名什么时候截止

    7月8日18:00截止。金湾区教育局发布2022年秋季金湾区公办幼儿园第二轮招生事宜通知。当报名符合条件的“金湾区户籍适龄儿童及同等待遇儿童”人数多于招生名额时,则采用派位(抽签)录取方式,至额满为止。此种情况,将无学位招收非金湾区户籍适龄儿童。

  • 欧洲航天局简介(欧洲航天局是哪一年成立的)

    欧洲航天局简介欧洲航天局,简称欧空局或ESA,成立于1975年,是一个致力于探索太空的政府间组织,拥有22个成员国,总部设在法国巴黎。欧洲航天局的太空飞行计划包括载人航天。2019年9月2日,欧航局“风神”气象卫星与太空探索技术公司“星链44”卫星险碰撞。欧洲航天局对一颗所属卫星采取紧急变轨操作,避免了一场可能发生的“太空交通事故”。2020年6月9日,根据欧洲空间局的数据,在过去200年里,全球磁场强度降了9%。

  • 高龄有孕小说(小说她快要临盆)

    暮春三月,宁城下起了春雨,叶娅安心在家里等待孩子的到来,她预计提前一个星期住进医院,确定自己顺利生产。只是,世事往往难以预料,孩子比预产期提早了近半个月,这让叶娅措手不及。这个消息对于叶娅来说,无疑于就是晴天霹雳。原本司机遇到这种情况是拒绝载客,生怕出事了,只是看到叶娅苦苦哀求,最终心软了下来。

  • 豆豉焖河鱼教程(豆豉焖河鱼的做法)

    接下来我们就一起去了解一下吧!豆豉焖河鱼教程河鱼8两,洋葱一个,盐少许,蒜头数粒,料酒两汤匙。洗干净河鱼,用盐腌制一下。烧热油后放入河鱼,改小火慢慢炸,炸到骨头都酥脆,这样就可以连骨头都不放过了。炸到酥脆后,倒出过多的油,留下一些油将豆豉、蒜头、洋葱爆香加入料酒、水中火焖5分钟,等水差不多干时,装盘。

  • 北海交通违章查询指南(北海交警违章处理中心)

    北海交通违章怎么查?北海交通违章查询可通过本文提供的查询网站查询,下面为大家带来北海机动车违章、驾驶人违章、以及电子电子监控违章的查询方法。