🌐 SafeLine: Host-based WAF Open-Source dengan Keamanan Kuat dan Penerapan Mudah dengan Docker

Abdul Hakim Nur Maulana
0
D(caps)alam era digital yang semakin kompleks, keamanan aplikasi web menjadi prioritas utama bagi banyak perusahaan dan pengembang. Salah satu solusi yang dapat diandalkan untuk melindungi aplikasi web dari serangan siber adalah Web Application Firewall (WAF). Di antara berbagai opsi WAF yang tersedia, SafeLine menonjol sebagai solusi open-source yang tidak hanya menawarkan keamanan yang kuat, tetapi juga kemudahan dalam penerapannya, terutama melalui penggunaan Docker.

1. Apa itu SafeLine ?

SafeLine adalah WAF (Web Application Firewall) open-source yang dikembangkan oleh Chaitin, sebuah perusahaan keamanan siber ternama dari China. SafeLine membantu melindungi aplikasi web dengan memfilter dan memantau lalu lintas HTTP antara aplikasi web dan Internet. WAF ini bisa melindungi aplikasi web dari serangan seperti SQL injection, XSS, code injection, os command injection, CRLF injection, LDAP injection, xpath injection, RCE, XXE, SSRF, path traversal, backdoor, bruteforce, http-flood, bot abused, dan lain-lain.


2. Bagaimana Cara Kerja SafeLine ?


Dengan menerapkan WAF di depan aplikasi web, sebuah perisai ditempatkan di antara aplikasi web dan Internet. Sementara server proxy melindungi identitas mesin klien dengan menggunakan perantara, WAF adalah jenis proxy terbalik, yang melindungi server dari paparan dengan meminta klien melewati WAF sebelum mencapai server.

WAF melindungi aplikasi web Anda dengan memfilter, memantau, dan memblokir lalu lintas HTTP/S berbahaya yang menuju ke aplikasi web, dan mencegah data yang tidak sah keluar dari aplikasi. WAF melakukannya dengan mematuhi serangkaian kebijakan yang membantu menentukan lalu lintas mana yang berbahaya dan mana yang aman. Sama seperti server proxy yang bertindak sebagai perantara untuk melindungi identitas klien, WAF beroperasi dengan cara yang sama tetapi bertindak sebagai perantara proxy terbalik yang melindungi server aplikasi web dari klien yang berpotensi berbahaya.

Kemampuan intinya meliputi:
  • Pertahanan terhadap serangan web
  • Bot proaktif menyalahgunakan pertahanan
  • Enkripsi kode HTML & JS
  • Pembatasan kecepatan berbasis IP
  • Daftar Kontrol Akses Web

3. Fitur Utama SafeLine

Daftar fitur utama sebagai berikut:
  • Block Web Attacks
    Pertahanannya terhadap semua serangan web, seperti SQL injection, XSS, code injection, os command injection, CRLF injection, XXE, SSRF, path traversal dan seterusnya.
  • Rate Limiting
    Lindungi aplikasi web Anda dari DoS attacks, bruteforce attempts, traffic surges, dan jenis penyalahgunaan lainnya dengan membatasi lalu lintas yang melampaui batas yang ditentukan.
  • Anti-Bot Challenge
    Tantangan Anti-Bot untuk melindungi situs web Anda bot attacks, pengguna manusia akan diizinkan, crawlers dan bot akan diblokir.
  • Authentication Challenge
    Saat tantangan autentikasi diaktifkan, pengunjung harus memasukkan kata sandi, jika tidak mereka akan diblokir.
  • Dynamic Protection
    Saat perlindungan dinamis diaktifkan, kode html dan js di server web Anda akan dienkripsi secara dinamis setiap kali Anda berkunjung.

4. Demo SafeLine


5. Install SafeLine

5.1. Persyaratan Konfigurasi Minimum

JenisKeterangan
Sistem operasiSistem Operasi Linux
Arsitektur instruksix86_64
Ketergantungan perangkat lunakDocker versi 20.10.14 atau lebih tinggi
Ketergantungan perangkat lunakDocker Compose versi 2.0.0 atau lebih tinggi
Lingkungan minimal1 inti CPU / memori 1 GB / disk 5 GB

Anda dapat menjalankan perintah berikut untuk mengonfirmasi konfigurasi server:

uname -m # view Instruction architecture
docker version # view Docker version
docker compose version # view Docker Compose version
cat /proc/cpuinfo| grep "processor" # view CPU info
free -h # view memory info
df -h # view disk info
lscpu | grep ssse3 # Check CPU ssse3 instruction(code-box)

5.2. Install Otomatis

Direkomendasikan (alert-success)

Gunakan perintah berikut untuk memulai instalasi SafeLine secara otomatis. (Proses ini memerlukan hak akses root)

bash -c "$(curl -fsSLk https://waf.chaitin.com/release/latest/setup.sh)" (code-box)
Setelah perintah dijalankan dan instalasi berhasil. Silakan langsung ke Dashboard Web UI
Ada kendala ? lihat video instalasi Otomatis di Youtube, berikut :


5.3. Install Manual

Instal Docker versi terbaru.
Jika Anda sudah memasang Docker, lewati langkah ini.
curl -sSL "https://get.docker.com/" | bash (code-box)
Buat Direktori SafeLine
Buat direktori untuk digunakan SafeLine, SafeLine akan menulis konfigurasi dan datanya ke direktori ini. (Anda perlu memiliki setidaknya 5GB ruang disk)
mkdir -p "/data/safeline" (code-box)
Skrip Docker Compose
Unduh skrip docker compose terbaru dengan menggunakan perintah berikut.
cd "/data/safeline"
wget "https://waf.chaitin.com/release/latest/compose.yaml" (code-box)
Tulis variabel Environment
cd "/data/safeline"
touch ".env" (code-box)
Tulis konten berikut dalam file ".env"
SAFELINE_DIR=/data/safeline
IMAGE_TAG=latest
MGT_PORT=9443
POSTGRES_PASSWORD={postgres-password}
SUBNET_PREFIX=172.22.222
IMAGE_PREFIX=chaitin (code-box)
CATATAN: Ganti placeholder dalam file (alert-warning)
SAFELINE_DIR: 123
IMAGE_TAG: SafeLine version to be used
MGT_PORT: Web console port to be used
POSTGRES_PASSWORD: Postgres db initialization password
SUBNET_PREFIX: SafeLine internal network communication address prefix
IMAGE_PREFIX: Mirror repository prefix

5.4. Luncurkan SafeLine

Jika tidak ada error, maka siap untuk memulai layanan SafeLine.
Proses ini mungkin memakan waktu beberapa menit, jadi jangan khawatir.
docker compose up -d (code-box)

5.5. Dashboard Web UI

Buka halaman konsol web https://<safeline-ip>:9443/di browser, lalu Anda akan melihat di bawah ini.


5.6. Dapatkan Akun Administrator

docker exec safeline-mgt resetadmin (code-box)

Setelah perintah berhasil dijalankan, Anda akan melihat konten berikut

Harap diingat atau copas konten ini, karena digunakan untuk mengakses Dashboard SafeLine 

[SafeLine] Initial username:admin

[SafeLine] Initial password:**********

[SafeLine] Done (code-box)


5.7. Login

Masukkan kata sandi pada langkah sebelumnya dan Anda akan berhasil masuk ke SafeLine.



6. Uninstall SafeLine

Jika Anda yakin tidak ingin lagi menggunakan SafeLine, ikuti langkah-langkah di bawah ini untuk menghapusnya sepenuhnya.

Masuk ke direktori SafeLine

cd <safeline-directory> (code-box)

Jalankan perintah berikut untuk menghentikan SafeLine

docker compose down (code-box)

Jalankan perintah berikut untuk menghapus data SafeLine

rm -rf <safeline-directory> (code-box)


7. Kesimpulan

SafeLine adalah solusi host-based WAF open-source yang menawarkan kombinasi antara keamanan tingkat tinggi dan kemudahan penerapan. Dengan dukungan Docker, proses instalasi dan manajemen SafeLine menjadi lebih sederhana, membuatnya menjadi pilihan yang ideal bagi pengembang dan perusahaan yang mencari solusi WAF yang handal namun mudah diimplementasikan. Dengan SafeLine, Anda dapat memastikan aplikasi web Anda terlindungi dari ancaman siber yang terus berkembang.

Jika Anda mencari solusi WAF yang tangguh, scalable, dan mudah digunakan, SafeLine dengan Docker adalah pilihan yang tepat! (alert-success)

 

8. Referensi 

Post a Comment

0 Comments
Post a Comment (0)
Our website uses cookies to enhance your experience. Learn More
Ok, Go it!