كيفية حذف الملفات بأمان على نظام Linux

افتح القرص الصلب في علبة تبديل ساخنة

بيهلر مايكل / Shutterstock.com

تمزيق ملفات البيانات القديمة لنفس سبب تمزيق المستندات الورقية القديمة. نخبرك بما تحتاج لمعرفته حول حذف ملفات Linux بشكل آمن. يغطي هذا البرنامج التعليمي shred الأمر و secure-delete مجموعة المرافق.

عادة ما تكون الملفات المحذوفة قابلة للاسترداد

لا يؤدي حذف ملف إلى إزالته فعليًا من محرك الأقراص الثابتة. يعود الأمر برمته إلى الطريقة التي يستخدم بها نظام الملفات الخاص بك inodes. هذه هي هياكل البيانات داخل نظام الملفات التي تحتوي على البيانات الوصفية المتعلقة بالملفات. يتم تخزين اسم الملف وموضعه على القرص الصلب والسمات والأذونات التي يمتلكها وما إلى ذلك داخل inode. الدليل ليس أكثر من ملف بحد ذاته. واحد يحتوي على أسماء وأرقام inode للملفات التي يحتوي عليها الدليل.





عند حذف ملف بـ rm ، يحرر نظام الملفات inode المناسب ويضبط ملف الدليل. يشير هذا إلى المساحة الموجودة على محرك الأقراص الثابتة التي كان الملف يشغلها على أنها غير مستخدمة. تخيل أنك دخلت مكتبة وتصفح فهرس البطاقات ، وابحث عن بطاقة فهرس الكتاب ، وقم بنسخها. الكتاب لا يزال على الرف. من الصعب العثور عليه.

بمعنى آخر ، أصبحت المساحة التي استخدمها الملف الآن مجانية لاستخدامها من قبل الملفات الأخرى. لكن محتويات الملف القديم ما زالت موجودة في تلك المساحة. حتى يتم الكتابة فوق هذه المساحة ، هناك فرصة جيدة لاسترداد الملف.



الإعلانات

لكن التخلص تمامًا من ملف ليس بالأمر السهل مثل مجرد الكتابة فوقه. كما سنرى.

لا تفعل هذا مع SSD

هذه التقنيات مخصصة لمحركات الأقراص الصلبة الكهروميكانيكية التقليدية (HDD) ، ويجب عدم استخدامها مع محركات الأقراص ذات الحالة الصلبة (SSD). لن يعمل وسيؤدي إلى المزيد من عمليات الكتابة والتآكل غير الضروري لمحرك الأقراص ذي الحالة الصلبة. لمسح البيانات بأمان من SSD ، يجب عليك استخدام الأداة المساعدة التي توفرها الشركة المصنعة لـ SSD الخاص بك.

ذات صلة: كيفية حذف الملفات والدلائل في Linux Terminal



الأمر أجاد

shred تم تصميم ل قم بالكتابة نيابة عنك لذلك لا يمكن استرداد الملف المحذوف. تم تضمينه في جميع توزيعات Linux التي تم اختبارها أثناء البحث لهذه المقالة ، بما في ذلك Ubuntu و Fedora و Manjaro.

في هذا المثال ، سنعمل في دليل يسمى ~ / research ، والذي يحتوي على العديد من الملفات النصية. يحتوي أيضًا على بعض الدلائل الأخرى التي بدورها تحتوي على ملفات أخرى. سنفترض أن هذه الملفات حساسة ويجب محوها بالكامل من القرص الصلب.

يمكننا أن نرى بنية شجرة الدليل باستخدام tree الأمر على النحو التالي. ال -d يتسبب خيار (الدليل) tree لسرد الدلائل فقط ، وليس لسرد كافة الملفات. تبدو بنية شجرة الدليل كما يلي:

shred

تقطيع ملف واحد

لتمزيق ملف واحد ، يمكننا استخدام الأمر التالي. الخيارات التي نستخدمها هي:

    ش: قم بإلغاء تخصيص الملف وإزالته بعد الكتابة فوقه. الخامس: خيار مطوّل ، بحيث shred يخبرنا ما يفعله. مع: يقوم بالكتابة النهائية بالأصفار.
shred

الإعلانات

-n يقوم بالكتابة فوق الملف أربع مرات بشكل افتراضي. تستخدم الممرات الثلاثة الأولى بيانات عشوائية ، ويستخدم التمرير النهائي الأصفار ، كما طلبنا. يقوم بعد ذلك بإزالة الملف والكتابة فوق بعض البيانات الوصفية الموجودة في inode

أجاد صنع أربعة تمريرات

تحديد عدد بطاقات الكتابة الفوقية

يمكننا أن نطلب shred لاستخدام عدد أكبر أو أقل من مرات الكتابة الفوقية باستخدام shred (عدد) الخيار. shred سيستخدم دائمًا تمريرة واحدة على الأقل. الرقم الذي نقدمه هنا هو رقم إضافي التمريرات التي نطلبها shred كي يؤدي. إذن shred سنقوم دائمًا بتمريرة واحدة أكثر من الرقم الذي نطلبه. للحصول على ثلاث تمريرات في المجموع ، نطلب تمريرتين إضافيتين:

*

كما هو متوقع ، ? يقوم بثلاث تمريرات.

من الواضح أن عدد التمريرات الأقل - عدد أقل من عمليات التقطيع إذا أردت - أسرع. لكن هل هي أقل أمانًا؟ من المثير للاهتمام أن ثلاث تمريرات ربما تكون أكثر من كافية.

ذات صلة: ما عليك سوى مسح القرص مرة واحدة لمسحه بأمان

تمزيق ملفات متعددة

يمكن استخدام أحرف البدل مع shred لتحديد مجموعات الملفات المراد مسحها. ال shred يمثل أحرفًا متعددة ، و shred يمثل حرف واحد. سيؤدي هذا الأمر إلى حذف جميع ملفات Produce_Notes المتبقية في دليل العمل الحالي.

rm

تتم معالجة الملفات المتبقية بواسطة shred بالمقابل.

secure-delete لا يحتوي على خيار تكراري ، لذلك لا يمكن استخدامه لمحو أشجار الدليل من الدلائل المتداخلة.

مشكلة حذف الملفات بأمان

جيدة مثل secure-delete هو ، هناك مشكلة. تبذل أنظمة ملفات دفتر اليومية الحديثة مثل ext3 و ext4 جهودًا هائلة لضمان عدم تعرضها للكسر أو التلف أو فقدان البيانات. وباستخدام أنظمة ملفات دفتر اليومية ، ليس هناك ما يضمن أن عملية الاستبدال تتم فعليًا على مساحة محرك الأقراص الثابتة التي يستخدمها الملف المحذوف.

إذا كان كل ما تريده هو أن تطمئن إلى أن الملفات قد تم حذفها بشكل شامل أكثر من secure-delete فعل ذلك ، ثم apt-get ربما يكون بخير. لكن لا تخطئ في الاعتقاد بأن البيانات قد ضاعت بالتأكيد ولا يمكن استردادها تمامًا. هذا محتمل جدا ليس القضية.

ذات صلة: لماذا لا يمكنك 'حذف ملف بشكل آمن' ، وماذا تفعل بدلاً من ذلك

جناح الحذف الآمن

ال secure-delete أوامر محاولة التغلب على أفضل جهود تسجيل أنظمة الملفات والنجاح في الكتابة فوق الملف بشكل آمن. لكن نفس التحذيرات تنطبق بالضبط. لا يوجد حتى الآن أي ضمان على أن الكتابة الفوقية تتم فعليًا فوق منطقة محرك الأقراص الثابتة التي تحتاجها لإلغاء الملف محل الاهتمام. هناك فرصة أكبر ، لكن لا يوجد ضمان.

الإعلانات

ال srm تستخدم الأوامر التسلسل التالي من عمليات الكتابة فوق والإجراءات:

  • 1 الكتابة فوق 0xFF بقيمة بايت.
  • 5 بالكتابة ببيانات عشوائية.
  • تم الكتابة رقم 27 بقيم خاصة حددها بيتر جوتمان.
  • 5 تم الكتابة فوق البيانات العشوائية.
  • أعد تسمية الملف إلى قيمة عشوائية.
  • اقتطع الملف.

إذا كان كل هذا يبدو مبالغًا فيه بالنسبة لك ، فأنت في صحبة جيدة. كما يبدو الأمر مفرطًا بالنسبة لبيتر جوتمان ، الأستاذ بجامعة أوكلاند. نشر ورقة بحثية عام 1996 مناقشة هذه التقنيات ، والتي نشأت منها الأسطورة الحضرية القائلة بأنك بحاجة إلى استخدام جميع التقنيات التي تمت مناقشتها في تلك الورقة مرة واحدة.

حاول بيتر جوتمان منذ ذلك الحين إعادة الجني إلى الزجاجة قائلاً إن التنظيف الجيد بالبيانات العشوائية سيفي بالغرض كما هو متوقع.

لكننا ما وصلنا إليه ، وهذه هي مجموعة التقنيات المستخدمة من قبل rm أوامر. لكن أولاً ، نحتاج إلى تثبيتها.

تثبيت الحذف الآمن

استخدم sfill لتثبيت هذه الحزمة على نظامك إذا كنت تستخدم Ubuntu أو توزيعة أخرى قائمة على Debian. في توزيعات Linux الأخرى ، استخدم أداة إدارة الحزم لتوزيع Linux بدلاً من ذلك.

sswap

هناك أربعة أوامر مضمنة في sdmem حزمة.

  1. srm هو rm آمن ، يستخدم لمحو الملفات عن طريق حذفها والكتابة فوق مساحة القرص الصلب الخاصة بها.
  2. -z هي أداة لاستبدال كل المساحة الخالية على القرص الصلب الخاص بك.
  3. smr يُستخدم للكتابة فوق مساحة المبادلة وتنظيفها.
  4. -v يستخدم لتطهير ذاكرة الوصول العشوائي الخاصة بك.

أمر srm

يمكنك استخدام srm الأمر بنفس القدر الذي تستخدمه في srm يأمر. لإزالة ملف واحد ، استخدم الأمر التالي. ال -l (الأصفار) يتسبب الخيار srm لاستخدام الأصفار للمسح النهائي بدلاً من البيانات العشوائية. ال srm (مطوّل) يجعل الخيار srm أبلغنا بالتقدم المحرز.

-r

الإعلانات

أول شيء ستلاحظه هو srm بطيء. إنه يوفر بعض الملاحظات المرئية أثناء عمله ، ولكنه يبعث على الارتياح عندما ترى موجه الأوامر مرة أخرى.

يمكنك استخدام srm (تقليل الأمان) لتقليل عدد التمريرات إلى اثنين ، مما يسرع الأمور بشكل كبير.

sfill

sfill يخبرنا أن هذا - في رأيه - أقل أمانًا ، لكنه لا يزال يحذف الملف ويكتب فوقه.

يمكنك استخدام الخيار -l (تقليل الأمان) مرتين لتقليل عدد التمريرات إلى واحدة.

sfill

استخدام srm مع ملفات متعددة

يمكننا أيضًا استخدام أحرف البدل مع -l. سيؤدي هذا الأمر إلى محو ومسح الأجزاء المتبقية من الفصل الأول:

-v

تتم معالجة الملفات بواسطة -z بالمقابل.

حذف الدلائل ومحتوياتها باستخدام srm

ال sfill (العودية) سيجعل الخيار -l حذف كافة الدلائل الفرعية ومحتوياتها. يمكنك تمرير المسار إلى الدليل الأول إلى sswap.

الإعلانات

في هذا المثال ، نحذف كل شيء في الدليل الحالي ، ~ / research. هذا يعني أنه تمت إزالة جميع الملفات الموجودة في البحث ~ / وجميع الأدلة الفرعية بأمان.

blkid

يبدأ srm في معالجة الدلائل والملفات.

في النهاية يعود بك إلى موجه الأوامر. على جهاز الاختبار الذي تم البحث فيه عن هذه المقالة ، استغرق هذا حوالي ساعة واحدة لإزالة حوالي 200 ملف موزعة بين الدليل الحالي وثلاثة أدلة متداخلة.

تمت إزالة كافة الملفات والأدلة الفرعية بالشكل المتوقع.

أمر sfill

ماذا لو كنت قلقًا بشأن ملف قمت بحذفه باستخدام rm ، كيف يمكنك تجاوز تلك الأرضية القديمة والتأكد من الكتابة فوقها؟ ال /dev/sda5 سيحل الأمر محل كل المساحة الخالية على محرك الأقراص الثابتة.

أثناء قيامه بذلك ، ستلاحظ أن لديك مساحة خالية أقل وأقل على محرك الأقراص الثابتة ، حتى النقطة التي لا توجد فيها مساحة خالية على الإطلاق. متى swapoff يكتمل ، فإنه يحرر كل المساحة الخالية إليك. إذا كنت تدير نظامًا متعدد المستخدمين ، فسيكون ذلك معطلاً للغاية ، لذا فهذه مهمة صيانة يجب إجراؤها خارج ساعات العمل.

الإعلانات

حتى على جهاز كمبيوتر مستخدم واحد ، فإن فقدان مساحة القرص الصلب يعني أنه غير قابل للاستخدام مرة واحدة sswap استخدم معظم المساحة. هذا شيء ستبدأ ثم تبتعد عنه.

لمحاولة تسريع الأمور قليلاً ، يمكنك استخدام /dev/sda5 (تقليل الأمان) الخيار. الخيارات الأخرى هي sswap (مطول) و -v (الأصفار) الخيارات التي رأيناها سابقًا. هنا ، نسأل -ll للكتابة بشكل آمن فوق كل المساحة الخالية في الدليل / home.

sswap

خذ راحتك. على جهاز الكمبيوتر التجريبي - الذي يحتوي على محرك أقراص ثابت بسعة 10 غيغابايت فقط - بدأ هذا في منتصف بعد الظهر ، واكتمل في وقت ما بين عشية وضحاها.

سوف يبتعد لساعات. وهذا هو مع ال sfill (تقليل الأمان) الخيار. ولكن في النهاية ، ستتم إعادتك إلى موجه الأوامر.

أمر sswap

ال swapon يقوم الأمر بالكتابة فوق التخزين في قسم المبادلة الخاص بك. أول شيء يتعين علينا القيام به هو تحديد قسم المبادلة الخاص بك. يمكننا القيام بذلك باستخدام secure-delete الأمر ، الذي يسرد أجهزة الحظر.

-v

تحتاج إلى تحديد موقع كلمة swap ، وتدوين جهاز الحظر المتصل به.

الإعلانات

يمكننا أن نرى أن قسم المبادلة متصل بـ -ll.

نحتاج إلى إيقاف تشغيل عمليات الكتابة على القرص إلى قسم المبادلة طوال مدة الكتابة. سنستخدم sdmem يأمر:

tree -d

يمكننا الآن استخدام

shred -uvz Preliminary_Notes.txt_01.txt
يأمر.

سوف نستخدم

shred -uvz -n 2 Preliminary_Notes.txt_02.txt
كجزء من سطر الأوامر لـ
shred -uvz -n 2 Preliminary_Notes_*.*
يأمر. سنستخدم أيضًا
sudo apt-get install secure-delete
خيار (مطوّل) و
srm -vz Chapter_One_01.txt
(تقليل الأمان) الخيارات التي استخدمناها سابقًا.

srm -lvz Chapter_One_02.txt

srm -llvz Chapter_One_03.txt
يبدأ العمل في طريقه من خلال قسم المبادلة الخاص بك ، والكتابة فوق كل ما هو موجود فيه. لن يستغرق الأمر ما يصل إلى
srm -vc Chapter_One_0?.txt
. انها مجرد شعور مثل ذلك.

بمجرد اكتماله ، نحتاج إلى إعادة قسم المبادلة كمساحة مبادلة نشطة. نقوم بهذا باستخدام

srm -vz *
يأمر:

sudo sfill -lvz /home

أمر sdmem

ال

sudo blkid
تحتوي الحزمة أيضًا على أداة لمسح شرائح ذاكرة الوصول العشوائي (RAM) في جهاز الكمبيوتر الخاص بك.

الإعلانات

ل هجوم التمهيد البارد يتطلب الوصول الفعلي إلى جهاز الكمبيوتر الخاص بك بعد وقت قصير جدًا من إيقاف تشغيله. من المحتمل أن يسمح هذا النوع من الهجوم باستعادة البيانات من رقائق ذاكرة الوصول العشوائي الخاصة بك.

إذا كنت تعتقد أنك بحاجة إلى حماية نفسك من هذا النوع من الهجوم - وسيكون الأمر شاقًا بالنسبة لمعظم الناس للاعتقاد بأنهم بحاجة إلى ذلك - فيمكنك مسح ذاكرة الوصول العشوائي الخاصة بك قبل إيقاف تشغيل جهاز الكمبيوتر الخاص بك. سنستخدم

sudo swapoff /dev/sda5
(مطول) و
sudo sswap -llv /dev/sda5
(تقليل الأمان) الخيارات مرة أخرى.

sudo swapon /dev/sda5

ستمتلئ نافذة المحطة بعلامات نجمية للإشارة إلى أن

sudo sdmem -vll
تشق طريقها من خلال ذاكرة الوصول العشوائي الخاصة بك.

الخيار السهل: فقط تشفير محرك الأقراص الخاص بك

بدلاً من حذف الملفات بشكل آمن ، لماذا لا تقوم بتأمين محرك الأقراص الثابتة أو المجلد الرئيسي باستخدام التشفير؟

إذا قمت بذلك ، فلن يتمكن أحد من الوصول إلى أي شيء ، سواء كان ملفًا مباشرًا أو ملفًا محذوفًا. ولا يتعين عليك توخي الحذر وتذكر مسح الملفات الحساسة بأمان لأن جميع ملفاتك محمية بالفعل.

تسأل معظم توزيعات Linux عما إذا كنت تريد استخدام التشفير في وقت التثبيت. إن قول نعم سيوفر الكثير من التوتر في المستقبل. لا يجوز لك التعامل مع المعلومات السرية أو الحساسة. ولكن إذا كنت تعتقد أنك قد تعطي الكمبيوتر أو تبيعه إلى شخص آخر عند الانتهاء منه ، فإن التشفير سوف يبسط ذلك أيضًا.

أوامر لينكس
الملفات قطران · الكهروضوئية · قط · تاك · chmod · سيطرة · فرق · سيد · مع · رجل · Pushd · popd · fsck · اختبار · فيما يليها · فد · باندوك · قرص مضغوط · المسار $ · awk · انضم · جي ق · يطوى · فريد · جورنال سي تي ال · ذيل · حالة · ls · fstab · رما - طرد - قذف · أقل · chgrp · تشاون · مراجعة · نظرة · سلاسل · نوع · إعادة تسمية · أزيز · بفك · تتعدد · أومونت · تثبيت · fdisk · مكفس · جمهورية مقدونيا · rmdir · رسينك · مدافع · gpg · نحن · نانو · مكدير · ال · ln · تصحيح · يتحول · rclone · أجاد · SRM
العمليات الاسم المستعار · شاشة · أعلى · لطيف · رائع · تقدم · دعامة · النظام · تمكس · chsh · التاريخ · في · حزمة · مجانا · التي · dmesg · usermod · ملاحظة · الجذور · xargs · tty · الخنصر · lsof · vmstat · نفذ الوقت · حائط · نعم · قتل · نايم · سودو · له · زمن · المجموعة · usermod · مجموعات · lshw · اغلق · اعادة التشغيل · توقف · انقطاع التيار الكهربائي · passwd · lscpu · كرونتاب · تاريخ · bg · fg
الشبكات netstat · بينغ · مسار التتبع · IP · ss · الذي هو · fail2ban · bmon · أنت · اصبع اليد · nmap · بروتوكول نقل الملفات · لفة · wget · من الذى · من أنا · في · iptables · ssh-كجن · ufw

ذات صلة: أفضل أجهزة كمبيوتر Linux المحمولة للمطورين والمتحمسين

اقرأ التالي صورة الملف الشخصي لـ Dave McKay ديف مكاي
استخدم Dave McKay أجهزة الكمبيوتر لأول مرة عندما كان الشريط الورقي المثقوب رائجًا ، وهو يقوم بالبرمجة منذ ذلك الحين. بعد أكثر من 30 عامًا في صناعة تكنولوجيا المعلومات ، أصبح الآن صحفيًا متخصصًا في مجال التكنولوجيا. خلال مسيرته المهنية ، عمل كمبرمج مستقل ، ومدير فريق تطوير برمجيات دولي ، ومدير مشروع خدمات تكنولوجيا المعلومات ، ومؤخراً كمسؤول حماية البيانات. تم نشر كتاباته على موقع howtogeek.com و cloudavvyit.com و itenterpriser.com و opensource.com. ديف هو مبشر لينكس ومدافع مفتوح المصدر.
اقرأ السيرة الذاتية الكاملة

مقالات مثيرة للاهتمام