Назад | Перейти на главную страницу

Как получить доступ к серверу из другой локальной сети, через Интернет и SSH через Интернет

Вот мой сценарий:

У меня есть сервер (с CentOS на нем), настроенный так, что он будет обслуживать пользователей из локальной сети с некоторыми общими требованиями. Этот сервер будет развернут в разных странах мира. Этот сервер установил на нем веб-приложение, к которому могут получить доступ пользователи внутри этой локальной сети.

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

Можете ли вы указать мне, где мне нужно искать решение этой проблемы. Буду очень признателен, если вы можете помочь мне с планом (словами, а не изображением).

Примечание 1: У меня не будет статического IP для удаленного сервера. У меня есть только статический IP-адрес для сервера, расположенного в моем офисе.

Заметка 2: Я как-то новичок в подобных вещах (удаленный доступ через Интернет). Так что мне нужно только представление о том, что мне нужно реализовать. По подробностям поставлю вопросы точнее, если понадобится.

Вывод: то, что мне нужно, это всего лишь своего рода план решения моего сценария на словах. (изображения не обвиняются)

Установите клиент dyndns на свой сервер, он будет обновлять ваш DNS каждый раз при изменении IP. После этого вам просто нужно использовать SSH / Web для FQDN, чтобы подключиться к вашему серверу.

Вы можете использовать SSH-туннелирование для доступа к веб-сайту внутреннего администратора с помощью браузера через SSH-соединение (только порт SSH должен быть общедоступным).

Вот одна из форм SSH-туннелирования, выполняемая клиентом Windows. Помимо просмотра веб-страниц через эту удаленную сеть, вы также можете получить доступ к локальным серверам, как если бы вы были локальными (при условии, что не добавлены ограничения для предотвращения этого). http://ethertubes.com/dynamic-socks-proxy-with-plink-exe-and-firefox/

Чтобы следить за текущим IP-адресом ваших удаленных серверов, вы можете использовать стороннюю программу, например DynDNS.org, или запланировать задание cron для периодического звонка домой.

Я использую curl, чтобы сделать запланированный веб-запрос с моих серверов с динамическими IP-адресами на мой сервер со статическим IP. Позже вы можете проверить веб-журналы на предмет текущего IP-адреса (при условии, что каждый удаленный сервер запрашивает уникальный ресурс) или вы можете написать сценарий на веб-сервере для обновления базы данных или файла.

Это зависит от того, насколько вы хотите, чтобы ваши серверы были открыты.

  • Клиент dyndns + открытые порты 80 и 443 на IP-адрес вашего компьютера: если вы не можете ограничить доступ к подсети или IP и должны разрешить доступ к серверам из всего Интернета, я не рекомендую это делать.
  • VPN для бедняков: позвольте вашим серверам подключиться к ssh-серверу на вашем рабочем месте (используйте autossh чтобы туннель оставался открытым) и туннельный трафик (пример Вот). Заблокируйте хосты, чтобы разрешить соединения только из туннеля и из внутренней сети, в которой живут ваши пользователи.
  • Корпоративный VPN