লিনাক্স: LUKS এবং একাধিক হার্ড ড্রাইভ


11

আমার কাছে একটি ডেবিয়ান লিনাক্স সিস্টেম (amd64) একটি RAID-1 সিস্টেম এনক্রিপ্টড ডিভাইসে (LUKS- এ LVM) ইনস্টল করা আছে এবং আপনার>> 4 ডিস্কের একটি RAID-6 থাকবে যেখানে আমি আমার ডেটা (LUKS এবং সম্ভবত LVM) রাখব।

আমি মনে করি মূল ধারণাটি হ'ল সিস্টেম এনক্রিপ্ট করা পার্টিশনটি আনলক করা (স্থানীয় বুটে বা ssh এর মাধ্যমে) এবং RAID-6 এনক্রিপ্ট করা পার্টিশনের জন্য / etc / crypttab- এ একটি কীফাইল সংরক্ষণ করা। এটি কি কোনও সুরক্ষা ঝুঁকি সৃষ্টি করে? আমি বোঝাতে চাইছি ... যদি কেউ স্থানীয়ভাবে / দূরবর্তীভাবে আমার সিস্টেমে প্রবেশ করতে পারে এবং এটি আমার কাছে মনে হয় যে সার্ভারগুলিতে প্রচুর পরিষেবা রয়েছে যা "রুটিং" (যেমন এসএসএইচ) এর ঝুঁকির মধ্যে রয়েছে। বিকল্প আছে (এসএসএইচ দিয়ে পার্টিশন আনলক করার পাশাপাশি যা সমস্যা হতে পারে যেমন ডেটা পার্টিশন মাউন্ট হওয়ার আগেই ব্যাকআপ অপারেশন শুরু হয়)।

অন্য একটি মেশিনে আমি ব্যাকআপগুলির জন্য LUKS + গ্রেহোল (কোনও RAID-6 নেই) দিয়ে একাধিক ডিস্ক ব্যবহার করব এবং একই পাসওয়ার্ডটি 10 ​​বার প্রবেশ করে 10 টি ডিস্ক আনলক করা সত্যিই ব্যথা হবে ...


যদি কেউ আপনার সিস্টেমে প্রবেশ করে রুট হয়ে যেতে পারে তবে তাদের আপনার এনক্রিপ্ট করা পার্টিশনের চাবি পাওয়ার দরকার নেই। এটিকে মূল থেকে রক্ষা করার কোনও অর্থ নেই (এবং এটি কোনও বিশেষ হার্ডওয়্যার যেমন টিপিএম বা ভার্চুয়াল মেশিনে চালানো ছাড়া সম্ভব নয়)।
গিলস 'দুষ্ট হওয়া বন্ধ করুন'

মাফ করবেন ? এমনকি আমি রুট হলেও LUKS পার্টিশন আনলক করতে আমাকে কীফাইল / পাসফ্রেজ দিতে হবে। আমি মনে করি আপনি বোঝাতে চাইছেন যে কেউ যদি রুট হয়ে যায় তবে এটির আমার এনক্রিপ্ট হওয়া ডেটাতে সম্পূর্ণ অ্যাক্সেস রয়েছে। দুর্ভাগ্যক্রমে এটি কেবল সত্য কারণ একবার এনক্রিপ্ট হওয়া পার্টিশনটি মাউন্ট হয়ে গেলে এটি এনক্রিপ্ট করা বা না থাকলে কোনও পার্থক্য হয় না। তখন ভার্চুয়াল মেশিনের সুবিধা কী হবে? তাহলে কেন এনক্রিপশনটি একেবারে সহায়তা করবে? এসএসএইচ এবং অনুরূপ পরিষেবার মাধ্যমে রুটে অ্যাক্সেস অস্বীকার করার একমাত্র সমাধানটি কি? তবে এখনও যদি কোনও হ্যাকার সাধারণ ব্যবহারকারী হিসাবে সিস্টেমে প্রবেশ করেন তবে তিনি সাধারণত প্রতিটি ফাইলে অ্যাক্সেস পড়ে থাকেন, তাই না?
ব্যবহারকারী51166

1
হুবহু, যদি কেউ আপনার সিস্টেমে রুট হয় তবে তাদের কাছে সমস্ত কিছুর অ্যাক্সেস রয়েছে। একজন ভিএম এর অর্থ এই হতে পারে যে ভিএম-এর সমস্ত কিছুর মধ্যে তাদের অ্যাক্সেস রয়েছে। যদি কেউ আপনার হার্ডওয়্যার চুরি করে তবে কেবলমাত্র এনক্রিপশনের ব্যবহার।
গিলস 'অশুভ হওয়া বন্ধ করুন'

হ্যাঁ ভাল ... সেই ক্ষেত্রে আমরা যুক্তি দিতে পারি যে ডেটা সংরক্ষণের একমাত্র নিরাপদ উপায় হ'ল একটি এনক্রিপ্ট করা কম্পিউটার যা সমস্ত নেটওয়ার্ক থেকে সংযোগ বিচ্ছিন্ন হয়ে যায় এবং বিল্ডিংয়ের সাথে সংহত হয়। তারপরেও যে কেউ আপনার সিস্টেমে রিবুট না করে কোনও কীবোর্ড নিয়ে এসে আপনার ডেটা চুরি করতে পারে। আমি পাশাপাশি আমার সিস্টেমগুলি ইন্টারনেট থেকে বিচ্ছিন্ন করতে পারি কারণ এটি একটি ব্যাকআপ সার্ভার হবে তাই ল্যান অ্যাক্সেসের প্রয়োজন এটি। তারপরে আবার ... কোনও ভিপিএন ব্যবহার করা উচিত বা ল্যান মেশিনগুলির মধ্যে একটি সংক্রামিত হয়ে গেলে ব্যাকআপ মেশিনটিও উন্মুক্ত করা উচিত। এই সমস্যাগুলি সমাধান করতে আপনি কী করবেন?
ব্যবহারকারীর 111166

উত্তর:


7

তুমি ব্যবহার করতে পার /lib/cryptsetup/scripts/decrypt_derivedcrypttab অন্যটিতে ডিস্ক থেকে কীটি স্বয়ংক্রিয়ভাবে ব্যবহার করতে আপনার ।

দ্য decrypt_derived স্ক্রিপ্ট ডেবিয়ান এর cryptsetup প্যাকেজের অংশ।

Sda6crypt থেকে sda5 এ কী যুক্ত করার জন্য ছোট উদাহরণ:

/lib/cryptsetup/scripts/decrypt_derived sda6crypt > /path/to/mykeyfile
cryptsetup luksAddKey /dev/sda5 /path/to/mykeyfile
ls -la /dev/disk/by-uuid/ | grep sda5
echo "sda5crypt UUID=<uuid> sda6crypt luks,keyscript=/lib/cryptsetup/scripts/decrypt_derived" >> /etc/crypttab
shred -u /path/to/mykeyfile # remove the keyfile

যেহেতু আজকাল কোনও ফাইলকে সত্যিই মুছে ফেলা খুব কঠিন, তাই নিশ্চিত করুন যে / পথ / থেকে / মাইকিফিল কোনও এনক্রিপ্ট করা ড্রাইভে রয়েছে (sda6crypt আমার উদাহরণে এটি একটি ভাল সমাধান হতে পারে)।

সাধারণভাবে, আপনি ব্যবহারকারীর স্পেস ফাইল সিস্টেম এনক্রিপশন ব্যবহার করে যেমন অতিরিক্ত সুরক্ষা স্তর যুক্ত করতে পারেন encfs


এইভাবে আমার কীফিলটি ডিস্কে সঞ্চয় করার দরকার নেই। সেটা ভালো হবে. তবে আপনি কি মনে করেন যে এটি সমস্যার জন্য মূল্যবান (যেমন এনক্রিপ্ট করা রুট ডিভাইসে কীফাইলটি সংরক্ষণ করা "যথেষ্ট নিরাপদ")? আমার কিছু সন্দেহ আছে বলে আমি একটি মতামত জিজ্ঞাসা করছি। পরামর্শের জন্য ধন্যবাদ.
ব্যবহারকারী51166

সমাধানটির decrypt_derivedএকমাত্র সুবিধা রয়েছে যে কোনও কী ফাইল নেই। যদি কেউ রুট অ্যাক্সেস পেতে পারেন তবে আপনি সাধারণত যেভাবেই হারাতে পারেন। অনুপ্রবেশকারীদের পক্ষে কোনও স্ক্রিপ্ট চালানোর চেয়ে কী ফাইলগুলি পড়া একটু সহজ হতে পারে। আরও সুরক্ষা পেতে, আপনি যেমন টোমাইও লিনাক্স, অ্যাপোমোর, এসএমএকে, সেলিনাক্স, গার্সিকিউরিটি, ... ব্যবহার করে আপনার সিস্টেমকে শক্ত করতে পারেন তবে এটির জন্য অতিরিক্ত প্রচেষ্টা প্রয়োজন। এবং যদি প্রশ্নটি মূল্যবান হয় তবে তা আরও গুরুত্বপূর্ণ। ড্রাইভ ক্র্যাশ হয়ে গেছে যেখানে কীটি চালিত হয়েছে / সংরক্ষণ করা হয়েছে সে ক্ষেত্রে কীটির ব্যাকআপ বা পৃথক কী রাখতে ভুলবেন না।
জোফেল

আমি গ্রাসিকিউরিটি বা অনুরূপ সফ্টওয়্যার ব্যবহার করার বিষয়েও পরিকল্পনা করেছি (শুরুতে নয়, তবে আমার যখন সময় আসবে আমি এটি সুরক্ষিত করব)। আমি কেবল পাসওয়ার্ড ব্যবহার করার কথা ভাবছি এবং সম্ভব হলে কীফাইলগুলিও নয়। ভাল পাসওয়ার্ডটি র‍্যামে সংরক্ষণ করা হবে, সুতরাং আমার ধারণা আপনিও সে সম্পর্কে তর্ক করতে পারেন।
ব্যবহারকারী51166

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

@ গিলস যেহেতু আমি নিরাপদ ফাইল মোছার বিশেষজ্ঞ নই, তাই আমি আমার উত্তর সম্পাদনা করেছি। আমি এখনই এনক্রিপ্ট করা ড্রাইভে কীফিলটি সংরক্ষণ করার পরামর্শ দিচ্ছি।
জোফেল

1

জোফেল উত্তরের উপর ভিত্তি করে, এখানে একই উদাহরণ তবে কোনও ফাইলটিতে কীটি সংরক্ষণ না করেই করা যায়। কীটি একটি নামী পাইপে পাস করা হয়েছে, যা ডিস্কে কোনও কিছু সঞ্চয় করে না।

/lib/cryptsetup/scripts/decrypt_derivedঅন্য ডিস্কের জন্য একটি ডিস্ক থেকে কীটি স্বয়ংক্রিয়ভাবে ব্যবহার করতে আপনি আপনার ক্রিপ্টটাবটিতে ব্যবহার করতে পারেন । decrypt_derivedস্ক্রিপ্ট ডেবিয়ান এর cryptsetup প্যাকেজের অংশ।

Sda6crypt থেকে sda5 এ কী যুক্ত করার জন্য পরিবর্তিত উদাহরণ:

mkfifo fifo
/lib/cryptsetup/scripts/decrypt_derived sda6crypt > fifo &
cryptsetup luksAddKey /dev/sda5 fifo
rm fifo

ls -la /dev/disk/by-uuid/ | grep sda5
echo "sda5crypt UUID=<uuid> sda6crypt luks,initramfs,keyscript=/lib/cryptsetup/scripts/decrypt_derived" >> /etc/crypttab

keyscriptবিকল্প শুধুমাত্র যদি কাজ করে crypttabডেবিয়ান মূল cryptsetup সরঞ্জাম দ্বারা প্রক্রিয়াকৃত হয়, systemd হল reimplementation বর্তমানে সমর্থন করে না। যদি আপনার সিস্টেমটি সিস্টেমড ব্যবহার করে (যা বেশিরভাগ সিস্টেমে থাকে), আপনার সিস্টেমে initramfsস্টার্ট শুরুর আগে ক্রিপসেটআপ সরঞ্জামগুলির মাধ্যমে আরআরআরডি তে প্রসেসিং করার জন্য জোর করার বিকল্প প্রয়োজন ।

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