Iptables - প্রক্সি - NAT - IDS: পার্ট 2 দিয়ে আপনার নেটওয়ার্কটি সুরক্ষিত করা হচ্ছে

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

স্ক্রিপ্টটি করার আগে এবং আপনাকে এটি দেখতে কেমন তা দেখানোর আগে আসুন নাট এবং আমরা এই সরঞ্জামগুলির সাথে কী করতে চাই তার ধারণা সম্পর্কে কিছুটা কথা বলি।

NAT এবং উদাহরণের প্রসঙ্গ।

যখন আমরা NAT সম্পর্কে কথা বলি, আমরা এটিকে রাউটিংয়ের সাথে বিভ্রান্ত করতে পারি, যেহেতু দু'জনেই দুটি পৃথক নেটওয়ার্ক একে অপরের সাথে সংযোগ করার দায়িত্বে রয়েছে। পার্থক্যটি হ'ল এই রাউটিংটি একটি স্থানীয় নেটওয়ার্ক থেকে অন্য নেটওয়ার্কে যেতে প্রয়োগ করা হয় এবং এই অন্যান্য নেটওয়ার্কটি রাউটারের সাথে সংযুক্ত হয়ে ইন্টারনেটে যেতে পারে।

অন্যদিকে, আমরা যখন NAT সম্পর্কে কথা বলি, আমরা স্থানীয় বা বেসরকারী নেটওয়ার্ক থেকে একটি পাবলিক নেটওয়ার্ক বা ইন্টারনেটের প্যাকেটগুলিকে রাউটিং করার বিষয়ে কথা বলি। এটি ইন্টারনেটে যে সর্বজনীন আইপি দিয়ে যায় তা প্যাকেটগুলি মাস্ক করে এটি করে। এটি হ'ল আমাদের রাউটারের দরকার নেই, কারণ পাবলিক আইপি সরাসরি জিএনইউ / লিনাক্স সহ কম্পিউটার দ্বারা ধারণ করা হয়।

NAT

আমরা একটি স্থানীয় নেটওয়ার্ক থেকে ইন্টারনেটে যেতে রাউটার / ফায়ারওয়াল হিসাবে আমাদের লিনাক্সটি ব্যবহার করছি যে স্লোগান দিয়ে আমরা এটি ব্যবহার করব। তবে এখানে দুটি দৃশ্য প্রদর্শিত হতে পারে।

  • আমাদের লিনাক্সটি পরিষেবা সরবরাহকারীর রাউটার এবং স্থানীয় নেটওয়ার্কের মধ্যে রয়েছে।

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

  • আমাদের লিনাক্সের স্থানীয় নেটওয়ার্কের সাথে একটি ইন্টারফেস সংযুক্ত রয়েছে এবং অন্যান্য ইন্টারফেসের মাধ্যমে এটি সরাসরি একটি পাবলিক আইপি পেয়ে থাকে যার সাহায্যে এটি চলাচল করে।

এর অর্থ হল যে আমাদের লিনাক্সকে NAT করতে হবে যাতে প্যাকেটগুলি ইন্টারনেটে পৌঁছতে পারে।

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

NAT করতে আমরা তারপরে সিনট্যাক্সটি ব্যবহার করি

 iptables -t nat -A পোষ্ট্রোটিং -O এথ 1-জে মাস্কুরেড

যেখানে eth1 হ'ল ইন্টারফেস যেখানে আমরা পাবলিক আইপি পাই, তা হল, যেখানে আমরা ইন্টারনেটে যাই।

আইপি পাবলিক হলে ম্যাসওয়ার্ডে ব্যবহৃত হয় তবে এটি সময়ের সাথে সাথে পরিবর্তনশীল হতে পারে (গতিশীল)। অন্যথায় আমরা এসএনএটি-উত্স-আইপি ব্যবহার করতে পারি

Iptables স্ক্রিপ্ট তৈরি করা হচ্ছে

মনে করুন তারপরে: 172.26.0.0 হল আমাদের স্থানীয় নেটওয়ার্ক এবং 81.2.3.4 হল সর্বজনীন আইপি যা দিয়ে আমরা ইন্টারনেটে যাই। (এটি একটি স্ট্যাটিক আইপি)। আমার ইন্টারফেসগুলি ইথ0 (স্থানীয় নেটওয়ার্ক) রয়েছে

eth1 (পাবলিক নেটওয়ার্ক)।

এটি মূলত একটি স্ক্রিপ্ট তৈরি করে যা /etc/init.d/firestop (উদাহরণস্বরূপ) থেকে কল করা যায়। এবং এই স্ক্রিপ্ট থেকে আমরা আমাদের কনফিগারেশনের স্থিতি শুরু করতে, থামাতে বা পরীক্ষা করতে পারি, যেমন আমরা কোনও সিস্টেম ডিমন দিয়ে করি।

ধরুন আমার আইপিটিবেলসের নিয়মগুলি:

#! / বিন / বাশ # আমার বাড়ির ফায়ারওয়াল। # ফাইলের নাম / ইত্যাদি / ফায়ারওয়াল_ওন # জেএমসিএমক্স টুইটার দ্বারা: @ জেএমসিএমক্স # # বেসিক নীতি। iptables -P ইনপুট ড্রপ iptables -P আউটপুট ড্রপ iptables -P ফোরওয়ার্ড ড্রপ # #NAT এথ0 থেকে এথ 1 এপেটে ইন্টারনেট ভাগ করতে পারে - নাট -এ পোষ্ট্রোটিং -O eth1 -j এসএনএটি - উত্স-উত্স 81.2.3.4
# # আমার iptables দ্বারা প্রবর্তিত আগত সংযোগগুলিকে মঞ্জুরি দিন - একটি ফরওয়ার্ড-মি রাষ্ট্র - স্টেট এসটাব্লিশড, রিলেটেড-জে এসিসিপিটি # # অনুমোদিত বহির্গামী ট্র্যাফিক আইপটিবল -এ ফোরওয়ার্ড -i এথ0 -o এথ 1 -p টিসিপি --ডপোর্ট 80 -j এসিসিপিটি আইপেটেবল -এ ফরওয়ার্ড -i এথ0 -o এথ 1 -পি টিসিপি --ডপোর্ট 443 -জে এসিসিপিটি আইপেটেবলস -এ ফোরওয়ার্ড -i এথ0 -ও এথ 1 -পি ইউডিপি --ডপোর্ট 53 -জে এসিসিপিটি
আসুন ফাঁসির অনুমতিগুলি দিতে ভুলবেন না

ব্যাখ্যা:

স্ক্রিপ্টটি মূলত নিম্নলিখিতটি করে:

  1. প্রথমে সমস্ত নেভিগেশন, সংযোগ এবং ট্র্যাফিক সীমাবদ্ধ করুন। (বেসিক ফায়ারওয়াল নীতিগুলি)
  2. তারপরে এ্যাট 1 গন্তব্য দিয়ে NAT তৈরি করুন। আমাদের স্থিতিশীল আইপি রয়েছে তা নির্দেশ করে "81.2.3.4"
  3. এটি আমার দ্বারা প্রবর্তিত সংযোগের প্যাকেটগুলি পাওয়ার জন্য প্রয়োজনীয় বন্দরগুলি খোলে।
  4. বহির্গামী HTTP, এইচটিটিপিএস এবং ডিএনএস ট্র্যাফিক গ্রহণ করে।
নিয়মগুলি ফরওয়ার্ড ট্র্যাফিকের জন্য নির্ধারিত কারণ আমরা আমাদের লিনাক্সকে রাউটার হিসাবে ব্যবহার করছি, সুতরাং নীতিগুলি লিনাক্সের মাধ্যমে পাস হওয়া ট্র্যাফিকের জন্য ব্যবহৃত হয়, এটি মধ্যস্থতাকারী হিসাবে কাজ করে। এর অর্থ হ'ল আমাদের লিনাক্স সরাসরি কোনও ডেটা নেভিগেট করতে বা গ্রহণ করতে পারে না। এটি কেবল এটির সাথে সংযুক্ত কম্পিউটারগুলিতে প্রয়োগ হয় তবে এটি নিজেই নয়

যদি আমরা নেভিগেট করতে আমাদের সরঞ্জাম ব্যবহার করতে চাই তবে আমাদের লাইনগুলি পুনরাবৃত্তি করা উচিত এবং যথাযথ হিসাবে ফরওয়ার্ডকে ইনপুট বা আউটপুটতে পরিবর্তন করা উচিত।

স্ক্রিপ্ট বাতিল করুন।

এখন আমরা একটি স্ক্রিপ্ট তৈরি করতে যা যা উপরের সমস্তগুলি ওভাররাইড করে এবং কম্পিউটারটিকে এই সমস্তটি পরিষ্কার করে দেয়। (পরীক্ষার উদ্দেশ্যে বা আমরা কেবল ফায়ারওয়ালটি বন্ধ করতে চাই)।

#! / বিন / বাশ # আমার বাড়ির ফায়ারওয়াল। # ফাইলের নাম / ইত্যাদি / ফায়ারওয়াল_অফ # জেএমসিএমক্স টুইটার দ্বারা: @ জিলসিএমক্স # # মুছে ফেলা নীতিগুলি -F # # ডিফল্ট নীতি প্রয়োগ করা হচ্ছে (সমস্ত ট্র্যাফিক গৃহীত হয়েছে) -প ইনপুট এসিসিপিটি iptables -P আউটপুট অ্যাকসেসিপ আইপিটিবেলস-পি ফরোয়ার্ড এসিসিপিটি

স্বয়ংক্রিয়ভাবে।

এখন আমাদের অবশ্যই স্ক্রিপ্টটি ভিতরে তৈরি করতে হবে /etc/init.d/ এবং পরিষেবাটি স্বয়ংক্রিয়ভাবে শুরু হয় এবং আমরা এটিকে আরও আরামদায়ক উপায়ে পরিচালনা করতে পারি।

#! / বিন / বাশ # আমার বাড়ির ফায়ারওয়াল। # ফাইলের নাম /etc/init.d/ ফায়ারওয়াল # লিখেছেন জেএমসিএমক্স টুইটার: @ জেএমসিএমএক্স মামলা শুরুতে $ 1) / ইত্যাদি / ফায়ারওয়াল_অন ;; স্টপ) / ইত্যাদি / ফায়ারওয়াল_ অফ ;; স্থিতি) iptables -L ;; *) প্রতিধ্বনি "ভুল সিনট্যাক্স। বৈধ = /etc/init.d/ ফায়ারওয়াল শুরু | স্টপ | স্থিতি; এসাক

ব্যাখ্যা:

এই শেষ লিপিটি আমরা রেখেছি /etc/init.d/ নাম সহ ফায়ারওয়াল। সুতরাং আমরা ফায়ারওয়ালটি পরিচালনা করতে চাইলে আমরা কমান্ডটি ব্যবহার করতে পারি /etc/init.d/ ফায়ারওয়াল শুরু। একইভাবে আমরা এটি বন্ধ করতে পারি বা রাষ্ট্রটি দেখতে পারি।

এখন আমরা ফাইলটি সম্পাদনা করতে যাচ্ছি /etc/rc.local এবং আমরা এর মতো কিছু রেখেছি: /etc/init.d/ ফায়ারওয়াল শুরু যাতে এটি সিস্টেমের সাথে শুরু হয়।

যেমন. এটি দ্বিতীয় অংশ। আমি আশা করি এটি আপনার সবার জন্য কিছু নিয়ে আসে। পরবর্তীটিতে আমরা প্রক্সি এবং আইডিএস দেখতে পাই।


আপনার মন্তব্য দিন

আপনার ইমেল ঠিকানা প্রকাশিত হবে না। প্রয়োজনীয় ক্ষেত্রগুলি দিয়ে চিহ্নিত করা *

*

*

  1. ডেটার জন্য দায়বদ্ধ: মিগুয়েল অ্যাঞ্জেল গাটান
  2. ডেটার উদ্দেশ্য: নিয়ন্ত্রণ স্প্যাম, মন্তব্য পরিচালনা।
  3. আইনীকরণ: আপনার সম্মতি
  4. তথ্য যোগাযোগ: ডেটা আইনি বাধ্যবাধকতা ব্যতীত তৃতীয় পক্ষের কাছে জানানো হবে না।
  5. ডেটা স্টোরেজ: ওসেন্টাস নেটওয়ার্কস (ইইউ) দ্বারা হোস্ট করা ডেটাবেস
  6. অধিকার: যে কোনও সময় আপনি আপনার তথ্য সীমাবদ্ধ করতে, পুনরুদ্ধার করতে এবং মুছতে পারেন।

  1.   ধুন্তর তিনি বলেন

    আপনি যদি ডেবিয়ান ব্যবহার করছেন তবে রেপোতে একটি প্যাকেজ রয়েছে (আইপটবেবলস-কনসিস্টেন্ট) যা ঠিক তা করে, এটি আপনার ব্যবহারের উপর নির্ভর করে /etc/iptables/rules.v4 বা v6 এর বর্তমান নিয়মগুলিকে ডাম্প করে এবং সেগুলি আপনার ক্ষেত্রে প্রয়োগ করে আপনি সিস্টেম উত্তোলন যখন।

  2.   ocz তিনি বলেন

    অনুশীলনে, একটি প্রচলিত iptables ফায়ারওয়াল কনফিগারেশন পরিষ্কার করতে (এবং NAT ব্যবহার এটি আমার দৃষ্টিকোণ থেকে হবে না), বেশিরভাগ ক্ষেত্রে একটি নিয়ম ফ্লাশ করা এবং ACCEPT এ ডিফল্ট নীতিগুলি পুনরায় সেট করা যথেষ্ট ice
    তবে তত্ত্ব হিসাবে, এবং যতদূর আমি জানি, এগুলি ছাড়াও আপনাকে অ-ডিফল্ট স্ট্রিংগুলি সাফ করা এবং কাউন্টারগুলি পুনরায় সেট করতে হবে। "ফিল্টার" ছাড়াও অন্যান্য সারণী রয়েছে তা মনে রেখে ক্রিয়াগুলি সম্পাদন করা উচিত (এটির জন্য "/ proc / নেট / ip_tables_names" ফাইলটি পড়া বাধ্যতামূলক)।

    যাইহোক, অর্থোডক্সি বলেছে যে নেটওয়ার্ক হওয়ার আগেই একটি ফায়ারওয়াল অবশ্যই তৈরি করা উচিত। অন্যান্য লিনাক্স সিস্টেমে কীভাবে এটি অর্জন করা হয় তা আমি জানি না, তবে ডেবিয়ানগুলির মধ্যে স্ক্রিপ্টটি "/etc/network/if-pre-up.d/" ডিরেক্টরিতে রূপান্তরিত এবং সেট করা যেতে পারে।

    সবাই ভাল ফায়ারওয়ালিং। 😉

  3.   NauTilus তিনি বলেন

    হ্যালো, পোস্টটি খুব ভাল। আমি পুরো 2 খণ্ড পড়েছি।

    পরবর্তী for এর জন্য অপেক্ষা করছি 🙂

  4.   anonimo তিনি বলেন

    আমার অজ্ঞতা থেকে একটি প্রশ্ন, আমরা iptables দিয়ে চালিয়ে যাচ্ছি, তবে বেশ কয়েকটি কার্নেল সংস্করণের জন্য আমাদের nftables রয়েছে, আমি ইতিমধ্যে পরীক্ষা করে নিচ্ছি, প্রশ্নগুলি হচ্ছে, এনপ্যাটেবলগুলি কি আইপটিবলের সাথে সম্মতিযুক্ত কোনও বিটা? Iptables কি আরও দীর্ঘ সময়ের জন্য ব্যবহার করা অবিরত থাকবে?

    আপনাকে ধন্যবাদ।

    1.    ইউকিটারু তিনি বলেন

      nftables- র মধ্যে iptables, ip6tables, arptables এবং ebtables এর সমস্ত কার্যকারিতা অন্তর্ভুক্ত রয়েছে, এগুলি দুটি কার্নেলস্পেস এবং ইউজারস্পেসে একটি নতুন অবকাঠামো ব্যবহার করে, যা আরও ভাল কার্য সম্পাদন এবং উন্নত কার্যকারিতা নিশ্চিত করে। nftables iptables এবং উল্লিখিত অন্যান্য সমস্ত সরঞ্জাম প্রতিস্থাপন করবে তবে আপাতত নয়, যতক্ষণ না nftables এর বৃহত্তর ব্যবহার না হওয়া পর্যন্ত নয় not

  5.   আলেকজান্ডার তিনি বলেন

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

  6.   অভ্র তিনি বলেন

    হ্যালো! উভয় পোস্ট খুব ভাল।
    অবদান হিসাবে আপনি এই অংশে শেষ যোগ করতে পারেন:

    "এখন আমরা /etc/rc.local ফাইলটি সম্পাদনা করতে যাচ্ছি এবং /etc/init.d/ ফায়ারওয়াল শুরু করার মতো কিছু স্থাপন করব যাতে এটি সিস্টেমের সাথে শুরু হয়।"

    এটি rc.local এ যুক্ত করুন।

    যদি [-x /etc/init.d/ ফায়ারওয়াল]; তারপর
    /etc/init.d/ ফায়ারওয়াল শুরু
    fi

    যার অর্থ হ'ল "ফায়ারওয়াল" এর যদি কার্যকর করার অনুমতি থাকে তবে তা কার্যকর করুন not
    আপনি যদি "ফায়ারওয়াল" না শুরু করতে চান তবে আপনাকে কেবল অনুমতিগুলি সরিয়ে ফেলতে হবে।

    উদাহরণস্বরূপ: chmod + x /etc/init.d/ ফায়ারওয়াল
    এটি প্রতিটি প্রারম্ভকালে চালানো বা ...
    chmod -x /etc/init.d/ ফায়ারওয়াল
    এটি সম্পূর্ণরূপে অক্ষম করতে।

    গ্রিটিংস!