লিনাক্স কঠোরকরণ - ওয়েব সার্ভারগুলি


31

লিনাক্স ওয়েব সার্ভার স্থাপন করার সময় আপনার চেকলিস্ট / রুটিনগুলি কী কী?

সর্বাধিক সুরক্ষা অর্জনের জন্য আপনি কী সুপারিশ করেন?

বারবার রক্ষণাবেক্ষণ করার কোনও পছন্দসই উপায় আছে কি?

উত্তর:


27
  • প্রথমত, সচেতন থাকুন যে অ্যাপাচে (পিএইচপি, সিজি, রুবি, ...) কোনও স্ক্রিপ্টিং ক্ষমতা হ'ল স্ক্রিপ্টটি ব্যবহারকারীর অধিকার সহ শেল অ্যাকাউন্টের সম্ভাব্য সমতুল্য।

  • যদি সার্ভারটি একাধিক ব্যবহারকারীর সাথে ভাগ করা থাকে তবে আপনি suexec (- অথবা ITK MPM - ডেভিড শ্মিট প্রস্তাবিত ) ব্যবহার করার কথা ভাবতে চাইতে পারেন তাই প্রতিটি স্ক্রিপ্ট একই অ্যাপাচি ব্যবহারকারীর মতো চলবে না।

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

  • (স্পষ্টত) আপডেট এবং প্যাচগুলি চালিয়ে যান, কেবল আপাচি নয়, পিএইচপি, রুবি, পার্ল ইত্যাদিও ... আপনাকে সমস্ত আপডেট দেওয়ার জন্য কেবল আপনার ওএসকে বিশ্বাস করবেন না। কিছু ডিস্ট্রো তাদের প্যাচগুলি দিয়ে অত্যন্ত ধীর হয়। যতদূর সম্ভব 0 দিনের দুর্বলতায় এক্সপোজারের সময় সীমাবদ্ধ করুন। লাগান milw0rm আপনার RSS রিডারে ফিড, সাবস্ক্রাইব insecure.org মেইলিং তালিকা, ইত্যাদি ... নেই শুধু এটা করার আগে আপনার OS কোনো প্যাচ মুক্তি কাছাকাছি পায় আপনি দুর্বলতা সম্পর্কে জানতে, এছাড়াও আপনি নির্দিষ্ট পিএইচপি দুর্বলতা সম্পর্কে জানব সাহায্য করবে উদাহরণস্বরূপ সিমিএস অ্যাপ্লিকেশনগুলি, যা এমনকি আপনার ওএস দ্বারা পরিচালনা বা প্যাচও করা যায় না।

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

  • পিএইচপি রক্ষা করতে সুহসিনের মতো জিনিস ব্যবহার করা সহায়তা করে। তবে এটি বুঝতে শিখুন, এটি আপনার অ্যাপ্লিকেশনটির প্রত্যাশিত পরামিতিগুলিতে কনফিগার করুন।

  • প্যাক্সের মতো কার্নেল প্যাচ ব্যবহার করা আপনাকে অনেক বাফার ওভারফ্লো দুর্বলতা থেকে রক্ষা করতে পারে। এমনকি যদি আপনার সফ্টওয়্যারটি দুর্বল হয়। (এটি আপনাকে অদৃশ্যযোগ্য করে তোলে না, এটি কেবল অন্য একটি ছোট, স্তর,)

  • কিছু সুরক্ষা সরঞ্জাম ব্যবহার করার সময় অতিরিক্ত আত্মবিশ্বাস পাবেন না। আপনি যে সরঞ্জামগুলি ব্যবহার করছেন তা বুঝতে এবং সাধারণ জ্ঞান ব্যবহার করুন। পড়ুন, শিখুন, যতটা পারেন ততটুকু চালিয়ে যান।

  • বাধ্যতামূলক অ্যাক্সেস নিয়ন্ত্রণ ব্যবহার বিবেচনা করুন (যেমন: SELinux )। এটি আপনাকে প্রতিটি অ্যাপ্লিকেশনের জন্য, এটি কীভাবে করার অনুমতি দেওয়া হয়েছে তা দুর্দান্তভাবে বিশদ করার অনুমতি দেয়। কোন ফাইলগুলিতে এটি অ্যাক্সেসের অনুমতি রয়েছে। কার্নেল যা ডাকে এটি করার অনুমতি দেয় ইত্যাদি etc. এটি একটি খুব জড়িত প্রক্রিয়া এবং এর জন্য প্রচুর বোঝার প্রয়োজন requires কিছু ডিস্ট্রো তাদের প্যাকেজগুলির জন্য প্রাক-তৈরি SELinux নীতি সরবরাহ করে (যেমন: জেন্টো )। এই পরামর্শটি নীচের একটির সাথে বৈপরীত্যের মতো, তবে তবুও এটি বৈধ।

  • জিনিসগুলি সহজ রাখুন। একটি জটিল সুরক্ষা কৌশল আপনার বিরুদ্ধে কাজ করতে পারে।

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

  • সমস্ত ডটফাইলে অ্যাক্সেস অস্বীকার করুন (এটি অবিলম্বে .htaccess ফাইলগুলিও কভার করে)

  • যে কোনও পাসওয়ার্ড প্রমাণীকরণের যে কোনও জায়গায় সর্বদা https ব্যবহার করুন।

  • ফায়ারওয়াল একটি অস্বীকার দ্বারা-ডিফল্ট নীতি হওয়া উচিত। নির্দিষ্ট ট্র্যাফিক লগ করতে আপনার ফায়ারওয়ালে কিছু নির্দিষ্ট নিয়ম তৈরি করুন।

  • অসঙ্গতিগুলির জন্য আপনার লগগুলি স্ক্যান করতে লগ পার্সিং স্ক্রিপ্টগুলি সেট আপ করুন। ( প্রিলেলেড আইডিএস স্যুট এটি করতে পারে তবে সত্যই, আমি আপনাকে সুপারিশ করছি সময়ের সাথে সাথে আপনার নিজের স্ক্রিপ্টগুলি তৈরি করুন, কারণ এটি আপনাকে নিজের সরঞ্জাম এবং নিয়মগুলি আরও ভালভাবে বুঝতে সহায়তা করবে))

  • সর্বশেষে লগ ইন করা ব্যবহারকারীগণ, সক্রিয় সংযোগগুলি, ব্যান্ডউইথ ব্যবহৃত ইত্যাদি ইত্যাদিতে সার্ভারটি আপনাকে প্রতিদিনের প্রতিবেদনগুলি মেইল ​​করে ...

  • স্যুইড বাইনারি, ওয়ার্ল্ড রাইটিংযোগ্য ফাইল এবং এর মতো স্টাফের জন্য ক্রোন স্ক্যান করুন এবং সেগুলি আপনার কাছে মেইল ​​করুন।

  • আপনার সেট আপ করা কোনও স্টাফের জন্য আপনাকে মেল করা হবে, সময়ের সাথে সাথে আপনার ব্যতিক্রমগুলির একটি তালিকা তৈরি করা উচিত। (ফোল্ডারগুলিতে ফাইল সিস্টেমের পরিবর্তনগুলি উপেক্ষা করার জন্য, 777 ফাইলগুলিকে অনুমতি দেওয়া হবে, সাইড বাইনারিগুলি অনুমতি দেবে)। এটি গুরুত্বপূর্ণ যে আপনি কেবল এমন জিনিসগুলির বিষয়ে অবহিত হন যা ঘটেছিল না। আপনি যদি তুচ্ছ জিনিসগুলির সাথে প্রতিদিন একটি মেইল ​​পান তবে আপনি সেগুলি উপেক্ষা করতে শুরু করবেন এবং তারা অর্থহীন হয়ে উঠবে।

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

  • সুরক্ষার জন্য এই জাতীয় তালিকার উপর নির্ভর করবেন না :) সিরিয়াসলি! আপনি ইন্টারনেটে প্রচুর পরিমাণে এটি পাবেন, সেগুলি পড়ুন, প্রতিটি পরামর্শ নিয়ে গবেষণা করুন এবং নিজের মন তৈরি করতে সাধারণ জ্ঞান এবং অভিজ্ঞতা ব্যবহার করুন। শেষ পর্যন্ত, অভিজ্ঞতা এবং সাধারণ জ্ঞানগুলিই কেবল আপনাকে রক্ষা করবে will তালিকা, না সরঞ্জাম। পড়ুন, তবে না বুঝেই অনুলিপি করবেন না।


+1, দুর্দান্ত তালিকা! আমি ক্রোটের পরিবর্তে সুেক্সেক এবং লিনাক্স ভিএসবারের (লিনাক্স- ভাসের.অর্গ ) এর পরিবর্তে আইটিকে এমপিএম ( এমপিএম- itk.sesse.net ) একবার দেখার পরামর্শ দিই। এছাড়াও, ফাইল সিস্টেমের স্ক্যানগুলির জন্য রয়েছে ট্রিপওয়ায়ার বা সহযোগী এবং চক্রোকেট।
ডেভিড স্মিট

সুতরাং, শেষ পর্যন্ত, একটি ওয়েব সার্ভার রক্ষা করতে প্রায় একটি আজীবন সময় লাগে। দেখে মনে হচ্ছে আপনি যথেষ্ট প্রস্তুত করতে পারবেন না, তাই প্যাকেজ ম্যানেজারের মধ্যে পাওয়া প্রথম সুরক্ষা সরঞ্জামের চেয়ে অদ্ভুত ঘটনা সম্পর্কে নিয়মিত আপডেটগুলি আরও ভাল। :) দুর্দান্ত তালিকা, তবে আমি আমার সময় নেব। খুব সম্ভবত এই উত্তরটি এক হবে। :)
পেস্তা

@ ডেভিড: হ্যাঁ, ট্রিপভাইয়ারের কথা উল্লেখ করে আমি এক প্রকার অভিহিত সহায়তার কথা বলি, তবে আমি কেবল সহায়তার ক্ষেত্রে একটি সহায়তার লিঙ্ক যুক্ত করব। আমি ভিজার পরামর্শটি যুক্ত করব। হ্যাঁ, ভার্চুয়ালাইজেশন এবং / অথবা প্যারা ভার্চুয়ালাইজেশন ক্রুটের চেয়ে ভাল হতে চলেছে, এ কারণেই আমি ফ্রিবিএসডি জেলগুলি উল্লেখ করেছি। ভার্চুয়াল মেশিনগুলির সাথে একটি জিনিস হ'ল প্রতিটি ভিএম এর জন্য প্রয়োজনীয় ইউজারল্যান্ড + প্রয়োজনীয় সরঞ্জামগুলি প্রতিলিপি করা অনেকগুলি অতিরিক্ত ডিস্কের জায়গা খাবে যা একটি সমস্যা হতে পারে
জেএস

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

কি দারুন! এটি সত্যিই দুর্দান্ত .. sans.org এ উপলব্ধ চেকলিস্টগুলিও চেকআউট করুন। এটা সত্যিই অনেক সাহায্য করে। sans.org/score/checklists
লালাকাজে

5

আমি সান থেকে লিনাক্স সুরক্ষা চেকলিস্টের প্রস্তাব দিই । আমি এটি ব্যবহার করি, সাথে সাথে বাড়ির অভ্যন্তরীণ পদ্ধতিগুলি। চেকলিস্টটি কিছুটা সেকেলে হতে পারে তবে মূল পয়েন্টগুলির অনেকগুলিই সত্য stand


5
  • আমি একটি ফায়ারওয়াল সেট আপ করেছি, এবং প্রতিটি পরিষেবা পৃথকভাবে যুক্ত করার জন্য কেবল গর্তগুলি পোকার
  • যে কোনও পরিষেবার জন্য, আমি তাদের কনফিগারেশন ফাইল (গুলি) এর জন্য অ্যাপ্লিকেশনটির সহায়তা দস্তাবেজগুলি পড়েছি এবং নিশ্চিত হয়েছি যে আমি কমপক্ষে প্রতিটি সেটিংস স্কিম করে রেখেছি।
  • আমি সুরক্ষা মেইলিং তালিকাতে সাবস্ক্রাইব করি
  • আমি ক্রোন চাকরিতে রাত্রে rkunter এবং lynis চালাই
  • আমার কাছে প্রেরিত নির্দিষ্ট থ্রেশহোল্ডের সমস্ত ত্রুটি রয়েছে
  • লগিং সম্পর্কিত সমস্ত পরিবর্তন রয়েছে (লগিং পরিষেবা পুনরায় চালু করা ইত্যাদি) আমাকে ইমেল করে
  • আমি ইত্যাদি subversion মধ্যে রাখি

4

আপনার ~ / .ssh / কনফিগারেশন সম্পাদনা করুন

permit_root_login no

এটা তৈরি করে

ssh root@server

সাড়া না কিন্তু

ssh user@server
user$ su

আপনি যদি রুট হিসাবে লগইন করতে চান তবে কাজ করবে।


1

চেক করার জন্য অগণিত অনুমতি সর্বদা থাকবে, অগণিত চেকলিস্ট, নতুন বাগ / দুর্বলতার কখনও শেষ হবে না। সুরক্ষা আপনি ভাবেন না এমন কিছু যা আপনি চালু বা বন্ধ করেন, এটি এমন কিছু যা আপনি নিয়মিত করেন।

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

ডিফল্ট নীতি বলার অপেক্ষা রাখে না তবে আমি ব্যক্তিগতভাবে এটি কী অনুমতি দেয় তা জানতে আগ্রহী।

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