Команди Tcpdump (приклади)

149 0 Новини високих технологій

Tcpdump — це інструмент командного рядка з відкритим вихідним кодом для моніторингу мережного трафіку. Приклад: tcpdump працює, захоплюючи і відбиваючи заголовки пакетів і зіставляючи їх з набором критеріїв. Він розуміє логічні оператори пошуку і може використовувати імена сайтів, IP-адреси, мережеві імена і протоколи в якості аргументів.

Історія

Tcpdump був спочатку написаний у 1988 році Ван Якобсоном, Саллі Флойд, Вірному Пакссон і Стівеном Макканном, які у той час працювали в Лабораторії лабораторних мережевих досліджень Лоуренса Берклі[4]. До кінця 1990-х років було безліч версій tcpdump за прикладом портів, які розповсюджуються як частина різних операційних систем і численні виправлення, які не були належним чином скоординовані. Майкл Річардсон і Білл Феннер створили ресурс www.tcpdump.org в 1999 році.
Команди Tcpdump (приклади)



Застосування Tcpdump: приклади

Tcpdump друкує вміст мережевих пакетів. Він може зчитувати пакети з карти мережного інтерфейсу або з раніше створеного збереженого пакетного файлу. Приклад tcpdump — інструмент може записувати пакети у стандартний вивід або файл. Але це не все. Також можливо використовувати tcpdump (на прикладі ubuntu) для конкретної мети перехоплення і відображення повідомлень іншого користувача або комп'ютера. Користувач з необхідними привілеями в системі, що діє в якості маршрутизатора або шлюзу, через який незашифрований трафік, такий як пропуски Telnet або HTTP, може використовувати tcpdump для перегляду ідентифікаторів входу, паролі, URL-адрес та вмісту переглядаються веб-сайтів або будь-якої іншої незашифроване інформації.
Команди Tcpdump (приклади)



Користувач може застосовувати фільтр для обмеження кількості пакетів, спостережуваних в tcpdump на прикладі Mac. Це робить вихід більш зручним для використання у мережах з великим обсягом трафіку.

Привілеї користувача Unix

У деяких Unix-подібних операційних системах рядовий користувач повинен мати привілеї адміністратора для використання tcpdump Linux, прикладом яких є механізми захоплення пакетів в цих системах, які вимагають підвищених привілеїв. Тим не менш опція -Z може використовуватися для видалення привілеїв певним непривилегированному користувачеві після того, як був встановлений захоплення. В інших Unix-подібних ОС механізм захоплення пакетів може бути налаштований так, щоб дозволити користувачам, які не мають привілеїв, використовувати його. Якщо ці установки виконані, привілеї адміністратора не потрібні.

TCP

TCP — це фундаментальний протокол в пакеті інтернет-протоколів або набір стандартів, що дозволяють системам спілкуватися через Інтернет. Він класифікується як протокол транспортного рівня», оскільки створює і підтримує з'єднання між хостами. TCP доповнює інтернет-протокол (IP), який визначає ІР-адреси, що використовуються для ідентифікації систем в Інтернеті. Інтернет-протокол надає інструкції для передачі даних, в той час як протокол управління передачею створює з'єднання і управляє доставкою пакетів з однієї системи в іншу. Ці два протоколи зазвичай групуються разом і називаються TCP/IP.
Команди Tcpdump (приклади)

Коли дані передаються по TCP-з'єднання, протокол ділить його на індивідуально пронумеровані пакети або «сегменти». Кожен пакет включає в себе заголовок, який визначає джерело, пункт призначення і розділ даних. Оскільки пакети можуть подорожувати через Інтернет з використанням декількох маршрутів, вони можуть прибути в пункт призначення в іншому порядку, ніж вони були відправлені. Протокол управління передачею змінювати порядок пакети в правильній послідовності на приймаючій стороні.

Приклади Tcpdump і UDP

TCP також включає перевірку помилок, яка гарантує, що кожен пакет доставляється за запитом. Це відрізняється від UDP, який не перевіряє, чи успішно переданий кожен пакет. Хоча вбудована перевірка помилок означає, що TCP більш витратний і працює повільніше, ніж UDP, дана технологія забезпечує точну доставку даних між системами. Також TCP використовується для передачі більшості типів даних, таких як веб-сторінки і файли через Інтернет. UDP ідеально підходить для потокової передачі мультимедіа, яка не вимагає доставки всіх пакетів.
Команди Tcpdump (приклади)

Основи функціоналу

TCP виникла в первісній мережевий реалізації, в якій він доповнює Інтернет-протокол (IP). Забезпечує надійну, упорядковану і перевірену перевірку доставки потоку пакетів між додатками, запущеними на хостах, які обмінюються по IP-мережі. Основні інтернет-додатки (Всесвітня павутина, e-mail, віддалене адміністрування, передача файлів), залежать від TCP. Додатки, які не потребують надійної служби потоку даних, використовують тільки протокол користувацьких дейтаграм (UDP), який надає службу датаграм без встановлення з'єднання, яка підкреслює зниження параметрів безпеки.

Передумови створення

У травні 1974 року Інститут інженерів з електротехніки та радіоелектроніки (IEEE) опублікував документ під назвою «Протокол міжмережевого обміну пакетною мережею». Автори статті, Vint Cerf і Bob Kahn, описали протокол міжмережевого обміну для спільного використання ресурсів, використовуючи комутацію пакетів між вузлами, включаючи концепції французького проекту CYCLADES під керівництвом Луїса Пузина. Центральним компонентом цієї моделі була програма управління передачею, яка включала в себе як орієнтовані на з'єднання посилання, так і служби дейтаграм між хостами. Потім монолітна програма управління передачею була розділена на архітектуру модулів, яка складалася з протоколу управління передачею на рівні, орієнтованому на з'єднання, та протоколу Інтернету на рівні міжмережевої взаємодії (дейтаграми). Модель мала неофіційну назву як TCP/IP, надалі отримала найменування Internet Protocol Suite.
Команди Tcpdump (приклади)

Функція мережі

Протокол управління передачею надає послуги зв'язку на проміжному рівні між прикладною програмою і Інтернет-протоколом. Він забезпечує з'єднання між вузлами на транспортному рівні моделі Інтернету. Додатком не потрібно знати конкретні механізми відправки даних по посиланню на інший хост, наприклад, необхідну фрагментацію пакетів на носії передачі. На транспортному рівні алгоритм обробляє всі дані встановлення зв'язку і передачі і являє собою абстракцію мережного підключення до додатка. На нижніх рівнях стека протоколів через перевантаження мережі, балансування навантаження трафіку або іншого непередбачуваного поведінки IP-пакети даних можуть бути утетеряны, дубльовані або доставлені в іншому порядку. TCP виявляє дані проблеми, запитує повторну передачу загублених даних, змінює дані за порядку і навіть допомагає мінімізувати навантаження на мережу, щоб зменшити ризики виникнення інших проблем. Якщо дані залишаються не доставленими, джерело повідомляється про це збій. Після того як TCP-приймач повторно зібрав послідовність спочатку переданих пакетів, він передає їх приймає додаток. Таким чином, TCP абстрагує зв'язок програми з базовими мережевими даними.
Команди Tcpdump (приклади)

Застосування

TCP широко використовується багатьма додатками, доступними в Інтернеті, включаючи e-mail, протокол передачі файлів, спільне використання файлів однорангових мереж і потокові мультимедійні додатки. TCP оптимізований для точною, а не для своєчасної доставки, і може провокувати відносно тривалі затримки (близько секунд) під час очікування повідомлень про неполадку або повторних передач втрачених повідомлень. Тому він не підходить для додатків реального часу, таких як Voice over IP. Для таких додатків зазвичай рекомендуються протоколи передачі даних в реальному часі (RTP), що працюють за принципом користувацьких дейтаграм.

Переваги

TCP — це безпечна служба доставки потоків, яка гарантує, що всі отримані дані будуть ідентичні відправленим і в правильному порядку. Оскільки передача пакетів багатьма мережами ненадійна, для забезпечення захисту використовується метод, відомий як «позитивне підтвердження з повторною передачею». Дана методика вимагає, щоб одержувач відповідав повідомленням підтвердження, отримуючи дані. Відправник зберігає запис кожного надісланого пакету і підтримує таймер з моменту відправлення пакета. Відправник повторно передає дані, якщо минає час до отримання підтвердження повідомлення. Таймер необхідний, якщо пакет втрачено або пошкоджено.
Команди Tcpdump (приклади)

Нюанси

У той час як IP обробляє фактичну доставку даних, TCP відстежує «сегменти» — окремі одиниці переданих даних, по яких повідомлення розділене на ефективну маршрутизацію через мережу. Наприклад, коли HTML-файл відправляється з веб-сервера, програмний рівень TCP цього сервера ділить послідовність пакетів файлів на сегменти і пересилає їх індивідуально на програмний рівень IP (Internet Layer). Internet Layer інкапсулює кожен сегмент TCP IP-пакет шляхом додавання заголовка, який включає (серед інших даних) IP-адреса призначення. Коли клієнтська програма на комп'ютері отримує їх, рівень TCP (Transport Layer) повторно збирає окремі сегменти і гарантує, що вони будуть правильно упорядковані і безпомилкові, коли дані передаються в програму.