Я выполнил следующие инструкции и установил redis-сервер на gcp.
https://cloud.google.com/community/tutorials/setting-up-redis
Я установил брандмауэр так, чтобы порт 6379
открыт для всех ip (0.0.0.0/0
)
Затем я создаю еще один экземпляр GCP в том же проекте. Когда я попытался подключиться к серверу redis, который я только что настроил (скажем, на машине с 1.2.3.4 externam ip), я не смог этого сделать. Но когда я использую внутренний IP-адрес этой машины, это сработало.
Кроме того, когда я попытался подключиться к redis-серверу на моем локальном компьютере, это не удалось (тайм-аут).
Когда я создаю карту с портом 6379 из другого экземпляра в том же проекте gcp с машиной внешний ip показывает
PORT STATE SERVICE
6379/tcp filtered unknown
Когда я создаю карту с портом 6379 из другого экземпляра в том же проекте gcp с машиной внутренний ip это показывает
PORT STATE SERVICE
6379/tcp open unknown
Когда я настраиваю машину с портом 6379 с моей локальной машины в том же проекте gcp с машиной внешний ip показывает
PORT STATE SERVICE
6379/tcp filtered redis
Что мне здесь не хватает?
Я наконец понял, что пошло не так.
Я не устанавливал правильный target
.
Я думал, что могу просто ввести что угодно в целевое поле, но оказалось, что в этом поле будут находиться машины, к которым применяется правило.
После того, как я выбрал All instances in the network
для targets
Все прошло гладко. Хотя когда я использую nmap из внутренней сети, порт 6379
все еще неизвестный сервис, но он открыт, и я могу использовать redis-cli для подключения к серверу Redis