එක් පේළියකට එක් OpenVPN උපදෙසක්, සහ පේළි ඔතන බොරු කියන්නේ ඇයි
මෘදු ලෙස ඔතන ලද තිරය ගොනුවේ නව පේළියක් නොවේ. විකෘති කොටසක් අමුත්තෙකුගේ අච්චුවකින් ප්රතිස්ථාපනය කිරීමට පෙර සැබෑ පේළි බිඳීම් පරීක්ෂා කරන්න.
කලින් ආරම්භ වූ පැතිකඩක් දැන් විකල්ප දෝෂයකින් අසාර්ථක වේ, සහ විග්රහකය උපුටා දක්වන පේළිය තිරයේ සම්පූර්ණයෙන් සාධාරණ ලෙස පෙනේ. මෙයයි උගුල: වින්යාස ගොනුවක් යනු භෞතික පේළි ලැයිස්තුවකි, සෑම එකකම එක් විකල්ප මූල පදයක් සහ එහි තර්ක ඇත, සහ සංස්කාරකය විසින් ඔතන ලද දිගු පේළියක් බයිට් බලන තෙක් පේළි දෙකක් ලෙසම පෙනේ. ජාලය, සහතිකය හෝ උමග මෙම අසාර්ථකත්ව පන්තියේ සම්බන්ධ නොවේ. තිරයේ එකම ලෙස පෙනෙන පේළි දෙකක් එක් බයිටයකින් වෙනස් විය හැක.
පහත පරීක්ෂණ ක්රමවත්ව කර පළමු අසාර්ථක එකේදී නවතින්න. සෑම එකක්ම ඊළඟ එකට වඩා ලාභදායී වන අතර, සෑම එකක්ම වෙනස් පැහැදිලි කිරීමක් ඉවත් කරයි.
එක් පේළියක්, එක් උපදෙසක්
විග්රහකය පේළියක් කියවා, පළමු වචනය විකල්පය ලෙස ගෙන, ඉතිරිය එම විකල්පයේ තර්ක ලෙස සලකයි. එබැවින් cert server.crt port 1194 වැනි පේළියක් අඛණ්ඩ උපදෙස් දෙකක් නොවේ. එය තර්ක තුනක් සහිත එක් cert විකල්පයකි, තෙවැන්න විකල්පය පිළිගන්නා ගොනු නාමයක් නොවේ. දෝෂය අතුරුදහන් පේළි බිඳීමක් ලෙස කියවීම නිවැරදිය; එය අතුරුදහන් උපදෙසක් ලෙස කියවීම නිවැරදි නොවේ.
# malformed: one option, three arguments
cert server.crt port 1194
# intended: two options, one argument each
cert server.crt
port 1194
එම නිවැරදි කළ පේළි දෙක කොටසකි, වින්යාසයක් නොවේ. මායිම කොහේදැයි පෙන්වීමට ඒවා ඇත. පැතිකඩක එක් එක් සාමාන්ය උපදෙස එකම නියමය අනුගමනය කරයි, දෙකක් එකට එකතු කරන පේළියක් තර්ක දෝෂයක් හෝ විකල්පය බලාපොරොත්තු නොවූ අගයක් ලබා දෙයි.
පේළි බිඳීම සැබෑ බව ඔප්පු කරන්න
සංස්කාරක දර්ශනය සඳහා ඔතයි. සමහරක් අලවන විට දෘඩ බිඳීම් ද ඇතුළු කරයි, සමහරක් නොකරයි, එබැවින් එකම දෘශ්ය ප්රතිඵලය බෙහෙවින් වෙනස් ගොනු දෙකකින් පැමිණිය හැක. යමක් වෙනස් කිරීමට පෙර පේළි අන්ත පෙන්වා පේළි ගණන් කරන්න. මැනීම එක් විධානයක පිරිවැයකි; අනුමාන කිරීම එක් සවසක පිරිවැයකි.
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
පළමු ප්රතිදානයේ සෑම සැබෑ පේළි බිඳීමක්ම $ සලකුණක් ලෙස පෙනේ, එබැවින් ඔතන ලද නමුත් නොබෙදුණු පේළියක් ඔබේ තිරය ඔතන තැන කිසිදු සලකුණක් නොපෙන්වයි. දෙවන විධානය අංකිත පේළි මුද්රණය කරයි, එය විග්රහකය වාර්තා කරන දේ සහ ගොනුවේ ඇති දේ සංසන්දනය කිරීමට වේගවත්ම මාර්ගයයි.
අමතර හිස්තැන් ද උපදෙසක් සාදන්නේ නැත. ඉන්ඩෙන්ටේෂන් අලංකාරයකි, හිස්තැනකින් ආරම්භ වන පේළිය එම තනි විකල්පයම වේ. දෝෂ පණිවිඩය පේළි අංකයක් පෙන්වන්නේ නම්, එය අයත් වන ඡේදය නොව එම පේළියම කියවන්න.
උපදෙස් ලැයිස්තුවක් නොව මාර්ගයක් උපුටා දක්වන්න
උද්ධෘත ලකුණු හිස්තැන් සහිත තර්ක සඳහා ය, විකල්ප කාණ්ඩගත කිරීම සඳහා නොවේ. හිස්තැනක් සහිත සහතික මාර්ගයකට තමන්ගේම උද්ධෘත ලකුණු අවශ්යයි; එක් උද්ධෘත ලකුණු යුගලයක් බෙදාගන්නා උපදෙස් දෙකක් තවමත් එක් විකෘති පේළියකි.
cert "/etc/openvpn/pki/lab certs/server.crt"
key "/etc/openvpn/pki/lab certs/server.key"
විකල්පවල නම් පිරිසැලසුම සමඟම පරීක්ෂා කරන්න, මන්ද එකතු කළ පේළියක් කිසිදා නොතිබූ විශ්වාසදායක ලෙස පෙනෙන ටෝකනයක් සෑදිය හැක. තොටුපළ උපදෙස port වේ; එම අදහසට වෙනත් දෙයක් භාවිතා කරන පැතිකඩක් පේළි සීමා නිවැරදි කළ පසුවත් අසාර්ථක වේ. නමක් අමුතු ලෙස පෙනේ නම් සංසද උදාහරණය වෙනුවට ඔබ ධාවනය කරන අනුවාදයේ විකල්ප ලැයිස්තුව සමඟ සසඳන්න.
ඉන්ලයින් කොටස් කොටස් ලෙස තබා ගන්න
පැතිකඩ සහතික සහ යතුරු ඉන්ලයින් ලෙස තබා ගත හැක, එම කොටස් දත්ත මිස වින්යාසය නොවේ. කොටසක් තුළ ඇති PEM පේළි පැතලි කළ යුතු, නැවත ඉන්ඩෙන්ට් කළ යුතු හෝ එකතු කළ යුතු විකල්ප නොවේ, කොටස් සලකුණු ඒවායේම පේළිවල රැඳී සිටිය යුතුය.
ඉන්ලයින් කොටස අපාරදර්ශී කලාපයක් ලෙස සලකන්න: අවට විකල්ප පේළි නිවැරදි කරන්න, එහි අන්තර්ගතය බයිටයෙන් බයිටය අස්පර්ශීව තබන්න, කිසිවිටෙක එය පොදු ආධාරක සංවාදයකට අලවන්න එපා. හැඩතල ගැන්වීමේ මෙවලම කොටස නැවත ලියා ඇත්නම් අතින් අලුත්වැඩියා කරනවා වෙනුවට ඔබේ PKI එකෙන් ප්රතිස්ථාපනය කරන්න.
අච්චුව නොව කුඩාම කොටස නිවැරදි කරන්න
පෙළඹවීම ඇති කරන අලුත්වැඩියාව යනු මුළු ගොනුවම „වැඩ කරන” නිබන්ධනයක වින්යාසයකින් ප්රතිස්ථාපනය කිරීමයි. එය එක් විකෘති පේළියක් කිසිවෙකු සමාලෝචනය නොකළ ප්රතිපත්ති වෙනස්කම් සමූහයක් සමඟ මාරු කරයි: වෙනත් DH පරාමිති, සම්පීඩන සැකසුම්, සයිෆර් තේරීම්, දෙගුණ සවන්දෙන්නන්. මුල් ගැටලුව කුඩා හා දේශීයයි, ප්රතිස්ථාපනය එම දෙකම නොවේ.
පැතිකඩ ආරක්ෂිත කාර්ය ගොනුවකට පිටපත් කරන්න, එම පිටපතේ පේළි සීමා නිවැරදි කරන්න, සේවාවේ සාමාන්ය හිමිකරුට එය පූරණය කිරීමට ඉඩ දෙන්න. ඉන්පසු අවස්ථාව ආරම්භ කර පළමු දෝෂය, ඇත්නම්, ආරම්භයේ සිට කියවන්න.
openvpn --config /etc/openvpn/server/lab.conf --verb 3 --log /tmp/parse.log
grep -n 'Options error' /tmp/parse.log
විග්රහ අදියර පසු කළ පසු ඊළඟ අසාර්ථකත්වය වචන මාලාව ගැන නොව ගොනුව, සහතිකය හෝ සයිෆරය ගැන වන අතර එය සැබෑ ප්රගතියකි. කාර්ය පිටපත සහ කුමක් එකතු කළාද යන්න පිළිබඳ එක් පේළි සටහනක් තබා ගන්න; එම අලවීමම එකම කණ්ඩායමේ තවත් අයෙකුට නැවත සිදුවනු ඇත.