Как вы тестируете HTTP-сервер, работающий на экземпляре Compute Engine, не выставляя его на всеобщее обозрение? - PullRequest
0 голосов
/ 26 мая 2019

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

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

Ответы [ 2 ]

3 голосов
/ 26 мая 2019

Вы можете использовать переадресацию порта ssh для настройки прокси с вашего ноутбука на компьютер. Если вы используете Mac или Linux ssh, что-то вроде следующего должно работать для переадресации порта 8080 с локального компьютера на виртуальную машину ( из gcloud docs ):

gcloud compute ssh --ssh_flag="-L 80:%INSTANCE%:80"

После настройки вы можете получить доступ к серверу по номеру http://localhost: 8080 / на своем ноутбуке.

1 голос
/ 26 мая 2019

Ваша проблема в том, что ваш IP-адрес не является фиксированным.

Первый способ - настроить брандмауэр Google VPC на ваш текущий IP-адрес. Затем при изменении IP-адреса обновите правило брандмауэра VPC. Это самый простой метод, который занимает всего минуту или две, но вы должны делать это каждый раз, когда ваш адрес меняется.

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

Предпочтительный метод - не назначать экземпляру публичный IP-адрес. Установите VPN-шлюз в вашем VPC и VPN-клиент на вашем рабочем столе. Ваш веб-браузер и инструменты будут использовать VPN для подключения к частному IP-адресу. У Google Marketplace есть бесплатное программное обеспечение VPN, такое как OpenVPN, которое я использую. Вы просто платите за время экземпляра, которое можно отключить, когда вам не нужен VPN.

Существуют более изощренные методы, такие как авторизация токена, но для тестирования веб-сервера это излишне.

...