Урок 1 — SSH — Настройка и подключение
В этом уроке мы объясним, что такое SSH, и покажем различные способы его использования на практике. Хотя SSH — это прежде всего инструмент для Linux, мы покажем, как его использовать и в Windows. То же самое относится и к Mac, и к Linux.
Что такое SSH и для чего он нужен
SSH, или Secure Shell, был создан как замена telnet. Telnet — это протокол, позволяющий удаленно подключаться к другому компьютеру (например, маршрутизаторам, коммутаторам) и обмениваться текстовыми сообщениями между ними (в виде удаленного терминала). Таким образом, вам не нужно физически подходить к устройству и подключать клавиатуру и монитор. Просто подключитесь к одной сети. Огромным недостатком telnet является то, что общение происходит в виде простого текста — отправляемые данные никак не шифруются, поэтому любой в сети может их подслушать. И именно в ответ на это (студенты украли пароли в университетской сети) в 1995 году был разработан протокол SSH.
Поэтому SSH является безопасным протоколом связи (использующим TCP/IP). Кроме того, это также имя программы Unix, которая использует этот протокол для связи между компьютерами на нескольких уровнях. SSH позволяет, помимо доступа к удаленному терминалу, передавать файлы и так называемое SSH-туннелирование, которое служит для защиты передачи любых данных.
SSH-установка
SSH состоит из двух независимых частей: клиента и сервера. Это работает так: если вы хотите подключиться к удаленному компьютеру, все, что вам нужно, это SSH-клиент. Но условие — на том удаленном компьютере должен быть установлен настоящий SSH-сервер, предоставляющий необходимые сервисы. Это означает, что если ваш компьютер также должен принимать SSHподключен, на нем должен быть установлен SSH-сервер. Сегодня мы рассмотрим установку и настройку клиента, о серверах поговорим позже.
Linux и Mac
Это очень просто, потому что в Mac и большинстве дистрибутивов Linux уже установлен SSH-клиент. Если вдруг возникнет ошибка, просто введите команду (действительна для дистрибутивов на основе Debian — например, Ubuntu):
pЕ™ГpadnД› для дистрибутивов Red Hat (Fedora):
Windows
Существует несколько альтернатив клиенту SSH для Windows, одна из наиболее часто используемых — nape™. замазка. Вы также можете использовать Cygwin, который является «эмулятором» Linux для Windows, и использовать там ssh. Ничего страшного, если вы больше разбираетесь в терминале, чем в графическом интерфейсе. Мы покажем PuTTY, который очень прост в использовании.
Подключено к серверу
Linux и Mac
Подключитесь к серверу SSH с помощью команды ssh, которую вы запускаете в терминале. Основной синтаксис программы следующий:
Опция -vvv (-vv, -v) означает листинг «уровня». Вещи в знак любви. Можно использовать максимум 3 В. Параметр -p задает порт для подключения.
Если вы не вводите пользователя, используется имя текущего пользователя. Будьте внимательны при вводе пароля, в системах UNIX он не отображается при вводе, а также не отображается ни его город, ни убывающие символы, такие как звездочки и т.п.
Пример типичного использования:
pЕ™ГpadnД› с IP-адресом:
Это сообщение будет отображаться при первом подключении к серверу с данного компьютера, это нормально, просто введите yes и подтвердите.
Образец, подключенный к ПК с ОС Windows:
Windows
Запустите PuTTY. Введите IP-адрес в поле Имя хоста(или имя) сервера, к которому вы хотите подключиться (IP-адрес компьютера легко узнать с помощью команды ipconfig в Windows и ifconfig в Linux). В этом случае оставьте порт 22 (порт по умолчанию для SSH), но его, конечно, можно изменить на сервере. Нажмите кнопку Подключить. Если вы подключаетесь к данному серверу в первый раз, вы, скорее всего, увидите предупреждение, подобное этому:
Подтвердите это (важно знать, что мы подключаемся к нужному серверу). Putty сохраняет так называемый RSA-ключ сервера и проверяет, не изменился ли он при каждом подключении. Если это так, дайте нам знать — это может означать, что мы подключаемся к серверу, который только притворяется тем сервером, который нам нужен (подключившись к такому серверу, мы практически раскроем наши данные для входа). После подтверждения появится окно терминала. В нем вы увидите текст «войти как:». Введите свое имя пользователя здесь. В результате появится запрос на ввод пароля. Если вы введете достоверную информацию, появится подсказка, в которой вы можете ввести сами команды.
Настройка SSH
Убедитесь, что он не хочет каждый раз вводить одни и те же данные. Клиенты SSH, например, позволяют устанавливать и создавать широкий спектр так называемых псевдонимов. Базовая настройка клиента в основном похожа (похоже или с таким же названием), и если вы понимаете принцип, вы сможете без проблем установить разные программы.
Linux и Mac
/etc/ssh/ssh_config
Глобальная конфигурация клиента SSH в системах UNIX — сделанные здесь настройки будут применяться ко всем пользователям. Вы должны, только если знаете, что делаете..
Персональная конфигурация пользователя — здесь, например, мы можем определитьлюбимые серверы, чтобы нам не приходилось каждый раз записывать весь их адрес. Здесь мы можем подавить глобальную конфигурацию, указанную в ssh_config. Этот файл должен быть доступен для записи/чтения владельцем, но не для других. (Право 600)
Существует несколько часто используемых директив для настройки SSH — мы их обсудим. Остальное можно найти на странице руководства ssh_config(5).
В большинстве случаев мы, вероятно, будем создавать конфигурации для определенных серверов.
Когда мы хотим подключиться, все, что нам нужно сделать, это написать:
Если мы хотим установить что-то глобально — для каждого соединения мы используем подстановочный знак *
Я перечислю некоторые из наиболее часто используемых атрибутов ниже.
По умолчанию используется порт 22. В примере мы видим порт 2222, который чаще всего используется для SSH.
Имя сервера, к которому мы хотим подключиться (мы также можем использовать IP-адрес).
Пользователь, под которым клиент подключается к серверу.
В целях безопасности нельзя вводить пароли в файлы конфигурации. Однако мы можем использовать доступ по ключу, о котором мы поговорим чуть позже. По умолчанию ключ ищется в путях
/.ssh/
Интересная функция, позволяющая запускать X-программы на сервере и отображать их окна на клиенте. Давайте поговорим о ней в следующих частях сериала.
Windows
Для Cygwin используйте учебник по Linux. С PuTTY базовая конфигурация оченьпросто. Основные данные для подключения можно найти в разделе Сессия. PuTTY поддерживает различные типы соединений, мы, конечно, используем SSH. Можно установить пользователя, для которого мы будем входить в систему автоматически, установив имя пользователя для автоматического входа в разделе «Соединение-> Данные». Если вы используете прокси, установите его в разделе Connection->Proxy. О других параметрах конфигурации мы поговорим позже, но обычно для повседневного использования все настраивается так, как должно быть.
Всю конфигурацию можно сохранить в профиле в разделе «Сеанс» после ввода имени и нажатия «Сохранить». Затем вы можете загрузить его, выбрав данный сеанс и нажав кнопку «Загрузить».
Теперь вы знаете, как подключиться к SSH и как создать свой собственный SSH-сервер.
На пятом уроке SSH — установка и настройка сервера мы установим и настроим SSH-сервер в операционных системах Linux и Windows.