Apa yang bisa kami bantu?

A. Pendahuluan

SYN Flood merupakan salah satu jenis serangan Denial-of-Service (DoS) yang memanfaatkan proses TCP 3-way handshake. Pada serangan ini, attacker mengirimkan sejumlah besar paket SYN ke server tanpa menyelesaikan proses handshake dengan mengirimkan ACK.

Pada kondisi normal, koneksi TCP dilakukan melalui tiga tahapan, yaitu SYN, SYN-ACK, dan ACK. Setelah menerima SYN dari client, server akan memberikan respons SYN-ACK dan menunggu ACK untuk menyelesaikan proses handshake. Apabila terdapat banyak koneksi yang belum menyelesaikan proses tersebut, resource dan antrean koneksi pada server dapat terbebani sehingga berpotensi memengaruhi koneksi dari pengguna legitimate.

Salah satu mitigasi yang dapat diterapkan pada VPS Ubuntu adalah mengaktifkan TCP SYN Cookies. TCP SYN Cookies memungkinkan kernel menangani koneksi TCP yang belum menyelesaikan proses handshake tanpa harus mempertahankan state koneksi pending secara penuh. Mekanisme ini dapat membantu mengurangi dampak SYN Flood pada server.

 

B. Langkah-Langkah Penanganan

Konfigurasi pada artikel ini dapat diterapkan pada layanan VPS yang menggunakan sistem operasi Ubuntu dan memiliki akses root atau sudo. Konfigurasi dilakukan pada sisi sistem operasi melalui sysctl untuk mengaktifkan fitur TCP SYN Cookies sebagai salah satu mitigasi terhadap SYN Flood Attack.

 

1. Memeriksa Indikasi SYN Flood

Untuk melihat koneksi TCP yang sedang berada pada status SYN-RECV, jalankan perintah berikut:

ss -ant state syn-recv

 

Gambar 1. Pemeriksaan Koneksi SYN-RECV

 

Status SYN-RECV menunjukkan bahwa server telah menerima paket SYN dan mengirimkan SYN-ACK, tetapi proses TCP handshake belum selesai karena ACK dari client belum diterima.

Untuk mengetahui jumlah koneksi yang sedang berada pada status SYN-RECV, jalankan:

ss -ant state syn-recv | wc -l

 

Gambar 2. Pemeriksaan Jumlah Koneksi SYN-RECV

 

Jumlah koneksi SYN-RECV yang tinggi dapat menjadi salah satu indikasi adanya lonjakan koneksi atau SYN Flood. Namun, kondisi tersebut tidak secara otomatis menunjukkan adanya serangan karena dapat terjadi akibat traffic yang tinggi atau kondisi jaringan tertentu.

 

2. Memeriksa Konfigurasi TCP SYN Cookies

Periksa status TCP SYN Cookies dengan menjalankan:

sysctl net.ipv4.tcp_syncookies

 

Gambar 3. Pemeriksaan TCP SYN Cookies

 

Apabila output menunjukkan:

net.ipv4.tcp_syncookies = 1

maka TCP SYN Cookies telah aktif.

Apabila output menunjukkan:

net.ipv4.tcp_syncookies = 0

maka TCP SYN Cookies belum aktif dan dapat diaktifkan pada tahap berikutnya.

 

3. Mengaktifkan TCP SYN Cookies

Untuk mengaktifkan TCP SYN Cookies, jalankan:

sudo sysctl -w net.ipv4.tcp_syncookies=1

 

Gambar 4. Mengaktifkan TCP SYN Cookies

 

Setelah konfigurasi diterapkan, lakukan pengecekan kembali:

sysctl net.ipv4.tcp_syncookies

Pastikan output menunjukkan:

net.ipv4.tcp_syncookies = 1

TCP SYN Cookies akan membantu kernel menangani koneksi TCP yang belum menyelesaikan proses handshake dengan mengurangi kebutuhan untuk mempertahankan state koneksi pending secara penuh.

 

4. Membuat Konfigurasi Persistent

Konfigurasi yang diterapkan menggunakan sysctl -w dapat kembali berubah setelah server melakukan reboot. Agar TCP SYN Cookies tetap aktif setelah reboot, tambahkan konfigurasi pada file sysctl.

Buat atau edit file berikut:

sudo nano /etc/sysctl.d/99-hardening.conf

 

Tambahkan konfigurasi berikut:

net.ipv4.tcp_syncookies = 1
Gambar 5. Konfigurasi TCP SYN Cookies

 

Simpan konfigurasi tersebut, kemudian terapkan menggunakan:

sudo sysctl -p /etc/sysctl.d/99-hardening.conf

 

Gambar 6. Menerapkan Konfigurasi TCP SYN Cookies

 

5. Verifikasi Konfigurasi

Setelah konfigurasi diterapkan, lakukan verifikasi dengan menjalankan:

sysctl net.ipv4.tcp_syncookies

 

Gambar 7. Verifikasi TCP SYN Cookies

 

Pastikan output menunjukkan:

net.ipv4.tcp_syncookies = 1

Untuk memantau koneksi yang masih berada pada status SYN-RECV, jalankan:

ss -ant state syn-recv

 

Gambar 8. Monitoring Koneksi SYN-RECV

 

Setelah konfigurasi diterapkan, lakukan monitoring terhadap kondisi server dan pastikan layanan dapat diakses secara normal.

 

C. Kesimpulan

Selamat! Anda telah berhasil mengaktifkan dan mengonfigurasi TCP SYN Cookies pada layanan VPS Ubuntu sebagai salah satu mitigasi terhadap SYN Flood Attack. Dengan konfigurasi ini, kernel dapat menangani koneksi TCP yang belum menyelesaikan proses handshake secara lebih efisien sehingga dapat membantu mengurangi dampak SYN Flood terhadap layanan VPS.

Semoga artikel ini dapat membantu Anda. Temukan bantuan lainnya melalui Knowledge Base Biznet Gio. Jika Anda masih memiliki kendala silakan hubungi Support Biznet GIO melalui email support@biznetgio.com atau live chat maupun WA ke website www.biznetgio.com dan bisa juga melalui telepon ke nomor (021) 5714567.