Artikel ini memberikan informasi dasar tentang cara menggunakan firewalld
perangkat lunak firewall. Firewall ini adalah solusi firewall default untuk distribusi Linux® berbasis RHEL® 7 dan CentOS® 7.
Catatan :Jika Anda perlu membuat perubahan pada firewall Anda di server RackConnect®, Anda harus melakukannya melalui Pengelola Firewall Khusus.
Prasyarat
Anda harus memiliki prasyarat berikut:
- Pemahaman dasar tentang Secure Shell (SSH®)
- Sudo atau akses administratif ke server Anda
- Server Cloud non-RackConnect yang menjalankan RHEL 7 atau CentOS 7
Apa itu firewall?
firewalld
service adalah solusi firewall perangkat lunak default dan paling umum yang digunakan di RHEL dan CentOS 7. Ini adalah pembungkus iptables
yang menggunakan sintaks berbeda untuk menerapkan aturan baru.
Bagaimana cara kerja firewalld?
firewalld
layanan menggunakan zona untuk mengontrol akses firewall. Zona adalah kumpulan aturan yang telah dibuat sebelumnya untuk berbagai tingkat kepercayaan. Anda mungkin memiliki zona untuk lokasi atau skenario tertentu, seperti home
, public
, atau trusted
. Zona yang berbeda memungkinkan layanan jaringan yang berbeda dan jenis lalu lintas masuk sambil menolak yang lainnya. Setelah Anda mengaktifkan firewalld
untuk pertama kalinya, public
adalah zona default.
Berikut adalah beberapa contoh zona:
Zona | Apa fungsinya |
---|---|
public | Ini adalah eksternal zona atau zona yang menghadap ke Internet. Anda tidak mempercayai koneksi yang berasal dari dunia luar dan hanya mengizinkan layanan tertentu. |
internal | Ini secara tradisional adalah di dalam jaringan di belakang firewall. |
dmz | Zona ini untuk digunakan pada komputer yang terletak di DMZ (zona demiliterisasi). Hanya koneksi masuk tertentu yang dapat mengakses jaringan internal yang dibatasi. |
drop | Lalu lintas ditujukan untuk drop zona dijatuhkan tanpa jawaban apapun. Gunakan ini sebagai lubang hitam untuk IP berbahaya. |
trusted | trusted menerima semua koneksi. Gunakan zona ini dengan hemat. |
Mengaktifkan dan memeriksa status firewalld
Sebelum memulai, Anda perlu memastikan bahwa firewalld
sedang berjalan di server Anda. Anda dapat memeriksa dengan perintah berikut:
firewall-cmd --state
Jika layanan dimulai, Anda akan menerima output yang menunjukkan layanan sedang berjalan.
Jika layanan tidak berjalan, Anda dapat memulai layanan dengan menjalankan perintah berikut:
systemctl start firewalld
Anda juga dapat mengaktifkan firewalld
untuk memulai saat boot dengan menjalankan perintah berikut:
systemctl enable firewalld
Zona di firewalld
Sebelum menambahkan aturan, Anda perlu meninjau setelan default di firewalld
.
Untuk memeriksa zona default di firewalld
, Anda dapat menjalankan perintah berikut:
firewall-cmd --get-default-zone
Secara default, zona ini disetel ke public
. Anda dapat melihat zona lain dengan menggunakan perintah berikut:
firewall-cmd --get-zones
Perintah ini mencantumkan zona yang tersedia di firewalld
.
Seperti disebutkan sebelumnya, zona yang berbeda di firewalld
memiliki fungsi yang berbeda. Anda dapat menentukan zona dan koneksi pengontrol ethernet untuk mendapatkan kontrol lebih besar atas akses ke server Anda, tetapi untuk tujuan Rackspace, Anda menggunakan konfigurasi default dan memodifikasi public
zona.
firewalld
dasar aturan anatomi
Saat Anda menulis firewalld
aturan, Anda memerlukan beberapa item dasar dalam aturan.
-
Tentukan perintahnya.
-
Tentukan zona dan ubah.
-
Tetapkan kegigihan.
Menempatkan semua itu bersama-sama, Anda mendapatkan sesuatu seperti contoh berikut:
firewall-cmd --zone=public --add-source=127.0.0.1 --permanent
Perintah ini memungkinkan akses dari IP 127.0.0.1
ke public
daerah. Ada flag lain yang tersedia, tetapi ini adalah konstruksi dasar dari firewalld
aturan.
Bendera permanen dan aturan kaya
Bendera permanen dapat menyetel persistensi aturan dan mengaktifkan penyempurnaan aturan dengan menggunakan aturan yang kaya .
Bendera permanen
Menggunakan flag permanen tidak mengaktifkan aturan dalam konfigurasi yang sedang berjalan. Untuk memastikan aturan tetap ada, Anda perlu menambahkan aturan untuk kedua kalinya dengan bendera permanen.
Contoh bendera permanen:
firewall-cmd --add-source=12.345.67.89 --zone=trusted --permanent
Aturan yang kaya
Aturan yang kaya menawarkan lebih banyak kontrol dengan memiliki opsi granular khusus. Aturan yang kaya dapat mengonfigurasi logging, penyamaran, penerusan port, dan pembatasan kecepatan.
Contoh aturan kaya:
firewall-cmd --add-rich-rule='rule family=ipv4 source address="123.45.69.78" port port="11" protocol=tcp accept' --permanent
Catatan :Campuran aturan yang kaya dan aturan biasa dapat menyebabkan konfigurasi yang berantakan. Hanya menggunakan aturan yang kaya untuk aturan tertentu, seperti akses SSH, dapat membantu menjaga penyiapan Anda tetap bersih.
Contoh perintah
Terakhir, berikut adalah beberapa contoh firewalld
perintah.
Perintah | Apa fungsinya |
---|---|
firewall-cmd --add-source=12.345.67.89 --zone=trusted | Perintah ini menerima lalu lintas dari IP yang ditentukan ke zona tepercaya. |
firewall-cmd --zone=drop --add-source=12.345.67.89/24 | Perintah ini menurunkan lalu lintas dari rentang IP yang ditentukan. |
firewall-cmd --zone=public --add-service=ssh | Perintah ini mengizinkan lalu lintas melalui SSH di zona publik. |
firewall-cmd --zone=public --list-all | Perintah ini mencantumkan semua spesifikasi yang ditetapkan untuk zona, seperti sumber, layanan, aturan kaya, dan sebagainya. |
firewall-cmd --add-rich-rule='rule family=ipv4 source address="123.456.789.123" port port="22" protocol=tcp accept' --permanent | Perintah ini menambahkan aturan kaya untuk mengizinkan akses dari IP yang ditentukan pada port 22 melalui TCP pada public zona. |
Bacaan lebih lanjut
Dokumen ini hanya menggores permukaan kemungkinan dengan firewalld
. Anda dapat meninjau man
halaman untuk firewalld
atau tinjau dokumentasi resmi untuk firewalld
di https://firewalld.org/documentation/man-pages/firewall-cmd.html.