Меню Рубрики

Установка openvpn access server centos

Установка и настройка OpenVPN на сервере под управлением CentOS 7

В данном руководстве будет описан процесс установки и настройки инструмента OpenVPN на виртуальном сервере под управлением CentOS 7. OpenVPN — это открытый программный продукт для создания виртуальных частных сетей и подключения к ним по открытым интернет-каналам.

Прежде чем начать, нужно установить дополнительные пакеты из репозитория Enterprise Linux (EPEL). Это необходимо потому, что OpenVPN недоступен в CentOS по умолчанию. Репозиторий EPEL управляется сообществом Fedora Project и содержит нестандартные для CentOS, но популярные пакеты приложений.

Шаг #1: Установка пакета OpenVPN

Прежде всего, необходимо установить OpenVPN. Также мы установим инструмент Easy RSA — он будет использоваться для создания пар SSL-ключей, которые обеспечат безопасность VPN-соединений.

yum install openvpn easy-rsa –y

Шаг #2: Настройка сервиса

В директории документации OpenVPN содержатся файлы с тестовыми конфигурациями программы. Скопируем файл server.conf — на его основе мы создадим свою конфигурацию.

cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn

Теперь откроем его для редактирования:

Здесь нужно будет внести несколько изменений. Когда в дальнейшем мы будем генерировать ключы в программе Easy RSA, их размер будет по умолчанию составлять 2048 байт, поэтому нужно убедиться, что соответствующее значение указано в файле настроек. Нужно изменить название файла dh на dh2048.pem:

Затем нужно раскомментировать (удалить символ “;”) строку, которая сообщает клиенту о необходимости редиректа трафика через OpenVPN.

push redirect-gateway def1 bypass-dhcp

Затем нужно указать DNS-серверы, поскольку клиентские приложения не смогут использовать серверы интернет-провайдера.

Для этого нужно раскомментировать строки, начинающиеся с push «dhcp-option DNS» для передачи DNS-серверов клиенту:

push «dhcp-option DNS 208.67.222.222»
push «dhcp-option DNS 208.67.220.220»

Нам нужно, чтобы OpenVPN запускался без привилегий, поэтому нужно указать, что он запускается от имени пользователя и группы nobody. Для этого нужно раскомментировать соответствующие строки:

Также нужно указать пути до сгенерированных ранее сертификатов и ключей:

ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key #This file should be kept secret
tls-auth /etc/openvpn/ta.key 0 # This file is secret

Затем нужно сохранить файл и выйти из него. Для этого используйте в редакторе nano сочетание клавиш CTRL+X, затем подтвердите сохранение файла нажатием Y

Шаг #3: Создание ключей и сертификатов

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

Создадим директорию, в которой будут храниться ключи:

mkdir -p /etc/openvpn/easy-rsa/keys

В эту директорию нужно скопировать скрипты для генерации ключей и сертификатов:

cp -rf /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa

Примечание: Если на данном этапе вы увидели ошибку (отсутствие директории 2.0), значит в вашем дистрибутиве OpenVPN по-умолчанию используется более поздняя версия easy-rsa. В этом случае вручную скачайте easy-rsa и скопируйте содержимое архива, последовательно выполнив команды:

Также следует предотвратить возможность сбоя загрузки конфигурации SSL из-за невозможности определения версии программы. Для скопируем нужный конфигурационный файл и удалим из названия номер версии:

cp /etc/openvpn/easy-rsa/openssl-1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf

Теперь создадим ключи и сертификаты. Для этого перейдем в директорию easy-rsa и запустим команду source для новых переменных:

cd /etc/openvpn/easy-rsa
source ./vars

Затем нужно удалить все предыдущие версии ключей и сертификатов, которые могут содержаться в этой директории:

Также нужно сгенерировать файл обмена по алгоритму Диффи-Хеллмана. Процесс может занять несколько минут:

Указываем информацию об организации, выдавшей сертификат:

Система задаст несколько вопросов — можно просто нажимать Enter вместо ответа или указать информацию о вашей организации.

Теперь нужно сгенерировать ключ и сертификат сервера. И снова можно просто нажимать Enter в ответ на вопросы системы. Единственное обязательное поле: common name — укажите здесь значение server. Чтобы сохранить данные, в конце процедуры следует нажать Y (yes).

Читайте также:  Установка инжектора на ауди аар

Сгенерируем дополнительный ключ ta.key.

openvpn —genkey —secret /etc/openvpn/easy-rsa/keys/ta.key

Теперь скопируем созданные сертификаты и ключи в директорию OpenVPN.

cd /etc/openvpn/easy-rsa/keys
cp dh2048.pem ca.crt server.crt server.key ta.key /etc/openvpn

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

cd /etc/openvpn/easy-rsa
./build-key client

Шаг 4: Маршрутизация

Чтобы упростить настройку, проведем все манипуляции с помощью стандартного фаервола iptables, а не нового инструмента firewallcd.

Прежде всего надо убедиться в том, что сервис iptables установлен и включен.

yum install iptables-services -y
systemctl mask firewalld
systemctl enable iptables
systemctl stop firewalld
systemctl start iptables
iptables —flush

Примечание: На следующем шаге вам потребуется имя основого (внешнего) сетевого интерфейса сервера (например, вида eth* или ens*). Запомните это имя, выполнив команду ниже и выбрав тот сетевой интерфейс, которому назначен основной IP-адрес сервера, отображаемый в панели 1cloud:

Затем следует добавить в iptables правило, согласно которому соединения будут направляться в создаваемую подсеть OpenVPN:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o -j MASQUERADE
iptables-save > /etc/sysconfig/iptables

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth1 -j MASQUERADE
iptables-save > /etc/sysconfig/iptables

Активируем IP-форвардинг в sysctl, отредактировав файл sysctl.conf для редактирования:

В самом верху добавляем следующую строку:

Сохраним документ нажатием CTRL+X, Y, Enter.

Перезапускаем сетевой сервис для применения внесенных изменений:

systemctl restart network.service

Шаг 5: Запуск OpenVPN

Теперь все готово к запуску OpenVPN. Добавим этот сервис в systemctl:

systemctl -f enable openvpn@server.service

openvpn —config /etc/openvpn/server.conf —daemon

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

Настроим подключение со стороны клиента.

Шаг 6: Настройка клиента

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

Необходимые сертификаты (в нашем случае для клиента «client») хранятся в директории /easy-rsa:

/etc/openvpn/easy-rsa/keys/ca.crt
/etc/openvpn/easy-rsa/keys/client.crt
/etc/openvpn/easy-rsa/keys/client.key

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

Теперь создадим файл под client.ovpn — конфигурационный файл для клиента OpenVPN. В нем содержатся параметры подключения к серверу. Ниже представлено содержимое этого файла, в котором необходимо заменить имя клиента (в нашем случае client), указать корректный ip-адрес сервера и верный путь к файлам сертификатов и ключей:

client
dev tun
proto udp
remote 1194
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 3
ca /path/to/ca.crt
cert /path/to/client.crt
key /path/to/client.key

Теперь этот файл можно использовать для подключения к серверу.

Подключение с компьютера под управлением Windows:

Скачиваем официальную версию бинарных файлов OpenVPN Community Edition с графическим интерфейсом управления.

Перемещаем .ovpn-файл в директорию C:\Program Files\OpenVPN\config, затем нажимаем Connect в графическом интерфейсе OpenVPN.

Для соединения можно использовать open-source инструмент Tunnelblick. Перемещаем .ovpn-файл в директорию

/Library/Application Support/Tunnelblick/Configurations или просто кликнаем по этому файлу.

На Linux нужно установить OpenVPN из официальных репозиториев конкретного дистрибутива. Затем запустить его с помощью команды:

На этом все. Теперь у нас есть полностью функциональная частная виртуальная сеть с собственным OpenVPN-сервером на CentOS 7 VPN.

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

Читайте также:  Установка печки от камаза на уаз

источник

Установка и настройка OpenVPN на Linux CentOS 7

Для удобства настройки заходим под суперпользователем:

Подготовка системы

Обновляем установленные пакеты:

Установим правильную временную зону:

\cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime

* в данном примере московское время.

Устанавливаем сервис для синхронизации времени:

Разрешаем автозапуск службы chrony и запускаем ее:

Чтобы Selinux не включился после перезагрузки, откроем данный файл:

И отредактируем строчку SELINUX=enforcing на:

Создаем правило для firewalld:

firewall-cmd —permanent —add-port=443/udp

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

* если используется iptables, правило создаем командой iptables -I 1 INPUT -p udp —dport 443 -j ACCEPT, где 443 — порт, который мы будем использовать для openvpn.

Установка, настройка и запуск VPN-сервера

Установка OpenVPN

Устанавливаем репозиторий epel:

Устанавливаем необходимые пакеты следующей командой:

yum install openvpn easy-rsa

Создание сертификатов

В основе идеи VPN лежит шифрование трафика, а значит для его работы необходимы сертификаты.

Переходим в каталог easy-rsa:

* в зависимости от версии easy-rsa, последний каталог может быть другим. Увидеть точное название каталога можно командой ls /usr/share/easy-rsa/.

Чтобы упростить и ускорить процесс создания ключей, создаем следующий файл:

export KEY_COUNTRY=»RU»
export KEY_PROVINCE=»Sankt-Petersburg»
export KEY_CITY=»Sankt-Petersburg»
export KEY_ORG=»DMOSK COMPANY»
export KEY_EMAIL=»master@dmosk.ru»
export KEY_CN=»DMOSK»
export KEY_OU=»DMOSK»
export KEY_NAME=»name-openvpn-server.dmosk.ru»
export KEY_ALTNAMES=»name-openvpn-server»

* где KEY_CN и KEY_OU: рабочие подразделения (например, можно указать название отдела); KEY_NAME: адрес, по которому будет выполняться подключение (можно указать полное наименование сервера); KEY_ALTNAMES — альтернативный адрес.
* так как мы генерируем самоподписный сертификат, значения данных полей никак не повлияют на работу OpenVPN, однако, для удобства, лучше подставить реальные данные.

источник

ИТ База знаний

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Навигация

Серверные решения

Телефония

Настройка программных телефонов

Корпоративные сети

Популярное и похожее

Установка VirtualBox 6.0 на Linux

Как восстановить пароль от root в CentOS 7

Настройка маршрута по умолчанию в Linux

Текстовый редактор Nano — как установить и использовать

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

Автоматизация сделок в Битрикс24

Сегодня в статье будет описан процесс установки и базовой настройки OpenVPN Access Server – полнофункциональное VPN SSL решение, которое включает в себя непосредственно OpenVPN сервер, веб-интерфейс для управления и клиенты для разных операционных систем – Windows, Mac, Android, IOS, Linux. Во встроенной бесплатной лицензии доступен функционал для одновременного подключения двух пользователей, и, при гибком использовании, этого хватит для реализации множества задач.

Пошаговое видео

  • Официальный сайт и процесс установки

    У OpenVPN Access Server (далее – OVPN AS) есть официальный сайт — https://openvpn.net/ , на котором можно найти множество информации об установке OVPN AS на облачный сервер – вроде платформы Amazon Cloud (Amazon Web Services), на Linux-based операционную систему или на виртуальную машину.

    В нашем случае устанавливать будем на CentOS 6 версии, и, для этого необходимо перейти по ссылке Access Server Software Packages, там выбрать CentOS и разрядность ОС, в данном случае – CentOS 6 amd/x86 32-bit. Данная ссылка ведет на RPM-пакет, поэтому проще всего скопировать ссылку и далее скачать пакет с помощью команды wget (но об этом немного ниже). Как альтернативный путь установки – можно скачать на ваш ПК данный пакет и с помощью чего-то вроде WinSCP перенести файл на ваш сервер. Но, как мне кажется, с помощью wget это сделать на порядок быстрее и проще.

    Читайте также:  Установка и вход в контакт

    Далее подключаемся к серверу через терминал, например, Putty, и вводим команду, которая сохранит RPM пакет с OVPN AS в папку tmp в файл под названием ovpn.rpm:

    Осталось немного – далее необходимо установить данный пакет. Для начала переходим в нужную директорию с помощью команды cd /tmp и затем выполняем команду rpm -i ovpn.rpm . После чего возможна небольшая пауза, вы увидите, как происходит установка пакета, в конце вы должны увидеть подтверждение, что всё в порядке. Последний шаг, который необходимо сделать перед доступом к веб-интерфейсу – нужно поменять пароль на пользователе openvpn. Делается это следующей командой: passwd openvpn %ваш_пароль% . Если пароль будет простой, то ОС ругнётся – на это можно не обращать внимания.

    Настройка OpenVPN Access Server с помощью веб-интерфейса

    Сначала требуется зайти на веб-интерфейс: необходимо ввести адрес https://serveripaddress:943/admin – обратите внимание на обязательность https соединения и 943 порт – это очень важно. Если наберете без /admin попадете в пользовательский интерфейс. Вы, возможно, увидите предупреждение от браузера о небезопасности соединения – можете смело игнорировать. Попав на страницу аутентификации, вводите логин openvpn и пароль, который вы установили в предыдущем шаге. Вам должна открыться следующая картина:

    Краткое описание каждого из разделов:

    • Status — общее состояние вашего VPN-сервера, пользователи, использующие сервис в данный момент, логи;
    • Configuration — конфигурация сервера – от лицензий до настроек веб-сервера и отказоустойчивости;
    • User Management — создание и управление пользователями и группами пользователей;
    • Authentication — настройка аутентификации и ее различных методов;
    • Tools — различные инструменты для проверки работоспособности, документация, тех. поддержка;

    Первым делом идем по следующему пути AuthenticationGeneral и меняем метод аутентификации на Local:

    Далее необходимо создать пользователя. Для этого нужно пройти по следующему пути: User ManagementUser PermissionsAdd ExtensionChoose IAX Extension и ввести имя нового пользователя(в нашем случае — Fedulya) и немного правее нажать Show . В поле Local Password ввести пароль, остальное все можно оставить по умолчанию.

    Как заключительный шаг настройки, необходимо ввести ваш внешний IP-адрес во вкладке ServerNetworkSettings, остальные настройки уже необходимо гибко выбирать в зависимости от ваших нужд – если у вас появятся вопросы, то оставляйте их в комментариях, с радостью ответим.

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

    Заключение

    Теперь можно зайти в пользовательский интерфейс по адресу https://serveripaddress:943/ ввести логин и пароль свежесозданного на предыдущем шаге пользователя и выбрать опцию «Connect». Далее произойдет установка клиента и автоматически загрузится ваш профиль. Как итог – в трее должно появиться диалоговое сообщение «Connected». Более подробно можете ознакомиться с процессом подключения в нашем видео про настройку OpenVPN Access Server

    Полезна ли Вам эта статья?

    Пожалуйста, расскажите почему?

    Нам жаль, что статья не была полезна для вас 🙁 Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!

    Подпишитесь на нашу еженедельную рассылку, и мы будем присылать самые интересные публикации 🙂 Просто оставьте свои данные в форме ниже.

    источник

  • Добавить комментарий

    Adblock
    detector