Безопасные пароли для админки и SSH: пошаговая инструкция
Защитите веб-админку уникальным паролем, а SSH — ключом вместо входа по паролю. Настроим оба способа без риска запереть себя на сервере: проверим доступ, внесём изменения и только потом закроем старый способ входа.

Защитить админку сайта и SSH можно за один сеанс: для веб-панели задайте уникальный пароль из менеджера паролей, а для SSH настройте вход по ключу и лишь после проверки отключите вход по паролю. Инструкция рассчитана на Ubuntu 22.04 или 24.04 с OpenSSH Server и занимает около 20–30 минут; для других Linux-дистрибутивов команды управления службами и расположение настроек могут отличаться.
Что подготовить до начала
Перед изменениями убедитесь, что у вас есть доступ к панели управления сервером у хостера или другой внеполосный способ восстановить SSH. Не закрывайте текущий SSH-сеанс, пока не проверите новое подключение во втором окне.
- Учётная запись администратора сайта и доступ к её настройкам.
- Менеджер паролей, который умеет создавать случайные пароли.
- Компьютер, с которого вы подключаетесь к серверу, и учётная запись с правами администратора через
sudo. - Ubuntu 22.04 или 24.04 с установленным OpenSSH Server. На сервере должна работать служба SSH.
Если вы подключаетесь не с Linux или macOS, команда создания ключа может отличаться. В Windows 10 и 11 обычно доступен OpenSSH Client; проверьте, что команда ssh-keygen запускается в PowerShell. Не начинайте отключение входа по паролю, пока не убедитесь, что сможете выполнить все шаги и открыть второе соединение.
Шаг 1. Замените пароль админки
Войдите в панель сайта и откройте настройки учётной записи администратора. Названия разделов зависят от CMS, но нужная настройка обычно называется «Пароль» или «Безопасность».
- Создайте в менеджере паролей новый случайный пароль. Используйте не менее 16 символов, если панель не задаёт более строгие требования. Не берите фразу, имя сайта, дату рождения или пароль от почты.
- Сохраните пароль в менеджере и вставьте его в форму смены пароля. Не отправляйте его себе в мессенджере и не сохраняйте в документе рядом с сайтом.
- Если панель поддерживает двухфакторную аутентификацию, включите её и сохраните резервные коды в защищённом месте. Проверьте вход в новом приватном окне браузера до выхода из текущей сессии.
Проверка: вы можете войти с новым паролем, а менеджер паролей показывает его только в записи этого сайта. Если CMS предлагает завершить остальные сеансы, сделайте это после проверки нового входа.
Пароль должен быть уникальным: утечка пароля от форума не должна открывать доступ к панели магазина или сайта. Смена пароля не заменяет обновление CMS и плагинов, но ограничивает ущерб от повторного использования скомпрометированных данных.
Шаг 2. Создайте SSH-ключ
На своём компьютере откройте терминал или PowerShell и запустите команду. Она создаст ключ Ed25519 — современный тип ключа, поддерживаемый актуальными версиями OpenSSH.
ssh-keygen -t ed25519 -C "server-admin"
Когда программа спросит, куда сохранить ключ, обычно можно принять путь по умолчанию. Задайте длинную парольную фразу для защиты закрытого ключа и сохраните её в менеджере паролей. При желании используйте отдельную фразу, не совпадающую с паролем от админки.
Ключ состоит из двух файлов: закрытый остаётся на вашем компьютере, открытый можно добавить на сервер. Не пересылайте и не публикуйте закрытый файл; парольная фраза не превращает его в открытый ключ.
Проверка: команда создания ключа завершилась без ошибки и показала путь к открытому ключу с расширением .pub. Не копируйте на сервер файл без этого расширения.
Шаг 3. Добавьте открытый ключ на сервер
Пока парольный вход ещё включён, установите открытый ключ в учётную запись, которой вы подключаетесь. На Linux и macOS, если доступна утилита ssh-copy-id, выполните:
ssh-copy-id USER@SERVER
Замените USER на имя пользователя на сервере, а SERVER — на доменное имя или IP-адрес. Введите пароль серверной учётной записи, если система попросит. Если утилиты нет, добавьте содержимое открытого файла .pub в файл ~/.ssh/authorized_keys нужного пользователя, подключившись прежним способом. Не вставляйте туда закрытый ключ.
Откройте второе окно терминала и проверьте вход:
ssh USER@SERVER
Если для ключа задана парольная фраза, система может попросить её. Вошли на сервер без ввода пароля учётной записи — ключ работает. Не закрывайте исходный сеанс.
Шаг 4. Отключите парольный вход по SSH
На Ubuntu основной файл настроек сервера SSH — /etc/ssh/sshd_config. Перед редактированием сохраните резервную копию. Команда ниже создаёт её с датой в имени:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup-$(date +%F)
Откройте файл в редакторе с правами администратора, например командой sudo nano /etc/ssh/sshd_config. Проверьте активные настройки: если параметр уже задан, измените существующую строку, а не добавляйте вторую. Установите значения:
PubkeyAuthentication yes
PasswordAuthentication no
Если для PasswordAuthentication есть строка, начинающаяся с #, это комментарий, а не активное значение. Уберите символ комментария и задайте no. На Ubuntu настройки также могут задаваться в файлах из каталога /etc/ssh/sshd_config.d/; проверьте их, если эффективное значение не меняется.
Сначала проверьте синтаксис, затем перечитайте конфигурацию без закрытия текущего соединения:
sudo sshd -t
sudo systemctl reload ssh
Если первая команда ничего не вывела и завершилась успешно, синтаксическая проверка прошла. Теперь снова подключитесь из второго окна терминала. Закрывать старый сеанс можно только после успешной проверки.
Если не получилось
Permission denied (publickey): сервер не принял ключ. Проверьте, что вы входите под тем же пользователем, которому добавили открытый ключ, и что вauthorized_keysнаходится содержимое файла.pub.ssh-copy-id: command not found: утилита не установлена или недоступна в вашей системе. Добавьте открытый ключ вручную либо используйте инструкции документации дистрибутива.sshd: command not found: в системе команда может быть доступна только по полному пути. На Ubuntu попробуйтеsudo /usr/sbin/sshd -t.- После изменения настройки вход всё ещё принимает пароль: проверьте файлы из
/etc/ssh/sshd_config.d/, а также то, что редактируете конфигурацию именно того SSH-сервера, к которому подключаетесь. Не отключайте старый доступ, пока не разобрались. - Сервер перестал принимать подключения: не завершайте активный сеанс. Верните резервную копию конфигурации или воспользуйтесь консолью хостера; затем проверьте настройки и только после этого перезагрузите конфигурацию.
Что проверить после настройки
Убедитесь, что вы можете войти в веб-панель новым паролем и открыть новое SSH-соединение с ключом. Если на сервере несколько администраторов, каждому нужна собственная учётная запись и собственный ключ: общий ключ усложняет отзыв доступа при уходе сотрудника.
Отключайте старый способ входа только после проверки нового. Для SSH это не формальность: ошибка в ключе или настройке способна отрезать вас от сервера.
Если доступ к серверу потерян, восстановление через панель хостера может занять время и потребовать ручного исправления файлов. Заранее проверьте, где находится консоль восстановления и кто может ей воспользоваться.
Термин: закрытый ключ — секретная часть пары SSH-ключей, которая остаётся у вас. Сервер хранит соответствующий открытый ключ и использует его, чтобы проверить, что подключение действительно выполнено владельцем закрытого ключа.
Что делать дальше
Запланируйте проверку списка администраторов и SSH-ключей: удалите доступы, которыми больше никто не пользуется, и убедитесь, что у вас есть рабочий способ восстановления сервера. Для продакшена дополнительно проверьте журнал входов и правила сетевого экрана. Настройки доступа не заменяют резервные копии и своевременные обновления.
Антиблок-аналитик 115-ФЗ: Анализ выписок, поиск рисков блокировки счёта, инструкции по безопасным транзакциям.
Спросить за 41 ₽Источники: Ubuntu Server: OpenSSH server, OpenSSH: ssh-keygen manual
Частые вопросы
Можно ли использовать один пароль для админки и SSH?
Нужно ли задавать парольную фразу для SSH-ключа?
Что делать, если после отключения пароля я не могу войти?
Отключение PasswordAuthentication отключит вход по SSH для всех?
Подойдёт ли эта инструкция для Debian или CentOS?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.