Скиллы Новичок Разработка и DevOps

SSH Essentials

Скачать ZIP
11
Предупреждение о рисках!

Установка скиллов и плагинов OpenClaw осуществляется на ваш страх и риск. Все файлы были получены из открытых источников и предоставляются «как есть». Мы не гарантируем их корректную работу, безопасность или совместимость с вашей системой. Перед установкой настоятельно рекомендуется ознакомиться с содержимым кода и убедиться, что вы понимаете, какие изменения будут внесены в вашу систему.

SSH (Secure Shell) — это базовый инструмент для безопасного удалённого доступа к серверам, управления системами и передачи данных. Он обеспечивает зашифрованное соединение, позволяя выполнять команды, передавать файлы и настраивать туннели даже в небезопасных сетях.

Быстрый старт

# Подключение к серверу
ssh user@hostname

# Подключение через нестандартный порт
ssh -p 2222 user@hostname

# Выполнение команды на удалённой машине
ssh user@hostname "uptime"

SSH-ключи

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

# Генерация ключа (рекомендуется ED25519)
ssh-keygen -t ed25519 -C "your_email@example.com"

# Копирование ключа на сервер
ssh-copy-id user@hostname

# Проверка отпечатка ключа
ssh-keygen -lf ~/.ssh/id_ed25519.pub

Управление SSH-агентом

# Запуск агента
eval $(ssh-agent)

# Добавление ключа
ssh-add ~/.ssh/id_ed25519

# Список ключей
ssh-add -l

Проброс портов и туннели

SSH позволяет создавать туннели для доступа к внутренним сервисам, базам данных и веб-интерфейсам.

# Локальный проброс порта
ssh -L 8080:localhost:80 user@hostname

# Удалённый проброс
ssh -R 8080:localhost:3000 user@hostname

# SOCKS-прокси
ssh -D 1080 user@hostname

Конфигурация (~/.ssh/config)

Host myserver
 HostName 192.168.1.100
 User admin
 Port 2222

Host production
 HostName prod.example.com
 User deploy
 IdentityFile ~/.ssh/id_prod

Использование конфигурационного файла упрощает подключение и уменьшает количество повторяющихся параметров.

Передача файлов

# Копирование файла
scp file.txt user@hostname:/path/

# Загрузка файла
scp user@hostname:/path/file.txt ./

# Синхронизация директорий
rsync -avz ./local/ user@hostname:/remote/

SFTP

# Подключение
sftp user@hostname

# Основные команды
ls # список файлов
get # скачать файл
put # загрузить файл
exit # выход

Безопасность

Правильная настройка SSH критична для защиты серверов от несанкционированного доступа.

# Отключение входа по паролю
PasswordAuthentication no

# Запрет root-доступа
PermitRootLogin no

# Изменение порта
Port 2222

Ключевая аутентификация снижает риск атак перебора и утечки паролей. :

Отладка

# Подробный вывод
ssh -v user@hostname
ssh -vv user@hostname
ssh -vvv user@hostname

Расширенные возможности

# Подключение через bastion
ssh -J bastion.example.com user@internal

# Выполнение скрипта
cat script.sh | ssh user@hostname 'bash -s'

# Multiplexing
ssh -M -S ~/.ssh/control user@hostname

Полезные советы

  • Используйте ключи вместо паролей
  • Храните приватные ключи в безопасности
  • Применяйте ~/.ssh/config для упрощения работы
  • Используйте bastion-хосты для доступа к внутренним сетям
  • Регулярно обновляйте SSH-клиент и сервер

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


Файл из источника

11772_ssh-essentials-1.0.0.zip