Cara Mengkonfigurasi Firewalld dalam Pengagihan Berasaskan RHEL

Cara Mengkonfigurasi Firewalld dalam Pengagihan Berasaskan RHEL

Penapis bersih Seperti yang kita semua tahu ia adalah firewall di linux. Firewalld adalah daemon yang dinamik untuk menguruskan firewall dengan sokongan untuk zon rangkaian. Dalam versi terdahulu, RHEL & Centos Kami telah menggunakan iptables sebagai daemon untuk rangka penapisan paket.

Dalam versi baru pengagihan berasaskan RHEL seperti Fedora, Rocky Linux, CentOS Stream, Almalinux, dan opensuse - The IPTABLES antara muka digantikan oleh Firewalld.

[Anda mungkin juga suka: 10 Firewall Keselamatan Sumber Terbuka Berguna untuk Sistem Linux]

Disarankan untuk mula menggunakan Firewalld bukan IPTABLES kerana ini mungkin berhenti di masa depan. Walau bagaimanapun, IPTABLES masih disokong dan boleh dipasang dengan perintah yum. Kita tidak dapat menyimpannya Firewalld dan IPTABLES kedua -duanya dalam sistem yang sama yang boleh menyebabkan konflik.

Dalam IPTABLES, Kami biasa mengkonfigurasi sebagai Input, PENGELUARAN & Rantai ke hadapan Tetapi di sini Firewalld, Konsep ini digunakan Zon. Secara lalai, terdapat zon yang berbeza yang terdapat di Firewalld, yang akan dibincangkan dalam artikel ini.

The Zon Asas yang seperti Zon Awam dan zon persendirian. Untuk membuat perkara berfungsi dengan zon -zon ini, kita perlu menambah antara muka dengan sokongan zon yang ditentukan dan kemudian kita dapat menambahkan perkhidmatan ke Firewalld.

Secara lalai, terdapat banyak perkhidmatan yang tersedia, salah satu ciri terbaik Firewalld adalah, ia dilengkapi dengan perkhidmatan yang telah ditetapkan dan kami dapat mengambil perkhidmatan ini sebagai contoh untuk menambah perkhidmatan kami dengan hanya menyalinnya.

Firewalld Bekerja hebat dengan IPv4, IPv6, dan Jambatan Ethernet juga. Kita boleh mempunyai konfigurasi jangka masa dan tetap yang berasingan di firewalld.

Mari kita mulakan bagaimana untuk bekerja dengan zon dan buat perkhidmatan kita sendiri dan penggunaan yang lebih menarik Firewalld di Linux.

Persekitaran ujian kami

Sistem operasi : Red Hat Enterprise Linux Release 9.0 (Bajak) Alamat IP : 192.168.0.159 Nama tuan rumah : TECMINT-RHEL9 
Sistem ujian RHEL 9

Langkah 1: Memasang Firewalld dalam Sistem Berasaskan RHEL

1. Firewalld pakej dipasang secara lalai dalam RHEL, Fedora, Rocky Linux, CentOS Stream, Almalinux, dan opensuse. Jika tidak, anda boleh memasangnya menggunakan arahan yum berikut.

# yum pasang firewalld -y 
Pasang Firewalld di Linux

2. Selepas Firewalld pakej telah dipasang, sudah tiba masanya untuk mengesahkan sama ada IPTABLES perkhidmatan berjalan atau tidak, jika berjalan, anda perlu berhenti dan topeng (tidak menggunakan lagi) IPTABLES perkhidmatan dengan arahan di bawah.

# Sistem Status Sistem Ippables # Systemctl Stop Ippables # SystemCtl Mask iptables 
Lumpuhkan iptables di linux

Langkah 2: Memahami Komponen Firewalld (Zon dan Peraturan)

3. Sebelum menuju ke Firewalld konfigurasi, saya ingin membincangkan setiap zon. Secara lalai, terdapat beberapa zon yang ada. Kita perlu menetapkan antara muka ke zon. Zon mentakrifkan zon yang dipercayai atau dinafikan ke antara muka untuk mendapatkan sambungan. Zon boleh mengandungi perkhidmatan & pelabuhan.

Di sini, kami akan menerangkan setiap zon yang terdapat di Firewalld.

  • Drop Zone: Sebarang paket masuk dijatuhkan jika kami menggunakan zon drop. Ini sama seperti yang kita gunakan untuk menambah IPTABLES -J Drop. Sekiranya kita menggunakan peraturan drop, bermakna tidak ada balasan, hanya sambungan rangkaian keluar yang akan tersedia.
  • Zon blok: Zon blok akan menafikan sambungan rangkaian masuk ditolak dengan ICMP-host-dilancarkan. Hanya sambungan yang ditetapkan dalam pelayan akan dibenarkan.
  • Zon Awam: Untuk menerima sambungan yang dipilih, kami dapat menentukan peraturan di zon awam. Ini hanya akan membolehkan port khusus dibuka di pelayan kami sambungan lain akan dijatuhkan.
  • Zon luaran: Zon ini akan bertindak sebagai pilihan penghala dengan penyamaran yang didayakan sambungan lain akan dijatuhkan dan tidak akan diterima, dan hanya sambungan yang ditentukan akan dibenarkan.
  • Zon DMZ: Sekiranya kita perlu membenarkan akses kepada beberapa perkhidmatan kepada orang ramai, anda boleh menentukannya di zon DMZ. Ini juga mempunyai ciri hanya sambungan masuk yang dipilih yang diterima.
  • Zon Kerja: Di zon ini, kita hanya dapat menentukan rangkaian dalaman i.e. Trafik Rangkaian Persendirian dibenarkan.
  • Zon rumah: Zon ini digunakan secara khusus di kawasan rumah, kita boleh menggunakan zon ini untuk mempercayai komputer lain di rangkaian untuk tidak membahayakan komputer anda seperti di setiap zon. Ini juga hanya membolehkan sambungan masuk yang dipilih.
  • Zon dalaman: Yang ini serupa dengan zon kerja dengan sambungan yang dibenarkan yang dipilih.
  • Zon yang dipercayai: Sekiranya kita menetapkan zon yang dipercayai semua lalu lintas diterima.

Sekarang anda mempunyai idea yang lebih baik mengenai zon, sekarang mari kita cari zon yang tersedia, dan zon lalai, dan senaraikan semua zon menggunakan arahan berikut.

Senaraikan zon firewalld

# Firewall-CMD-Zon-Zon 
Senaraikan zon firewalld yang ada

Senaraikan zon lalai firewalld

# Firewall-CMD-DEP-DEFAULT-ZONE 
Senaraikan zon lalai firewalld

Senaraikan semua zon firewalld

# Firewall-CMD-list-all-zon 
Senaraikan zon firewalld

Catatan: Output arahan di atas tidak akan sesuai dengan satu halaman kerana ini akan menyenaraikan setiap zon seperti blok, dmz, drop, luaran, rumah, dalaman, awam, dipercayai, dan bekerja. Sekiranya zon mempunyai peraturan yang kaya, perkhidmatan yang diaktifkan atau pelabuhan juga akan disenaraikan dengan maklumat zon masing -masing.

Langkah 3: Menetapkan zon firewalld lalai

4. Jika anda ingin menetapkan zon lalai sebagai dalaman, luaran, drop, kerja, atau zon lain, anda boleh menggunakan arahan di bawah untuk menetapkan zon lalai. Di sini kita menggunakan "dalaman"Zon sebagai lalai.

# firewall-cmd-set-default-zon = dalaman 

5. Setelah menetapkan zon, sahkan zon lalai menggunakan arahan di bawah.

# Firewall-CMD-DEP-DEFAULT-ZONE 
Tetapkan zon firewalld lalai

6. Di sini, antara muka kami adalah ENP0S3, Sekiranya kita perlu menyemak zon di mana antara muka dibatasi, kita boleh menggunakan arahan di bawah.

# firewall-cmd --get-zon-of-interface = enp0s3 
Semak Antara Muka Rangkaian Zon Firewalld

7. Satu lagi ciri menarik firewalld adalah 'icmptype'adalah salah satu jenis ICMP yang disokong oleh Firewalld. Untuk mendapatkan penyenaraian jenis ICMP yang disokong, kami boleh menggunakan arahan di bawah.

# Firewall-Cmd --get-icmptypes 
Senaraikan Jenis ICMP Firewalld

Langkah 4: Membuat perkhidmatan sendiri di Firewalld

8. Perkhidmatan adalah satu set peraturan dengan pelabuhan dan pilihan yang digunakan oleh Firewalld. Perkhidmatan yang didayakan, akan dimuat secara automatik apabila Firewalld Perkhidmatan sedang berjalan dan berjalan.

Secara lalai, banyak perkhidmatan tersedia, untuk mendapatkan senarai semua perkhidmatan yang ada, gunakan arahan berikut.

# Firewall-CMD-Gelang-perkhidmatan 
Senaraikan perkhidmatan firewalld

9. Untuk mendapatkan senarai semua perkhidmatan lalai yang tersedia, pergi ke direktori berikut, di sini anda akan mendapat senarai perkhidmatan.

# cd/usr/lib/firewalld/perkhidmatan/ 
Senaraikan perkhidmatan firewalld lalai

10. Untuk membuat perkhidmatan anda sendiri, anda perlu menentukannya di lokasi berikut. Contohnya, di sini saya ingin menambah perkhidmatan untuk Rtmp pelabuhan 1935, Pertama buat salinan mana -mana perkhidmatan.

# cd/etc/firewalld/perkhidmatan/ # cp/usr/lib/firewalld/perkhidmatan/ssh.xml/etc/firewalld/perkhidmatan/ 

Dan kemudian, navigasi ke lokasi di mana fail perkhidmatan kami disalin, namakan semula fail 'seterusnyaSSH.XML'ke'rtmp.XML'Seperti yang ditunjukkan dalam gambar di bawah.

# cd/etc/firewalld/perkhidmatan/ # mv ssh.XML RTMP.xml # ls -l rtmp.XML 
Buat Perkhidmatan di Firewalld

11. Seterusnya buka dan edit fail sebagai Tajuk, Penerangan, Protokol, dan Pelabuhan nombor, yang perlu kita gunakan untuk Rtmp perkhidmatan seperti yang ditunjukkan dalam gambar di bawah.

Konfigurasikan perkhidmatan firewalld

12. Untuk membuat perubahan ini diaktifkan, mulakan semula perkhidmatan firewalld, atau muat semula tetapan.

# Firewall-CMD-Reload 

13. Untuk mengesahkan, sama ada perkhidmatan ditambah atau tidak, jalankan arahan di bawah untuk mendapatkan senarai perkhidmatan yang ada.

# Firewall-CMD-Gelang-perkhidmatan 
Sahkan perkhidmatan tambahan dalam firewall

Langkah 5: Menetapkan perkhidmatan ke zon firewalld

14. Di sini kita akan melihat cara menguruskan firewall menggunakan arahan firewall-cmd. Untuk mengetahui keadaan semasa firewall dan semua zon aktif, taipkan arahan berikut.

# firewall-cmd-state # firewall-cmd-zon-zon-aktif 
Semak status firewalld

15. Untuk mendapatkan zon awam untuk antara muka ENP0S3, ini adalah antara muka lalai, yang ditakrifkan dalam /etc/firewalld/firewalld.Conf fail sebagai DefaultZone = awam.

Untuk menyenaraikan semua perkhidmatan yang ada di zon antara muka lalai ini.

# Firewall-CMD-Get-Service 
Senaraikan perkhidmatan firewalld

Langkah 6: Menambah perkhidmatan ke zon firewalld

16. Dalam contoh di atas, kita telah melihat bagaimana untuk membuat perkhidmatan kita sendiri dengan mencipta rtmp perkhidmatan, di sini kita akan melihat cara menambah rtmp perkhidmatan ke zon juga.

# firewall-cmd --add-service = rtmp 

17. Untuk mengeluarkan zon tambahan, taipkan.

# firewall-cmd-zone = awam-remove-service = rtmp 

Langkah di atas adalah tempoh sementara sahaja. Untuk menjadikannya kekal, kita perlu menjalankan arahan di bawah dengan pilihan -kekal.

# firewall-cmd --add-service = rtmp --permanent # firewall-cmd-reload 

18. Tentukan peraturan untuk rangkaian sumber rangkaian dan buka salah satu pelabuhan. Sebagai contoh, jika anda ingin membuka rangkaian rangkaian katakan '192.168.0.0/24'dan pelabuhan'1935'Gunakan arahan berikut.

# firewall-cmd --permanent --add-source = 192.168.0.0/24 # Firewall-CMD --PerManent --Add-Port = 1935/TCP 

Pastikan untuk memuatkan semula perkhidmatan firewalld setelah menambahkan atau mengeluarkan sebarang perkhidmatan atau pelabuhan.

# firewall-cmd-reload # firewall-cmd --list-all 
Tambahkan Perkhidmatan ke Firewalld

Langkah 7: Menambah Peraturan Kaya Firewalld untuk Julat Rangkaian

19. Sekiranya saya ingin membenarkan perkhidmatan seperti HTTP, HTTPS, VNC-SERVER, dan POSTGRESQL, saya menggunakan peraturan berikut. Pertama, tambahkan peraturan dan menjadikannya kekal dan muat semula peraturan dan periksa statusnya.

# firewall-cmd-family-rule-rich-rule 'family = "ipv4" source alamat = "192.168.0.0/24 "Nama Perkhidmatan =" Http "Terima ' # Firewall-Cmd --Add-Rich-Rule' Rule Family =" IPv4 "Sumber Alamat =" 192.168.0.0/24 "Nama Perkhidmatan =" Http "Terima '--ParManent # Firewall-Cmd --Add-Rich-Rule' Rule Family =" IPv4 "Sumber Alamat =" 192.168.0.0/24 "Nama Perkhidmatan =" Https "Terima ' # Firewall-Cmd --Add-Rich-Rule' Rule Family =" IPv4 "Sumber Alamat =" 192.168.0.0/24 "Nama Perkhidmatan =" Https "Terima '--ParManent # Firewall-Cmd --Add-Rich-Rule' Rule Family =" IPv4 "Sumber Alamat =" 192.168.0.0/24 "Nama Perkhidmatan =" VNC-Server "menerima ' # Firewall-Cmd --Add-Rich-Rule' Family Family =" IPv4 "Sumber Alamat =" 192.168.0.0/24 "Nama Perkhidmatan =" VNC-Server "menerima '--ParManent # Firewall-Cmd --Add-Rich-Rule' Rule Family =" IPv4 "Sumber Alamat =" 192.168.0.0/24 "Nama Perkhidmatan =" PostgreSql "Terima ' # Firewall-Cmd --Add-Rich-Rule Family =" IPv4 "Sumber Alamat =" 192.168.0.0/24 "Nama Perkhidmatan =" PostgreSql "Terima '--ParManent 

Sekarang, julat rangkaian 192.168.0.0/24 boleh menggunakan perkhidmatan di atas dari pelayan saya. Pilihan -kekal boleh digunakan dalam setiap peraturan, tetapi kita harus menentukan peraturan dan periksa dengan akses klien setelah itu kita harus menjadikannya tetap.

20. Selepas menambah peraturan di atas, jangan lupa untuk memuatkan semula peraturan firewall dan senaraikan peraturan menggunakan:

# firewall-cmd-reload # firewall-cmd --list-all 
Senaraikan semua peraturan aktif firewalld

Untuk mengetahui lebih lanjut mengenai Firewalld.

# Man Firewalld 

Itu sahaja, kita telah melihat bagaimana untuk menubuhkan a penapis bersih menggunakan Firewalld dalam pengagihan berasaskan RHEL seperti Fedora, Rocky Linux, CentOS Stream, Almalinux, dan opensuse.

Kesimpulan

Penapis bersih adalah kerangka untuk firewall untuk setiap pengedaran Linux. Kembali ke dalam setiap RHEL dan Centos edisi, kami menggunakan IPTABLES Tetapi dalam versi yang lebih baru, mereka telah memperkenalkan Firewalld. Lebih senang memahami dan menggunakan firewalld. Semoga anda menikmati penulisan.