আপনার পার্টিশনগুলি রাখার সময় একটি জিনিস মনে রাখা উচিত ব্যর্থতা মোড। সাধারণত এই প্রশ্নটি ফর্মের: "পার্টিশন এক্স পূরণ করলে কী হয় ?" ডেরেস্ট ভোরেটাক 7 পরিস্থিতিটি পুরোপুরি নিয়ে এসেছিল /
যার ফলে সমস্যাগুলি নির্ণয় করতে বেশিরভাগ সংকট দেখা দিয়েছে। আসুন আরও কিছু নির্দিষ্ট পরিস্থিতি দেখুন situations
আপনার পার্টিশনের স্টোরিং লগগুলি পূর্ণ হলে কী হবে? আপনি অডিটিং / রিপোর্টিং ডেটা হারাবেন এবং কখনও কখনও আক্রমণকারীরা তাদের ক্রিয়াকলাপটি লুকানোর জন্য ব্যবহার করেন। কিছু ক্ষেত্রে আপনার সিস্টেম নতুন ব্যবহারকারীদের তাদের লগইন ইভেন্টটি রেকর্ড করতে না পারলে তা প্রমাণীকরণ করবে না।
/var
পূর্ণ হয়ে গেলে আরপিএম ভিত্তিক সিস্টেমে কী ঘটে ? প্যাকেজ ম্যানেজার প্যাকেজগুলি ইনস্টল বা আপডেট করবেন না এবং আপনার কনফিগারেশনের উপর নির্ভর করে নিঃশব্দে ব্যর্থ হতে পারে।
একটি পার্টিশন পূরণ করা সহজ, বিশেষত যখন কোনও ব্যবহারকারী এতে লেখার পক্ষে সক্ষম হয়। মজার জন্য, নিম্নলিখিত কমান্ড এবং দেখুন কিভাবে দ্রুত আপনি একটি চমত্কার বড় ফাইল বানান করতে পারেন: cat /dev/zero > zerofile
।
এটি পার্টিশনগুলি পূরণ করার বাইরেও যায়, যখন আপনি বিভিন্ন মাউন্ট পয়েন্টগুলিতে অবস্থান স্থাপন করেন তখন আপনি তাদের মাউন্ট বিকল্পগুলিও কাস্টমাইজ করতে পারেন।
যখন /dev/
মাউন্ট করা হয় না তখন কী হয় noexec
? যেহেতু /dev
সাধারণত ওএস দ্বারা রক্ষণাবেক্ষণ করা হয় এবং এটি কেবলমাত্র ডিভাইসগুলি ধারণ করে তা ক্ষতিকারক প্রোগ্রামগুলি আড়াল করার জন্য প্রায়শই ব্যবহৃত হয় (এবং কখনও কখনও এখনও ব্যবহৃত হয়)। ছেড়ে যাওয়া noexec
আপনাকে সেখানে সঞ্চিত বাইনারিগুলি চালু করতে দেয়।
এই সমস্ত কারণে এবং আরও অনেকগুলি, কঠোর গাইডগুলি সঞ্চালনের প্রথম পদক্ষেপগুলির মধ্যে একটি হিসাবে বিভাজন সম্পর্কে আলোচনা করবে। বস্তুত, কেমন ডিস্ককে পার্টিশন করার জন্য একটি নতুন সার্ভারে নির্মাণ করা হয় যদি প্রায় ঠিক প্রথম জিনিস আপনি আছে সিদ্ধান্ত নেওয়ার, এবং প্রায়ই সবচেয়ে পরে পরিবর্তন করা কঠিন। ইন্টারনেট সুরক্ষা কেন্দ্র নামে একটি গোষ্ঠী উপস্থিত রয়েছে যা কনফিগারেশন গাইডগুলি পড়তে সহজ ছাপ সরবরাহ করে। আপনি সম্ভবত আপনার নির্দিষ্ট অপারেটিং সিস্টেমের জন্য একটি গাইড খুঁজে পেতে পারেন এবং তারা যা বলতে পারে তার কোনও নির্দিষ্টকরণ দেখতে পারেন।
আমরা যদি রেডহ্যাট এন্টারপ্রাইজ লিনাক্স 6 এর দিকে নজর রাখি তবে প্রস্তাবিত পার্টিশন স্কিমটি হ'ল:
# Mount point Mount options
/tmp nodev,nosuid,noexec
/var
/var/tmp bind (/tmp)
/var/log
/var/log/audit
/home nodev
/dev/shm nodev,nosuid,noexec
এই সমস্ত পরিবর্তনের পিছনে নীতি হ'ল এগুলিকে একে অপরের উপর প্রভাব ফেলতে বাধা দেওয়া এবং / অথবা নির্দিষ্ট পার্টিশনে কী করা যায় তা সীমাবদ্ধ করা। জন্য বিকল্পগুলি নিন /tmp
উদাহরণস্বরূপ। যা বলে তা হ'ল সেখানে কোনও ডিভাইস নোড তৈরি করা যায় না, সেখান থেকে কোনও প্রোগ্রাম কার্যকর করা যায় না এবং সেট-ইউড বিট কোনও কিছুর উপর সেট করা যায় না। এর প্রকৃতি অনুসারে /tmp
প্রায় সর্বদা বিশ্ব লিখনযোগ্য এবং প্রায়শই একটি বিশেষ ধরণের ফাইল সিস্টেম যা কেবল স্মৃতিতে বিদ্যমান। এর অর্থ হ'ল কোনও আক্রমণকারী এটিকে দূষিত কোডটি ড্রপ এবং কার্যকর করতে একটি সহজ স্টেজিং পয়েন্ট হিসাবে ব্যবহার করতে পারে, তারপরে সিস্টেমটি ক্র্যাশ করে (বা কেবল পুনরায় চালু করা হবে) সমস্ত প্রমাণ মুছবে। যেহেতু এর কার্যকারিতাটিতে সেই কোনও কার্যকারিতার /tmp
প্রয়োজন হয় না, তাই আমরা সহজেই বৈশিষ্ট্যগুলি অক্ষম করতে পারি এবং সেই পরিস্থিতি রোধ করতে পারি।
লোগো স্টোরেজ স্থানগুলি /var/log
এবং /var/log/audit
এগুলি উত্স ক্লান্তি থেকে বাফার করতে সহায়তা করে। অতিরিক্তভাবে, নিরীক্ষণ কিছু বিশেষ জিনিস (সাধারণত উচ্চতর সুরক্ষার পরিবেশে) সম্পাদন করতে পারে যখন এর লগ স্টোরেজ ভরাট হতে শুরু করে। এটির বিভাজনে স্থাপন করে এই সংস্থান সনাক্তকরণটি আরও ভাল সম্পাদন করে।
আরও ভার্জোজ এবং উদ্ধৃতি হতে mount(8)
, উপরোক্ত ব্যবহৃত বিকল্পগুলি হ'ল:
noexec মাউন্ট ফাইল সিস্টেমে কোনও বাইনারি সরাসরি প্রয়োগের অনুমতি দেবেন না। (সম্প্রতি অবধি /lib/ld*.so / mnt / binary এর মতো কমান্ড ব্যবহার করে বাইনারি চালানো সম্ভব ছিল। লিনাক্স ২.৪.২৫ / ২.6.০ থেকে এই কৌশলটি ব্যর্থ হয়েছে))
নোডভ ফাইল সিস্টেমে চরিত্রের ব্যাখ্যা বা বিশেষ ডিভাইসগুলি ব্লক করবেন না।
nosuid সেট-ব্যবহারকারী-সনাক্তকারী বা সেট-গোষ্ঠী-সনাক্তকারী বিটগুলি কার্যকর হওয়ার অনুমতি দেবেন না। (এটি নিরাপদ বলে মনে হচ্ছে তবে আপনি যদি সাইড্পারেল ইনস্টল করে থাকেন তবে বাস্তবে এটি অনিরাপদ 1
সুরক্ষার দৃষ্টিকোণ থেকে এগুলি জানার জন্য খুব ভাল বিকল্পগুলি যেহেতু তারা আপনাকে ফাইল সিস্টেমটিতেই সুরক্ষা দেওয়ার অনুমতি দেবে। একটি উচ্চ সুরক্ষিত পরিবেশে আপনি এমনকি noexec
বিকল্পটি যুক্ত করতে পারেন /home
। লগ ফাইল বিশ্লেষণ করে বলুন, তথ্য প্রক্রিয়াকরণের জন্য শেল স্ক্রিপ্টগুলি লেখার পক্ষে এটি আপনার মানক ব্যবহারকারীকে আরও শক্ত করে তুলবে, তবে এটি তাদের বাইনারি কার্যকর করতে বাধা দেবে যা সুযোগ সুবিধাকে উন্নত করবে।
এছাড়াও, মনে রাখবেন যে রুট ব্যবহারকারীর ডিফল্ট হোম ডিরেক্টরিটি /root
। এর অর্থ এটি /
ফাইল সিস্টেমে থাকবে না , অন্তর্ভুক্ত থাকবে /home
।
প্রতিটি পার্টিশনকে আপনি ঠিক কতটা দিতে পারবেন তা সিস্টেমের কাজের চাপের উপর নির্ভর করে ব্যাপকভাবে পরিবর্তিত হতে পারে। একটি সাধারণ সার্ভার যা আমি পরিচালনা করেছি খুব কমই ব্যক্তির ইন্টারঅ্যাকশন প্রয়োজন এবং যেমন /home
পার্টিশনটি মোটেও খুব বড় হওয়ার দরকার নেই। এটি একই সাথে প্রযোজ্য /var
যেহেতু এটি সংক্ষিপ্ত ডেটা সংরক্ষণ করে যা ঘন ঘন তৈরি এবং মুছে ফেলা হয়। তবে, একটি ওয়েব সার্ভার সাধারণত /var/www
এটির খেলার মাঠ হিসাবে ব্যবহার করে, যার অর্থ এটি হয় পৃথক পার্টিশনের পাশাপাশি হওয়া /var/
প্রয়োজন বা বড় করা দরকার।
অতীতে আমি নীচের বিষয়গুলি বেসলাইন হিসাবে সুপারিশ করেছি।
# Mount Point Min Size (MB) Max Size (MB)
/ 4000 8000
/home 1000 4000
/tmp 1000 2000
/var 2000 4000
swap 1000 2000
/var/log/audit 250
সিস্টেমের উদ্দেশ্য এবং আপনার পরিবেশ কীভাবে পরিচালনা করে তা অনুসারে এগুলি পর্যালোচনা ও সমন্বয় করা দরকার। আমি এলভিএম ব্যবহার করার এবং পুরো ডিস্ক বরাদ্দ করার বিরুদ্ধেও সুপারিশ করব। এটি আপনাকে সহজে বিকাশ করতে বা এ জাতীয় জিনিসগুলির প্রয়োজন হলে পার্টিশনগুলি যুক্ত করতে দেয়।