Debian 12 установка настройка сервера OpenVPN 2.6.3

Установка ОпенВПН со скриптами администрирования ключей(изи-РСА):

apt install openvpn easy-rsa
cd /etc/openvpn/easy-rsa

Инициализация структуры путей к скрипту:

./easyrsa init-pki

Здесь можно настроить под себя конфигурацию(переменные) самой службы.

Далее создание ключей и сертификатов:

./easyrsa build-ca nopass
 ./easyrsa gen-req vpn-server nopass
./easyrsa sign-req server vpn-server
openvpn --genkey secret pki/ta.key

Пример рабочей конфигурация сервера OpenVPN 2.6:

port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/vpn-server.crt
key /etc/openvpn/easy-rsa/pki/private/vpn-server.key
dh /etc/openvpn/easy-rsa/pki/dh.pem
data-ciphers AES-256-GCM:AES-128-GCM:?CHACHA20-POLY1305:AES-256-CBC
topology subnet
server 10.77.0.0 255.255.0.0
ifconfig-pool-persist /etc/openvpn/server/ipp.txt
client-config-dir /etc/openvpn/server/ccd
# Указать шлюз клиентам
#push "redirect-gateway def1 bypass-dhcp"
#push "redirect-gateway ipv6 bypass-dhcp"
#push "route-gateway 192.168.10.1"
# Указывать ДСИ
#push "dhcp-option DNS 8.8.8.8"
#push "dhcp-option DNS 1.1.1.1"
keepalive 10 120
persist-tun
status /var/log/openvpn/openvpn-status.log
log-append /var/log/openvpn/openvpn.log
verb 3
explicit-exit-notify 1
tls-auth /etc/openvpn/easy-rsa/pki/ta.key 0

Создать файлы, прописать права доступа. Эти файлы для возможной записи статических адресов(ccd) и журнала авторегистраций(ipp) клиентов:

mkdir /etc/openvpn/server/ccd
chmod 755 /etc/openvpn/server/ccd
touch /etc/openvpn/server/ipp.txt
chmod 755 /etc/openvpn/server/ipp.txt

Разрешаем автоматический старт сервиса OpenVPN:

 systemctl enable openvpn-server@server

Запускаем сервер openvpn-server:

 systemctl start openvpn-server@server

Перезагрузить службу openvpn:

 systemctl restart openvpn-server@server

Основные команды администратора сервера OpenVPN для управления клиентами:

(перейти в папку со скриптом: cd /etc/openvpn/easy-rsa)

1. Создать сертификат клиенту:

./easyrsa.real build-client-full client1 nopass

Срок действия сертификата можно менять в переменной в файле vars

2. Отозвать сертификат клиента:

./easyrsa.real revoke client1

3. Сгенерировать список отзыва:

./easyrsa.real gen-crl

Выдача статических адресов клиенту вручную осуществляется через файл=название сертификата, помещенному в папку /etc/openvpn/server/ccd. Например, файл client1, содержимое файла:

ifconfig-push 10.77.77.100 255.255.255.0

 

Литература:

Самое главное: пример конфига сервера: https://github.com/OpenVPN/openvpn/blob/master/sample/sample-config-files/server.conf

  1. Почему отключена сжатие, шифрование GCM и нет SHA512: https://forums.openvpn.net/viewtopic.php?t=33671
  2. https://redos.red-soft.ru/base/redos-7_3/7_3-network/7_3-sett-vpn/7_3-openvpn/?nocache=1732823939909 (заброшка)
  3. https://wiki.debian.org/OpenVPN#Installation (заброшка)

Windows XP client OpenVPN error: Failed to negotiate with cypher

Дано: Windows XP, опенвпн клиент версии 2.3.18. При подключении к серверу Openvpn  v2.6.8_1 выдает ошибку: «…Failed to negotiate with cypher…»

Решение: добавить на сервер в конфиг поддержку старых версий:

compat-mode 2.4.0

Читать далее «Windows XP client OpenVPN error: Failed to negotiate with cypher»

debian openvpn client

apt install openvpn

положить ключи и настроить файл конфигурации клиента, добавить скрипт подключения(с созданием устройств), запустить скрипт

Такие файлы в папке:

Файл конфигурации клиента filipp.conf: Читать далее «debian openvpn client»

debian не найден tun адаптер

На VPS сервере нужно прокинуть сеть до KSC. Поставил опенвпн, запускаю клиента

openvpn --config /etc/openvpn/client/filip.conf

получаю ошибку: «ERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2)»

Решение(самому создать устройство), вот пример всех команды в скрипте:

#!/bin/bash

mkdir -p /dev/net
mknod /dev/net/tun c 10 200
chmod 600 /dev/net/tun

openvpn --config /etc/openvpn/client/filip.conf

сохраняем, права 755, добавляем в планировщик:

# crontab -e

строка выполнения скрипта при загрузке:

@reboot /path/to/where/you/saved/the/script

And after rebooting it should have started openvpn successfully.

 

 

OpenVPN FreeBSD 13

C 2016 года с easyrsa произошли метаморфозы, теперь работает без «sh ./easyrsa.real», сейчас просто пиши «easyrsa», например: «easyrsa init-pki». Руководство: https://github.com/OpenVPN/easy-rsa/blob/master/doc/EasyRSA-Readme.md

pkg install openvpn easy-rsa

mkdir -p /usr/local/etc/openvpn

cp /usr/local/share/examples/openvpn/sample-config-files/server.conf /usr/local/etc/openvpn/openvpn.conf

cd /usr/local/etc/openvpn

easyrsa init-pki

Читать далее «OpenVPN FreeBSD 13»

OpenVPN client using LuCI OpenWRT

  • This guide describes how install and operate the OpenVPN client using LuCI web interface.
  • You can use it to connect to your own OpenVPN server or a commercial OpenVPN provider.
  • Follow OpenVPN basic for server setup and OpenVPN extras for additional tuning.
  • The performance of different SoCs can be found here OpenVPN performance.

Читать далее «OpenVPN client using LuCI OpenWRT»

Способ отозвать сертификат пользователя EasyRSA.real при отсутствующем или поврежденном файле самого сертификата

OpenVPN — Revoke certificate without .crt file

Если попытаться отозвать сертификат клиента, когда он, например, удален с сервера(испорчен), получишь ошибку «Unable to revoke as the input file is not a valid certificate».

admin@vpn:/usr/local/etc/openvpn/easy-rsa# ./easyrsa.real revoke UserName

Note: using Easy-RSA configuration from: ./vars

Easy-RSA error:

Unable to revoke as the input file is not a valid certificate. Unexpected
input in file: /usr/local/etc/openvpn/easy-rsa/pki/issued/UserName.crt

Читать далее «Способ отозвать сертификат пользователя EasyRSA.real при отсутствующем или поврежденном файле самого сертификата»

OpenVPN 2.4.5 Easy-RSA FreeBSD 11.1

Памятка

  1. Используй в первую очередь руководства разработчиков, даже если они отпугивают своей скромностью оформления. Это сбережет тебе много времени.
  2. Используй за основу файлы конфигурации по-умолчанию из установленных пакетов, благо они идут с пакетами в комплекте. Даже, если придется потратить время на осознание их назначений — «Лучше пару часов потерять, потом за пять минут долететь».

Установка OpenVPN на FreeBSD

Читать далее «OpenVPN 2.4.5 Easy-RSA FreeBSD 11.1»

Пересборка ядра без GENERIC

Если после установки системы, как у меня, у вас каталог /usr/src/ пуст, тогда придется воспользоваться исходными файлами с официального сайта.

1. Устанавливаем пакет subversion

# cd /usr/ports/devel/subversion
# make install clean

теперь доступна команда svn, используется для извлечения чистой копии исходных кодов(с официльного сайта(репозитория) в локальный каталог(вашей машины). Для просмотра репозиториев через браузер используйте http://svnweb.FreeBSD.org/.

Предупреждение:
Если локальный каталог уже существует, но не был создан с помощью svn, переименуйте его или удалите перед загрузкой. Загрузка в существующий не-svn каталог может вызвать конфликты между существующими файлами и получаемыми из репозитория.

2. Заливаем к себе файлы с репозитория

# rm -rf /usr/src 
# svn checkout https://svn0.us-west.FreeBSD.org/base/releng/11.1/ /usr/src

, где первой строкой чистим папку, если в ней что-то еще есть, согласно предупреждению
svn0.us-west.FreeBSD.org   — репозиторий
base        — раздел с основными системными файлами FreeBSD
releng      — ветка с исправлениями(bug-fix и security patches для соответствующего RELEAZE)
11.1  — (номер моего релиза)копирую содержимое этого каталога в
/usr/src/    — приемный каталог

Дополнительная информация, которая привела к накоплению вышеизложенной выжимки: Читать далее «Пересборка ядра без GENERIC»