معرفی 7 ابزار محافظت از رمز عبور فایل‌ با رمزنگاری در لینوکس

رمزگذاری فرآیند انکودینگ (encoding) فایل‌ها به گونه‌ای است که فقط افراد مجاز می‌توانند به آنها دسترسی داشته باشند. بشر برای قرن‌ها از رمزگذاری استفاده می‌کند، حتی زمانی که کامپیوترها وجود نداشتند. در طول جنگ، آنها نوعی پیام را منتقل می‌کردند که فقط متحدان آنها قادر به درک آن بودند.



توزیع لینوکس چند ابزار encryption/decryption استاندارد را ارائه می‌کند که می‌توانند گاهی اوقات مفید باشند. در این مطلب، 7 ابزار از این قبیل را با مثالهای استاندارد مناسب پوشش داده‌ایم که به شما در رمزگذاری، رمزگشایی و محافظت از فایل‌های خود با رمز عبور کمک می‌کند.

  1. گنو پرایوسی گارد (GnuPG)

GnuPG مخفف GNU Privacy Guard است و اغلب GPG نامیده می‌شود که مجموعه‌ای از نرم افزارهای رمزنگاری است. نوشته شده توسط پروژه گنو به زبان برنامه نویسی C آخرین نسخه پایدار 2.0.27 است.
در اکثر توزیع‌های لینوکس امروزی، بسته gnupg به صورت پیش‌فرض ارائه می‌شود، اما در صورت نصب نبودن، می‌توانید آن را به کمک apt یا yum نصب نمائید.


sudo apt-get install gnupg
# yum install gnupg


در این مطلب یک فایل متنی (parsdev.txt) داریم که در home/blog/parsdev.txt/ قرار دارد، که در مثال‌های بعدی استفاده خواهد شد.

قبل از حرکت بیشتر، محتوای فایل متنی را بررسی کنید.

cat /home/blog/parsdev.txt 

حالا فایل parsdev.txt را با استفاده از gpg رمزگذاری کنید. به محض اجرای دستور gpg با گزینه c- (رمزگذاری فقط با رمز متقارن) یک فایل parsdev.txt.gpg ایجاد می‌کند. می‌توانید محتوای دایرکتوری را برای تایید لیست کنید.

gpg -c /home/blog/parsdev.txt 
$ ls -l /home/blog

 

توجه: برای رمزگذاری فایل داده شده، دوبار Paraphrase را وارد کنید. رمزگذاری فوق با الگوریتم رمزگذاری CAST5  به صورت خودکار انجام شد. می‌توانید الگوریتم دیگری را به صورت اختیاری مشخص کنید.

برای دیدن همه الگوریتم‌های رمزگذاری موجود، می‌توانید از version- استفاده نمائید.

gpg --version

 

 اگر می‌خواهید فایل رمزگذاری شده فوق را رمزگشایی کنید، می‌توانید از دستور زیر استفاده کنید، اما قبل از شروع رمزگشایی، ابتدا فایل اصلی یعنی parsdev.txt را حذف می‌کنیم و فایل رمزگذاری شده parsdev.txt.gpg  را دست نخورده می‌گذاریم.


rm /home/parsdev/parsdev.txt
gpg /home/blog/parsdev.txt.gpg

توجه: برای رمزگشایی در صورت درخواست، باید همان رمز عبوری را که در هنگام رمزگذاری داده‌اید، ارائه دهید.

  1. بیکریپت (bcrypt)

bcrypt  یک تابع مشتق کلید بر اساس رمز Blowfish است. رمز Blowfish توصیه نمی‌شود زیرا هرچه کامپیوتر‌ها سریع‌تر می‌شوند شما می‌توانید ضریب کار را زیادتر کنید و بدین‌ترتیب هش‌کردن کندتر خواهد شد.
اگر bcrypt را نصب نکرده‌اید، می‌توانید بسته مورد نیاز را انتخاب کنید یا آن را انتخاب کنید.


sudo apt-get install bcrypt
# yum install bcrypt


فایل را با استفاده از bcrypt رمزگذاری کنید.


bcrypt /home/parsdev/parsdev.txt

به محض اجرای دستور بالا، یک نام فایل جدید parsdev.txt.bfe ایجاد و فایل اصلی parsdev.txt جایگزین می‌شود.

فایل را با استفاده از bcrypt رمزگشایی کنید.

bcrypt parsdev.txt.bfe

توجه: bcrypt شکل امنی از رمزگذاری ندارد و از این رو پشتیبانی آن حداقل در Debian Jessie غیرفعال شده است.

  1. سی کریپت (ccrypt)

ccrypt  که به عنوان جایگزینی برای UNIX crypt طراحی شده است، ابزاری برای رمزگذاری و رمزگشایی فایل و استریم است. از سایفر Rijndael استفاده می‌کند.

اگر ccrypt را نصب نکرده‌اید، می‌توانید بسته به توزیع لینوکس خود آن را باapt یا yum نصب کنید.


sudo apt-get install ccrypt
# yum install ccrypt

با استفاده از ccrypt یک فایل را رمزگذاری کنید. از ccencrypt برای رمزگذاری و ccdecrypt برای رمزگشایی استفاده می‌کند. توجه به این نکته مهم است که در هنگام رمزگذاری، فایل اصلی (parsdev.txt) با (parsdev.txt.cpt) جایگزین می‌شود و در هنگام رمزگشایی فایل رمزگذاری شده (parsdev.txt.cpt) با فایل اصلی (parsdev.txt) جایگزین می شود.

یک فایل را رمزگذاری کنید.


ccencrypt /home/parsdev/parsdev.txt

رمزگشایی یک فایل


ccdencrypt /home/parsdev/parsdev.txt.cpt

همان رمز عبوری را که در هنگام رمزگذاری برای رمزگشایی داده اید، ارائه دهید.

 

  1. زیپ (zip)

یکی از معروف‌ترین فرمت‌های آرشیو است و به قدری معروف است که ما معمولا فایل های آرشیو را به عنوان فایل‌های زیپ در ارتباطات روزمره استفاده می‌کنیم. از الگوریتم سایفر pkzip stream استفاده می‌کند.

اگر zip را نصب نکرده اید، ممکن است بخواهید آن را apt یا yum کنید.


sudo apt-get install zip
# yum install zip

یک فایل فشرده رمزگذاری شده (چند فایل با هم گروه بندی شده) با استفاده از zip ایجاد کنید.


zip --password mypassword parsdev.zip parsdev.txt parsdev1.1txt parsdev2.txt

در این مثال mypassword رمز عبور مورد استفاده برای رمزگذاری آن است. یک آرشیو با نام parsdev.zip با فایل های فشرده parsdev.txt، parsdev1.txt  و parsdev2.txt ایجاد می‌شود.

فایل فشرده محافظت شده با رمز عبور را با استفاده از unzip رمزگشایی کنید.

unzip parsdev.zip


شما باید همان رمز عبوری را که در رمزگذاری ارائه کرده اید ارائه کنید.

vps یک ماشین مجازی کامل است که امکان دسترسی SSH طبق آموزش را به آن خواهید داشت.
خرید vps در پنج موقعیت جغرافیایی ایران، ترکیه، هلند، آلمان و آمریکا با قابلیت تحویل آنی در پارسدو فراهم است.

 

  1. اوپن اس‌اس‌ال (Openssl)

Openssl  یک جعبه ابزار رمزنگاری خط فرمان است که می‌تواند برای رمزگذاری پیام‌ها و همچنین فایل‌ها استفاده شود.

ممکن است بخواهید openssl را نصب کنید اگر قبلا نصب نشده باشد.


sudo apt-get install openssl
# yum install openssl

یک فایل را با استفاده از رمزگذاری openssl رمزگذاری کنید.


openssl enc -aes-256-cbc -in /home/parsdev/parsdev.txt -out /home/parsdev/parsdev.dat


توضیح هر یک از گزینه های استفاده شده در دستور بالا.

  1.  enc  - رمزگذاری
  2. -aes-256-cbc - الگوریتم مورد استفاده.
  3. -in - مسیر کامل فایلی که باید رمزگذاری شود.
  4. -out - مسیر کامل که در آن رمزگشایی خواهد شد.


رمزگشایی یک فایل با استفاده openssl


openssl enc -aes-256-cbc -d -in /home/parsdev/parsdev.dat > /home/parsdev/parsdev1.txt

  1. 7-زیپ (7-zip)

7-zip متن‌باز بسیار معروف به زبان c++ نوشته شده و قادر است اکثر فرمت‌های فایل‌های آرشیو شناخته شده را فشرده و از حالت فشرده خارج کند.
اگر 7-zip  را نصب نکرده اید، ممکن است بخواهید آن را apt یا yum کنید.


sudo apt-get install p7zip-full
# yum install p7zip-full

 

فایل ها را با استفاده از 7-zip به حالت zip فشرده کنید و آن را رمزگذاری کنید.


 7za a -tzip -p -mem=AES256 parsdev.zip parsdev.txt parsdev1.txt


فایل فشرده رمزگذاری شده را با استفاده از 7-zip از حالت فشرده خارج کنید.


 7za e parsdev.zip


توجه: هنگامی که از شما خواسته شد رمز عبور یکسانی را در طول فرآیند رمزگذاری و رمزگشایی ارائه دهید.

تمام ابزارهایی که تا به حال استفاده کرده‌ایم مبتنی بر دستور هستند. یک ابزار رمزگذاری مبتنی بر رابط کاربری گرافیکی ارائه شده توسط Nautilus وجود دارد که به شما کمک می کند تا فایل ها را با استفاده از یک رابط گرافیکی رمزگذاری/رمزگشایی کنید.

 

  1. ابزار رمزنگاری ناتیلوس (Nautilus Encryption Utility)

مراحل رمزگذاری فایل‌ها در رابط کاربری گرافیکی با استفاده از ابزار رمزنگاری Nautilus
رمزگذاری فایل ها در رابط کاربری گرافیکی

 

  1. روی فایلی که می خواهید رمزگذاری شود کلیک راست کنید.
  2. فرمت مورد نظر را برای فشرده سازی انتخاب کنید و مکان ذخیره را ارائه دهید. رمز عبور را نیز برای رمزگذاری وارد کنید.

ابزار رمزنگاری ناتیلوس

  1. به پیام توجه کنید - فایل فشرده رمزگذاری شده با موفقیت ایجاد شد.

رمزگشایی فایل در رابط کاربری گرافیکی

  1. فایل فشرده را در رابط کاربری گرافیکی باز کنید. به نماد LOCK-ICON در کنار فایل توجه کنید. یک رمز عبور از شما می خواهد، آن را وارد کنید.

محافظت از رمز عبور فایل‌ با رمزنگاری در لینوکس

  1. در صورت موفقیت آمیز بودن، فایل را برای شما باز می کند.