Как настроить и использовать порт ssh? пошаговая инструкция
Содержание:
- Навигация
- Принцип работы
- Выполнение команд на удалённом сервере без создания сессии шелла
- Как подключиться по SSH с помощью ключа
- Server-Side Configuration
- Шаг 3: Предоставление административных привилегий
- Использование ключа
- Пример. Скрипт. Копирование файла с удаленного компьютера.
- Как использовать команду ssh
- Устанавливаем соединение с сервером по SSH
- Dynamic Port-Forwarding
- Навигация и управление файловой системой
- Аутентификация открытого ключа
- Что такое SSH?
Навигация
Вывод текущей рабочей директории
Для вывода информации о текущей рабочей директории используется команда pwd.
Пример использования:
username@server:~$ pwd /home/u/username
Вывод содержимого директории
Чтобы посмотреть содержимое директории, воспользуйтесь командой ls.
Вывод содержимого текущей директории в несколько колонок (только имена файлов и директорий):
ls .
Вывод содержимого текущей директории в одну колонку (только имена файлов и директорий):
ls -1
Вывод подробной информации о содержимом текущей директории, включая скрытые файлы (имя которых начинается с точки):
ls -la
Вывод содержимого конкретной директории:
ls имя_директории
Пример использования:
username@server:~$ ls -la total 16 drwx------ 4 username customers 4096 Mar 10 12:56 . drwx------ 14 username customers 4096 Mar 10 12:55 .. -rw------- 1 username customers 0 Mar 10 12:56 .htaccess drwx------ 2 username customers 4096 Mar 10 12:55 test drwx------ 2 username customers 4096 Mar 10 12:55 test1 -rw------- 1 username customers 0 Mar 10 12:55 test.txt где "." - текущий каталог, а ".." - родительский каталог.
Перемещение между директориями
Команда cd позволяет выполнить переход в другую директорию.
Основные способы применения:
Перейти в директорию, которая находится в текущей директории:
cd dirname
Перейти в родительский каталог (на уровень выше):
cd ..
Перейти в домашний каталог:
cd # Либо: cd ~
Перейти в домашний каталог по абсолютному пути (начиная с корня):
cd /home/u/username
Перейти в предыдущий каталог:
cd -
Примеры использования:
# Текущая директория отображается после двоеточия и до символа "$". # Перейти в каталог media username@server:~$ cd /home/u/username/public_html/media # Перейти в каталог cms username@server:~/public_html/media$ cd cms # Перейти в домашний каталог username@server:~/public_html/media/cms$ cd # Перейти в предыдущий каталог username@server:~$ cd - /home/u/username/public_html/media/cms # Перейти на уровень выше username@server:~/public_html/media/cms$ cd .. username@server:~/public_html/media$
Принцип работы
SSH это протокол, использующий клиент-серверную модель для аутентификации удаленных систем и обеспечения шифрования данных, обмен которыми происходит в рамках удаленного доступа.
По умолчанию для работы протокола используется TCP-22 порт: на нем сервер (хост) ожидает входящее подключение и, после получения команды и проведения аутентификации, организует запуск клиента, открывая выбранную пользователем оболочку. При необходимости пользователь может менять используемый порт.Для создания SSH подключения клиент должен инициировать соединение с сервером, обеспечив защищенное соединение и подтвердив свой идентификатор (проверяются соответствие идентификатора с предыдущими записями, хранящимися в RSA-файле, и личные данные пользователя, необходимые для аутентификации).
Выполнение команд на удалённом сервере без создания сессии шелла
Кроме открытия сессии шелла на удалённой системе, ssh также позволяет выполнять отдельные команды на удалённой системе.
ssh ПОЛЬЗОВАТЕЛЬ@АДРЕСАТ КОМАНДА
Например, для выполнения команды tree на удалённом хосте с IP адресом 192.168.1.36 и отображением результатов на локальной системе, нужно сделать так:
ssh mial@192.168.1.36 tree
Используя эту технику, можно делать интересные вещи, вроде такой, как выполнение команды ls на удалённой системе и перенаправление вывода в файл на локальной системе:
ssh mial@192.168.1.36 'ls *' > dirlist.txt
Обратите внимание на одиночные кавычки в вышеприведённой команде. Это сделано потому, что мы не хотим, чтобы раскрытие пути было выполнено на локальной машине; поскольку нам нужно это выполнение на удалённой системе
Также если мы хотим стандартный вывод перенаправить в файл на удалённой машине, мы можем поместить оператор редиректа и имя файла внутри одиночных кавычек:
ssh remote-sys 'ls * > dirlist.txt'
Как подключиться по SSH с помощью ключа
Выше мы разобрали простое подключение по паролю, но гораздо безопаснее подключаться, используя ключ. В этом случае нужно вводить пароль от ключа, а не юзера сервера. Возможно даже вообще не вводить никаких паролей, а использовать только файл-ключ, что является очень удобным и относительно безопасным. Но обо всем по порядку.
Генерация (создание) SSH-ключа
Для начала нужно создать SSH-ключ на той машине, с которой будем подключаться к серверу, то есть ключ создается на стороне клиента, для этого не нужно заходить на сервер.
Чтобы создать ключ, нужно ввести команду . В примере мы будем использовать самую распространенную папку для ключей, которая находится в домашней папке пользователя: или ее укороченной версией :
После ввода утилита попросит задать пароль для ключа. Здесь довольно важный момент. Можно вовсе не задавать пароль и просто нажать Enter. В таком случае подключение к серверу будет осуществляться только по ключу и без всякого ввода пароля.
Но в примере мы будем «параноиками» и зададим пароль на использование ключа. Придумаем именно отдельный пароль, не тот, что от пользователя сервера. Можно выбрать вариант проще, который возможно будет без труда запомнить и ввести вручную, например . Его мы будем в будущем вводить каждый раз, как потребуется использовать ключ. И так, задаем…
ssh-keygen -f ~/.ssh/server-key Generating public/private rsa key pair. Enter passphrase (empty for no passphrase):
После этого нас попросят ввести пароль еще раз, повторяем его и если вы правильно ввели путь до папки для ключа, то должен получиться примерно такой вывод:
:~$ ssh-keygen -f ~/.ssh/server-key Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/uxumax/.ssh/server-key. Your public key has been saved in /home/uxumax/.ssh/server-key.pub. The key fingerprint is: SHA256:RX489Wcrb1rt/CRlEs08D8T5Wn//qydYZOpOlIs+cGE The key's randomart image is: +-------+ | . .o. | | o . oo= | | o + ooB| | E ..+ +B| | S .o+..+=| | . .o...+++| | o..oo .+=| | ...o .+*.| | .o. o+.O| +---------+ :~$
В выводе строка с текстом говорит в какой именно папке сохранился ключ.
Добавление ключа в список доверенных на сервере
В предыдущем этапе мы только создали ключ. Пока он не подходит ни к одному серверу. Чтобы использовать его для входа на наш сервер, необходимо добавить его в список доверенных ключей на этом сервере. Звучит сложно, но на самом деле все обходится лишь одной командой, которая содержит путь до ключа, логин и IP-адрес сервера в своих опциях и имеет такой вид: .
После ввода команды потребуется разово ввести пароль от сервера, после чего ключ будет авторизован на сервере.
:~$ ssh-copy-id -i ~/.ssh/server-key /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/uxumax/.ssh/server-key.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys 's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh ''" and check to make sure that only the key(s) you wanted were added. :~$
Подключение к серверу по ключу
Теперь можно подключаться к серверу, используя ключ. Для этого вводим команду, которая содержит логин, IP-адрес сервера и путь до ключа с опцией -i:
После ввода потребуется ввести пароль от ключа, который мы задавали в прошлом разделе. Если вы тогда просто нажали Enter, ничего не вводили, то вас сразу перекинет на север, без запроса пароля.
:~$ ssh -i ~/.ssh/server-key Enter passphrase for key '/home/uxumax/.ssh/server-key': Linux debian9 5.4.40-04224-g891a6cce2d44 #1 SMP PREEMPT Tue Jun 23 20:21:29 PDT 2020 x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. :~#
Server-Side Configuration
The option in the OpenSSH server configuration file must be enabled on the server to allow port forwarding. By default, forwarding is allowed. Possible values for this option are or to allow all TCP forwarding, to prevent all TCP forwarding, to allow local forwardings, and to allow remote forwardings.
Another option of interest is , which can be used to forward Unix domain sockets. It allows the same values as . The default is .
For example:
The configuration option as described above also affects remote port forwardings. Possible values were (only local connections from server host allowed; default), (anyone on the Internet can connect to remote forwarded ports), and (client can specify an IP address that can connect, anyone can if not specified).
Шаг 3: Предоставление административных привилегий
На втором шаге был создан пользователь remuserbak, но администрировать с ним сервер нельзя, ибо нет у него прав таких! Придется дать ему возможность становится рутом, как говорится с чего начали — тем и закончили.
Чтобы избежать необходимости выходить из системы обычного пользователя и снова входить в систему как учетная запись root, мы можем настроить так называемые привилегии суперпользователя или root для нашей обычной учетной записи. Это позволит нашему обычному пользователю запускать команды с административными привилегиями, помещая слово sudo перед каждой командой.
Чтобы добавить эти привилегии нашему новому пользователю, нам нужно добавить пользователя в группу sudo. По умолчанию пользователям, которые являются членами группы sudo, разрешено использовать команду sudo.
От имени пользователя root выполните команду usermod, чтобы добавить нового пользователя в группу sudo (замените имя пользователя своим новым пользователем:
root@vps:~# usermod -aG sudo remuserbak
Проверим командой id добавился ли пользователь в группу sudo
root@vps:~# id remuserbak uid=1000(remuserbak) gid=1000(remuserbak) groups=1000(remuserbak),27(sudo)
Теперь, когда вы войдя в систему как обычный пользователь remuserbak, можете ввести sudo перед командами, чтобы выполнять действия с привилегиями суперпользователя (root).
Использование ключа
Ввод пароля для подключения через SSH — раздражающая процедура. У меня почти никогда не получалось ввести его правильно с первого раза. Поэтому я начал искать информацию о том, как подключиться к серверу через SSH без пароля. Простое и безопасное решение — использование ключа. Почему это безопаснее? Потому что пароль можно подобрать. Чтобы исключить такую вероятность, многие пользователи выбирают авторизацию с помощью ключа.
Суть процедуры в формировании двух ключей: публичного и приватного. Первый копируется на сервер, а второй остается на компьютере пользователя и не передается по сети. В таком случае пароль при подключении не требуется. Когда вы подключаетесь к серверу через SSH, публичный ключ взаимодействует с приватным и открывает доступ к удаленному управлению.
Генерирование ключа и подключение на Windows
Для удобства используем программу PuTTy. Вместе с ней устанавливается утилита PuTTYgen — в ней можно сгенерировать публичный и приватный ключи.
- Запустите программу PuTTYgen.
- Нажмите на кнопку Gengerate.
- Водите курсором мышки по рабочему столу, чтобы сгенерировать случайные значения ключей.
- Нажмите на кнопку Save private key, чтобы сохранить на жестком диске приватный ключ. Место хранения может быть любым — его нужно указать в параметрах PuTTY. Сделаем это позже.
- Скопируйте публичный ключ в буфер обмена (Ctrl + C) и закройте генератор ключей.
Теперь нужно перенести публичный ключ на сервер. Запустите программу PuTTY и подключитесь к серверу с помощью пароля. Затем последовательно введите следующие команды:
mkdir ~/.ssh chmod 0700 ~/.ssh touch ~/.ssh/authorized_keys chmod 0644 ~/.ssh/authorized_keys
Эти команды создают на сервере папку и файл для хранения ключей, а также ограничивают к ним доступ — получить его может только владелец.
Следующий шаг — вставка публичного ключа из буфера обмена в файл authorized_keys. Для этого используется команда cat > .ssh/authorized_keys. После ввода команды щелкните по окну терминала правой кнопкой, чтобы вставить скопированный ранее публичный ключ. Для завершения ввода нажмите на сочетание клавиш Ctrl+D.
Вернитесь в настройки PuTTY. Перейдите в раздел Connection — SSH — Auth. Нажмите на кнопку Browse и укажите путь к приватному ключу, который вы ранее сохранили на жестком диске.
Теперь для подключения к серверу через SSH пароль не нужен — достаточно указать логин и IP-адрес сервера.
Генерирование ключа и подключение на Linux и macOS
Теперь посмотрим, как подключиться через SSH ключи на Linux и macOS.
- Запустите терминал на локальном компьютере.
- Выполните команду ssh-keygen, чтобы сгенерировать ключи.
- Нажмите на Enter, чтобы сохранить ключи.
Генератор предложит также задать кодовую фразу для ключа. Это дополнительная мера безопасности: если кто-то получит доступ к вашей локальной машине, то все равно не сможет подключиться к серверу через SSH. Минус один — вам тоже придется постоянно вводить ключевую фразу. Можно отказаться от этой меры защиты, просто нажав на клавишу Enter.
На этом процедура создания ключей завершена. Файлы d_rsa (приватный ключ) и id_rsa.pub (публичный ключ) хранятся в папке ~/.ssh/. Осталось скопировать открытую часть ключа на сервер.
- Вернитесь в терминал.
- Выполните команду ssh-copy-id root@185.104.114.90, где root — логин для подключения к серверу по SSH, а 185.104.114.90 — IP-адрес или хост сервера.
После выполнения этой команды публичный ключ будет скопирован на сервер. Теперь вы можете подключаться к удаленной машине с помощью логина и IP-адреса — например, ssh root@185.104.114.90. Ключи будут сопоставляться автоматически.
Отключение запроса пароля
Суть приватных ключей в том, что они хранятся на локальных компьютерах. Если вы попытаетесь подключиться к серверу с другой машины, на которой нет ключа, то снова увидите запрос на ввод пароля. Чтобы авторизоваться можно было только по ключу, запретите использование пароля.
- Подключитесь к удаленному серверу.
- Выполните команду sudo nano /etc/ssh/sshd_config. Файл sshd_config откроется во встроенном текстовом редакторе.
- Найдите строку PasswordAuthentication yes и измените ее на PasswordAuthentication no.
- Сохраните изменения и перезапустите службу SSH командой sudo service ssh restart.
Авторизация по паролю отключена. Теперь подключиться к серверу можно только с помощью пары ключей.
Пример. Скрипт. Копирование файла с удаленного компьютера.
Задача. На удаленном компьютере Anacron запускает один раз в сутки. Нужно создать скрипт который будет копировать удаленные backup-копии на локальный сервер бекапов. Скрипт запустим при помощи Использование планировщика cron в Linux.
$ ssh-keygen -t dsa $ ls id_dsa id_dsa.pub $ chmod 600 id_dsa
Поместим публичный ключ файл ~/.ssh/authorized_keys на удаленном компьютере.
$ ssh-copy-id -i id_dsa.pub USER@HOST
Скрипт:
#!/bin/bash # Copy PostgreSQL SFTP='/usr/bin/sftp' DIR='/home/backups_mbill_sql/' HOST='user@host:/home/backups_mbill_sql/' FILES="psql-`date +%d.%m.%Y`*.sql" $SFTP $HOST$FILES $DIR
Как использовать команду ssh
Следующие требования должны быть выполнены, чтобы иметь возможность войти на удаленный компьютер через SSH:
- На удаленном компьютере должен быть запущен SSH-сервер.
- Порт SSH должен быть открыт в брандмауэре удаленного компьютера.
- Вы должны знать имя пользователя и пароль удаленной учетной записи. Учетная запись должна иметь соответствующие права для удаленного входа в систему.
Основной синтаксис команды следующий:
Чтобы использовать команду , откройте свой терминал или PowerShell и введите а затем имя удаленного хоста:
При первом подключении к удаленному компьютеру через SSH вы увидите сообщение, подобное приведенному ниже.
У каждого хоста есть уникальный отпечаток, который хранится в файле .
Введите чтобы сохранить удаленный отпечаток пальца, и вам будет предложено ввести пароль.
После ввода пароля вы войдете в удаленную машину.
Если имя пользователя не указано, команда использует текущее имя для входа в систему.
Чтобы войти в систему как другой пользователь, укажите имя пользователя и хост в следующем формате:
Имя пользователя также можно указать с помощью опции :
По умолчанию, когда порт не указан, клиент SSH будет пытаться подключиться к удаленному серверу через порт 22. На некоторых серверах администраторы изменяют порт SSH по умолчанию, чтобы добавить дополнительный уровень безопасности к серверу, уменьшая риск автоматические атаки.
Чтобы подключиться к порту, от порта по умолчанию, используйте параметр чтобы указать порт:
Если у вас возникли проблемы с аутентификацией или подключением, используйте параметр чтобы указать печатать отладочные сообщения:
Чтобы повысить уровень детализации, используйте или .
Команда принимает ряд параметров.
Для получения полного списка всех параметров прочтите страницу руководства по , набрав в терминале .
Устанавливаем соединение с сервером по SSH
SSH – сетевой протокол, осуществляющий защищенное соединение с удаленными устройствами через консольное окно. Благодаря ему пользователь может безопасно обмениваться данными (фото, видео, текстовые файлы), работать в командной строке, удаленно запускать программы и многое другое.
Стоит отметить такую небольшую особенность программного обеспечения для соединения по SSH, как вставку кода в одно нажатие. Достаточно скопировать строку и кликнуть правой кнопкой мыши по области консоли. Такой метод может быть полезен, когда необходимо использовать большое количество программного кода.
Для подключения используется специальная программа – PuTTY. В нее нам потребуется ввести IP-адрес сервера и данные для авторизации. Все это нужно для того, чтобы подключиться к серверу, на котором есть Docker. Об этом мы еще поговорим, а пока давайте рассмотрим, как воспользоваться PuTTY:
Первым шагом загружаем утилиту с официальной страницы и устанавливаем ее к себе на компьютер.
Для подключения к серверу нам потребуется узнать IP-адрес. Если вы пользуетесь услугами хостинг-провайдера, то его можно найти в личном кабинете. Например, на Timeweb адрес VDS находится в разделе «Дашборд серверов».
Переходим в PuTTY и в разделе «Session» вставляем скопированный адрес. Также убеждаемся, что указан порт 22 и установлено соединение по SSH. В завершение кликаем по кнопке «Open».
В отобразившемся окне вводим логин и пароль для авторизации на сервере
Обратите внимание, что при вводе пароля набираемый текст скрыт, а также учитывается регистр букв.
При успешном соединении будет отображена информация об установленной операционной системе.
Доступ к серверу по защищенному протоколу SSH мы получили. Теперь нам осталось подключиться к докер-контейнеру, о чем поговорим далее.
Dynamic Port-Forwarding
As outlined above, static port-forwarding feature requires the client to set up the tunnel
source port and destination before making the connection.
This problem is addressed by secure shell’s dynamic port forwarding. With dynamic port forwarding,
the client sets up a listening port (as with normal port fowarding), but when a software connects
to the port, it can tell the client which host and port it wants to connect to. This is done
in the same way that client software can request connections from SOCKS proxies.
The ssh client will then forward the connection request to the secure shell server which makes
the connection to the destination host. This way, the ssh client could let an unencrypted ftp
software access ftp servers on the remote network through an encrypted data channel.
Навигация и управление файловой системой
Команды, необходимые для перемещения и ориентирования в файловой системе сервера. А еще для перемещения, копирования и удаления файлов. В общем, все, что вы делали бы в файловом менеджере, но через терминал.
cd — отправляет вас в любую папку на выбор. Синтаксис: cd путь до нужной директории. Если хочется на рабочий стол, то пишем: cd ~/Desktop. Вернуться в предыдущую папку? cd-. Перепрыгнуть в home? Просто вводим: cd без аргументов.
ls — отображает директории и файлы вокруг вас. То есть в той папке, где вы находитесь на текущий момент. Но чтобы ею пользоваться, необязательно переходить в конкретную директорию. Ее можно указать заранее. Вот так:
ls ~/Desktop/papka-testovaya
pwd — укажет путь до папки тем, кто заблудился. Если вы находитесь в папке Документы, то вывод pwd будет выглядеть вот так /home/имя пользователя/Documents. И так для любого каталога, в котором вы окажетесь.
file — покажет, что собой представляет файл. Фишка утилиты в том, что она демонстрирует разную информацию для разных типов файлов. К примеру, может дать подробные EXIF-данные для фотографий, включая разрешение и битность изображения.
mv — изначально использовалась для того, чтобы перемещать файлы из одного места в другое. mv ~/Desktop/timeweb.html ~/Documents переносит HTML-документ Timeweb с рабочего стола в документы. Но пользователи приноровились использовать mv для смены имени файлов. mv ~/Desktop/timeweb.html timeweb-2.html оставляет документ на месте, но меняет его название.
cp — создает копию выбранного файла в другом каталоге. cp ~/Documents/timeweb-file.txt /home/Webmaster/Desktop копирует документ с названием timeweb-file.txt на рабочий стол того же пользователя.
dd — управляет разделами. С ее помощью можно делать копии разделов: dd if=/dev/sda of=/dev/sdb. Можно перемещать разделы. Удалять их без возможности восстановления: dd if=/dev/zero of=/dev/sdX (в качестве раздела для «уничтожения» тут указана флешка). Копирование разделов подразумевает их запись на сторонние носители. Например, запись iso-образов на внешние накопители: dd if=~/Desktop/fedora-14.6.iso of=/dev/sdX bs=4M. if здесь — это путь к образу, а of — путь к смонтированному разделу (флешке).
rm — удаляет папки и все, что сможет в них найти. «Уничтожает» все субдиректории, документы, картинки, медиа. Вообще все, без возможности восстановления. Синтаксис:
rm путь до каталога, который надо вычистить вместе со всеми «внутренностями»
mkdir — создает новую папку. Синтаксис: mkdir путь_до каталога,_где_нужно_создать_новую_директорию название_для_этой директории. Если надо сделать на рабочем столе папку Timeweb, то пишем:
mkdir ~/Desktop/Timeweb
rmdir — удаляет директории. Не имеет права трогать их содержимое, поэтому отзовется ошибкой, если в удаляемой папке найдутся еще какие-то элементы. Перед использованием rmdir объект надо очистить.
wget — скачивает файл из переданной ссылки. Больше ничего не умеет. Простой текстовый менеджер загрузок. Работает так – если мы хотим загрузить скриншот панели управления Timeweb с официального сайта, то введем в терминал: wget https://timeweb.com/upload/resize_cache/iblock/b56/400_400_2/xscreen_3.jpg.pagespeed.ic.O4a5jdlo5A.jpg
zip — архивирует один или несколько файлов один файл в формате .zip. Синтаксис: zip название архива.zip путь до файла, который надо упаковать. К примеру:
zip noviy-archive.zip /home/me/soderzhimoe-archiva.txt
unzip — вытаскивает содержимое архива наружу. Работает по тому же принципу: сначала команда, потом путь до архива, который надо распаковать. Еще можно добавить опцию -d, чтобы удалить файлы из архива по завершении распаковки.
find — ищет файлы и папки по всей файловой системе. Умеет находить их по названию и по типу, но это зависит от выставленных опций. find -type d -name Timeweb будет искать только директории с именем Timeweb.
mount — монтирует образ или раздел диска. Синтаксис:
mount путь до раздела, что нужно смонтировать
unmount — «демонтирует» образ или указанный раздел. Синтаксис:
unmount путь до раздела, что нужно отмонтировать
Аутентификация открытого ключа
Протокол SSH поддерживает различные механизмы аутентификации.
Механизм аутентификации на основе открытого ключа позволяет вам войти на удаленный сервер, не вводя пароль .
Этот метод работает путем создания пары криптографических ключей, которые используются для аутентификации. Закрытый ключ хранится на клиентском устройстве, а открытый ключ передается на каждый удаленный сервер, на который вы хотите войти. Удаленный сервер должен быть настроен на прием аутентификации по ключу.
Если у вас еще нет пары ключей SSH на вашем локальном компьютере, вы можете создать ее, набрав:
Вам будет предложено ввести безопасную парольную фразу. Если вы хотите использовать кодовую фразу, решать вам.
Когда у вас есть пара ключей, скопируйте открытый ключ на удаленный сервер:
Введите пароль удаленного пользователя, и открытый ключ будет добавлен в файл удаленного пользователя.
После загрузки ключа вы можете войти на удаленный сервер без запроса пароля.
Установив аутентификацию на основе ключей, вы можете упростить процесс входа в систему и повысить общую безопасность сервера.
Что такое SSH?
Поскольку эта статья рассчитана именно на новичков, то перед тем, как перейти дальше давайте подробнее разберемся что из себя представляет SSH. Исторически так сложилось что на большинстве серверов используется операционная система Linux, во многом этому посодействовала ее бесплатность. Графический интерфейс на серверах Linux не используется для экономии ресурсов, поэтому единственным способом администрирования сервера остается командная строка.
Но это не является недостатком, потому что в командной строке Linux можно сделать больше чем графическом интерфейсе. Протокол SSH позволяет вам выполнять команды в удаленной системе так, как будто вы это делаете в своей системе. Вам доступен буфер обмена, вы вводите команды и можете использовать их вывод. Недоступны разве что файлы из вашей файловой системы. Например, когда вы подключитесь к серверу по SSH из Ubuntu, то все будет выглядеть так, как будто вы открыли терминал в своей системе.