Мне нужно подключиться по SSH к клиентскому серверу, имеющему белый список IP-адресов как часть контроля доступа. У меня нет статического IP-адреса — иногда я работаю из дома, иногда в библиотеке, иногда в кофейне и т. д. Как мне получить статический IP-адрес? Если я в отпуске, а удаленный коллега должен подключиться к серверу из белого списка, как он сможет войти (при условии, что у него есть учетные данные)?
Требуется ли для этого настройка и подключение через VPN или прокси-сервер?
Я ищу как решение, так и объяснение того, как оно работает.
Немного подробнее: похоже, здесь есть несколько вариантов, и, возможно, именно здесь я запутался.
- Настройте и подключитесь к VPN, и тогда мои ssh-запросы будут проходить через него. Сервер будет видеть мой IP как IP VPN-шлюза (это правильная терминология?)
- Настройте сервер и ssh-подключитесь к этому серверу, а затем ssh-подключитесь оттуда к конечному серверу. Это неидеально, так как мне придется перемещать файлы на промежуточный сервер, а затем на главный сервер.
- Настройте сервер и используйте переадресацию портов в качестве сквозного канала.
Что мне не ясно, так это плюсы/минусы этих подходов. Поиск в интернете не дал мне объяснений, поэтому я спрашиваю здесь. Не только для решения, но и для объяснения.
решение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 к клиентскому серверу.