Server linux ubuntu: Get Ubuntu Server | Download
Содержание
Установка Linux Ubuntu Server 20.04. Подробная инструкция для начинающих | Info-Comp.ru
Приветствую Вас на сайте Info-Comp.ru! В данном материале представлено подробное описание процесса установки операционной системы Linux Ubuntu Server 20.04.
Ubuntu Server 20.04 – серверная версия операционной системы Linux Ubuntu с долгосрочной поддержкой (LTS).
Содержание
- Пошаговая установка Linux Ubuntu Server 20.04
- Шаг 1 – Скачивание установочного образа
- Шаг 2 – Создание установочного носителя
- Шаг 3 – Загрузка с установочного носителя
- Шаг 4 – Выбор языка
- Шаг 5 – Обновление программы установки
- Шаг 6 – Выбор раскладки клавиатуры
- Шаг 7 – Настройка сети
- Шаг 8 – Настройка прокси-сервера
- Шаг 9 – Настройка сервера обновлений
- Шаг 10 – Разметка диска
- Шаг 11 – Настройка учетной записи
- Шаг 12 – Настройка OpenSSH сервера
- Шаг 13 – Выбор компонентов сервера
- Шаг 14 – Начало установки Ubuntu Server
- Шаг 15 – Завершение процесса установки
Начать пользоваться Linux Ubuntu Server можно несколькими способами, в данной статье будет рассмотрен способ, который подразумевает самостоятельную установку дистрибутива на сервер.
Сейчас мы рассмотрим все шаги, которые необходимо выполнить, чтобы установить Linux Ubuntu Server 20.04, установка будет производиться на сервер с поддержкой UEFI.
Заметка! Процесс установки обычной версии Ubuntu подробно рассмотрен в статье – Установка Linux Ubuntu 20.04.
Шаг 1 – Скачивание установочного образа
Первое, что нам нужно сделать – это скачать установочный образ Ubuntu Server. Для этого переходим в раздел «Download» на официальном сайте Ubuntu.
Страница загрузки – https://ubuntu.com/download/server
Затем, так как мы хотим самостоятельно установить Ubuntu, нам нужно выбрать 3-й вариант (Option 3), который позволяет скачать ISO файл, и нажать кнопку «Download Ubuntu Server 20.04.1 LTS».
Вот прямые ссылки на скачивание Linux Ubuntu Server 20.04.1:
- Ubuntu Server 20.04.1 (ISO)
- Ubuntu Server 20.04.1 (torrent)
В итоге у Вас должен загрузиться ISO файл ubuntu-20. 04.1-live-server-amd64.iso размером около 900 мегабайт.
Шаг 2 – Создание установочного носителя
Если Вы будете устанавливать Ubuntu Server на виртуальную машину, то Вам достаточно примонтировать скаченный ISO файл в гипервизоре, однако если Вы будете устанавливать Ubuntu Server на физический сервер, то Вам необходимо будет создать загрузочный установочный носитель, например, USB флешку, с которой Вы сможете загрузиться и выполнить установку Ubuntu Server.
Создать загрузочную флешку в Windows можно с помощью программы Rufus или Ventoy:
- Инструкция создания загрузочной флешки программой Rufus
- Инструкция создания загрузочной флешки программой Ventoy
Шаг 3 – Загрузка с установочного носителя
Затем, после того как загрузочный установочный носитель Вы подготовите, необходимо загрузить сервер с этого носителя, т.е. загрузиться с него.
Чтобы это сделать, необходимо:
- Выключить сервер, будь то физический или в гипервизоре;
- Подключить загрузочное устройство к серверу, например, вставить флешку в порт, в случае с физическим сервером, или, как уже было отмечено, примонтировать ISO файл в гипервизоре;
- Запустить сервер или виртуальную машину и при включении вызвать загрузочное меню, например, клавишей F2, или F8, или F11 или той, которая используется у Вас;
- В загрузочном меню выбрать нужное устройство для загрузки.
В итоге Вы загрузитесь с установочного носителя, запустится программа установки.
Шаг 4 – Выбор языка
Сначала выбираем язык, который будет использоваться в процессе установки данной программой, по умолчанию выбран английский язык, однако программа установки поддерживает много языков, в том числе и русский.
Все действия в процессе установки выполняются с помощью клавиатуры, в данном случае используем клавиши «Стрелочки», а для выбора и перехода к следующему шагу, клавишу Enter (Ввод).
Шаг 5 – Обновление программы установки
Далее, в случае, если сервер уже подключен к сети, программа установки проверит обновления и, если они есть, предложит нам обновиться.
Если сети на данном этапе нет, или нет обновлений, то данное окно не появится.
Для обновления программы установки выбираем пункт «Update to ne Installer», если не хотим обновлять программу установки, то пункт «Продолжить без обновления».
Стоит отметить, что после обновления программы установки процесс сразу перейдет к следующему шагу, однако, язык программы установки, который мы выбирали на предыдущем шаге, сбросится на настройки по умолчанию, поэтому, если мы хотим использовать в процессе установки язык, отличный от того, который предлагается по умолчанию, нам придётся вернуться назад, т.е. нажать кнопку «Назад», и снова выбрать нужный нам язык.
Заметка! Установка Linux Lubuntu на компьютер с UEFI.
Шаг 6 – Выбор раскладки клавиатуры
В случае необходимости мы можем изменить раскладку клавиатуры.
Нажимаем «Готово».
Шаг 7 – Настройка сети
Затем будут следовать настройки сетевого соединения.
Сетевые интерфейсы, которые программа установки обнаружит, по умолчанию будут настроены на DHCP, поэтому если у Вас сервер будет получать сетевые настройки от DHCP сервера, то здесь Вы сразу можете нажать «Готово».
Однако, если Вам нужно задать определенные сетевые настройки (статические адреса), то Вы также стрелочками выбираете нужный интерфейс и нажимаете Enter.
В случае настройки протокола IPv4, выбирайте пункт «Edit IPv4» и нажимайте ввод.
Далее выбираете параметр «IPv4 Method», в частности для указания своих настроек выбираем пункт «Вручную».
После этого откроется окно для ввода сетевых настроек.
Указываем: подсеть, IP адрес, шлюз, сервер имен. После ввода всех настроек нажимаем «Сохранить».
Заметка! Как сделать GIF с экрана компьютера.
Шаг 8 – Настройка прокси-сервера
Если для соединения с интернетом Вы используете прокси-сервер, то после настройки сетевого интерфейса Вы можете настроить соответствующие параметры.
Нажимаем «Готово».
Шаг 9 – Настройка сервера обновлений
Если Вы хотите использовать альтернативный сервер обновлений, то здесь Вы можете указать его адрес.
Нажимаем «Готово».
Шаг 10 – Разметка диска
На данном шаге необходимо выполнить разметку диска, программа установки по умолчанию предлагает использовать автоматически сформированную, так сказать стандартную разметку, она предполагает создание необходимого загрузочного раздела, в случае с UEFI, EFI раздела, создание корневого раздела и настройку LVM, и всего этого вполне достаточно для сервера с базовой настройкой (какие-то дополнительные разделы, например, раздел home, в большинстве случаев не требуются).
Если у Вас нет оснований использовать другую не стандартную разметку, то оставляйте все по умолчанию и нажимайте «Готово».
Если Вы хотите выполнить разметку вручную, отметьте пункт «Custom storage layout» и также нажимайте «Готово».
Заметка! Установка Linux Mint Cinnamon на компьютер с UEFI.
Далее, программа установки отобразит автоматически сформированную разметку.
Нажимаем «Готово» для продолжения.
Программа установки запросит подтверждение действий, нажимаем «Продолжить».
Шаг 11 – Настройка учетной записи
Теперь нам нужно настроить учетную запись, под которой мы будем работать в Ubuntu Server. Заполняем форму, т.е. вводим свое имя, имя компьютера, имя пользователя и пароль с подтверждением.
Нажимаем «Готово».
Заметка! Бесплатная система мониторинга IT инфраструктуры – обзор, установка, настройка.
Шаг 12 – Настройка OpenSSH сервера
Если мы хотим подключаться к Ubuntu Server удаленно по сети с помощью OpenSSH сервера, то на данном шаге отмечаем пункт «Install OpenSSH Server», в результате OpenSSH сервер будет установлен в процессе установки операционной системы Ubuntu Server.
Нажимаем «Готово».
Шаг 13 – Выбор компонентов сервера
На данном шаге мы можем отметить компоненты, которые мы будем использовать на сервере, в результате отмеченные компоненты будут установлены в процессе установки операционной системы Ubuntu Server.
Нажимаем «Готово».
Шаг 14 – Начало установки Ubuntu Server
После чего начнется процесс установки, он продлится буквально несколько минут. Мы при этом можем наблюдать все действия, которые выполняет программа установки. Для более детального анализа действий Вы можете нажать на кнопку «View full log».
Заметка! ТОП 5 популярных CMS для блога.
Шаг 15 – Завершение процесса установки
Когда появится сообщение о том, что установка завершена, нажимаем на кнопку «Перезагрузить».
После перезагрузки можно пользоваться новой системой. Для удаленного подключения к серверу можно использовать утилиту PuTTY.
Операционную систему Linux Ubuntu Server 20.04 мы установили, на сегодня это все, надеюсь, материал был Вам полезен, пока!
Обзор и описание Ubuntu Server
Стартовая статья для знакомства с популярной современной серверной системой, которой посвящен данный сайт. Я сделаю обзор системы Ubuntu Server для начинающих, сравню ее с другими серверными системами linux, напишу свой отзыв и поделюсь с вами. Это позволит вам получить начальное представление, если раньше не были знакомы с этой OS.
Содержание
Обзор Ubuntu Server LTS
Ubuntu Server LTS, как можно понять из названия, это серверная операционная система на базе ядра Linux. Причем Ubuntu более известна, как отличный дистрибутив для знакомства с linux и установки его на рабочий компьютер или ноутбук. Некоторое время после первого релиза ubuntu в далеком 2004-м году, она так и позиционировалась и была известна в основном как десктопная система.
Основной упор в Ubuntu делался на удобство и простоту использования, чтобы каждый желающий без проблем мог познакомиться с операционной системой на базе Linux и начать ее использовать в повседневной жизни. Кодовая база Убунту базируется на Debian и не может существовать без нее. Изначально она планировалась как временное ответвление Debian, которое затем превратилось в отдельную операционную систему.
Ubuntu Server какой-то особенной простотой и удобством, по сравнению с другими серверными дистрибутивами не обладает, так что особенности desktop версии, где упор идет на удобное графическое окружение, не применимы к серверному варианту. Серверная система обладает другими отличительными признаками, которые я перечислю ниже отдельно в соответствующем разделе.
На сегодняшний момент Ubuntu Server не просто ответвление десктопной ветки системы, а полноценный серверный дистрибутив уровня Enterprise. И подтверждают это следующие признаки:
- На базе ubuntu server строится и поддерживается работа облачной инфраструктуры на основе технологий openstack.
- Компания Canonical, разработчик Убунту, развивает и поддерживает совместимость с современной системой оркестрации контейнеров Kubernetes, которую можно строить на базе обсуждаемого серверного дистрибутива. Так же уделяется пристальное внимание работы контейнеров docker, новые версии которой в первую очередь оптимизируются и тестируются под ubuntu server.
- Идет активное внедрение ubuntu в интернет вещей, для чего и была объявлена увеличенная поддержка в 10 лет для серверных версий. Это актуально прежде всего для интернета вещей.
- Компания Canonical обеспечивает за оплату круглосуточную техническую поддержку своей системы и продуктов, основанных на ней.
Что значит LTS
Приставка к названию LTS означает Long Term Support — расширенное время поддержки. Это значит, что к LTS релизу будут выходить обновления безопасности значительно дольше, чем к обычным версиям. В общем случае релизы Ubuntu LTS поддерживаются 5 лет после выхода, однако начиная с версии Ubuntu 18.04 LTS было объявлено о Extended Security Maintenance, что подразумевает поддержку в течении 10-ти лет, но как я понял, уже только за деньги.
Новые версии Убунту публикуются каждые 6 месяцев, обновления к этим промежуточным релизам выходят 9 месяцев. Так что надо понимать, если вы устанавливаете систему для долгосрочной эксплуатации без обновления релиза, то выбирать стоит LTS версии. Если же вам нужны свежие версии системы и пакетов и вы готовы их регулярно обновлять, то ставьте новую версию релиза ubuntu на момент установки. Новые LTS версии выходят каждые 2 года.
Подробно о схеме релизов ubuntu можно почитать в wiki или на официальном сайте.
История версий
История релизов (releases) Ubuntu начинается с версии 4.10 в октябре 2004 года. С тех пор каждые 2 года регулярно выходила очередная новая LTS версия системы. Схема публикации релизов с тех пор не изменилась. Интересна нумерация в названиях — она соотносится с годом и месяцем релиза. Вот несколько примеров:
- ubuntu 18.04 lts — релиз 26 апреля 2018, это 4-й месяц 18-го года.
- ubuntu 16.04 lts — релиз 21 апреля 2016, этой 4-й месяц 16-го года.
- и т.д.
Подобная тенденция прослеживается во всех версиях. Мне видится удобным такая нумерация. Первый раз вижу, что бы разработчики по такой схеме нумеровали свои релизы.
Список актуальных версий Ubuntu на сегодняшний день выглядит вот так.
Особенности Ubuntu Server
Перейдем теперь к особенностям Ubuntu Server. Одной из особенностей является минималистичный консольный установщик системы на сервер, который позволяет быстро и удобно выполнить установку нужного функционала. Сразу же из стандартного установщика можно выбрать финальный функционал сервера в виде готовой роли.
Таким образом, вы можете очень быстро получить, к примеру, готовый хост для разворачивания контейнеров docker. Вся установка через стандартный инсталлятор. Никаких отдельных репозиториев и установщиков. Это удобно.
После установки системы у вас не будет по-умолчанию настроена учетная запись root, как это бывает, к примеру, в RHEL или Centos. Подключиться к серверу по ssh можно только под обычной учетной записью и потом с помощью sudo получить права root. Не сказать, что это какая-то уникальная фишка. То же самое будет и в Debian, но для тех, кто не знаком с этими дистрибутивами, может быть сюрпризом, как это было для меня, когда я после Freebsd знакомился с дистрибутивами на базе debian и deb пакетов.
Еще одной особенностью Ubuntu Server будет то, что она вам периодически в консоли, при логине по ssh, будет показывать различные новости, со временем может и рекламу 🙂 Придется придумывать блокировщик рекламы для консоли linux.
По-умолчанию Ubuntu Server подключает во время установки swap в виде отдельного файла. Мелочь, но считаю, это удобным подходом. Сам делаю так же во всех дистрибутивах, с которыми приходится работать. Так можно гибко управлять свапом — отключать его, изменять размер и т.д.
Так же стоит отметить, что в Убунту одно из самых свежих ядер среди серверных операционных систем. В лидерах обычно Debian и Centos. Они оба использую более старые ядра Linux. Так что за всеми новинками стоит обращаться к серверу Ubuntu.
Из неприятных особенностей Убунты отмечаю то, что она по-умолчанию собирает телеметрию, начиная с процесса установки. Если говорить простым языком — речь идет про пользовательские данные. Потом это можно изменить и отключить, но то, что было отправлено во время установки уже не вернешь. Часть того, что будет отправлено:
- Версия и сборка системы
- Информация о сетевых настройках
- Информация об оборудовании
- Разметка диска и т.д.
Со слов разработчиков, это все для улучшения продукта. Но мы уже привыкли к жизни при капитализме и прекрасно понимаем, что данные о пользователях это товар и при случае он непременно будет продан. Вопрос лишь в цене.
Сравнение с другими os linux
Подробное сравнение Ubuntu с другими популярными дистрибутивами Linux я планирую сделать в отдельной статье. В обзоре Ubuntu Server упомяну только самое основное, что пришло в голову.
Как я уже говорил ранее, Ubuntu от остальных отличают свежие версии ядра и софта. Это дистрибутив, где раньше остальных появляются нововведения. Это одновременно и плюс и минус, так как обновления зачастую несут в себе целую пачку новых проблем. Так что если вам важна стабильность, часто обновлять нет смысла, только в случае необходимости.
Мне кажется, Ubuntu самый популярный дистрибутив, он у всех на слуху. Удобно использовать на рабочих машинах и серверах одну и ту же известную систему. По моим наблюдениям, разработчики в первую очередь предпочитаю ставить именно ubuntu на свои компьютеры. Это зачастую обуславливает их выбор и требование установить и на сервер так же убунту.
Если сравнивать Ubuntu с Centos, то последняя система однозначно выигрывает по такому понятию, как поддержка. У нее с давних времен поддержка каждого релиза продолжается 10 лет, причем не за деньги, а бесплатно и для всех. Ubuntu в этом плане проигрывает со своими 5-ю годами бесплатной поддержки LTS версий. Но зато у Ubuntu есть плюс — она поддерживает обновление между релизами. Вы можете версию 16 lts обновить до 18 lts, а в Centos нет возможности обновления между релизами, только полная миграция на новую версию.
Лично мне нравится установщик, который появился в Ubuntu 18 lts. Он легок и понятен. Можно быстро выполнить установку. Но не нравится настройка сети через netplan. Вообще, ubuntu славится постоянными нововведениями и кардинальными изменениями. Зачастую это раздражает. Например, я не понимаю, в чем был смысл замены стандартной и привычной настройки сети на netplan. Лапша в yaml конфигах выглядит ужасно. Я понимаю, что это веяние моды, yaml разметка сейчас везде — kubernetes, openstack, ansible, и т.д. Но конкретно в настройках сети я не вижу в этом смысла. Базовые настройки системы надо менять как можно реже, только когда это объективно стало необходимо.
Отзывы на Ubuntu Server LTS
В своей практике я сталкивался с различными отзывами об Ubuntu Server. Раньше очень популярным было мнение, что Ubuntu это попсовая система со всякими свистоперделками и багами. Она предназначена для десктопа, какой из нее может получиться сервер. Зачастую это мнение было сформировано не на пустом месте. Я сейчас не приведу конкретики, подзабыл уже, но помню, что встречался с досадными багами еще в процессе работы установщика, причем тянулись они из релиза в релиз. Помню как-то свое разочарование, когда ставил 16-ю версию и встретил там баг, который видел еще в 14-й. Печально такое наблюдать.
В целом, сильно негативных отзывов, особенно последнее время, я не встречаю. Ubuntu Server точно не хуже всех остальных серверных дистрибутивов, а в чем-то даже и лучше, например, в поддержке контейнерных технологий. Одно то, что Canonical сотрудничает с такими продуктами как Openstack, Ceph, MAAS, Docker, Kubernetes для максимальной поддержки этих продуктов, говорит о том, что настрой и подход вполне серьезный.
Из своих наблюдений оставлю отзыв на работу Docker в Ubuntu. По моему опыту, именно в Убунте с Докером меньше всего проблем. Он работает стабильнее и предсказуемее в Убунту, нежели в любой другой системе. В Centos до релиза 7.4 вообще невозможно было нормально использовать Docker, не было полноценной поддержки некоторых механизмов.
Подтверждением признания Ubuntu Server и положительных отзывов на нее является присутствие этой системы в обязательном порядке у любого хостера. Если вы арендуете железо или виртуальную машину, у вас всегда будет возможность установить туда Ubuntu. Я много работаю с хостерами. Встречал ситуации, когда в списке доступных дистрибутивов не было Debian, но была Ubuntu. Она сильно потеснила Дебиан последнее время.
Где скачать
Скачать дистрибутив Ubuntu можно с русскоязычного сайта или официального международного. Для загрузки лично я предпочитаю зеркало Яндекса — https://mirror.yandex.ru/ubuntu-releases/. Там всегда в наличии все редакции всех поддерживаемых релизов. Можно загрузить как server, так и desktop версии.
Если вам нужны старые версии Убунты, которые уже не поддерживаются, то можно воспользоваться разделом old-releases официального сайта. Там можно скачать все когда-либо выпущенные релизы Ubuntu. В обычных репозиториях их скорее всего не будет.
Отличия ubuntu от ubuntu server
Давайте теперь разберем, чем отличается ubuntu server от desktop. Из-за разных версий частенько возникает путаница, так как не у всех есть понимание, чем же различаются эти две версии одной и то же системы.
Итак, первое и самое главное, что вы должны понимать. По сути desktop и server версии это одна и та же система. У обоих одни и те же базовые репозитории. Разница лишь в установщике и наборе предустановленных пакетов. Мы можете как desktop версию превратить в сервер, так и наоборот. Для этого нужно воспользоваться мета-пакетами ubuntu-desktop или ubuntu-server.
Вот основной список отличий обычной версии ubuntu от ubuntu server:
- В инсталляторе Ubuntu Server нет графического интерфейса, только консольный.
- Отличается набор пакетов, предлагаемых для установки. В серверной версии по-умолчанию установлены только основные системные утилиты. В обычной ubuntu предлагают установить графическое окружение рабочего стола.
- Дистрибутив для desktop в 2.5 раза больше весит, чем для server. Причина в большем наборе включенных в состав дистрибутива пакетов. Для десктопной версии включено много приложений общего пользования.
Вот в общем-то и все. Основное отличие ubuntu от ubuntu server в дефолтном наборе пакетов и графическом окружении.
Графическая оболочка
В своем обзоре Ubuntu Server разберу еще один популярный вопрос, возникающий в первую очередь у начинающих системных администраторов, которые пытаются завязать знакомство с системами Linux. Им тяжело сразу работать в консоли и они часто спрашивают, а можно ли на сервер поставить графическую оболочку, чтобы было привычнее знакомиться с системой и управлять ей.
Как я уже сказал в предыдущем разделе, принципиальных отличий серверной версии от обычной нет. Вы без проблем можете установить любое графическое окружение на сервер, если вам так будет удобнее. Более того, я сам так делал иногда, если заказчик просил настроить удобный рабочий стол и средства для удаленного подключения к нему. Например, vnc.
При настройке графического окружения важно понимать, что она будет потреблять какие-то ресурсы — скормные (xfce) и не очень (gnome). Если вы арендуете небольшую виртуальную машину для веб сервера с 1 CPU и 1 Gb памяти, не рассчитывайте, что туда нормально встанет оболочка. Лучше учиться сразу управлять по ssh. Для графики нужна оперативная память. Для комфортной работы графической оболочки на ubuntu server, надо под нее выделить хотя бы 512-1024 Мб оперативной памяти. А для тяжеловесных и того больше.
Заключение
На этом обзор Ubuntu Server заканчиваю. Надеюсь, у меня получилось раскрыть тему и познакомить вас с этой операционной системой. Объяснить ее отличия от других, рассказать об особенностях и поделиться своим отзывом и личным мнением по теме. Если вас она заинтересовала, то читайте мой материал на тему установки ubuntu server.
Ubuntu популярная и многообещающая система, которая активно разрабатывается и внедряется. Если вы администратор linux или планируете им стать, то вам волей неволей придется изучить и посмотреть на Ubuntu Server. Даже если она вам не понравится, знать ее придется хотя бы для общего развития.
Сервер OpenSSH | Убунту
Введение
OpenSSH — это мощный набор инструментов для удаленного управления и передачи данных между сетевыми компьютерами. Вы также узнаете о некоторых параметрах конфигурации, возможных с серверным приложением OpenSSH, и о том, как изменить их в вашей системе Ubuntu.
OpenSSH — это свободно доступная версия семейства инструментов протокола Secure Shell (SSH) для удаленного управления или передачи файлов между компьютерами. Традиционные инструменты, используемые для выполнения этих функций, такие как telnet или rcp, небезопасны и при использовании передают пароль пользователя в открытом виде. OpenSSH предоставляет демон сервера и клиентские инструменты для обеспечения безопасного, зашифрованного удаленного управления и операций передачи файлов, эффективно заменяя устаревшие инструменты.
Серверный компонент OpenSSH, sshd, постоянно прослушивает клиентские подключения от любых клиентских инструментов. Когда возникает запрос на подключение, sshd устанавливает правильное подключение в зависимости от типа подключения клиентского инструмента. Например, если удаленный компьютер подключается к клиентскому приложению ssh, сервер OpenSSH устанавливает сеанс удаленного управления после аутентификации. Если удаленный пользователь подключается к серверу OpenSSH с помощью scp, демон сервера OpenSSH инициирует безопасное копирование файлов между сервером и клиентом после аутентификации. OpenSSH может использовать множество методов аутентификации, включая простой пароль, открытый ключ и билеты Kerberos.
Установка
Установка клиентских и серверных приложений OpenSSH проста. Чтобы установить клиентские приложения OpenSSH в вашей системе Ubuntu, используйте эту команду в терминале:
sudo apt установить openssh-клиент
Чтобы установить серверное приложение OpenSSH и связанные файлы поддержки, используйте эту команду в командной строке терминала:
sudo apt установить openssh-сервер
Конфигурация
Вы можете настроить поведение по умолчанию серверного приложения OpenSSH, sshd, отредактировав файл /etc/ssh/sshd_config
. Для получения информации о директивах конфигурации, используемых в этом файле, вы можете просмотреть соответствующую страницу руководства с помощью следующей команды, введенной в командной строке терминала:
человек sshd_config
В файле конфигурации sshd есть много директив, управляющих такими вещами, как настройки связи и режимы аутентификации. Ниже приведены примеры директив конфигурации, которые можно изменить, отредактировав файл /etc/ssh/sshd_config .
Наконечник
Перед редактированием файла конфигурации вы должны сделать копию исходного файла и защитить ее от записи, чтобы исходные настройки были у вас в качестве эталона и могли использоваться повторно при необходимости.
Скопируйте файл
/etc/ssh/sshd_config
и защитите его от записи с помощью следующих команд, выдаваемых в терминале:sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original sudo chmod a-w /etc/ssh/sshd_config.original
Кроме того, поскольку потеря ssh-сервера может означать потерю доступа к серверу, проверьте конфигурацию после ее изменения и перед перезапуском сервера:
судо sshd -t -f /etc/ssh/sshd_config
Ниже приведен пример директивы конфигурации, которую вы можете изменить:
- Чтобы ваш сервер OpenSSH отображал содержимое файла
/etc/issue. net
в качестве баннера перед входом в систему, просто добавьте или измените эту строку в/etc/ssh/sshd_config
файл:
Баннер /etc/issue.net
После внесения изменений в файл /etc/ssh/sshd_config
сохраните файл и перезапустите серверное приложение sshd, чтобы изменения вступили в силу, используя следующую команду в командной строке терминала:
sudo systemctl перезапустить sshd.service
Предупреждение
Доступно множество других директив конфигурации для sshd, позволяющих изменить поведение серверного приложения в соответствии с вашими потребностями. Однако имейте в виду, что если ваш единственный метод доступа к серверу — ssh, и вы допустили ошибку при настройке sshd через
/etc/ssh/sshd_config
, вы можете обнаружить, что ваш доступ к серверу заблокирован после его перезапуска. Кроме того, если указана неправильная директива конфигурации, сервер sshd может отказаться запускаться, поэтому будьте особенно осторожны при редактировании этого файла на удаленном сервере.
SSH-ключи
SSH разрешает аутентификацию между двумя хостами без необходимости ввода пароля. Аутентификация по ключу SSH использует закрытый ключ и открытый ключ .
Чтобы сгенерировать ключи, введите в терминале:
ssh-keygen -t rsa
Ключи будут сгенерированы с использованием алгоритма RSA . На момент написания этой статьи сгенерированные ключи будут иметь длину 3072 бита. Вы можете изменить количество битов, используя опцию -b
. Например, чтобы сгенерировать ключи с 4096 битами, вы можете сделать:
ssh-keygen -t rsa -b 4096
Во время процесса вам будет предложено ввести пароль. Просто нажмите Введите , когда будет предложено создать ключ.
По умолчанию 9Открытый ключ 0051 сохраняется в файле ~/.ssh/id_rsa.pub
, а ~/.ssh/id_rsa
— это закрытый ключ . Теперь скопируйте файл id_rsa.pub
на удаленный хост и добавьте его к ~/. ssh/authorized_keys
, введя:
ssh-copy-id имя_пользователя@remotehost
Наконец, еще раз проверьте права доступа к файлу author_keys
, только аутентифицированный пользователь должен иметь права на чтение и запись. Если разрешения неверны, измените их:
chmod 600 .ssh/authorized_keys
Теперь вы сможете подключаться к хосту по SSH без запроса пароля.
Импорт ключей с открытых серверов ключей
В наши дни многие пользователи уже зарегистрировали ssh-ключи в таких сервисах, как панель запуска или github. Их можно легко импортировать с помощью:
ssh-import-id <имя пользователя на удаленной службе>
Префикс lp:
подразумевается и означает выборку с панели запуска, альтернатива gh:
вместо этого сделает выборку инструмента из github.
Двухфакторная аутентификация с U2F/FIDO
В OpenSSH 8.2 добавлена поддержка устройств аппаратной аутентификации U2F/FIDO. Эти устройства используются для обеспечения дополнительного уровня безопасности поверх существующей аутентификации на основе ключей, поскольку для завершения аутентификации необходимо наличие аппаратного токена.
Очень прост в использовании и настройке. Единственный дополнительный шаг — создать новую пару ключей, которую можно использовать с аппаратным устройством. Для этого можно использовать два типа ключей: ecdsa-sk
и ed25519-sk
. У первого более широкая аппаратная поддержка, а второму может потребоваться более новое устройство.
После создания пары ключей ее можно использовать так же, как вы обычно используете любой другой тип ключа в openssh. Единственное требование состоит в том, что для использования закрытого ключа устройство U2F должно присутствовать на хосте.
Например, подключите устройство U2F и сгенерируйте пару ключей для использования с ним:
$ ssh-keygen -t ecdsa-ск Создание пары открытый/закрытый ключ ecdsa-sk. Возможно, вам придется коснуться вашего аутентификатора, чтобы авторизовать генерацию ключа. <-- сенсорное устройство Введите файл для сохранения ключа (/home/ubuntu/.ssh/id_ecdsa_sk): Введите кодовую фразу (пусто, если нет парольной фразы): Введите тот же пароль еще раз: Ваша идентификация сохранена в /home/ubuntu/.ssh/id_ecdsa_sk Ваш открытый ключ сохранен в /home/ubuntu/.ssh/id_ecdsa_sk.pub. Ключевой отпечаток пальца: SHA256: V9PQ1MqaU8FODXdHqDiH9Mxb8XK3o5aVYDQLVl9IFRo ubuntu@focal
Теперь просто перенесите публичную часть на сервер по адресу ~/.ssh/authorized_keys
и все готово:
$ ssh -i .ssh/id_ecdsa_sk [email protected] Подтвердите присутствие пользователя для ключа ECDSA-SK SHA256:V9PQ1MqaU8FODXdHqDiH9Mxb8XK3o5aVYDQLVl9IFRo <-- touch device Добро пожаловать в Ubuntu Focal Fossa (GNU/Linux 5.4.0-21-универсальный x86_64) (...) [email protected]:~$
Резидентные ключи FIDO2
Закрытые ключи FIDO2 состоят из двух частей: части «дескриптора ключа», хранящейся в файле закрытого ключа на диске, и ключа для каждого устройства, уникального для каждого токена FIDO2, который нельзя экспортировать из аппаратного обеспечения токена. Они объединяются аппаратным обеспечением во время аутентификации для получения реального ключа, который используется для подписи запросов аутентификации.
Для токенов, которые необходимо перемещать между компьютерами, может быть обременительно сначала перемещать файл закрытого ключа. Чтобы избежать этого, токены, реализующие более новый стандарт FIDO2, поддерживают резидентных ключей , где можно получить часть дескриптора ключа с аппаратного обеспечения.
Использование резидентных ключей увеличивает вероятность того, что злоумышленник сможет использовать украденное токен-устройство. По этой причине токены обычно требуют проверки подлинности с помощью PIN-кода, прежде чем разрешить загрузку ключей, и пользователи должны установить PIN-код на своих токенах, прежде чем создавать какие-либо резидентные ключи. Это делается с помощью программного обеспечения для управления аппаратными токенами.
OpenSSH позволяет генерировать резидентные ключи с использованием флага ssh-keygen -O резидентного
во время генерации ключа:
$ ssh-keygen -t ecdsa-sk -O резидентный -O приложение=ssh:mykeyname Создание пары открытый/закрытый ключ ecdsa-sk. Возможно, вам придется коснуться вашего аутентификатора, чтобы авторизовать генерацию ключа. Введите PIN-код для аутентификатора: Введите файл для сохранения ключа (/home/ubuntu/.ssh/id_ecdsa_sk): mytoken Введите кодовую фразу (пусто, если нет парольной фразы): Введите тот же пароль еще раз: Ваша идентификация сохранена в mytoken (...)
Как обычно, будет создана пара открытого/закрытого ключа, но часть закрытого ключа (дескриптор ключа) можно будет извлечь из маркера позже. Это делается запуском:
$ ssh-keygen -K Введите PIN-код для аутентификатора: Возможно, вам придется коснуться вашего аутентификатора, чтобы авторизовать загрузку ключа. Введите кодовую фразу (пусто, если нет парольной фразы): Введите тот же пароль еще раз: Ключ ECDSA-SK ssh:mytoken сохранен в id_ecdsa_sk_rk_mytoken
Будет использоваться часть после ssh:
из параметра приложения из предыдущего как часть имен файлов ключей:
$ l id_ecdsa_sk_rk_mytoken* -rw------- 1 ubuntu ubuntu 598 из 4 18:49 id_ecdsa_sk_rk_mytoken -rw-r--r-- 1 ubuntu ubuntu 228 из 4 18:49 id_ecdsa_sk_rk_mytoken. pub
Если вы установили парольную фразу при извлечении ключей из аппаратного токена, а затем используете эти ключи, вам будет предложено ввести парольную фразу и PIN-код аппаратного ключа, и вам также придется прикоснуться к токену:
$ ssh -i ./id_ecdsa_sk_rk_mytoken [email protected] Введите кодовую фразу для ключа './id_ecdsa_sk_rk_mytoken': Подтвердите присутствие пользователя для ключа ECDSA-SK SHA256:t+l26IgTXeURY6e36wtrq7wVYJtDVZrO+iuobs1CvVQ Присутствие пользователя подтверждено (...)
Также можно загрузить и добавить резидентные ключи непосредственно в ssh-agent, запустив
$ ssh-добавить -K
В этом случае файл не записывается, и открытый ключ можно распечатать, запустив ssh-add -L
.
ПРИМЕЧАНИЕ
Если вы использовали параметр-O verify-required
при создании ключей или если этот параметр установлен на сервере SSH через/etc/ssh/sshd_config
'sPubkeyAuthOptions verify-required
, тогда использование агента, который в настоящее время находится в Ubuntu 22. 04 LTS, не будет работать.
Двухфакторная аутентификация с TOTP/HOTP
Для лучшей безопасности двухфакторной аутентификации (2FA) мы рекомендуем использовать устройства аппаратной аутентификации, поддерживающие U2F/FIDO. Подробности смотрите в предыдущем разделе. Однако, если это невозможно или нецелесообразно реализовать в вашем случае, двухфакторная аутентификация на основе TOTP/HOTP является улучшением по сравнению с отсутствием двух факторов. Распространены приложения для смартфонов, поддерживающие этот тип 2FA, например Google Authenticator.
Фон
Представленная здесь конфигурация делает аутентификацию с открытым ключом первым фактором, код TOTP/HOTP — вторым фактором и делает аутентификацию по паролю недоступной. Помимо обычных шагов настройки, необходимых для аутентификации с открытым ключом, вся конфигурация и установка выполняются на сервере. Никаких изменений на стороне клиента не требуется; подсказка 2FA появляется вместо подсказки пароля.
Поддерживаются два метода: HOTP и TOTP. Как правило, TOTP предпочтительнее, если устройство 2FA поддерживает его.
HOTP основан на последовательности, предсказуемой только теми, у кого есть секрет. Пользователь должен выполнить действие, чтобы клиент сгенерировал следующий код в последовательности, и этот ответ был отправлен на сервер. Сервер также генерирует следующий код, и если он совпадает с кодом, предоставленным пользователем, то пользователь подтверждает серверу, что он делится секретом. Недостатком этого подхода является то, что если пользователь генерирует код без сопровождения сервера, например, в случае опечатки, то генераторы последовательности могут «рассинхронизироваться». Серверы компенсируют это, допуская пробел в последовательности и считая несколько последующих кодов также действительными; если используется этот механизм, то сервер «пропускает вперед» для синхронизации с резервной копией. Но чтобы оставаться в безопасности, это может зайти только до тех пор, пока сервер не откажет. Когда HOTP выходит из синхронизации таким образом, его необходимо сбросить с помощью какого-либо внештатного метода, такого как аутентификация с использованием второго резервного ключа, чтобы сбросить секрет для первого.
TOTP позволяет избежать этого недостатка HOTP, используя текущую дату и время, не зависящие от часового пояса, для определения соответствующей позиции в последовательности. Однако это приводит к дополнительным требованиям и другому режиму отказа. Оба устройства должны иметь возможность определять время, что нецелесообразно, например, для токена USB 2FA без батареи. И сервер, и клиент должны согласовать правильное время. Если их часы сдвинуты, то они будут расходиться во мнениях относительно своего текущего положения в последовательности. Серверы компенсируют перекос часов, позволяя нескольким кодам с обеих сторон также быть действительными. Но, как и HOTP, они могут зайти так далеко, пока сервер не откажет. Одним из преимуществ TOTP по сравнению с HOTP является то, что исправление этого условия включает обеспечение правильности часов на обоих концах; внеполосная аутентификация для сброса секретов неудачливых пользователей не требуется. Например, при использовании современного приложения для смартфона требование поддерживать правильность часов обычно не является проблемой, поскольку по умолчанию это обычно выполняется автоматически на обоих концах.
Примечание
Не рекомендуется настраивать U2F/FIDO одновременно с TOTP/HOTP. Эта комбинация не тестировалась, и при использовании представленной здесь конфигурации TOTP/HOTP станет обязательным для всех, независимо от того, используют ли они также U2F/FIDO.
Установить программное обеспечение
В командной строке терминала установите модуль google-authenticator
PAM:
sudo подходящее обновление sudo apt установить libpam-google-authenticator
Примечание
Пакет
libpam-google-authenticator
находится в компоненте архива юниверса Ubuntu, который получает только максимальную поддержку сообщества.
Настройка пользователей
Поскольку аутентификация с открытым ключом с TOTP/HOTP 2FA будет настроена как обязательная для пользователей, каждый пользователь, желающий продолжить использование ssh, должен сначала настроить аутентификацию с открытым ключом, а затем настроить свои ключи 2FA, запустив инструмент настройки пользователя. Если это не будет сделано в первую очередь, пользователи не смогут сделать это позже через ssh, поскольку в этот момент у них не будет аутентификации с открытым ключом и/или 2FA, настроенной для аутентификации.
Настройка аутентификации пользователей на основе ключей
Чтобы настроить аутентификацию на основе ключей, см. «Ключи SSH» выше. Как только это будет сделано, его можно протестировать независимо от последующей конфигурации 2FA. На этом этапе аутентификация пользователя должна работать только с ключами, требуя ввода парольной фразы закрытого ключа, только если она была настроена. При правильной настройке у пользователя не должен запрашиваться пароль.
Настройка секретов TOTP/HOTP 2FA пользователей
Каждому пользователю необходимо запустить инструмент настройки для настройки двухфакторной аутентификации. Это задаст несколько вопросов, сгенерирует ключ и отобразит QR-код, чтобы пользователь мог импортировать секрет в свое приложение для смартфона, такое как приложение Google Authenticator на Android. Инструмент создает файл ~/.google-authenticator
, который содержит общий секрет, аварийные пароли и конфигурацию для каждого пользователя.
Как пользователь, которому требуется настроить двухфакторную аутентификацию, из командной строки терминала выполните следующую команду:
Google-аутентификатор
Следуйте инструкциям, отсканировав QR-код в приложение 2FA, как указано.
Важно предусмотреть возможность потери или повреждения устройства 2FA. Будет ли это заблокировать пользователя из его учетной записи? В целях смягчения последствий каждому пользователю стоит рассмотреть возможность выполнения одного или нескольких из следующих действий:
- Используйте средство резервного копирования или облачной синхронизации устройства 2FA, если оно имеется.
- Запишите резервные коды, напечатанные программой настройки.
- Сфотографируйте QR-код.
- (только TOTP) Сканируйте QR-код на нескольких устройствах 2FA. Это работает только для TOTP, поскольку несколько устройств HOTP 2FA не смогут синхронизироваться.
- Убедитесь, что у пользователя есть другой путь аутентификации, чтобы при необходимости можно было повторно запустить инструмент настройки.
Конечно, любой из этих шагов по резервному копированию также сводит на нет все преимущества двухфакторной аутентификации, если кто-то еще получит доступ к резервной копии, поэтому шаги, предпринимаемые для защиты любой резервной копии, следует тщательно обдумывать.
Настройка ssh-сервера
После настройки всех пользователей настройте сам sshd, отредактировав /etc/ssh/sshd_config
. В зависимости от вашей установки некоторые из этих параметров могут быть уже настроены, но не обязательно со значениями, необходимыми для этой конфигурации. Проверьте и скорректируйте существующие вхождения этих директив конфигурации или добавьте новые при необходимости:
KbdInteractiveAuthentication да ПарольАутентификация нет Методы аутентификации с открытым ключом, интерактивной клавиатурой
Примечание
В Ubuntu 20. 04 «Focal Fossa» и более ранних версиях используйте
ChallengeResponseAuthentication yes
вместоKbdInteractiveAUthentication yes
.
Перезапустите службу ssh
, чтобы принять изменения конфигурации:
sudo systemctl попробуйте перезагрузить или перезапустить ssh
Отредактируйте /etc/pam.d/sshd
и замените строку:
@include общая аутентификация
с:
требуется авторизация pam_google_authenticator.so
Изменения в конфигурации PAM вступают в силу немедленно, и отдельная команда перезагрузки не требуется.
Войти с помощью 2FA
Теперь, когда вы входите в систему с использованием ssh, в дополнение к обычной аутентификации с открытым ключом вам будет предложено ввести код TOTP или HOTP:
$ ssh jammy.сервер Введите кодовую фразу для ключа id_rsa: ([email protected]) Код подтверждения: Добро пожаловать в Ubuntu Jammy Jellyfish. .. (...) [email protected]:~$
Особые случаи
В Ubuntu следующие параметры по умолчанию указаны в /etc/ssh/sshd_config
, но если вы их переопределили, обратите внимание, что они необходимы для правильной работы этой конфигурации и должны быть восстановлены следующим образом:
UsePAM да PubkeyAuthentication да
Не забудьте запустить sudo systemctl try-reload-or-restart ssh
, чтобы любые изменения, внесенные в конфигурацию sshd, вступили в силу.
Ссылки
Ubuntu Wiki SSH-страница.
Веб-сайт OpenSSH
Примечания к выпуску OpenSSH 8.2
Расширенная вики-страница OpenSSH
Документация Yubikey по использованию OpenSSH FIDO/FIDO2
Википедия на TOTP
Википедия на HOTP
Облако и сервер | Убунту
Все, что вам нужно знать о проектировании, создании и управлении частным облаком Openstack, кластером Kubernetes или масштабируемым развертыванием Ubuntu Server.
Узнайте больше об облаке и сервере ›
Фильтр:
Все типы контентаСтатьиКейсыНовостиВидеоВебинарыБелые книги
Облако и сервер
Облачное хранилище на периферии с MicroCeph
по
Филип Уильямс
14 апреля 2023 г.
Статья
Облако и сервер
Phoenix Systems устанавливает новый стандарт безопасных облачных сервисов вместе с Canonical и IBM
по
Фелипе Ванни
12 апреля 2023 г.
Партнеры
Облако и сервер
Четыре проблемы конвейера данных машинного обучения
по
Хьюго Хуан
9 апреля 2023 г.
Статья
Облако и сервер
Canonical на конференции HPE APAC, основанной на результатах, 2023 г.
по
Фелипе Ванни
5 апреля 2023 г.
Партнеры
Облако и сервер
IBM LinuxONE Rockhopper 4 обеспечивает устойчивость и эффективность серверной среды бизнес-класса, полностью поддерживаемую Ubuntu 22.04.
по
Фрэнк Хаймс
4 апреля 2023 г.
Сервер
Облако и сервер
Время подготовиться к прекращению стандартной поддержки Ubuntu 18.04 LTS 31 мая 2023 г. — варианты для пользователей AWS.
по
Канонический
30 марта 2023 г.
Статья
Облако и сервер
Познакомьтесь с командой Canonical Ceph на Cephalocon 2023
по
Филип Уильямс
22 марта 2023 г.
Статья
Облако и сервер
Что такое облачная репатриация?
по
Титус Курек
17 марта 2023 г.