Я видел много вопросов относительно общего сравнения безопасности туннелей SSH и VPN.
Я думаю о решении для удаленного управления домашней сетью. Я достаточно технически подкован, чтобы достичь той же цели (хотя и с разным уровнем усилий) с помощью любого решения. Мой вопрос в том, есть ли какая-либо внутренняя разница в уровне безопасности, предлагаемом просто портом, прослушивающим любое из соединений.
То есть, я знаю, что злоумышленники всегда где-то сканируют порты. Так можно ли усложнить определение того, что прослушивает порт, чтобы у злоумышленника было меньше информации для подготовки атаки?
Мы можем предположить, что сервер находится внутри сети, и мне придется перенаправить какой-то порт через пограничный маршрутизатор. В любом случае я могу использовать какой-то случайный, нестандартный порт для перенаправления.
решение1
Ряд соображений:
Да, сервер SSH, открытый для Интернета, будет подвергаться постоянным, масштабным атакам методом подбора. Как минимум вам нужна какая-то защита, например Fail2ban или CSF-LFD. Это быстро заблокирует нарушающие IP-адреса на уровне брандмауэра.
Без этой защиты, и даже если у вас есть надежный пароль, ваш сервер должен будет отражать атаки, создавая ненужную нагрузку и тратя пропускную способность. Подумайте о сотнях, может быть, тысячах одновременных атак.
Вы можете использовать нестандартный порт для SSH-сервера, вы все равно будете получать зонды, но их будет меньше.
Возможно, лучшим решением будет настроитьстук в порт. Хитрость в том, чтобы сделать порт открытым только для тех, кто знает правильную комбинацию.
Если в вашей домашней сети используется статический WAN IP-адрес, то вы можете ограничить SSH-сервер заранее определенным адресом,хосты из белого списка.
Другой метод, если у вас статический/стабильный IP-адрес, — это сделатьобратный SSH: вместо подключения к серверу, позвольте серверу позвонить 'home'. Используйте, autossh
чтобы соединение автоматически восстанавливалось между перезагрузками или сбоями сети.
Однако мне кажется, что VPN — лучшая альтернатива. OpenVPN может работать в UDP, или TCP, или в обоих. Я считаю, что UDP используется по умолчанию, и UDP сложнее сканировать (см. руководство nmap относительно сканирования UDP), и большинство атак сосредоточено на TCP-сервисах.
Это не значит, что UDP не может быть опасен: просто подумайте об атаках с отражением DNS или NTP.
Вот и все, теперь вы можете объединить несколько методов, например OpenVPN с port knocking, и у вас будет настройка, которая довольно скрытна. Если вы не хотите хлопот с установкой VPN и предпочитаете придерживаться уже установленного SSH, те же шаги можно использовать для защиты вашего сервера.