Перейти к содержанию

Установка сервера

Быстрая установка

Универсальный установщик выполнит всё необходимое:

curl -fsSL https://assets.rvpn.org/install.sh | sudo bash -s -- --setup --server

Доступные бинарные файлы

Бинарный файл Платформа
rvpn-server-x86_64-linux-gnu Linux x86_64 (glibc, большинство VPS)
rvpn-server-aarch64-linux-gnu Linux ARM64 (glibc)
rvpn-server-armv7-linux Linux ARMv7 (Raspberry Pi и т.д.)
rvpn-server-x86_64-linux-static Linux x86_64 (статическая сборка/musl)
rvpn-server-aarch64-linux-static Linux ARM64 (статическая сборка/musl)
rvpn-server-x86_64-freebsd FreeBSD x86_64
rvpn-server-macos-universal macOS Universal (arm64 + x86_64)

Если вы не уверены, какой вариант выбрать для Linux, начните с x86_64-linux-gnu. Используйте вариант -static, если возникают ошибки версии glibc.


Ручная установка

Linux (x86_64)

curl -LO https://assets.rvpn.org/1.0.5/rvpn-server-x86_64-linux-gnu
curl -LO https://assets.rvpn.org/1.0.5/rvpn-server-x86_64-linux-gnu.sha256
sha256sum -c rvpn-server-x86_64-linux-gnu.sha256
chmod +x rvpn-server-x86_64-linux-gnu
sudo mv rvpn-server-x86_64-linux-gnu /usr/local/bin/rvpn-server

FreeBSD

fetch https://assets.rvpn.org/1.0.5/rvpn-server-x86_64-freebsd
chmod +x rvpn-server-x86_64-freebsd
sudo mv rvpn-server-x86_64-freebsd /usr/local/bin/rvpn-server

macOS

curl -LO https://assets.rvpn.org/1.0.5/rvpn-server-macos-universal
chmod +x rvpn-server-macos-universal
sudo mv rvpn-server-macos-universal /usr/local/bin/rvpn-server
xattr -d com.apple.quarantine /usr/local/bin/rvpn-server

Примечание по безопасности: Официальные бинарные файлы macOS подписаны PDG Global Limited. Если вы загрузили бинарный файл из другого источника, который не подписан нами, не используйте его.


Системные требования

Доступ к портам

По умолчанию r-vpn слушает порт 443:

# UFW
sudo ufw allow 443/tcp

# iptables
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Пересылка IP-пакетов

Необходима для режима полнотуннельного TUN:

echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

Настройка NAT (режим TUN)

В режиме TUN (полнотуннельный VPN) сервер выступает в роли NAT-шлюза для клиентского трафика:

Linux (iptables)

sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT

FreeBSD (pf)

# Включение пересылки IP-пакетов
sudo sysctl -w net.inet.ip.forwarding=1

# Добавить в /etc/pf.conf:
# nat on vtnet0 from 10.200.0.0/24 to any -> (vtnet0)

macOS

macOS не поддерживает серверный NAT для VPN-туннелей. Для серверов на macOS используйте режим SOCKS5 или запустите rvpn-server внутри виртуальной машины Linux.