Dalam panduan ini, kami akan menunjukkan cara memasang tcpdump pada sistem Linux dan cara menangkap dan menganalisis paket TCP/IP menggunakan tcpdump.
Cara Memasang Tcpdump
Tcpdump diprapasang pada banyak pengedaran Linux. Tetapi jika ia belum dipasang pada sistem anda, anda boleh memasang tcpdump pada sistem Linux anda. Untuk memasang tcpdump pada sistem Ubuntu 22.04, gunakan arahan berikut:
$ sudo apt pasang tcpdump
Untuk memasang tcpdump pada Fedora/CentOS, gunakan arahan berikut:
$ sudo dnf pasang tcpdump
Cara Menangkap Paket Menggunakan Perintah Tcpdump
Untuk menangkap paket dengan tcpdump, lancarkan terminal dengan keistimewaan sudo menggunakan “Ctrl+Alt+t”. Alat ini termasuk pilihan dan penapis yang berbeza untuk menangkap paket TCP/IP. Jika anda ingin menangkap semua paket mengalir antara muka rangkaian semasa atau lalai, gunakan arahan 'tcpdump' tanpa sebarang pilihan.
$ sudo tcpdump
Perintah yang diberikan menangkap paket antara muka rangkaian lalai sistem anda.
Pada akhir pelaksanaan arahan ini, semua kiraan paket yang ditangkap dan ditapis dipaparkan pada terminal.
Mari kita fahami output.
Tcpdump membolehkan analisis pengepala paket TCP/IP. Ia menunjukkan satu baris untuk setiap paket, dan arahan itu terus berjalan sehingga anda menekan 'Ctrl+C' untuk menghentikannya.
Setiap baris yang disediakan oleh tcpdump mengandungi butiran berikut:
- Cap masa Unix (cth., 02:28:57.839523)
- Protokol (IP)
- Nama hos sumber atau nombor IP dan port
- Nama hos destinasi atau nombor IP dan port
- Bendera TCP (cth., Bendera [F.]) menunjukkan keadaan sambungan dengan nilai seperti S (SYN), F (FIN),. (ACK), P (PUSH), R (RST)
- Nombor jujukan data dalam paket (cth., seq 5829:6820)
- Nombor pengakuan (cth., ack 1016)
- Saiz tetingkap (cth., win 65535) mewakili bait yang tersedia dalam penimbal penerima diikuti dengan pilihan TCP
- Panjang muatan data (mis., panjang 991)
Untuk menyenaraikan semua senarai antara muka rangkaian sistem anda, gunakan perintah 'tcpdump' dengan pilihan '-D'.
$ sudo tcpdump -Datau
$ tcpdump --list-interfacesPerintah ini menyenaraikan semua antara muka rangkaian yang disambungkan atau berjalan pada sistem Linux anda.
Tangkap Paket Antara Muka Rangkaian Ditentukan
Jika anda ingin menangkap paket TCP/IP yang melalui antara muka tertentu, gunakan bendera '-i' dengan arahan 'tcpdump' dan nyatakan nama antara muka rangkaian.
$ sudo tcpdump -i lo
Perintah yang diberikan menangkap trafik pada antara muka 'lo'. Jika anda ingin memaparkan verbose atau maklumat terperinci tentang paket, gunakan bendera '-v'. Untuk mencetak butiran yang lebih komprehensif, gunakan bendera '-vv' dengan arahan 'tcpdump'. Penggunaan dan analisis yang kerap menyumbang kepada mengekalkan persekitaran rangkaian yang teguh dan selamat.
Begitu juga, anda boleh menangkap lalu lintas di mana-mana antara muka menggunakan arahan berikut:
$ sudo tcpdump -i any
Tangkap Paket Menggunakan Port Tertentu
Anda boleh menangkap dan menapis paket dengan menyatakan nama antara muka dan nombor port. Sebagai contoh, untuk menangkap paket rangkaian yang melalui antara muka 'enp0s3' menggunakan port 22, gunakan arahan berikut:
$ tcpdump -i enp0s3 port 22Perintah sebelumnya menangkap semua paket yang mengalir dari antara muka 'enp0s3'.
Tangkap Paket Terhad dengan Tcpdump
Anda boleh menggunakan bendera '-c' dengan arahan 'tcpdump' untuk menangkap bilangan paket tertentu. Sebagai contoh, untuk menangkap empat paket pada antara muka 'enp0s3', gunakan arahan berikut:
$ tcpdump -i enp0s3 -c 4
Gantikan nama antara muka menggunakan sistem anda.
Arahan Tcpdump Berguna untuk Menangkap Trafik Rangkaian
Dalam perkara berikut, kami menyenaraikan beberapa arahan 'tcpdump' berguna yang akan membantu anda dalam menangkap dan menapis trafik rangkaian atau paket dengan cekap:
Menggunakan arahan 'tcpdump', anda boleh menangkap paket antara muka dengan IP destinasi atau IP sumber yang ditentukan.
$ tcpdump -i {interface-name} dst {destination-ip}Anda boleh menangkap paket dengan saiz syot kilat 65535 bait yang berbeza daripada saiz lalai 262144 bait. Dalam versi lama tcpdump, saiz tangkapan dihadkan kepada 68 atau 96 bait.
$ tcpdump -i enp0s3 -s 65535
Cara Menyimpan Paket yang Ditangkap ke dalam Fail
Jika anda ingin menyimpan data yang ditangkap ke dalam fail untuk analisis lanjut, anda boleh melakukannya. Ia menangkap trafik pada antara muka yang ditentukan dan kemudian menyimpannya ke dalam fail '.pcap'. Gunakan arahan berikut untuk menyimpan data yang ditangkap ke dalam fail:
$ tcpdump -iSebagai contoh, kami mempunyai antara muka 'enps03'. Simpan data yang ditangkap ini ke dalam fail berikut:
$ sudo tcpdump -i enps03 -w dump.pcapPada masa hadapan, anda boleh membaca fail yang ditangkap ini menggunakan Wireshark atau alat analisis rangkaian lain. Jadi, jika anda ingin menggunakan Wireshark untuk menganalisis paket, gunakan hujah '-w' dan simpan ke dalam fail '.pcap'.
Kesimpulan
Dalam tutorial ini, kami menunjukkan cara untuk menangkap dan menganalisis paket menggunakan tcpdump dengan bantuan contoh yang berbeza. Kami juga mempelajari cara menyimpan trafik yang ditangkap ke dalam fail '.pcap' yang boleh anda lihat dan analisis menggunakan Wireshark dan alat analisis rangkaian yang lain.