ফায়ারওয়াল্ড দিয়ে RHEL7 / CentOS7 এ বহির্গামী সংযোগগুলি ব্লক করবেন?


12

RHEL7 / CentOS7 এ একটি নতুন firewalldফায়ারওয়াল পরিষেবা উপস্থিত রয়েছে, এটি iptables service(যা উভয়ই iptablesসরঞ্জামের নীচে কার্নেলের নেটফিল্টারটির সাথে ইন্টারেক্ট করার জন্য ব্যবহার করে ) প্রতিস্থাপন করে ।

firewalldআগত ট্র্যাফিককে ব্লক করার জন্য সহজেই সুর করা যেতে পারে, তবে 1,5 বছর আগে টমাস ওয়ার্নারের দ্বারা উল্লেখ করা হয়েছিল "বহির্গামী ট্র্যাফিক সীমাবদ্ধ করা এই মুহূর্তে ফায়ারওয়াল্ড দিয়ে একটি সহজ উপায়ে সম্ভব নয়"। এবং যতদূর আমি দেখতে পাচ্ছি পরিস্থিতি তার পরে আর পরিবর্তন হয়নি। নাকি আছে? বহির্গামী ট্র্যাফিক দিয়ে কি কোনও উপায় আছে firewalld? যদি না হয় অন্য কোনও "স্ট্যান্ডার্ড" উপায় আছে (আরএইচইইএল 7 ডিস্ট্রোতে) iptablesহাতিয়ারের মাধ্যমে ম্যানুয়ালি বিধি যুক্ত করা ব্যতীত বহির্গামী ট্র্যাফিককে ব্লক করার ?

উত্তর:


13

আমি সেই চমৎকার জিইউআইতে কোনও বিকল্প পাইনি, তবে এটি সরাসরি ইন্টারফেসের মাধ্যমে সম্ভব

শুধুমাত্র বহির্গামী পোর্ট 80 সক্ষম করতে:

firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p tcp -m tcp --dport=80 -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -j DROP

এটি রানটাইম নিয়মগুলিতে নয়, স্থায়ী নিয়মে যুক্ত করবে।
আপনাকে স্থায়ী নিয়মগুলি পুনরায় লোড করতে হবে যাতে সেগুলি রানটাইম বিধি হয়ে যায়।

firewall-cmd --reload

স্থায়ী বিধি প্রদর্শন করতে

firewall-cmd --permanent --direct --get-all-rules

রানটাইম বিধি প্রদর্শন করতে

firewall-cmd --direct --get-all-rules

প্রকৃত সমৃদ্ধ-ভাষা ব্যবহার করে কেউ কীভাবে এটি অর্জন করতে পারে?
কেসি

@ ক্যাসি আমার বুঝতে পেরে, সমৃদ্ধ নিয়মগুলি কঠোরভাবে ইনপুট চেইনের জন্য ব্যবহৃত হয়।
ধান

আমি ধারণা করি উপরোক্ত নিয়মগুলি কেবল ipv4(iptables) এর জন্য কাজ করে । ipv6(Ip6tables জন্য) বা eb(ebtables জন্য ) অনুরূপ নিয়ম থাকা বাঞ্ছনীয় হতে পারে ।
mwfearnley

এছাড়াও, এটি সার্ভারের সাথে আমার এসএসএইচ সংযোগটি মেরে ফেলেছে! প্রতিষ্ঠিত সংযোগগুলি কীভাবে বজায় রাখা যায় তার জন্য ব্যবহারকারীর 253068 এর উত্তর দেখুন।
mwfearnley

6

আমি একই প্রশ্নটি জিজ্ঞাসা করার পরে এবং কিছুটা ঝুঁকির সাথে, আমি এইচটিটিপি / এইচটিটিপিএস এবং ডিএনএস অনুসন্ধানগুলিতে বহির্গামী ট্র্যাফিক সীমাবদ্ধ করার জন্য কিছু সুন্দর নিয়ম সংগ্রহ করেছি:

প্রতিষ্ঠিত সংযোগগুলির অনুমতি দিন:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -m state --state ESTABLISHED,RELATED -j ACCEPT

HTTP কে মঞ্জুরি দিন:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 80 -j ACCEPT

এইচটিটিপিএসের অনুমতি দিন:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 443 -j ACCEPT

ডিএনএস প্রশ্নের জন্য অনুমতি দিন:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 53 -j ACCEPT
# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p udp --dport 53 -j ACCEPT

অন্য সব কিছু অস্বীকার করুন:

# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 2 -j DROP

'- স্থায়ী' যুক্তি বাদ দিয়ে প্রথমে পরীক্ষা করা ভাল ধারণা হতে পারে।

আমি কোনও উপায়েই বিশেষজ্ঞ নই, তবে এটি আমার দ্বারা ভাল কাজ করছে বলে মনে হচ্ছে :)


কিছু সময় আপনি নিয়ম মুছে ফেলার জন্য দরকারী মনে হতে পারে। একক প্রত্যক্ষ নিয়ম firewall-cmd [--permanent] --direct --remove-rules ipv4 filter OUTPUTসরিয়ে ফেলা মুশকিল বলে মনে হয় তবে স্লেজহ্যামারের জন্য এটি প্রচুর পরিমাণে অপসারণ করবে।
mwfearnley

1

জিইউআই সম্পর্কিত; আমি মনে করি আপনি এটি " ডাইরেক্ট কনফিগারেশন " এর আওতায় পেয়েছেন । এটি অ্যাক্সেস করতে আপনাকে এটিকে " ভিউ " তে নির্বাচন করতে হবে । আমার ভুল হতে পারে.

সাইড নোট

বিধি মোছার জন্য; আপনাকে প্রস্থান করতে হবে এবং তারপরে পুনরায় প্রবেশ করতে হবে।

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