Agizo moja la OpenVPN kwa kila mstari, na kwa nini kufunika kunadanganya
Skrini iliyofunikwa kwa upole si mstari mpya katika faili. Angalia mivunjo halisi ya mistari kabla ya kubadilisha sehemu yenye kasoro na kiolezo cha mgeni.
Wasifu uliokuwa ukianza sasa unashindwa na hitilafu ya chaguo, na mstari ambao kichanganuzi kinanukuu unaonekana mzuri kabisa kwenye skrini. Hiyo ndiyo mtego: faili ya usanidi ni orodha ya mistari halisi, kila mmoja ukiwa na neno moja la chaguo na hoja zake, na mstari mrefu uliofunikwa na kihariri unaonekana sawa na mistari miwili hadi uangalie baiti. Hakuna kitu cha mtandao, cheti au handaki kinachohusika katika aina hii ya hitilafu. Mistari miwili inayoonekana sawa kwenye skrini inaweza kutofautiana kwa baiti moja.
Fanya ukaguzi ulio hapa chini kwa mpangilio na usimame kwenye ule wa kwanza kushindwa. Kila mmoja ni wa bei nafuu kuliko unaofuata, na kila mmoja huondoa maelezo tofauti.
Mstari mmoja, agizo moja
Kichanganuzi kinasoma mstari, kinachukua neno la kwanza kama chaguo na kinachukulia mengine kama hoja za chaguo hilo. Kwa hivyo mstari kama cert server.crt port 1194 si maagizo mawili mfululizo. Ni chaguo moja cert lenye hoja tatu, na ya tatu si jina la faili ambalo chaguo linakubali. Kusoma hitilafu kama mvunjo wa mstari unaokosekana ni sahihi; kuisoma kama agizo linalokosekana si sahihi.
# malformed: one option, three arguments
cert server.crt port 1194
# intended: two options, one argument each
cert server.crt
port 1194
Mistari miwili iliyosahihishwa ni kipande, si usanidi. Inapatikana ili kuonyesha mpaka unakostahili. Kila agizo la kawaida katika wasifu hufuata sheria hiyo hiyo, na mstari unaounganisha mawili kati yao hutoa ama hitilafu ya hoja au thamani ambayo chaguo halikutarajia.
Thibitisha kuwa mvunjo wa mstari ni wa kweli
Vihariri hufunika kwa ajili ya kuonyesha. Baadhi pia huingiza mivunjo migumu unapobandika, na wengine hawafanyi, kwa hivyo matokeo sawa ya kuona yanaweza kutoka kwenye faili mbili tofauti sana. Onyesha miisho ya mistari na uhesabu mistari kabla ya kubadilisha chochote. Kupima kunagharimu amri moja; kukisia kunagharimu jioni.
cat -A /etc/openvpn/server/lab.conf | sed -n '10,20p'
awk 'NR>=10 && NR<=20 {printf "%d:%s\n", NR, $0}' /etc/openvpn/server/lab.conf
Katika matokeo ya kwanza kila mvunjo halisi wa mstari unaonekana kama alama ya $, kwa hivyo mstari uliofunikwa lakini haujagawanywa hauonyeshi alama mahali ambapo skrini yako inafunika. Amri ya pili inachapisha mistari yenye nambari, ambayo ni njia ya haraka zaidi ya kulinganisha kile kichanganuzi kinaripoti na kile faili inacho.
Nafasi za ziada pia haziundi agizo. Uingizaji ni wa mapambo, na mstari unaoanza na nafasi tupu bado ni chaguo lile lile moja. Ikiwa ujumbe wa hitilafu unaelekeza kwenye nambari ya mstari, soma mstari huo hasa badala ya aya ambayo unahusika nayo.
Nukuu njia, si orodha ya maagizo
Alama za nukuu zipo kwa hoja zilizo na nafasi, si kwa kuweka maagizo katika vikundi. Njia ya cheti yenye nafasi inahitaji alama zake za nukuu; maagizo mawili yanayoshiriki jozi moja ya alama za nukuu bado ni mstari mmoja wenye kasoro.
cert "/etc/openvpn/pki/lab certs/server.crt"
key "/etc/openvpn/pki/lab certs/server.key"
Angalia majina ya chaguo wakati huo huo na mpangilio, kwa sababu mstari uliounganishwa unaweza kuzalisha tokeni inayoonekana kuaminika ambayo haikuwahi kuwepo. Agizo la mlango ni port; wasifu unaotumia kitu kingine kwa wazo hilo hilo utashindwa hata baada ya mipaka ya mistari kusahihishwa. Jina linapoonekana geni, linganisha na orodha ya chaguo kwa toleo unalotumia badala ya mfano wa jukwaa.
Weka vizuizi vilivyopachikwa kama vizuizi
Wasifu unaweza kubeba vyeti na funguo vilivyopachikwa, na vizuizi hivyo ni data, si usanidi. Mistari ya PEM ndani ya kizuizi si chaguo za kufunikwa, kuingizwa upya au kuunganishwa, na alama za kizuizi lazima zibaki kwenye mistari yao wenyewe.
Chukulia kizuizi kilichopachikwa kama eneo lisilopitika: sahihisha mistari ya chaguo kuzunguka, acha yaliyomo bila kuguswa baiti kwa baiti, na usiibandike kamwe kwenye uzi wa msaada wa umma. Ikiwa zana ya uumbizaji iliandika upya kizuizi, kirejeshe kutoka PKI yako badala ya kukirekebisha kwa mkono.
Rekebisha sehemu ndogo zaidi, si kiolezo
Ukarabati unaovutia ni kubadilisha faili yote na usanidi kutoka mafunzo ambayo „yanafanya kazi”. Hiyo hubadilisha mstari mmoja wenye kasoro kwa mfululizo wa mabadiliko ya sera ambayo hakuna aliyeyakagua: vigezo tofauti vya DH, mipangilio ya mbano, chaguo za sifa, wasikilizaji waliorudufiwa. Tatizo la awali ni dogo na la ndani, na uingizwaji si lolote kati ya hayo.
Nakili wasifu kwenye faili ya kazi iliyolindwa, sahihisha mipaka ya mistari katika nakala hiyo, na umruhusu mmiliki wa kawaida wa huduma kuipakia. Kisha anzisha kipengele na usome hitilafu ya kwanza, ikiwa ipo, tangu mwanzo.
openvpn --config /etc/openvpn/server/lab.conf --verb 3 --log /tmp/parse.log
grep -n 'Options error' /tmp/parse.log
Awamu ya uchanganuzi inapopita, kushindwa kunakofuata kutahusu faili, cheti au sifa badala ya msamiati, na hiyo ni maendeleo ya kweli. Hifadhi nakala ya kazi na noti ya mstari mmoja kuhusu kile kilichounganishwa; ubandikaji huo utatokea tena kwa mtu mwingine katika timu hiyo hiyo.