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

event 16.01.2026 12:00
| category Instruction | person iron_will | comment 0 | visibility 327 | |

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

Мережеві порти: що це таке, які вони бувають, навіщо потрібні та які мають обмеження

Вступ Сучасні комп'ютерні мережі побудовані на принципі одночасної роботи великої кількості сервісів та застосунків. Вебсервери, поштові системи, бази даних, VPN-рішення, системи моніторингу та корпоративні сервіси використовують одну й ту саму мере...

category Network person iron_will event 05/06/2026

VPN, SSH та базова безпека інфраструктури

Вступ Сучасна IT-інфраструктура функціонує в умовах постійного зовнішнього впливу: сканування портів, автоматизовані брутфорс-атаки, експлуатація вразливостей сервісів та цільові кібератаки. Навіть невеликі системи без належного захисту можуть стати...

category Security person iron_will event 26/05/2026

Kubernetes для новачків: базові концепції

Вступ Сучасна розробка програмного забезпечення дедалі більше орієнтується на мікросервісну архітектуру, контейнеризацію та автоматизацію інфраструктури. У центрі цієї трансформації знаходиться Kubernetes - одна з найпопулярніших платформ оркестраці...

category Kubernetes person iron_will event 17/05/2026

Що таке RAID: рівні RAID, принцип роботи та навіщо він потрібен

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

category System administration person iron_will event 10/05/2026

Docker: як оптимізувати розмір контейнера з 50 ГБ до керованого рівня

Вступ Контейнери давно стали стандартом де-факто для доставки застосунків у production. Проте з ростом складності систем часто виникає нетривіальна проблема - неконтрольоване збільшення розміру Docker-образів. Сценарій, коли образ досягає 30–50 ГБ,...

category DevOps person iron_will event 06/05/2026

Як знайти головну IP-адресу джерела DDoS у лог-файлі на 10 млн рядків у Linux

Вступ Коли сервер потрапляє під DDoS-атаку, одним із перших завдань адміністратора є швидке визначення джерел аномального трафіку. На практиці це означає аналіз великих лог-файлів вебсервера, балансувальника, firewall або reverse proxy. Якщо файл мі...

category System administration person iron_will event 25/04/2026
cookie
This website uses cookies to improve your experience. Learn more
dangerous
warning