আমি কীভাবে কোনও ফাইলের মধ্যে একটি এনক্রিপ্ট করা ফাইল সিস্টেম তৈরি করব?


16

ফ্লস স্টাফ ব্লগে আমি এই আকর্ষণীয় টিউটোরিয়ালটি পেয়েছি ।

এটি ব্যাখ্যা করে যে কীভাবে একটি খালি ফাইল তৈরি করা যায়, এটিকে ext4 রূপে ফর্ম্যাট করা যায় এবং এটি একটি ডিভাইস হিসাবে মাউন্ট করা যায়।

এটিকে এনক্রিপ্ট করা এক্সট 4 ফাইল সিস্টেম হিসাবে তৈরি করা যায় কিনা তা আমি জানতে চাই।

আমি ইতিমধ্যে তৈরি ফাইল সিস্টেমের ফর্ম্যাট করতে পলিম্পস্ট (সিস্টেম মেনুতে পাওয়া ডিস্ক ইউটিলিটি) ব্যবহার করার চেষ্টা করেছি কিন্তু এটি ফাইল সিস্টেমটি ব্যবহৃত হচ্ছে তা সনাক্ত করার কারণে এটি কাজ করে না।

যদি আমি ফাইল সিস্টেমটি আনমাউন্ট করার চেষ্টা করি তবে এটি কাজ করবে না কারণ এটি ডিভাইসটি সনাক্ত করে না (যেহেতু এটি হার্ডড্রাইভ বা ইউএসবি ড্রাইভের মতো আসল ডিভাইস নয়)।

সুতরাং আমার প্রশ্ন হ'ল, প্রথম থেকেই এনক্রিপ্ট করা হিসাবে ফাইল সিস্টেম তৈরি করার কোনও বিকল্প আছে? আমি এই আদেশগুলি ব্যবহার করেছি:

একটি ফাঁকা ফাইল 200Mb আকার তৈরি করুন:

dd if=/dev/zero of=/path/to/file bs=1M count=200

এটি এক্সট 4 করুন:

mkfs -t ext4 file

এটি আমার বাড়ির ভিতরে একটি ফোল্ডারে মাউন্ট করুন:

sudo mount -o loop file /path/to/mount_point

mkfsকমান্ড একটি ডিক্রিপশন পাসওয়ার্ড জিজ্ঞাসা করে একটি এনক্রিপ্টড ext4 ফাইল সিস্টেম তৈরি করতে পারে এমন কোনও উপায় আছে কি ?

আমি ড্রপবক্সের মধ্যে ফাইলগুলি এনক্রিপ্ট করার উপায় হিসাবে এটি ব্যবহার করার পরিকল্পনা করছি।



যদি ফাইলগুলি ব্যাক আপ করার সময় আপনি যথাযথ এনক্রিপশন চান, আপনি তার পরিবর্তে স্পাইডারওক বিবেচনা করতে পারেন। আরও সুরক্ষা এবং কম ঝামেলা।
ল্যান্ড্রোনি

উত্তর:


8

আপনি cryptmountফাইল সিস্টেমে এনক্রিপ্ট করতে ব্যবহার করতে পারেন , যদি ফাইল সিস্টেমে কোনও ফাইল থাকে।

cryptmountম্যানুয়াল পৃষ্ঠাটি একটি খুবই সহজ এবং বিস্তারিত ব্যাখ্যা প্রতিবেদন আমি (সংশোধিত) আছে এখানে, এবং এটি স্পষ্টভাবে একটি ফাইল ভিত্তিক ফাইলসিস্টেম উল্লেখ না।

  • পদক্ষেপ 1 নীচে
    একটি এন্ট্রি যুক্ত করুন /etc/cryptmount/cmtab:

    mycrypt {
        dev=/media/data/mycrypt dir=/home/enzotib/mycrypt
        fstype=ext4 mountoptions=defaults cipher=twofish
        keyfile=/etc/cryptmount/mycrypt.key
        keyformat=builtin
    }
    

    /media/data/mycryptসমর্থন ফাইলটি কোথায় তৈরি হয়েছে ddএবং /home/enzotib/mycryptএটি পছন্দসই মাউন্টপয়েন্ট।

  • পদক্ষেপ 2
    একটি গোপন ডিক্রিপশন কী তৈরি করুন

    sudo cryptmount --generate-key 32 mycrypt
    
  • পদক্ষেপ 3
    নিম্নলিখিত কমান্ড প্রয়োগ করুন

    sudo cryptmount --prepare mycrypt
    

    এরপরে কীটি সেট আপ করার সময় আপনাকে পাসওয়ার্ডটির জন্য জিজ্ঞাসা করা হবে

  • পদক্ষেপ 4
    ফাইল সিস্টেমটি তৈরি করুন

    sudo mkfs.ext4 /dev/mapper/mycrypt
    
  • পদক্ষেপ 5
    সম্পাদন

    sudo cryptmount --release mycrypt
    
  • পদক্ষেপ 6
    এখন ফাইল সিস্টেমটি মাউন্ট করুন

    mkdir /home/enzotib/mycrypt
    cryptmount -m mycrypt
    

    তারপরে এটি আনমাউন্ট করুন

    cryptmount -u mycrypt
    

এছাড়াও, যদি আপনাকে কোনও ডিরেক্টরি ক্রিপ্ট encfsকরতে হয় তবে তা বিবেচনার জন্য উপযুক্ত হতে পারে।


আপনার উত্তরের জন্য ধন্যবাদ, আমি ফাইল সিস্টেম তৈরি করেছি, এনক্রিপ্ট করেছি এবং ড্রপবক্সে আপলোড করেছি। পরে আমি অন্য পিসিতে সেই ফাইলটি মাউন্ট করার চেষ্টা করব। কেবল একটি জিনিস, এটি কি সুডো ছাড়া করা যায়? যদি আমি ফাইল এবং ফাইল সিস্টেমটি আমার বাড়ির অভ্যন্তরে মাউন্ট করতে চাই (ইউএসবি বা হার্ডরিভের মতো মিডিয়াতে নেই) কমান্ডগুলি সুডো ছাড়া একই রকম হয় বা ক্রিপটমাউন্টের সর্বদা রুট সুবিধাগুলির প্রয়োজন হয়?
অ্যানিমলেটডেস্কিয়া

1
@ পিতামহু: মনে হচ্ছে কমান্ডটি কেবলমাত্র ফাইল সিস্টেম সেটআপে মূল সুবিধার দরকার, তবে চিত্র-ফাইল এবং মাউন্টপয়েন্টটি ব্যবহারকারীর মালিকানাধীন মাউন্ট করা / আনমাউন্ট করা একটি ব্যবহারকারী ক্রিয়া। অন্য কোনও মেশিনে একই চিত্র-ফাইল সেটআপ করতে, আমি মনে করি আপনার প্রতিলিপিটি অনুলিপি করা /etc/cryptmount/mycrypt.keyএবং এড়িয়ে যাওয়া উচিত --generate-key
এনজোটিব

আমি এই পদক্ষেপটি শেষ ধাপে পেয়েছি: do sudo cryptmount -m encriptat "encriptat" টার্গেটের জন্য পাসওয়ার্ড লিখুন: e2fsck 1.41.14 (22-ডিসেম্বর -2010) fsck.ext4: সার্ভারব্লোক নেই, সুনির্দিষ্ট দিন। .. fsck.ext4: সুপার-ব্লকের খারাপ যাদু নম্বর ইন্টেন্টার ওব্রির / ডেভ / ম্যাপার / এনক্রিপ্ট
অ্যানিমলেটডেস্কিয়া

1
@ পিতামহ: আপনি পদক্ষেপ 4 হিসাবে প্রদর্শিত ফাইল সিস্টেমটি তৈরি করেছেন? আপনি কি "এনক্রিপ্যাট" দিয়ে "মাইক্রিপ্ট" নামের বিকল্পের সাথে সামঞ্জস্য ছিলেন?
এনজোটিব

দুঃখিত, ত্রুটিটি কারণ ছিল (sudo mkfs.ext4 / dev / mapper / mycrypt) এর পরিবর্তে আমি টাইপ করছিলাম (sudo mkfs.ext4 mycript)। আমি ডিভাইসে নয়, সরাসরি ফাইলটিতে পোজ দিচ্ছিলাম। এখন এটি নিখুঁত কাজ করে। এবং এই বার্তার ফর্ম্যাটটির জন্য দুঃখিত, আমি কেন রেখাগুলি পৃথক করতে পারছি না তা জানেন না (যদি আমি এন্টার টিপাই তবে এটি একটি নতুন লাইন তৈরির পরিবর্তে মন্তব্য প্রকাশ করে, সম্ভবত কোনও ফায়ারফক্স গ্লিট ...) চিয়ার্স! সম্পাদনা: এখন আমি আপনার উত্তরটি পড়েছি, এনক্রিপ্ট নামটি কোনও সমস্যা ছিল না (কেবলমাত্র আপনার পোস্টটি অভিযোজিত করেছে এবং ফাইলগুলিকে যথাযথ নামগুলি দিয়েছিল তবে এটি সমস্ত সামঞ্জস্যপূর্ণ)। এথিথিং এখন ঠিকঠাক কাজ করছে, আবারও ধন্যবাদ :)
অ্যানিমলেটডেস্কিয়া

7

ভিতরে ফাইল সিস্টেমের সাথে একটি এনক্রিপ্ট করা ফাইল তৈরি করতে পরবর্তী পদক্ষেপগুলি অনুসরণ করুন:

1. প্রদত্ত আকারের ফাইল তৈরির দ্রুত উপায় হ'ল:

fallocate -l 128M /path/to/file

2. dm-crypt সরঞ্জাম ব্যবহার করে ফাইলের মধ্যে LUKS (লিনাক্স ইউনিফাইড কী সেটআপ) পার্টিশন তৈরি করুন :

cryptsetup -y luksFormat /path/to/file

আপনি যে ফাইলটি এনক্রিপ্ট করা ধারক তা পরীক্ষা করতে পারেন:

/path/to/file: LUKS encrypted file, ver 1 [aes, xts-plain64, sha1] UUID: 7e2af5a1-3fab-43ea-a073-3b9cc6073f00

৩. এনক্রিপ্ট করা ধারকটি খুলুন:

cryptsetup luksOpen /path/to/file data

dataডিভাইস ম্যাপার ভলিউমের নাম। আপনি অন্য নাম চয়ন করতে পারেন।

এটি LUKS ডিভাইসটি খুলবে এবং এটি আমাদের সরবরাহ করে এমন একটি নামকে ম্যাপ করে, আমাদের ক্ষেত্রে এটি ফাইল তৈরি করে /dev/mapper/data

৪.ext4 এই ডিভাইসে ফাইল সিস্টেম তৈরি করুন :

mkfs.ext4 /dev/mapper/data

5. তারপরে মাউন্ট পয়েন্ট তৈরি করুন:

mkdir /path/to/mount

6. এবং ডিভাইস সেখানে মাউন্ট করুন:

mount /dev/mapper/data /path/to/mount

7. আনমাউন্ট ফাইলসিস্টেম এবং বন্ধ LUKS সম্পর্কিত ডিভাইসে:

umount /path/to/mount
cryptsetup luksClose data

এখন আপনি ভিতরে ext4 ফাইল সিস্টেমের সাথে LUKS ধারক এনক্রিপ্ট করেছেন। আপনি যখন এটি ব্যবহার করতে চান তখন কেবল 3 এবং 6 ধাপগুলি পুনরাবৃত্তি করুন you

এই নিবন্ধটি আমার জন্য খুব সহায়ক ছিল।

এছাড়াও একদিন আপনার ধারক স্থান শেষ হয়ে যাবে। ধরুন এনক্রিপ্ট করা কনটেইনার ফাইলের আকার 128 এমবি এবং আমরা এর আকার 512 এমবি বাড়াতে চাই। এর ক্ষমতা বাড়ানোর জন্য এই পদক্ষেপগুলি অনুসরণ করুন:

1. LUKS ডিভাইসটিকে আনমাউন্ট এবং বন্ধ করুন (উপরের তালিকার 7 ধাপ দেখুন)।

২. কনটেইনার ফাইলের আকার বৃদ্ধি করুন:

 dd if=/dev/zero of=/path/to/file bs=384M count=1 oflag=append conv=notrunc

৩. LUKS ডিভাইসটি খুলুন।

cryptsetup luksOpen /path/to/file data

4. ধারক ফাইলের আকারের সাথে মিলে LUKS ডিভাইসটিকে পুনরায় আকার দিন। ম্যান পৃষ্ঠা থেকে:

যদি - আকার (সেক্টরগুলিতে) নির্দিষ্ট না করা হয় তবে অন্তর্নিহিত ব্লক ডিভাইসের আকার ব্যবহৃত হবে।

সুতরাং আপনি ঠিক করতে পারেন:

cryptsetup resize data

5. তারপরে ext4 ফাইল সিস্টেমের আকার পরিবর্তন করুন:

e2fsck -f /dev/mapper/data
resize2fs /dev/mapper/data

6. এখন আপনি ফাইল সিস্টেম ফিরে মাউন্ট করতে পারেন:

mount /dev/mapper/data /path/to/mount

1
আমি মনে করি এই উত্তরটি সেরা এবং সর্বশেষতম উত্তর। এটি সঠিক উত্তর হিসাবে নির্বাচন করা উচিত!
yurtesen

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.