پوشه‌ی خانه یا Home در لینوکس یکی از اصلی‌ترین مسیرهای این سیستم عامل است که پروفایل مربوط به اکثر برنامه‌ها در آن ذخیره می‌شود.

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

اگر می‌خواهید به روشی ساده و راحت این پوشه را با EcryptFS رمزگذاری کنید، در ادامه‌ی مطلب با سیاره‌ی آی‌تی همراه باشید تا روش انجام این کار را به شما نشان دهیم.

نصب نرم‌افزار رمزگذاری EcryptFS

قبل از این که کار رمزگذاری را شروع کنید، ابتدا باید ابزار رمزگذاری را نصب نمایید. ابزاری که ما در این مطلب قصد معرفی آن را داریم بسیار محبوب است و تقریباً بر روی همه‌ی توزیع‌های لینوکسی کار می‌کند. برای استفاده از این برنامه باید از اوبونتو، دبیان، آرچ لینوکس، فدورا یا اوپن‌سوزه استفاده کنید یا در سایر توزیع‌ها با کامپایل کردن کد منبع نرم‌افزار آن را روی سیستم نصب نمایید.

اوبونتو

sudo apt install ecryptfs-utils

دبیان

sudo apt-get install ecryptfs-utils

آرچ لینوکس

sudo pacman -S  ecryptfs-utils

فدورا

sudo dnf install ecryptfs-utils

اوپن‌سوزه

sudo zypper install  ecryptfs-utils

نصب کردن EcryptFS در سایر توزیع‌های لینوکس

اگر نمی‌توانید بسته‌ی قابل نصب EcryptFS را برای توزیع لینوکس خودتان پیدا کنید، باید کد منبع آن را دریافت کنید:

و سپس نرم‌افزار را به صورت دستی نصب کنید. اگر در کامپایل کردن برنامه مشکل دارید، به صفحه‌ی مستندات رسمی EcryptFS مراجعه نمایید.

آموزش رمزگذاری پوشه‌ی Home لینوکس

در طول فرآیند رمزگذاری، باید یک کاربر موقت بسازیم. این کاربر دائمی نیست و در پایان کار می‌توانیم آن را به طور کامل حذف کنیم. ایجاد کاربر موقتی که دسترسی Super-user داشته باشد بسیار مهم است، چون اگر با حساب کاربری خودتان داخل سیستم باشید، نمی‌توانید این پوشه را رمزگذاری کنید.

ایجاد حساب کاربری جدید

برای ایجاد کاربر جدید ترمینال را باز کرده و وارد حساب کاربری روت شوید.

Su

یا از دستور زیر استفاده کنید:

Sudo -s

بعد از این که شل به روت وصل شد، با دستور useradd حساب کاربری موقت را بسازید. حتماً پارامتر -M را اضافه کنید تا سیستم به طور خودکار برای این کاربر یک پوشه‌ی Home جدید نسازد.

useradd -M encrypt-admin

فرمان useradd کاربر جدید را می‌سازد، ولی برای آن رمز عبور مشخص نمی‌کند. برای تعیین رمز عبور از دستور passwd استفاده کنید.

passwd encrypt-admin

حالا حساب کاربری encrypt-admin آماده است، ولی این حساب همچنان قادر به اجرای دستورهای روت نیست. برای حل این مشکل، باید این کاربر را به فایل sudoers اضافه کنیم. پس با دستور visudo فایل پیکربندی sudo را ویرایش کنید.

EDITOR=nano visudo

در داخل ویرایشگر Nano، به سمت پایین اسکرول کرده و به دنبال # User privilege specification بگردید. در این قسمت عبارت root ALL=(ALL:ALL) ALL قابل مشاهده است. در زیر این خط Enter بزنید و عبارت زیر را تایپ کنید:

encrypt-admin ALL=(ALL:ALL) ALL

سپس با فشار دادن دکمه‌ی Ctrl + O و Ctrl + X فایل را ذخیره کرده و آن را ببندید.

شروع فرآیند رمزگذاری

برای شروع فرآیند رمزگذاری، از حساب کاربری فعلی خود خارج شوید. در صفحه‌ی ورود دکمه‌های Alt + Ctrl + F1 را فشار دهید. اگر اتفاقی نیفتاد، به جای F1 دکمه‌های F2 تا F6 را امتحان کنید.

سپس در اعلان TTY عبارت encrypt-admin را بنوسید و رمز عبور آن را وارد کنید. در مرحله‌ی بعد با استفاده از EcryptFS، فرآیند رمزگذاری را شروع نمایید.

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

sudo ecryptfs-migrate-home –u yourusername

دستور بالا حساب کاربری شما را به یک پوشه‌ی رمزگذاری شده منتقل می‌کند. وقتی کار تمام شد می‌توانید از حساب کاربری موقتی خارج شده و وارد حساب کاربری خودتان شوید. برای انجام این کار در TTY از دستور exit استفاده کنید.

با وارد کردن دستور exit بلافاصله به صفحه‌ی ورود سیستم بر می‌گردید. از آن‌جا دکمه‌های Alt + F2 الی F7 را فشار دهید تا وارد حالت گرافیکی شوید.

حذف حساب کاربری

کار EcryptFS تمام شد، بنابراین اکنون می‌توانید کاربر encrypt-admin را حذف کنید. برای انجام این کار ابتدا این کاربر را از فایل sudoers پاک کنید. پس یک پنجره‌ی ترمینال باز کرده و visudo را اصلاح نمایید.

sudo -s

EDITOR=nano visudo

در فایل sudoers به سمت پایین اسکرول کرده و خطی که قبلاً اضافه کرده بودید را حذف کنید.

encrypt-admin ALL=(ALL:ALL) ALL

سپس با همان شیوه‌ای که قبلاً گفته شده از ویرایشگر متن Nano خارج شوید.

اکنون encrypt-admin دیگر هیچ دسترسی و توانایی خاصی برای ایجاد تغییر در سیستم ندارد، بنابراین می‌توانید آن را به همین صورت رها کنید. اما اگر دوست ندارید چیز اضافه‌ای در کامپیوترتان وجود داشته باشد، می‌توانید آن را به طور کامل حذف کنید. برای انجام این کار به ترمینال بروید و از دستور userdel استفاده نمایید.

sudo userdel encrypt-admin

افزودن رمزعبور رمزگذاری

حالا تنها کاری که باید انجام دهید این است که برای EcryptFS یک رمزعبور جدید تعیین کنید. پس ترمینال را باز کرده و رمز مورد نظر خود را مشخص نمایید. لطفاً به خاطر داشته باشید که رمزگذاری بدون داشتن یک رمزعبور ایمن بی‌فایده است.

ecryptfs-add-passphrase

با انجام این کار پوشه‌ی Home به طور کامل رمزگذاری می‌شود. برای اعمال تغییرات کامپیوتر را ری‌استارت کنید. وقتی سیستم بالا بیاید EcryptFS رمزعبور جدید را می‌پرسد تا به شما اجازه ورود بدهد.