SSH: що це таке, навіщо використовується та як налаштувати на Linux

12/01/2026
| instruction | iron_will | 0 | 77 | |

1. Що таке SSH

SSH (Secure Shell) — це криптографічний мережевий протокол, який використовується для безпечного віддаленого доступу до операційних систем, серверів і мережевих пристроїв через незахищені мережі.

Основні функції SSH:

  • шифрування трафіку між клієнтом і сервером;

  • захист облікових даних;

  • автентифікація користувачів і серверів;

  • цілісність даних.

Стандартний порт SSH:

TCP 22

2. Навіщо використовується SSH

2.1 Віддалене адміністрування

  • керування Linux/Unix-серверами без GUI;

  • виконання команд у shell;

  • робота з сервісами та логами.

2.2 Безпечна передача файлів

SSH є базою для:

  • SCP — копіювання файлів;

  • SFTP — повноцінний файловий доступ.

2.3 Тунелювання та проксіювання

  • захищений доступ до внутрішніх сервісів;

  • порт-форвардинг (локальний, віддалений, dynamic);

  • bastion / jump host архітектура.

2.4 Автоматизація та DevOps

  • CI/CD деплой;

  • Ansible, Git, Docker, Kubernetes;

  • доступ без пароля через ключі.

3. Принцип роботи SSH (коротко)

  1. Клієнт ініціює з’єднання з сервером.

  2. Сервер надсилає свій публічний ключ.

  3. Відбувається узгодження алгоритмів шифрування.

  4. Користувач автентифікується (пароль або ключ).

  5. Створюється зашифрований канал зв’язку.

4. Генерація SSH-ключів у Linux

4.1 Рекомендовані алгоритми

АлгоритмКоментар
ed25519Сучасний, швидкий, безпечний
RSA 4096Для сумісності зі старими системами

4.2 Генерація ключа ed25519

ssh-keygen -t ed25519 -C "user@hostname"

Коментарі:

  • ssh-keygen — утиліта для генерації SSH-ключів

  • -t ed25519 — тип криптографічного алгоритму

  • -C "user@hostname" — коментар для ідентифікації ключа

Під час виконання:

  • система запропонує шлях збереження ключа;

  • рекомендовано встановити passphrase.

4.3 Розташування ключів

~/.ssh/id_ed25519 # приватний ключ (секретний) ~/.ssh/id_ed25519.pub # публічний ключ (копіюється на сервер)

 Приватний ключ не можна передавати та зберігати на сервері.

5. Додавання ключа на сервер

5.1 Автоматичне копіювання ключа

ssh-copy-id user@server_ip

Коментарі:

  • копіює публічний ключ у ~/.ssh/authorized_keys;

  • створює каталог .ssh, якщо його не існує;

  • виставляє коректні права доступу.

5.2 Ручне додавання ключа

cat ~/.ssh/id_ed25519.pub | ssh user@server_ip \ "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Коментарі:

  • cat id_ed25519.pub — читає публічний ключ;

  • ssh user@server_ip — підключення до сервера;

  • authorized_keys — файл дозволених ключів.

6. Підключення до сервера

6.1 Стандартне підключення

ssh user@server_ip

6.2 Підключення з явним ключем

ssh -i ~/.ssh/id_ed25519 user@server_ip

Коментар:

  • -i — вказує конкретний файл приватного ключа.

7. Налаштування SSH-сервера (sshd)

Основний конфігураційний файл:

/etc/ssh/sshd_config

7.1 Рекомендована безпечна конфігурація

Port 22 # Порт SSH Protocol 2 # Використання тільки SSHv2 PermitRootLogin no # Заборона входу під root PasswordAuthentication no # Вимкнення входу по паролю PubkeyAuthentication yes # Дозвіл входу по ключу PermitEmptyPasswords no # Заборона порожніх паролів AllowUsers user # Дозволені користувачі

7.2 Перезапуск сервісу

sudo systemctl restart ssh

Коментар:

  • застосовує зміни конфігурації;

  • без перезапуску налаштування не активні.

8. Клієнтська конфігурація SSH

Файл:

~/.ssh/config

8.1 Приклад конфігурації

Host prod-server # Логічне ім’я сервера HostName 192.168.1.10 # IP або DNS User deploy # Користувач IdentityFile ~/.ssh/id_ed25519 # Ключ Port 22 # Порт

Підключення:

ssh prod-server

9. SSH Port Forwarding

9.1 Локальний порт-форвардинг

ssh -L 3306:localhost:3306 user@server_ip

Коментарі:

  • -L — локальний тунель;

  • 3306 — локальний порт;

  • дозволяє безпечно підключитись до БД.

10. Типові помилки безпеки

  • використання PasswordAuthentication yes;

  • дозвіл PermitRootLogin;

  • відсутність passphrase;

  • відкритий порт 22 без firewall / fail2ban.



Related posts

Керування користувачами і правами доступу в Linux

Вступ Операційна система Linux спочатку проєктувалася як багатокористувацька. Це означає, що керування користувачами, групами та правами доступу є базовим механізмом безпеки системи. Коректне налаштування прав дозволяє обмежити доступ до ресурсів, м...

IT Fundamentals iron_will 24/01/2026

Сегментація та контроль доступу в MikroTik

Вступ У мережах на базі MikroTik одним із найбільш коректних і масштабованих підходів до сегментації є використання VLAN-інтерфейсів у поєднанні з IP Firewall. Такий підхід дозволяє будувати зрозумілу логіку доступу між сегментами, не прив’язуючись...

instruction iron_will 24/01/2026

Захист MikroTik: базовий та розширений рівень

Вступ Firewall у MikroTik RouterOS є одним із ключових механізмів захисту мережевої інфраструктури. Він забезпечує гнучке керування трафіком та дозволяє будувати як базові, так і складні політики безпеки. Проте за відсутності коректної конфігурації...

instruction iron_will 11/01/2026

Налаштування Honeypot на MikroTik RouterOS

Вступ Honeypot - це механізм активної безпеки, призначений для виявлення, аналізу та фіксації спроб несанкціонованого доступу до мережевої інфраструктури. У контексті MikroTik RouterOS honeypot зазвичай реалізується як набір правил firewall, сервісі...

instruction iron_will 09/01/2026

Базове налаштування MikroTik RouterOS

Вступ Маршрутизатори MikroTik з операційною системою RouterOS широко використовуються в корпоративних і провайдерських мережах завдяки гнучкості, стабільності та широкому набору мережевих функцій. Після першого ввімкнення пристрій потребує базового...

instruction iron_will 09/01/2026

Як налаштувати HAProxy для балансування навантаження з Keepalived

ВступУ сучасних високонавантажених системах питання відмовостійкості та масштабування є критичними. HAProxy — один із найпопулярніших L4/L7 балансувальників навантаження, який широко використовується для розподілу трафіку між серверами. Проте сам по...

instruction iron_will 09/01/2026

Comments (0)

Commenting is available to authorized users only.

This website uses cookies to improve your experience. Learn more