[ASK] Bagaimana Cara Anda Menghandle Malicious Connection di Server/VPS ?


BagasCoding

Beginner 1.0
Tuan2ku,

Mohon maaf newbie mau bertanya,
Mohon maaf juga kalau misal pernah dibahas sebelumnya (double-post),

VPS = di Indo
OS = Ubuntu 24.04
Dari sisi keamanannya saya pake CSF, fail2ban, ipset, iptables

Rencananya server ini untuk dipake buat layanan Business Web Application, tapi pas saya liat di /var/log/syslog, terindikasi selalu ada incoming connection yg di block, saya namain aja "Malicious Connection" karena saya gak tau istilah khususnya.

Ini isi /var/log/syslog nya:

Code:
[email protected] ~ # tail -100 /var/log/syslog | grep "_IN Blocked"
2025-01-12T00:30:41.931343+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=1.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=40 TOS=0x00 PREC=0x00 TTL=15 ID=11223 PROTO=TCP SPT=64490 DPT=8000 WINDOW=50169 RES=0x00 SYN URGP=0
2025-01-12T00:31:39.868257+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=8.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=52 TOS=0x14 PREC=0x00 TTL=53 ID=49369 DF PROTO=TCP SPT=50393 DPT=8083 WINDOW=61690 RES=0x00 SYN URGP=0
2025-01-12T00:32:21.868476+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=47.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=52 TOS=0x14 PREC=0x00 TTL=53 ID=11524 DF PROTO=TCP SPT=12548 DPT=8083 WINDOW=61690 RES=0x00 SYN URGP=0
2025-01-12T00:35:39.578279+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=105.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=40 TOS=0x00 PREC=0x00 TTL=241 ID=61543 PROTO=TCP SPT=41616 DPT=2001 WINDOW=1024 RES=0x00 SYN URGP=0
2025-01-12T00:38:54.322249+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=159.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=44 TOS=0x00 PREC=0x00 TTL=235 ID=54321 PROTO=TCP SPT=53866 DPT=8085 WINDOW=65535 RES=0x00 SYN URGP=0
2025-01-12T00:39:36.192453+07:00 dev-XXXX kernel: Firewall: *UDP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=144.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=446 TOS=0x00 PREC=0x00 TTL=53 ID=36291 DF PROTO=UDP SPT=5097 DPT=5084 LEN=426
2025-01-12T00:41:24.453268+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=220.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=44 TOS=0x00 PREC=0x00 TTL=235 ID=22300 PROTO=TCP SPT=36634 DPT=9093 WINDOW=1024 RES=0x00 SYN URGP=0
2025-01-12T00:46:20.365276+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=172.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=40 TOS=0x00 PREC=0x00 TTL=235 ID=54321 PROTO=TCP SPT=42127 DPT=4332 WINDOW=65535 RES=0x00 SYN URGP=0
2025-01-12T00:47:47.796335+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=15.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=60 TOS=0x00 PREC=0x00 TTL=51 ID=43909 DF PROTO=TCP SPT=9961 DPT=1024 WINDOW=5840 RES=0x00 SYN URGP=0
2025-01-12T00:49:59.045163+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=152.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=60 TOS=0x08 PREC=0x20 TTL=36 ID=6114 DF PROTO=TCP SPT=46210 DPT=7988 WINDOW=29200 RES=0x00 SYN URGP=0
2025-01-12T00:54:54.893257+07:00 dev-XXXX kernel: Firewall: *TCP_IN Blocked* IN=eth0 OUT= MAC=XXXX SRC=175.XXX.XXX.XXX DST=103.XXX.XXX.XXX LEN=40 TOS=0x00 PREC=0x00 TTL=18 ID=9396 PROTO=TCP SPT=19995 DPT=81 WINDOW=6120 RES=0x00 SYN URGP=0

Utk kondisi sekarang, saya coba pakai kombinasi cara berikut:

  • Server saya ini cuman di open port utk 3 hal: port 80 & 443 utk web dan ssh di port 1111 dan port ssh hanya bisa di akses oleh IP tertentu, login ssh tidak bisa pakai password tapi harus pakai ssh-key
  • Fail2ban mendeteksi Malicious Connection yg di block oleh firewall dgn keyword "TCP_IN Blocked" atau "UDP_IN Blocked" lalu akan masuk ke dalam daftar blacklist ipset
  • Jika menemukan Malicious Connection, IP Address nya saya ambil dan saya block subnetnya, misal incomingnya adalah xxx.xxx.xxx.3 maka saya langsung ban subnetnya xxx.xxx.xxx.0/24 selama 3 hari
  • Daftar blacklist ipset ini digunakan oleh iptables untuk nge-block IP si Malicious Connection tadi
  • Nanti setelah 3 hari IP yg di ban tadi di release di unban, supaya daftar blacklist gak panjang2 amat dan tidak terlalu membebani performance server saya

Informasi tambahan:

  • Sebelum saya terapkan cara di atas, dalam 1 menit itu bisa ada 6-10 incoming connection.
  • Setelah saya terapkan cara di atas, sekarang 1 incoming connection itu muncul dalam 1-7 menit. Banyak berkurang lah intinya.

Tapi, kesemuanya ini saya dapat infonya dgn cara google sana sini dan tanya chatgpt. Saya gak tau apakah yg saya lakukan ini proper, apakah cara ini juga dilakukan oleh orang lain pada umumnya atau mungkin cara spt saya ini tidak umum dan ada cara yg lebih efektif.

Pertanyaan saya adalah:

1. Tuan2 yg punya dedicated server, vps, apakah melakukan hal seperti ini juga kah, atau justru malicious IP ini sudahlah dibiarkan aja, toh kan koneksinya di block juga akhirnya kan, jadi kita tidak perlu khawatir dan tidak usah diurusin yg beginian tuh.

2. Lama kelamaan kan si daftar blacklist ini bisa panjang ya, bisa ribuan bahkan puluhan ribu, lah kan berarti sedikit banyaknya pasti berdampak ke performance server dan user experience dari Business Web Application user dari server ini. Kalau iya, lalu solusinya apa ya tuan yg lebih "performance effectve"?

3. Boleh dong tuan2 share mungkin ada cara atau ide lain yg tak terpikirkan oleh newbie seperti saya :)

Terima kasih Tuan2ku.
 
1. Tuan2 yg punya dedicated server, vps, apakah melakukan hal seperti ini juga kah, atau justru malicious IP ini sudahlah dibiarkan aja, toh kan koneksinya di block juga akhirnya kan, jadi kita tidak perlu khawatir dan tidak usah diurusin yg beginian tuh.

betul, selama koneksi sudah terblokir oleh firewall harusnya tidak masalah, tinggal diamankan dari sisi web dan web server, tambahkan WAF/modsecurity untuk memblokir akses ilegal ke website

2. Lama kelamaan kan si daftar blacklist ini bisa panjang ya, bisa ribuan bahkan puluhan ribu, lah kan berarti sedikit banyaknya pasti berdampak ke performance server dan user experience dari Business Web Application user dari server ini. Kalau iya, lalu solusinya apa ya tuan yg lebih "performance effectve"?

pakai firewall yang ampuh, banyak aplikasi firewall yang gratis dan berbayar, yang murah bisa juga pakai cpguard/opsshield,
bahkan di kami tembus 2jt hit / 2jt IP per hari per server, tentunya spek server juga harus mampuni ketika ada lonjakan traffic atau DoS.
 
betul, selama koneksi sudah terblokir oleh firewall harusnya tidak masalah, tinggal diamankan dari sisi web dan web server, tambahkan WAF/modsecurity untuk memblokir akses ilegal ke website



pakai firewall yang ampuh, banyak aplikasi firewall yang gratis dan berbayar, yang murah bisa juga pakai cpguard/opsshield,
bahkan di kami tembus 2jt hit / 2jt IP per hari per server, tentunya spek server juga harus mampuni ketika ada lonjakan traffic atau DoS.

Wahh, makasih Tuan buat masukannya
 
Back
Top