1

Я собираюсь объяснить эту проблему как можно лучше, поэтому, пожалуйста, держись со мной.

Я нахожусь на сервере Linux (сервер A), я могу SSH к другому серверу Linux (сервер B). Оказавшись на сервере B, я могу подключиться к другому Linux-серверу (серверу C) по SSH. Таким образом, по сути, сервер A не может напрямую общаться с сервером C без прохождения через сервер B. Вот проблема: мне нужно rsync сервера A и C, инициированные сценарием на сервере A.

Какие-либо предложения?

1 ответ1

1

Не самое элегантное решение, но вы можете создать ssh-туннель к серверу C через сервер B (эта команда создает ssh-туннель в фоновом режиме, поэтому вам придется потрудиться убить его после завершения rsyncing):

ssh -f -N -L 2222:<C>:22 <username>@<B>

а затем просто скажите rsync подключиться к localhost:2222 вместо <C>:22 .

Конечно, вы можете указать любой другой временный порт вместо 2222

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .