Являетесь ли вы блоггером или владельцем крупной компании, вы должны следить за тем, чтобы ваш имидж в глазах клиентов был как можно лучше. Принятие мер предосторожности и защита вашего веб-сайта от взлома является обязательным. Существует несколько способов защиты. Одним из них является использование протокола SSH.
Что такое SSH?
SSH означает защищенную оболочку. Это стандарт для клиентских и серверных протоколов связи, используемых в компьютерных сетях TCP / IP. С помощью протокола Secure Shell вы можете входить на удаленные компьютеры и выполнять команды. Это модель клиент-сервер для удаленного подключения. Соединение SSH зашифровано, в отличие от предшественника протокола SSH – TELNET.
Перехват незашифрованных данных прост и требует базовых знаний об уровне подключения. Использование незащищенных протоколов удаленной оболочки является рискованным, отсюда и популярность настройки уровня аутентификации пользователя.
Существует две основные группы пользователей Secure Shell. Сетевые администраторы используют его для управления удаленными SSH-серверами. Клиенты хостинга используют SSH-соединение для администрирования своих серверов с помощью пользовательских методов аутентификации. Вы можете настроить удаленный компьютер, отремонтировать неисправный маршрутизатор или получить доступ к удаленным базам данных. Протокол предоставляет возможность использовать электронную почту и обеспечивает безопасную передачу файлов.
Протокол Secure Socket Shell используется в повседневной работе на удаленном оборудовании и значительно повышает безопасность уровня подключения. С помощью криптографического сетевого протокола вы можете противостоять атаке на ваш веб-сайт извне, например, попытке перехватить пароль или выдать себя за DNS-сервер.
Вы можете получить доступ к своему VPS или выделенному серверу через SSH-клиент. Вы можете изменять системные файлы на сервере и устанавливать новые инструменты. С помощью общего хостинга вы можете просматривать, перемещать, копировать и редактировать файлы на сервере, упаковывать и распаковывать файлы непосредственно на сервере, а также создавать или восстанавливать резервные копии.
Чтобы узнать разницу между VPS и выделенным сервером, прочитайте эту статью. Вы узнаете, когда стоит инвестировать в специализированное решение, а когда достаточно виртуального.
Механизм протокола SSH
Вы уже знаете, что такое протокол передачи файлов SSH. С защищенным клиентским приложением-оболочкой вы можете работать в оболочке удаленной системы, как если бы это была локальная система. Технология Secure Shell стала лекарством от незащищенности протокола Telnet. Он работает в архитектуре клиент-сервер; сервер прослушивает порт 22 по умолчанию. Его потенциал безопасности весьма респектабелен и позволяет двум компьютерам обмениваться данными без риска захвата данных.
Алгоритм обмена ключами шифрования является основой для понимания того, как работает все SSH-соединение. SSH обеспечивает аутентификацию клиента с симметричным ключом при подключении к различным удаленным операционным системам. Кроме того, программы протокола SSH обеспечивают:
- выбор метода аутентификации по паролю;
- туннелирование TCP-соединений в SSH;
- Туннелирование сеансов X-Window;
- безопасная передача файлов SCP;
- поддержка внешних методов аутентификации (включая Kerberos, цифровые сертификаты и смарт-карты).
В результате технология Secure Shell защищает своих пользователей от следующих атак:
- прослушивание сеанса и подмена,
- подмена DNS-сервера,
- Маршрутизация источника IP (олицетворение доверенной системы),
- Подмена IP (выдача себя за удаленный целевой сервер),
- перехват пароля.
Протокол SSH имеет два варианта: более старый SSHv1 и новый SSHv2, разработанный Инженерной рабочей группой Интернета (IETF). Они отличаются методами шифрования, но основной принцип работы, основанный на криптографии с открытым ключом клиента и сервера, одинаков.
Я сосредоточусь на протоколе SSHv2, выделяя различия между ним и его старшим братом. SSHv1 быстро теряет популярность в пользу своего преемника, потому что против него можно провести эффективную атаку с перехватом сеанса, что невозможно при использовании усовершенствованного стандарта шифрования SSHv2.
Авторизация SSH-клиента и SSH-сервера
Каждая компьютерная система, использующая последний клиентский протокол SSH, имеет уникальный формат файла открытого ключа RSA или DSA. У SSHv1 есть только сервер RSA. Длина таких SSH-ключей составляет не менее 1024 бит. В SSHv1 сервер генерирует периодически обмениваемую пару открытого и закрытого ключей длиной не менее 768 бит. Сервер удаленного компьютера генерирует два ключа SSH: один является ключом хоста, а другой – ключом сервера.
Во время SSH-соединений SSH-клиенты получают свои открытые ключи; 1024-битный постоянный ключ, назначенный серверу, и 768-битный периодически изменяемый ключ. Клиент сравнивает постоянный ключ со своим основным и определяет, был ли он подключен к правильному SSH-серверу.
Затем клиент шифрует номер, используя открытые ключи, полученные с сервера, и отправляет обратно зашифрованный номер. Последний, в свою очередь, расшифровывает полученное значение, используя свои закрытые ключи. Выходное значение становится ключом для симметричных алгоритмов, используемых для шифрования надлежащего сеанса связи. Наиболее популярными алгоритмами для шифрования сеансов являются Blowfish и Triple DES.
С другой стороны, в случае SSHv2 ключ сервера не генерируется. Вместо этого алгоритм Диффи-Хеллмана генерирует ключ сеанса автономно. SSHv2 шифрует данные с помощью многочисленных алгоритмов: AES (128, 192, 256 бит), Blowfish, Triple DES, CAST128 и Arcfour. Кроме того, целостность сеанса обеспечивается одним из алгоритмов хеширования – SHAv1 или MD5.
После успешной авторизации пользователь может получить доступ к удаленному серверу и начать передачу данных. Методы аутентификации пользователей – это, прежде всего, протоколы шифрования, основанные на обмене данными с открытыми ключами и авторизации rhosts.
Авторизация Rhosts
Предполагается, что SSH-сервер имеет запись в файлах /etc /hosts.equiv или /etc /shosts.equiv или в файлах .shosts или .rhosts, содержащих клиентский компьютер и имена пользователей. Если перечисленные файлы содержат одинаковую информацию, безопасный доступ предоставляется автоматически (без запроса пароля).
Авторизация с открытым ключом
Открытый ключ пользователя находится на защищенном сервере оболочки с RSA. В начале подключения клиент объявляет, какие открытые ключи он хочет использовать. В ответ сервер отправляет случайное число, зашифрованное открытым ключом, выбранным клиентом. Последний должен расшифровать его, используя свой секретный ключ, соответствующий данному открытому ключу.
Если этот шаг выполнен успешно, клиент шифрует номер своим закрытым ключом, а сервер должен расшифровать его с помощью соответствующего открытого ключа. Если сервер получает номер, который он ранее отправил клиенту (зашифрованный с помощью его открытого ключа), авторизация клиента прошла успешно.
В SSHv2 шифрование и дешифрование с аутентификацией с открытым ключом различаются. Во-первых, он использует ключи RSA и DSA. Когда сервер отправляет зашифрованное случайное число клиенту, он подписывает сеансовый ключ, согласованный с использованием алгоритма Диффи-Хеллмана, закрытым ключом. Соединение проверяется SSH-сервером с использованием открытого ключа пользователя.
Кроме того, системы на основе SSHv2 могут использовать внешние методы аутентификации на основе Kerberos, X.509 и смарт-карт.
Прохождение этапов авторизации пользователя позволяет начать работу на удаленном компьютере. Первый режим – это неинтерактивное выполнение команд SSH, выдаваемых с клиентского уровня. Второй, более продвинутый режим, заключается в предоставлении пользователю удаленной оболочки. Это механизм удаленного доступа к удаленному компьютеру.
Безопасность – это основа ведения бизнеса. Шифрование ваших данных важно, но вам также необходимо защитить свой веб-сайт. Узнайте, как сделать WordPress безопасным!
Как использовать защищенную оболочку?
Вы можете использовать различные программы для подключения SSH-клиентов к серверам. Наиболее популярными являются PuTTY и OpenSSH. Помимо этого, вы также можете использовать другие программы во многих операционных системах. SSH-системы (для DOS), NiftyTelnet SSH (для Mac OS), MindTerm (для Java), MSSH, WinSCP, TTSSH и SecureCRT (для Windows).
Конфигурация PuTTY
Чтобы включить соединение, перейдите на вкладку Сеанса. В поле Подписанное имя хоста введите имя настроенного домена или IP-адрес сервера. В поле Тип подключения выберите опцию SSH, команду Открыть и введите логин и пароль. С этого момента вы можете использовать сервер по протоколу SSH.
Для управления сервером выполните команды командной строки в консоли командной строки:
- найти – поиск файла по имени;
- каталог или файл ls – list;
- mkdir – создать новый каталог;
- mv – переместить каталог или файл;
- cp – скопировать каталог или файл;
- rm – удалить каталог или файл.
Стоит проверить отключенную опцию Ведения журнала и спрашивать пользователя каждый раз, а на вкладке Терминал выбрать:
- Режим автоматического переноса изначально включен;
- Используйте цвет фона, чтобы стереть экран;
- Локальное эхо –авто;
- Редактирование локальной строки – автоматическое.
На вкладке Клавиатура вы должны оставить параметры по умолчанию. Если вы хотите использовать знаки ударения на другом языке, проверьте последние два параметра в разделе Включить дополнительные функции клавиатуры. Вкладка “Внешний вид” позволяет выбрать подходящий шрифт. Вы можете внести изменения, нажав опцию Изменить, благодаря которой вы сможете изменять графический пользовательский интерфейс: выбирать тип шрифта, стиль и размер.
На вкладке “Перевод” я рекомендую выбрать “Использовать шрифт” как в режимах ANSI, так и OEM. Затем на вкладке Подключение выберите опцию xterm и введите логин в поле Имя пользователя для автоматического входа. В клиенте PuTTY можно изменить протокол с SSHv1 на SSHv2. Если вы хотите выбрать протокол SSHv2, пожалуйста, обратитесь к опции SSH и выберите версию 2.
Заключение
Более распространенным способом подключения к серверу является FTP (протокол передачи файлов) и его безопасная альтернатива: FTPS. Однако с помощью FTP / FTPS вы можете только копировать файлы на сервер и загружать их на свое устройство, в то время как сеанс SSH предоставляет больше возможностей, чем просто безопасность транспортного уровня: вы можете работать на сервере и выполнять различные команды.
Более высокий уровень безопасности и огромный потенциал делают Secure Shell лучшим решением для управления выделенным хостингом или VPS. И поскольку безопасность является одним из важнейших вопросов, я не обязан вам это объяснять. Таким образом, в дополнение к выбору аутентификации по SSH, вы также должны выбрать правильного хостинг-провайдера.
Одним из самых безопасных хостинг-провайдеров является UltaHost. Безопасность является абсолютным приоритетом UltaHost. Несколько уровней защиты от всех угроз, от вредоносных программ до DDoS-атак, и аппаратное обеспечение последнего поколения с твердотельными накопителями NVMe делают UltaHost лидером в области безопасного хостинга. В UltaHost вы можете выбрать аутентификацию сервера с помощью протоколов Secure Shell и FTPS.
UltaHost обеспечивает ваше присутствие в Интернете, защищая репутацию вашего сайта и посетителей от киберугроз, а также сканирует ваш сайт на наличие вредоносных программ и других уязвимостей.
UltaHost – это не только безопасная хостинг-платформа. Вы получите поддержку 24/7 от нашей службы поддержки. Наша мощная инфраструктура ориентирована на автоматическое масштабирование и производительность. Давайте покажем вам разницу! Ознакомьтесь с нашими планами!