Невозможно подключиться к EC2, если я не разрешаю ВСЕ TCP-соединения в исходящих сообщениях NACL
Я хочу РАЗРЕШИТЬ только соединение ssh и порт 8000 на моем компьютере EC2 в AWS.
Я установил для своего входящего и исходящего подключения РАЗРЕШИТЬ порт 22 и 8000 (см. Рисунки ниже).
Входящий:
Исходящий:
Но когда я пытаюсь подключиться к машине по curl/SSH, это не работает, пока я не установлю порт ALL_TCP, который будет открыт для исходящего соединения (как на картинке ниже).
Конечно, я могу открыть ВСЕ порт TCP, но я делаю это ради экспериментов с NACL.
Зачем?
1 ответ
Это связано с эфемерными портами:
Чтобы разрешить соединение со службой, работающей на экземпляре, связанный сетевой ACL должен разрешать как входящий трафик на порт, который прослушивает служба, так и исходящий трафик с эфемерных портов. Когда клиент подключается к серверу, случайный порт из временного диапазона портов (1024-65535) становится исходным портом клиента.
Ссылка: https://aws.amazon.com/premiumsupport/knowledge-center/resolve-connection-sg-acl-inbound/