LINUX.ORG.RU
решено ФорумAdmin

Срочное развёртывание OpenVPN сервера для RDP-маздаев

 ,


2

1

Ситуация такова: есть на фирме маздай специально выделенный для RDP-соединений и 10-15 юзеров во внешнем мире. Необходимо до вторника поднять VPN для удалённых пользователей и вести логи их подключений. Пользователям видеть друг друга и взаимодействовать не нужно. Просто пачка юзеров на один RDP-сервер. OpenVPN будет на *nix.

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

Не однократно находил «РАБОЧИЕ конфиги как раз под эту задачу», но ни разу так и не смог заставить эту систему работать. Пробовал под *nix создать сертификаты, подписанные для другой серверной машины (маздай) - как результат: маздай поднялся аки сервер, но клиенты отказались принимать сертификаты.

Что не так делаю-то? Мучаю эту тему уже почти неделю, и у нормальных людей, судя по интернету, оно работает как надо, а у меня всё через одно место, пардон. Если у кого есть подобная реализация - очень прошу срочно помочь!

★★

Как генеришь сертификаты?

В маздае пути к сертификатам прописываются типа:

C:\\Program Files\\OpenVPN\\ca.crt

Или просто кладешь в папку с конфигом и в конфиге пишешь имя файла сертифката.

Acceptor ★★
()
Последнее исправление: Acceptor (всего исправлений: 1)
Ответ на: комментарий от Acceptor

Как делать сертификаты под маздаем я так и не понял из-за плохого понимания особенностей работы CMD, поэтому генерил всё под ubuntu, где OVPN взял из репозитория. Генерил 1:1 по статье, которая указана ссылкой в шапке - заполнил vars, сделал его source и исполнение (так, на всякий случай), проверил наличие этих переменных, потом генерил сертификаты отвечая на все вопросы. Там, где срашивается hostname машины указывал именно то имя хоста, на котором будет лежать данный сертификат. Во время ввода следил за регистром.

О путях в маздае: GUI мне выдавал ошибки «не могу загрузить потому что нет такого файла сертификата» до тех пор, пока я не написал путь вот так:

C:\\Program\ Files\\OpenVPN\\config\\ca.crt

После этого программа перестала ругаться на путь к сертифику, но сказала что теперь «не могу найти системную библиотеку». При этом не пишет КАКУЮ именно и где. Ни в логах, ни в GUI.

Естесственно, первое, что я пробовал - поместить сертификат рядом с файлом-конфигом и не писать путей, но тогда программа жаловалась на то, что не может найти файл сертификата.

zzdnx ★★
() автор топика
Ответ на: комментарий от zzdnx

У меня на клиенте (XP) в одной папке лежат ca.crt, host.crt, host.csr, host.key и client.ovpn, примерно такой:

client
dev tun
proto tcp
remote server.org 443
resolv-retry infinite
nobind
persist-key
persist-tun
; ---
ca ca.crt
cert host.crt
key host.key
comp-lzo
verb 3
Скормил .ovpn родному клиенту (OpenVPN Client, который ещё .NET хочет) и всё работает.

ollowtf ★★★
()
Ответ на: комментарий от ollowtf

Какой именно .NET хочет эта штука? У меня на ХР стоят: 1.1, 2.0 SP2, 2.0 LP-Rus SP2, 3.0 SP2, 3.0 LP-Rus SP2, 3.5 SP1.

OpenVPN версии 2.0.9 с сйта разработчика.

zzdnx ★★
() автор топика
Последнее исправление: zzdnx (всего исправлений: 1)

Если вы пути не можете прописать, то это вообще кошмар. Все равно, что просить чужих людей в туалете вам, извиняюсь за выражение, попу «срочно» подтереть.

Показывайте конфиги, говорите, какие ошибки сейчас.

zgen ★★★★★
()
Ответ на: комментарий от zgen

Конфиг клиента:

dev tun
proto udp
remote RX-WIN7
port 2000
client
resolv-retry infinite
ca C:\\Program\ Files\\OpenVPN\\config\\ca.crt
cert C:\\Program\ Files\\OpenVPN\\config\\client.crt
key C:\\Program\ Files\\OpenVPN\\config\\client.key
tls-client
tls-auth C:\\Program\ Files\\OpenVPN\\config\\ta.key 1
auth MD5
cipher BF-CBC
ns-cert-type server
comp-lzo
persist-key
persist-tun
verb 3
Лог в GUI:
Fri Apr 12 12:36:46 2013 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct  1 2006
Fri Apr 12 12:36:46 2013 Cannot load certificate file C:\Program Files\OpenVPN\config\client.crt: error:02001002:system library:fopen:No such file or directory: error:20074002:BIO routines:FILE_CTRL:system lib: error:140AD002:SSL routines:SSL_CTX_use_certificate_file:system lib
Fri Apr 12 12:36:46 2013 Exiting
Тотже GUI, если убрать слэш перед пробелом в «Program Files»:
Fri Apr 12 12:39:02 2013 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct  1 2006
Fri Apr 12 12:39:02 2013 Cannot load certificate file C:\Program: error:02001002:system library:fopen:No such file or directory: error:20074002:BIO routines:FILE_CTRL:system lib: error:140AD002:SSL routines:SSL_CTX_use_certificate_file:system lib
Fri Apr 12 12:39:02 2013 Exiting

zzdnx ★★
() автор топика
Ответ на: комментарий от zzdnx

Задачка, однако. Переименовывание файла client.crt не возможно. Ни эксплорером, ни CMD. Переименовал его под *nix, флэшкой перенёс на машину, там переименовав убедился что всё хорошо, поместил на нужное место и GUI зевёлся... Уже не в первый раз сталкиваюсь с тем, что после записи на NTFS из *nix бывают, порой, очень странные и замысловатые проблемы.

Сейчас при старте спрашивает пароль и потом пишет следующее:

Fri Apr 12 12:54:08 2013 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct  1 2006
Fri Apr 12 12:54:10 2013 Control Channel Authentication: using 'ta.key' as a OpenVPN static key file
Fri Apr 12 12:54:10 2013 Outgoing Control Channel Authentication: Using 128 bit message hash 'MD5' for HMAC authentication
Fri Apr 12 12:54:10 2013 Incoming Control Channel Authentication: Using 128 bit message hash 'MD5' for HMAC authentication
Fri Apr 12 12:54:10 2013 LZO compression initialized
Fri Apr 12 12:54:10 2013 Control Channel MTU parms [ L:1538 D:162 EF:62 EB:0 ET:0 EL:0 ]
Fri Apr 12 12:54:10 2013 Data Channel MTU parms [ L:1538 D:1450 EF:38 EB:135 ET:0 EL:0 AF:3/1 ]
Fri Apr 12 12:54:10 2013 Local Options hash (VER=V4): '03fa487d'
Fri Apr 12 12:54:10 2013 Expected Remote Options hash (VER=V4): '1056bce3'
Fri Apr 12 12:54:10 2013 UDPv4 link local (bound): [undef]:2000
Fri Apr 12 12:54:10 2013 UDPv4 link remote: 169.254.0.128:2000
Fri Apr 12 12:54:10 2013 read UDPv4: Connection reset by peer (WSAECONNRESET) (code=10054)
...
Fri Apr 12 12:54:22 2013 read UDPv4: Connection reset by peer (WSAECONNRESET) (code=10054)
...
Но это уже мои проблемы. Извините, что отнял Ваше время бестолковым вопросом... Надо было головой думать - ведь в прошлм были похожие проблемы, были!

zzdnx ★★
() автор топика
Ответ на: комментарий от zzdnx

OpenVPN 2.0.9

Обновись.

C:\Program Files\OpenVPN\config\client.crt: error:02001002:system library:fopen:No such file or directory

Ну нету там такого файла. Чего ж тут непонятного. Или все-таки есть?

thesis ★★★★★
()
Ответ на: комментарий от thesis

Файл с этим именем БЫЛ. И лежал он точно там, куда указывает путь. Просто с этим файлом что-то не так из-за того что я его кидал напрямую в NTFS из *nix. Этот файл нельзя ни удалить, ни переименовать, хотя перемещать можно. Сейчас OpenVPN работает даже без указания путей - сертификаты в конфиге прописаны по коротким именам (без пути) и клиет пытается соединяться с сервером.

zzdnx ★★
() автор топика
Ответ на: комментарий от ollowtf

Спасибо за полезную информацию, я учту это в будущем при работе с клиентами.

zzdnx ★★
() автор топика
Ответ на: комментарий от bvn13

перед Files нет второго слеша?

Уже нет и оно работает, так как сертификаты вызываются строго по имени файла в каталоге, а не по полному имени.

zzdnx ★★
() автор топика
Ответ на: комментарий от zzdnx

Ну это фигня. Проблемы с правами на файл полечить сам сможешь (или просто удали его тоже из-под линукса, как и записал).
Опенвпн таки обнови, это не лишнее.
Ну и лог сервера покажи теперь.

thesis ★★★★★
()

Кстати, для генерилки сертификатов можно юзать http://xca.sourceforge.net/
Кроссплатформенное, база в шифрованном файле, носимое, гуёвое. Для простых вещей - оч. хор.

thesis ★★★★★
()
Ответ на: комментарий от thesis
Fri Apr 12 13:09:48 2013 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct  1 2006
Fri Apr 12 13:09:48 2013 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA.  OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Fri Apr 12 13:09:48 2013 TAP-WIN32 device [vpn1] opened: \\.\Global\{17C27881-D122-4AD1-A519-66F9AA684B77}.tap
Fri Apr 12 13:09:48 2013 Notified TAP-Win32 driver to set a DHCP IP/netmask of 192.168.0.1/255.255.255.252 on interface {17C27881-D122-4AD1-A519-66F9AA684B77} [DHCP-serv: 192.168.0.2, lease-time: 31536000]
Fri Apr 12 13:09:48 2013 Sleeping for 10 seconds...
Fri Apr 12 13:09:58 2013 NOTE: FlushIpNetTable failed on interface [14] {17C27881-D122-4AD1-A519-66F9AA684B77} (status=5) : Отказано в доступе.  
Fri Apr 12 13:09:58 2013 ROUTE: route addition failed using CreateIpForwardEntry: Неверны один или несколько аргументов.   [if_index=14]
Fri Apr 12 13:09:58 2013 UDPv4 link local (bound): [undef]:1194
Fri Apr 12 13:09:58 2013 UDPv4 link remote: [undef]
Fri Apr 12 13:09:58 2013 Initialization Sequence Completed

FlushIpNetTable failed on interface (status=5) : Отказано в доступе. Странно, ведь я АДМИН. Но это уже не к пользователям линукс, так как в данном случае сервер на маздае. Можно ссылочку на новый OpenVPN_4_маздай? Ибо я качал с офсайта и версия получилась 2.0.9.

zzdnx ★★
() автор топика
Ответ на: комментарий от thesis

Лог сервера при подключении клиента + лог клиента.

Консольно (CMD) запущенный сервер:

Fri Apr 12 14:13:27 2013 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct  1 2006
Fri Apr 12 14:13:27 2013 TAP-WIN32 device [vpn1] opened: \\.\Global\{17C27881-D122-4AD1-A519-66F9AA684B77}.tap
Fri Apr 12 14:13:27 2013 Notified TAP-Win32 driver to set a DHCP IP/netmask of 192.168.0.1/255.255.255.252 on interface {17C27881-D122-4AD1-A519-66F9AA684B77} [
DHCP-serv: 192.168.0.2, lease-time: 31536000]
Fri Apr 12 14:13:27 2013 Sleeping for 10 seconds...
Fri Apr 12 14:13:37 2013 NOTE: FlushIpNetTable failed on interface [14] {17C27881-D122-4AD1-A519-66F9AA684B77} (status=5) : ╬Єърчрэю т фюёЄєях.
Fri Apr 12 14:13:37 2013 ROUTE: route addition failed using CreateIpForwardEntry: ═хтхЁэ√ юфшэ шыш эхёъюы№ъю рЁуєьхэЄют.   [if_index=14]
Fri Apr 12 14:13:37 2013 UDPv4 link local (bound): [undef]:8080
Fri Apr 12 14:13:37 2013 UDPv4 link remote: [undef]
Fri Apr 12 14:13:37 2013 Initialization Sequence Completed
Fri Apr 12 14:13:37 2013 169.254.0.26:8080 Re-using SSL/TLS context
Fri Apr 12 14:13:37 2013 169.254.0.26:8080 TLS Error: reading acknowledgement record from packet
Fri Apr 12 14:13:37 2013 169.254.0.26:8080 TLS Error: reading acknowledgement record from packet
Fri Apr 12 14:13:37 2013 169.254.0.26:8080 TLS Error: reading acknowledgement record from packet
...
GUI клиента:
Fri Apr 12 14:13:32 2013 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Fri Apr 12 14:13:32 2013 TLS Error: TLS handshake failed
Fri Apr 12 14:13:32 2013 TCP/UDP: Closing socket
Fri Apr 12 14:13:32 2013 SIGUSR1[soft,tls-error] received, process restarting
Fri Apr 12 14:13:32 2013 Restart pause, 2 second(s)
Fri Apr 12 14:13:34 2013 Re-using SSL/TLS context
Fri Apr 12 14:13:34 2013 LZO compression initialized
Fri Apr 12 14:13:34 2013 Control Channel MTU parms [ L:1538 D:162 EF:62 EB:0 ET:0 EL:0 ]
Fri Apr 12 14:13:34 2013 Data Channel MTU parms [ L:1538 D:1450 EF:38 EB:135 ET:0 EL:0 AF:3/1 ]
Fri Apr 12 14:13:34 2013 Local Options hash (VER=V4): '03fa487d'
Fri Apr 12 14:13:34 2013 Expected Remote Options hash (VER=V4): '1056bce3'
Fri Apr 12 14:13:34 2013 UDPv4 link local (bound): [undef]:8080
Fri Apr 12 14:13:34 2013 UDPv4 link remote: 169.254.0.128:8080
Fri Apr 12 14:13:38 2013 TLS: Initial packet from 169.254.0.128:8080, sid=d6ebfb46 12c839bc
Fri Apr 12 14:13:38 2013 TLS Error: cannot locate HMAC in incoming packet from 169.254.0.128:8080
Fri Apr 12 14:13:38 2013 TLS: Initial packet from 169.254.0.128:8080, sid=23e2c5ae 00623c10
Fri Apr 12 14:13:38 2013 TLS Error: cannot locate HMAC in incoming packet from 169.254.0.128:8080
Fri Apr 12 14:13:40 2013 TLS: Initial packet from 169.254.0.128:8080, sid=d6ebfb46 12c839bc
Fri Apr 12 14:13:40 2013 TLS Error: cannot locate HMAC in incoming packet from 169.254.0.128:8080
...

zzdnx ★★
() автор топика
Ответ на: комментарий от zzdnx

C:\Program Files\OpenVPN\config\client.crt: error:02001002:system library:fopen:No such file or directory

В директории «C:\Program Files\OpenVPN\config\»
нет файла client.crt или доступа к нему. Что-то непонятно?



Cannot load certificate file C:\Program

Убрали экранирование и при этом не взяли путь в кавычки.

zgen ★★★★★
()
Ответ на: комментарий от zgen

Факт остаётся фактом: «C:\Program Files\OpenVPN\config\client.crt» СУЩЕСТВОВАЛ. И фиг знает, почему этот файл не видеа программа. После того, как я скопировал этот файл заново - всё заработало. Сейчас вожусь с маршрутизацией: клиент авторизуется на сервере, но сервера не видит. Сервер точно так же не видит клиента.

Маршруты на сервере:

Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
          0.0.0.0          0.0.0.0      169.254.2.1    169.254.0.128     10
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
      169.254.0.0      255.255.0.0         On-link     169.254.0.128    266
    169.254.0.128  255.255.255.255         On-link     169.254.0.128    266
  169.254.255.255  255.255.255.255         On-link     169.254.0.128    266
      192.168.0.0  255.255.255.252         On-link       192.168.0.1    286
      192.168.0.1  255.255.255.255         On-link       192.168.0.1    286
      192.168.0.3  255.255.255.255         On-link       192.168.0.1    286
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link     169.254.0.128    266
        224.0.0.0        240.0.0.0         On-link       192.168.0.1    286
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link     169.254.0.128    266
  255.255.255.255  255.255.255.255         On-link       192.168.0.1    286
И маршруты на клиенте:
Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
          0.0.0.0          0.0.0.0      169.254.2.1    169.254.0.26       10
        127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
      169.254.0.0      255.255.0.0     169.254.0.26    169.254.0.26       10
     169.254.0.26  255.255.255.255        127.0.0.1       127.0.0.1       10
  169.254.255.255  255.255.255.255     169.254.0.26    169.254.0.26       10
      192.168.0.0    255.255.255.0      192.168.0.5     192.168.0.6       1
      192.168.0.4  255.255.255.252      192.168.0.6     192.168.0.6       30
      192.168.0.6  255.255.255.255        127.0.0.1       127.0.0.1       30
    192.168.0.255  255.255.255.255      192.168.0.6     192.168.0.6       30
        224.0.0.0        240.0.0.0     169.254.0.26    169.254.0.26       10
        224.0.0.0        240.0.0.0      192.168.0.6     192.168.0.6       30
  255.255.255.255  255.255.255.255     169.254.0.26    169.254.0.26       1
  255.255.255.255  255.255.255.255      192.168.0.6     192.168.0.6       1
Основной шлюз:         169.254.2.1
Как правильно прописать маршрутизацию в конфигах сервера таким образом, чтобы оно работало - так и не понятно. VPN-сетка долна адресовывать в 192.168.ХХХ.ХХХ

zzdnx ★★
() автор топика
Последнее исправление: zzdnx (всего исправлений: 2)

Виртуализация есть? Подними виртуалку с pfsense внутри, там все необходимое тебе есть в веб-морде.

pekmop1024 ★★★★★
()
Ответ на: комментарий от xtraeft

Там кроме правил файрволла нет ничего про маршрутизацию. Я в упор не пойму как правильно прописать routы на сервере и клиентах так, чтобы каждый клиент видел сервер. Этого будет более чем достаточно.

zzdnx ★★
() автор топика
Ответ на: комментарий от zzdnx

путь лучше записать как относительный бинарника openvpn "..\\config\\ca.crt"

Spider_xp
()
Ответ на: комментарий от Spider_xp

в конфиге написано proto tun или tap?

В обоих proto tun а так же client-to-client

zzdnx ★★
() автор топика
Последнее исправление: zzdnx (всего исправлений: 1)
Ответ на: комментарий от Spider_xp

Сервер конфиг:

dev tun
port 8080
proto udp
server 192.168.0.0 255.255.255.0
client-to-client
ifconfig-pool-persist ipp.txt
keepalive 10 120
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
auth MD5 
comp-lzo
cipher BF-CBC
Юзер конфиг:
dev tun
proto udp
remote rx-win7 
port 8080
client
resolv-retry infinite
ca ca.crt
cert Client.crt
key Client.key
auth MD5
cipher BF-CBC
comp-lzo
persist-key
persist-tun
verb 3

zzdnx ★★
() автор топика
Ответ на: комментарий от Spider_xp

смысл в том что tun используется для point-to-point соединений, а tap для point-to-multipoint

пример работающего серверного конфига

dev tap
proto tcp-server
mode server
comp-lzo
log-append /var/log/openvpn_gameserv.log
daemon
ifconfig-pool 192.168.252.2 192.168.252.6
ifconfig 192.168.252.1 255.255.255.0
ifconfig-pool-persist /etc/openvpn/iplist_gameserv
tls-server
dh keys/game/dh2048.pem
ca keys/game/ca.crt
cert keys/game/gameserv.crt
key keys/game/gameserv.key
port 11938
user nobody
group nobody
keepalive 10 60
persist-tun
persist-key
verb 1
и соответствующего ему клиентского конфига под винду
dev tap
proto tcp-client
remote адрес сервера
port 11938
client
tls-client
comp-lzo
ns-cert-type server
ca ..\\config\\ca.crt
cert ..\\config\\clientn.crt
key ..\\config\\clientn.key
user nobody
group nobody
keepalive 10 60
persist-key
persist-tun
verb 1

Spider_xp
()
Ответ на: комментарий от zzdnx

просто поменяй tun на tap и убери client-to-client иначе клиенты смогут между собой общаться и добавь пул адресов для клиентов

Spider_xp
()
Ответ на: комментарий от Spider_xp

А как быть с добавлением пользователя? Просто генерируем ему сертификат, кидаем файлы в папку и всё? Или на сервере сертификаты тоже обновить после добавления нового клиента?

Я создал нового клиента, кинул ему сертификаты и вот что вижу:

Fri Apr 12 17:46:52 2013 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct  1 2006
Fri Apr 12 17:46:52 2013 WARNING: No server certificate verification method has been enabled.  See http://openvpn.net/howto.html#mitm for more info.
Fri Apr 12 17:46:52 2013 LZO compression initialized
Fri Apr 12 17:46:52 2013 Control Channel MTU parms [ L:1570 D:138 EF:38 EB:0 ET:0 EL:0 ]
Fri Apr 12 17:46:52 2013 Data Channel MTU parms [ L:1570 D:1450 EF:38 EB:135 ET:32 EL:0 AF:3/1 ]
Fri Apr 12 17:46:52 2013 Local Options hash (VER=V4): 'ba985338'
Fri Apr 12 17:46:52 2013 Expected Remote Options hash (VER=V4): '1f5f71d5'
Fri Apr 12 17:46:52 2013 UDPv4 link local (bound): [undef]:8080
Fri Apr 12 17:46:52 2013 UDPv4 link remote: 169.254.0.128:8080
Fri Apr 12 17:46:52 2013 TLS Error: Unroutable control packet received from 169.254.0.128:8080 (si=3 op=P_CONTROL_V1)

zzdnx ★★
() автор топика
Последнее исправление: zzdnx (всего исправлений: 1)
Ответ на: комментарий от zzdnx

сертификаты генерятся только для пользователя

я честно говоря делал почти по 2м хаутушкам и там небыло например про auth md5 и cipher, потому возможно мы говорим про разные методы авторизации. попробуй на сервере сделать конфиг

dev tap
mode server
port 8080
proto udp
daemon
ifconfig-pool 192.168.0.2 192.168.0.20
ifconfig 192.168.0.1 255.255.255.0
ifconfig-pool-persist /etc/openvpn/iplist ;это список соответсятвия ip<->name
tls-server
keepalive 10 120
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
comp-lzo
persist-tun
persist-key
verb 1
для клиента
dev tap
proto udp
remote rx-win7 
port 8080
client
tls-client
comp-lzo
ns-cert-type server
keepalive 10 60
persist-key
persist-tun
resolv-retry infinite
ca ca.crt
cert Client.crt
key Client.key
verb 3
на клиент закинуть ca.crt, client.crt, client.key. на сервер ca.crt, server.crt, server.key, dh1024.pem

Spider_xp
()

Ситуация такова: есть на фирме маздай специально выделенный для RDP-соединений и 10-15 юзеров во внешнем мире. Необходимо до вторника поднять VPN для удалённых пользователей и вести логи их подключений

Ненужно. Для этого случая достаточно stunnel. Но даже он «лишнее звено», поскольку RDP-сервер умеет TLS. Аутентификация и её логи на винде будут, шифрование будет, RDP работать будет - задача решена, VPN ненужен.

P.S.: я сам фанат OpenVPN - yо тут он действительно НЕ НУЖЕН.

no-dashi ★★★★★
()
Ответ на: комментарий от no-dashi

поскольку RDP-сервер умеет TLS. Аутентификация и её логи на винде будут, шифрование будет, RDP работать будет - задача решена, VPN ненужен.

- присоединяюсь, по отношению.

Лишь бы пользователям запрещено было простые пароли придумывать и менять их иногда. Так можно жить годами.

kpush
()
Ответ на: комментарий от no-dashi

Можно у Вас узнать где именно будут эти логи и на какая именно информация в них содержится? А то знаю я как «приятно» ковырять логи той же ХР - числовые коды событий, никаких пояснений, в том же месте могут лежать прочие логи и как следствие всего этого: мониторинг подключений/отключений, неправильной авторизации становится просто невозможен.

zzdnx ★★
() автор топика
Ответ на: комментарий от no-dashi

К тому же у нас не RDP-сервер, а простая машина, используемая для подключения извне. Мера временная, так что на покупку сервера мотивации нет.

zzdnx ★★
() автор топика
Ответ на: комментарий от zzdnx

Можно у Вас узнать где именно будут эти логи и на какая именно информация в них содержится?

Windows event logs. Кто, когда, возможно откуда.

А то знаю я как «приятно» ковырять логи той же ХР - числовые коды событий

Не для логинов.

в том же месте могут лежать прочие логи и как следствие всего этого: мониторинг подключений/отключений, неправильной авторизации становится просто невозможен.

Слово «фильтр событий» вам незнакомо?

no-dashi ★★★★★
()
Ответ на: комментарий от zzdnx

К тому же у нас не RDP-сервер

Ваша фраза звучит примерно как «К тому же у меня не веб-сервер, а линукс с апачем»

no-dashi ★★★★★
()
Ответ на: комментарий от no-dashi

«К тому же у меня не веб-сервер, а линукс с апачем»

XD Спасибо за сравнение!

«Фильтр событий» - я даже когда-то слышал это сочетание слов, но никогда им не пользовался. На самом деле всё упирается не в меня, а в заморочки моего непосредственного начальника - TLS и журналов «форточки» ему было недостаточно, не удобно в использовании и вообще просто «не то». Логи ему подавай. Удобочитаемые, централизованные, красивые. Вот ЗАХОТЕЛОСЬ ему VPN... А раз захотелось... Уже собрал работающую на виртуалках конфигурацию на основе OpenVPN, ниже приведу конфиги и буду благодарен, если поправите в них возможные ошибки или лишние строки укажите.

Сервер:

dev tap
port 8080
proto udp
server 192.168.0.0 255.255.255.0
route 192.168.0.0 255.255.255.0
client-to-client
ifconfig-pool-persist ipp.txt
keepalive 10 120
# -----
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
# -----
auth MD5 
comp-lzo
cipher BF-CBC

Клиент:

dev tap
proto udp
remote rx-win7 
port 8080
client
resolv-retry infinite
# -----
ca ca.crt
cert Client.crt
key Client.key
# -----
auth MD5
cipher BF-CBC
comp-lzo
persist-key
persist-tun
verb 3

zzdnx ★★
() автор топика
Последнее исправление: zzdnx (всего исправлений: 1)

1. Опция «remote» у клиента - это имя/адрес сервера. Писать надо FQDN сервера

2. У клиента не задействована опция pull

3. Указыват cipher нет необходимости, клиент с сервером сами договорятся

4. На сервере лучше использовать CCD (+ подложить отдельный файл для каждого клиента). Это позволит более гибко конфигурировать клиентов, например маршрутизировать клиентские подсети при необходимости.

5. dev сделай tun.

6. client-to-client как правило не нужен.В любом случае всё пойдёт через сервер, но в случае tun без client-to-client можно в iptables на хосте управлять межклиентскими маршрутами.

7. У клиента лучше сделать ping такие же как у сервера

8. У сервера лучше прописать заранее «push route ...» на адрес локалки. И у клиента не забыть написать pull (см. пункт 2)

Во пример с моего сервера:

# cat /etc/openvpn/uvpnserver.conf
proto udp
mode server
port 1194
dev tun3

persist-tun
persist-key
persist-local-ip
persist-remote-ip

topology subnet
float

push "ping 60"
push "ping-restart 120"
keepalive 10 60

tls-server
ca /etc/openvpn/host-keys/cacert.pem
dh /etc/openvpn/host-keys/dh1024.pem
crl-verify /etc/openvpn/host-keys/crl.pem
cert /etc/openvpn/host-keys/vpn.crt
key /etc/openvpn/host-keys/vpn.key
client-config-dir /etc/openvpn/udp-client-config
ccd-exclusive

server 192.168.64.64 255.255.255.192

comp-lzo
tun-mtu 1500

И пример ccd-шки для клиента:

# cat /etc/openvpn/udp-client-config/dell 
ifconfig-push 192.168.64.66 255.255.255.192
iroute 192.168.66.2
iroute 192.19.168.101.0 255.255.255.0
В данном случае клиент это ноутбук с собственной локалкой на loopback bridge - правда, на сервере в данном случае не хватает опций
route 192.168.66.2 255.255.255.255
route 192.168.101.0 255.255.255.0
но у меня их отсутствие компенсируется кваггой с OSPF.

no-dashi ★★★★★
()
Последнее исправление: no-dashi (всего исправлений: 1)
Ответ на: комментарий от no-dashi

Спасибо за конфигу - пойду допиливать!

zzdnx ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.