Linux

Почему аутентификация по паролю SSH представляет угрозу безопасности?

Большинство руководств по настройке OpenSSH советуют отключить парольную аутентификацию в пользу аутентификации на основе ключей. Но, на мой взгляд, аутентификация по паролю имеет значительное преимущество: возможность подключиться из абсолютно любого места без ключа. Если всегда использовать надежный пароль, это не должно представлять угрозу безопасности. Или нет?

Ответ 1

У аутентификации на основе пароля или ключа есть свои плюсы и минусы.

В некоторых случаях, например, аутентификация на основе ключа менее безопасна, чем аутентификация на основе пароля. В других случаях аутентификация на основе pw менее безопасна. В одних случаях один из вариантов более удобен, в других менее.

Все сводится к следующему: когда вы используете аутентификацию на основе ключа, вы должны защитить свой ключ парольной фразой. Если у вас не запущен ssh-agent (ssh-agent освобождает вас от необходимости каждый раз вводить кодовую фразу), вы ничего не выигрываете в плане удобства. Безопасность спорна: вектор атаки теперь переместился с сервера на ВАС или вашу учетную запись, или вашу личную машину, (...) их может быть или не быть легче взломать.

Думайте нестандартно, когда решаете этот вопрос. Выиграете ли вы или проиграете в плане безопасности зависит от остального окружения и других мер.

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

Ответ 2

Ключи ssh предотвращают атаки типа «человек посередине» на основе вашего пароля.

Когда вы пытаетесь войти в систему с помощью ключа, сервер создает вызов на основе вашего открытого ключа и отправляет его вашему клиенту, который расшифровывает его и создает соответствующий ответ для отправки.

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

С паролем у них будут ваши учетные данные.

 Мое решение — иметь портативный ключ ssh в подходящем формате на зашифрованном разделе на USB-носителе:

  1. легко извлечь этот ключ в случае его потери;

  2. ограничить, к каким серверам он дает мне доступ;

  3. при этом носить его с собой;

  4. хотя установка программного обеспечения для монтирования та еще морока (truecrypt).

Ответ 3

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

Недавно меня предупредили о загрузке Zombee Mod installer (не jar, а именно installer) для добавления в Minecraft jar. Я просмотрел детали и перечислил множество утилит на этом сайте, которые были помечены как содержащие троян. Я не знаю, верно это или нет, но имена файлов были довольно конкретными. Также известно, что трояны помещаются в (некоторые) warez перед их распространением.

Ответ 4

Одно из потенциальных преимуществ SSH перед паролями заключается в том, что если вы не указываете парольную фразу SSH, то вам больше никогда не придется вводить пароль... ваш компьютер по своей природе является доверенным на сервере, поскольку у него есть ключ. Тем не менее явсегда использую парольную фразу SSH, поэтому исключаю это преимущество.

Я нахожу лучший ответ на вопрос, почему руководства пользователя часто рекомендуют SSH вместо парольной аутентификации, в руководстве Ubuntu для SSHOpenSSHKeys. Цитирую:

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

По сути, если у вас есть надежный пароль большой длины с пунктуацией, верхним и нижним регистром, цифрами, то с аутентификацией по паролю у вас, скорее всего, все будет в порядке. Кроме того, если вы планируете отслеживать журналы и не делаете «супербезопасных» действий в сети в любом случае, т. е. используете его для домашнего сервера, тогда, конечно, пароль работает хорошо.

Схожие статьи

Linux

Что такое «POSIX»?

Linux

Как узнать максимальное количество потоков на процесс в Linux?

Linux

Альтернатива для Heartbeat, Pacemaker и CoroSync?

Linux

Архитектура для высокодоступного MySQL с автоматическим обходом отказа в физически разных местах

×