5

Так что, к сожалению, я живу в месте, где у меня не будет статического IP-адреса, поэтому я настраивал доступ к своему домашнему компьютеру через обратные туннели SSH, которые работают на экземпляре micro amazon ec2. Я получил SSH, чтобы работать нормально, но я не могу понять порт вперед.

Вот небольшая инфографика, которую я сделал, чтобы помочь проиллюстрировать (я чувствовал, что вопрос был яснее с диаграммой того, что я пытался сделать.

Вот команды, перечисленные на рисунке:

Я следующее на моем домашнем компьютере:

ssh -R 1337:localhost:22 -i .ssh/tokyoMinekey.pem ec2-user@ec2serveraddress

и я запускаю это на сервере ec2:

ssh -L6600:localhost:6600 -Nf localhost -p 1337

Диаграмма моей боли ... в краске Аааааааааааааааааааааааа!

К вашему сведению, я добавил порт 6600 в свою группу безопасности для amazon ec2, поэтому он открыт на стороне ec2

2 ответа2

3

Я не уверен, почему вы используете две отдельные команды SSH здесь? Если вы хотите перенаправить порт 6600 на EC2 вместо порта 6600 на машине дома, все, что вам нужно сделать, это:

ssh -R :6600:localhost:6600 -i .ssh/tokyoMinekey.pem ec2-user@ec2serveraddress

Вам также необходимо убедиться, что опция GatewayPorts включена в файле sshd_config в экземпляре EC2.

Очевидно, вам нужно будет оставить это ssh-соединение открытым для продолжения работы порта, но в остальном проблем быть не должно.

2

Не могли бы вы предоставить вывод:

netstat -tulpen

на ec2serveraddress . Я ожидаю увидеть, что оба туннеля начинаются с 127.0.0.1:PORT? 127.0.0.1 - это IP-адрес самой локальной машины, недоступный извне. Это означает, что вы можете получить доступ к этому туннелю с самого сервера, но не с любой другой машины ...

Если это так, пожалуйста, добавьте следующее в ваш /etc/ssh/sshd_config:

GatewayPorts yes

Эта опция создаст порты на 0.0.0.0 , так что вы можете подключиться отовсюду. Если нет никаких других причин для создания двух соединенных туннелей, вы, конечно, можете уменьшить его до одного:

ssh -R 6600:localhost:22 -i .ssh/tokyoMinekey.pem ec2-user@ec2serveraddress

Это создаст туннельный ec2serveraddress:6600 к вашему home:22 .

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