Протокол SSH

SSH (Secure Shell — «безопасная оболочка») — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов).

Схож по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования.

SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных систем.

Первая версия протокола SSH была разработана в 1995 году. С тех пор были обнаружены некоторые слабые места и программа претерпела ряд существенных изменений.

В 1996 году, вышла вторая версия SSH – 2. Она не совместима с первой версией и, говоря о SSH сегодня, всегда подразумевается SSH – 2. С тех пор SSH не изменила значительно стандарты своей работы и широко используется по сей день.

SSH является коммерческим продуктом и предоставляется на платной основе. Однако повсеместно доступна и ее бесплатная версия, которая носит название OpenSSH.

Не смотря на то, что OpenSSH является лишь одной из версий SSH, она намного чаще используется программистами.

Возможности SSH

  1. Позволяет удаленно работать на компьютере через командную оболочку;
  2. Позволяет осуществлять шифрование с помощью различных алгоритмов;
  3. Так как SSH позволяет безопасно передавать практически любой сетевой протокол, это позволяет передавать по шифрованному каналу звуковые и видео файлы;
  4. Производит сжатие файлов для их последующего шифрования и передачи;
  5. Защищает передачу данных по каналу и предотвращает возможность включения в установленную сессию и перехватить данные.

Необходимое программное обеспечение для работы с SSH

Для работы с SSH необходим SSH-сервер и SSH-клиент.

SSH-сервер принимает соединение от клиентских машин и производит аутентификацию. Способы аутентификации:

  1. По IP адресу клиента;
  2. По публичному ключу клиента;
  3. По паролю клиента.

Примеры SSH-серверов:

  • BSD: OpenSSH
  • Linux: dropbear, lsh-server, openssh-server, ssh
  • Windows: freeSSHd, copssh, WinSSHD, KpyM Telnet/SSH Server, MobaSSH, OpenSSH

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

  • GNU/Linux, BSD: kdessh, lsh-client, openssh-client, putty, ssh, Vinagre;
  • MS Windows и Windows NT: PuTTY, SecureCRT, ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD, XShell;
  • Mac OS: NiftyTelnet SSH.

Правила безопасного использования SSH

Необходимо соблюдать несколько правил пользования SSH, чтобы обезопасить свои данные:

  • Запретить возможность удалённого root-доступа;
  • Запретить подключение с пустым паролем или отключение входа по паролю;
  • Необходимо выбирать нестандартный порт для SSH-сервера;
  • Использовать длинные SSH2 RSA-ключи;
  • Необходимо строго ограничить количество IP-адресов, с которых разрешён доступ;
  • Запретить доступ с опасных адресов;
  • Регулярно отслеживать сообщения об ошибках аутентификации;
  • Установить системы обнаружения вторжений (IDS — Intrusion Detection System);
  • Использовать специальные ловушки, подделывающих SSH-сервис (honeypots).

Базовый синтаксис SSH

Синтаксис команды выглядит следующим образом:

$ ssh [опции] имя пользователя@сервер [команда]

Опции команды SSH

  • f – перевести ssh в фоновый режим;
  • g – разрешить удаленным машинам обращаться к локальным портам;
  • l – имя пользователя в системе;
  • n – перенаправить стандартный вывод в /dev/null;
  • p – порт ssh на удаленной машине;
  • q – не показывать сообщения об ошибках;
  • v – режим отладки;
  • x – отключить перенаправление X11;
  • X – включить перенаправление Х11;
  • C – включить сжатие.

Настройка SSH-сервера

В Linux настройки сервера SSH находятся в файле /etc/ssh/sshd_config. По умолчанию ssh работает на порту 22. В файле sshd_config порт задается строчкой:

Port 22

По умолчанию сервер ssh может работать по двум версиям протокола, для совместимости. Чтобы использовать только протокол версии два раскомментируйте строчку:

# Protocol 2

По умолчанию root доступ по ssh разрешен, но такое поведение очень небезопасно, поэтому раскомментируйте строчку:

PermitRootLogin no

Можно разрешить доступ к ssh только для определенного пользователя или группы. Для этого добавьте строчки:

AllowUsers User1, User2, User3
AllowGroups Group1, Group2, Group3

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

Кроме выполнения команд, можно копировать файлы по ssh. Для этого используется утилита scp. Просто укажите файл, который нужно передать, удаленный сервер и папку на сервере:

$ scp /адрес/локального/файла пользователь@хост:адрес/папки

Например:

scp ~/test.txt user@host:documents

Видео по работе с SSH:



 
Поделиться в facebook
Facebook
Поделиться в twitter
Twitter
Поделиться в vk
VK
Поделиться в google
Google+
Поделиться в email
Email

Один ответ к “Протокол SSH”

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Группа в VK

Помощь проекту

Обнаружили опечатку?

Сообщите нам об этом, выделите текст с ошибкой и нажмите Ctrl+Enter, будем очень признательны!

Свежие статьи

Похожие статьи

Установка и настройка службы SNMP в Windows 10

Установка и настройка службы SNMP в Windows 10

Протокол Simple Network Management Protocol (SNMP) используется для мониторинга, оповещения о событиях и управления устройствами в сети. SNMP может получать различную информацию (время аптайма, счетчики

 
Анализатор сети Wireshark

Анализатор сети Wireshark

Wireshark – это мощный сетевой анализатор, который может использоваться для анализа трафика, проходящего через сетевой интерфейс компьютера. Он может понадобиться для обнаружения и решения проблем

 
Обзор iReasoning MIB browser

Обзор iReasoning MIB browser

MIB Browser – функция программы, позволяющая просматривать иерархию SNMP MIB-переменных в древовидной форме. С помощью неё можно загружать и компилировать стандартные и проприетарные файлы MIB.

 
Настройка сетевой маршрутизации Linux

Настройка сетевой маршрутизации Linux

Данная статья является продолжением статьи “Понятия маршрутизации“. Рекомендуется подробно изучить эту статью. В этой статье мы подробно рассмотрим команду route для настройки маршрутизации в операционных

 

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: