У меня есть контейнеры Docker, запущенные на NAS, и один или два из них уже настроены для удаленного доступа через обратный прокси. Всё работает хорошо, и мне нравится, что мне не нужно открывать дырки в маршрутизаторе (то есть открывать порты). Обратный прокси также принуждает получать доступ к приложениям только через HTTPS, что тоже плюс.
Но я всё же задумался: использовать обратный прокси для каждого приложения или подключаться через VPN к локальной сети и использовать IP/порт для каждого приложения?
VPN создает меньшую поверхность атаки. Обратный прокси пропускает отдельное приложение в сеть, так что если у приложения есть уязвимость, её можно использовать через прокси. VPN остановит любой трафик к приложению, если не пройти правильную аутентификацию, так что злоумышленнику потребуется уязвимость в VPN-пакете.
Но: всё зависит от вашего отношения к риску. Часто обратный прокси более чем достаточно, так как я не могу остановить решительного хакера с временем и ресурсами, но другие могут быть более привлекательной целью.
Сравнение: мне не нужен идеально запертый замок и охрана дома, достаточно лучше среднего по тому, что у меня могут украсть.
Это интересный взгляд. Спасибо за инсайт. Я сам не хакер, а скорее домашний энтузиаст, когда речь идет о создании ИТ-инфраструктуры. В последнее время было много “подводных камней”, о которых я не подозревал, пока кто-то не рассказал мне. Всё это — процесс обучения, полагаю.
Для контекста: у меня сейчас запущено несколько контейнеров Docker на NAS, и это те, через которые я прохожу через обратный прокси (также работающий на NAS). Обратный прокси настроен принимать только HTTPS (с сертификатом Let’s Encrypt) из внешнего мира. Всё больше я слышу, что VPN — это не “безопасное убежище”, которым его считают. Поэтому и возник вопрос.
Если есть эксплойт типа нулевого дня, который обнаружен на других устройствах, атака может быть направлена на разные устройства с меньшими затратами и нанести ущерб, пока не закроется уязвимость в безопасности.
Конечно, имейте надежную резервную копию для этого.
И регулярно применяйте обновления безопасности, если ваша система открыта для интернета.