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

Правило отказа SSH позволяет мне использовать SSH?

Я изучаю AWS VPC, где я назначаю правила для входящего / исходящего трафика NACL, как показано ниже: Сейчас я делаю для всех IP-адресов.

Rule #    Type           Allow/Deny
100       All Traffic    Allow
200       SSH            Deny
 *        All Traffic    Deny


Outbound
Rule #    Type           Allow/Deny
100       SSH            Deny
200       All Traffic    Allow
 *        All Traffic    Deny

Мне интересно, как работает мой SSH, поскольку правило гласит, что сначала будет оценено меньшее число, а в исходящем правиле я отказался от SSH. Может ли кто-нибудь объяснить, как это правило работает в AWS?

Вы разрешаете весь трафик на свой хост, но запрещаете исходящий с него ssh.

Насколько мне известно, NACL не проводят глубокую проверку пакетов. Это означает, что протоколы являются простыми псевдонимами своих назначенные порты.

Если вы не делаете что-то действительно странное, например, пытаетесь использовать ssh из порт 22, ваш входящий сеанс ssh должен быть в порядке.

Входящий SSH-трафик разрешен, потому что входящее правило № 100 (200 практически игнорируется) и исходящее правило не соответствует уже установленному SSH-соединению ...


На основе Документация AWS :

Сетевые ACL не сохраняют состояние, что означает, что ответы на разрешенный входящий трафик подчиняются правилам для исходящего трафика (и наоборот).

  • Входящее правило

Основываясь на том, что я вижу, я думаю, что у вас неправильный порядок правил.

Rule #    Type           Allow/Deny
100       All Traffic    Allow
200       SSH            Deny
 *        All Traffic    Deny

Это просто не имеет смысла, поскольку вы разрешаете весь трафик правилом 100, поэтому правило 200 не будет использоваться в любое время (трафик будет разрешен уже на основе правила 100, поэтому для правила 200 ничего не останется). Я думаю, что больше смысла имеет другой порядок (если вы хотите запретить службу ssh:

Rule #    Type           Allow/Deny
100       SSH            Deny
200       All Traffic    Allow
 *        All Traffic    Deny
  • Исходящий

Вот SSH-трафик с нижним правилом №:

Rule #    Type           Allow/Deny
100       SSH            Deny
200       All Traffic    Allow
 *        All Traffic    Deny

Это запретит трафик для SSH, а для остальных он будет разрешен ...

Тип SSH - это трафик с портом TCP / 22 - обычно он используется в качестве порта назначения. В случае, если вы связываетесь с SSH-сервером, вы подключаетесь к TCP / 22, но ваш исходный порт - TCP / X, где X выбрано «случайно» (не совсем, но для простоты, скажем, случайным образом), скажем,> 10000.

Как только сервер отвечает на ваше соединение, порт назначения становится "вашим" TCP / X, поэтому правило не обязательно соответствует этому трафику ...

Исходящий трафик с назначением TCP / 22 будет соединением, которое инициируется на сервере с пунктом назначения на каком-то другом устройстве и еще не установлено SSH-соединение.