No description
| .env.example | ||
| install.sh | ||
| README.md | ||
| vpn-setup.sh | ||
sshVPN для OpenWrt
Простой и безопасный способ создать точка-точка VPN через SSH-туннель на роутере с OpenWrt.
Использует встроенный в OpenSSH механизм tun (-w), не требует дополнительных демонов (вроде WireGuard или OpenVPN).
🚀 Быстрая установка
Подключитесь к вашему роутеру по SSH и выполните:
sh -c "$(wget -qO- https://git.di5.ru/di5.ru/sshVPN/raw/branch/main/install.sh)"
Скрипт:
- Установит недостающие пакеты (
openssh-client,kmod-tun); - Задаст вопросы для настройки;
- Сгенерирует SSH-ключ (или использует ваш);
- Настроит сетевой интерфейс и автозапуск.
🧰 Поддерживаемые системы
- OpenWrt (с
opkg) — основное целевое окружение - Alpine Linux (с
apk) — для контейнеров или кастомных сборок
Скрипт автоматически определяет менеджер пакетов и адаптирует установку.
🔧 Требования
- OpenWrt или Alpine Linux
- Доступ к серверу по SSH с правами на создание TUN-интерфейса
- На сервере в
/etc/ssh/sshd_configдолжно быть:PermitTunnel point-to-point AllowTcpForwarding yes - На сервере включён IP forwarding:
sysctl net.ipv4.ip_forward=1
📂 Файлы
install.sh— главный установщик (интерактивный)ttvpn-setup.sh— применяет.envи настраивает систему.env.example— шаблон конфигурации/opt/sshVPN/— рабочая директория (ключи, конфиг)
🛠 Управление
-
Запуск вручную:
/opt/ssh-vpn-connect.sh -
Перезапуск сервиса:
/etc/init.d/ssh-vpn restart -
Отключение автозапуска:
ИзменитеAUTO_START=falseв/opt/sshVPN/.envи перезапуститеvpn-setup.sh
⚠️ Безопасность
- Приватный ключ хранится в
/opt/sshVPN/id_vpn - Подключение использует
StrictHostKeyChecking=no— подходит для доверенных сетей - Для продакшена рекомендуется настроить
known_hostsвручную
📬 Поддержка
Проект: di5.ru
Matrix: @ol:di5.ru
Сервер: di5.ru