#linux #ssh
#linux #ssh
Вопрос:
Я думаю, что это очень странный способ использовать это, но мне это нужно. основное использование — получить динамический IP-адрес компьютера C.
У меня есть три Linux-компьютера (давайте вызовем A, B, C), предположим, что A имеет IP 10.6.47.100 (динамический IP), B имеет IP 10.6.47.102 (динамический IP), 192.168.1.1 (статический IP), C имеет IP 10.6.47.104 (динамический IP), 192.168.1.2 (статический IP)
Условие таково, что моя программа запущена на компьютере A, и я знаю только IP-адрес компьютера B (как динамический, так и статический IP).
Я хочу использовать домен машины B 192.168.1.x, чтобы получить динамический IP-адрес машины C через командную строку «a».
Это означает, что используйте машинный ключ A в командной строке, эта команда — ssh для B и сообщите B ssh C и получите информацию.
A и B используют связь с доменом 10.6.47.xx, B и C используют связь с доменом 192.168.1.X.
хотя я пробовал ssh user1@10.6.47.102 ‘ssh user2@10.6.47.104 ‘ifconifg eth1″ , но, похоже, проблема в цитате. и я попытался создать скрипт командной оболочки include ssh для компьютера C, передать B по ssh на C и выполнить этот скрипт, но все равно не удалось.
Возможен ли какой-либо ssh с другого ssh-узла?
спасибо за вашу помощь.
Ответ №1:
Конечно, используйте функцию туннелирования ssh. Предполагая, что вы хотите выполнить туннелирование через порт 10022 (подойдет любой номер порта, если он не используется на вашем локальном компьютере, и он равен 1024 или больше):
ssh -L10022:192.168.1.2:22 user1@10.6.47.102
ssh -p10022 user2@127.0.0.1
Эти две команды должны выполняться в отдельных сеансах (обе с компьютера A), поскольку первое соединение должно оставаться активным, чтобы второе работало.
Комментарии:
1. этот метод требует входа на другой компьютер? например, он войдет в систему на компьютере пользователя 1, а затем снова подключится по ssh к пользователю 2? Возможно ли использовать только одну команду для доступа к user2 с компьютера A?
2. Нет, вы не можете сделать это только одной командой, по крайней мере, не методом туннелирования.