准备工作
搭建步骤
客户端连接
注意事项
随着互联网的广泛应用,VPN(虚拟私人网络)作为一种保护个人隐私、突破网络限制的重要工具,日益受到用户的青睐,本文将详细阐述在Linux系统上搭建VPN服务器的具体步骤,并强调相关注意事项,帮助您轻松构建自己的VPN服务器。
准备工作
在进行搭建之前,请确保以下准备工作已完成:
1、安装OpenVPN软件:确保您的Linux系统已安装OpenVPN客户端和服务器端软件,您可以从OpenVPN官网(https://openvpn.com/tags-2526.html" class="superseo">vpn.net/)下载并安装相应的安装包。
2、静态公网IP地址:准备一个静态公网IP地址,用于客户端连接VPN服务器。
3、CA证书:获取一个CA证书,用于验证客户端身份,您可以从Let's Encrypt(https://letsencrypt.org/)免费申请。
搭建步骤
创建CA证书
1、生成CA私钥和CA证书:
```bash
openssl genpkey -algorithm RSA -out ca.key -pkeyopt rsa_keygen_bits:4096
openssl req -x509 -new -nodes -key ca.key -days 3650 -out ca.crt -subj "/C=CN/ST=Guangdong/L=Shenzhen/O=MyCA/CN=MyCA"
```
2、生成CA证书签名请求:
```bash
openssl req -new -key ca.key -out ca.csr -subj "/C=CN/ST=Guangdong/L=Shenzhen/O=MyCA/CN=MyCA"
```
创建服务器证书和私钥
openssl genpkey -algorithm RSA -out server.key -pkeyopt rsa_keygen_bits:4096 openssl req -new -key server.key -out server.csr -subj "/C=CN/ST=Guangdong/L=Shenzhen/O=MyCA/CN=MyCA"
使用CA证书为服务器证书签名
openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt
创建客户端证书和私钥
openssl genpkey -algorithm RSA -out client.key -pkeyopt rsa_keygen_bits:4096 openssl req -new -key client.key -out client.csr -subj "/C=CN/ST=Guangdong/L=Shenzhen/O=MyCA/CN=MyCA"
使用CA证书为客户端证书签名
openssl x509 -req -days 3650 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 02 -out client.crt
配置服务器
1、创建服务器配置文件:
```bash
cp /usr/share/doc/openvpn/examples/sample-config/server.conf.gz /etc/openvpn/server.conf.gz
gzip -d /etc/openvpn/server.conf.gz
```
2、编辑服务器配置文件:
```bash
vi /etc/openvpn/server.conf
```
根据实际情况修改以下参数:
```bash
port 1194
proto udp
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
```
3、生成DH参数:
```bash
openssl dhparam -out dh2048.pem 2048
```
4、启动OpenVPN服务器:
```bash
systemctl start openvpn@server
systemctl enable openvpn@server
```
客户端连接
1、创建客户端配置文件:
```bash
cp /usr/share/doc/openvpn/examples/sample-config/client.conf.gz /etc/openvpn/client.conf.gz
gzip -d /etc/openvpn/client.conf.gz
```
2、编辑客户端配置文件:
```bash
vi /etc/openvpn/client.conf
```
根据实际情况修改以下参数:
```bash
remote your_server_ip 1194
proto udp
resolv-retry infinite
nobind
user nobody
group nogroup
ca ca.crt
cert client.crt
key client.key
cipher AES-256-CBC
persist-key
persist-tun
ns-cert-type server
```
3、启动OpenVPN客户端:
```bash
openvpn --config /etc/openvpn/client.conf
```
注意事项
1、开启防火墙端口:确保您的Linux服务器防火墙已开启1194端口。
2、DDNS服务:如果您使用的是动态IP地址,建议使用DDNS服务将IP地址映射到固定的域名。
3、定期更换证书:为了提高安全性,请定期更换CA证书、服务器证书和客户端证书。
4、优化服务器配置:如需进一步优化性能,可考虑调整服务器配置文件中的参数。
通过以上步骤,您便可以在Linux系统下搭建一个简单的VPN服务器,祝您使用愉快!