Бирөө сизге профиль жөнөтөт, сиз аны импорттойсуз, ал эми отуз секунддан кийин кандайдыр бир кардар эч ким текшербеген багытка чалып жатат. Алгач файлды тексттик редактордо окуңуз, анткени маанилүүнүн баары бир ууч директивага батат: remote, proto, port, ca, cert, tls-crypt жана verify-x509-name. Калганынын баары демейки маанилер, ал эми таң калыштар дал ошол жерде жашайт.

Файл колдоно ала турган бардык акыркы чекиттерди тизмелеңиз

Акыркы чекиттерден баштаңыз, анткени бир профилде бир нече болушу мүмкүн. grep -nE '^[[:space:]]*(remote|proto|port|remote-random|connection)' profile.ovpn ар бир талапкерди файлдын тартиби менен басып чыгарат, анын ичинде киргизилген <connection> блокторунун ичиндегилерди да.

Директива портту өткөрүп жиберсе, кардар угуучунун демейки маанисине кайтат, ошондуктан жалгыз remote vpn.example.com 1194 портун билдирет, файлда кийин кандай proto кездешсе да. Бир нече жөнөкөй remote сабы альтернатива болуп саналат: кардар аларды тартиби менен сынайт, эгер remote-random аларды аралаштырбаса, жана эч качан башка оператордун хостуна үнсүз алмаштырбайт. Байланышы жок домендердеги эки remote сабы — токтоп, кайсынысы көздөлгөнүн сурай турган жер.

proto жазылышына да көңүл буруңуз. tcp кардар тараптагы tcp-client синоними катары кабыл алынат, бирок кардар профилиндеги tcp-server таза ишке ашпай калуунун ордуна илинип калууга жейт.

Алгач атты, андан кийин портту тастыктаңыз

dig +short vpn.example.com аттын бар-жогун жана кайсы даректи кайтарарын айтат, ал эми көп даректүү же прокси артындагы акыркы чекит бир нечени мыйзамдуу түрдө кайтара алады. Атты чечүү алдын ала шарт, ээликтин далили эмес; ар ким атты дарекке багыттай алат, ал эми бир дарек көп атка жооп бере алат.

Андан кийин тапкан порттогу угуучуну текшериңиз, ташуу катмарына ылайык. TCP аркылуу openssl s_client -connect vpn.example.com:1194 -servername vpn.example.com сервер сунуш кылган чынжырды басып чыгарат. UDP аркылуу сизге DTLS керек: openssl s_client -dtls1_2 -connect vpn.example.com:1194 ошол эле кол алышууну датаграммалар аркылуу аткарат. Бүткөн кол алышуу бир нерсенин угуп жатканын жана сертификат кармап турганын далилдейт, бул ping көрсөткөндөн көп жана профилдин өзүнүн ишеним жөндөөлөрү талап кылгандан аз.

Кол алышуу ишке ашпай, хост ping ге жооп берсе, порт туура эмес же чыпкаланган болушу ыктымал. Муну туура портту талап кылуунун себеби деп кабыл алыңыз, жакынкы портторду тазалоого чакыруу деп эмес. nc -vzu да айрым стектерде эч нерсе угуп турбаса да ийгилик жөнүндө кабарлайт, ошондуктан артында кол алышуусуз жылаңач UDP сынагы эч нерсени билдирбейт.

Ишеним төөнөгүчтөрүн даректен өзүнчө окуңуз

Дарек кардардын кайда барарын аныктайт; ишеним блогу келгенден кийин кимге ишенерин аныктайт. verify-x509-name "vpn.example.com" name субъекттин жалпы атын бекемдейт, ал эми remote-cert-tls server серверди аутентификациялоо үчүн кеңейтилген ачкыч колдонууну талап кылат. Оператор берген профиль экөөнү тең алып жүрүшү керек.

ca, киргизилген <ca> блогун жана tls-crypt же tls-auth издөө керек. tls-auth колдонгон профилге кардарда key-direction 1 керек, эгер сервер тарабы 0 багытын колдонсо, ал эми дал келбестик кол алышууну сертификаттын кемчилигине окшош TLS катасы менен ишке ашпай калтырат. Жаңы эле атын чечкен операторго таандык эмес киргизилген CA файлдын эки булактан куралганын билдирет, жана бул чечкиндүү түрдө баш тартууга татыктуу учур.

verify-x509-name name, name-prefix же subject режимдерин кабыл алат, ал эми акыркысы сервер басып чыгарган так ошол тартипте толук айырмалоочу атты күтөт. Маанинин формасына туура келген режимди тандаңыз, анткени кардар жакын ката жөнүндө эскертүүнүн ордуна ар бир байланышты четке кагат. Сиз жазбаган файл үчүн жөнөкөй хост аты менен name эң аз таң калтырган тандоо.

Үнсүз ишке ашпай турган параметрлерди текшериңиз

OpenVPN 2.6 шифрлар боюнча data-ciphers аркылуу сүйлөшөт, ал эми эски cipher AES-256-CBC сабы гана бар профиль көзөмөл каналын бүтүрүп, анан дайындарда токтоп калышы мүмкүн. Ошол маанини окуу файл сиз кошулуп жаткан серверден мурун бүткөнүн айтат; 2.6 нын колдонмо бети сүйлөшүү тартибин тизмелейт, эгер операторго келтирүү керек болсо.

Файл аты жок auth-user-pass кардар сурайт дегенди билдирет, ошондуктан өзүн-өзү камсыз кылгандай көрүнгөн профилге да эсептик дайындар керек. auth-user-pass credentials.txt сизге жөнөтүлбөгөн болушу ыктымал файлды күтөт дегенди билдирет. nobind жана resolv-retry infinite кадимки жана зыянсыз, ал эми explicit-exit-notify UDP үчүн гана жана TCP аркылуу пайдасыз.

Булардын эч бири профилдин кайда туташканын өзгөртпөйт, бирок ар бири анын такыр туташабы же жокпу өзгөртөт, жана эч бири кардардын импорт диалогунда көрүнбөйт.

Чечим кабыл алыңыз, анан эмнени чечкениңизди жазыңыз

Бул окуудан кийин үч жыйынтык бар, жана бир гана импорт. Акыркы чекит менен төөнөгүчтөр өзүнчө канал аркылуу алынган нускамаларга дал келсе, аны импорттоңуз. Акыркы чекит туура көрүнсө, бирок төөнөгүчтөр же CA келбесе, оңдолгон файл сураңыз. Файл ар кайсы булактардын акыркы чекиттерин же CA материалын аралаштырса, аны өчүрүп, жаңы көчүрмө сураңыз.

Текшерген хэшиңизди жазыңыз, кийинки адам файлдын өзгөргөнүн биле алышы үчүн: sha256sum profile.ovpn, жазууларыңызда акыркы чекиттин жанына жабыштырыңыз. Профиль — даректердин тизмеси эмес, бүтүндөй жайгаштыруу, ошондуктан иштеп жаткан remote ты башка бирөөнүн ишеним блогунда алардын эсептик дайындарын сактап, эч качан кошпоңуз.

Жазууларды салыштырып жатканда жеке ачкычтарды жана сырсөздөрдү экран сүрөттөрүнөн жана чат агымдарынан тышкары кармаңыз. Акыркы чекит жана сыр эмес параметрлер так суроо берүүгө жетиштүү, калганы файлда калышы керек.

Эгер аны импорттоп, биринчи аракет ишке ашпаса, кардарды --verb 3 менен иштетип, биринчи он сапты окуңуз: чечилген remote дареги, келишилген proto жана TLS катасы ушул тартипте чыгат, бул жогорудагы текшерүүлөрдүн кайсынысын өткөрүп жибергениңизди айтат.

Тектеш макалалар