如何在Debian6上设置和配置OpenVPN服务器

来自菜鸟教程
跳转至:导航、​搜索

入门

You will need to open an SSH connection on your cloud server as the root user or an SSH connection to a user with sudo access. This guide assumes a user with sudo access. However you can set things up using root just by stripping the 'sudo' from the start of each command. If your system is running on Linux or Mac, you can use SSH with the Terminal program. If you are using Windows, you can use SSH with 油灰. Once you have the Terminal opened, assuming you're using a Linux/Mac system, you can login by typing the following command:

ssh username@ipaddress



当系统要求您输入密码时,您就可以开始设置 OpenVPN。

安装 OpenVPN 并生成必要的文件


在我们开始安装 OpenVPN 及其先决条件之前,我们应该确保我们系统上的所有软件包都是最新的。 我们可以使用以下命令来做到这一点:

sudo apt-get update



这应该有 apt,Debian 的包管理器。 下载包含它们的任何软件包的所有更新。

sudo apt-get upgrade



在我们的系统下载了所有更新后,我们终于可以安装 OpenVPN。

sudo apt-get install openvpn udev



安装完成后,您就可以开始配置 OpenVPN。 首先,您应该将所有用于加密的文件从其默认目录复制到它们应该位于的目录中,以便云服务器读取它们。

sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa /etc/openvpn



现在您已经完成了,您可以开始为您的 VPN 生成 RSA 算法文件。 生成这些键时,系统会要求您提供各种值。 您可以将它们设置为您想要的任何值,但请记住它们将包含在您生成的证书中。


首先,访问以下目录:

cd /etc/openvpn/easy-rsa/2.0/



然后生成 RSA 文件:

source ./vars

sudo ./clean-all

sudo ./build-ca



生成证书后,您可以为服务器制作私钥。 为此,请键入以下命令,并将“服务器”更改为您希望 OpenVPN 服务器的名称。 该脚本还会询问您的信息。

sudo . /etc/openvpn/easy-rsa/2.0/build-key-server server



生成 Diffie Hellman 密钥交换参数。

sudo . /etc/openvpn/easy-rsa/2.0/build-dh



现在为这个 OpenVPN 安装将托管的每个客户端生成密钥。 您应该为该安装将托管的每个客户端执行此步骤,确保每个客户端的密钥标识符都是唯一的。

sudo . /etc/openvpn/easy-rsa/2.0/build-key client



现在将服务器证书和密钥的文件移动到 /etc/openvpn 目录。 将 server.crt 和 server.key 替换为您使用的文件名。

sudo cp /etc/openvpn/easy-rsa/2.0/keys/ca.crt /etc/openvpn

sudo cp /etc/openvpn/easy-rsa/2.0/keys/ca.key /etc/openvpn

sudo cp /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem /etc/openvpn

sudo cp /etc/openvpn/easy-rsa/2.0/keys/server.crt /etc/openvpn

sudo cp /etc/openvpn/easy-rsa/2.0/keys/server.key /etc/openvpn



如果您需要删除某人对 VPN 的访问权限,只需发送以下两个命令。 将“client”替换为要删除的客户端的名称。

sudo . /etc/openvpn/easy-rsa/2.0/vars
sudo . /etc/openvpn/easy-rsa/2.0/revoke-full client1

配置 OpenVPN


现在您已经为我们的配置生成了文件,您可以继续配置您的 OpenVPN 服务器和客户端。 要检索文件,请执行以下命令:

sudo gunzip -d /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz

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

sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/

cd



您应该修改客户端配置文件以匹配您希望它执行的操作。 您还可以修改以下文件中的多个值以匹配您想要的。 为此,您首先更改“远程”选项,以便它可以连接到您配置 OpenVPN 运行的任何端口上的云服务器的 IP 地址。 然后更改“证书”和“密钥”值以反映您自己的证书和密钥的名称。 编辑完这些值后,您可以通过键入 Ctrl+X 来保存文件,键入“y”,然后按 Enter。


现在将客户端配置文件以及位于 /etc/openvpn/easy-rsa/2.0/keys 中的客户端密钥和证书复制到客户端的本地计算机。

nano ~/client.conf



完成此操作后,您只需在我们完成之前对您的服务器配置文件进行一些更改。 更改以下文件中“cert”和“key”选项指向的文件,以匹配您的服务器正在使用的证书和密钥。

sudo nano /etc/openvpn/server.conf



完成后,您就可以出发了! 只需重新启动 OpenVPN,您就可以在 Debian 6 上安装有效的 OpenVPN!

sudo /etc/init.d/openvpn restart