আরএইচইএল 7-তে কেবল ফায়ারওয়াল্ড দিয়ে সেভ করার কোনও উপায় আছে?


11

আমি আরএইচইএল 7 ব্যবহার করা শুরু করছি এবং সিস্টেমডের সাথে আসা পরিবর্তনগুলি সম্পর্কে কিছুটা শিখছি।

/sbin/service iptables saveফায়ারওয়াল্ডে পারফর্ম করার কোনও উপায় আছে কি ?

$ /sbin/service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.

ডকুমেন্টেশন থেকে আমি যে নিকটতম সমান্তরাল সন্ধান করতে পারি তা হ'ল --reload:

Reload the firewall without loosing state information:
$ firewall-cmd --reload

তবে এটি সংরক্ষণ করছে কিনা তা স্পষ্টভাবে বলে না।

উত্তর:


21

RHEL 7.0 এ ফায়ারওয়াল্ডের সংস্করণটির কোনও "সেভ" স্ক্রিপ্ট নেই এবং চলমান ফায়ারওয়াল কনফিগারেশন স্থায়ী কনফিগারেশনে অনুলিপি করার কোনও উপায় নেই। আপনি ফায়ারওয়াল্ডের সাথে ফায়ারওয়াল পরিবর্তনটি সংরক্ষণ --permanentকরে কমান্ড লাইনে পরিবর্তন যুক্ত করে সংরক্ষণ করুন। এটি ছাড়াই আপনার করা যে কোনও পরিবর্তন অস্থায়ী এবং সিস্টেম পুনরায় চালু হওয়ার পরে হারিয়ে যাবে।

উদাহরণ স্বরূপ:

firewall-cmd --add-service=http                 # Running config
firewall-cmd --add-service=http --permanent     # Startup config

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

firewall-cmd --runtime-to-permanent

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

2
মনে রাখবেন যে --runটাইম থেকে স্থায়ী কমান্ড ট্যাব সমাপ্তিতে প্রদর্শিত হবে না, তবে এটি প্রকৃতপক্ষে (একটি CentOS 7.5 সিস্টেমে পরীক্ষিত) রয়েছে)
ডোডেক্সাহেড্রন

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

0

আমার এসআইপি পরিষেবা এবং কিছু আইপি যুক্ত করা দরকার

ডিরেক্টরিটিতে / usr / lib / ফায়ারওয়াল্ড / পরিষেবাদি / আমি অন্যান্য এক্সএমএল পরিষেবা ফাইলের উপর ভিত্তি করে sip.xML যুক্ত করেছি

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>SIP</short>
  <description>This is SIP, Yo! </description>
  <port protocol="udp" port="5060"/>
</service>

তারপরে আমি একটি ফায়ারওয়াল্ডে সিপ পরিষেবা যুক্ত করলাম

# firewall-cmd --add-service=sip --permanent 

তারপরে আমি /etc/firewalld/zones/public.xML এ পরিষেবাতে আইপি যুক্ত করেছি

<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description></description>
  <service name="dhcpv6-client"/>
  <service name="http"/>
  <service name="ssh"/>
  <service name="https"/>

  <rule family="ipv4">
    <source address="x.x.x.x/32"/>
    <service name="sip"/>
    <accept/>
  </rule>

</zone>

আপনি যদি লগিংয়ের স্তর যোগ করেন তবে আপনি এলওজিও যুক্ত করতে পারেন

  <rule family="ipv4">
    <source address="x.x.x.x/32"/>
    <service name="sip" 
    <log prefix="sip" level="info"/>
    <accept/>
  </rule>

আপনি আপনার জোনে বিধি যুক্ত করার পরে, কার্যকর করুন

# firewall-cmd --reload

আপনার iptables চেক করুন - আপনার প্রস্তুত হওয়া উচিত।

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