13 লিনাক্স iptables ফায়ারওয়াল উপর সাক্ষাত্কার প্রশ্ন
নিশিতা আগরওয়াল, একটি ঘন ঘন টেকমিন্ট ভিজিটর ভারতের পুনেতে একটি ব্যক্তিগত মালিকানাধীন হোস্টিং সংস্থায় তিনি যে চাকরির সাক্ষাত্কারটি দিয়েছিলেন তা সম্পর্কে আমাদের সাথে তার অভিজ্ঞতা (প্রশ্নোত্তর) আমাদের সাথে ভাগ করে নিয়েছিল। তাকে আইপ্যাটেবলের বিশেষজ্ঞ হলেও বিভিন্ন বিষয়ে তিনি প্রচুর প্রশ্ন জিজ্ঞাসা করেছিলেন এবং তিনি এই প্রশ্নগুলি এবং iptables সম্পর্কিত তাদের উত্তর (তিনি দিয়েছেন) অন্যদের কাছে ভাগ করে নিতে চেয়েছিলেন যারা অদূর ভবিষ্যতে সাক্ষাত্কার দিতে চলেছেন।
নিশিতা আগরওয়ালের স্মৃতির উপর ভিত্তি করে সমস্ত প্রশ্ন এবং তাদের উত্তরগুলি আবার লেখা হয়েছে।
"হ্যালো বন্ধুরা! আমার নাম নিশিতা আগরওয়াল। আমি প্রযুক্তিতে স্নাতক ডিগ্রি অর্জন করেছি। আমার বিশেষত্বের ক্ষেত্রটি ইউএনআইএক্স এবং ইউএনআইএক্সের বিএসএনটি (বিএসডি, লিনাক্স) শুনে আসার পর থেকেই আমাকে মুগ্ধ করে। স্টোরেজে আমার 1+ বছরের অভিজ্ঞতা আছে। আমি চাকরির পরিবর্তনের সন্ধান করছিলাম যা ভারতের পুনেতে একটি হোস্টিং সংস্থার সাথে শেষ হয়েছিল ”
সাক্ষাত্কারের সময় আমাকে যা জিজ্ঞাসা করা হয়েছিল তার সংগ্রহ এখানে। আমি কেবল সেই প্রশ্নগুলি এবং সেগুলির উত্তরগুলিকে আমার স্মৃতিভিত্তিক iptables সম্পর্কিত সম্পর্কিত নথিভুক্ত করেছি। আশা করি এটি আপনার সাক্ষাত্কারটি ক্র্যাক করতে সহায়তা করবে।
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> আমি iptables ব্যবহার করছি দীর্ঘকাল ধরে এবং আমি iptables এবং ফায়ারওয়াল উভয়ই সম্পর্কে সচেতন। ইপটেবলগুলি একটি অ্যাপ্লিকেশন প্রোগ্রাম যা বেশিরভাগ সি প্রোগ্রামিং ভাষায় লেখা হয় এবং এটি জিএনইউ জেনারেল পাবলিক লাইসেন্সের অধীনে প্রকাশিত হয়। সিস্টেম অ্যাডমিনিস্ট্রেশন পয়েন্ট অফ দ্য ভিউয়ের জন্য রচিত, iptables 1.4.21 এর সর্বশেষতম স্থিতিশীল রিলিজ প্রশাসক পূর্বনির্ধারিত টেবিলগুলিতে ফায়ারওয়াল বিধিগুলি সংযোজন এবং সংজ্ঞায়িত করতে কনসোল/জিইউআই ফ্রন্ট এন্ড সরঞ্জামগুলির মাধ্যমে আইপটিবলের সাথে যোগাযোগ করে। নেটফিল্টার কার্নেলের অভ্যন্তরে নির্মিত একটি মডিউল যা ফিল্টারিংয়ের কাজ করে।
ফায়ারওয়াল্ড হ'ল আরএইচইএল/সেন্টোস in (ফিল্টারিং নিয়মের সর্বশেষ বাস্তবায়ন যা অন্যান্য বিতরণে প্রয়োগ করা হতে পারে যা আমি অবগত নই)। এটি iptables ইন্টারফেস প্রতিস্থাপন করেছে এবং নেটফিল্টার সংযোগ।
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> যদিও আমি জিইআইআই-তে ওয়েবমিনের মতো আইপিটিবেলের জন্য জিইউআই ভিত্তিক ফ্রন্ট এন্ড সরঞ্জাম এবং কনসোলের মাধ্যমে আইপটবেলে সরাসরি অ্যাক্সেস ব্যবহার করেছি। এবং আমি স্বীকার করতেই পারি যে লিনাক্স কনসোলের মাধ্যমে iptables এ সরাসরি অ্যাক্সেস প্রদান করে ব্যবহারকারীর অপরিসীম ক্ষমতা উচ্চতর ডিগ্রি আকারে এবং অন্যান্য কিছু না হলে ব্যাকগ্রাউন্ডে কী চলছে সে সম্পর্কে আরও ভাল বোঝার আকারে। জিইউআই শিক্ষানবিশ প্রশাসকের জন্য এবং কনসোলটি অভিজ্ঞদের জন্য।
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-সারিবদ্ধ: বাম;"> উত্তর: <স্প্যান শৈলী = "বর্ণ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> iptables এবং ফায়ারওয়াল্ড একই উদ্দেশ্যে (প্যাকেট ফিল্টারিং) কিন্তু বিভিন্ন পদ্ধতির সাথে পরিবেশন করে। আইপিটিবেলগুলি ফায়ারওয়াল্ডের বিপরীতে প্রতিবার পরিবর্তন করা হলে পুরো নিয়ম সেট করে। সাধারণত iptables কনফিগারেশনের অবস্থান '/ etc/sysconfig/iptables' এ থাকে তবে ফায়ারওয়াল্ড কনফিগারেশনটি '/ etc/ফায়ারওয়াল্ড /' এ থাকে যা XML ফাইলের একটি সেট। এক্সএমএল ভিত্তিক ফায়ারওয়াল্ড কনফিগার করা iptables কনফিগারেশনের তুলনায় তুলনামূলক সহজ, তবে প্যাকেট ফিল্টারিং অ্যাপ্লিকেশন যেমন।, iptables এবং ফায়ারওয়াল্ড উভয়ই একই কাজটি অর্জন করা যেতে পারে। ফায়ারওয়াল্ড এটির নিজস্ব কমান্ড লাইন ইন্টারফেস এবং কনফিগারেশন ফাইলের পাশাপাশি আইপিএল চালায় যা এক্সএমএল ভিত্তিক এবং উপরে বলেছে।
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> আমি iptables এর সাথে পরিচিত এবং এটি কাজ করছে এবং যদি ফায়ারওয়াল্ডের গতিশীল দিকের প্রয়োজন না থাকে তবে iptables থেকে ফায়ারওয়াল্ডে আমার সমস্ত কনফিগারেশন স্থানান্তরিত করার কোনও কারণ মনে হয় না , এখনও অবধি আমি iptables কোনও সমস্যা তৈরি করতে দেখিনি। এছাড়াও তথ্য প্রযুক্তির সাধারণ নিয়ম বলছে "এটি যদি না ভাঙা হয় তবে কেন ঠিক করুন"। তবে এটি আমার ব্যক্তিগত চিন্তা এবং সংস্থাটি ফায়ারওয়াল্ডের সাথে iptables প্রতিস্থাপন করতে চলেছে তবে আমি ফায়ারওয়াল্ড বাস্তবায়নে কিছু মনে করব না।
Iptables ব্যবহার করা টেবিলগুলি কী কী? Iptables এবং তাদের সমর্থন করা চেইনগুলিতে ব্যবহৃত টেবিলগুলির একটি সংক্ষিপ্ত বিবরণ দিন।
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> স্বীকৃতির জন্য ধন্যবাদ। প্রশ্নের অংশে সরানো, iptables এ চারটি সারণী ব্যবহৃত হয়, যথা: সেগুলি হ'ল:
- নাট টেবিল
- মঙ্গলের টেবিল
- ফিল্টার টেবিল
- কাঁচা টেবিল
নেট টেবিল: নেট টেবিলটি প্রাথমিকভাবে নেটওয়ার্ক অ্যাড্রেস ট্রান্সলেশনের জন্য ব্যবহৃত হয়। মুখোশযুক্ত প্যাকেটগুলি তাদের আইপি ঠিকানাটি সারণির নিয়ম অনুসারে পরিবর্তিত হয়। স্ট্রিমের প্যাকেটগুলি নাট টেবিলটি কেবল একবারই অতিক্রম করে। উদাহরণস্বরূপ, যদি প্যাকেটের জেটের কোনও প্যাকেট মুখোশযুক্ত হয় তবে তারা স্ট্রিমের বাকী প্যাকেজগুলি আবার এই টেবিলের মধ্য দিয়ে যেতে পারবে না। এই সারণীতে ফিল্টার না করার পরামর্শ দেওয়া হচ্ছে। NAT টেবিল দ্বারা সমর্থিত চেইনগুলি হ'ল চেইনগুলি ছড়িয়ে দেওয়া, পোষ্ট্রোটিং চেইন এবং আউটপুট চেইন।
মঙ্গলের টেবিল: নামটি হিসাবে বোঝা যাচ্ছে, এই টেবিলটি প্যাকেটগুলিকে ম্যাঙ্গিল করার জন্য কাজ করে। এটি বিশেষ প্যাকেজ পরিবর্তনের জন্য ব্যবহৃত হয়। এটি বিভিন্ন প্যাকেট এবং তাদের শিরোনামের সামগ্রী পরিবর্তন করতে ব্যবহার করা যেতে পারে। মঙ্গলের টেবিলটি মাস্ক্রেডিংয়ের জন্য ব্যবহার করা যাবে না। সমর্থিত চেইনগুলি হ'ল প্রাইরিউটিং চেইন, আউটপুট চেইন, ফরোয়ার্ড চেইন, ইনপুট চেইন, পোস্টারটিং চেইন।
ফিল্টার সারণী: ফিল্টার টেবিলটি আইপটেবলগুলিতে ব্যবহৃত ডিফল্ট টেবিল। এটি প্যাকেটগুলি ফিল্টার করার জন্য ব্যবহৃত হয়। যদি কোনও নিয়ম সংজ্ঞায়িত না করা হয় তবে ফিল্টার টেবিলটি ডিফল্ট টেবিল হিসাবে নেওয়া হয় এবং এই টেবিলের ভিত্তিতে ফিল্টারিং করা হয়। সমর্থিত চেইনগুলি হ'ল ইনপুট চেইন, আউটপুট চেইন, ফরওয়ার্ড চেইন।
কাঁচা টেবিল: কাঁচা টেবিল কার্যকর হয় যখন আমরা আগে ছাড় দেওয়া প্যাকেজগুলি কনফিগার করতে চাই। এটি চেক এবং আউটপুট চেইনটিকে সমর্থন করে।
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-সারিবদ্ধ: বাম;"> উত্তর: <স্প্যান শৈলী = "বর্ণ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> নিম্নলিখিতটি হ'ল টার্গেট মানগুলি যা আমরা iptables এ লক্ষ্যবস্তুতে নির্দিষ্ট করতে পারি:
- <লি স্টাইল = "তালিকা-শৈলী-প্রকার: কিছুই নয়;">
- স্বীকৃতি: প্যাকেট গ্রহণ করুন
- ক্যু: ব্যবহারকারীর স্পেসে প্যাস প্যাকেজ (অ্যাপ্লিকেশন এবং চালকরা যেখানে থাকে)
- ড্রপ: প্যাকেটগুলি ড্রপ করুন
- প্রত্যাবর্তন: কলিং চেইনে রিটার্ন কন্ট্রোল করুন এবং চেইনে বর্তমান প্যাকেটগুলির জন্য পরবর্তী নিয়মগুলি কার্যকর করা বন্ধ করুন
CentOS এ iptables ইনস্টল করার জন্য প্রয়োজনীয় iptables RPM কীভাবে পরীক্ষা করবেন?
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> iptables RPM স্ট্যান্ডার্ড CentOS ইনস্টলেশন অন্তর্ভুক্ত এবং আমাদের এটি আলাদাভাবে ইনস্টল করার দরকার নেই। আমরা আরপিএম হিসাবে এটি পরীক্ষা করতে পারি:
# rpm -qa iptables iptables-1.4.21-13.el7.x86_64
আপনার যদি এটি ইনস্টল করতে হয় তবে এটি পেতে আপনি yum করতে পারেন।
# yum install iptables-services
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> Iptables এর স্থিতি পরীক্ষা করতে, আপনি টার্মিনালে নিম্নলিখিত কমান্ডটি চালাতে পারেন
# service iptables status [On CentOS 6/5] # systemctl status iptables [On CentOS 7]
যদি এটি চলমান না থাকে তবে নীচের কমান্ডটি কার্যকর করা যেতে পারে।
---------------- On CentOS 6/5 ---------------- # chkconfig --level 35 iptables on # service iptables start ---------------- On CentOS 7 ---------------- # systemctl enable iptables # systemctl start iptables
আমরা iptables মডিউলটি লোড হয়েছে কিনা তাও তা পরীক্ষা করতে পারি:
# lsmod | grep ip_tables
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> Iptables- র বর্তমান বিধিগুলি সাধারণ হিসাবে পর্যালোচনা করা যেতে পারে:
# iptables -L
নমুনা আউটপুট
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ACCEPT icmp -- anywhere anywhere ACCEPT all -- anywhere anywhere ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh REJECT all -- anywhere anywhere reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT) target prot opt source destination REJECT all -- anywhere anywhere reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT) target prot opt source destination
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> নির্দিষ্ট iptables চেইন ফ্লাশ করতে, আপনি নিম্নলিখিত কমান্ডগুলি ব্যবহার করতে পারেন
# iptables --flush OUTPUT
সমস্ত iptables নিয়ম ফ্লাশ করতে।
# iptables --flush
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> উপরের দৃশ্যটি কেবল নীচের কমান্ডটি চালিয়েই অর্জন করা যায়
# iptables -A INPUT -s 192.168.0.7 -j ACCEPT
উত্সটিতে আমরা স্ট্যান্ডার্ড স্ল্যাশ বা সাবনেট মাস্ক অন্তর্ভুক্ত করতে পারি:
# iptables -A INPUT -s 192.168.0.7/24 -j ACCEPT # iptables -A INPUT -s 192.168.0.7/255.255.255.0 -j ACCEPT
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> হোপিং এসএসএস 22 পোর্টে চলমান, এটি এসএসএসের জন্য ডিফল্ট পোর্টও, আমরা iptables এ নিয়মটি যুক্ত করতে পারি:
এসএসএস পরিষেবা (পোর্ট 22) এর জন্য টিসিপি প্যাকেটগুলি এসিসিপিটি করতে।
# iptables -A INPUT -s -p tcp --dport 22 -j ACCEPT
Ssh পরিষেবা (পোর্ট 22) এর জন্য tcp প্যাকেট প্রত্যাখ্যান করতে।
# iptables -A INPUT -s -p tcp --dport 22 -j REJECT
এসএসএস পরিষেবা (পোর্ট 22) এর জন্য টিসিপি প্যাকেটগুলি DENY করা।
# iptables -A INPUT -s -p tcp --dport 22 -j DENY
Ssh পরিষেবা (পোর্ট 22) এর জন্য tcp প্যাকেটগুলি ড্রপ করতে।
# iptables -A INPUT -s -p tcp --dport 22 -j DROP
<স্প্যান শৈলী = "রঙ: লাল; ফন্ট-আকার: সাধারণ; পাঠ্য-প্রান্তিককরণ: বাম;"> উত্তর: <স্প্যান শৈলী = "রঙ: # 333333;"> <স্প্যান শৈলী = "রঙ: # 333333 ; "> ওয়েল, আমাকে কেবল 'মাল্টিপোর্ট' অপশনটি ব্যবহার করতে হবে তারপরে পোর্ট নম্বরগুলি অবরুদ্ধ করতে হবে এবং উপরের দৃশ্যটি একসাথে অর্জন করা যাবে
# iptables -A INPUT -s 192.168.0.6 -p tcp -m multiport --dport 21,22,23,80 -j DROP
লিখিত নিয়মগুলি নীচের কমান্ডটি ব্যবহার করে চেক করা যেতে পারে।
# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ACCEPT icmp -- anywhere anywhere ACCEPT all -- anywhere anywhere ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh REJECT all -- anywhere anywhere reject-with icmp-host-prohibited DROP tcp -- 192.168.0.6 anywhere multiport dports ssh,telnet,http,webcache Chain FORWARD (policy ACCEPT) target prot opt source destination REJECT all -- anywhere anywhere reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT) target prot opt source destination
সাক্ষাত্কার: এটাই আমি চেয়েছিলাম। আপনি একটি মূল্যবান কর্মচারী আমরা মিস করতে চাই না। আমি আপনার নাম এইচআর এর সুপারিশ করব। আপনার যদি কোন প্রশ্ন থাকে তবে আপনি আমাকে জিজ্ঞাসা করতে পারেন।
একজন প্রার্থী হিসাবে আমি কথোপকথনটি হারাতে চাইনি, তাই নির্বাচিত হলে আমি যে প্রকল্পগুলি পরিচালনা করছি এবং সংস্থার অন্যান্য খোলার বিষয়গুলি সেগুলি সম্পর্কে জিজ্ঞাসা করুন। এইচআর রাউন্ডের উল্লেখ না করা ক্র্যাক করা কঠিন ছিল না এবং আমি সুযোগটি পেয়েছি।
এছাড়াও আমি আমার সাক্ষাত্কারটি নথিভুক্ত করার জন্য সময় দেওয়ার জন্য অবীশেক এবং রবি (যাকে আমি অনেক দিন থেকেই বন্ধু) ধন্যবাদ জানাতে চাই।
বন্ধুরা! আপনি যদি এই জাতীয় কোনও সাক্ষাত্কার দিয়ে থাকেন এবং আপনি বিশ্বব্যাপী কয়েক মিলিয়ন টেকমিন্ট পাঠকদের সাথে আপনার সাক্ষাত্কারের অভিজ্ঞতাটি ভাগ করতে চান? তারপরে আপনার প্রশ্ন এবং উত্তরগুলি [ইমেল সুরক্ষিত] এ প্রেরণ করুন বা আপনি নীচের ফর্মটি ব্যবহার করে আপনার সাক্ষাত্কারের অভিজ্ঞতা জমা দিতে পারেন।
ধন্যবাদ! সংযুক্ত থাকুন। আমি যদি আমার প্রশ্নের চেয়ে আরও সঠিকভাবে উত্তর দিতে পারতাম তবে আমাকেও জানান me