- Как включить SSH в Ubuntu 20.04
- Включение SSH в Ubuntu
- Подключение к SSH-серверу
- Подключение к SSH за NAT
- Отключение SSH в Ubuntu
- Выводы
- Полное руководство по настройке SSH в Ubuntu
- Основы SSH
- Настройка SSH-сервера в Ubuntu
- Шаг 1. Установите необходимые пакеты
- Шаг 2: Проверка статуса сервера
- Шаг 3. Разрешение SSH через брандмауэр
- Подключение к удаленной системе с вашего локального компьютера
- Закрытие SSH-соединения
- Остановка и отключение SSH в Ubuntu
- Другие клиенты SSH
- Заключение
- Настройка SSH в Ubuntu
- Настраиваем SSH в Ubuntu
- Создание пары ключей RSA
- Копирование открытого ключа на сервер
- Аутентификация на сервере через созданный ключ
- Отключение аутентификации по паролю
- Настройка стандартного firewall
Как включить SSH в Ubuntu 20.04
Secure Shell (SSH) — это сетевой протокол, используемый для безопасного соединения между клиентом и сервером. Каждое взаимодействие между сервером и клиентом зашифровано.
В этом руководстве объясняется, как включить SSH на компьютере с Ubuntu.
Включение SSH позволит вам удаленно подключаться к вашей системе и выполнять административные задачи. Вы также сможете безопасно передавать файлы через scp и sftp .
Включение SSH в Ubuntu
По умолчанию при первой установке Ubuntu удаленный доступ через SSH не разрешен. Включение SSH в Ubuntu довольно просто.
Выполните следующие шаги от имени пользователя root или пользователя с правами sudo для установки и включения SSH в вашей системе Ubuntu:
Откройте терминал с помощью Ctrl+Alt+T и установите пакет openssh-server :
При появлении запроса введите свой пароль и нажмите Enter, чтобы продолжить установку.
После завершения установки служба SSH запустится автоматически. Вы можете убедиться, что SSH работает, набрав:
Вывод должен сообщить вам, что служба запущена и разрешена для запуска при загрузке системы:
Нажмите q чтобы вернуться в командную строку.
Ubuntu поставляется с инструментом настройки брандмауэра под названием UFW. Если в вашей системе включен брандмауэр , обязательно откройте порт SSH:
Это оно! Теперь вы можете подключиться к своей системе Ubuntu через SSH с любого удаленного компьютера. В системах Linux и macOS по умолчанию установлены клиенты SSH. Для подключения с компьютера Windows используйте SSH-клиент, например PuTTY .
Подключение к SSH-серверу
Чтобы подключиться к вашей машине Ubuntu по локальной сети, вызовите команду ssh, за которой следует имя пользователя и IP-адрес в следующем формате:
Если вы не знаете свой IP-адрес, вы можете легко найти его с помощью команды ip :
Как видно из выходных данных, IP-адрес системы — 10.0.2.15 .
Найдя IP-адрес, войдите на удаленный компьютер, выполнив следующую команду ssh :
При первом подключении вы увидите такое сообщение:
Введите yes и вам будет предложено ввести пароль.
После ввода пароля вы увидите сообщение Ubuntu по умолчанию:
Теперь вы вошли в систему на своей машине с Ubuntu.
Подключение к SSH за NAT
Чтобы подключиться к домашней машине с Ubuntu через Интернет, вам необходимо знать свой общедоступный IP-адрес и настроить маршрутизатор на прием данных через порт 22 и их отправку в систему Ubuntu, где работает SSH.
Чтобы определить общедоступный IP-адрес компьютера, к которому вы пытаетесь подключиться по SSH, просто перейдите по следующему URL-адресу: https://api.ipify.org .
Когда дело доходит до настройки переадресации портов , каждый маршрутизатор имеет свой способ настройки переадресации портов. Чтобы узнать, как настроить переадресацию портов, обратитесь к документации маршрутизатора. Короче говоря, вам нужно ввести номер порта, на который будут выполняться запросы (порт SSH по умолчанию — 22), и частный IP-адрес, который вы нашли ранее (с помощью команды ip a ) машины, на которой работает SSH.
После того, как вы нашли IP-адрес и настроили маршрутизатор, вы можете войти в систему, набрав:
Если вы открываете свою машину для доступа в Интернет, рекомендуется принять некоторые меры безопасности. Самый простой — настроить маршрутизатор на прием трафика SSH на нестандартный порт и пересылку его на порт 22 на машине, на которой запущена служба SSH.
Вы также можете настроить аутентификацию на основе ключа SSH и подключиться к компьютеру с Ubuntu без ввода пароля.
Отключение SSH в Ubuntu
Чтобы отключить SSH-сервер в вашей системе Ubuntu, просто остановите службу SSH, запустив:
Позже, чтобы снова включить его, введите:
Выводы
Мы показали вам, как установить и включить SSH на вашем Ubuntu 20.04. Теперь вы можете войти на свой компьютер и выполнять повседневные задачи системного администратора через командную строку.
Если вы управляете несколькими системами, вы можете упростить рабочий процесс, указав все свои подключения в файле конфигурации SSH . Изменение порта SSH по умолчанию добавляет дополнительный уровень безопасности вашей системе, снижая риск автоматических атак.
Для получения дополнительной информации о том, как настроить SSH-сервер, прочтите руководство по SSH / OpenSSH / настройке Ubuntu и официальную страницу руководства по SSH .
Если у вас есть вопросы, оставьте комментарий ниже.
Источник
Полное руководство по настройке SSH в Ubuntu
В наши дни SSH стал методом по умолчанию для доступа к удаленному серверу Linux.
SSH расшифровывается как Secure Shell и представляет собой мощный, эффективный и популярный сетевой протокол, используемый для удаленной связи между двумя компьютерами. И давайте не будем забывать о защищенной части его имени; SSH шифрует весь трафик для предотвращения таких атак, как угон и подслушивание, предлагая различные методы аутентификации и множество вариантов конфигурации.
В этом руководстве для начинающих вы узнаете:
- Основная концепция SSH
- Настройка SSH-сервера (в системе, к которой вы хотите получить удаленный доступ)
- Подключение к удаленному серверу через SSH с клиентской машины (вашего персонального компьютера)
Основы SSH
Прежде чем вы увидите какой-либо процесс настройки, будет лучше пройти через базовую концепцию SSH.
Протокол SSH основан на архитектуре сервер-клиент. «Сервер» позволяет «клиенту» подключаться по каналу связи. Этот канал зашифрован, и обмен регулируется использованием открытых и закрытых ключей SSH.
С сайта https://www.ssh.com/academy/ssh
OpenSSH — один из самых популярных инструментов с открытым исходным кодом, который обеспечивает функциональность SSH в Linux, BSD и Windows.
Для успешной настройки SSH вам необходимо:
- Установите компоненты сервера SSH на машине, которая действует как сервер. Это обеспечивается пакетом openssh-server.
- Установите клиентский компонент SSH на машину, с которой вы хотите подключиться к удаленному серверу. Это обеспечивается пакетом openssh-client, и с ним предустановлено большинство дистрибутивов Linux и BSD.
Важно различать сервер и клиент. Возможно, вы не захотите, чтобы ваш персональный компьютер работал как SSH-сервер, если у вас нет веских причин, по которым вы хотите, чтобы другие подключались к вашей системе через SSH.
Как правило, у вас есть выделенная система, работающая в качестве сервера. Например, Raspberry Pi с сервером Ubuntu. Вы включаете SSH на Raspberry Pi, чтобы вы могли контролировать и управлять устройством со своего основного персонального компьютера, используя SSH в терминале.
Обладая этой информацией, давайте посмотрим, как настроить SSH-сервер в Ubuntu.
Настройка SSH-сервера в Ubuntu
Настроить SSH не сложно, для этого нужно всего несколько шагов:
- Пользователь с привилегиями sudo на серверной машине
- Подключение к Интернету для загрузки необходимых пакетов.
Опять же, установка SSH-сервера должна выполняться в системе, которую вы хотите использовать как сервер и к которой вы хотите подключиться удаленно через SSH.
Шаг 1. Установите необходимые пакеты
Начнем с открытия окна терминала и ввода необходимых команд.
Не забудьте обновить свою систему Ubuntu перед установкой новых пакетов или программного обеспечения, чтобы убедиться, что вы используете последние версии.
Пакет, необходимый для запуска SSH-сервера, предоставляется компонентом openssh-server из OpenSSH:
Шаг 2: Проверка статуса сервера
После завершения загрузки и установки пакета служба SSH должна быть уже запущена, но для уверенности мы проверим ее с помощью:
Вы также можете использовать команды systemd:
Вы должны увидеть что-то подобное с выделенным словом Active. Нажмите q, чтобы вернуться в командную строку.
Если в вашем случае сервис не работает, вам нужно будет активировать его следующим образом:
Шаг 3. Разрешение SSH через брандмауэр
Ubuntu поставляется с утилитой межсетевого экрана под названием UFW (UncomplicatedFirewall), которая представляет собой интерфейс для iptables, который, в свою очередь, управляет сетевыми правилами. Если брандмауэр активен, он может помешать подключению к вашему SSH-серверу.
Чтобы настроить UFW так, чтобы он разрешал требуемый доступ, вам необходимо выполнить следующую команду:
Статус UFW можно проверить, запустив sudo ufw status.
На данном этапе наш SSH-сервер запущен и просто ожидает соединения от клиента.
Подключение к удаленной системе с вашего локального компьютера
В вашей локальной системе Linux уже должен быть установлен клиент SSH. Если нет, вы всегда можете установить его, используя следующую команду в Ubuntu:
Чтобы подключиться к вашей системе Ubuntu, вам необходимо знать IP-адрес компьютера и использовать команду ssh, например:
Измените username на своего фактического пользователя в системе и address на IP-адрес вашего сервера Ubuntu.
Если вы не знаете IP-адрес своего компьютера, вы можете ввести ip a в терминале сервера и проверить вывод. У вас должно получиться что-то вроде этого:
Использование «ip a» для поиска IP-адреса
Как видно здесь, мой IP-адрес 192.168.2.54. Давайте попробуем подключиться, используя формат имя username@adress.
При первом подключении к серверу SSH он запросит разрешение на добавление хоста. Введите да и нажмите Enter, чтобы продолжить.
Первое подключение к серверу
Сразу же SSH сообщает вам, что хост был добавлен навсегда, а затем запрашивает пароль, назначенный для имени пользователя. Введите пароль и еще раз нажмите Enter.
Хост добавлен, теперь введите пароль
И вуаля! Вы войдете в свою систему Ubuntu удаленно!
Теперь вы можете работать в терминале удаленной системы в обычном режиме.
Закрытие SSH-соединения
Чтобы закрыть соединение, вам просто нужно ввести exit, и оно сразу же закроет его, не запрашивая подтверждения.
Закрытие соединения
Остановка и отключение SSH в Ubuntu
Если вы хотите остановить службу SSH, вам понадобится эта команда:
Это остановит службу, пока вы ее не перезапустите или пока система не будет перезагружена. Чтобы перезапустить его, введите:
Теперь, если вы хотите отключить его запуск во время загрузки системы, используйте это:
Это не остановит работу службы во время текущего сеанса, а только загрузку во время запуска. Если вы хотите, чтобы он снова запускался во время загрузки системы, введите:
Другие клиенты SSH
Инструмент ssh включен в большинство систем * nix, от Linux до macOS, но это не единственные существующие варианты, вот пара клиентов, которые можно использовать из других операционных систем:
- PuTTY — это бесплатный SSH-клиент для Windows с открытым исходным кодом. Он полон функций и очень прост в использовании. Если вы подключаетесь к своей машине Ubuntu со станции Windows, PuTTY — отличный вариант.
- JuiceSSH — потрясающий инструмент для пользователей Android. Если вы в пути и вам нужен мобильный клиент для подключения к вашей системе Ubuntu, я настоятельно рекомендую попробовать JuiceSSH. Он существует уже почти 10 лет, и его можно использовать бесплатно.
- И, наконец, Termius доступен для Linux, Windows, macOS, iOS и Android. У него есть бесплатная версия, а также несколько дополнительных опций. Если у вас много серверов и вы работаете с командами, использующими общие соединения, Termius — хороший вариант для вас.
Заключение
С помощью этих инструкций вы можете настроить SSH в качестве серверной службы в системе Ubuntu, чтобы иметь возможность удаленно и безопасно подключаться к вашему компьютеру для работы с командной строкой и выполнения любых необходимых задач.
Источник
Настройка SSH в Ubuntu
Технология SSH (Secure Shell) позволяет проводить безопасное удаленное управление компьютером через защищенное соединение. SSH производит шифровку всех передаваемых файлов, включая пароли, а также передает совершенно любой сетевой протокол. Для корректной работы инструмента его необходимо не только установить, но еще и настроить. Именно о произведении главной конфигурации мы и хотели бы поговорить в рамках данной статьи, взяв за пример последнюю версию операционной системы Ubuntu, на которой будет располагаться сервер.
Настраиваем SSH в Ubuntu
Если вы еще не выполнили инсталляцию на серверный и клиентский ПК, следует это сделать первоначально, благо осуществляется вся процедура достаточно просто и не займет много времени. С детальным руководством по этой теме знакомьтесь в другой нашей статье по следующей ссылке. В ней также показана процедура редактирования файла конфигурации и тестирование работы SSH, поэтому сегодня мы остановимся немного на других задачах.
Создание пары ключей RSA
В только что установленном SSH еще нет заданных ключей для осуществления подключения от сервера к клиенту и наоборот. Все эти параметры необходимо задать вручную сразу же после добавления всех компонентов протокола. Пара ключей работает с помощью алгоритма RSA (сокращение от фамилий разработчиков Rivest, Shamir и Adleman). Благодаря этой криптосистеме через специальные алгоритмы производится шифрование ключей. Для создания пары открытых ключей вам нужно лишь ввести соответствующие команды в консоль и следовать появившимся инструкциям.
- Перейдите к работе с «Терминалом» любым удобным методом, например, открыв его через меню или комбинацию клавиш Ctrl + Alt + T.
Введите команду ssh-keygen , а затем нажмите на клавишу Enter.
Открытый ключ может быть защищен кодовой фразой. Если хотите использовать эту опцию, в появившейся строке напишите пароль. Вводимые символы при этом отображаться не будут. В новой строке потребуется его повторить.
Далее вы увидите уведомление о том, что ключ был сохранен, а также сможете ознакомиться с его случайным графическим изображением.
Теперь имеется созданная пара ключей — секретный и открытый, которые будут использоваться для дальнейшего подключения между компьютерами. Нужно лишь поместить ключ на сервер, чтобы аутентификация SSH проходила успешно.
Копирование открытого ключа на сервер
Существует три метода копирования ключей. Каждый из них будет наиболее оптимален в различных ситуациях, когда, например, один из способов не работает или не подходит для определенного пользователя. Мы предлагаем рассмотреть все три варианта, начав с самого простого и действенного.
Вариант 1: Команда ssh-copy-id
Команда ssh-copy-id встроена в операционную систему, поэтому для ее выполнения не нужно устанавливать никаких дополнительных компонентов. Соблюдайте простой синтаксис, чтобы скопировать ключ. В «Терминале» необходимо ввести ssh-copy-id username@remote_host , где username@remote_host — имя удаленного компьютера.
При первом подключении вы получите уведомление текстом:
The authenticity of host ‘203.0.113.1 (203.0.113.1)’ can’t be established.
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes
Надо указать вариант yes для продолжения соединения. После этого утилита самостоятельно займется поиском ключа в виде файла id_rsa.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
username@203.0.113.1’s password:
Укажите пароль от удаленного хоста, чтобы утилита смогла войти в него. Инструмент будет копировать данные из файла публичного ключа
/.ssh/id_rsa.pub, а после этого на экране появится сообщение:
Number of key(s) added: 1
Now try logging into the machine, with: «ssh ‘username@203.0.113.1′»
and check to make sure that only the key(s) you wanted were added.
Появление такого текста означает, что ключ был успешно загружен на удаленный компьютер, и теперь не возникнет никаких проблем с соединением.
Вариант 2: Копирование открытого ключа через SSH
Если у вас не получается воспользоваться упомянутой выше утилитой, но имеется пароль для входа на удаленный сервер SSH, можете загрузить свой пользовательский ключ вручную, тем самым обеспечив дальнейшую стабильную аутентификацию при соединении. Используется для этого команда cat, которая прочитает данные из файла, а потом они будут отправлены на сервер. В консоли потребуется ввести строку
/.ssh/id_rsa.pub | ssh username@remote_host «mkdir -p
/.ssh/authorized_keys && chmod -R go=
При появлении сообщения
The authenticity of host ‘203.0.113.1 (203.0.113.1)’ can’t be established.
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes
продолжите подключение и введите пароль для входа на сервер. После этого открытый ключ будет автоматически скопирован в конец файла конфигурации authorized_keys.
Вариант 3: Ручное копирование открытого ключа
В случае отсутствия доступа к удаленному компьютеру через SSH-сервер, все описанные выше действия выполняются вручную. Для этого сначала узнается информация о ключе на серверном ПК через команду cat
На экране будет отображена примерно такая строка: ssh-rsa + ключ в виде набора символов== demo@test . После этого перейдите к работе на удаленное устройство, где создайте новую директорию через mkdir -p
/.ssh . В ней дополнительно создается файл authorized_keys . Далее вставьте туда ключ, который вы узнали ранее через echo + строка публичного ключа >>
/.ssh/authorized_keys . После этого можно пробовать проводить аутентификацию с сервером без использования паролей.
Аутентификация на сервере через созданный ключ
В предыдущем разделе вы узнали о трех методах копирования ключа удаленного компьютера на сервер. Такие действия позволят подключиться без использования пароля. Выполняется эта процедура через командную строку путем ввода shh ssh username@remote_host , где username@remote_host — имя пользователя и хост нужного компьютера. При первом подключении вы будете уведомлены о незнакомом соединении и можете продолжить, выбрав вариант yes.
Подключение произойдет автоматически, если во время создания пары ключей не была задана ключевая фраза (passphrase). В противном случае сначала придется ввести ее, чтобы продолжить работу с SSH.
Отключение аутентификации по паролю
Успешной настройка копирования ключей считается в той ситуации, когда удается войти на сервер без использования пароля. Однако возможность аутентификации таким образом позволяет злоумышленникам использовать инструменты для подбора пароля и взламывать защищенное соединение. Обезопасить себя от таких случаев позволит полноценное отключение входа по паролю в конфигурационном файле SSH. Для этого потребуется:
- В «Терминале» откройте конфигурационный файл через редактор с помощью команды sudo gedit /etc/ssh/sshd_config .
Найдите строку «PasswordAuthentication» и уберите знак # в начале, чтобы раскомментировать параметр.
Измените значение на no и сохраните текущую конфигурацию.
Закройте редактор и перезапустите сервер sudo systemctl restart ssh .
Аутентификация по паролю отключится, и войти на сервер можно будет только с использованием специально созданных для этого ключей с алгоритмом RSA.
Настройка стандартного firewall
В Убунту сетевой защитой по умолчанию выступает фаервол Uncomplicated Firewall (UFW). Он позволяет разрешать соединения для избранных сервисов. Каждое приложение создает свой профиль в этом инструменте, а UFW управляет ими, разрешая или запрещая подключения. Настройка профиля SSH путем добавления его в список осуществляется так:
- Откройте список профилей firewall через команду sudo ufw app list .
Введите пароль от учетной записи для отображения информации.
Вы увидите лист доступных приложений, среди них должен находиться и OpenSSH.
Теперь следует разрешить соединения через SSH. Для этого добавим его в список разрешенных профилей с помощью sudo ufw allow OpenSSH .
Включите firewall, обновив правила, sudo ufw enable .
Для убеждения в том, что соединения разрешены, следует прописать sudo ufw status , после чего вы увидите состояние сети.
На этом наши инструкции по конфигурации SSH в Ubuntu завершены. Дальнейшие настройки конфигурационного файла и других параметров осуществляются лично каждым пользователем под его запросы. Ознакомиться с действием всех составляющих SSH вы можете в официальной документации протокола.
Помимо этой статьи, на сайте еще 12315 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник