У меня настроена сеть VPC в облаке Google с несколькими запущенными экземплярами. Один из этих экземпляров служит VPN-машиной, позволяя мне взаимодействовать с экземплярами из Интернета.
Я хочу захватить трафик:
Кто-нибудь знает, что я могу здесь сделать? Был бы очень признателен. Спасибо!
Предполагая, что вы используете образ Debian от Google, вы можете установить и использовать tcpdump для захвата трафика.
$ sudo apt update
$ sudo apt install -y tcpdump
$ sudo tcpdump -i eth0
Это до смешного громоздко, я описываю это только потому, что некоторые организации действительно используют этот способ:
TL;DR маршрутизируют все через другой выделенный VPC.
Создайте «левое» VPC, создайте «охранное» VPC, создайте «правое» VPC.
Настроить маршрутизацию так, чтобы пакет шел:
Настроить пиринг VPC (ну иначе такую маршрутизацию сделать нельзя).
Создайте экземпляр внутри «безопасности» (на самом деле лучше иметь пару экземпляров за внутренним балансировщиком нагрузки TCP) и запустите там tcpdump
. Или фыркнуть
, или что-то подобное. Или даже брандмауэр на виртуальной машине. Оба сетевых адаптера должны иметь «Включить переадресацию IP» = Да.
Пакеты между левым и правым будут захвачены, но не трафик слева налево или справа на право.
Кстати, экземпляр VPN также можно переместить в «безопасный» VPC.
Вы можете включить Журналы потоков VPC. При этом регистрируются потоки TCP и UDP каждой виртуальной машины, входящие и исходящие. Эти потоки могут осуществляться между виртуальной машиной и другой виртуальной машиной в том же облаке VPC. Вам также необходимо рассмотреть ограничение количества создаваемых журналов, чтобы снизить затраты на stackdriver.