Как создать виртуальный сервер linux

Настройка VDS. Подробное руководство по развертыванию своего сервера.

Данное руководство предназначено для развертывания и настройки VDS сервера на примере Ubuntu 20.04 с установкой веб-сервера nginx, php 7 и сервера базы данных MySQL.

Автор материала

Артем . Веб-разработчик, создатель проекта Лектория, эксперт MODX Revolution, директор веб-студии OpenColour. Youtube-канал OpenModx.

Для чего?

Вы уже получили навыки в создании web приложений и хотите разместить созданный сайт в интернете, но как это сделать? Все просто! Есть хостинг провайдеры, которые, как раз и предоставляют услуги, по размещению сайтов в сети. Заходя на страничку к провайдеру, вы видите, что можно взять в аренду виртуальный хостинг или VDS.

В чем разница? Давайте рассмотрим эти продукты и избавимся от боязни их использовать. Начнем по порядку от общего к частному.

Хостинг — это услуга по предоставлению ресурсов для размещения информации на сервере, постоянно имеющем доступ к интернету. Следовательно виртуальный хостинг — вид хостинга, при котором множество веб-сайтов расположено на одном веб-сервере. Это самый экономичный вид хостинга, подходящий для небольших проектов. Исходя из определения разные тарифы на виртуальные хостинг могут отличаться по следующим основным параметрам:

  1. размер дискового пространства;
  2. количество месячного трафика;
  3. количество сайтов, которые можно разместить в рамках хостинга как одной услуги;
  4. количество баз данных и количество места под базы данных;
  5. количество почтовых ящиков и FTP-аккаунтов;
  6. ресурсы CPU;
  7. количество оперативной памяти.

Примеры тарифов (хостинг timeweb)

Используя виртуальный хостинг, соответственно Вы попадаете в определенные ограничения по использованию ресурсов, при превышении которых выставляются предупреждения об ограничении работы и предлагается повысить тариф или начать работу по оптимизации сайта. Но как компенсация этого, в Вашем распоряжении есть административная панель, с помощью которой вы можете реализовать все функции по управлению сайтами.

Альтернативой виртуального хостинга является использование VDS\VPS (Virtual Dedicated\Private Server) — это, виртуальный выделенный или приватный сервер, который предоставляется хостинг провайдером в аренду заказчику.Чтобы не вводить в заблуждение, сразу отмечу, что разницы между аббревиатурами VPS и VDS нет никакой. Дело в том, что два этих понятия появились практически одновременно и параллельно развивались.

Что же такое VDS? Говоря простым языком, поставщик услуг на своем оборудовании, с помощью средств виртуализации разворачивает несколько виртуальных (программных) серверов. С точки зрения функциональности такой сервер ничем не отличается от физического, на него также устанавливаются операционная система и программное обеспечение, он также расположен в сети и управляется, как и остальные ПК, средствами удаленного администрирования. При этом данный сервер находится на удаленной площадке провайдера, которая защищена от сбоев и оптимизирована под работу 24/7/365. В свою очередь хостинг провайдер берет на себя все обязательства по обслуживанию и сопровождению оборудования и системы виртуализации. Но соответственно цену на эту услугу несколько выше чем на виртуальный хостинг.

Читайте также:  Рабочее окружение linux mint cinnamon

Примеры тарифов VDS

К достоинствам этой услуги можно отнести, что Вы больше не будете ограничены количеством месячного трафика, размещаемых сайтов, базами данных и прочим. В Ваших силах теперь установить на свой VDS все необходимое программное обеспечение без каких-либо запретов и ограничений.

Но и минусы тоже есть. Настройка и администрирование теперь является Вашей заботой.

Что бы исправить возникшую несправедливость и обучить настройке и азам администрирования VDS и создано это руководство.

Исходные данные

Определим, что у нас есть некоторый сайт, работающий на php+MySQL под управлением некой CMS (в нашем случае это будет MODX Revolution, но на процесс настройки VDS это не влияет), а это значит, что помимо развертывания CMS необходимо установить и настроить основные модули php, nginx, mysql. Для этого определим следующую последовательность наших действий:

  1. Регистрация на хостинге и конфигурация VDS;
  2. Создание VDS из панели управления;
  3. Подключение по SSH;
  4. Обновление и установка пакетов системы;
  5. Установка nginx + php;
  6. Установка mariadb (mysql);
  7. Создание нового пользователя системы;
  8. Конфигурирование php-fpm;
  9. Конфигурация nginx;
  10. Конфигурация mysql;
  11. Создание пароля для root пользователя mysql;
  12. Создание нового пользователя и базы данных для сайта;
  13. Создание недостающих каталогов и перезапуск сервисов;
  14. Установка MODX.

Регистрация на хостинге и конфигурация VDS

В руководстве будем пользоваться услугами компании timeweb. Переходим на вкладку VPS / VDS, из предлагаемых тарифов выбираем тот, который нам подходит по характеристикам и нажимаем кнопку заказать. После этого попадаем в окно регистрации и выбора параметров виртуального сервера.

В текстовые поля вводим свою фамилию, имя и отчество, и адрес электронной почты. В выпадающем списке меняем операционную систему на Ubuntu 20.04

Источник

Установка Ubuntu Server
на виртуальную машину Virtualbox
и настройка SSH сервера.

Практически любому веб-разработчику, рано или поздно, приходится сталкиваться с веб серверами. Даже если Вы работаете в достаточно крупной компании и за работу с сервером отвечает специально обученный человек, знать как устроен сервер все равно не будет лишним.

Сегодня мы установим сервер Ubuntu на виртуальную машину и у Вас появиться возможность с ним поэкспериментировать. Установить, например, Node.js или базу данных. Установить NGINX, Apache, изменить настройки и т.д.

Для этого совершенно не обязательно тратить деньги и покупать место у хостера.

1. Подготовка к установке.

Ссылки на скачивание:

Для начала скачаем и установим виртуальную машину VirtualBox, сам сервер Ubuntu и программы для связи с нашим сервером. Если у Вас система Windows и установлен PowerShell, то достаточно скачать и установить WinSCP, если PowerShell не установлен, то нужно будет скачать PuTTY. Для систем Linux дополнительных программ не требуется. К сожалению для MacOS подсказать не смогу.

Здесь будет рассмотрена установка и настройка Ubuntu Server 18.04 на Windows. Однако установка и настройка на другие системы отличается только способом подключения к SSH серверу.

Читайте также:  Linux файловый сервер active directory

Какой сервер Ubuntu выбрать, решать Вам. !8.04 устанавливают абсолютно все хостеры, 20.04 – не факт. Но на Ubuntu Server 20.04 без танцев с бубнами по умолчанию ставится Python 3.8. И устанавливается MySQL 8. Хотя для тренировки подойдет любая.

2. Установка Ubuntu Server

Запускаем VirtualBox, заходим в «Файл» -> «Менеджер сетей хоста» и проверяем, чтобы настройки совпадали с теми, что на скриншоте ниже. По умолчанию они должны быть именно такими. Если нет — настраиваем.

Нажимаем кнопку «Создать», называем ubuntu, выбираем разрядность как у Вашей системы и соглашаемся со всем, что предложено по умолчанию.

Теперь нужно указать место хранения виртуальной машины. Я предпочитаю хранить подобные вещи не на системном диске. Жмем на иконку папки и выбираем желаемый диск и директорию. Имя оставляем по умолчанию ubuntu.

Ниже предлагается указать максимальный размер виртуального диска. Дело в том, что динамический виртуальный диск подразумевает не бесконечное расширение, а то, что занимать он будет столько, сколько в нем записано. Но не больше, чем мы укажем при его создании. Поэтому зададим нашему диску гигов 20. Для обучения, думаю, хватит. Можете задать больше.

Нажимаем «Создать». Далее жмем кнопку «Настроить» и выбираем вкладку Сеть. Первый адаптер оставляем без изменений. Заходим во вкладку «Адаптер 2», включаем его и выбираем «Виртуальный адаптер хоста». Жмем «ОК».

Теперь нажимаем кнопку «Запустить». Появмться окно выбора установочного диска. Жмем на кнопку с папкой, далее «Добавить» и выбираем скачанный образ Ubuntu Server. Жмем «продолжить».

Начнется установка сервера. Выбираем Английский язык, выбираем обновление во время установки и затем везде кликаем [Done].

Для перехода между пунктами используем клавишу Tab. Для выбора «Continue» используем стрелку вниз.

Указываем свое имя, имя сервера, имя пользователя, под которым будете заходить и пароль пользователя. Подтверждаем пароль пользователя. Далее обязательно отмечаем установку OpenSSH Server. Для этого нажимаем клавишу Пробел. В поле установки дополнений ничего не выбираем и не нажимаем «Cancel update and reboot». Установка обновлений может занять достаточно много времени. Ждем.

Дожидаемся надписи «Reboot» и жмем Enter. Затем установщик просит изьять установочный диск. Заходим в «Устройства» -> «Оптические диски» и кликаем по ubuntu 18.04 (или 20.04 в зависимоти от того, какую редакцию устанавливаете). Снова заходим в «Устройства» -> «Оптические диски» и нажимаем «Изъять диск из привода». Жмем Enter, дожидаемся перезагрузки сервера и когда потребует — вводим логин и пароль. Пароль при вводе не отображается!

На этом установка Ubuntu Server закончена. Дальше будем настраивать.

3. Настраиваем подключение по SSH

Для начала создадим пароль для пользователя «ROOT». Это пользователь Ubuntu, который имеет расширенные права (аналогично пользователю «Администратор» в Windows). Для этого вводим:

Необходимо будет ввести свой пароль, затем ввести новый пароль для рута и подтвердить новый пароль.

Читайте также:  Скрипт выключения компьютера linux

Теперь разрешим руту входить по SSH. Для этого отредактируем файл sshd_config. Вводим:

sudo nano /etc/ssh/sshd_config

Возможно потребуется ввести свой пароль (не рута!). Находим строчку #PermitRootLogin prohibit-password, раскомментируем ее и заменяем prohibit-password на yes

разрешим руту входить по SSH

Нажимаем CTRL-X -> Y -> Enter. Перезапускаем SSH сервер:

Теперь временно настроим сетевое подключение для SSH. Временно потому, что после перезагрузки такая настройка уже работать не будет и придется вводить комманду заново. Набираем:

sudo ifconfig enp0s8 192.168.56.101

Проверяем. Набираем ifconfig и видим подлючение enp0s8

подлючение enp0s8

Теперь открываем PowerShell и подключаемся к нашему серверу (если PowerShell то устанавливаем PuTTY и используем его):

В перый раз при входе на незнакомый адрес, PowerShell спросит разрешения. Пишем Yes. Вводим пароль рута и заходим на сервер.

PowerShell подключаемся к серверу

Дальше настроим подключение с помощью WinSCP. Открываем программу, выбираем «Новое подключение», протокол передачи SFTP, Имя хоста вводим 192.168.56.101, порт оставляем 22, имя пользователя — root, пароль — наш пароль рута. Нажимаем «Сохранить», ставим галку «запомнить пароль» вводим имя подключения или оставляем как есть и жмем «ОК». Дальше нажимаем «Войти» и как и в PowerShell при первом запуске спросит разрешение для подключения к неизвестному серверу. Разрешаем.

подключение с помощью WinSCP

Теперь настроим для WinSCP внешний редактор кода. Для этого заходим «Параметры» -> «Настройки» -> «Редакторы» и нажимаем «Добавить». Выбираем «Внешний редактор -> «Обзор» и находим свой редактор кода. Я для этих целей использую VS Code (C:\Program Files\Microsoft VS Code\code.exe). Вы можете использовать любой, к какому привыкли. Например Notepad++ или Sublime Text. Не советую для этих целей использовать IDE. Слишком долго грузиться будет. Выбираем, нажимаем «ОК», смотрим, чтобы редактор появился в списке, перемещаем его вверх одноименной кнопкой и снова «ОК».

внешний редактор кода WinSCP

Теперь увеличим время жизни сессии SSH. Если определенное время, при подключении по SSH, не производить никаких действий, то подключение прерывается. И потом приходится подключаться заново. Порой это раздражает. Поэтому время жизни сессии я рекомендую увеличить.

При входе на сервер мы попадаем в директорию «root». Выходим из нее (кликаем по папке с двумя точками), заходим в папку «etc» -> «ssh» и открываем файл sshd_config.

Пролистываем файл вниз и добавляем следующие строчки:

TCPKeepAlive yes
ClientAliveInterval 300
ClientAliveCountMax 60

увеличим время жизни сессии SSH

Сохраняем файл и закрываем редактор. Возвращаемся в PowerShell и перезапускаем SSH сервер:

Если мы вошли как root пользователь то слово sudo можно не писать.

Следующим шагом мы настроим постоянное подключение enp0s8. Для этого возвращаемся в WinSCP, выходим из папки ssh и заходим в netplan (/etc/netplan). Открываем файл 00-installer-config.yaml и прописываем следующие строчки:

enp0s8:
dhcp4: no
addresses: [192.168.56.101/24]

В результате файл должен выглядеть так:

настроим постоянное подключение enp0s8

Сохраняем файл и закрываем редактор. Закрываем WinSCP. Возвращаемся в PowerShell и набираем reboot чтобы перезапустить наш сервер. Позле перезапуска снова входим по SSH для проверки.

На этом установка и первоначальная настройка Ubuntu Server закончена.

Источник

Оцените статью
Adblock
detector