Насколько рискованно запускать домашний сервер, защищенный SSH?

Когда вам нужно открыть что-то в своей домашней сети для большого интернета, является ли туннель SSH достаточно безопасным способом сделать это?

Сегодняшняя сессия вопросов и ответов приходит к нам благодаря SuperUser — подразделению Stack Exchange, группы веб-сайтов вопросов и ответов, управляемой сообществом.

Вопрос

Читатель SuperUser Альфред М. хочет знать, находится ли он на правильном пути с безопасностью соединения:

Недавно я установил небольшой сервер с компьютером низкого уровня, на котором запущен Debian, с целью использования его в качестве личного репозитория git. Я включил ssh и был довольно удивлен быстротой, с которой он пострадал от атак грубой силы и тому подобного. Затем я прочитал, что это довольно часто, и узнал об основных мерах безопасности для предотвращения этих атак (с ними связано множество вопросов и дубликатов на сервере, см., Например, этот или этот).

Но теперь мне интересно, стоит ли все это усилий. Я решил настроить свой собственный сервер в основном для развлечения: я мог просто положиться на сторонние решения, такие как предлагаемые gitbucket.org, bettercodes.org и т. Д. В то время как часть забавы связана с изучением безопасности в Интернете, я не достаточно времени, чтобы посвятить его тому, чтобы стать экспертом и быть почти уверенным, что я принял правильные профилактические меры.

Чтобы решить, буду ли я продолжать играть с этим игрушечным проектом, я хотел бы знать, чем я действительно рискую при этом. Например, в какой степени другие компьютеры, подключенные к моей сети, также представляют угрозу? Некоторые из этих компьютеров используются людьми, обладающими даже меньшими знаниями, чем мой, использующий Windows.

Какова вероятность того, что у меня возникнут реальные проблемы, если я буду следовать основным рекомендациям, таким как надежный пароль, отключенный доступ с правами root для ssh, нестандартный порт для ssh и, возможно, отключение входа с паролем и использование одного из правил fail2ban, denyhosts или iptables?

Другими словами, есть ли какие-то большие плохие волки, которых я должен бояться, или это все в основном из-за того, что они прогоняют сценаристов?

Должен ли Альфред придерживаться сторонних решений, или его решение «сделай сам» безопасно?

Ответ

Участник SuperUser TheFiddlerWins заверяет Альфреда, что это довольно безопасно:

IMO SSH — одна из самых безопасных вещей, которую можно слушать в открытом Интернете. Если вы действительно обеспокоены, прослушайте его на нестандартном порте высокого класса. У меня все еще есть межсетевой экран (на уровне устройства) между вашим компьютером и Интернетом, и я просто использую переадресацию портов для SSH, но это предосторожность против других сервисов. Сам SSH довольно чертовски тверд.

У меня было , когда люди время от времени заходили на мой домашний SSH-сервер (открытый для Time Warner Cable). Никогда не имел реального воздействия.

Другой участник, Стефан, подчеркивает, насколько легко обеспечить дополнительную безопасность SSH:

Настройка системы аутентификации с открытым ключом с помощью SSH очень проста и занимает около 5 минут.

Если вы заставите все соединения SSH использовать его, то это сделает вашу систему настолько же устойчивой, насколько вы можете надеяться, не вкладывая ЛОТ в инфраструктуру безопасности. Откровенно говоря, это настолько просто и эффективно (если у вас нет 200 учетных записей — тогда это становится грязным), что не использовать его должно быть публичным преступлением.

Наконец, Крейг Уотсон предлагает еще один совет, чтобы минимизировать попытки вторжения:

Я также использую персональный сервер git, открытый для всего мира по SSH, и у меня есть те же проблемы с перебором, что и у вас, поэтому я могу сочувствовать вашей ситуации.

TheFiddlerWins уже рассматривает основные последствия для безопасности, связанные с открытием SSH на общедоступном IP-адресе, но лучшим средством IMO в ответ на попытки перебора является Fail2Ban — программное обеспечение, которое отслеживает ваши файлы журнала проверки подлинности, обнаруживает попытки вторжения и добавляет правила брандмауэра в локальный iptables брандмауэр компьютера. Вы можете настроить как количество попыток до бана, так и продолжительность бана (по умолчанию 10 дней).

Есть что добавить к объяснению? Звук выключен в комментариях. Хотите узнать больше ответов от других опытных пользователей Stack Exchange? Ознакомьтесь с полной веткой обсуждения здесь.

Оцените статью
TutoryBird.Ru
Добавить комментарий