ලොග් එක වැඩෙන නමුත් නැවත සෑදිය නොහැක: නාමාවලියේ ACL පරීක්ෂා කරන්න
ගොනුවකට එකතු කිරීමට එහි නාමාවලියේ නව නමක් අවශ්ය නොවේ; සෑදීමට අවශ්ය වේ. යමක් පුළුල් කිරීමට පෙර ප්රවේශ ACL උරුම වූ පෙරනිමි සමඟ සසඳන්න.
නිරන්තරයෙන් වැඩෙන ලොග් එකක්, යමක් එය නැවත සාදන මොහොතේ වැඩීම නවතී, සහ දෝෂය පවසන්නේ අවසරය ප්රතික්ෂේප වූ බවයි. ලොග් ගොනුවටම තවත් අවසර අවශ්ය යැයි සිතීම පෙළඹවීමකි, නමුත් ගොනුව දැනටමත් එම ගිණුමට ලිවිය හැකි විය හැක. පවතින නමකට එකතු කිරීම සහ නව නමක් සෑදීම වෙනස් පරීක්ෂණ දෙකකි, සහ දෙවැන්න පමණක් නාමාවලියෙන් විමසයි.
එකතු කිරීම සහ සෑදීම වෙනස් පරීක්ෂණ වේ
පවතින ගොනුවක් එකතු කිරීමට විවෘත කිරීමට එම ගොනුව මත ලිවීමේ ප්රවේශය සහ එහි මාර්ගයේ සෑම නාමාවලියකම සෙවීමේ ප්රවේශය අවශ්ය වේ. ගොනුවක් සෑදීමට එය අඩංගු නාමාවලිය මත ලිවීම සහ සෙවීම අවශ්ය වේ, මන්ද මෙහෙයුම එයට නමක් එකතු කරයි. නම වෙනස් කිරීමෙන් ගොනුවක් ප්රතිස්ථාපනය කිරීම නාමාවලි දෙකම සහ ඒවායේ ඇලෙන-බිට් නීති ද ස්පර්ශ කරයි.
| Operation | What must permit it | Typical failure message |
|---|---|---|
| Append to an existing log | File write access, path traversal | Permission denied on the file |
| Create a missing log | Directory write and search access | Permission denied on the path |
| Rename a replacement into place | Both directories, plus sticky restrictions | Permission denied or operation not permitted |
දැනටමත් විවෘත විස්තරකයක් සිව්වන අවස්ථාව එකතු කරයි. ක්රියාවලියකට වරප්රසාද අත්හැරීමට පෙර විවෘත කළ ලිවීමේ හසුරුවක් රඳවා ගෙන, එහි පසුව එන අනන්යතාව යටතේ එම මාර්ගය නැවත විවෘත කිරීමට අසමත් විය හැක. සාර්ථක එකතු කිරීම් සහ අසාර්ථක සෑදීම එකම මොහොතේ, එකම ක්රියාවලියට, දෙකම සත්ය විය හැක.
පෙරනිමි ACL උරුම වේ, ඒවා ලබා නොදේ
පෙරනිමි උපසර්ගයෙන් ආරම්භ වන සටහනක් නව වස්තූන් නාමාවලියෙන් උරුම වන දේ විස්තර කරයි. එය නාමාවලියටම කිසිවක් ලබා නොදේ, සහ දැනටමත් පවතින ගොනුවක ACL අලුත්වැඩියා නොකරයි.
namei -l /var/log/openvpn/server.log
getfacl -p /var/log/openvpn
getfacl -p /var/log/openvpn/server.log
ප්රවේශ සටහන් පෙරනිමි සටහන්වලින් වෙන්ව කියවන්න, සහ ආවරණය කියවන්න. සම්පූර්ණ අයිතිවාසිකම් ලැයිස්තුගත කරන නම් කළ සටහනක් පවා ආවරණයෙන් සීමා විය හැක, එබැවින් ප්රභාවී අදහස් දැක්වීම පළමු පේළියේ අකුරුවලට වඩා වැදගත් වේ.
වින්යාසයේ මාර්ගය වෙනුවට විසඳන ලද මාර්ගය භාවිත කරන්න. සංකේතාත්මක සබැඳියක්, මවුන්ට් ලක්ෂ්යයක් හෝ කරකවන ලද නාමාවලියක් සැබෑ ගොනුව ඔබ ලබා දුන් අවසරය කිසිදා නොලැබෙන තැනක තැබිය හැක. පළමුව නම් මෙවලමෙන් මාර්ගය ගමන් කරන්න, පසුව සෑම මට්ටමක්ම අදාළ ගිණුම සමඟ සසඳන්න. ඉහළම මට්ටමේ නාමාවලිය අනුමාන කිරීම යනු නිවැරදි කිරීමක් එක් මට්ටමක් ඉතා ඉහළින් ගොඩබසින ආකාරයයි.
එම මොහොතේ කවුද ලියන්නේ දැයි හඳුනා ගන්න
කිසිවක් වෙනස් කිරීමට පෙර සේවා ඒකකය, එහි බැහැර කිරීම් සහ ඩීමන්ගේම ගිණුම් සැකසුම් පරීක්ෂා කරන්න. එකතු කරන ක්රියාවලිය සහ නැවත සාදන ක්රියාවලිය වෙනස් විය හැක: කරකැවීම් සහායකයෙක්, තත්ත්ව ලේඛකයෙක් සහ වෙබ් පාඨකයෙක් කලාතුරකින් අනන්යතාවක් බෙදා ගනී.
root කවචයකින් ධාවනය කළ පරීක්ෂණයක් සීමිත සේවාවක් ප්රතිනිර්මාණය නොකරයි, සහ සේවාව දිගටම අසාර්ථක වන අතර එය සාර්ථක වනු ඇත. අසාර්ථක මෙහෙයුම එම ඒකකය යටතේ, එම ගිණුම සහ එම වැලිපෙට්ටි සැකසුම් සමඟ ප්රතිනිර්මාණය කරන්න. නොහැකි නම්, තාවකාලික කවචයක් සමඟ ඒකකය අරඹා එය වාර්තා කරන අනන්යතාව පරීක්ෂා කරන්න. අනෙක කුමක් වුවත් සේවාව නොව ඔබේ පර්යන්තය මනිනු ලබයි.
සෑදීම ඇත්තෙන්ම අවශ්ය නම්, ලේඛකයාට කැපවූ ලොග් නාමාවලියට ප්රවේශය දෙන්න, සහ පාරිභෝගිකයින් සඳහා කියවීමේ ප්රවේශය වෙන්ව තබන්න. එක් ලොග් ඇමතුමක් තෘප්තිමත් කිරීමට හවුල් ගිණුමක් හෝ මුළු යෙදුම් ගසක්ම ලිවිය හැකි කිරීම කුඩා ගැටලුවක් විශාල එකකට මාරු කිරීමකි.
නැවත හඳුන්වා නොදී කරකවන්න
ගොනුව නැවත සාදන කෙනා ඊළඟ චක්රය සඳහා එහි හිමිකරු සහ ප්රකාරය තීරණය කරයි, එබැවින් නිවැරදි කිරීම කරකැවීම් වින්යාසය සමඟ සම්බන්ධීකරණය කරන්න. වෙනත් ගිණුමක් යටතේ හෝ නව ACL එකක් සමඟ සාදන ලද ප්රතිස්ථාපනයක් සාර්ථක නිවැරදි කිරීමකින් පසු අසාර්ථකත්වය ආපසු ගෙන එයි.
ප්රකාරය සහ කණ්ඩායම සෑදීමේදීම සකසන්න, පසුව නොව, සහ ඊළඟ එකතු කිරීම වෙනුවට ඊළඟ කරකැවීම තහවුරු කරන්න. එකතු කිරීම දැනටමත් සමත් වූ පරීක්ෂණය නැවත කරයි. කරකැවීම් මෙවලම සෑදීමේ ප්රකාර සැකසුමක් ලබා දෙන්නේ නම්, සෑදීමෙන් පසු chmod වෙනුවට එය භාවිත කරන්න. සෑදීම සහ chmod අතර පරතරය ඊළඟ ලිවීම අසාර්ථක විය හැකි හරියටම මොහොතයි.
කැපීම කෙසේ වුවත් අසාර්ථක වූ විට, අවසර එකතු කිරීම නවත්වන්න
ඔබට ලිවිය හැකි ගොනුවක් කැපීමේ අසාර්ථකත්වය නාමාවලි අවසරවලින් පැහැදිලි නොවේ, සහ ඒවා තවත් එකතු කිරීමෙන් උපකාර නොවේ. ඒ වෙනුවට ගුණාංග සහ සීමාව දෙස බලන්න: එකතු කිරීමට-පමණක් ගුණාංගය ලිවීමට අවසර දෙන්නේ එකතු කිරීමේ ප්රකාරයේදී පමණි, සහ කියවීමට-පමණක් මවුන්ට් එකක් හෝ සේවා වැලිපෙට්ටියක් ACL අවසර දෙන මෙහෙයුමක් ප්රතික්ෂේප කළ හැක.
ඒකකයේ ගොනු පද්ධති සීමා සහ මාර්ගයේ මවුන්ට් විකල්ප පරීක්ෂා කරන්න, පසුව අසාර්ථක වූ නිශ්චිත මෙහෙයුම ප්රතිනිර්මාණය කරන්න. කිසිදා විමසා නොගත් අවසරයක් පුළුල් කිරීම කුමන සීමාව සැබෑ වූයේ ද යන්න සඟවයි. ඉවතලන ඒකකයක එකවරකට එක් සීමාවක් ඉවත් කරන්න, සහ ස්ථිර යමක් වෙනස් කිරීමට පෙර එය ආපසු ගෙන එන්න.