本文详细介绍了在Debian系统上搭建VPN的步骤,包括选择合适的VPN软件、配置网络接口、设置防火墙规则、安装和配置VPN服务,以及必要的客户端配置,旨在为用户提供一个安全、稳定的VPN连接方案。
<li><a href="#id1" title="准备工作">准备工作</a></li>
<li><a href="#id2" title="构建VPN服务器">构建VPN服务器</a></li>
<li><a href="#id3" title="客户端接入">客户端接入</a></li>
<p>随着互联网的广泛应用,VPN技术已成为保障个人隐私和突破网络限制的关键工具,Debian系统凭借其稳定性和安全性,成为了构建VPN服务器的首选平台,本文将深入探讨如何在Debian系统上构建VPN服务器,助您轻松实现网络自由。
准备工作
1、准备一台运行Debian系统的服务器,推荐使用Debian 9或更高版本。
2、准备一台可以远程访问服务器的电脑,用于连接VPN。
3、确保已知服务器的公网IP地址。
4、确保有足够的公网带宽,以确保VPN服务的稳定运行。
构建VPN服务器
1、安装OpenVPN
OpenVPN是一款功能强大的开源VPN软件,支持多种协议和加密方式,以下是安装OpenVPN的步骤:
- 登录服务器,打开终端。
- 输入以下命令,添加OpenVPN的官方源:
```bash
echo "deb http://deb.openvpn.net/debian stretch openvpn" | sudo tee -a /etc/apt/sources.list.d/openvpn.list
```
- 输入以下命令,导入OpenVPN的GPG密钥:
```bash
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DC8B36A99CE4F35
```
- 输入以下命令,更新软件包列表:
```bash
sudo apt-get update
```
- 输入以下命令,安装OpenVPN:
```bash
sudo apt-get install openvpn
```
2、创建VPN用户
为了提升安全性,建议为VPN用户创建独立的账户:
- 输入以下命令,创建VPN用户:
```bash
sudo adduser openvpnuser
```
- 设置VPN用户的密码。
3、生成CA证书、服务器证书、私钥
- 创建CA目录:
```bash
sudo mkdir -p /etc/openvpn/easy-rsa/2.0
```
- 将easy-rsa目录设置为可写:
```bash
sudo chmod 700 /etc/openvpn/easy-rsa/2.0
```
- 复制easy-rsa示例文件:
```bash
sudo cp /etc/openvpn/easy-rsa/2.0/openssl.cnf /etc/openvpn/easy-rsa/2.0/openssl.cnf.bak
```
- 修改openssl.cnf文件:
```bash
sudo vi /etc/openvpn/easy-rsa/2.0/openssl.cnf
```
替换内容如下:
```bash
[ ca ]
default_ca = CA_default
[ CA_default ]
dir = /etc/openvpn/easy-rsa/2.0
certs = $dir/certs
crl_dir = $dir/crl
database = $dir/index.txt
serial = $dir/serial
RANDFILE = $dir/.rand
default_md = sha256
policy = policy_default
[ policy_default ]
countryName = CN
stateOrProvinceName = Beijing
organizationName = OpenVPN
organizationalUnitName = OpenVPN
commonName = OpenVPN
emailAddress = openvpn@example.com
[ req ]
default_bits = 2048
default_md = sha256
default_key_size = 2048
prompt = no
distinguished_name = CA_default
x509_extensions = v3_ca
[ v3_ca ]
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer:always
basicConstraints = CA:TRUE
keyUsage = cRLSign, keyCertSign
```
- 初始化easy-rsa目录:
```bash
cd /etc/openvpn/easy-rsa/2.0
sudo ./easyrsa init-pki
```
- 创建CA证书:
```bash
sudo ./easyrsa build-ca
```
- 创建服务器证书:
```bash
sudo ./easyrsa gen-req server server
```
- 签名服务器证书:
```bash
sudo ./easyrsa sign-req server server
```
- 创建客户端证书:
```bash
sudo ./easyrsa gen-req client client
```
- 签名客户端证书:
```bash
sudo ./easyrsa sign-req client client
```
4、配置OpenVPN
- 创建OpenVPN配置文件:
```bash
sudo vi /etc/openvpn/server.conf
```
替换内容如下:
```bash
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/2.0/certs/ca.crt
cert /etc/openvpn/easy-rsa/2.0/certs/server.crt
key /etc/openvpn/easy-rsa/2.0/private/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
server 10.8.0.0 255.255.255.0
keepalive 10 120
cipher AES-256-CBC
client-to-client
mode p2p
tls-auth /etc/openvpn/easy-rsa/2.0/keys/ta.key 0
comp-lzo
max-clients 100
user openvpnuser
group openvpnuser
ifconfig-pool-persist ipp.txt
status openvpn-status.log
log /var/log/openvpn.log
management 127.0.0.1 1194
```
- 创建TLS密钥:
```bash
sudo openvpn --genkey --secret /etc/openvpn/easy-rsa/2.0/keys/ta.key
```
5、启动OpenVPN服务
- 启动OpenVPN服务:
```bash
sudo systemctl start openvpn@server
```
- 设置OpenVPN服务开机自启:
```bash
sudo systemctl enable openvpn@server
```
客户端接入
1、下载OpenVPN客户端软件,安装并运行。
2、创建客户端配置文件,内容如下:
```bash
client
dev tun
proto udp
remote <服务器公网IP地址> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
tls-auth ta.key 1
cipher AES-256-CBC
```
3、保存配置文件,连接VPN。
通过上述步骤,您已在Debian系统上成功构建了一台VPN服务器,使用客户端连接到VPN服务器后,您即可享受网络自由,VPN服务器需要持续运行,否则客户端将无法连接,请确保您的服务器具备足够的公网带宽,以保证VPN服务的稳定性。
标签: #debian搭建vpn
评论列表