最新消息:阿里云双12优惠,史上最低折扣。

通过主机搭建Openvpn服务器

服务器租用 aliyun 246浏览

通过主机建立jsp虚拟空间我们需要注意些什么?

本文阐述使用新睿云云服务器搭建jsp虚拟空间一些常见注意事项!

使用云主机制作VPN服务器其实并不困难,由于VPN隧道始终是加密的,因此您不必再担心使用不安全的网络。您可以连接到任何公共WiFi热点,例如进行网上银行,没有任何风险。想要搭建VPN服务器首先您需要获取到云云服务器。具体应该使用双核CPU和2GBRAM的CentOS 7.6系统版本的云服务器。在安装之前,请运行常规系统更新,以确保所有软件包都已升级到其最新版本。

一、安装OPENVPN

1、安装过程非常简单。由于OpenVPN不能从标准的CentOS存储库中获得,因此第一步是安装EPEL并刷新可用包列表:

yum install epel-release

yum update

您现在可以安装OpenVPN:

yum install openvpn

我们还将安装EasyRSA,这是一种简化服务器上内部证书颁发机构(CA)和SSL密钥生成的工具。该软件包也可以在EPEL存储库中找到,可以使用yum轻松安装:

yum install easy-rsa

2、配置OPENVPN

Open VPN有许多配置选项,可能非常复杂。幸运的是,提供了一个示例配置文件,其中包含解释每行功能的注释。将其复制到默认配置文件夹,并将其用作您自己的设置文件的基础:

cp /usr/share/doc/openvpn-2.4.6/sample/sample-config-files/server.conf /etc/openvpn

使用您喜欢的文本编辑器打开文件;我们将在这个例子中使用vim。由于vim的默认配色方案使得注释难以阅读,因此您可以切换到另一个(使用如下命令:colorscheme desert):

vim /etc/openvpn/server.conf

3、首先将默认端口和协议更改为443 tcp:

port 443

proto tcp

4、接下来,您必须修改服务器将使用的证书的位置:

ca /etc/openvpn/easy-rsa/pki/ca.crt

cert /etc/openvpn/easy-rsa/pki/issued/server.crt

key /etc/openvpn/easy-rsa/pki/private/server.key

dh /etc/openvpn/easy-rsa/pki/dh.pem

5、必须取消注释的下两行是:

topology subnet

server 10.8.0.0 255.255.255.0

这些将创建一个子网,为客户端计算机分配地址。服务器将使用子网中的第一个地址(10.8.0.1),而第一个客户端将分配IP 10.8.0.2。

6、必须取消注释的最重要的一行是这一行:

push “redirect-gateway def1 bypass-dhcp”

它基本上指示客户端计算机通过VPN重定向所有流量,而不是本地网关。由于使用此路由将忽略本地网络的DNS服务器,因此必须定义新的DNS服务器。在此示例中,我们将使用Google和Cloudflare提供的最受欢迎的公共DNS服务器:

push “dhcp-option DNS 8.8.8.8”

push “dhcp-option DNS 1.1.1.1”

为了提高安全性并遵循官方OpenVPN准则,请启用TLS身份验证。注释以tls-auth开头的行,并定义一个您使用您选择的名称生成的加密密钥(在此示例中为mykey.tls):

;tls-auth ta.key 0

tls-crypt mykey.tls

7、添加此行将进一步加强安全检查:

remote-cert-eku “TLS Web Client Authentication”

8、您还可以通过取消注释以下两个选项来启用压缩:

compress lz4-v2

push “compress lz4-v2”

最后,将OpenVPN配置为与用户和组nobody一起运行,因此该服务在启动后没有任何权限。必须取消注释的行是:

user nobody

group nobody

9、还必须更改文件的最后一行,因为此选项与TCP协议不兼容:

explicit-exit-notify 0

您现在具有可靠的基本配置,因此请保存文件并退出。由于文件中的所有指令都有很好的记录,因此您可以根据需要调整其他参数。

不要忘记通过执行以下命令生成静态加密密钥:

openvpn –genkey –secret /etc/openvpn/mykey.tls

10、生成SSL密钥和证书

虽然可以通过多种方式生成密钥和证书,但EasyRSA安装的脚本使此任务非常简单。

创建一个文件夹以存储将生成的密钥和证书:

mkdir -p /etc/openvpn/easy-rsa

将EasyRSA脚本从其初始位置复制到此文件夹:

cp -r /usr/share/easy-rsa/3.0/* /etc/openvpn/easy-rsa

导航到配置文件夹并运行脚本以初始化新PKI并构建证书颁发机构(CA):

cd /etc/openvpn/easy-rsa

./easyrsa init-pki

./easyrsa build-ca

要构建CA,您必须为服务器输入PEM密码短语和公用名(CN),或者只需按Enter键即可输入默认值。确保您记住PEM密码,因为稍后您将需要它。

下一步是生成实际OpenVPN服务器的密钥和证书,在本例中我们将使用“server”作为文件名。签名请求脚本需要PEM密码:

./easyrsa gen-req server nopass

./easyrsa sign-req server server

在与客户端的TLS握手期间使用的DH参数由以下命令生成,这需要一些时间才能完成:

./easyrsa gen-dh

每个客户端还需要一个证书才能连接到服务器。保证此证书安全并且不与他人共享非常重要,以避免巨大的安全风险。如果您想允许其他人使用您的OpenVPN服务器,请使用相同的过程为他们生成单独的证书。

11、在此示例中,我们将为client1生成密钥和证书,再次需要PEM密码:

./easyrsa gen-req client1

./easyrsa sign-req client client1

恭喜,所有证书都已生成。您需要以下四个文件才能配置VPN的客户端:

/etc/openvpn/easy-rsa/pki/ca.crt

/etc/openvpn/easy-rsa/pki/issued/client1.crt

/etc/openvpn/easy-rsa/pki/private/client1.key

/etc/openvpn/mykey.tls

二、系统配置

为了启用路由,必须定义一些防火墙规则。我们将在此示例中使用firewalld,但其他防火墙(如CSF或基本iptables)也可以使用。

1、将openvpn服务添加到受信任区域列表中,并检查它是否正确包含:

firewall-cmd –zone=trusted –add-service openvpn

firewall-cmd –zone=trusted –add-service openvpn –permanent

firewall-cmd –list-services –zone=trusted

2、在当前实例上永久配置伪装:

firewall-cmd –add-masquerade

firewall-cmd –permanent –add-masquerade

3、创建一个变量,然后使用它在主网络接口上添加永久路由规则:

VAR=$(ip route get 8.8.8.8 | awk ‘NR==1 {print $(NF-2)}’)

firewall-cmd –permanent –direct –passthrough ipv4 -t nat -A POSTROUTING -s 10.8.0.0/24 -o $VAR -j MASQUERADE

4、最后一步是重新加载firewalld以实现所有这些更改:

firewall-cmd –reload

5、在CentOS中,默认情况下禁用数据包转发,但您可以通过编辑文件/etc/sysctl.conf并添加以下行来轻松启用它:

net.ipv4.ip_forward=1

6、执行以下命令以使用新规则重新启动网络:

sysctl –p

systemctl restart network

7、启动服务

现在一切都已配置,是时候启动服务并启用它,因此每次系统重新启动时它都会自动加载:

systemctl start openvpn@server.service

systemctl enable openvpn@server.service

8、检查一切是否正常,命令输出应该是活动的(运行):

systemctl status openvpn@server.service

9、配置WINDOWS客户端

假设您的本地桌面/笔记本电脑运行Window,您将需要设置客户端以连接到您的VPN服务器。

从OpenVPN的网站下载并执行安装程序,该应用程序必须以管理员权限运行。

默认配置文件夹是/ Program Files / OpenVPN / config,将四个文件(ca.crt,client1.crt,client1.key和mykey.tls)复制到那里。

在同一文件夹中创建一个名为client.ovpn的新文件,其中包含以下内容(将IP替换为OpenVPN服务器的实际IP地址):

client

tls-client

remote <IP> 443

proto tcp

resolv-retry infinite

route-delay 2

pull

dev tun

nobind

ca ca.crt

cert client1.crt

key client1.key

tls-crypt mykey.tls

remote-cert-eku “TLS Web Client Authentication”

topology subnet

pull

user nobody

group nobody

在说明应用程序后,OpenVPN GUI图标位于系统托盘中。右键单击它并单击“连接”以开始使用该服务。

三、从其他操作系统连接

如果你拥有一台Mac,有几个VPN客户端可用,我们推荐一款名为Tunnelblick的免费软件。从App Store安装它,然后从服务器复制相同的四个文件,并创建一个与Windows相同的client.ovpn。

确保所有这些文件都在同一文件夹中,然后打开应用程序,导航到该文件夹并单击client.ovpn文件。现在已安装VPN,您只需单击Connect即可使用它。

如果Linux是您的首选操作系统,请使用您的发行版本机包管理器安装openvpn客户端。该软件包在某些发行版的默认存储库中不可用,因此您可能必须启用其他软件包(例如RedHat OS系列中的EPEL)。

就像在Windows和Mac中一样,您需要来自服务器的四个文件,以及具有相同内容的client.ovpn文件。

使用root用户或sudo权限从命令行运行应用程序,确保包含.ovpn文件的完整路径:

openvpn –config client.ovpn

连接后,使用显示您的公共IP的网站(百度搜索“我的IP”便能看到自己IP),以检查互联网流量现在是否通过VPN正确路由。

转载请注明:小猪云服务器租用推荐 » 通过主机搭建Openvpn服务器