কোনও সার্ভারটি ইন্টারনেটে খোলা কি পুনরায় বুট করা নিরাপদ?


29

বিশেষভাবে

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

(আমি জানি এটি একটি নুব প্রশ্ন, তবে আমি কোনও মাস্ক্রেডিং ডিএইচসিপি নেট এবং ফায়ারওয়ালের পিছনে নির্ভরযোগ্য নেটওয়ার্ক ব্যতীত কোনও কিছুর জন্য কোনও সার্ভার চালাইনি, সুতরাং ... নুবস্ থেকে নুব প্রশ্ন আশা করি))


15
সত্যিই মোটেও কোনও ছোট্ট প্রশ্ন নয়। হ্যাকাররা কীভাবে প্লেস্টেশন নেটওয়ার্কে ফিরে এসেছিল এটি মূলত এইভাবেই হয়েছিল 24 দিনের আউটেজ এবং 15 মিলিয়ন ডলারের বন্দোবস্তের কারণ। যখন তাদের ফায়ারওয়ালগুলি পুনরায় চালু হয়েছিল (তারা মাসিকের মতোই) ফায়ারওয়াল কয়েক মুহুর্তের জন্য প্রশস্তভাবে খোলা হয়েছিল - দৃশ্যত যথেষ্ট দীর্ঘ।
ক্রিস এস

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

অন্য বিকল্পটি হ'ল সার্ভার পুরোপুরি বুট না হওয়া অবধি নেটওয়ার্ক সুইচটিতে পোর্ট করতে অক্ষম করা - যদি আপনি সাইটে থাকেন এবং স্যুইচ অ্যাক্সেস পান have এটি আদর্শ নয়, তবে এটি অবশ্যই কার্যকর হবে, যদি না সার্ভারের এনএফএসের মতো নেটওয়ার্ক নির্ভরতা না থাকে।
jftuga

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

@ জাফতুগা আসলে বিষয়টি এর চেয়েও খারাপ is স্থানীয় মেশিনে চালানোর জন্য কেউ ইতিমধ্যে একটি টুকরো সফটওয়্যার পেয়েছে বলে মনে করে, তবে আমার ফায়ারওয়ালটি ফিল্টারিংয়ের কাজটি করে বলে, নিয়মটি হ'ল বহির্মুখী প্যাকেটগুলি কেবলমাত্র সেগুলি প্রতিষ্ঠিত বা সম্পর্কিত হলেই অনুমোদিত হয় এবং আগত নতুন সংযোগগুলি কেবল ৮০ বন্দর বহন করার অনুমতি দেয় সাধারণভাবে, এটি একটি অনিবদ্ধ অ্যাকাউন্ট থেকে বিপরীত শেলকে আটকাতে পারে। তবে সংযোগটি বুটে শুরু করা হলে এটি ফায়ারওয়াল আরম্ভের মাধ্যমে টিকিয়ে রাখা হবে। আমি মনে করি এর অর্থ ফায়ারওয়াল নিয়মগুলিও পরিবর্তন হওয়া উচিত, তবে এটি করা সহজ ভুল।
পার্থিয়ান শট

উত্তর:


18

বাক্সের বাইরে, আপনি গ্যারান্টিযুক্ত যে স্টার্টআপ স্ক্রিপ্টগুলির ক্রম দ্বারা ইন্টারফেস আনার আগে iptables শুরু হবে। প্রতিটি স্টার্টআপ স্ক্রিপ্টের "চেককনফিগ" লাইনটি দেখুন এবং আপনি সক্রিয়, প্রারম্ভিক ক্রম এবং স্টপ অর্ডার করার সময় রানওয়েভগুলি "চালু" দেখতে পাবেন see

আপনি গ্যারান্টিযুক্ত নন যে iptables রুলসেটটি সঠিকভাবে প্রয়োগ করা হয়নি (বা মোটেও) ইন্টারফেসটি আনা হবে না।

উদাহরণ:
chkconfig: 2345 08 92
এই লাইনটিতে বলা হয়েছে যে প্রশ্নে থাকা পরিষেবাটি রানলেভেল 2, 3, 4, এবং 5-এ সক্রিয় থাকবে এবং এটি 8 থেকে শুরু হবে এবং 92-এ থামবে greater বৃহত্তর "শুরু" মান সহ যে কোনও কিছুই এই স্ক্রিপ্টটি শেষ হওয়ার পরেই শুরু হবে, তবে এই স্ক্রিপ্টটি ত্রুটিযুক্ত হয়ে যাওয়া একটি সমাপ্তি হিসাবে বিবেচিত হয় এবং ডাউন স্ট্রিম স্ক্রিপ্টগুলি চলমান থেকে আটকাবে না।

দয়া করে নোট করুন এই উত্তরটি CentOS 6 এবং এর আগে প্রযোজ্য, এটি অবশ্য সেন্টোস 7-তে প্রযোজ্য নয় I আমি ব্যক্তিগতভাবে 7 টির জন্য এই প্রশ্নের উত্তর দেওয়ার জন্য পর্যাপ্তভাবে গবেষণা করে নি।


1
+1 এবং ... মুখে উপহারের ঘোড়া দেখতে না, কারণ আপনার উত্তরটি বেশ সহায়ক but তবে ... পরিষেবাগুলিকে নির্ভরতার আদেশ দেওয়ার কোনও মানক উপায় সম্পর্কে আপনি কি জানতেন, যাতে কোনও ব্যর্থ হয় তবে? শৃঙ্খলার প্রথম দিকে পরবর্তীগুলি শুরু হয় না? ওহ- এবং এছাড়াও যদি কেউ ফায়ারওয়ালটি (কোনওভাবে) ক্রাশ করতে সক্ষম হয় যে নেটওয়ার্ক ইন্টারফেসটি "জাহাজের সাথে নামবে"? আদর্শভাবে, আমি চাইছি সবকিছু নিরাপদে ব্যর্থ হোক, এমনকি অফচেঞ্জেও কারও কাছে ফায়ারওয়াল করার 0 দিনের দিন থাকতে হবে ...
পার্থিয়ান শট

5
এসআইএসভি স্টার্টআপ স্ক্রিপ্টগুলি (অর্থাত সেন্টস 6 এবং তার আগের) এর সাথে এটি করার কোনও ভাল উপায় নেই। আপনার পছন্দমতো সেন্টোস 7 নির্ভরতা করে - যদি বি এ এবং এ ব্যর্থ হয়, বি শুরু হয় না। 7 এর জন্য, নির্ভরতা ব্যবহারগুলি দেখতে systemctl list-dependencies --all(আমি 30 সেকেন্ড আগে কেবল ম্যান পৃষ্ঠার দিকে চেয়েছিলাম)।
জন

যদিও এই সংবাদটি কিছুটা হতাশাব্যঞ্জক (আমি এই মুহুর্তে 6 বছরের উপরে), কমপক্ষে আমি এখন জানি যে init স্ক্রিপ্টগুলি সংশোধন করা একটি গ্রহণযোগ্য ভয়ঙ্কর হ্যাক।
পার্থিয়ান শট

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

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

1

আপনি সেন্টোসে ifup-post বিকল্পটি ব্যবহার করতে পারেন:

জন্য / etc / sysconfig / network-স্ক্রিপ্ট / ifup-পোস্ট

যখন কোনও নেটওয়ার্ক ডিভাইস স্লিপ ডিভাইসটি বাদ দেয় তখন কল করা হয়। সেই ডিভাইসের উপর নির্ভরশীল স্থিতিশীল রুটগুলি আনতে কল / ইত্যাদি / সিসকনফিগ / নেটওয়ার্ক-স্ক্রিপ্ট / আইফআপ-রুট routes সেই ডিভাইসের জন্য উপকরণ আনতে কল / ইত্যাদি / সিসকনফিগ / নেটওয়ার্ক-স্ক্রিপ্ট / আইফআপ-এলিয়াস ases হোস্টনামটি সেট করে যদি এটি ইতিমধ্যে সেট না করা থাকে এবং সেই ডিভাইসের আইপি-র জন্য একটি হোস্ট-নেম পাওয়া যায়। নেটওয়ার্ক ইভেন্টগুলির বিজ্ঞপ্তির জন্য অনুরোধ করা কোনও প্রোগ্রামগুলিতে SIGIO প্রেরণ করে।

প্রয়োজন মতো নেমসারস কনফিগারেশন, কল করতে স্বেচ্ছাসেবী স্ক্রিপ্ট ইত্যাদির জন্য বাড়ানো যেতে পারে।

এই স্ক্রিপ্টটি চালিত হয় এবং উপরের (ifup- রুট এবং ifup-aliases) এর পরে এটি ifup- স্থানীয় সন্ধান করে

if [ -x /sbin/ifup-local ]; then
   /sbin/ifup-local ${DEVICE}
fi

সুতরাং আপনি এই ফাইলটি তৈরি করতে পারেন এবং নিশ্চিত করতে পারেন এটি আবার iptables- এ কল করে উদাহরণস্বরূপ iptables-بحال ব্যবহার করে:

iptables-restore < /etc/sysconfig/iptables

1

সামান্য সংযোজন: পরবর্তী বার আপনি সার্ভারটি বুট করার পরে প্রয়োজনীয় নিয়ম উপস্থিত থাকবে তা নিশ্চিত করার জন্য এটি সংরক্ষণ করুন

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