По умолчанию docker-machine настраивает взаимный TLS (mTLS) для шифрования связи и проверки сертификата клиента для ограничения доступа.Из документации docker-machine :
В рамках процесса создания Docker Machine устанавливает Docker и настраивает его с некоторыми разумными значениями по умолчанию.Например, он разрешает соединение из внешнего мира через TCP с шифрованием на основе TLS и по умолчанию AUFS в качестве драйвера хранилища, когда он доступен.
Вы должны увидеть переменные среды, настроенные docker-machine для DOCKER_HOSTи DOCKER_TLS_VERIFY для указания на удаленный хост и использования сертификатов mTLS.Как правило, порт 2375 является незашифрованным и незащищенным портом, который никогда не должен использоваться, и 2376 настроен как минимум с TLS и, мы надеемся, mTLS (без взаимной части для проверки клиентов, безопасность не существует).Для получения более подробной информации о том, что требуется для настройки этого, см. https://docs.docker.com/engine/security/https/
. Все это говорит о том, что docker с mTLS примерно такой же безопасности, как и SSH, с разрешенными только входами в пару ключей.Учитывая доступ, который он предоставляет хосту, я лично не оставляю ни один из них доступным для интернета, хотя и достаточно безопасен.По возможности я использую белые списки IP, VPN или другие меры для ограничения доступа.Но многие могут чувствовать себя в безопасности, оставляя эти порты открытыми.