Saya ingin melacak aktivitas jaringan dari suatu perintah, saya mencoba tcpdump dan strace tanpa hasil.
Sebagai contoh, Jika saya menginstal paket atau menggunakan perintah apa pun yang mencoba menjangkau beberapa situs, saya ingin melihat aktivitas jaringan tersebut (situs yang dicoba untuk dijangkau).
Saya kira kita bisa melakukan ini dengan menggunakan tcpdump. Saya mencoba tetapi melacak semua aktivitas jaringan sistem saya. Katakanlah jika saya menjalankan beberapa perintah yang berhubungan dengan jaringan dan saya ingin melacak hanya aktivitas jaringan perintah tertentu, saat itu sulit untuk menemukan solusi yang tepat.
Apakah ada cara untuk melakukan itu?
MEMPERBARUI:
Saya tidak ingin melacak semua yang terjadi pada antarmuka jaringan saya. Saya hanya ingin melacak perintah (misalnya # yum install -y vim) aktivitas jaringan. Seperti situs yang dicoba untuk dijangkau.
Jawaban:
netstat untuk kesederhanaan
Menggunakan
netstat
dan memahami PID atau nama proses:Dan Anda dapat menggunakan
watch
untuk pembaruan dinamis:Dengan:
-n
: Tampilkan alamat numerik alih-alih mencoba menentukan host simbolik, port atau nama pengguna-p
: Tunjukkan PID dan nama program yang dimiliki oleh setiap soket.--inet
: Hanya tampilkan soket protokol mentah, udp dan tcp.strace untuk kata kerja
Anda bilang Anda mencoba
strace
alat ini, tetapi apakah Anda mencoba opsi itutrace=network
? Perhatikan bahwa hasilnya bisa sangat bertele-tele, jadi Anda mungkin perlu beberapa grepping. Anda bisa mulai dengan memahami "sin_addr".Atau, untuk proses yang sudah berjalan, gunakan PID:
sumber
netstat
yang merupakan solusi IMHO paling sederhana dan rapi.strace
output lagi, hanya menyimpanconnect
syscalls dan menghapusdns
permintaan (port 53) dengan:| grep connect | grep -v 'sin_port=htons(53)'
Saya akan membuat namespace jaringan baru , menjembatani itu ke jaringan nyata, dan kemudian memantau jembatan dengan
tcpdump
.sumber
sysdig
memungkinkan Anda untuk memantau semua aktivitas kernel atau beberapa perintah yang berjalan di sistem Anda dalam perjalanan, termasuk dan tidak terbatas pada aktivitas jaringan.Karena hasilnya bisa besar, Anda harus membuat filter, halaman default untuk filter paling dasar cukup mudah dipahami.
Ini juga memiliki keuntungan karena tidak digunakan sebagai pembungkus aplikasi seperti pada
strace
, dan itu bisa sangat kuat.Dari Contoh Sysdig
sumber
Anda bisa menggunakan wireshark untuk mengendus semua lalu lintas input dan output dari antarmuka jaringan. Jika Anda membutuhkan opsi tanpa GUI, Anda dapat menggunakan tshark.
Dengan kedua opsi tersebut, Anda dapat melihat semua lalu lintas jaringan dan menyimpannya untuk kemudian menganalisis semua koneksi yang ada.
sumber