3 min read

Хватит использовать пароли для доступа к серверам: переходим на SSH-ключи

Хватит использовать пароли для доступа к серверам: переходим на SSH-ключи

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

Для многих клиник, юридических фирм и малых предприятий серверы, обеспечивающие их ежедневную работу, по-прежнему доступны по традиционным паролям. Это привычно, но оставляет вашу инфраструктуру открытой для автоматических атак, утечек учетных данных и дорогостоящих простоев.

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

Существует простой и стандартный способ устранить эту уязвимость: полностью отключить пароли и перейти на аутентификацию по SSH-ключам.

Почему пароли — это операционный риск

Когда ИТ-персонал или внешние подрядчики получают доступ к вашему серверу для установки обновлений или исправления ошибок, они обычно используют протокол Secure Shell (SSH).

Если для этого доступа требуется пароль, возникают две серьезные проблемы:

  1. Уязвимости безопасности: Пароли можно подобрать перебором (брутфорс), передать по ненадежным каналам или перехватить с помощью фишинга.
  2. Операционные трудности: Сложные пароли замедляют работу вашей ИТ-команды. Если срок действия пароля истечет или он будет утерян во время аварии, устранение проблемы с сервером займет гораздо больше времени.

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

Решение: Аутентификация по SSH-ключам

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

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

Как только все будет настроено, вы сможете полностью отключить парольный доступ к вашему серверу.

Как внедрить SSH-ключи (Инструкция для вашей ИТ-команды)

Если вы сами управляете своей инфраструктурой или хотите передать эти шаги своему системному администратору, вот простой процесс, который мы в 1it.pro используем для защиты серверов клиентов.

1. Генерация пары SSH-ключей

На локальном компьютере откройте терминал. Для максимальной безопасности и производительности мы рекомендуем использовать алгоритм ed25519 вместо устаревшего стандарта RSA:

ssh-keygen -t ed25519 -C "[email protected]"

Нажмите Enter, чтобы сохранить его в папку по умолчанию. Вы можете добавить парольную фразу (passphrase) для дополнительного уровня локальной безопасности.

2. Установка открытого ключа на сервер

Перенесите открытую часть ключа на ваш сервер:

ssh-copy-id [email protected]

Замените user и your-server.com на ваше реальное имя пользователя и адрес хоста.

3. Отключение аутентификации по паролю

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

sudo nano /etc/ssh/sshd_config

Убедитесь, что установлены следующие строки:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no

Сохраните файл и перезапустите службу SSH:

sudo systemctl restart sshd

4. Проверка подключения

Попробуйте подключиться с локального компьютера без ввода пароля:

ssh [email protected]

Если всё настроено правильно, вы мгновенно и безопасно окажетесь в системе.

Автоматизация процесса

Для команд, управляющих несколькими серверами, ручная настройка отнимает много времени. Вы можете использовать простой скрипт Bash для стандартизации генерации ключей. Сохраните его как generate_ssh_key.sh и сделайте исполняемым (chmod +x generate_ssh_key.sh):

#!/bin/bash
echo "Введите комментарий к ключу (например, ваш email):"
read comment
comment=${comment:-""}

echo "Введите парольную фразу (оставьте пустой, если не нужна):"
read -s password

echo "Введите имя файла (по умолчанию 'server_key'):"
read filename
filename=${filename:-"server_key"}

if [ -z "$password" ]; then
  ssh-keygen -t ed25519 -C "$comment" -f "$filename"
else
  ssh-keygen -t ed25519 -C "$comment" -N "$password" -f "$filename"
fi

echo "Ключ сгенерирован и сохранен как $filename"

Результат для бизнеса

Отказываясь от паролей, ваш бизнес получает более спокойную и защищенную основу для работы:

  • Максимальная защита: Криптографические ключи фактически неуязвимы для брутфорс-атак.
  • Быстрый доступ: ИТ-специалистам больше не нужно вводить пароли при каждом входе.
  • Соответствие стандартам: Такой подход отвечает строгим отраслевым требованиям к безопасности данных.
  • Удобное управление командой: Можно легко добавлять новые или отзывать старые ключи, не меняя общие пароли.

Это незаметное структурное изменение, которое предотвращает громкие и дорогостоящие инциденты. Мы в 1it.pro помогли десяткам клиентов сократить количество попыток несанкционированного доступа к серверам более чем на 95%.


Безопасны ли ваши серверы?
Если вы не уверены, защищена ли ваша инфраструктура современными методами контроля доступа, возможно, пришло время провести аудит.

В 1it.pro мы помогаем клиникам и малому бизнесу стабилизировать ИТ-процессы и защищать данные без лишней сложности, сокращая операционные расходы на ИТ до 40%.

Напишите нам на [email protected] для проведения краткого обзора вашей инфраструктуры. Мы проанализируем текущую конфигурацию и предоставим практический чек-лист необходимых улучшений.

Больше полезных руководств по корпоративному ИТ и автоматизации читайте в нашем блоге: blog.1it.pro.


Связаться с нами
Telegram
WhatsApp
Email