Cara Menggunakan Tcpdump Di Linux

Cara Menggunakan Tcpdump Di Linux

Ingin tahu lebih banyak tentang traffic di jaringan kalian? Pelajari cara menggunakan tcpdump di Linux dengan contoh berikut.

Apakah kalian sedang mencoba menangkap paket data untuk menganalisis traffic di jaringan kalian? Mungkin kalian adalah administrator server yang mengalami masalah dan ingin memantau data yang dikirimkan di jaringan. Apapun situasinya, tcpdump Linux adalah yang kalian butuhkan. Pada artikel ini, kita akan membahas perintah tcpdump secara rinci, bersama dengan beberapa panduan tentang cara menginstal dan menggunakan tcpdump di sistem Linux.

Baca Juga: Cara Uninstall Aplikasi Di Linux Dengan Apt

Apa Itu Perintah Tcpdump?

Tcpdump adalah network monitoring tool yang powerfull yang memungkinkan pengguna untuk menyaring paket dan traffic di jaringan secara efisien. Kalian bisa mendapatkan informasi rinci yang berkaitan dengan TCP/IP dan paket yang dikirimkan di jaringan kalian.

Tcpdump adalah utilitas command-line, yang berarti kalian masih dapat menjalankannya di sistem Linux non-GUI. Administrator sistem juga dapat mengintegrasikan utilitas tcpdump dengan cron untuk mengotomatiskan berbagai tugas seperti logging. Karena berbagai fiturnya membuatnya cukup serbaguna, tcpdump berfungsi sebagai pemecahan masalah serta tool keamanan.

Cara Menginstal Tcpdump Di Linux

Meskipun sebagian besar distribusi Linux sudah mengintall paket tcpdump secara otomatis di sistem mereka, tetapi ada juga beberapa distribusi Linux yang tidak disertakan dengan paket tersebut. Oleh karena itu, kalian mungkin harus menginstal utilitas tersebut secara manual di sistem kalian.

Kalian dapat memeriksa apakah tcpdump telah terinstall pada sistem kalian dengan menggunakan perintah:

which tcpdump

Jika output menampilkan jalur direktori (/usr/bin/tcpdump), maka sistem kalian telah menginstal paket tersebut. Namun jika tidak, kalian dapat melakukannya dengan mudah menggunakan package manager default di sistem kalian.

Untuk menginstal tcpdump pada distribusi berbasis Debian seperti Ubuntu kalian bisa menggunakan perintah berikut:

sudo apt-get install tcpdump 

Menginstal tcpdump di CentOS juga mudah, cukup gunakan perintah berikut.

sudo yum install tcpdump 

Pada distribusi berbasis Arch kalian bisa menggunakan perintah:

sudo pacman -S tcpdump 

Sedangkan untuk menginstal di Fedora, kalia bisa menggunakan perintah:

sudo dnf install tcpdump

Perhatikan bahwa paket tcpdump memerlukan libcap sebagai dependensi, jadi pastikan kalian menginstalnya juga di sistem kalian.

Cara Menggunakan Tcpdump Di Linux

Jika tcpdump sudah terinstall di sistem Linux kalian, sekarang saatnya untuk memantau beberapa paket. Karena tcpdump memerlukan izin pengguna super untuk menjalankan sebagian besar operasi, kalian harus menambahkan sudo ke perintah kalian.

1. Periksa Daftar Network Interface

Untuk memeriksa nework interface mana yang tersedia untuk di capture, gunakan tanda –D dengan perintah tcpdump.

tcpdump -D 

Meneruskan flag –list-interfaces sebagai argumen akan mengembalikan output yang sama.

tcpdump --list-interfaces

Outputnya adalah daftar semua interface jaringan yang ada di sistem kalian.

Setelah mendapatkan daftar interface jaringan, sekarang saatnya untuk memantau jaringan kalian dengan menangkap paket di sistem kalian. Meskipun kalian dapat menentukan interface mana yang ingin kalian gunakan, argumen apa pun memerintahkan tcpdump untuk menangkap paket jaringan menggunakan interface aktif apa pun.

tcpdump --interface any

Sistem akan menampilkan output sebagai berikut.

2. Format Output Tcpdump

Mulai dari baris ketiga, setiap baris output menunjukkan paket tertentu yang ditangkap oleh tcpdump. Seperti inilah tampilan output dari satu paket.

17:00:25.369138 wlp0s20f3 Out IP localsystem.40310 > kul01s10-in-f46.1e100.net.https: Flags [P.], seq 196:568, ack 1, win 309, options [nop,nop,TS val 117964079 ecr 816509256], length 33

Ingatlah bahwa tidak semua paket ditangkap dengan cara ini, tetapi ini adalah format umum yang diikuti oleh sebagian besar paket. Outputnya berisi informasi berikut.

  • Timestamp paket yang diterima
  • Nama interface
  • Packet flow
  • Nama protokol jaringan
  • Detail IP address dan port
  • TCP flags
  • Nomor urut data dalam paket
  • Ack data
  • Window size
  • Packet length

Field pertama ( 17: 00: 25.369138 ) menampilkan timestamp ketika sistem kalian mengirim atau menerima paket. Waktu yang direkam diambil dari waktu lokal sistem kalian.

Field kedua dan ketiga menunjukkan interface yang digunakan dan packet flow. Dalam potongan di atas, wlp0s20f3 adalah nama interface nirkabel dan Out adalah packet flow.

Field keempat mencakup informasi yang berkaitan dengan nama protokol jaringan. Secara umum, kalian akan menemukan dua protokol yaitu IP dan IP6, di mana IP menunjukkan IPV4 dan IP6 untuk IPV6.

Field berikutnya berisi IP address atau nama sistem sumber dan tujuan. IP address diikuti dengan nomor port.

Field keenam dalam output terdiri dari tanda TCP. Ada berbagai flag yang digunakan dalam output tcpdump.

Nama FlagNilaiDeskripsi
SYNSKoneksi dimulai
SIRIPFKoneksi selesai
DORONGP.Data didorong
RSTRKoneksi disetel ulang
ACK.Acknowledgement

Output-nua juga bisa berisi kombinasi dari beberapa flag TCP. Misalnya, FLAG [f.] adalah singkatan dari paket FIN-ACK.

Kemduian jika kita menulusuri lebih jauh lagi potongan output, field berikutnya berisi nomor urut (seq 196:568) dari data dalam paket. Paket pertama selalu memiliki nilai bilangan bulat positif, dan paket berikutnya menggunakan nomor urut relatif untuk meningkatkan aliran data.

Field berikutnya berisi acknowledgment number (ack 1), atau simple Ack number. Paket yang ditangkap di mesin pengirim memiliki 1 sebagai nacknowledgment number. Di sisi penerima, Ack number adalah nilai paket berikutnya.

Field kesembilan dalam output mengakomodasi windos size (win 309), yang merupakan jumlah byte yang tersedia di buffer penerima. Ada beberapa field lain yang mengikuti windos size, termasuk Maximum Segment Size (MSS).

Field terakhir (length 33) berisi panjang dari keseluruhan paket yang ditangkap oleh tcpdump.

3. Batasi Jumlah Paket Yang Diambil

Saat menjalankan perintah tcpdump untuk pertama kalinya, kalian mungkin memperhatikan bahwa sistem terus menangkap paket jaringan hingga kalian melewatkan sinyal interupsi. Kalian dapat mengganti perilaku default ini dengan menentukan jumlah paket yang ingin kalian tangkap sebelumnya menggunakan flag -c.

tcpdump --interface any -c 10

Perintah yang disebutkan di atas akan menangkap sepuluh paket dari interface jaringan yang aktif.

4. Filter Paket Berdasarkan Fields

Saat kalian memecahkan masalah, mendapatkan blok besar output teks di terminal kalian tidak membuatnya lebih mudah. Di situlah fitur pemfilteran di tcpdump berperan. Kalian dapat memfilter paket sesuai dengan berbagai field termasuk host, protokol, nomor port, dan banyak lagi. Untuk menangkap hanya paket TCP, ketikan perintah berikut:

tcpdump --interface any -c 5 tcp

Demikian pula, jika kalian ingin memfilter output menggunakan nomor port:

tcpdump --interface any -c 5 port 50

Perintah yang disebutkan di atas hanya akan mengambil paket yang dikirimkan melalui port yang ditentukan. Untuk mendapatkan detail paket untuk host tertentu:

tcpdump --interface any -c 5 host 112.123.13.145

Jika kalian ingin memfilter paket yang dikirim atau diterima oleh host tertentu, gunakan argumen src atau dst dengan perintah:

tcpdump --interface any -c 5 src 112.123.13.145
tcpdump --interface any -c 5 dst 112.123.13.145

Kalian juga dapat menggunakan operator logika and dan or untuk menggabungkan dua atau lebih ekspresi bersama-sama. Misalnya, untuk mendapatkan paket yang termasuk dalam source IP 112.123.13.145 dan gunakan port 80:

tcpdump --interface any -c 10 src 112.123.13.145 and port 80

Ekspresi kompleks dapat dikelompokkan bersama menggunakan tanda kurung sebagai berikut:

tcpdump --interface any -c 10 "(src 112.123.13.145 or src 234.231.23.234) and (port 45 or port 80)" 5. 

5. Lihat Isi Paket

Kalian dapat menggunakan flag -A dan -x dengan perintah tcpdump untuk menganalisis isi paket jaringan. Flag -A merupakan singkatan ASCII Format dan -x menandakan format heksadesimal. Gunakan perintah dibawah ini untuk melihat isi paket jaringan berikutnya yang diambil oleh sistem:

tcpdump --interface any -c 1 -A
tcpdump --interface any -c 1 -x

6. Simpan Data Capture Ke File

Jika kalian ingin menyimpan data capture untuk tujuan referensi, tcpdump ada untuk membantu kalian. Cukup berikan flag -w dengan perintah default untuk menulis output ke file daripada menampilkannya di layar.

tcpdump --interface any -c 10 -w data.pcap

Ekstensi file .pcap merupakan singkatan packet capture data. Kalian juga dapat mengeluarkan perintah yang disebutkan di atas dalam mode verbose menggunakan -v flag.

tcpdump --interface any -c 10 -w data.pcap -v

Untuk membaca file .pcap menggunakan tcpdump, gunakan tanda -r diikuti dengan path file. Flag -r singkatan dari Read.

tcpdump -r data.pcap

Kalian juga dapat memfilter paket jaringan dari data paket yang disimpan dalam file.

tcpdump -r data.pcap port 80

Kesimpulan

Jadi itulah cara menggunakan tcpdump di Linux. Perintah tcpdump adalah salah satu tool yang bagus untuk mengatur server Linux. Kalian dapat dengan mudah memperbaiki masalah terkait jaringan dengan menangkap paket yang dikirimkan di jaringan kalian secara real-time. Namun sebelumnya, perangkat kalian harus terhubung ke internet.


Sekian artikel Cara Menggunakan Tcpdump Di Linux. Nantikan artikel menarik lainnya dan jangan lupa share artikel ini ke teman-teman kalian. Terimakasih…

Related posts

Persamaan Dan Perbedaan Router Dan Switch

Apa Perbedaan Router Dan MikroTik?

Cara Menggunakan Nmap Untuk Pemula