Sabtu, 25 April 2026

cara install fail2ban dan wazuh minimal di vps agar aman dari brute force dan bot

Minimal Setup Security Server: Fail2Ban + Wazuh untuk Laravel

๐Ÿ“˜ Dokumentasi Minimal Setup Security Server
(Fail2Ban + Wazuh)

๐ŸŽฏ Tujuan: Panduan cepat untuk install & konfigurasi Fail2Ban, Install Wazuh (minimal), serta hardening dasar untuk server Laravel / web.

๐Ÿงฑ 1. INSTALL FAIL2BAN

apt update
apt install fail2ban -y
systemctl enable fail2ban
systemctl start fail2ban

⚙️ 2. CONFIG FAIL2BAN

Buat config utama:

nano /etc/fail2ban/jail.local

Isi minimal config:

[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 5
backend = systemd

[sshd]
enabled = true
port = 22
logpath = %(sshd_log)s

[nginx-badbots]
enabled = true
port = http,https
logpath = /usr/local/lsws/logs/access.log

[nginx-php-exploit]
enabled = true
port = http,https
logpath = /usr/local/lsws/logs/access.log
maxretry = 2

๐Ÿ” 3. FILTER CUSTOM (WAJIB)

Bad bots

nano /etc/fail2ban/filter.d/nginx-badbots.conf
[Definition]
failregex = <HOST> -.*"(GET|POST).*" "(curl|wget|python|libredtail|bot).*"
ignoreregex =

PHP exploit

nano /etc/fail2ban/filter.d/nginx-php-exploit.conf
[Definition]
failregex = <HOST> -.*"(GET|POST).*(phpunit|eval|base64_decode|auto_prepend_file|allow_url_include).*"
ignoreregex =

๐Ÿ”„ 4. RESTART & CEK

systemctl restart fail2ban
systemctl status fail2ban
fail2ban-client status
tail -f /var/log/fail2ban.log

๐Ÿ›ก️ 5. INSTALL WAZUH (MINIMAL)

curl -sO https://packages.wazuh.com/4.x/wazuh-install.sh
bash wazuh-install.sh -a

๐Ÿ”ง 6. SERVICE WAZUH

systemctl status wazuh-manager
systemctl status wazuh-dashboard
systemctl restart wazuh-manager

๐Ÿ“Š 7. MONITOR LOG WAZUH

tail -f /var/ossec/logs/alerts/alerts.log
tail -f /var/ossec/logs/ossec.log

๐Ÿ”— 8. INTEGRASI FAIL2BAN → WAZUH

Edit config:

nano /var/ossec/etc/ossec.conf

Tambahkan:

<integration>
  <name>fail2ban</name>
  <level>3</level>
</integration>
systemctl restart wazuh-manager

๐Ÿ” 9. HARDENING WAJIB (MINIMAL)

Disable PHP dangerous function

nano /usr/local/lsws/lsphp83/etc/php.ini
disable_functions = exec,passthru,shell_exec,system,proc_open,popen

Block folder sensitif (LiteSpeed / Nginx)

location ~* /(vendor|\.env|\.git|storage) {
    deny all;
}

Block phpunit exploit

location ~* phpunit {
    deny all;
}

๐Ÿšจ 10. TROUBLESHOOTING

journalctl -xeu fail2ban
tail -f /var/ossec/logs/ossec.log
tail -f /usr/local/lsws/logs/access.log

✅ 11. CHECKLIST FINAL

  • Fail2Ban aktif
  • Jail berjalan
  • Log LiteSpeed terbaca
  • Wazuh manager running
  • Alert masuk
  • SSH brute force ke-detect
  • Web exploit ke-detect
  • IP attacker otomatis ke-ban
๐Ÿš€ CATATAN
Server internet publik pasti:
• Akan kena scan bot setiap menit
• Akan dicoba exploit otomatis
๐Ÿ‘‰ Itu NORMAL
๐Ÿ‘‰ Yang penting: detect + block otomatis
๐Ÿ”š SELESAI
Dokumentasi ini cukup untuk:
✅ Server production minimal
✅ Laravel aman dari scanning umum
✅ Auto-block attacker

Jika butuh upgrade:
• WAF (ModSecurity)
• Hardening Docker
• Advanced Wazuh rules
๐Ÿ‘‰ Tinggal lanjut ke tahap berikutnya.

Selasa, 21 April 2026

Panduan Ultimate: Membersihkan async.gsyndication.com XSS di Laravel + Cyberpanel

Panduan Pembersihan Malware Livewire (async.gsyndication.com)
⚠️ Emergency Response

Membersihkan Malware Livewire async.gsyndication.com

Script jahat merusak komponen Livewire, request gagal, redirect ke situs berbahaya. Tenang, ikuti langkah berikut!

๐Ÿšจ Gejala yang Muncul

  • ❌ Livewire tidak berfungsi (tombol tidak responsif, data tidak update)
  • ๐ŸŒ Ada request mencurigakan ke async.gsyndication.com di console browser
  • ๐ŸŒ Website terasa lambat atau muncul iklan pop-up tidak dikenal
  • ๐Ÿ“ File .env atau composer.json mungkin berubah tanpa izin
Sebelum mulai – Backup dulu!
Pastikan Anda memiliki akses root (atau user dengan privilege tinggi) di Cyberpanel. Siapkan koneksi internet stabil.

๐Ÿงน Langkah Pembersihan (Lengkap & Mudah Diikuti)

1 Buka Cyberpanel

Login ke Cyberpanel Anda melalui browser (biasanya https://domainanda:8090). Masukkan username dan password admin.

2 Masuk ke File Manager

Di sidebar kiri, klik File Manager. Pilih domain atau website yang terinfeksi.

3 Rename public_htmlpublic_html_backup

Cari folder public_html (atau document root Laravel, misal public jika pakai symbolic link). Klik kanan → Rename → menjadi public_html_backup.

๐Ÿ”’ Tujuannya: mengisolasi file lama yang terinfeksi, agar tidak ikut mempengaruhi proses instalasi baru.
4 Buat folder baru public_html

Klik Create New → Folder → beri nama public_html. Permission folder: 755 (klik kanan → Change Permissions).

5 Isi folder baru dengan source code bersih

๐Ÿ”น Jika pakai Git:
Masuk ke folder public_html via terminal (atau File Manager → Open Terminal). Jalankan:

git clone https://github.com/username/repo-anda.git .

Atau jika sudah ada remote:

git pull origin main

๐Ÿ”น Jika tidak pakai Git (upload manual):
Upload ulang semua file Laravel dari komputer lokal yang bersih (belum terinfeksi). Gunakan fitur Upload di File Manager atau FTP.

๐Ÿ’ก Tips: Pastikan source code yang diupload adalah versi terakhir sebelum terinfeksi atau versi bersih dari repository.
6 Pindahkan file .env dari folder backup

Buka folder public_html_backup. Cari file .env → Copy lalu paste ke public_html yang baru. Atur permission .env menjadi 644.

๐Ÿง  Mengapa harus dipindah? Karena .env berisi kredensial database dan konfigurasi unik. File ini jarang terinfeksi, tapi amannya scan dulu isinya.
7 Install dependencies dengan Composer

Buka terminal di dalam folder public_html. Jalankan:

composer install --no-dev --optimize-autoloader

Tunggu hingga selesai. Jika error (vendor folder tidak bisa dibuat atau memory habis):

๐Ÿ” Alternatif: Copy folder vendor dan node_modules dari public_html_backup ke public_html (hanya jika yakin bersih). Lalu composer dump-autoload.
8 Generate ulang application key & cache
php artisan key:generate
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan livewire:discover   # Penting untuk Livewire!
9 Set permission yang tepat

Di File Manager:
- storage/775
- bootstrap/cache/775
- public/755

10 Restart web server & clear OpCache

Cyberpanel → Web Servers → Pilih OpenLiteSpeed (atau Nginx) → Klik Restart. Jika pakai PHP OpCache, restart juga service PHP.

๐Ÿงช Uji Coba Website

  • ✅ Buka website di mode incognito/private.
  • ✅ Buka console browser (F12) → tab Network – pastikan tidak ada request ke async.gsyndication.com.
  • ✅ Uji komponen Livewire: klik tombol, submit form, pastikan tidak ada error.

๐Ÿ”’ Langkah Pencegahan (Supaya Tidak Kena Lagi)

  • ๐Ÿ“ฆ Update Laravel, Livewire, dan semua package secara berkala.
  • ๐Ÿ” Ganti semua password (database, FTP, Cyberpanel, SSH).
  • ๐Ÿ›ก️ Scan semua file backup dengan antivirus (ClamAV) sebelum dikembalikan.
  • ๐Ÿšซ Batasi akses file sensitif – jangan biarkan .env terbaca dari web (gunakan .htaccess atau aturan Nginx).
  • ๐Ÿ”ฅ Gunakan WAF (ModSecurity / Imunify360).
  • ⚙️ Nonaktifkan fungsi eval() dan system() di php.ini jika tidak perlu.
๐ŸŽ‰ Selamat! Website Anda Bersih Kembali
Dengan mengikuti tutorial ini, malware async.gsyndication.com telah dibasmi dan fungsi Livewire pulih. Monitor log akses selama 24 jam ke depan.
๐Ÿ’ฌ Ada kendala? Jangan ragu bertanya di komunitas Laravel atau Cyberpanel. Tetap tenang, dan lakukan backup rutin!

Sabtu, 18 April 2026

Harga Emas Sentuh Level 4885 19 April 2026, lalu Terkoreksi Menjelang Penutupan Pekan

 


 19 April 2026 – Pergerakan harga emas dunia (XAU/USD) pada perdagangan Jumat (17/4) sempat mencatatkan level tertinggi harian di angka 4885 dollar AS per ons troi. Namun, menjelang penutupan pekan, logam mulia ini mengalami tekanan jual dan turun dari level tersebut.

Lonjakan ke 4885

Pada sesi Eropa hingga awal sesi New York, emas berhasil melambung ke level psikologis 4885. Sentimen utama pendorong kenaikan adalah pelemahan indeks dollar AS (DXY) dan ekspektasi pemangkasan suku bunga The Fed yang masih terjaga. Ketegangan geopolitik di Timur Tengah juga turut menjadi katalis aliran dana aman (safe haven) ke emas.

Tekanan Jual Menjelang Penutupan

Namun, euforia kenaikan meredup saat harga mendekati level resisten kuat 4900. Aksi ambil untung (profit taking) oleh investor besar muncul, terutama setelah rilis data ekonomi AS yang sedikit lebih baik dari perkiraan. Akibatnya, emas tergelincir dan ditutup di area yang lebih rendah dari level tertinggi harian, meskipun masih berada di zona hijau secara harian.

Analisis Teknis

Secara teknikal, sentuhan level 4885 menunjukkan upaya bullish, tetapi kegagalan bertahan di atas 4880 memberi sinyal potensi koreksi jangka pendek. Support terdekat saat ini berada di area 4830-4800


, sementara resisten utama tetap di 4900. Trader akan mencermati pergerakan pekan depan untuk menentukan arah selanjutnya.

Kesimpulan

Pergerakan emas Jumat lalu memberikan pelajaran bahwa level psikologis 4885 masih menjadi tantangan bagi bulls. Dengan adanya aksi jual menjelang akhir pekan, kemungkinan konsolidasi akan terjadi sebelum emas mampu menembus level tertinggi baru. Investor disarankan memantau rilis data inflasi dan pernyataan pejabat The Fed pekan depan.

Jangan Panik! Salah Ganti Port CyberPanel? Ini Cara Benar & Aman Memperbaikinya

Perbaiki Kesalahan Ganti Port CyberPanel (Tidak Bisa Akses)
๐Ÿ”ง Perbaikan Cepat

❌ Ganti Port CyberPanel Error?
Panduan Fix via SSH

Pernah mengganti port default (8090) lalu panel tidak bisa diakses? Browser loading terus atau "connection refused"? Tenang — ikuti langkah di bawah, panel kembali normal dalam hitungan menit.

⚠️ Kenapa Bisa Salah Ganti Port?

  • ❌ Salah mengetik nomor port (misal 80900 bukan 8090)
  • ❌ Lupa menambahkan * atau format yang benar
  • ❌ Firewall belum membuka port baru
  • ❌ Lupa merestart layanan CyberPanel
Yang Harus Disiapkan
• PuTTY (Windows) atau terminal (Linux/Mac)
• IP server VPS / dedicated
• Username & password user panel (bukan root, tapi user dengan sudo, misal paneladmin)
• Koneksi internet stabil
๐Ÿ“Œ Catatan: Jika lupa password user panel, login sebagai root (jika diizinkan).

๐Ÿ› ️ Langkah Demi Langkah Memperbaiki Port CyberPanel

1 Login ke Server via PuTTY

Buka PuTTY, masukkan IP server, klik Open. Login dengan user panel:

login as: nama_user_panel
password: **********
2 Masuk ke folder lscp
cd /usr/local/lscp

Jika folder tidak ada, cari dengan:

find / -type d -name "lscp" 2>/dev/null
3 Edit file bind.conf
sudo nano /usr/local/lscp/conf/bind.conf

Atau jika sudah di /usr/local/lscp:

sudo nano conf/bind.conf

Masukkan password user panel (karena pakai sudo).

4 Ganti baris port menjadi benar

Cari baris seperti:

listen  *.7017 ganti kembali ke 8090

atau

address = *.8090

Ubah menjadi port yang benar, misalnya:

listen  *.8090
Format wajib: *.nomor_port (bintang dan titik tidak boleh dihapus). Untuk port baru yang valid, misal 8443: listen *.8443

Simpan: Ctrl+XYEnter

5 Restart layanan CyberPanel
sudo systemctl restart lscpd

Atau jika pakai init.d:

sudo service lscp restart
6 Login kembali ke CyberPanel

Buka browser dan akses:

https://ip_server_anda:8090

(atau http:// jika panel menggunakan HTTP)

7 (Penting) Periksa Firewall

Jika tetap tidak bisa, buka port di firewall:

# UFW
sudo ufw allow 8090/tcp

# CSF
sudo csf -a 8090
sudo csf -r

# iptables
sudo iptables -A INPUT -p tcp --dport 8090 -j ACCEPT
sudo iptables-save
๐Ÿ” Apa yang Harus Dilakukan Jika bind.conf Tidak Ditemukan?
Jangan panik. Cari file konfigurasi yang berisi port 8090:
find /usr/local/lscp -name "*.conf" | xargs grep -l "8090"
Kemungkinan file bernama cyberpanel.conf atau lscp.conf. Edit file tersebut dengan cara yang sama.

๐Ÿ›ก️ Tips Agar Tidak Salah Ganti Port di Masa Depan

  • Backup konfigurasi sebelum edit: sudo cp /usr/local/lscp/conf/bind.conf /usr/local/lscp/conf/bind.conf.backup
  • Catat port baru di password manager
  • Jangan gunakan port yang sudah dipakai (cek dengan sudo netstat -tulpn)
  • Uji akses dari browser sebelum logout dari SSH
  • Selalu restart service setelah edit konfigurasi
๐ŸŽ‰ Kesimpulan
Salah ganti port CyberPanel bukan akhir dari segalanya. Dengan akses SSH, edit file bind.conf, dan restart layanan, panel Anda akan normal kembali. Tetap tenang dan ikuti panduan di atas.
๐Ÿ’ฌ Masih mengalami kendala? Tinggalkan komentar di bawah atau hubungi dukungan hosting Anda. Jangan lupa selalu backup rutin! ๐Ÿ˜Š