安装OpenVPN服务器
-
在服务器端安装OpenVPN:
- 下载并安装OpenVPN服务器软件,您可以通过包管理器在大多数Linux发行版上安装:
sudo apt update && sudo apt install openvpn
- 启用并配置OpenVPN服务:
sudo systemctl unmask openvpn@default sudo systemctl enable openvpn@default sudo systemctl start openvpn@default
- 启动OpenVPN并设置开机启动:
sudo systemctl start openvpn@default sudo systemctl enable openvpn@default
- 下载并安装OpenVPN服务器软件,您可以通过包管理器在大多数Linux发行版上安装:
-
在客户端安装OpenVPN:
- 下载并安装OpenVPN客户端,您可以从OpenVPN官网下载。
- 运行安装程序并按照提示完成安装。
配置OpenVPN服务器
-
生成证书和密钥:
- 使用OpenVPN的
easy-rsa工具生成证书和密钥:sudo apt install easy-rsa cd /etc/openvpn/easy-rsa/ ./easy-rsa --init-pki
- 生成一个新的证书和密钥:
./easy-rsa --build-ca ./easy-rsa --build-server-crt ./easy-rsa --build-server-key
- 将生成的证书和密钥复制到OpenVPN服务器的配置目录中。
- 使用OpenVPN的
-
配置OpenVPN服务器的
server.conf文件:- 打开
/etc/openvpn/server.conf文件进行编辑:sudo nano /etc/openvpn/server.conf
- 在文件末尾添加以下内容:
# 生成的服务器证书和私钥 ca /etc/openvpn/pki/ca.crt cert /etc/openvpn/pki/server.crt key /etc/openvpn/pki/server.key # 设置为您想要的IP地址和端口 server listen 1194 proto tcp dev ovpn # 设置为您想要的网络mask和推送给客户端的选项 push "route 192.168.1. 255.255.255." push "route 10... 0..." # 设置为您想要的登录名和密码(可以随机生成) user nobody group nobody # 启用TLS(推荐) tls enabled tls-version-min 2. cipher TLS-AES256-GCM-SHA384
- 打开
-
启动OpenVPN服务器:
sudo systemctl start openvpn@default
连接OpenVPN服务器(客户端连接)
-
配置客户端的
client.conf文件:- 创建一个新的配置文件(例如
client.conf):sudo nano /etc/openvpn/client.conf
- 添加以下内容:
# 服务器的IP地址和端口 remote my-server-ip 1194 # 生成的客户端证书和私钥 ca /etc/openvpn/pki/ca.crt cert /etc/openvpn/pki/client.crt key /etc/openvpn/pki/client.key # 设置为您想要的登录名和密码 username my-username password my-password # 启用TLS tls enabled tls-version-min 2. cipher TLS-AES256-GCM-SHA384
- 创建一个新的配置文件(例如
-
连接到OpenVPN服务器:
- 在终端或命令行运行OpenVPN客户端:
sudo openvpn --config /etc/openvpn/client.conf
- 输入您的登录名和密码,并按回车键。
- 成功连接后,您会看到类似以下内容:
Tue Feb 28 12:34:56 2024 us=30000000, sent=30000000, keepalive=10, peer=128...1:1194: TLSv1.2: cipher 256-bit AES-GCM-SHA384, MAC: HMACv2, compression: none - 当输入
exit时,客户端会断开连接。
- 在终端或命令行运行OpenVPN客户端:
验证连接(可选)
-
检查服务器状态:
sudo systemctl status openvpn@default
查看服务是否正常运行。
-
检查客户端连接状态: 在客户端运行以下命令:
sudo openvpn --status
查看连接状态。
高级配置(可选)
-
设置访问控制列表(ACL): 在服务器的
server.conf中添加访问控制列表规则:# 允许访问内部网络的子网 acl "允许访问内部网络" ip 192.168.1./24 # 设置默认拒绝访问其他地址 default.deny # 允许通过这些规则 # ...
-
配置DNS和NAT: 在服务器的
server.conf中添加DNS和NAT选项:# 设置DNS服务器 push "dhcp-option DNS 192.168.1.1" # 配置NAT(如果需要) # ...
故障排除
-
连接被拒绝:
- 检查端口是否开放:
sudo nc -zv my-server-ip 1194
- 确保证书和私钥文件的权限正确:
sudo chmod 644 /etc/openvpn/pki/*
- 检查端口是否开放:
-
证书错误:
- 确保证书和私钥文件已经正确生成并复制到配置目录中。
- 检查证书是否过期:
openssl x509 -in /etc/openvpn/pki/ca.crt -text
-
防火墙问题:
- 确保防火墙不阻止OpenVPN的端口:
sudo ufw allow 1194
- 确保防火墙不阻止OpenVPN的端口:
管理OpenVPN服务器
-
通过OpenVPN的管理界面: OpenVPN服务器提供一个Web界面,可以通过浏览器访问: -,默认情况下,访问
https://your-server-ip:943- 登录管理员账户(默认用户名和密码是
admin/admin) - 您可以在这里管理用户、配置服务器、查看日志等。
- 登录管理员账户(默认用户名和密码是
-
管理用户和权限:
- 在管理界面中,添加新的用户,并为他们分配权限(允许访问特定的子网或路由)。
- 用户可以通过生成的认证证书或密码登录。
定期维护
-
备份配置和证书: 定期备份您的OpenVPN服务器配置文件和证书文件,以防万一。
-
监控日志: 查看OpenVPN服务器的日志文件:
sudo tail -f /var/log/openvpn/server.log
-
更新软件: 定期更新OpenVPN服务器和客户端以确保安全性和兼容性。
通过以上步骤,您应该能够成功配置并连接到OpenVPN服务器,如果您遇到任何问题,请参考OpenVPN的官方文档或社区资源(如Reddit或Stack Overflow)进行进一步的帮助。









