# Host *
# ForwardAgent no
# ForwardX11 no
# RhostsAuthentication yes
# RhostsRSAAuthentication yes
# RSAAuthentication yes
# PasswordAuthentication yes
# FallBackToRsh no
# UseRsh no
# BatchMode no
# CheckHostIP yes
# StrictHostKeyChecking ask
# IdentityFile ~/.ssh/identity
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# Port 22
# Protocol 2,1
# Cipher 3des
# Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc
# EscapeChar ~
Host *
Protocol 1,2
Некоторые из этих параметров мы уже видели при рассмотрении серверного конфигурационного файла. Здесь также присутствует параметр Protocol, в котором указываются используемые версии SSH. Только в данном случае не стоит запрещать 1 версию. На безопасность клиента это не повлияет. Зато не будет проблем при подключении к серверу, который работает только на такой версии. Я надеюсь, что это будет не ваш сервер ☺.
Перечислю характерные для клиента команды:
□ Host— указывает, к какому серверу будут относиться следующие настройки;
□ CheckHostIP— разрешена проверка IP-адреса с перечисленными в файле know_hosts адресами;
□ Compression— позволяет ( yes) или запрещает ( no) использование сжатия данных;
□ KerberosAuthentication— позволяет ( yes) или запрещает ( no) использование аутентификации по протоколу Kerberos;
□ NumberOfPasswordPrompts— задает количество попыток ввода пароля. Если пароль не введен верно, то соединение разрывается;
□ IdentityFile— определяет имя файла, содержащего закрытые ключи пользователя;
□ PasswordAutentication— указывает на использование аутентификации по паролю.
5.3.5. Пример работы клиента SSH
Теперь рассмотрим на примере, как можно подключиться к удаленному серверу. Для этого используется команда:
ssh пользователь@сервер
Например, чтобы подсоединиться к серверу flenovm под именем flenov, нужно выполнить следующую команду:
ssh flenov@flenovm
В ответ на это вы можете увидеть сообщение:
The authenticity of host 'localhost(127.0.0.1)' can't be established
RSA1 key fingerprint is f2:a1:6b:d6:fc:d0:f2:a1:6b:d6:fc:d0.
Are you sure you want to continue connection (yes/no)?
Данным сообщением программа информирует вас, что подлинность хоста не была установлена и отображает снимок RSA-ключа. Для продолжения соединения необходимо набрать на клавиатуре "yes". На экране появится уведомление:
Permanently added 'localhost' (RSA1) to the list of known hosts.
Здесь вам сообщается, что ключ добавлен в список известных хостов. Это значит, что в вашей домашней директории, в папке .ssh/появился (или обновился) файл known_hosts с ключом удаленной системы.
Затем предлагается ввести пароль пользователя. Если аутентификация прошла успешно, вы оказываетесь в системе и можете выполнять команды на удаленном компьютере, как будто вы сидите за его клавиатурой.
Намного удобнее и даже безопаснее способ авторизации по ключу, а вход по паролю может быть даже заблокирован. Обращение к системе по SSH не совсем безопасно. Злоумышленник может подсмотреть пароль, когда вы будете вводить его в другой программе. Тогда зачем шифровать SSH-соединение, если секретное слово может быть выявлено при работе с другими программами?
Для каждого подключения должны быть свои пароли. Но помнить их все очень сложно, поэтому лучше для авторизации использовать ключи, которые итак защищены, дальше некуда. Нужно сделать только небольшие изменения в конфигурации.
Для начала нужно создать новый ключ. Для этого используется программа ssh-keygen. Ей нужно передать два параметра:
□ -t— тип ключа. Здесь можно указывать rsaили dsaдля второй версии SSH или rsa1 — для первой. Для примера будем использовать rsaключ;
□ -f— файл, в котором будет сохранен закрытый ключ. Открытый ключ получит такое же имя, но с расширением pub;
□ -b— длина ключа, которая может быть минимально 512. По умолчанию установлено значение 1024, оставим его, и не будем указывать этот параметр.
Итак, для генерации ключа выполним команду:
ssh-keygen -t rsa -f ~/.ssh/myrsakey
Обратите внимание, что я указал сохранение ключа в директории .ssh — своей домашней директории (об этом свидетельствует знак "~"). Это директория, в которой SSH будет искать все настройки. Если вы еще не подключались к серверу, то этот путь и ключ отсутствуют. Для исправления ситуации нужно перейти в свою домашнюю директорию и создать папку .ssh:
Читать дальше
Конец ознакомительного отрывка
Купить книгу