Pada artikel ini, saya akan menunjukkan cara mengatur firewall UFW di Ubuntu 18.04. Di Ubuntu, firewall default adalah UFW, kependekan dari Uncomplicated FireWall . Sudah ada sejak Ubuntu 18.04 rilis dan dibangun untuk menyederhanakan konfigurasi iptables yang cukup rumit.
Saat menggunakan operasi apa pun, firewall adalah salah satu fitur terpenting yang harus dipertimbangkan sejauh menyangkut keamanan sistem Anda. Firewall adalah perisai atau penghalang yang ada antara PC Anda dan internet dan memblokir lalu lintas yang tidak sah seperti akses jarak jauh ke sistem Anda dan membantu melindungi dari kode berbahaya yang terus-menerus melintasi internet. Firewall dapat berupa perangkat keras atau perangkat lunak. Firewall perangkat keras adalah sistem firewall mandiri yang ditempatkan di jaringan untuk menambahkan lapisan pelindung dengan mengontrol arus lalu lintas ke dan dari jaringan serta memblokir situs yang tidak diinginkan agar tidak diakses oleh pengguna. Firewall perangkat lunak dibangun ke dalam sistem operasi seperti Linux dan Windows dan membantu menjaga sistem Anda tetap aman dari serangan eksternal.
Baca juga :
- Cara Mengaktifkan, Menolak, Mengizinkan, Menghapus Aturan di Firewall UFW Ubuntu
Pemasangan UFW
Secara default, Ubuntu 18.04 hadir dengan ufw terinstal. Namun, untuk sistem sebelumnya, Anda harus menjalankan perintah di bawah
apt-get install ufw
Untuk memeriksa apakah ufw sedang berjalan, jalankan
systemctl status ufw
Jika sedang berjalan, Anda akan mendapatkan output di bawah ini
● ufw.service - Uncomplicated firewall
Loaded: loaded (/lib/systemd/system/ufw.service; enabled; vendor preset: enab
Active: active (exited) since Tue 2018-04-10 22:03:30 UTC; 4min 1s ago
Process: 376 ExecStart=/lib/ufw/ufw-init start quiet (code=exited, status=0/SU
Main PID: 376 (code=exited, status=0/SUCCESS)
Tasks: 0
Memory: 0B
CPU: 0
CGroup: /system.slice/ufw.service
Apr 10 22:03:30 ip-172-31-41-251 systemd[1]: Started Uncomplicated firewall.
Warning: Journal has been rotated since unit was started. Log output is incomple
Untuk memeriksa apakah itu aktif atau tidak aktif, jalankan
ufw status
Jika tidak aktif, Anda akan mendapatkan output di bawah ini
Status: inactive
Untuk mengaktifkan UFW dengan rangkaian aturan default, jalankan
ufw enable
Untuk menonaktifkan firewall, jalankan
ufw disable
Menyiapkan aturan ufw default
Untuk menyiapkan aturan default yang mengizinkan semua protokol keluar, masuk sebagai root dan jalankan
ufw default allow outgoing
Keluaran
Default outgoing policy changed to 'allow'
(be sure to update your rules accordingly)
Untuk menolak semua koneksi masuk, jalankan
ufw default deny incoming
Keluaran
Default outgoing policy changed to 'deny'
(be sure to update your rules accordingly)
Perintah di atas akan mengizinkan semua koneksi keluar dan menolak atau memblokir semua koneksi masuk.
Pada titik ini, Anda mungkin ingin mengaktifkan firewall, namun sebelum Anda melakukannya, izinkan ssh terlebih dahulu. Ini mencegah pemutusan ke server karena kami telah menetapkan penolakan semua koneksi masuk sebelumnya.
Untuk mengizinkan ssh, jalankan
ufw allow 22/tcp
Keluar
Skipping adding existing rule
Skipping adding existing rule (v6)
akses ssh juga dapat diizinkan dengan nama layanan,
ufw allow ssh
Jika Anda ingin menghapus aturan, jalankan
ufw delete allow 22/ssh
Untuk menolak layanan dengan menjalankan nama
ufw deny service-name
Misalnya
ufw deny ssh
Untuk melihat semua layanan yang dapat diizinkan atau ditolak dalam sistem, periksa /etc/services
berkas.
cat /etc/services | less
Contoh keluaran
ftp-data 20/tcp
ftp 21/tcp
fsp 21/udp fspd
ssh 22/tcp # SSH Remote Login Protocol
ssh 22/udp
telnet 23/tcp
smtp 25/tcp mail
time 37/tcp timserver
time 37/udp timserver
rlp 39/udp resource # resource location
nameserver 42/tcp name # IEN 116
whois 43/tcp nicname
tacacs 49/tcp # Login Host Protocol (TACACS)
tacacs 49/udp
re-mail-ck 50/tcp # Remote Mail Checking Protocol
re-mail-ck 50/udp
domain 53/tcp # Domain Name Server
domain 53/udp
Memulai ufw firewall
Untuk mengaktifkan firewall login sebagai root dan jalankan perintah berikut:
ufw enable
Anda mungkin diminta dengan peringatan berikut
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Jika Anda memilih ya, Anda akan mendapatkan output di bawah ini
Firewall is active and enabled on system startup
Firewall sekarang aktif dan akan dimulai pada setiap boot. Kita dapat melihat aturan firewall lagi:
ufw status
Output sekarang akan menampilkan status firewall ditambah layanan/port yang diizinkan
Keluaran
ufw status active
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
22 ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
22 (v6) ALLOW Anywhere (v6)
Mengizinkan koneksi di ufw
Anda dapat dengan mudah mengizinkan koneksi masuk pada port/rentang, nama aplikasi, alamat ip/subnet di ufw.
Lihat contoh di bawah ini.
a) Mengizinkan aplikasi berdasarkan nama atau nomor port/rentang
ufw allow service-name
ATAU
ufw allow port/tcp
Misalnya
ufw allow ssh or ufw allow 22/tcp
ufw allow ftp or ufw allow 21/tcp
sudo ufw izinkan 1500:2000/tcp
b) Mengizinkan Alamat IP / Subnet
Perintah di bawah ini memungkinkan koneksi dari IP atau subnet tertentu dan juga kita dapat menggunakan nomor port tertentu.
Untuk mengizinkan koneksi dari alamat IP tertentu
ufw allow from 10.200.20.45
Untuk menentukan IP yang diizinkan untuk terhubung ke port tertentu, jalankan
ufw allow from 10.200.20.45 to any port 22
Di atas memungkinkan alamat IP 10.200.20.45 hanya untuk terhubung melalui ssh
Untuk mengizinkan subnet IP tertentu terhubung ke sistem, gunakan notasi CIDR untuk menentukan netmask
ufw allow from 192.168.1.0/24
Di atas memungkinkan IP dari 192.168.1 hingga 192.168.1.254 untuk terhubung ke sistem
Anda juga dapat menentukan port tujuan subnet
ufw allow from 192.168.1.0/24 to any port 22
Ini berarti IP dari 192.168.1 hingga 192.168.1.254 dapat terhubung ke sistem melalui port 22 yaitu ssh.
c) Izinkan dengan nama antarmuka
Jika kita perlu mengizinkan koneksi melalui nama antarmuka, itu mungkin
ufw allow in on eth0 to any port 80
Cara menolak koneksi di ufw
Secara default ufw dikonfigurasi untuk menolak semua koneksi masuk.
a) Alamat IP / subnet
Jika kita ingin memblokir beberapa alamat ip tertentu agar tidak mengakses, kita dapat melakukannya dengan perintah berikut:
ufw deny from 192.168.1.15
Ini akan memblokir semua koneksi masuk dari host dengan alamat ip 192.168.1.15
Selanjutnya akan memblokir seluruh subnet:
ufw deny from 150.165.125.0/24
Tindakan ini akan memblokir semua koneksi yang berasal dari subnet ini.
b) Tolak port dan aplikasi
Untuk menolak port atau layanan
ufw deny 80/tcp
ATAU
ufw deny http
sudo ufw deny 1500:2000/tcp *Ini akan menolak rentang port*
Menghapus dan melacak aturan
Saat Anda menambahkan banyak aturan, Anda dapat melacaknya dengan lebih baik dengan melihat nomornya. Anda bisa mendapatkan angka dengan perintah berikut:
ufw status numbered
Keluaran
ufw status numbered
Status: active
To Action From
-- ------ ----
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] 22 ALLOW IN Anywhere
[ 3] 80/tcp ALLOW IN Anywhere
[ 4] 53/tcp ALLOW IN Anywhere
[ 5] 22/tcp (v6) ALLOW IN Anywhere (v6)
[ 6] 22 (v6) ALLOW IN Anywhere (v6)
[ 7] 80/tcp (v6) ALLOW IN Anywhere (v6)
[ 8] 53/tcp (v6) ALLOW IN Anywhere (v6)
Katakanlah kita ingin menghapus aturan nomor 2. Kita melakukannya dengan perintah berikut:
ufw delete 2
Catatan :
Setelah aturan kedua di firewall dihapus, aturan 3 sekarang akan menjadi aturan baru 2. Jadi jika Anda ingin menghapus aturan 3 saat ini, hapus menggunakan nomor 2.
ufw delete allow http
Menyetel ulang aturan
Jika Anda tidak puas dengan aturan saat ini dan ingin memulai dari awal, Anda dapat melakukannya dengan menjalankan
ufw reset
Mencatat dan memuat ulang
Untuk mengaktifkan logging gunakan perintah berikut:
ufw logging on
Jika Anda ingin menonaktifkan logging karena alasan tertentu (tidak disarankan), Anda dapat menggunakan perintah ini:
sudo ufw keluar
Log secara default berada di /var/log/ufw.log
Untuk melihatnya secara real time, gunakan tail -f seperti ini:
tail -f /var/log/ufw.log /pre>
You will see all actions of firewall in that file. If you need to reload firewall for some reason, because you changed some config files manually, use following command.
ufw reload
Jika Anda ingin melihat aturan yang ditambahkan baru-baru ini
ufw show added
File konfigurasi UFW
Untuk sebagian besar skenario, Anda dapat menggunakan perintah terminal, tetapi dalam beberapa kasus, Anda ingin mengedit file konfigurasi secara langsung. Ufw memiliki beberapa file konfigurasi, yaitu:
/etc/ufw/before.rules
/etc/ufw/before6.rules
Kedua file tersebut menyimpan aturan yang dievaluasi sebelum semua aturan yang Anda tambahkan oleh perintah ufw. Jadi jika Anda ingin beberapa aturan diterapkan terlebih dahulu, Anda menginginkannya di sana. File pertama untuk ipv4 dan yang kedua untuk v6
/etc/ufw/after.rules
/etc/ufw/after6.rules
Ini dievaluasi setelah aturan perintah ufw. Mereka bagus untuk digunakan jika Anda ingin mengesampingkan beberapa aturan dan menerapkannya apa pun yang terjadi. Sekali lagi, dua file, untuk dua versi protokol IP yang saat ini digunakan.
/etc/default/ufw
Di sini kami memiliki modul kernel yang digunakan ufw, serta pengaturan umum lainnya. Anda dapat mengedit file konfigurasi ini hanya sebagai root, dan Anda dapat menggunakan editor teks apa pun yang Anda suka.
Hindari menambahkan aturan duplikat
Selanjutnya mari kita amati mekanisme terhadap aturan duplikat. Kita buka dulu port 101
sudo ufw allow 100
Perhatikan bahwa perintah tanpa protokol seperti di atas membuka port UDP dan TCP. Jadi mari kita jalankan perintah yang sama lagi untuk melihat apa yang terjadi
ufw allow 100
Keluaran
Skipping adding existing rule
Skipping adding existing rule (v6)
Itu tidak memungkinkan kami untuk menambahkan aturan duplikat. Itu bagus, tetapi masih ada kemungkinan kita dapat menambahkan aturan duplikat, dengan rangkaian perintah ini:
ufw allow 101/udp
ufw allow 101/tcp
Setelah mengizinkan TCP dan UDP pada port 101 kita masih dapat menambahkan port 101 terbuka untuk semua protokol dan ini adalah aturan duplikat karena port 101 dibuka dua kali, sekali untuk setiap protokol dan sekali untuk semuanya.
ufw allow 101
Ini menyisakan ruang untuk kesalahan dan umumnya ini bukan praktik yang baik. Kita perlu membatalkan ketiga perintah dengan perintah ufw delete jika kita ingin kembali ke default untuk port 101.
Untuk menutup beberapa port, Anda menjalankan perintah yang sama, cukup izinkan, ketik tolak.
Pada artikel ini, kami telah membahas penggunaan UFW yang merupakan firewall sederhana yang digunakan untuk mengizinkan atau membatasi lalu lintas. Ini adalah firewall yang sangat kuat untuk mengatur lalu lintas ke sistem Anda. Jangan ragu untuk mencoba perintah di sistem Anda.