Saya dapat mengendus lalu lintas pc lokal saya tetapi saya ingin tahu bagaimana cara mengendus lalu lintas mesin jarak jauh oleh wireshark?
Ketika dalam opsi tangkap saya pilih antarmuka jarak jauh dan masukkan ip jarak jauh saya tunjukkan error.code (10061). Apa yang harus saya lakukan?
Jawaban:
Di Linux dan OSX Anda dapat mencapai ini dengan menjalankan tcpdump di atas ssh dan membuat wireshark mendengarkannya.
Buat pipa bernama:
$ mkfifo /tmp/remote
Mulai wireshark dari baris perintah
$ wireshark -k -i /tmp/remote
Jalankan tcpdump lewat ssh pada mesin jarak jauh Anda dan arahkan kembali paket ke pipa bernama:
$ ssh root@firewall "tcpdump -s 0 -U -n -w - -i eth0 not port 22" > /tmp/remote
Sumber: http://blog.nielshorn.net/2010/02/using-wireshark-with-remote-capturing/
sumber
ssh root@{MY_VPS_IP} -p 27922 "tcpdump -s 0 -U -n -w - -i eth0 not port 27922" > /tmp/remote
dapatkah Anda memberi tahu saya alasannya?Saya menggunakan oneliner ini sebagai root. Sangat bermanfaat!
ssh root@sniff_server_ip -p port tcpdump -U -s0 'not port 22' -i eth0 -w - | wireshark -k -i -
Yang terakhir
-
sebelum de|
adalah redirection dari output itu dan digunakan untuk input standar oleh wireshark. The-k
pilihan dalam cara wireshark "mulai inmidiately sniffingsumber
Salah satu pendekatan adalah menggunakan apa yang disebut mirror atau span port pada switch Anda. Jika sakelar Anda tidak cukup cerdas, Anda juga dapat menempatkan hub kecil di antara sakelar / host-ke-tangkap. Anda menghubungkan tautan fisik dari host mendengarkan Anda ke port / hub dan kemudian Anda dapat melihat semua lalu lintas melintasi perangkat. Sebagai alternatif, Anda harus menginstal perangkat lunak penangkapan paket di lokasi yang lebih strategis di jaringan Anda seperti firewall / router perbatasan.
sumber
Anda dapat menggunakan deskriptor file untuk terhubung ke dan menerima paket dengan
ssh
dan pipa itu ke wireshark secara lokal:wireshark -i <(ssh root@firewall tcpdump -s 0 -U -n -w - -i eth0 not port 22)
Anda wireshark akan terbuka dan menampilkan "Antarmuka" seperti
/dev/fd/63
, yang merupakan deskriptor file yang berisi data dari sistem jarak jauh.sumber
lihat info tentang pengaturan komputer jarak jauh, untuk memungkinkan mesin lokal Anda terhubung dan menangkap
http://wiki.wireshark.org/CaptureSetup/WinPcapRemote
sumber
Di bawah RHEL, jawaban konrad tidak berfungsi untuk saya karena
tcpdump
memerlukan root, dan saya hanya memiliki akses sudo. Apa yang berhasil adalah membuat fifo jarak jauh tambahan yang bisa saya baca:dan mengirim data dengan koneksi terpisah:
dan akhirnya mulai Wireshark
sumber
Anda hanya dapat mengendus lalu lintas yang membuatnya untuk Anda. Jadi Joe A pergi ke Joe B tidak pernah mendekati PC Anda, jadi Anda tidak dapat melihatnya.
Satu-satunya cara bagi Anda untuk mendapatkan lalu lintas atau mendapatkan lalu lintas untuk Anda. Untuk sampai ke lalu lintas memerlukan koneksi ke router atau switch atau hub yang baik di suatu tempat di tengah koneksi mereka. Untuk mendapatkan lalu lintas kepada Anda, Anda harus meracuni beberapa switch ARP sehingga mereka berpikir Anda itu.
sumber
Selain jawaban sebelumnya, versi dengan netcat
nc
mungkin berguna juga:Host jarak jauh:
mkfifo /tmp/mypcap.fifo
tcpdump -i em0 -s 0 -U -w - > /tmp/mypcap.fifo
nc -l 10000 < /tmp/mypcap.fifo
Tuan rumah lokal:
wireshark -ki <(nc 192.168.1.1 10000)
Catatan tentang metode ini: Ini membuat port tidak aman terbuka untuk semua antarmuka, jadi pastikan untuk menyaring koneksi masuk dengan aturan firewall.
sumber