Linux Labs

Сеть / Ступень 12 из 14

Диагностика между двумя машинами

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 4 из 7 · теория · 4 мин

Две настоящие машины

В лабах модуля машины настоящие: терминал открыт на node1, а команды на node2 выполняют через SSH.

ssh node2 'команда' входит на node2, выполняет там команду и печатает её вывод у тебя. Кавычки отдают строку целиком оболочке node2: ssh node2 'sudo ss -ltn' покажет слушателей node2, а sudo ss -ltn без ssh — слушателей node1. Строка Warning: Permanently added 'node2'… при каждом входе — следствие настройки учебной пары, на команду она не влияет.

Перенаправление > за кавычками выполняет твоя оболочка. ssh node2 'sudo nft list ruleset' > rules.txt сохранит правила node2 в файл на node1. Внутри кавычек > запишет файл на node2.

Записывай наблюдения с именем машины: «на node1 маршрут прямой», «на node2 порт 80 слушает nginx». Так видно, какая сторона уже проверена.

Проверь себя 1 вопрос

Ты на node1 и набираешь ssh node2 'sudo nft list ruleset' > rules.txt. Где появится rules.txt?

  • > стоит за кавычками, и его выполнила оболочка node1. На node2 файл появился бы, будь > внутри кавычек.

  • ssh печатает вывод удалённой команды у тебя, и его можно перенаправить, как вывод любой команды.

  • Перенаправление выполняет одна оболочка — та, что его увидела. За кавычками это оболочка node1.

> за кавычками выполняет оболочка, в которой набрана ssh, — на node1. Чтобы файл записался на node2, перенаправление ставят внутрь кавычек.

Главное в шаге

  • ssh node2 'команда' выполняет команду на node2; что в кавычках — то там.
  • > за кавычками пишет файл на машине, где ты набрал ssh.
Ubuntu 24.04
Загрузка…