📙
Linux
  • Sys Admin Linux
  • Системное администрирование
    • Базовые Знания
      • Введение
      • Структура Linux и команды
        • Сеть
          • Файлы конфигурации сети
          • Команды и Утилиты Сети
            • Настройка маршрутов в Linux
        • Команды для управления пользователями
        • Команды для управления системой
        • команды линукс для работы с разделами
        • Стандартные каталоги
        • Команды для работы с каталогами
        • Команды для работы с файлами
      • Потоки, Логические команды, Процессы, Сеть
      • Права Доступа
      • Атрибуты файла. Запрет изменения файла
      • Bash, сценарии
      • Стандартные программы и их команды( Путь к списку репозиториев)
      • Подключение по SSH
      • Untitled
      • Untitled
    • Основная Часть
      • Kernel Update
      • Работа с Raid 5
      • LVM
      • ZFS
      • NFS
      • Загрузка Системы
  • Анонимность в Сети
    • Настройка VPN-TOR-VPN
    • Настройка своего собственного VPN
      • Центр Сертификации (ЦС)
      • Шаг 1 Начало
      • Шаг 2 Подписание сертификата
      • Шаг 3 Повышение безопасности
      • Шаг 4 Клиент
      • Шаг 5 Настройка OpenVPN
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
    • Смена MAC адреса
Powered by GitBook
On this page

Was this helpful?

  1. Анонимность в Сети
  2. Настройка своего собственного VPN

Шаг 5 Настройка OpenVPN

Настройка OpenVPN

Как и многие другие широко используемые инструменты с открытым исходным кодом, OpenVPN имеет множество опций конфигурации, доступных для настройки вашего сервера под ваши конкретные потребности. В этом разделе мы предоставим инструкции по настройке конфигурации сервера OpenVPN на основе одного из примеров файлов конфигурации, включенных в документацию данного программного обеспечения.

Сначала скопируйте server.confфайл примера в качестве отправной точки для вашего собственного файла конфигурации:

sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/server/ sudo gunzip /etc/openvpn/server/server.conf.gz

Откройте новый файл для редактирования в любом текстовом редакторе. Мы будем использовать nano в нашем примере:

sudo nano /etc/openvpn/server/server.conf

Нам нужно изменить несколько строк в этом файле. Сначала найдите HMACраздел конфигурации, выполнив поиск tls-authдирективы. Эта строка должна быть без комментариев. Прокомментируйте это, добавив ;в начало строки. Затем добавьте новую строку после нее, содержащую tls-crypt ta.keyтолько значение :/etc/openvpn/server/server.conf

;tls-auth ta.key 0 # This file is secret
tls-crypt ta.key

Затем найдите раздел о криптографических шифрах, ища cipherстроки. Значение по умолчанию установлено AES-256-CBC, однако, AES-256-GCMшифр предлагает лучший уровень шифрования, производительность и хорошо поддерживается в современных клиентах OpenVPN. Мы закомментируем значение по умолчанию, добавив ;знак в начало этой строки, а затем добавим еще одну строку после него, содержащую обновленное значение AES-256-GCM:/etc/openvpn/server/server.conf

;cipher AES-256-CBC
cipher AES-256-GCM

Сразу после этой строки добавьте authдирективу для выбора алгоритма дайджеста сообщений HMAC. Для этого SHA256хороший выбор:/etc/openvpn/server/server.conf

auth SHA256

Затем найдите строку, содержащую dhдирективу, которая определяет параметры Диффи-Хеллмана. Поскольку мы настроили все сертификаты для использования криптографии с эллиптической кривой, нет необходимости в исходном файле Диффи-Хеллмана. Закомментируйте существующую строку, которая выглядит как dh dh2048.pemили dh dh.pem. Имя файла для ключа Диффи-Хеллмана может отличаться от того, которое указано в примере файла конфигурации сервера. Затем добавьте после него строку с содержанием dh none:/etc/openvpn/server/server.conf

;dh dh2048.pem
dh none

Далее, мы хотим, чтобы OpenVPN запускался без каких-либо привилегий после его запуска, поэтому нам нужно указать, чтобы он запускался с пользователем nobody и группой nogroup . Чтобы включить это, найти и раскомментировать user nobodyи group nogroupстроки, удалив ;знак с начала каждой строки:/etc/openvpn/server/server.conf

user nobody
group nogroup

(Необязательно) Push-изменения DNS для перенаправления всего трафика через VPN

Приведенные выше настройки создадут VPN-соединение между вашим клиентом и сервером, но не заставят никакие соединения использовать туннель. Если вы хотите использовать VPN для маршрутизации всего клиентского трафика через VPN, вам, скорее всего, потребуется передать некоторые дополнительные настройки на клиентские компьютеры.

Для начала найдите и раскомментируйте строку, содержащую push "redirect-gateway def1 bypass-dhcp". Это скажет вашему клиенту перенаправить весь его трафик через ваш сервер OpenVPN. Помните, что включение этой функции может вызвать проблемы с подключением к другим сетевым службам, таким как SSH:/etc/openvpn/server/server.conf

push "redirect-gateway def1 bypass-dhcp"

Прямо под этой линией найдите dhcp-optionраздел. Снова удалите ;с начала обеих строк, чтобы раскомментировать их:/etc/openvpn/server/server.conf

push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"

Это поможет клиентам перенастроить свои настройки DNS для использования VPN-туннеля в качестве шлюза по умолчанию.

(Необязательно) Настройте порт и протокол

По умолчанию сервер OpenVPN использует порт 1194и протокол UDP для приема клиентских подключений. Если вам нужно использовать другой порт из-за ограниченных сетевых сред, в которых могут находиться ваши клиенты, вы можете изменить эту portопцию. Если вы не размещаете веб-контент на своем сервере OpenVPN, порт 443является популярным выбором, так как он обычно разрешен правилами брандмауэра.

Чтобы изменить OpenVPN для прослушивания через порт 443, откройте server.confфайл и найдите строку, которая выглядит следующим образом:/etc/openvpn/server/server.conf

port 1194

Отредактируйте его так, чтобы порт был 443:/etc/openvpn/server/server.conf

# Optional!
port 443

Зачастую протокол также ограничивается этим портом. Если да, то найти protoстроку ниже portстроки и изменить протокол от udpдо tcp:/etc/openvpn/server/server.conf

# Optional!
proto tcp

Если вы делаете переключить протокол к TCP, вам нужно будет изменить параметр explicit-exit-notifyзначение директивы от 1к 0, так как эта директива используется только UDP. Невыполнение этого при использовании TCP приведет к ошибкам при запуске службы OpenVPN.

Найдите explicit-exit-notifyстроку в конце файла и измените значение на 0:/etc/openvpn/server/server.conf

# Optional!
explicit-exit-notify 0

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

(Необязательно) Укажите учетные данные не по умолчанию

Если вы выбрали другое имя во время ./easyrsa gen-req serverкоманды ранее, модифицировать certи keyстроки в server.confфайле конфигурации так , что они указывают на подходящей .crtи .keyфайлов. Если вы использовали имя по умолчанию server, это уже правильно установлено:/etc/openvpn/server/server.conf

cert server.crt
key server.key

Когда вы закончите, сохраните и закройте файл.

Вы завершили настройку общих настроек OpenVPN. На следующем шаге мы настроим сетевые параметры сервера.

PreviousШаг 4 КлиентNextUntitled

Last updated 4 years ago

Was this helpful?

Эти строки сообщат вашему клиенту использовать бесплатные по указанным IP-адресам. Если вы предпочитаете другие распознаватели DNS, вы можете заменить их вместо выделенных IP-адресов.

распознаватели OpenDNS