为什么选择 Pritunl?
在企业级 VPN 解决方案中,Pritunl 是一个值得关注的开源选择。它基于 OpenVPN 和 WireGuard,提供完整的 SELinux 支持、多平台部署能力和企业级安全特性。
核心优势:
- 完全开源,免费版本即可满足基本需求
- 支持 AWS、Google Cloud、Azure 等主流云平台
- 内置 SELinux 策略,安全性极高
- 支持集群部署,可扩展性强
快速安装指南
系统要求
Pritunl 推荐使用 AlmaLinux 或 Rocky Linux,因为它们提供完整的 SELinux 支持。Ubuntu 也可以使用,但官方不保证长期支持。
AlmaLinux 安装步骤
`bash
# 添加 MongoDB 仓库
sudo tee /etc/yum.repos.d/mongodb-org.repo << EOF
[mongodb-org-8.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/9/mongodb-org/8.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://pgp.mongodb.com/server-8.0.asc
EOF
# 添加 Pritunl 仓库
sudo tee /etc/yum.repos.d/pritunl.repo << EOF
[pritunl]
name=Pritunl Repository
baseurl=https://repo.pritunl.com/stable/yum/almalinux/9/
gpgcheck=1
enabled=1
gpgkey=https://raw.githubusercontent.com/pritunl/pgp/master/pritunl_repo_pub.asc
EOF
# 更新系统并安装
sudo dnf -y update
sudo dnf -y install pritunl pritunl-openvpn wireguard-tools mongodb-org
sudo systemctl enable mongod pritunl
sudo systemctl start mongod pritunl
`
Ubuntu 24.04 安装
`bash
# 添加仓库密钥和源
curl -fsSL https://pgp.mongodb.com/server-8.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg –dearmor –yes
curl -fsSL https://raw.githubusercontent.com/pritunl/pgp/master/pritunl_repo_pub.asc | sudo gpg -o /usr/share/keyrings/pritunl.gpg –dearmor –yes
# 安装 Pritunl
sudo apt update
sudo apt install pritunl openvpn mongodb-org wireguard wireguard-tools
sudo systemctl start pritunl mongod
sudo systemctl enable pritunl mongod
`
初始配置
数据库设置
首次启动时,访问服务器的 443 端口进行配置:
- 获取设置密钥:
sudo pritunl setup-key - 在 Web 界面输入密钥和 MongoDB URI
- 默认用户名:
pritunl - 获取默认密码:
sudo pritunl default-password
安全加固
增加文件限制:
`bash
sudo sh -c ‘echo “* hard nofile 64000” >> /etc/security/limits.conf’
sudo sh -c ‘echo “* soft nofile 64000” >> /etc/security/limits.conf’
`
配置 LetsEncrypt 证书:
- 确保域名 DNS 指向服务器 IP
- 开放端口 80 用于验证
- 证书每 80 天自动续订
企业级特性
集群部署
Pritunl 支持多主机集群,所有主机连接同一个 MongoDB 数据库。新主机加入时自动同步配置。
单点登录 (SSO)
支持多种 SSO 提供商:
- Google Workspace
- Okta
- Azure AD
- Active Directory
- OneLogin
- JumpCloud
WireGuard 支持
在服务器设置中启用 WireGuard,用户可在客户端切换协议,获得更好的性能。
性能优化建议
实例选择
- MongoDB:选择高内存实例
- Pritunl 节点:选择高 CPU、高主频实例(推荐 AMD C7a/C6a)
- 大型部署:多个小型节点优于少数大型节点
成本估算
建议每月每并发连接投入 $0.50-$1.00 的服务器成本。
客户端连接
- 下载 Pritunl 客户端:https://pritunl.com/download
- 从 Web 控制台复制配置文件 URI
- 在客户端中导入配置
- 连接 VPN
监控与维护
日志系统
Pritunl 提供完整的日志系统,支持集成 InfluxDB 进行监控。
备份策略
定期备份 MongoDB 数据库和 Pritunl 配置。
升级方法
`bash
# 更新 Pritunl
sudo yum update pritunl
# 更新 OpenVPN(RHEL 系统)
sudo yum swap openvpn pritunl-openvpn
`
常见问题
OpenVPN 认证错误
较新版本的 OpenVPN 客户端可能使用编码格式发送密码,导致认证失败。解决方法:更新 Pritunl 到最新版本。
SELinux 未生效
检查启动日志中的 SELinux 上下文:
`
[pritunl0][INFO] Starting server
selinux_context = “system_u:system_r:pritunl_t:s0”
`
如果是 none 或 unconfined,说明 SELinux 策略未正常工作。
总结
Pritunl 是一个功能强大、安全可靠的开源 VPN 解析方案。它适合:
- 需要企业级 VPN 的中小企业
- 追求高安全性的技术团队
- 需要跨云平台部署的场景
- 希望避免商业 VPN 高昂许可费用的团队
完整文档:https://docs.pritunl.com/kb/vpn
*本文基于 Pritunl 官方文档整理,更多技术细节请访问官方文档。*
发表回复