VPN

Задача – обеспечить доступ из дома к серверу (не к сети). Сервер – Windows, дома – Linux, Windows.
Исходные данные:

  • сервер в офисе спрятан за firewall'ом RAD Linux.
  • Внешний IP сети – SRVWANIP
  • Внутренний IP сервера – SRVLANIP (e.g. 192.168.1.1)
  • VPN-IP сервера – SRVVPNIP (e.g. 192.168.5.1)
  • VPN-маска сервера – SRVVPNMASK (e.g. 255.255.255.0)
  • VPN-IP клиентов – WKSVPNIP1..WKSVPNIP5 (e.g. 192.168.5.2..6)

Офис


Firewall



interface ethernet 1 # WAN
address $WAN_IP/25
access-list wan_in in
...
access-list wan_in
dnat proto udp dport 1194 todst $SRVLANIP
...

Server



  • Ставим OpenVPN

  • Проходим процедуры по документации (работать будем с TAP – т.к. с TUN что-то не получается) – генерация сертификатов, ключей и т.д.. В т.ч. генерим ключи для клиентов – client1, client2 etc.
  • Пишем конфиг (Linux: /etc/openvpn/server.conf, Windows: c:\Program files\Open VPN?\config\server.ovpn):

    port 1194
    proto udp
    dev tap
    ca c:\\Program\ files\\OpenVPN\\easy-rsa\\keys\\ca.crt
    cert c:\\Program\ files\\OpenVPN\\easy-rsa\\keys\\server.crt
    key c:\\Program\ files\\OpenVPN\\easy-rsa\\keys\\server.key # This file should be kept secret
    dh c:\\Program\ files\\OpenVPN\\easy-rsa\\keys\\dh1024.pem
    mode server
    ifconfig
    ifconfig-pool-persist ipp.txt
    server-bridge
    keepalive 10 120
    comp-lzo
    persist-key
    persist-tun
    status openvpn-status.log

  • Настраиваем интерфесы:

    • Windows – после инсталяции появляется некий «TAP-Win 32? Adapter V8»; все птицы, кроме IP – снять, IP прописать статически –
    • Linux – не надо делать ничего – openvpn сам заведет tap*

  • копируем сертификаты и ключи в нужные каталоги (Linux: /etc/openvpn/, Windows: c:\Program files\Open VPN?\config\):

    • ca.crt
    • server.crt
    • server.csr (?)
    • server.key

  • обеспечиваем автостарт VPN:

    • Windows: Мой компьютер – правая педаль – Управление – Сервисы – Open VPN? Service – Запуск – Автомат
    • Linux: chkconfig openvpn on

  • Полетели:

    • Windows: Мой компьютер – правая педаль – Управление – Сервисы – Open VPN? Service – Старт
    • Linux: service openvpn start

  • Проверяем (Windows (ipconfig /all))

    ...
    Адаптер Ethernet VPN:
    DNS суффикс этого подключения . . :
    Описание . . . . . . . . . . . . : TAP-Win32 Adapter V8
    Физический адрес. . . . . . . . . : 00-FF-90-96-27-55
    DHCP разрешен . . . . . . . . . . : Нет
    IP-адрес . . . . . . . . . . . . : 192.168.5.1
    Маска подсети . . . . . . . . . . : 255.255.255.0
    Основной шлюз . . . . . . . . . . :
    DNS-серверы . . . . . . . . . . . : 127.0.0.1
    NetBIOS через TCP/IP. . . . . . . : отключено
    ...


Дом



  • Ставим OpenVPN

  • Пишем конфиг (Linux: /etc/openvpn/client.conf, Windows: c:\Program files\Open VPN\config\client.ovpn):

    client
    dev tap
    proto udp
    remote 1194
    resolv-retry infinite
    nobind
    persist-key
    persist-tun
    ca ca.crt
    cert client1.crt # ! or other
    key client1.key # ! or other
    comp-lzo

  • копируем сертификаты и ключи в нужные каталоги (Linux: /etc/openvpn/, Windows: c:\Program files\Open VPN\config\):

    • ca.crt
    • client1.crt
    • client1.csr (?)
    • client1.key

  • обеспечиваем автостарт VPN: ...
  • Полетели: ...
  • Проверяем (Linux (ifconfig)):

    ...
    tap0 Link encap:Ethernet HWaddr AE:39:C7:3F:33:57
    inet addr:192.168.5.4 Bcast:192.168.5.255 Mask:255.255.255.0
    ...

Комментариев нет:

Tags