বুট করার সময় কি আমাকে প্রতিবার iptable নিয়মগুলি পুনরুদ্ধার করতে হবে?


18

প্রতিবার আমি রিবুট করার সময় আমি iptables নিয়মগুলি looseিলে করে যা আমাকে প্রবেশ করতে এত লম্বা করে তুলেছিল। আমি জানি আমি সেগুলি সংরক্ষণ করতে পারি এবং সেগুলি বুটে পুনরুদ্ধার করতে পারি তবে এগুলি কি চিরতরে সংরক্ষণ করার মতো আছে? আমার কি প্রতিটি বার বুটে পুনরায় পুনরুদ্ধার করা দরকার? সিরিয়াসলি?

সমস্যাটি হ'ল আমার কাছে আইপিগুলির একটি বিশাল তালিকা রয়েছে যাতে আমি এগুলি লোড করতে কিছুক্ষণ লুপ ব্যবহার করি This এটি 10 ​​মিনিটের বেশি সময় নিতে পারে।

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

আমি তালিকাতে লোড করতে লুপটি ব্যবহার করি।

grep INPUT block.list | while read LISTA; do sudo iptables -A $LISTA; done

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

উত্তর:


21

প্রথমে এর লিখিত সামগ্রীগুলির সাথে একটি ফাইল তৈরি করুন iptables-save:

sudo iptables-save > /etc/iptables_rules

আপনি ফাইলটি কোথায় রেখেছেন তা বিবেচ্য নয়, আপনাকে যা করতে হবে তা নিশ্চিত হ'ল পরের লাইনটি একই ফাইলটিকে বোঝায়। এরপরে, /etc/rc.localএই লাইনটি খুলুন এবং যুক্ত করুন:

/sbin/iptables-restore < /etc/iptables_rules

এখন থেকে, প্রতিবার আপনার কম্পিউটারের ক্ষমতা বা tttables পুনরায় চালু করা আপনার নির্দিষ্ট করা ফাইল থেকে নিয়মগুলি লোড করবে।


1
আমি -bash: /etc/iptables_rules: Permission deniedপ্রথম কমান্ড পেয়েছি । যা সুডো এবং সমস্ত ব্যবহার করে অদ্ভুত।
ক্যাপড্রাগন

5
ত্রুটিটি sudo sh -c '/sbin/iptables-save > /etc/iptables.save'পেতে আমাকে ব্যবহার করতে হয়েছিল Permission deniedতথ্যসূত্র
ক্যাপড্রাগন

আপনি যে কোনও ডিরেক্টরিতে ফাইল তৈরি করতে পারেন / etc /
পঙ্কজ শর্মা

8
আমি এটির /etc/rc.localজন্য ব্যবহারের পরামর্শ দেব না । এটি আপনার সিস্টেমের বাকী প্রারম্ভের পরে পরে কার্যকর করা হয় এবং সম্ভাব্যত আপনার সিস্টেমটিকে অ-ফায়ারওয়াল অবস্থায় রেখে দেয়। আমি এই এক-লাইন স্ক্রিপ্টটি /etc/network/if-up.d/firewall(নতুন ফাইল) এ রাখার পরামর্শ দেব । এটি আপনার নেটওয়ার্ক ইন্টারফেসগুলি সক্ষম করার পরে এটি কার্যকর করা হবে তা নিশ্চিত করে।
জার্মটভিডিজক

2
অনুমতি ত্রুটিটি স্বাভাবিক / প্রত্যাশিত। sudo কেবল ">" এর আগে কমান্ডের ক্ষেত্রে প্রযোজ্য, ফাইলটি পুনর্নির্দেশটি আপনার শেল দ্বারা আলাদাভাবে করা হবে।
ImaginaryRobots

16
apt-get install iptables-persistent

ইনস্টল করার সময় এটি আপনার বর্তমান iptables কনফিগারেশন সংরক্ষণ করবে। অন্যথায় আপনি এগুলিকে এই ফাইলগুলিতে সংরক্ষণ করতে পারেন (ভি 4 বা ভি 6 এর উপর নির্ভর করে) এবং iptables- ধ্রুবক এগুলি বুটে লোড করবে :)

iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6

1

আপনার যদি প্রচুর নিয়ম থাকে তবে আপনার আইপেটেবলের সাথে মিলিয়ে আইপসেট ব্যবহার করাও বিবেচনা করা উচিত। আইপসেট একটি সূচকযুক্ত ডাটাবেস টেবিল ব্যবহার করে এবং মেনে নেওয়া বা অস্বীকার করার সিদ্ধান্ত নেওয়ার জন্য কোনও ঠিকানা খুঁজতে গিয়ে iptables এর চেয়ে অনেক দ্রুত।

http://ipset.netfilter.org/index.html

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