Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Sekiranya anda menjalankan pelayan, anda pasti akan sampai ke titik di mana anda perlu menyelesaikan beberapa masalah yang berkaitan dengan rangkaian. Sudah tentu mudah untuk menghantar surat ke bahagian sokongan, tetapi kadang-kadang anda perlu membuat tangan anda kotor. Dalam kes ini, tcpdump
adakah alat untuk pekerjaan itu. Tcpdump adalah penganalisis paket rangkaian yang berjalan di bawah baris arahan.
Artikel ini akan dibahagikan kepada tiga bahagian:
Oleh kerana tcpdump tidak disertakan dengan kebanyakan sistem asas, anda perlu memasangnya. Walau bagaimanapun, hampir semua pengedaran Linux mempunyai tcpdump di repositori teras mereka. Untuk pengedaran berasaskan Debian, arahan untuk memasang tcpdump adalah:
apt-get install tcpdump
Untuk CentOS / RedHat, gunakan arahan berikut:
yum install tcpdump
FreeBSD menawarkan pakej pra-binaan yang dapat dipasang dengan mengeluarkan:
pkg install tcpdump
Terdapat juga port yang tersedia, net/tcpdump
yang boleh dipasang melalui:
cd /usr/ports/net/tcpdump
make install clean
Sekiranya anda berlari tcpdump
tanpa sebarang hujah, anda akan dipukul dengan keputusan. Menjalankannya pada contoh yang baru diputar di sini di Vultr kurang dari lima saat memberikan hasil berikut:
2661 packets captured
2663 packets received by filter
0 packets dropped by kernel
Sebelum menerangkan lebih terperinci mengenai cara menyaring input, anda harus melihat beberapa parameter yang dapat diteruskan ke tcpdump:
-i
- Menentukan antara muka yang anda hendak dengar pada, sebagai contoh: tcpdump -i eth0
.-n
- Jangan cuba melakukan carian terbalik pada alamat IP, misalnya: tcpdump -n
(jika anda menambahkan n
tcpdump lain akan menunjukkan nombor port dan bukannya nama).-X
- Tunjukkan kandungan paket yang dikumpul: tcpdump -X
.-c
- Hanya menangkap x
paket, x
menjadi nombor sewenang-wenang, misalnya tcpdump -c 10
menangkap tepat 10 paket.-v
- Menambah jumlah maklumat paket yang anda tunjukkan, lebih banyak v
menambah lebih banyak ketajaman.Setiap parameter yang disebutkan di sini dapat digabungkan bersama. Sekiranya anda ingin menangkap 100 paket, tetapi hanya pada antarmuka VPN anda tun0, maka perintah tcpdump akan kelihatan seperti ini:
tcpdump -i tun0 -c 100 -X
Terdapat berpuluh-puluh (jika tidak beratus-ratus) pilihan selain beberapa pilihan, tetapi mereka adalah pilihan yang paling biasa. Jangan ragu untuk membaca halaman utama tcpdump di sistem anda.
Sekarang setelah anda memahami asas tcpdump, inilah masanya untuk melihat salah satu ciri tcpdump yang paling hebat: ungkapan. Ungkapan akan menjadikan hidup anda lebih mudah. Mereka juga dikenali sebagai BPF atau Berkeley Packet Filters. Menggunakan ungkapan membolehkan anda memaparkan (atau mengabaikan) paket secara selektif berdasarkan ciri tertentu - seperti asal, tujuan, ukuran, atau bahkan nombor urutan TCP.
Setakat ini anda berjaya mengehadkan carian anda ke sebilangan paket pada antara muka tertentu, tetapi mari kita jujur di sini: yang masih terlalu banyak membisingkan latar belakang untuk berfungsi dengan berkesan dengan data yang dikumpulkan. Di situlah ungkapan dimainkan. Konsepnya cukup mudah, jadi kami akan meninggalkan teori kering di sini dan menyokong pemahaman dengan beberapa contoh praktikal.
Ungkapan yang mungkin paling sering anda gunakan ialah:
host
- Cari lalu lintas berdasarkan nama host atau alamat IP.src
atau dst
- Cari lalu lintas dari atau ke hos tertentu.proto
- Cari trafik protokol tertentu. Berfungsi untuk tcp, udp, icmp, dan lain-lain. Menghilangkan proto
kata kunci juga mungkin.net
- Cari lalu lintas ke / dari pelbagai alamat IP tertentu.port
- Cari lalu lintas ke / dari pelabuhan tertentu.greater
atau less
- Cari lalu lintas yang lebih besar atau lebih kecil daripada jumlah bait tertentu.Walaupun halaman utama tcpdump
hanya mengandungi beberapa contoh, halaman pcap-filter
ini mempunyai penjelasan yang sangat terperinci mengenai bagaimana setiap saringan berfungsi dan dapat digunakan.
Sekiranya anda ingin melihat bagaimana komunikasi anda dengan pelayan tertentu berjalan, maka anda boleh menggunakan host
kata kunci, misalnya (termasuk beberapa parameter dari atas):
tcpdump -i eth0 host vultr.com
Kadang-kadang ada komputer di rangkaian yang tidak menghormati MTU atau menghantar spam dengan paket besar kepada anda; menyaringnya kadang-kadang sukar. Ungkapan membolehkan anda menyaring pakej yang lebih besar atau lebih kecil daripada sebilangan bait tertentu:
tcpdump -i eth0 -nn greater 128
or
tcpdump -i eth0 -nn less 32
Mungkin hanya pelabuhan tertentu yang menarik untuk anda. Dalam kes ini, gunakan port
ungkapan:
tcpdump -i eth0 -X port 21
Anda juga boleh melihat julat port:
tcdump -i eth0 -X portrange 22-25
Oleh kerana gerbang NAT cukup umum, anda mungkin hanya mencari port tujuan:
tcpdump dst port 80
Sekiranya anda melihat lalu lintas ke pelayan web anda, anda mungkin hanya ingin melihat lalu lintas TCP ke port 80:
tcpdump tcp and dst port 80
Anda mungkin bertanya pada diri sendiri apa kata kunci and
yang dilakukan di sana. Soalan yang baik. Itu membawa kita ke bahagian terakhir artikel ini.
tcpdump
menawarkan sokongan asas untuk ungkapan logik, lebih khusus:
and
/ &&
- Logik "dan".or
/ ||
- Logik "atau".not
/ !
- Logik "tidak".Bersama dengan kemampuan untuk mengumpulkan ungkapan bersama, ini membolehkan anda membuat carian yang sangat hebat untuk lalu lintas masuk dan keluar. Oleh itu, mari saring lalu lintas yang datang dari vultr.com di port 22 atau 443:
tcpdump -i eth0 src host vultr.com and (dst port 22 or 443)
Menjalankan ini pada baris arahan akan memberi anda ralat berikut:
bash: syntax error near unexpected token `('
Itu kerana ada peringatan: bash
cuba menilai setiap watak yang dimilikinya. Ini merangkumi (
dan )
watak. Untuk mengelakkan kesalahan itu, anda harus menggunakan tanda petik tunggal di sekitar ungkapan gabungan:
tcpdump -i eth0 'src host vultr.com and (dst port 22 or 443)'
Contoh berguna lain: Semasa menyahpepijat masalah SSH dengan salah satu pengguna anda, anda mungkin ingin mengabaikan semua yang berkaitan dengan sesi SSH anda:
tcpdump '!(host $youripaddress) && port 22)'
Sekali lagi, kes penggunaannya tidak berkesudahan, dan anda boleh menentukan sejauh mana jenis lalu lintas yang anda mahu lihat. Perintah berikut akan menunjukkan hanya paket SYNACK jabat tangan TCP:
tcpdump -i eth0 'tcp[13]=18'
Ini berfungsi dengan melihat offset ketiga belas tajuk TCP dan bait kelapan belas di dalamnya.
Sekiranya anda berjaya sampai ke sini, maka anda sudah bersedia untuk kebanyakan kes penggunaan yang akan timbul. Saya hampir tidak dapat menyentuh permukaan tanpa terlalu terperinci. Saya sangat mengesyorkan agar anda bereksperimen dengan pilihan dan ungkapan yang berbeza sedikit; dan seperti biasa: rujuk halaman utama apabila anda tersesat.
Akhir sekali - melihat kembali dengan pantas. Ingat awal artikel ini? Dengan ribuan paket yang ditangkap dalam masa beberapa saat? Kekuatan tcpdump
dapat mengurangkannya:
tcpdump -i eth0 tcp port 22
Hasilnya sekarang:
81 packets captured
114 packets received by filter
0 packets dropped by kerne
Ini jauh lebih sihat dan lebih senang untuk debug. Selamat membuat rangkaian!
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.
Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.
Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.
Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.
CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?
Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.
Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!
Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.
Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut