У овом ћемо чланку размотрити инсталирање и конфигурирање ОпенВПН сервера заснованог на Линук ЦентОС 7 и показаћемо како користити конфигурирани ОпенВПН сервер за повезивање два удаљена рачунара (или уреда) смјештених иза НАТ-а у једну мрежу. Обавићемо аутентификацију ВПН клијената према сертификатима.
Садржај:
- Инсталирајте ОпенВПН и Еаси-РСА
- Лако подешавање РСА и издавање сертификата
- Стварамо кључеве и сертификате за ОпенВПН сервер
- Конфигурирање ОпенВПН сервера: конфигурациона датотека, фиревалл
- Комбинујемо неколико канцеларија (рачунара) користећи ОпенВПН
Опенвпн - једна од имплементација отвореног кода ВПН технологије засноване на ССЛ / ТЛС (заснованој на ОпенССЛ библиотеци). Користећи ОпенВПН, можете комбиновати и удаљене канцеларије и појединачне локалне рачунаре који се налазе иза НАТ-а у једну мрежу.
Инсталирајте ОпенВПН и Еаси-РСА
Први корак је повезивање ЕПЕЛ-овог спремишта и ажурирање система:
сад инсталирате епел-релеасе -и
иум упдате -и
Када се систем ажурира, морате га инсталирати помоћу иум менаџера пакета Опенвпн и Еаси-РСА (требаће нам за имплементацију ПКИ инфраструктуре кључева на ВПН серверу).
иум инсталирати опенвпн еаси-рса -и
Лако подешавање РСА и издавање сертификата
Копирајте све скрипте лако-рса у каталог / етц / опенвпн /:
цп -р / уср / схаре / еаси-рса / етц / опенвпн /
Идемо на каталог / етц / опенвпн / еаси-рса / 3 / и створите датотеку тамо варс:
цд / етц / опенвпн / еаси-рса / 3 /
нано варс
Додајте садржај датотеке (можете је поправити за себе):
сет_вар ЕАСИРСА "$ ОСИ" сет_вар ЕАСИРСА_ПКИ "$ ЕАСИРСА / ПКИ" сет_вар ЕАСИРСА_ДН "цн_онли" сет_вар ЕАСИРСА_РЕК_ЦОУНТРИ "ру" сет_вар ЕАСИРСА_РЕК_ПРОВИНЦЕ "МСД" сет_вар ЕАСИРСА_РЕК_ЦИТИ "МСД" сет_вар ЕАСИРСА_РЕК_ОРГ "ИТ компанија" сет_вар ЕАСИРСА_РЕК_ЕМАИЛ "админ@сервер.впн. ен "сет_вар ЕАСИРСА_РЕК_ОУ" ИТ одељења "сет_вар ЕАСИРСА_КЕИ_СИЗЕ 4096 сет_вар ЕАСИРСА_АЛГО РСА сет_вар ЕАСИРСА_ЦА_ЕКСПИРЕ 7500 сет_вар ЕАСИРСА_ЦЕРТ_ЕКСПИРЕ 3650 сет_вар ЕАСИРСА_НС_СУППОРТ" не "сет_вар ЕАСИРСА_НС_ЦОММЕНТ" Цертифицате Аутхорити "сет_вар ЕАСИРСА_ЕКСТ_ДИР" $ ЕАСИРСА / к509-врсте "сет_вар ЕАСИРСА_ССЛ_ЦОНФ" $ ЕАСИРСА / опенссл-1.0 .цнф "сет_вар ЕАСИРСА_ДИГЕСТ" сха512 "
Подаци у датотеци се могу узети произвољно, то неће ометати подешавање сервера и даљи рад.
Датотека мора бити извршна, па урадите:
цхмод + к варс
Стварамо кључеве и сертификате за ОпенВПН сервер
Пре него што креирамо кључ, морамо иницијализирати директориј ПКИ и створите кључ ЦА.цд / етц / опенвпн / еаси-рса / 3 /
# ./еасирса инит-пки
Напомена: коришћење Еаси-РСА конфигурације из: ./варс инит-пки комплет; сад можете да креирате ЦА или захтеве. Ваш новостворени ПКИ дир је: / етц / опенвпн / еаси-рса / 3 / пки
Креирајте кључ ЦА:
./ еасирса буилд-ца
Након извршења команде, мораћемо да одредимо лозинку тако да се генеришу сертификати и кључ. Убудуће ће бити потребна лозинка за потписивање цертификата.
Креирајте сервер кључ (име сервера) сервер.впн.ру):
опција нопасс - онемогући лозинку за сервер.впн.ру
# ./еасирса ген-рек сервер.впн.ру нопасс
Напомена: употреба конфигурације Еаси-РСА од: ./варс Коришћење ССЛ-а: опенссл ОпенССЛ 1.0.2к-фипс 26. јануара 2017. Генерирање 4096 битног РСА приватног кључа ... ++ ... ++ писање новог приватног кључа у '/ етц / опенвпн / еаси -рса / 3 / пки / привате / сервер.впн.ру.кеи.Р4ИИЦбД1зП '----- Биће вам затражено да унесете информације које ће бити уграђене у ваш захтев за сертификат. Оно што ћете ући је оно што се назива Разликовано име или ДН. Постоји прилично пуно поља, али можете оставити празно. За нека поља ће бити задана вредност, Ако унесете '.', Поље ће бити празно. ----- Уобичајено име (нпр .: име вашег корисника, хоста или сервера) [сервер.впн.ру]: Захтев за потврду тастатуре и сертификата је завршен. Ваше датотеке су: рек: /етц/опенвпн/еаси-рса/3/пки/рекс/сервер.впн.ру.рек кључ: /етц/опенвпн/еаси-рса/3/пки/привате/сервер.впн.ру .кеи
У поступку издавања потврде, у колони Уобичајено име треба да кликнете Унесите,.
Потписаћемо кључ сервер.впн.ру помоћу нашег ЦА сертификата:
./ еасирса сигн-рек сервер сервер.впн.ру
При потписивању сертификата, требат ће вам лозинка коју смо поставили приликом издавања цертификата ЦА:
Као што је назначено на снимку заслона, у том процесу ћете морати да уђете да и лозинку од ЦА.
Да бисте проверили да ли су сертификати генерисани без грешака, покрените наредбу:
# опенссл верифи -ЦАфиле пки / ца.црт пки / издато / сервер.впн.ру.црт
пки / издато / сервер.впн.ру.црт: ОК
Сви ОпенВПН сертификати креирани.
- Коренски сертификат се налази: 'пки / ца.црт'
- Приватни кључ сервера се налази: 'пки / привате / сервер.впн.ру.кеи'
- Налази се сертификат сервера: 'пки / издано / сервер.впн.ру.црт'
Да бисте генерисали клијентски кључ, морате да покренете наредбу:
./ еасирса ген-рек име клијента
Генерисање клијентског кључа админ1:
# ./еасирса ген-рек админ1 нопасс
Напомена: употреба конфигурације Еаси-РСА од: ./варс Коришћење ССЛ-а: опенссл ОпенССЛ 1.0.2к-фипс 26. јануара 2017. Генерирање 4096 битног РСА приватног кључа ... ++ ... ++ писање новог приватног кључа у '/ етц / опенвпн / еаси -рса / 3 / пки / привате / админ1.кеи.Р5ОИ6реТ2е '----- Ускоро ће се тражити да унесете информације које ће бити уграђене у ваш захтев за добијање сертификата. Оно што ћете ући је оно што се назива Разликовано име или ДН. Постоји прилично пуно поља, али можете оставити празно. За нека поља ће бити задана вредност, Ако унесете '.', Поље ће бити празно. ----- Уобичајено име (нпр .: име вашег корисника, хоста или сервера) [админ1]: Захтев за потврду тастатуре и сертификат је завршен. Ваше датотеке су: рек: /етц/опенвпн/еаси-рса/3/пки/рекс/админ1.рек кључ: /етц/опенвпн/еаси-рса/3/пки/привате/админ1.кеи
Као и код кључа сервера, морате га потписати помоћу ЦА сертификата:
./ еасирса сигн-рек клијент админ1
Сертификат креиран за корисника.
Поред тога, морате да генеришете Диффие-Хеллман кључ који ће се користити приликом размене кључева:
./ еасирса ген-дх
Генерисано је дуго:
Тада генеришемо ТЛС сертификат:
опенвпн --генкеи --сецрет та.кеи
Ако у будућности планирамо да опозовемо клијентске потврде, потребно је да генеришемо ЦРЛ кључ:
# ./еасирса ген-црл
Напомена: употреба конфигурације Еаси-РСА од: ./варс Коришћење ССЛ-а: опенссл ОпенССЛ 1.0.2к-фипс 26. јануара 2017. Коришћење конфигурације из /етц/опенвпн/еаси-рса/3/пки/сафессл-еасирса.цнф Унесите фразу за пролазак /етц/опенвпн/еаси-рса/3/пки/привате/ца.кеи: Ажуриран ЦРЛ је креиран. ЦРЛ датотека: /етц/опенвпн/еаси-рса/3/пки/црл.пем
Да бисте опозвали сертификат, извршите наредбу:
./ еасирса опозвати админ1
- где админ1 ово је име сертификата
Створени су потребни сертификати за рад, копирајте их у радне именике:
Сертификати сервера:
цп пки / ца.црт / етц / опенвпн / сервер /
цп пки / издато / сервер.впн.ру.црт / етц / опенвпн / сервер /
цп пки / привате / сервер.впн.ру.кеи / етц / опенвпн / сервер /
цп пки / привате / дх.пем / етц / опенвпн / сервер /
цп пки / привате / та.кеи / етц / опенвпн / сервер /
цп пки / црл.пем / етц / опенвпн / сервер /
Клијентски сертификати:
цп пки / издан / админ1.црт / етц / опенвпн / цлиент /
цп пки / привате / админ1.кеи / етц / опенвпн / цлиент /
Конфигурирање ОпенВПН сервера: конфигурациона датотека, фиревалл
Идемо на подешавања ОпенВПН конфигурационе датотеке. Прво направите ОпенВПН конфигурациону датотеку сервер.цонф:
цд / етц / опенвпн / && нано сервер.цонф
Промените садржај датотеке на следеће:
# Одредите порт, протокол и порт уређаја 1194 прото удп дев тун # Наведите пут до сертификата сервера ца /етц/опенвпн/сервер/ца.црт церт /етц/опенвпн/сервер/сервер.впн.ру.црт кеи / етц / опенвпн /сервер/сервер.впн.ру.кеи # Путеви ка ЦРЛ и ДХ тастерима дх /етц/опенвпн/сервер/дх.пем црл-верифи /етц/опенвпн/сервер/црл.пем # Наведите подешавања ИП мреже, адресе са којих ВПН клијенти ће примати сервер 15.10.2.0 255.255.255.0 пусх "редирецт-гатеваи деф1" # Наведите одредишни ДНС сервер пусх "дхцп-опција ДНС 77.88.8.8" пусх "дхцп-опција ДНС 8.8.4.4" # Дозволи различитим клијентима да се повежу, са истим дупликатом кључа-цн # ТЛС заштита тлс-аутх /етц/опенвпн/сервер/та.кеи 0 шифра АЕС-256-ЦБЦ тлс-верзија-мин 1,2 тлс-шифра ТЛС-ДХЕ-РСА-ВИТХ-АЕС-256- ГЦМ-СХА384: ТЛС- ДХЕ-РСА-СА-АЕС-256-ЦБЦ-СХА256: ТЛС-ДХЕ-РСА-ВИТХ-АЕС-128-ГЦМ-СХА256: ТЛС-ДХЕ-РСА-ВИТХ-АЕС-128-ЦБЦ-СХА256 аутх СХА512 аутх-ноцацхе # Још једна конфигурација кеепаливе 20 60 персист-кеи персист-тун цомп-лзо да даемон корисник нико не групира никога # Пут до датотеке дневника лог-додај /вар/лог/опенвпн.лог верб 3
Затим сачувајте датотеку. Навео сам стандардни УДП порт 1194 за ВПН сервер, али за ОпенВПН можете да одредите било који слободан порт на серверу.
Остаје конфигурирати правила заштитног зида како би се омогућило повезивање и усмјеравање између сегмената.
Ако користите Фиреваллд, прво морате да активирате кернел модул прослеђивање:
# ецхо 'нет.ипв4.ип_форвард = 1' >> /етц/сисцтл.цонф
# сисцтл -п
нет.ипв4.ип_форвард = 1
Додајте услугу опенвпн у фиреваллд, и интерфејс тун0 у поуздану зону
фиревалл-цмд - стални --адд-сервице = опенвпн
фиревалл-цмд - стални --зоне = поуздан --адд-интерфејс = тун0
Активирајте „МАСКУЕРАДЕ“ за поуздану зону фиреваллд:фиревалл-цмд - перманентни --зоне = поуздан --адд-маскуераде
Активирај НАТ:
фиревалл-цмд - стални - директива - пролазак кроз ипв4 -т нат -А ПОСТРОУТИНГ -с 15.10.2.0/24 -о Сервер ИП -ј МАСКУЕРАДЕ
фиревалл-цмд -релоад
иптаблес -т нат -А ПОСТРОУТИНГ -с 15.10.2.0/24 -о етх0 -ј МАСКУЕРАДЕ
иптаблес -А ИНПУТ -п тцп -дпорт 1194 -ј АЦЦЕПТ
сервис иптаблес саве
Покрените ОпенВПН и додајте га у Линук покретање:
системцтл старт опенвпн @ сервер
системцтл омогући опенвпн @ сервер
Проверите да ли порт 1194 слуша услугу:
# лсоф -и: 1194
КОМАНД ПИД КОРИСНИК ФД ВРСТЕ УРЕЂАЈА ТИПА / ОФФ НОДЕ ИМЕ опенвпн 11887 ноне 5у ИПв4 45892 0т0 УДП *: опенвпн
Проверимо ИП подешавања мрежног интерфејса:
# ип а
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3: тун0: мту 1500 кдисц пфифо_фаст стате УНКНОВН група дефаулт клен 100 линк / ноне инет 15.10 .2.1 пеер 15.10.2.2/32 глобални опсег тун0 валид_лфт заувек преферирани_лфт заувек инет6 фе80 :: дб7ц: 7фед: 6д4ф: 70д2 / 64 заставе обима везе 800 валид_лфт заувек преферирано_лфт заувек
Као што видите, на уређају тун0 додана је мрежа наведена током конфигурације.
Ово су минимална подешавања која су потребна да би ОпенВПН могао да ради..
Комбинујемо неколико канцеларија (рачунара) користећи ОпенВПН
Размислите о томе како да се повежете на ОпенВПН сервер са два удаљена рачунара који су на Интернет повезани преко НАТ и организујте заједничку мрежу између њих. Да се повежем са Виндовс рачунара на ОпенВПН сервер, користим званични клијент од програмера. Можете је преузети на званичној веб страници, нећемо се фокусирати на то, већ ћемо ићи право на подешавање.
Након што инсталирате клијент, морате да одете у конфигурациону датотеку коју треба да креирате дуж путање:
Ц: \ Програмске датотеке \ ОпенВПН \ цонфиг \
Направио сам датотеку клијент и додао следећи садржај:
клијент дев тун прото удп даљински 182.122.41.12 1194 разлучиво-покушај бесконачно нобинд блок-вани-днс персист-кеи персист-тун муте-реи-упозорава даљински-церт-тлс сервер тлс-цлиент аутх СХА512 тлс-аутх "Ц: \\ Програмске датотеке \\ ОпенВПН \\ цонфиг \\ та.кеи "1 ремоте-церт-еку" ТЛС Провјера веб сервера "ца" Ц: \\ Програмске датотеке \\ ОпенВПН \\ цонфиг \\ ца.црт "церт" Ц: \\ Програмске датотеке \\ ОпенВПН \\ цонфиг \\ админ1.црт "тастер" Ц: \\ Програмске датотеке \\ ОпенВПН \\ цонфиг \\ админ1.кеи "шифра АЕС-256-ЦБЦ цомп-лзо верб 3
Да бисте конфигурисали, потребни су нам претходно створени клијент, безбедносни сертификати и сертификати. Потребно их је преузети са сервера и сместити у директоријум погодан за вас, након чега морате да одредите путању до њих у датотеци конфигурационе датотеке ОпенВПН.
Након што се повежемо путем пречице за отворени ВПН клијент у лежишту:
Повезао сам се и добио следећи ИП за свој рачунар:
ИПв4 адреса ...: 10.15.2.14 Маска подмреже ...: 255.255.255.252
На другом рачунару за НАТ, извео сам исте кораке, након креирања сертификата за другог корисника, када сам повезао други рачунар, такође сам примио ИП мрежу:
ИПв4 адреса ...: 15.10.2.6 Маска подмреже ...: 255.255.255.252
Након повезивања, оба рачунара су на истој мрежи и виде се.
Покрените пинг на другом рачунару:
Пакетна размена од 10.15.2.14 до 32 бајта података: Одговор од 10.15.2.14: број бајтова = 32 времена = 67мс ТТЛ = 127
Покрените пинг на првом рачунару:
Пакетна размена од 10/15 / 2,6 до 32 бајта података: Одговор од 10/15 / 2,6: број бајтова = 32 времена = 71мс ТТЛ = 127
Оба повезана ВПН клијента могу директно размењивати пакете и директно преносити датотеке. Тако смо успели да комбинујемо два рачунара која се налазе у различитим деловима земље у једну локалну мрежу.
На серверу са ОпенВПН-ом можете да креирате неограничен број кључева и сертификата за кориснике. Ако вам треба нови сертификат, покрените следеће команде у директорију / етц / опенвпн / еаси-рса / 3:
./ еасирса ген-рек име клијента
./ име клијента еасирса сигн-рек клијента
Не заборавите да повремено опозивате клијентске потврде ако се не користе за заштиту ваших података.