Raspberry Pi

Mengamankan Raspberry Pi dengan Firewall

Mengamankan Raspberry Pi dengan Firewall

Jika Anda ingin menjalankan beberapa jenis perangkat lunak server di Raspberry Pi Anda (mis.e., server web, server database, server Minecraft) dan membuatnya tersedia untuk umum di internet (hosting), maka mengamankan server Raspberry Pi Anda dengan program firewall sangat penting.

Ada banyak program firewall gratis dan sumber terbuka yang tersedia di Raspberry Pi OS (sistem operasi resmi komputer papan tunggal Raspberry Pi). Di antara program-program ini, UFW dan Firewalld adalah program firewall yang paling umum.

Pada artikel ini, saya akan menggunakan program firewall UFW untuk menunjukkan cara mengamankan Raspberry Pi. Jadi, mari kita mulai.

Hal-hal yang Anda Butuhkan:

Untuk mengikuti artikel ini, Anda memerlukan hal-hal berikut untuk mengatur Raspberry Pi Anda dalam mode tanpa kepala:

  1. Komputer papan tunggal Raspberry Pi 3 atau Raspberry Pi 4.
  2. Adaptor daya micro-USB (Raspberry Pi 3) atau USB Type-C (Raspberry Pi 4).
  3. Kartu microSD 16 GB atau 32 GB dengan Raspberry Pi OS di-flash.
  4. Konektivitas jaringan pada Raspberry Pi.
  5. Laptop atau komputer desktop untuk akses desktop jarak jauh VNC atau akses SSH ke Raspberry Pi.

Jika Anda tidak ingin mengatur Raspberry Pi 4 Anda dalam mode tanpa kepala, Anda juga memerlukan:

  1. Sebuah monitor
  2. Kabel HDMI atau mikro-HDMI
  3. Sebuah papan ketik
  4. Seekor tikus.

Jika Anda memerlukan bantuan untuk mem-flash gambar Raspberry Pi OS pada kartu microSD, lihat artikel saya Cara Memasang dan Menggunakan Raspberry Pi Imager.

Jika Anda seorang pemula Raspberry Pi dan memerlukan bantuan untuk menginstal Raspberry Pi OS di Raspberry Pi Anda, lihat artikel saya Cara Menginstal Raspberry Pi OS di Raspberry Pi 4.

Jika Anda memerlukan bantuan tentang pengaturan tanpa kepala Raspberry Pi, lihat artikel saya Cara Menginstal dan Mengonfigurasi Raspberry Pi OS di Raspberry Pi 4 Tanpa Monitor Eksternal.

Memperbarui Raspberry Pi OS:

Saat kami mencoba mengamankan Raspberry Pi kami, sebaiknya perbarui semua paket Raspberry Pi OS yang ada. Ini akan membuat OS Raspberry Pi Anda lebih aman karena akan menginstal semua pembaruan keamanan dan perbaikan bug terbaru.

Pertama, perbarui cache repositori paket APT dengan perintah berikut:

$ sudo apt update


Untuk memperbarui semua paket yang ada dari Raspberry Pi OS Anda, jalankan perintah berikut:

$ sudo apt peningkatan penuh


Untuk mengonfirmasi pemasangan pembaruan, tekan kamu lalu tekan <Memasukkan>.


Manajer paket APT akan mengunduh semua paket yang diperlukan dari internet. Mungkin perlu beberapa saat untuk menyelesaikannya.


Setelah paket diunduh, manajer paket APT akan menginstalnya satu per satu. Mungkin perlu beberapa saat untuk menyelesaikannya.


Pada titik ini, semua pembaruan harus diinstal.

Agar perubahan diterapkan, reboot Raspberry Pi Anda dengan perintah berikut:

$ sudo reboot

Menginstal UFW - Firewall Tidak Rumit:

Setelah Raspberry Pi Anda boot, Anda dapat menginstal program firewall UFW dengan perintah berikut:

$ sudo apt install ufw -y


UFW harus dipasang.


Agar perubahan diterapkan, reboot Raspberry Pi Anda dengan perintah berikut:

$ sudo reboot


Setelah Raspberry Pi Anda boot, ufw layanan systemd harus aktif, seperti yang Anda lihat pada tangkapan layar di bawah ini.

$ sudo systemctl status ufw


Anda dapat memeriksa apakah UFW diaktifkan dengan perintah berikut:

$ sudo ufw status


Seperti yang Anda lihat, UFW tidak diaktifkan secara default.


Untuk mengaktifkan UFW, jalankan perintah berikut:

$ sudo ufw aktifkan


Seperti yang Anda lihat, UFW sekarang diaktifkan.

$ sudo ufw status

Mengizinkan Akses ke Port menggunakan Profil Aplikasi:

UFW memiliki beberapa profil aplikasi default. Setiap profil aplikasi memiliki beberapa port standar yang dapat Anda izinkan/tolak aksesnya.

Untuk membuat daftar semua profil aplikasi yang tersedia, jalankan perintah berikut:

$ sudo ufw daftar aplikasi


Semua profil aplikasi yang diinstal harus terdaftar.

Jika Anda terhubung ke Raspberry Pi Anda melalui SSH atau VNC (seperti saya), Anda harus mengizinkan akses ke BukaSSH dan VNC profil aplikasi. Jika tidak, saat berikutnya Anda mem-boot Raspberry Pi, Anda tidak akan dapat mengaksesnya dari jarak jauh karena firewall akan memblokir semua port, termasuk port SSH dan VNC. Jadi, ini sangat penting.


Anda dapat melihat port apa yang ditentukan dalam profil aplikasi (mis.e., BukaSSH) dengan perintah berikut:

$ sudo ufw info aplikasi OpenSSH


Seperti yang terlihat, TCP port 22 didefinisikan dalam profil aplikasi BukaSSH.


Dengan cara yang sama, Port TCP 5900 didefinisikan dalam VNC profil aplikasi.

$ sudo ufw info aplikasi VNC


Untuk mengizinkan akses ke port yang ditentukan dalam VNC profil aplikasi, jalankan perintah berikut:

$ sudo ufw izinkan VNC


Seperti yang Anda lihat, VNC profil aplikasi diizinkan melalui firewall.

$ sudo ufw status bernomor


Dengan cara yang sama, izinkan akses ke port yang ditentukan dalam BukaSSH profil aplikasi dengan perintah berikut:

$ sudo ufw izinkan OpenSSH


Seperti yang Anda lihat, BukaSSH profil aplikasi diizinkan melalui firewall.

$ sudo ufw status bernomor

Mengizinkan Akses ke Port menggunakan Nomor Port:

Terkadang, port yang ingin Anda izinkan/tolak aksesnya tidak akan ditentukan di profil aplikasi apa pun yang tersedia. Jadi, Anda harus mengizinkan/menolak akses ke port ini menggunakan nomor port.

Misalnya, Anda dapat mengizinkan akses ke Port TCP 8080 dengan perintah berikut:

$ sudo ufw izinkan 8080/tcp


Seperti yang Anda lihat, Port TCP 8080 diperbolehkan akses melalui firewall.

$ sudo ufw status bernomor


Dengan cara yang sama, Anda dapat mengizinkan akses ke Port UDP 8888 dengan perintah berikut:

$ sudo ufw izinkan 8888/udp


Seperti yang Anda lihat, Port UDP 8888 diperbolehkan akses melalui firewall.

$ sudo ufw status bernomor

Menolak Akses ke Port:

Perilaku default program firewall UFW adalah menolak segala sesuatu yang tidak diperbolehkan. Jadi, Anda tidak perlu melakukan apa pun untuk menolak akses ke port apa pun.

Demi kompetisi, saya akan menunjukkan cara menolak port di UFW.

Misalnya, untuk menolak akses ke Port TCP 9900, jalankan perintah berikut:

$ sudo ufw tolak 9900/tcp


Seperti yang Anda lihat, Port TCP 9900 ditolak aksesnya melalui firewall.

$ sudo ufw status bernomor


Dengan cara yang sama, Anda dapat menolak port yang ditentukan dalam profil aplikasi (mis.e.,  WWW) sebagai berikut:

$ sudo ufw tolak WWW

Menolak Akses Alamat IP Tertentu ke Server:

Terkadang Anda mungkin perlu menolak akses ke alamat IP atau subnet IP tertentu untuk melindungi server Raspberry Pi Anda dari serangan DDoS (Distributed Denial of Service). Anda dapat melakukannya dengan UFW.

Untuk bereksperimen dengan penolakan alamat IP, saya akan menggunakan server web Apache.

Anda dapat menginstal server web Apache di Raspberry Pi Anda dengan perintah berikut:

$ sudo apt install apache2


Untuk mengonfirmasi penginstalan, tekan kamu lalu tekan <Memasukkan>.


Manajer paket APT akan mengunduh semua paket dari internet dan menginstalnya satu per satu. Mungkin perlu beberapa saat untuk menyelesaikannya.


Pada titik ini, server web Apache harus diinstal.


Setelah server web Apache diinstal, buat halaman indeks sederhana dengan perintah berikut:

$echo"

Selamat datang di LinuxHint

" | sudo tee /var/www/html/index.html


Itu apache2 layanan systemd harus berjalan, seperti yang Anda lihat pada tangkapan layar di bawah ini.

$ sudo systemctl status apache2


Izinkan akses ke port server web Apache (TCP port 80) menggunakan profil aplikasi WWW sebagai berikut:

$ sudo ufw izinkan www


Seperti yang Anda lihat, port yang ditentukan dalam profil aplikasi WWW diperbolehkan akses melalui firewall.


Temukan alamat IP Raspberry Pi Anda dengan perintah berikut:

$ nama host -I


Seperti yang Anda lihat, alamat IP Raspberry Pi saya adalah 192.168.0.106. Ini akan berbeda untukmu. Jadi, pastikan untuk menggantinya dengan milikmu mulai sekarang.


Anda harus mengakses server web Apache dari perangkat lain, seperti yang dapat Anda lihat pada tangkapan layar di bawah.


Komputer yang saya gunakan untuk mengakses server web Apache memiliki alamat IP 192.168.0.109.


Untuk menolak alamat IP 192.168.0.109 akses ke server Raspberry Pi Anda, Anda harus menambahkan aturan firewall di bagian atas (posisi 1). Urutan aturan UFW sangat penting. Aturan yang paling ketat harus didahulukan.

$ sudo ufw status bernomor


Untuk menolak alamat IP 192.168.0.109 akses ke server Raspberry Pi, jalankan perintah berikut:

$ sudo ufw masukkan 1 tolak dari 192.168.0.109 ke mana saja


Aturan UFW untuk menolak alamat IP 192.168.0.109 akses ke server Raspberry Pi harus menjadi aturan paling atas, seperti yang ditunjukkan pada gambar di bawah.

$ sudo ufw status bernomor


Anda tidak akan dapat mengakses server web Apache yang berjalan di Raspberry Pi Anda dari komputer dengan alamat IP 192.168.0.109 lagi, seperti yang Anda lihat pada tangkapan layar di bawah ini.


Tapi, Anda dapat mengakses server web Apache yang berjalan di Raspberry Pi Anda dari komputer lain.


Jika Anda ingin menolak akses ke subnet IP, Anda harus menambahkan aturan UFW yang diperlukan sebelum aturan yang Anda tambahkan sebelumnya, karena ini adalah aturan yang lebih ketat.

$ sudo ufw status bernomor


Misalnya, untuk menolak akses ke setiap komputer dalam subnet IP 192.168.20.0/24, jalankan perintah berikut:

$ sudo ufw masukkan 1 tolak dari 192.168.20.0/24 ke mana saja


Aturan UFW harus ditambahkan di posisi yang benar, seperti yang ditunjukkan pada gambar di bawah. Sekarang, tidak ada komputer dari subnet IP 192.168.20.0/24 seharusnya dapat mengakses server Raspberry Pi Anda.

$ sudo ufw status bernomor

Menghapus Aturan UFW:

Terkadang, Anda mungkin perlu menghapus beberapa aturan UFW. Sangat mudah untuk melakukannya.

Anda dapat membuat daftar semua aturan UFW yang tersedia dengan perintah berikut:

$ sudo ufw status bernomor


Semua aturan UFW yang tersedia harus dicantumkan. Katakanlah Anda ingin menghapus aturan UFW nomor 10 (aturan di posisi ke-10).


Untuk menghapus aturan UFW nomor 10, jalankan perintah berikut:

$ sudo ufw hapus 10


Untuk mengkonfirmasi operasi penghapusan, tekan kamu lalu tekan <Memasukkan>.


Aturan UFW nomor 10 harus dihapus.


Seperti yang Anda lihat, aturan UFW dihapus, dan aturan disusun ulang (Aturan UFW yang ada di posisi 11 sekarang di posisi 10).

$ sudo ufw status bernomor

Kesimpulan:

Pada artikel ini, saya telah menunjukkan kepada Anda cara menginstal program firewall UFW di Raspberry Pi Anda (menjalankan OS Raspberry Pi). Saya juga telah menunjukkan kepada Anda cara mengizinkan/menolak port menggunakan program firewall UFW. Saya telah menunjukkan kepada Anda cara menolak alamat IP tertentu atau subnet IP dari mengakses Raspberry Pi menggunakan program firewall UFW juga.

Port Sumber Terbuka dari Mesin Game Komersial
Rekreasi mesin game gratis, open source, dan lintas platform dapat digunakan untuk bermain lama serta beberapa judul game yang cukup baru. Artikel ini...
Game Baris Perintah Terbaik untuk Linux
Baris perintah bukan hanya sekutu terbesar Anda saat menggunakan Linux-ini juga dapat menjadi sumber hiburan karena Anda dapat menggunakannya untuk me...
Aplikasi Pemetaan Gamepad Terbaik untuk Linux
Jika Anda suka bermain game di Linux dengan gamepad alih-alih sistem input keyboard dan mouse biasa, ada beberapa aplikasi yang berguna untuk Anda. Ba...