بیایید فرض کنیم شما کاربر جدی لپتاپ هستید و هر جا میروید از آن استفاده میکنید. همچنین از ssh نیز زیاد استفاده میکنید و برای خود کلید ssh هم ساختهاید. همچنین برای راحتی خود، بدون رمز عبور یک کلید خصوصی ساختهاید (هر چند ایده خوبی نیست). برای دسترسی سادهتر، کلید ssh خود را در سرورهای عمومی قرار دادهاید. مشکل این روش این است که اگر کسی پشت لپتاپ شما بنشیند، فورا میتواند به تمام سرویسهایی که با کلید ssh شما کار میکند، دسترسی پیدا کند. در این مطلب، این دایرکتوری را رمزگذاری کرده و از وقوع چنین مشکلاتی پیشگیری میکنیم.
نصب
برای نصب این سیستمفایل، اگر توزیع لینوکسی دستسازی نداشته باشید، میتوانید آن را در مخازن استاندارد لینوکس پیدا کنید.
برای نصب در اوبونتو یا دبیان از دستور زیر استفاده کنید:
$ sudo apt-get install encfs
برای نصب در فدورا، ردهت یا CentOS از دستور زیر استفاده کنید:
$ sudo yum install encfs
ایجاد دایرکتوری رمزگذاری شده
همان طور که قبلا شرح داده شد، میخواهیم دایرکتوریssh. را رمزگذاری کنیم. اما قبل از آن باید دایرکتوری رمزگذاری شده را ایجاد کنیم. برای این کار دستور زیر را بزنید:
$ encfs ~/encryptdir/ ~/decryptdir/
نکاتی در مورد اینکه چنین دایرکتوریهایی وجود ندارد، پرسیده خواهد شد که کافی است پاسخ yes را بدهیم. همچنین باید یک رمز عبور انتخاب کنیم. مطمئن باشید این رمز را فراموش نخواهید کرد؛ زیرا هیچ در پشتی (backdoor) برای دسترسی بهفایلها بدون رمز عبور وجود ندارد. حالا که دایرکتوری خود را رمزبندی کردهاید، هر چیزی که در decryptdir ~/قرار دهید، بهطور خودکار رمزگذاری شده و به encryptdir ~/منتقل خواهد شد.
$ ls ~/encryptdir
$ ls ~/decryptdir
$ touch ~/decryptdir/file
$ ls ~/decryptdir
file
$ ls ~/encryptdir
wZ8fQPHUR4mtUdI4Tx0RWIcJ
$ rm ~/decryptdir/file
استفاده از دایرکتوری رمزگذاری شده
در این مرحله میتوانیم دایرکتوریssh. خود را با دایرکتوریdecryptdir ~/لینک کنیم:
$ mv.ssh/ ~/decryptdir/
$ ln -s ~/decryptdir/.ssh/.ssh
از این بهبعد تا وقتی دایرکتوری encryptdir ~/ سوار شده باشد، دایرکتوری.ssh قابل دسترس خواهد بود. همچنین میتوان باقی دایرکتوریها را نیز به همین روش رمزگذاری کرد.
اگر بخواهیم دیگر از دایرکتوری رمزگذاری شده خود استفاده نکنیم، کافی است از دستور unmount استفاده کنیم:
$ fusermount -u ~/decryptdir