Pelajari Linux

Kelola keamanan jaringan dengan Firewalld menggunakan baris perintah

Kelola keamanan jaringan dengan Firewalld menggunakan baris perintah

Menjaga keamanan jaringan adalah kunci bagi admin sistem dan mengonfigurasi firewall melalui baris perintah adalah keterampilan penting untuk dipelajari. Artikel ini akan menyoroti cara mengelola firewall dengan firewall-cmd di baris perintah Linux.

Firewall pada dasarnya adalah perangkat lunak yang dapat Anda konfigurasikan untuk mengontrol lalu lintas jaringan yang masuk dan keluar. Firewall dapat mencegah pengguna lain menggunakan layanan jaringan pada sistem yang Anda jalankan. Sebagian besar sistem Linux dikirimkan dengan firewall default. Versi sistem Linux sebelumnya telah menggunakan iptables sebagai daemon untuk penyaringan paket. Versi Fedora, RHEL/CentOS, openSUSE yang lebih baru dikirimkan dengan Firewalld sebagai daemon firewall default. Anda juga dapat menginstal Firewalld di distro Debian dan Ubuntu.


Saya sarankan Anda menggunakan Firewalld daripada iptables. Jangan hanya mengambil kata-kata saya untuk itu. Pelajari lebih lanjut dari panduan komprehensif kami tentang firewall sumber terbuka yang tersedia untuk sistem Linux Anda.

Firewalld adalah daemon dinamis untuk mengelola firewall dengan dukungan untuk jaringan atau zona firewall. Zona firewall menentukan tingkat kepercayaan keamanan jaringan dari antarmuka jaringan, layanan, atau koneksi. Admin sistem keamanan jaringan telah menemukan Firewalld berfungsi dengan baik dengan IPv4, IPv6, set IP, dan jembatan Ethernet. Untuk mengelola Firewalld, Anda dapat menggunakan perintah terminal firewall-cmd atau alat konfigurasi GUI firewall-config.

Panduan ini akan memanfaatkan firewall-cmd perintah untuk mengelola keamanan jaringan, dan lingkungan pengujian kami adalah Fedora Workstation 33.

Sebelum kita mendapatkan semua teknis, mari kita pelajari beberapa dasar jaringan.

Dasar-dasar jaringan

Komputer yang terhubung ke jaringan diberi alamat IP yang digunakan untuk merutekan data. Komputer juga memiliki port dalam kisaran 0-65535, yang bertindak sebagai titik koneksi di alamat IP. Aplikasi mungkin memesan port tertentu. Server web biasanya memesan port 80 untuk komunikasi HTTP yang aman. Pada dasarnya rentang port 0 - 1024 dicadangkan untuk tujuan dan sistem yang terkenal.

Dua protokol transfer data Internet utama (TCP & UDP) menggunakan port ini selama komunikasi jaringan. Komputer host membuat koneksi antara alamat IP sumber dan port (port 80 untuk HTTP tidak aman) dan alamat dan port tujuan.

Untuk mengelola keamanan jaringan, perangkat lunak firewall dapat mengizinkan atau memblokir transfer data atau komunikasi berdasarkan aturan seperti port atau alamat IP.

Menginstal Firewalld

Fedora, RHEL/CentOS 7/8, openSUSE

Firewalld diinstal secara default di Fedora, RHEL/CentOS 7/8, dan openSUSE. Jika tidak, Anda dapat menginstalnya menggunakan perintah berikut:

# yum instal firewalld -y
ATAU
#dnf instal firewalld -y

Debian/Ubuntu

Sistem Ubuntu dikirimkan dengan Firewall Tanpa Komplikasi secara default. Untuk menggunakan firewalld, Anda harus mengaktifkan repositori universe dan menonaktifkan Uncomplicated Firewall.

sudo add-apt-repository universe
sudo apt install firewalld

Nonaktifkan Firewall yang Tidak Rumit:

sudo systemctl nonaktifkan ufw

Aktifkan firewalld saat boot:

sudo systemctl aktifkan -sekarang firewalld

Verifikasi Firewalld sedang berjalan:

sudo firewall-cmd -state
berlari

Zona firewall

Firewalld membuat konfigurasi firewall Anda menjadi sederhana dengan menetapkan zona default. Zona adalah seperangkat aturan yang sesuai dengan kebutuhan sehari-hari sebagian besar admin Linux. Zona firewall dapat menentukan level tepercaya atau ditolak untuk layanan dan port.

Contoh zona default yang ditentukan oleh stasiun kerja Fedora 33

cat /usr/lib/firewalld/zones/FedoraWorkstation.xml


Stasiun Kerja Fedora
Paket jaringan masuk yang tidak diminta ditolak dari port 1 hingga 1024, kecuali untuk layanan jaringan tertentu. [firewall] Paket masuk yang terkait dengan koneksi jaringan keluar diterima are. Koneksi jaringan keluar diperbolehkan.





Dapatkan zona Anda saat ini:
Anda dapat menggunakan - - get-active-zones tandai untuk memeriksa zona yang saat ini aktif di sistem Anda.

sudo firewall-cmd --get-active-zones
[Sudo] kata sandi untuk tuts:
Fedora Workstation
antarmuka: wlp3s0
libvirt
antarmuka: virbr0

Zona default pada Fedora Workstation 33 di zona FedoraWorkstation

Dapatkan zona default & semua zona yang ditentukan:

sudo firewall-cmd --get-default-zone
[Sudo] kata sandi untuk tuts:
Fedora Workstation
[tuts@fosslinux ~]$ sudo firewall-cmd --get-zones
FedoraServer Fedora Workstation memblokir dmz drop eksternal rumah internal libvirt nm-shared pekerjaan tepercaya publik

Daftar layanan:

Anda bisa mendapatkan layanan yang diizinkan firewall untuk diakses oleh sistem lain menggunakan  - -daftar-layanan bendera.

[tuts@fosslinux ~]$ sudo firewall-cmd --list-services
dhcpv6-client mdns samba-client ssh

Pada Fedora Linux 33, firewall memungkinkan akses ke empat layanan (dhcpv6-client mdns samba-client ssh) dengan nomor port yang terkenal.

Daftar pengaturan port firewall:
Anda dapat menggunakan - -daftar-port tandai untuk melihat pengaturan port lain di zona mana pun.

tuts@fosslinux ~]$ sudo firewall-cmd --list-ports --zone=FedoraWorkstation
[Sudo] kata sandi untuk tuts:
1025-65535/udp 1025-65535/tcp

Kami telah menentukan zona yang akan diperiksa menggunakan opsi - -zone=FedoraWorkstaion.

Mengelola zona, pelabuhan, dan layanan

Konfigurasi firewall dapat dikonfigurasi sebagai runtime atau permanen. Semua tindakan firewall-cmd hanya bertahan sampai komputer atau firewall dimulai ulang. Anda harus membuat pengaturan permanen dengan flag -permanent.

Buat zona

Untuk membuat zona, Anda harus menggunakan - -zona baru bendera.
Contoh:
Buat zona permanen baru bernama fosscorp:

[tuts@fosslinux ~]$ sudo firewall-cmd --new-zone fosscorp --permanent
[Sudo] kata sandi untuk tuts:
keberhasilan

Muat ulang aturan firewall untuk mengaktifkan zona baru:

[tuts@fosslinux ~]$ sudo firewall-cmd --reload

Tambahkan layanan ssh ke zona fosscorp sehingga Anda dapat mengaksesnya dari jarak jauh:

[tuts@fosslinux ~]$ sudo firewall-cmd --zone fosscorp --add-service ssh --permanent
[Sudo] kata sandi untuk tuts:
keberhasilan

Konfirmasikan zona baru Anda 'fosscorp' aktif:

[tuts@fosslinux ~]$ sudo firewall-cmd --get-zones
FedoraServer FedoraWorkstation memblokir dmz drop eksternal fosscorp rumah internal libvirt nm-shared pekerjaan tepercaya publik

Fosscorp zona baru Anda sekarang aktif, dan menolak semua koneksi masuk kecuali lalu lintas SSH.

Menggunakan - -ubah-antarmuka tandai untuk menjadikan zona fosscorp sebagai zona aktif dan default untuk antarmuka jaringan (wlp3s0) yang ingin Anda lindungi:

[tuts@fosslinux ~]$ sudo firewall-cmd --change-interface wlp3s0 \
> --zona fosscorp --permanen
Antarmuka berada di bawah kendali [ firewall ] NetworkManager, mengatur zona ke 'fosscorp'.
keberhasilan

Jika Anda ingin menetapkan fosscorp sebagai zona default dan utama, jalankan perintah berikut:

[tuts@fosslinux ~]$ sudo firewall-cmd --set-default fosscorp
keberhasilan

Lihat zona yang saat ini ditetapkan untuk setiap antarmuka menggunakan - -get-active-zones bendera:

[tuts@fosslinux ~]$ sudo firewall-cmd --get-active-zones
fosscorp
antarmuka: wlp3s0

Tambahkan dan hapus layanan:

Cara cepat untuk mengizinkan lalu lintas melalui firewall Anda adalah dengan menambahkan layanan yang telah ditentukan.

Daftar layanan standar yang tersedia:

tuts@fosslinux ~]$ sudo firewall-cmd --get-services
[Sudo] kata sandi untuk tuts:
RH-Satellite-6 amanda-client amanda-k5-client amqp amqps apcupsd audit bacula bacula-client bb bgp bitcoin bitcoin-rpc
bitcoin-testnet bitcoin-testnet-rpc bittorrent-lsd ceph ceph-mon cfengine cockpit condor-collector ctdb dhcp dhcpv6 dhcpv6-client
[… ]

Buka blokir layanan yang telah ditentukan

Anda dapat mengizinkan lalu lintas HTTPS (atau layanan standar lainnya) melalui firewall Anda menggunakan - -layanan tambahan bendera.

[tuts@fosslinux ~]$ sudo firewall-cmd --add-service https --permanent
keberhasilan
[tuts@fosslinux ~]$ sudo firewall-cmd --reload

Anda juga dapat menghapus layanan dengan - -hapus-layanan bendera:

[tuts@fosslinux ~]$ sudo firewall-cmd --remove-service https --permanent
keberhasilan
[tuts@fosslinux ~]$ sudo firewall-cmd --reload

Tambah dan hapus Port

Anda juga dapat menambahkan nomor port dan prototipe secara langsung dengan flag -add-port. Menambahkan nomor port secara langsung dapat berguna ketika layanan yang telah ditentukan tidak ada.

Contoh:
Anda dapat menambahkan non-standar pelabuhan 1717 untuk SSH ke zona khusus Anda menggunakan perintah berikut:

[tuts@fosslinux ~]$ sudo firewall-cmd --add-port 1717/tcp --permanent
[Sudo] kata sandi untuk tuts:
keberhasilan
[tuts@fosslinux ~]$ sudo firewall-cmd -reload

Hapus port menggunakan opsi flag -remove-port:

[tuts@fosslinux ~]$ sudo firewall-cmd --remove-port 1717/tcp --permanent
keberhasilan
[tuts@fosslinux ~]$ sudo firewall-cmd -reload

Anda juga dapat menentukan zona untuk menambah atau menghapus port dengan menambahkan flag -zone dalam perintah:
Tambahkan port 1718 untuk koneksi TCP ke zona FedoraWorstation:

[tuts@fosslinux ~]$ sudo firewall-cmd --zone=FedoraWorkstation --permanent --add-port=1718/tcp
keberhasilan
[tuts@fosslinux ~]$ sudo firewall-cmd --reload
keberhasilan

Konfirmasikan jika perubahan telah diterapkan:

[tuts@fosslinux ~]$ sudo firewall-cmd --list-all
Fedora Workstation (aktif)
target: default
icmp-block-inversion: tidak
antarmuka: wlp3s0
sumber:
layanan: dhcpv6-client mdns samba-client ssh
port: 1025-65535/udp 1025-65535/tcp 1718/tcp
protokol:
penyamaran: tidak
forward-port:
sumber-port:
icmp-blok:
aturan kaya:

Catatan: Di bawah port, kami telah menambahkan nomor port 1718 untuk mengizinkan lalu lintas TCP.

Anda dapat menghapus port 1718/tcp dengan menjalankan perintah berikut:

[tuts@fosslinux ~]$ sudo firewall-cmd --zone=FedoraWorkstation --permanent --remove-port=1718/tcp
keberhasilan
[tuts@fosslinux ~]$ sudo firewall-cmd --reload
keberhasilan

Catatan: Jika Anda ingin membuat perubahan permanen, Anda harus menambahkan - -permanen tandai perintah Anda.

rekap

Firewalld adalah utilitas hebat untuk mengelola keamanan jaringan Anda. Cara terbaik untuk meningkatkan keterampilan admin sistem Anda adalah dengan mendapatkan pengalaman langsung. Saya sangat merekomendasikan menginstal Fedora di mesin virtual (VM) favorit Anda atau di Kotak untuk bereksperimen dengan semua fungsi firewall-cmd yang tersedia. Anda dapat mempelajari lebih banyak fungsi firewall-cmd dari halaman beranda resmi Firewalld.

Vulkan untuk Pengguna Linux
Dengan setiap generasi baru kartu grafis, kami melihat pengembang game mendorong batas kesetiaan grafis dan selangkah lebih dekat ke fotorealisme. Tet...
OpenTTD vs Simutrans
Membuat simulasi transportasi Anda sendiri bisa menyenangkan, santai, dan sangat menarik. Itulah mengapa Anda perlu memastikan bahwa Anda mencoba game...
Tutorial OpenTTD
OpenTTD adalah salah satu game simulasi bisnis paling populer di luar sana. Dalam game ini, Anda perlu membuat bisnis transportasi yang luar biasa. Na...