Установка и настройка OpenVPN сервера на windows

Discussion in 'Безопасность и Анонимность' started by Lolinas, 6 May 2020.

  1. Lolinas

    Lolinas Member

    Joined:
    20 Oct 2019
    Messages:
    126
    Likes Received:
    54
    Reputations:
    19
    В интернете существует много мануалов, как устанавливать openvpn на линуксовые и бсд операционные системы. На самом деле отличия не существенные, тот кто, умеет настраивать под линукс сможет и под виндовс. И так приступим, для начала нужно определится, на какую версию виндовса мы будет устанавливать. Для примера возьмём виртуальную машину с виндовс 8. На сайте https://openvpn.net/community-downloads/ предложат несколько вариантов

    [​IMG]

    В процессе установки убедитесь в том, что все галочки компонентов установлены

    [​IMG]

    Во избежание конфликтов с правами доступа устанавливаем сервер не в каталог по умолчанию (program files), а на диск C (можно устанавливать в любую другую созданную папку на любом диске)

    [​IMG]

    Мы успешно установили сервер. Теперь произведем его настройку. В папке easy-rsa открываем vars.bat.sample; и приводим его к такому виду, удаляя комментарии. Также стоит изменить адрес каталога, показанного красным прямоугольников на скрине

    [​IMG]

    В файлах build-ca.bat, build-dh.bat, build-key.bat, build-key-pass.bat, build-key-pkcs12.bat, build-key-serer.bat, меняем openssl на абсолютный ее пусть C:\openvpn\bin\openssl.exe

    [​IMG]

    [​IMG]

    Теперь запускаем через командную строку файл vars.bat (это vars.bat.sample у которого удаляем .sample). Winkey+r => cmd и выполняем несколько команд:
    cd C:\openvpn\easy-rsa
    vars.bat
    clean-all.bat
    vars.bat

    [​IMG]

    Теперь создадим ключи используя всё тот ту же строку. Используем файл build-ca.bat. В конце, будут вопросы, на которые нужно нажимать Enter

    [​IMG]

    Далее запускаем build-dh.bat и ждем окончания создания ключа.
    Теперь создадим сертификат для сервера. Очень важно, чтобы название сертификата (в данном случае changeme) совпадало с именем прописанным ранее в vars.bat в графе SET KEY_NAME

    [​IMG]

    Как и в предыдущем случае, нужно соглашаться с предложенными ответами на вопросы, и где потребуется соглашаться, вводя клавишу “y”.
    Теперь создадим файл конфигурации для сервера. В папке config создадим произвольный файл с расширением .ovpn. Пусть это будет server.ovpn. Прежде чем заполнить этот файл, нужно скопировать только что созданные файлы в другую папку, пусть она будет называется server_sert. Это делается только для удобства и совершено не обязательно

    [​IMG]

    Открывает созданный ранее файл server.ovpn и заполняем так

    port 65530
    proto tcp
    dev tun
    dev-node "vpnadapter"
    dh C:\\OpenVPN\\server_sert\\dh2048.pem
    ca C:\\OpenVPN\\server_sert\\ca.crt
    cert C:\\OpenVPN\\server_sert\\changeme.crt
    key C:\\OpenVPN\\server_sert\\changeme.key
    server 172.1.1.0 255.255.255.0
    push "redirect-gateway def1"
    push "dhcp-option DNS 8.8.8.8"
    max-clients 1
    keepalive 10 120
    client-to-client
    comp-lzo
    persist-key
    persist-tun
    cipher AES-256-CBC
    status C:\\OpenVPN\\log\\status.log
    log C:\\OpenVPN\\log\\openvpn.log
    verb 4
    mute 20


    В этом файле в данный момент несколько важных опций.
    port 65531 – это порт, который будет принимать входящие соединения, можно указывать любой свободный.
    proto tcp – протокол, по которому будут осуществляться работа сервера.
    dev-node "vpnadapter" – название адаптера, который создался при установки openvpn сервера.
    Для того, чтобы наши клиенты смогли осуществлять выход в интернет, нужно разрешить им это.
    В свойствах адаптера (который смотрит наружу) разрешаем маршрутизацию виртуальному адаптеру

    [​IMG]

    Вот мы и подошли к финальному шагу запуска сервера. Просто запускаем программу (ярлык на рабочем столе) и двойной клик по иконки на панели задач. Если все сделано верно, мы увидим зеленый цвет

    [​IMG]

    Теперь нужно подключится к нашему серверу с другой машины. Для начала нужно сгенерировать сертификаты для клиента.
    В папке easy-rsa\keys чистим файл index.txt
    Через командную строку запускаем два файла

    [​IMG]

    Теперь нужно скомпоновать файл конфигурации для клиентской машины. Создаем файл client.ovpn и заполняем его таким способом

    client
    resolv-retry infinite
    nobind
    remote 192.168.11.1 65530
    proto tcp
    dev tun
    comp-lzo
    float
    cipher AES-256-CBC
    keepalive 10 120
    persist-key
    persist-tun
    verb 3
    remote-cert-tls server
    <ca>
    </ca>
    <cert>
    </cert>
    <key>
    </key>


    В этот файл следует вписать сертификаты и ключи находящиеся в этих файлах
    <ca> в ca.crt
    <cert> в vpn-client.crt
    <key> в vpn-client.key


    После этого файл примет следующий вид

    client
    resolv-retry infinite
    nobind
    remote 192.168.11.1 65530
    proto tcp
    dev tun
    comp-lzo
    #ca ca.crt
    #cert vpn-client.crt
    #key vpn-client.key
    float
    cipher AES-256-CBC
    keepalive 10 120
    persist-key
    persist-tun
    verb 3
    remote-cert-tls server
    <ca>
    -----BEGIN CERTIFICATE-----
    MIIGxzCCBK+gAwIBAgIJAJJrtpvEwoh4MA0GCSqGSIb3DQEBCwUAMIGdMQswCQYD
    VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzEQMA4G
    A1UEChMHT3BlblZQTjERMA8GA1UECxMIY2hhbmdlbWUxETAPBgNVBAMTCGNoYW5n
    ~~~~~~~~~~~~~~~Пропуск для экономии~~~~~~~~~~~~~
    0nDverBXbKBz539Mr/X7aI/A4JIQbuj7oNBCFLKcp9wvIHABFo/RaDqC+7RKfr8d
    p8H/cvXBwr6qVhQjYBnfpa1U25hmufyAW4ajOrBGjg9SUmKug3dmp1gy/WcTSxny
    Ta1gnYHTrIxHJAuj3HMMSu84ELmALybGMdgs1c7CvPMk2pdOhYEMbbL/9FvJUIBU
    EAdtmoZ4E7ngNV0=
    -----END CERTIFICATE-----
    </ca>
    <cert>
    -----BEGIN CERTIFICATE-----
    MIIHDTCCBPWgAwIBAgIBAjANBgkqhkiG9w0BAQsFADCBnTELMAkGA1UEBhMCVVMx
    CzAJBgNVBAgTAkNBMRUwEwYDVQQHEwxTYW5GcmFuY2lzY28xEDAOBgNVBAoTB09w
    ZW5WUE4xETAPBgNVBAsTCGNoYW5nZW1lMREwDwYDVQQDEwhjaGFuZ2VtZTERMA8G
    ~~~~~~~~~~~~~~~Пропуск для экономии~~~~~~~~~~~~~
    k9kfnqJn4bmxzeuqoH1UKPk3gT/LUC+o5fIpsgzrl+UZnib2jmXgsgqu2azHD9Pn
    ct7gE5JBoVTjJIUO+R5qBSO9IdSqrZL84EDh1fhnxrj33PiduZm9sKp3TcBM0dXr
    8H7sLmsiaD5NaV3KJFXW0KzpTpc9VPaZLhNjDeiDNi91
    -----END CERTIFICATE-----
    </cert>
    <key>
    -----BEGIN PRIVATE KEY-----
    MIIJRAIBADANBgkqhkiG9w0BAQEFAASCCS4wggkqAgEAAoICAQCuPgeSRi8U81TH
    J5r3Brrpf+whD+DI75HcwJ4TJSsDEdMGJpdY8NcKu3zZdJ3Qk56dEFUEELrFXYoL
    0RNkxFdp5MhpdXDq5pBzA0lY5odVPJ4ytozCgpOXn2+NsauSy1bSPYUBNxDT2SQP
    ~~~~~~~~~~~~~~~Пропуск для экономии~~~~~~~~~~~~~
    fAYTb2aoKnH+7TlfV6Ljx8XmDuBHCX388EWXfIKhLsIENhV8tgF7DV3RG5s8M/Hy
    28nW+MYTeDK/kkPmhv7llcwCeWW4KbqG5sbBpJYa/ONdtP2Z4OYx3brW5Io8syaV
    4GxJlI7UpATUWfopSzuWmB5jJzZAzPPZDau5mXy1ef70BInx5u3zzY57sp43fmV0
    a6TuScwxm2BemRKoA/95a0Vx1H1uJiEz
    -----END PRIVATE KEY-----
    </key>

    Файл конфигурации нужно положить в С:\пользователи\[пользователь]\openvpn\config. Cделаем подключение к серверу.
    vk.com/id58924119​
     
    #1 Lolinas, 6 May 2020
    Last edited: 5 Dec 2020
    GoodGoogle likes this.