Кніга "Linux у дзеянні"

Кніга "Linux у дзеянні" Прывітанне, Хаброжыцелі! У кнізе Дэвід Клінтан апісвае 12 рэальных праектаў, у тым ліку аўтаматызацыя сістэмы рэзервовага капіявання і аднаўлення, настройка асабістага файлавага аблокі ў стылі Dropbox і стварэнне ўласнага сервера MediaWiki. На цікавых прыкладах вы вывучыце віртуалізацыю, аварыйнае аднаўленне, забеспячэнне бяспекі, рэзервовае капіраванне, укараненне DevOps і ўхіленне непаладак сістэмы. Кожная частка заканчваецца аглядам практычных рэкамендацый, гласарыем новых тэрмінаў і практыкаваннямі.

Урывак “10.1. Стварэнне тунэля OpenVPN»

У гэтай кнізе я ўжо нямала расказаў аб шыфраванні. SSH і SCP могуць абараніць дадзеныя, якія перадаюцца праз выдаленыя злучэнні (кіраўнік 3), шыфраванне файлаў дазваляе абараніць дадзеныя пры захоўванні на серверы (кіраўнік 8), а сертыфікаты TLS/SSL здольныя абараніць дадзеныя пры перадачы паміж сайтамі і кліенцкімі браўзэрамі (кіраўнік 9). Але часам вашыя дадзеныя патрабуюць абароны ў шырэйшым спектры злучэнняў. Напрыклад, магчыма, некаторым чальцам вашай каманды даводзіцца працаваць у дарозе, падлучаючыся да сеткі па Wi-Fi праз агульнадаступныя кропкі доступу. Вызначана не варта меркаваць, што ўсе такія кропкі доступу бяспечныя, але вашым людзям сапраўды патрэбен спосаб падлучэння да рэсурсаў кампаніі – і ў гэтым выпадку дапаможа VPN.

Правільна спраектаваны VPN-тунэль забяспечвае прамое злучэнне паміж выдаленымі кліентамі і серверам такім чынам, каб хаваць дадзеныя пры іх перадачы па небяспечнай сетцы. Ну і што? Вы ўжо бачылі шмат інструментаў, якія могуць зрабіць гэта з дапамогай шыфравання. Рэальная каштоўнасць VPN складаецца ў тым, што, адкрыўшы тунэль, можна падлучаць выдаленыя сеткі, як калі б яны былі ўсе разам лакальнымі. У некаторым сэнсе вы карыстаецеся абыход.

Выкарыстоўваючы такую ​​пашыраную сетку, адміністратары могуць выконваць сваю працу на сваіх серверах з любога месца. Але, што больш важна, кампанія з рэсурсамі, размеркаванымі па некалькіх філіялах, можа зрабіць іх усё бачнымі і даступнымі для ўсіх груп, якія маюць у іх патрэбу, дзе б яны ні знаходзіліся (мал. 10.1).

Сам па сабе тунэль не гарантуе бяспеку. Але адзін са стандартаў шыфравання можа быць уключаны ў структуру сеткі, што істотна падвышае ўзровень бяспекі. Тунэлі, створаныя з ужываннем пакета OpenVPN з адчыненым зыходным кодам, выкарыстаюць тое ж шыфраванне TLS/SSL, аб якім вы ўжо чыталі. OpenVPN не адзіны даступны варыянт для тунэлявання, але адзін з самых вядомых. Лічыцца, што ён крыху хутчэй і бяспечней, чым альтэрнатыўны тунэльны пратакол ўзроўню 2, які выкарыстоўвае шыфраванне IPsec.

Вы хочаце, каб у вашай камандзе ўсё бяспечна размаўлялі адзін з адным, знаходзячыся ў дарозе або працуючы ў розных будынках? Для гэтага неабходна стварыць сервер OpenVPN, каб дазволіць сумеснае выкарыстанне прыкладанняў і доступ да лакальнага сеткавага асяроддзя сервера. Каб гэта працавала, дастаткова запусціць дзве віртуальныя машыны або два кантэйнеры: адну для выканання ролі сервера/хаста, а іншую — для кліента. Стварэнне VPN - няпросты працэс, таму, верагодна, варта выдаткаваць некалькі хвілін на тое, каб уявіць сабе агульную карціну.

Кніга "Linux у дзеянні"

10.1.1. Канфігураванне сервера OpenVPN

Перш чым пачаць, дам вам карысную параду. Калі вы збіраецеся зрабіць усё самастойна (а я настойліва рэкамендую вам гэта), то, верагодна, выявіце, што працуеце з некалькімі тэрмінальнымі вокнамі, адчыненымі на Працоўным стале, кожнае з якіх падлучанае да сваёй машыны. Ёсць рызыка, што ў нейкі момант вы ўведзяце каманду не тое ў акно. Каб пазбегнуць гэтага можна выкарыстоўваць каманду hostname, каб змяніць імя машыны, якое адлюстроўваецца ў камандным радку, на нешта, што будзе дакладна казаць вам аб тым, дзе вы знаходзіцеся. Як толькі зробіце гэта, вам трэба будзе выйсці з сервера і зайсці зноў, каб новыя наладкі ўступілі ў сілу. Вось як гэта выглядае:

Кніга "Linux у дзеянні"
Прытрымліваючыся гэтага падыходу і прысвойваючы адпаведныя імёны кожнай з машын, з якімі вы працуеце, вы зможаце лёгка адсочваць, дзе знаходзіцеся.

Пасля выкарыстання hostname вы можаце сутыкнуцца з раздражняльнымі паведамленнямі Unable to Resolve Host OpenVPN-Server пры выкананні наступных каманд. Абнаўленне файла /etc/hosts з адпаведным новым імем хаста павінна вырашыць праблему.

Падрыхтоўка вашага сервера для OpenVPN

Для ўсталёўкі OpenVPN на вашым серверы патрабуецца два пакета: openvpn і easy-rsa (для кіравання працэсам генерацыі ключа шыфравання). Карыстальнікі CentOS павінны пры неабходнасці спачатку ўсталяваць рэпазітар epel-release, як вы рабілі гэта ў главе 2. Каб мець магчымасць праверыць доступ да сервернага прыкладання, вы таксама можаце ўсталяваць вэб-сервер Apache (apache2 для Ubuntu і httpd на CentOS).

Пакуль вы наладжваеце сервер, раю актываваць брандмаўэр, які блакуе ўсе парты, акрамя 22 (SSH) і 1194 (порт OpenVPN па змаўчанні). Гэты прыклад ілюструе, як будзе працаваць ufw у Ubuntu, але я ўпэўнены, што вы ўсё яшчэ памятаеце праграму firewalld CentOS з раздзела 9:

# ufw enable
# ufw allow 22
# ufw allow 1194

Каб дазволіць унутраную маршрутызацыю паміж сеткавымі інтэрфейсамі на серверы, вам трэба раскаментаваць адзін радок (net.ipv4.ip_forward = 1) у файле /etc/sysctl.conf. Гэта дазволіць перанакіроўваць выдаленых кліентаў па меры неабходнасці пасля іх падключэння. Каб новы параметр запрацаваў, запусціце sysctl -p:

# nano /etc/sysctl.conf
# sysctl -p

Зараз сервернае асяроддзе цалкам наладжана, але трэба зрабіць яшчэ сёе-тое, перш чым вы будзеце гатовыя: давядзецца выканаць наступныя крокі (мы падрабязна разгледзім іх далей).

  1. Стварыце на серверы набор ключоў для шыфравання інфраструктуры адчыненых ключоў (PKI) з дапамогай сцэнараў, якія пастаўляюцца з пакетам easy-rsa. Па сутнасці, сервер OpenVPN таксама дзейнічае як уласны цэнтр сертыфікацыі (ЦС).
  2. Падрыхтуйце адпаведныя ключы для кліента
  3. Сканфігуруйце файл server.conf для сервера
  4. Наладзьце ваш кліент OpenVPN
  5. Праверце свой VPN

Генераванне ключоў шыфравання

Каб не ўскладняць жыццё, можна настроіць сваю ключавую інфраструктуру на той жа машыне, дзе працуе сервер OpenVPN. Аднак у рэкамендацыях па бяспецы звычайна прапануецца выкарыстоўваць асобны сервер ЦС для разгортванняў у вытворчым асяроддзі. Працэс генерацыі і размеркаванні рэсурсаў ключа шыфравання для выкарыстання ў OpenVPN праілюстраваны на мал. 10.2.

Кніга "Linux у дзеянні"
Калі вы ўстанаўлівалі OpenVPN, аўтаматычна быў створаны каталог /etc/openvpn/, але ў ім пакуль нічога няма. Пакеты openvpn і easy-rsa пастаўляюцца з прыкладамі файлаў шаблонаў, якія можна выкарыстоўваць як аснову для сваёй канфігурацыі. Каб запусціць працэс сертыфікацыі, скапіруйце каталог шаблону easy-rsa з /usr/share/ у /etc/openvpn і перайдзіце ў каталог easy-rsa/:

# cp -r /usr/share/easy-rsa/ /etc/openvpn
$ cd /etc/openvpn/easy-rsa

Каталог easy-rsa зараз будзе змяшчаць даволі шмат сцэнарыяў. У табл. 10.1/XNUMX пералічаныя прылады, якія вы будзеце выкарыстоўваць для стварэння ключоў.

Кніга "Linux у дзеянні"

Пералічаныя аперацыі патрабуюць паўнамоцтваў root, таму праз sudo su вам трэба стаць root.

Першы файл, з якім вы будзеце працаваць, завецца vars і ўтрымоўвае зменныя асяроддзі, якія easy-rsa выкарыстае пры генерацыі ключоў. Вам трэба адрэдагаваць файл, каб выкарыстоўваць уласныя значэнні замест значэнняў па змаўчанні, якія ўжо ёсць. Вось як будзе выглядаць мой файл (лістынг 10.1/XNUMX).

Лістынг 10.1. Асноўныя фрагменты файла /etc/openvpn/easy-rsa/vars

export KEY_COUNTRY="CA"
export KEY_PROVINCE="ON"
export KEY_CITY="Toronto"
export KEY_ORG="Bootstrap IT"
export KEY_EMAIL="[email protected]"
export KEY_OU="IT"

Запуск файла vars дазволіць перадаць яго значэнні ў асяроддзе абалонкі, адкуль яны будуць уключаны ў змесціва вашых новых ключоў. Чаму каманда sudo сама па сабе не працуе? Таму што на першым этапе мы рэдагуем сцэнар з імем vars, а затым ужывальны яго. Ужыванне і азначае, што файл vars перадае свае значэнні ў асяроддзе абалонкі, адкуль яны будуць уключаны ў змесціва вашых новых ключоў.

Абавязкова запусціце файл паўторна, выкарыстоўваючы новую абалонку, каб завяршыць няскончаны працэс. Калі гэта будзе зроблена, сцэнар прапануе вам запусціць іншы сцэнар, clean-all, для выдалення любога змесціва ў каталогу /etc/openvpn/easy-rsa/keys/:

Кніга "Linux у дзеянні"
Натуральна, наступным крокам будзе запуск сцэнара clean-all, за якім ідзе build-ca, які выкарыстоўвае сцэнар pkitool для стварэння каранёвага сертыфіката. Вас папросяць пацвердзіць налады ідэнтыфікацыі, прадстаўленыя vars:

# ./clean-all
# ./build-ca
Generating a 2048 bit RSA private key

Далей ідзе скрыпт build-key-server. Паколькі ён выкарыстоўвае той жа сцэнар pkitool разам з новым каранёвым сертыфікатам, вы ўбачыце тыя ж пытанні для пацверджання стварэння пары ключоў. Ключам будуць прысвоены імёны на аснове перадаваемых вамі аргументаў, якія, калі толькі вы не запускаеце некалькі VPN на гэтым кампутары, звычайна будуць server, як у прыкладзе:

# ./build-key-server server
[...]
Certificate is to be certified until Aug 15 23:52:34 2027 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

OpenVPN выкарыстоўвае параметры, згенераваныя з дапамогай алгарытму Дыфі - Хеллмана (з ужываннем build-dh), каб узгадніць аўтэнтыфікацыю для новых злучэнняў. Створаны тут файл не павінен быць сакрэтным, але павінен быць згенераваны з выкарыстаннем сцэнара build-dh для ключоў RSA, якія ў дадзены момант актыўныя. Калі вы створыце новыя ключы RSA у будучыні, вам таксама запатрабуецца абнавіць файл на аснове алгарытму Дыфі - Хеллмана:

# ./build-dh

Вашы ключы на ​​баку сервера зараз патрапяць у каталог /etc/openvpn/easy-rsa/keys/, але OpenVPN гэтага не ведае. Па змаўчанні OpenVPN будзе шукаць ключы ў /etc/openvpn/, таму скапіруйце іх:

# cp /etc/openvpn/easy-rsa/keys/server* /etc/openvpn
# cp /etc/openvpn/easy-rsa/keys/dh2048.pem /etc/openvpn
# cp /etc/openvpn/easy-rsa/keys/ca.crt /etc/openvpn

Падрыхтоўка ключоў шыфравання кліента

Як вы ўжо бачылі, у TLS-шыфраванні выкарыстоўваюцца пары адпаведных ключоў: адзін усталяваны на серверы, а іншы - на выдаленым кліенце. Гэта азначае, што вам спатрэбяцца ключы кліента. Наш стары сябар pkitool - менавіта тое, што трэба для гэтага. У дадзеным прыкладзе, запускаючы праграму ў каталогу /etc/openvpn/easy-rsa/, мы перадаем ёй аргумент client для генерацыі файлаў пад назовам client.crt і client.key:

# ./pkitool client

Два кліенцкіх файла разам з зыходным файлам ca.crt, які ўсё яшчэ знаходзіцца ў каталогу keys/, зараз павінны быць бяспечна перададзеныя вашаму кліенту. З-за іх прыналежнасці і правоў доступу гэта можа аказацца не такой лёгкай справай. Самы просты падыход - уручную скапіяваць змесціва зыходнага файла (і нічога, акрамя гэтага змесціва) у тэрмінал, які працуе на Працоўным стале вашага ПК (вылучыце тэкст, пстрыкніце на ім правай кнопкай мышы і абярыце ў меню пункт Copy (Капіяваць)). Затым устаўце гэта ў новы файл з тым жа імем, якое вы ствараеце ў другім тэрмінале, падлучаным да вашага кліента.

Але ж любы можа выразаць і ўставіць. Вы ж замест гэтага думайце як адміністратар, таму што ў вас не заўсёды будзе доступ да GUI, дзе магчымая аперацыя выразання/ўстаўкі. Скапіюйце файлы ў хатні каталог вашага карыстача (каб выдаленая аперацыя scp магла атрымаць да іх доступ), а затым з дапамогай chown зменіце ўладальніка файлаў з root на звычайнага карыстача без паўнамоцтваў root, каб можна было выканаць выдаленае дзеянне scp. Пераканайцеся, што ўсе вашыя файлы на дадзены момант устаноўлены і даступныя. На кліент вы перамесціце іх крыху пазней:

# cp /etc/openvpn/easy-rsa/keys/client.key /home/ubuntu/
# cp /etc/openvpn/easy-rsa/keys/ca.crt /home/ubuntu/
# cp /etc/openvpn/easy-rsa/keys/client.crt /home/ubuntu/
# chown ubuntu:ubuntu /home/ubuntu/client.key
# chown ubuntu:ubuntu /home/ubuntu/client.crt
# chown ubuntu:ubuntu /home/ubuntu/ca.crt

З поўным наборам ключоў шыфравання, гатовых да дзеяння, вам трэба паведаміць сэрвэру, як вы хочаце стварыць VPN. Гэта робіцца з дапамогай файла server.conf.

Памяншаем колькасць націскаў клавіш

Занадта шмат даводзіцца друкаваць? Пашырэнне са дужкамі дапаможа паменшыць гэтыя шэсць каманд да двух. Я ўпэўнены, што вы зможаце вывучыць гэтыя два прыклады і зразумець, што адбываецца. Што яшчэ важнейшае, вы зможаце зразумець, як ужываць дадзеныя прынцыпы да аперацый, улучальным дзясяткі ці нават сотні элементаў:

# cp /etc/openvpn/easy-rsa/keys/{ca.crt,client.{key,crt}} /home/ubuntu/
# chown ubuntu:ubuntu /home/ubuntu/{ca.crt,client.{key,crt}}

Настройка файла server.conf

Адкуль вы можаце ведаць, як павінен выглядаць файл server.conf? Памятаеце шаблон каталога easy-rsa, які вы скапіявалі з /usr/share/? Пры ўсталяванні OpenVPN застаўся сціснуты файл шаблону канфігурацыі, які вы можаце скапіяваць у /etc/openvpn/. Я буду абапірацца на той факт, што шаблон заархіваваны, і пазнаёмлю вас з карыснай прыладай: zcat.

Вы ўжо ведаеце аб вывадзе тэкставага змесціва файла на экран з дапамогай каманды cat, але што, калі файл сціснуты з дапамогай gzip? Вы заўсёды можаце распакаваць файл, і тады cat з задавальненнем яго выведзе, але гэта на адзін ці два крокі больш, чым трэба. Замест гэтага, як вы ўжо, мусіць, здагадаліся, можна ўвесці каманду zcat для загрузкі распакаванага тэксту ў памяць за адзін крок. У наступным прыкладзе замест таго, каб друкаваць тэкст на экране, вы перанакіруеце яго ў новы файл з імем server.conf:

# zcat 
  /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz 
  > /etc/openvpn/server.conf
$ cd /etc/openvpn

Пакінем убаку шырокую і карысную дакументацыю, якая прыкладаецца да файла, і паглядзім, як ён можа выглядаць, калі вы скончыце рэдагаванне. Звярніце ўвагу, што кропка з коскай (;) паказвае OpenVPN не чытаць і не выконваць наступны радок (лістынг 10.2).

Кніга "Linux у дзеянні"
Пройдземся па некаторых з гэтых налад.

  • Па змаўчанні OpenVPN працуе праз порт 1194. Вы можаце змяніць гэта, напрыклад, каб яшчэ больш схаваць свае дзеянні ці пазбегнуць канфліктаў з іншымі актыўнымі тунэлямі. Паколькі 1194 патрабуе мінімальнай каардынацыі з кліентамі, лепш за ўсё зрабіць менавіта так.
  • OpenVPN ужывае для перадачы дадзеных альбо пратакол кіравання перадачай (TCP), альбо пратакол карыстацкіх датаграм (UDP). TCP можа быць крыху павольней, але ён больш надзейны і з большай верагоднасцю зразумелы прыкладанням, якія працуюць на абодвух канцах тунэля.
  • Вы можаце паказаць dev tun, калі жадаеце стварыць прасцейшы і эфектыўны IP-тунэль, які перадае змесціва дадзеных і нічога больш. Калі, з іншага боку, вам запатрабуецца падлучыць некалькі сеткавых інтэрфейсаў (і сетак, якія яны прадстаўляюць), стварыўшы мост Ethernet, то прыйдзецца абраць dev tap. Калі вы не разумееце, што ўсё гэта значыць, выкарыстоўвайце аргумэнт tun.
  • Наступныя чатыры радкі перадаюць OpenVPN імёны трох файлаў аўтэнтыфікацыі на сэрвэры і файл параметраў dh2048, які вы стварылі раней.
  • Радок server устанаўлівае дыяпазон і маску падсеткі, якія будуць выкарыстоўвацца для прысвойвання IP-адрасоў кліентам пры ўваходзе ў сістэму.
  • Неабавязковы параметр push "route 10.0.3.0 255.255.255.0" дазваляе выдаленым кліентам атрымліваць доступ да прыватных падсетак за серверам. Для выканання гэтай працы таксама патрабуецца настройка сеткі на самым серверы, каб прыватная падсетка ведала аб падсетцы OpenVPN (10.8.0.0).
  • Радок port-share localhost 80 дазваляе перанакіроўваць кліенцкі трафік, які паступае праз порт 1194, на лакальны вэб-сервер, які праслухоўвае порт 80. (Будзе карысна ў тым выпадку, калі вы збіраецеся задзейнічаць вэб-сервер для тэставання вашай VPN.) Гэта працуе толькі тады , калі абраны пратакол tcp.
  • Радкі user nobody і group nogroup павінны быць актыўныя - для гэтага трэба выдаліць кропкі з коскі (;). Прымусовая праца выдаленых кліентаў пад nobody і nogroup гарантуе, што сеансы на серверы будуць непрывілеяванымі.
  • log паказвае, што бягучыя запісы ў часопісе будуць перазапісваць старыя запісы пры кожным запуску OpenVPN, тады як log-append дадае новыя запісы ў наяўны файл часопіса. Сам файл openvpn.log запісваецца ў каталог /etc/openvpn/.

Акрамя таго, у файл канфігурацыі таксама часта дадаюць значэнне client-to-client, каб некалькі кліентаў маглі бачыць адзін аднаго ў дадатак да сервера OpenVPN. Калі вы задаволены сваёй канфігурацыяй, то можна запускаць сервер OpenVPN:

# systemctl start openvpn

З-за які змяняецца характару адносін паміж OpenVPN і systemd для запуску службы часам можа запатрабавацца такі сінтаксіс: systemctl start openvpn@server.

Запуск ip addr для адлюстравання спісу сеткавых інтэрфейсаў вашага сервера зараз павінен вывесці спасылку на новы інтэрфейс з імем tun0. OpenVPN створыць яго для абслугоўвання ўваходзячых кліентаў:

$ ip addr
[...]
4: tun0: mtu 1500 qdisc [...]
      link/none
      inet 10.8.0.1 peer 10.8.0.2/32 scope global tun0
          valid_lft forever preferred_lft forever

Магчыма, вам спатрэбіцца перазагрузіць сервер, перш чым усё пачне поўнасцю працаваць. Наступны прыпынак - кліенцкі кампутар.

10.1.2. Канфігураванне кліента OpenVPN

Традыцыйна тунэлі будуюцца як мінімум з двума выхадамі (інакш мы б называлі іх пячорамі). Правільна наладжаны OpenVPN на серверы накіроўвае трафік у тунэль і з яго з аднаго боку. Але вам таксама запатрабуецца нейкае праграмнае забеспячэнне, якое працуе на баку кліента, гэта значыць на іншым канцы тунэля.

У гэтым раздзеле я збіраюся засяродзіцца на ручной наладзе кампутара з Linux таго ці іншага тыпу для працы ў якасці кліента OpenVPN. Але гэта не адзіны спосаб, з дапамогай якога даступна такая магчымасць. OpenVPN падтрымлівае кліенцкія прыкладанні, якія можна ўсталёўваць і выкарыстоўваць на настольных кампутарах і наўтбуках з Windows або macOS, а таксама на смартфонах і планшэтах на базе Android і iOS. Падрабязнасці гл. на сайце openvpn.net.

Пакет OpenVPN неабходна будзе ўсталяваць на кліенцкім кампутары, як ён быў усталяваны на серверы, хоць тут няма неабходнасці ў easy-rsa, паколькі выкарыстоўваныя вамі ключы ўжо існуюць. Вам трэба скапіяваць файл шаблона client.conf у каталог /etc/openvpn/, які толькі што быў створаны. Гэтым разам файл не будзе заархіваваны, таму звычайная каманда cp выдатна зладзіцца з дадзенай задачай:

# apt install openvpn
# cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf 
  /etc/openvpn/

Большасць налад у вашым файле client.conf будуць даволі зразумелымі: яны павінны адпавядаць значэнням на серверы. Як відаць з наступнага прыкладу файла, унікальным параметрам з'яўляецца remote 192.168.1.23 1194, які паказвае кліенту IP-адрас сервера. Ізноў жа пераканайцеся, што гэта адрас вашага сервера. Вы таксама павінны прымусіць кампутар кліента правяраць сапраўднасць сертыфіката сервера, каб прадухіліць магчымую атаку "чалавек пасярэдзіне". Адзін са спосабаў зрабіць гэта - дадаць радок remote-cert-tls server (лістынг 10.3).

Кніга "Linux у дзеянні"
Цяпер вы можаце перайсці ў каталог /etc/openvpn/ і атрымаць ключы сертыфікацыі з сервера. Заменіце IP-адрас сервера або імя дамена ў прыкладзе сваімі значэннямі:

Кніга "Linux у дзеянні"
Нічога захапляльнага, хутчэй за ўсё, не адбудзецца, пакуль вы не запусціце OpenVPN на кліенце. Паколькі вам трэба перадаць пару аргументаў, вы зробіце гэта з каманднага радка. Аргумент -tls-client паведамляе OpenVPN, што вы будзеце дзейнічаць як кліент і падлучацца праз шыфраванне TLS, а -config паказвае на ваш файл канфігурацыі:

# openvpn --tls-client --config /etc/openvpn/client.conf

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

  • Уважліва прачытайце выснову аперацыі OpenVPN на кліенце. Ён часта змяшчае каштоўныя парады аб тым, што менавіта не можа быць выканана і чаму.
  • Праверце паведамленні пра памылкі ў файлах openvpn.log і openvpn-status.log у каталогу /etc/openvpn/ на сэрвэры.
  • Праверце звязаныя з OpenVPN і прыдатныя па часе паведамлення ў сістэмных часопісах на серверы і кліенце. (journalctl -ce выведзе на экран самыя апошнія запісы.)
  • Пераканайцеся, што ў вас ёсць актыўнае сеткавае злучэнне паміж серверам і кліентам (падрабязней - у главе 14).

Пра аўтара

Дэвід Клінтан - сістэмны адміністратар, выкладчык і пісьменнік. Ён адміністраваў, пісаў пра гэта і ствараў навучальныя матэрыялы для шматлікіх важных тэхнічных дысцыплін, у тым ліку сістэмы Linux, хмарныя вылічэнні (у прыватнасці AWS) і кантэйнерныя тэхналогіі, такія як Docker. Ён напісаў кнігу Learn Amazon Web Services у Month of Lunches (Manning, 2017). Многія з яго навучальных відэакурсы можна знайсці на сайце Pluralsight.com, а спасылкі на іншыя яго кнігі (па адміністраванні Linux і віртуалізацыі сервераў) даступныя па адрасе bootstrap-it.com.

» Больш падрабязна з кнігай можна азнаёміцца ​​на сайце выдавецтва
» Змест
» урывак

Для Хаброжыцеляў зніжка 25% па купоне Linux
Па факце аплаты папяровай версіі кнігі на e-mail дасылаецца электронная кніга.

Крыніца: habr.com

Дадаць каментар