Waa kee OpenVPN-ka dhab ahaan isticmaalaya borofaylkaaga PiVPN?
Kaaliyaha PiVPN wuxuu qoraa faylal kadibna wuu baxaa. Raac unugga systemd, silsiladda konfig ee la raray iyo logga saxda ah ka hor inta aadan dib u dhisin tunnelka.
PiVPN waxa uu qoraa konfig server iyo borofayl macmiil, kadibna wuu baxaa; marnaba ma noqdo habka qaada taraafikadaada. Sidaas darteed handshake fashilmay, macmiilka wacaya barta khaldan, ama adeeg soo noqda si khaldan dib u bilow ka dib lagama sharaxi karo menu-yada rakibaha. Calaamadahaas waxay ka tirsan yihiin daemonka OpenVPN ee hadda socda, konfigga uu daemonkaas dhab ahaan raray, iyo logga loo jeediyay. Afar amar oo akhris-kaliya ayaa sida caadiga ah xalliya, midkoodna ma beddelo shahaadahaaga ama furayaashaada.
Kaaliyaha iyo daemonku waa waxyaabo kala duwan
Jahwareerka si sahlan ayaa loo sharaxi karaa: hal galka waxa ku jira faylka kaaliyahu abuuray, faylka daemonku akhriyo, iyo mararka qaar nuqul duug ah oo labadaba. Kaaliyahu waa skript diyaarin. Wuxuu rakibaa xirmooyin, qoraa faylal unug iyo daabacaa borofayl macmiil, kadibna shaqadiisu way dhammaataa. Waxa hadha waa galitaan ku jirta maareeyaha adeegga iyo hal saf ood amar.
Serverka systemd, ka bilow unugga firfircoon halkii liiska galka. Magacu waxa uu ku xiran yahay xirmaynta: sawirada Debian iyo Raspberry Pi OS sida caadiga ah waxay soo bandhigaan tusaale template ah sida openvpn-server@server, halka rakibaadda duugga ah ay isticmaalaan openvpn@server. Weydii maareeyaha kee socda halkii aad ka qiyaasi lahayd magaca faylka.
systemctl list-units --type=service --all | grep -i openvpn
systemctl cat openvpn-server@server
Akhri ExecStart= soo-saarkaas. Waxa uu sheegaa faylka la fulinayo iyo xulashooyinka uu maareeyahu dhab ahaan bilaabo, oo ay ku jiraan waddo kasta oo --config ah; fayl konfig oo ag yaal oo aan amar uun tixraacin qayb kama aha tunnelka socda.
Raac silsiladda konfig ee uu daemonku xalliyay
OpenVPN ma baadho galka si uu u helo dhigmooyin. Waxa uu akhriyaa faylka lagu bixiyay --config, wuxuu raacaa config tilmaam kasta oo ku dhex jira, kadibna wuxuu dabaqaa xulashooyinka safka amarka. Buugga 2.6 waxa uu qeexaa nidaamkaas, waana muhiim marka laba fayl ay isku raacsanayn dekedda, qalabka ama cipherka.
Marka hore soo saar wicitaanka dhabta ah, kadib eeg tilmaamaha go'aamiya aqoonsiga iyo gaaritaanka. Labada amar waa akhris-kaliya oo ammaan ku ah server nool, in kastoo kan labaad daabaco waddooyin laga yaabo inaadan rabin tikit dadweyne.
systemctl show -p ExecStart --value openvpn-server@server
grep -E '^(config|dev|proto|port|local|log|log-append|status|ca|cert|key|tls-auth|tls-crypt)' /etc/openvpn/server/server.conf
Fayl .ovpn oo ku jira galka guriga waa wax-soo-saar macmiil. Daemonka serverku marnaba ma akhriyo, sidaas darteed wax ka beddelka faylkaas si loo hagaajiyo fashil handshake dhinaca serverka waxba ma gaadho.
Ku-darista waa dabin kale. Saf config ah waxa uu jiitaa fayl labaad oo xulashooyinkiisa lagu farsameeyo bartaas, sidaas darteed tilmaam hal-qiime ah oo dambe ayaa ka gudbi kara waxa faylka ugu weyn uu u muuqdo inuu sheegayo. Haddii faylka muuqda uu u muuqdo mid sax ah oo daemonku wali si kale u dhaqmo, akhri faylka lagu daray ka hor inta aadan wax beddelin.
Logga ku xidh habka, ma aha khaladka aad xasuusato
Laba goobood oo log ah ayaa caadi ah, midkoodna waa journal. log-append oo la dhigay, daemonku waxa uu qoraa faylkaas, journalkuna wax yar buu hayaa marka laga reebo safafka bilowga. La'aanteed journalctl waa isha dhacdooyinka.
journalctl -u openvpn-server@server -n 80 --no-pager
Ku xidh hal isku-day isku-xirnaansho hal daaqad waqti ah. Qor barta macmiilka, kadib akhri dhacdooyinka serverka isla sekanadkaas. Handshake TLS oo marnaba aan gaarin is-weydaarsiga shahaadaha waxa uu tilmaamaa gaaritaan ama isku-dhici-waaga borotokool, halka diidmada xaqiijinta ay timaaddo ka dib marka halbeegyada tunnelka horeba loo heshiiyay.
Galitaan log duug ah waxba kama caddaynayso borofayl aad soo dejisatay shan daqiiqo ka hor. Dib u abuur faylka macmiilka, isku xidh hal mar, oo akhri oo kaliya safafka soo muuqday inta lagu jiray isku-daykaas.
Qor fashilkii ugu horreeyay ee gaar ah, ma aha kii ugu dambeeyay ee guud. Khalad bind, is-weydaarsi dibadeed oo aan jawaab lahayn, diidmo shahaado iyo diidmo akoon mid kastaa waxa uu kuu dirayaa lakab kale, waqtiga dhammaadkana waxa uu inta badan qariyaa dhacdada faa'iidada leh ee ka sarraysa.
Dib u dhiska tunnelka ma aha tallaabo cilmi-baaris
Jidka gaaban ee soo jiidashada leh waa in la dhiso tunnel labaad oo fudud: fure static, shahaadooyin ma leh, xaqiijin dheeraad ah ma leh. Inta badan way isku xidhi doontaa, waxayna caddaynaysaa oo kaliya in laba server ay UDP ama TCP isu gudbin karaan. Waxba kama sheegayso sababta rakibaadda shahaado lagu xaqiijiyay u fashilanto, oo waxay si aamusnaan ah u beddeshaa qaabka amniga ee lagaa doonayay inaad haysato.
Isla taas ayaa khuseysa tls-auth ama tls-crypt, dabcin verify-x509-name, ama ka tagista qodob labaad si loo helo xaalad cagaar. Tunnel ku xidhma sababta oo ah xaqiijinta waa la saaray waa nidaam kale, ma aha mid la hagaajiyay.
Samee hal isbeddel xaddidan lakabka uu loggu sheegay, dib u bilow isla unuggaas, oo ku celi isku-dayka hal isku-xirnaansho. Taas waxay simistaha ka dhigtaa mid daacad ah, waxayna ka tagtaa isbeddel aad dib u celin karto.
Waxa aad u gudbinayso qofka xiga
Qor afar xaqiiqo inta aad wali haysato: nooca OpenVPN ee openvpn --version ka soo baxay, unugga firfircoon, silsiladda konfig oo ay la socoto ku-daristiisa, iyo daaqadda log ee daboola hal isku-day. Afartaas waxay cabasho aan cad ahayn u beddelaan kiis dib loo soo saari karo.
Qari xogta xasaasiga ah ka hor inta aadan wadaagin. Furayaasha gaarka ah, auth-user-pass faylal, maaddada fure static iyo xirmooyinka macmiilka oo buuxa kama tirsana tikit; magacyada xulashooyinka iyo qaabka silsiladda ayaa sida caadiga ah ku filan laba indhood oo labaad.
Haddii silsiladdu tahay mid aan jabin oo loggu wali tilmaamo shabakadda, tallaabada xigta waa waddada u dhaxaysa macmiilka iyo serverka, ma aha rakibaad kale. Taasi waa qaybta sheekada ee kaaliyuhu marnaba lahayn.