Настройка вашего первого сервера Linux поначалу может показаться сложной задачей, особенно если вы новичок в управлении серверами. Однако этот процесс намного проще, чем кажется, и при наличии правильных инструкций вы сможете быстро настроить и запустить свой сервер Ubuntu.
В этой пошаговой статье мы проведем вас через весь процесс настройки, чтобы ваш сервер был не только функциональным, но и безопасным и оптимизированным для дальнейшего использования.
Независимо от того, настраиваете ли вы веб-сервер, размещаете приложения или просто изучаете администрирование Linux, эта статья поможет вам быстро и уверенно начать работу.
К концу этой статьи у вас будет полностью рабочий сервер Ubuntu, к которому вы сможете получить удалённый доступ и настроить его в соответствии со своими потребностями.
Прежде чем настраивать сервер Ubuntu, вам нужно решить, где он будет работать. Есть два основных варианта: арендовать облачный сервер (VPS) или установить Ubuntu Server на физический компьютер. Ваш выбор зависит от сценария использования, бюджета и уровня опыта.
Шаги по развертыванию Ubuntu VPS:
Вот и всё! Ваш облачный сервер Ubuntu теперь готов.
Если у вас есть запасной компьютер или вы хотите запустить Ubuntu на своём персональном оборудовании, вы можете установить Ubuntu Server вручную. Это идеальный вариант, если вы создаёте домашнюю лабораторию, запускаете частный веб-сервер или экспериментируете с администрированием Linux.
Что Вам понадобится:
Шаги по локальной установке Ubuntu Server:
sudo dd if=ubuntu-24.04.1-live-server-amd64.iso of=/dev/sdX bs=4M status=progress
Замените /dev/sdX
на фактический путь к USB-устройству, который можно найти с помощью команды lsblk.
Теперь вставьте USB-накопитель в целевой компьютер, перезагрузите его и войдите в настройки BIOS/UEFI (обычно для этого нужно нажать F2
, F12
, DEL
или ESC
во время загрузки), выберите USB-накопитель в качестве первого загрузочного устройства и сохраните изменения.
Загрузится установщик Ubuntu Server.
Следуйте инструкциям по установке:
После успешной установки Ubuntu Server войдите в систему, используя учётные данные, которые вы создали во время настройки.
Фактор | Облачный сервер (VPS) | Локальная установка |
---|---|---|
Лучше всего для | Новички, хостинг веб-сайтов, удаленное изучение Linux | Домашние лаборатории, частные серверы, продвинутые пользователи |
Время настройки | 5-10 минут | 20-30 минут |
Требуемое оборудование | Нет | Запасной компьютер или сервер |
Доступ | Удаленно через SSH | Прямой вход в систему или SSH (если настроен) |
Стоимость | Ежемесячная плата (~ $ 5 в месяц для базового VPS) | Бесплатно (за исключением электричества и технического обслуживания) |
Производительность | Зависит от выбранного плана | Зависит от вашего оборудования |
Если вы новичок в Linux или хотите упростить процесс настройки, лучшим выбором будет облачный VPS. Однако, если у вас старый ПК и вы хотите полностью контролировать своё оборудование, установка Ubuntu Server локально станет отличным опытом.
Теперь, когда вы настроили свой сервер Ubuntu, пришло время получить к нему доступ и обновить систему, чтобы установить последние обновления безопасности.
sudo apt update && sudo apt upgrade -y
Теперь, когда ваш сервер Ubuntu запущен, следующим шагом будет доступ к нему. На этом этапе вы начнёте взаимодействовать с сервером, устанавливать программное обеспечение и настраивать его в соответствии со своими потребностями.
Если вы развернули свой сервер Ubuntu на облачной платформе, такой как DigitalOcean, Linode, AWS или Google Cloud, ваш провайдер предоставит вам:
В Linux/macOS вы можете выполнить следующую команду в терминале, заменив your-server-ip
на IP-адрес вашего сервера:
ssh ubuntu@your-server-ip
В Windows вы можете использовать клиент PuTTY:
Если вход выполнен успешно, вы увидите приветственное сообщение с информацией о системе.
Если вы установили Ubuntu Server на локальный компьютер, включите его, дождитесь запроса на вход в систему и введите имя пользователя и пароль, которые вы создали во время установки.
После входа в систему вы окажетесь в интерфейсе командной строки Ubuntu (CLI) и сможете настроить свой сервер для получения последних обновлений безопасности.
sudo apt update && sudo apt upgrade -y
По умолчанию большинство поставщиков облачных услуг предоставляют пользователю root доступ к серверу. Хотя пользователь root имеет полный контроль над системой, использовать его для повседневных задач рискованно, поскольку любая случайная команда или нарушение безопасности могут повредить всю систему.
Чтобы повысить безопасность, давайте создадим нового пользователя с правами администратора и правильно настроим доступ по SSH.
Сначала давайте добавим нового пользователя, который будет выполнять задачи сервера вместо root, и не забудьте заменить yourusername
на предпочитаемое вами имя пользователя.
sudo adduser yourusername
Система предложит вам установить пароль для нового пользователя. Выберите надёжный пароль и подтвердите его. Вы также увидите дополнительные необязательные поля, такие как полное имя и контактные данные. Вы можете заполнить их или нажать Enter, чтобы пропустить.
Ваш новый пользователь должен иметь административные права (sudo) для выполнения команд, требующих повышенных разрешений.
Чтобы добавить пользователя в группу sudo, запустите:
sudo usermod -aG sudo yourusername
Теперь переключитесь на нового пользователя и проверьте, работает ли sudo
.
su - yourusername sudo whoami
Если вывод является root, у вашего пользователя есть доступ sudo.
Вместо того чтобы входить в систему с помощью пароля, гораздо безопаснее использовать SSH-ключи, которые похожи на цифровые замки и ключи, позволяющие подключаться только авторизованным пользователям.
На вашем локальном компьютере (не на сервере) создайте пару ключей SSH, выполнив следующие действия.
ssh-keygen -t rsa -b 4096
Нажмите Enter, чтобы сохранить ключ в папке по умолчанию (~/.ssh/id_rsa
). Вы также можете установить кодовую фразу для дополнительной защиты, но это необязательно.
Если вы используете облачный сервер, вы можете скопировать свой SSH-ключ на сервер с помощью:
ssh-copy-id yourusername@your-server-ip
Если ssh-copy-id
недоступен, скопируйте открытый ключ (id_rsa.pub
) вручную и добавьте его на сервер:
ssh root@your-server-ip sudo mkdir -p /home/yourusername/.ssh sudo chmod 700 /home/yourusername/.ssh echo "your-public-key" | sudo tee -a /home/yourusername/.ssh/authorized_keys > /dev/null sudo chmod 600 /home/yourusername/.ssh/authorized_keys sudo chown -R yourusername:yourusername /home/yourusername/.ssh
Выйдите из текущего сеанса и попробуйте войти в систему под новым именем пользователя с помощью SSH:
ssh yourusername@your-server-ip
Если это сработает, вы успешно настроили аутентификацию по SSH-ключу!
Теперь, когда у вас есть новый пользователь с аутентификацией по ключу SSH, давайте повысим безопасность, запретив вход с правами root и отключив аутентификацию по паролю.
sudo nano /etc/ssh/sshd_config
Найдите следующие строки и измените их значения.
PermitRootLogin no PasswordAuthentication no
Чтобы изменения вступили в силу, перезапустите службу SSH:
sudo systemctl restart ssh
Откройте новый терминал и попробуйте войти в систему под новым именем пользователя. Если всё работает, вы обезопасили свой SSH-доступ и можете безопасно управлять своим сервером.
Теперь, когда ваш сервер защищён и готов к работе, пришло время установить несколько важных программ, которые помогут эффективно управлять сервером и обеспечивать его безопасность.
Ubuntu поставляется с базовым набором утилит, но для упрощения администрирования системы вам понадобятся дополнительные пакеты.
sudo apt install -y vim curl wget git htop unzip net-tools
Вот что делает каждый пакет:
Брандмауэр необходим для защиты вашего сервера от несанкционированного доступа. Ubuntu по умолчанию включает UFW (простой брандмауэр), что упрощает управление правилами брандмауэра.
Поскольку мы подключаемся через SSH, нам нужно убедиться, что трафик SSH разрешён, прежде чем включать брандмауэр.
sudo ufw allow OpenSSH sudo ufw enable sudo ufw status
Очень важно, чтобы время на вашем сервере было точным, особенно для журналов и запланированных задач. В Ubuntu есть systemd-timesyncd, который автоматически синхронизирует время.
timedatectl timedatectl list-timezones sudo timedatectl set-timezone Asia/Kolkata timedatectl
Теперь ваша система автоматически синхронизирует время с интернет-серверами учета времени.
Fail2Ban — это инструмент безопасности, который защищает ваш сервер от атак методом перебора, блокируя подозрительные попытки входа в систему.
sudo apt install -y fail2ban sudo systemctl enable fail2ban sudo systemctl start fail2ban sudo systemctl status fail2ban
Это означает, что Fail2Ban активен и защищает ваш сервер.
Для Ubuntu регулярно выпускаются обновления безопасности, и рекомендуется включить автоматическое обновление, чтобы обеспечить безопасность вашего сервера.
sudo apt install -y unattended-upgrades sudo dpkg-reconfigure --priority=low unattended-upgrades cat /etc/apt/apt.conf.d/20auto-upgrades
Вы должны увидеть:
APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Unattended-Upgrade "1";
Это подтверждает, что ваш сервер будет автоматически получать обновления для системы безопасности.
После установки пакетов и обновлений у вас могут остаться ненужные временные файлы.
sudo apt autoremove -y sudo apt autoclean
Это удаляет неиспользуемые зависимости и освобождает место на диске.
Если вы планируете разместить на сервере веб-сайт, веб-приложение или даже просто протестировать веб-сервисы, вам понадобится веб-сервер.
Двумя наиболее популярными опциями в Linux являются:
В этом руководстве мы будем использовать Nginx, поскольку это современный, эффективный и удобный для новичков сервер.
Сначала обновите список пакетов, чтобы получить последнюю версию, и установите пакет Nginx:
sudo apt update sudo apt install -y nginx nginx -v
После установки необходимо запустить службу Nginx, чтобы она могла обрабатывать веб-запросы.
sudo systemctl start nginx sudo systemctl enable nginx sudo systemctl status nginx
Поскольку ранее мы включили UFW (простой брандмауэр), нам нужно разрешить трафик HTTP (порт 80) и HTTPS (порт 443).
sudo ufw allow 'Nginx Full' sudo ufw status
На этом этапе Nginx должен работать. Вы можете проверить это, открыв веб-браузер и введя IP-адрес вашего сервера:
http://your-server-ip
Если все работает, вы должны увидеть страницу приветствия Nginx по умолчанию.
По умолчанию Nginx обслуживает веб-страницы из каталога /var/www/html
. Вы можете заменить страницу по умолчанию на свой собственный веб-сайт.
sudo nano /var/www/html/index.html
Удалите все существующее содержимое и добавьте этот простой HTML-код:
<!DOCTYPE html> <html> <head> <title>Добро пожаловать на мой Сервер</title> <style> body { text-align: center; font-family: Arial, sans-serif; margin-top: 50px; } h1 { color: #4CAF50; } </style> </head> <body> <h1>Успех! Ваш веб-сервер Nginx запущен.</h1> <p>Это тестовая страница, размещенная в Ubuntu.</p> </body> </html>
Теперь обновите страницу в браузере (http://your-server-ip
), и вы увидите пользовательскую веб-страницу вместо страницы Nginx по умолчанию.
Теперь, когда ваш веб-сервер Nginx запущен, вы можете включить HTTPS, используя бесплатный SSL-сертификат от Let’s Encrypt:
sudo apt install -y certbot python3-certbot-nginx sudo certbot --nginx
Вы успешно установили и настроили веб-сервер Nginx на своём сервере Ubuntu!
Вы успешно настроили свой первый сервер Ubuntu менее чем за 30 минут. Хотя в этой статье рассматриваются основы, с помощью сервера можно делать гораздо больше, например размещать веб-сайты, настраивать базы данных или запускать приложения.
По мере накопления опыта вы откроете для себя мощь и гибкость серверов Linux. Удачного хостинга!