Как подключиться по SSH к серверу, защищенному брандмауэром, без статического IP-адреса?

Как подключиться по SSH к серверу, защищенному брандмауэром, без статического IP-адреса?

Мне нужно подключиться по SSH к клиентскому серверу, имеющему белый список IP-адресов как часть контроля доступа. У меня нет статического IP-адреса — иногда я работаю из дома, иногда в библиотеке, иногда в кофейне и т. д. Как мне получить статический IP-адрес? Если я в отпуске, а удаленный коллега должен подключиться к серверу из белого списка, как он сможет войти (при условии, что у него есть учетные данные)?

Требуется ли для этого настройка и подключение через VPN или прокси-сервер?

Я ищу как решение, так и объяснение того, как оно работает.

Немного подробнее: похоже, здесь есть несколько вариантов, и, возможно, именно здесь я запутался.

  1. Настройте и подключитесь к VPN, и тогда мои ssh-запросы будут проходить через него. Сервер будет видеть мой IP как IP VPN-шлюза (это правильная терминология?)
  2. Настройте сервер и ssh-подключитесь к этому серверу, а затем ssh-подключитесь оттуда к конечному серверу. Это неидеально, так как мне придется перемещать файлы на промежуточный сервер, а затем на главный сервер.
  3. Настройте сервер и используйте переадресацию портов в качестве сквозного канала.

Что мне не ясно, так это плюсы/минусы этих подходов. Поиск в интернете не дал мне объяснений, поэтому я спрашиваю здесь. Не только для решения, но и для объяснения.

решение1

Если я правильно понял ваш вопрос, вам нужен статический IP-адрес, который будет следовать за вами, куда бы вы ни пошли. Если это правильно, то ответ в том, что вы не можете сделать это напрямую.

Одна из вещей, которую вы можете сделать, это заставить ваш удаленный сервер также действовать как VPN-сервер. Затем вы можете создать VPN между ним и вашей рабочей станцией и подключиться через белый список VPN IP-адресов.

Как настроить VPN (в некоторой степени) зависит от используемой ОС (о которой вы не упомянули) и слишком обширен для этого сайта вопросов и ответов. Хотя есть много хороших руководств по этой теме.

решение2

Amazon EC2 дает вам 5эластичные IP-адреса. Вы также можете подключиться с виртуального частного сервера (VPS), вы можете получить его от Digital Ocean всего за несколько долларов в месяц, и у него будет статический IP-адрес. Вы можете подключиться к этим серверам по SSH из любой точки мира, а затем подключиться к своему клиентскому серверу.

решение3

Ты мог бы сделатьТуннелирование порта SSH.

Чтобы это работало, вам нужно иметь одну машину, которая постоянно подключена к Интернету. Будем надеяться, что у этой машины всегда будет один и тот же IP-адрес (так как она будет постоянно обновлять аренду своего IP-адреса), но если иногда эта машина не отвечает на ваши запросы, вы можете попросить своего интернет-провайдера предоставить вам статический IP-адрес (за дополнительную плату). Эта машина будет фактически выступать в качестве вашего прокси-сервера. Это может быть ваш домашний компьютер. Вы можете перепрофилировать любую машину Pentium, которая у вас есть, для этих целей.

На этой "прокси" машине вы настроите туннелирование порта SSH с PuTTY, перенаправляя все запросы на порт, скажем, 50505 на порт 22 на "клиентском сервере". Посмотрите: Конфигурация туннеля для шпатлевки. Флажки важны и должны быть отмечены.

Примите все необходимые изменения брандмауэра: Изменения брандмауэра

Затем, когда вы не находитесь за своим «всегда включенным» компьютером, скажем, в библиотеке, вы запускаете его SSH-клиент и подключаетесь к своему «всегда включенному» компьютеру, но к порту 50505. Затем вы используете учетные данные «клиент-серверного» компьютера, и вы будете представлены так, как будто вы действительно являетесь этим компьютером. Туннелирование в действии

Поскольку я новичок в этих делах, надеюсь, что не допустил здесь никаких ошибок, но думаю, что вам подойдет это решение.

решение4

Статические IP-адреса назначаются определенному интернет-подключению организацией, которой принадлежит этот диапазон IP-адресов (в данном случае вашим интернет-провайдером). Вы можете добавить статический IP-адрес к своему домашнему интернет-подключению, удаленно подключиться к компьютеру там (SSH, RDP или как вам больше нравится), а затем подключиться по SSH к клиентскому серверу.

Связанный контент