TGViewer
Системный Администратор Системный Администратор @sys_adminos · 1.57K subscribers
Post #558 569
SSH авторизация в Linux по сертификату / ключу

Ещё одна мастхев практика - доступ к линукс серверам через SSH по ключу / сертификату, чтобы исключить возможность подбора пароля и сократить количество лишних движений в ежедневной рутине.

Настройка Linux для работы с SSH

Обычно по-умолчанию всё и так включено и работает, убедитесь что:
Служба/демон/сервис ssh/sshd включена и работает

Указанный порт в файле /etc/ssh/sshd_config разрешен в фаерволе

Если летит sshd shuts down with “No supported key exchange algorithms” error, ставим UsePAM yes в /etc/ssh/
sshd_config и после этого sudo systemctl restart sshd

Создаем папку, где будут храниться ПУБЛИЧНЫЕ части ключей:

Потом мы запишем содержимое публичной части ключа в authorized_keys.

Генерируем пару SSH

После генерации ключей по-умолчанию будут создано 2 файла:

id_rsa - приватная часть ключа, которой ни с кем нельзя делиться

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

Генерируем пару SSH ключей на Windows 10

RSA Ключи с длиной 2048:

RSA Ключи с длиной 4096:

ED25519 Ключи (топовый на данный момент формат, взамен RSA

С указанием пути куда сохранить пару ключей:

ВАЖНО: Удаляем у сгенеренного паблик ключа группу ВСЕ и себе даём Полные права.

Ярлык для SSH подключения в Windows 10

ПКМ по пустому месту на рабочем столе > Создать > Ярлык > Расположение:

Генерируем пару SSH ключей на Linux

RSA Ключи с длиной 2048:

RSA Ключи с длиной 4096:

ED25519 Ключи (топовый на данный момент формат, взамен RSA


Копируем публичную часть ключа на другой хост с использованием SSH-Copy-ID

Копируем публичную часть ключа на другой хост с использованием SSH


Если каким-то магическим образом SSH-Copy-ID нет, используем OneLiner и делаем тоже самое через SSH:

Отключение SSH авторизации по паролю

В файле /etc/ssh/sshd_config:

На компьютерах под управлением Ubuntu или Debian можно использовать следующую команду:

На компьютерах под управлением CentOS/Fedora этот демон носит имя sshd:

Остальное по SSH

Чтобы вести лог подключений к SSH необходимо в файле /etc/ssh/sshd_config выставить значение LogLevel VERBOSE и перезапустить службу SSH service ssh restart

Траблшутинг SSH

На удаленном сервере сервере:
Разрешаем в фаерволе iptables тестовый порт 2222

Запускаем отдельный экземпляр SSH на 2222 порту и пробуем конектиться
/usr/sbin/sshd -d -p 2222

На клиенте в ярлыке или команде SSH можно добавить -v для verbose и читать что там не так + лог SSH на самом сервере.

👉 @sys_adminos
  • 👍 3
  • 👎 2
More from @sys_adminos
  1. Sep 14, 2026Libtree Утилита, позволяющая получить список разделяемых библиотек (shared libraries) в ви…
  2. Sep 7, 2026Как работает интернет Если вы полный ноль в интернет-технологиях, и хотите получить общее…
  3. Sep 1, 2026Это одна из моих любимых команд Cisco, которая сэкономила мне столько времени. Вы можете у…
  4. Aug 27, 2026Собираем бюджетный домашний NAS на 14 ТБ Начав заниматься фотографией, я быстро ощутил нех…
  5. Aug 17, 2026Объединение файлов командой cat Команду cat в большинстве случаев используют только для пр…
  6. Aug 10, 2026Как перенести виртуальную машину с Hyper-V на ProxmoxVE 00:00 - Вступление 00:49 - Зачем н…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →